From 73a46ab54d3d197f6dfc88885ff8c860ac82e064 Mon Sep 17 00:00:00 2001 From: Richardtok <89584177+Richardtok@users.noreply.github.com> Date: Thu, 2 Mar 2023 15:03:52 +0800 Subject: [PATCH 001/152] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index f82e2494b7..67ba862d68 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -# Duke project template +# Fitnees checker This is a project template for a greenfield Java project. It's named after the Java mascot _Duke_. Given below are instructions on how to use it. From 6ebc0ce8a6366e34f2d87a0be6cd4f134e33cb1b Mon Sep 17 00:00:00 2001 From: Richardtok Date: Thu, 2 Mar 2023 15:33:38 +0800 Subject: [PATCH 002/152] chang name --- docs/AboutUs.md | 14 +++++++------- src/main/java/seedu/duke/Duke.java | 3 ++- 2 files changed, 9 insertions(+), 8 deletions(-) diff --git a/docs/AboutUs.md b/docs/AboutUs.md index 0f072953ea..518197d07e 100644 --- a/docs/AboutUs.md +++ b/docs/AboutUs.md @@ -1,9 +1,9 @@ # About us -Display | Name | Github Profile | Portfolio ---------|:----:|:--------------:|:---------: -![](https://via.placeholder.com/100.png?text=Photo) | John Doe | [Github](https://github.com/) | [Portfolio](docs/team/johndoe.md) -![](https://via.placeholder.com/100.png?text=Photo) | Don Joe | [Github](https://github.com/) | [Portfolio](docs/team/johndoe.md) -![](https://via.placeholder.com/100.png?text=Photo) | Ron John | [Github](https://github.com/) | [Portfolio](docs/team/johndoe.md) -![](https://via.placeholder.com/100.png?text=Photo) | John Roe | [Github](https://github.com/) | [Portfolio](docs/team/johndoe.md) -![](https://via.placeholder.com/100.png?text=Photo) | Don Roe | [Github](https://github.com/) | [Portfolio](docs/team/johndoe.md) +Display | Name | Github Profile | Portfolio +--------|:-----------------:|:--------------:|:---------: +![](https://via.placeholder.com/100.png?text=Photo) | Richard Kurniawan | [Github](https://github.com/Richardtok) | [Portfolio](docs/team/johndoe.md) +![](https://via.placeholder.com/100.png?text=Photo) | Don Joe | [Github](https://github.com/) | [Portfolio](docs/team/johndoe.md) +![](https://via.placeholder.com/100.png?text=Photo) | Ron John | [Github](https://github.com/) | [Portfolio](docs/team/johndoe.md) +![](https://via.placeholder.com/100.png?text=Photo) | John Roe | [Github](https://github.com/) | [Portfolio](docs/team/johndoe.md) +![](https://via.placeholder.com/100.png?text=Photo) | Don Roe | [Github](https://github.com/) | [Portfolio](docs/team/johndoe.md) diff --git a/src/main/java/seedu/duke/Duke.java b/src/main/java/seedu/duke/Duke.java index 5c74e68d59..f99ebb805c 100644 --- a/src/main/java/seedu/duke/Duke.java +++ b/src/main/java/seedu/duke/Duke.java @@ -6,7 +6,8 @@ public class Duke { /** * Main entry-point for the java.duke.Duke application. */ - public static void main(String[] args) { + public static void main(String[] args) + { String logo = " ____ _ \n" + "| _ \\ _ _| | _____ \n" + "| | | | | | | |/ / _ \\\n" From e47cd8befe97c53cba9d6b78814c22c6fb5b1ff4 Mon Sep 17 00:00:00 2001 From: Richardtok Date: Tue, 7 Mar 2023 14:45:51 +0800 Subject: [PATCH 003/152] update about us --- docs/AboutUs.md | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/docs/AboutUs.md b/docs/AboutUs.md index 518197d07e..45b52d4f47 100644 --- a/docs/AboutUs.md +++ b/docs/AboutUs.md @@ -1,9 +1,9 @@ # About us -Display | Name | Github Profile | Portfolio ---------|:-----------------:|:--------------:|:---------: -![](https://via.placeholder.com/100.png?text=Photo) | Richard Kurniawan | [Github](https://github.com/Richardtok) | [Portfolio](docs/team/johndoe.md) -![](https://via.placeholder.com/100.png?text=Photo) | Don Joe | [Github](https://github.com/) | [Portfolio](docs/team/johndoe.md) -![](https://via.placeholder.com/100.png?text=Photo) | Ron John | [Github](https://github.com/) | [Portfolio](docs/team/johndoe.md) -![](https://via.placeholder.com/100.png?text=Photo) | John Roe | [Github](https://github.com/) | [Portfolio](docs/team/johndoe.md) -![](https://via.placeholder.com/100.png?text=Photo) | Don Roe | [Github](https://github.com/) | [Portfolio](docs/team/johndoe.md) +| Display | Name | Github Profile | Portfolio | +|-----------------------------------------------------|:-----------------:|:---------------------------------------:|:---------------------------------:| +| ![](https://via.placeholder.com/100.png?text=Photo) | Richard Kurniawan | [Github](https://github.com/Richardtok) | [Portfolio](docs/team/johndoe.md) | +| ![](https://via.placeholder.com/100.png?text=Photo) | Don Joe | [Github](https://github.com/) | [Portfolio](docs/team/johndoe.md) | +| ![](https://via.placeholder.com/100.png?text=Photo) | Ron John | [Github](https://github.com/) | [Portfolio](docs/team/johndoe.md) | +| ![](https://via.placeholder.com/100.png?text=Photo) | John Roe | [Github](https://github.com/) | [Portfolio](docs/team/johndoe.md) | +| ![](https://via.placeholder.com/100.png?text=Photo) | Don Roe | [Github](https://github.com/) | [Portfolio](docs/team/johndoe.md) | From 5334b662fe7045ef6c423b1acc608e92ecfb6182 Mon Sep 17 00:00:00 2001 From: Richardtok Date: Wed, 8 Mar 2023 16:30:38 +0800 Subject: [PATCH 004/152] Changes User guide a little --- docs/README.md | 4 ++-- docs/UserGuide.md | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/docs/README.md b/docs/README.md index bbcc99c1e7..5ec241cd25 100644 --- a/docs/README.md +++ b/docs/README.md @@ -1,6 +1,6 @@ -# Duke +# Fitness Checker -{Give product intro here} +The product will be able to keep track of the user's progress and, daily exercise and workouts. Useful links: * [User Guide](UserGuide.md) diff --git a/docs/UserGuide.md b/docs/UserGuide.md index abd9fbe891..2e8b45fc57 100644 --- a/docs/UserGuide.md +++ b/docs/UserGuide.md @@ -2,14 +2,14 @@ ## Introduction -{Give a product intro} +This application will help you track your current and future workouts. ## Quick Start {Give steps to get started quickly} 1. Ensure that you have Java 11 or above installed. -1. Down the latest version of `Duke` from [here](http://link.to/duke). +1. Down the latest version of `Fitz` from [here](http://link.to/duke). ## Features From 25702790a6a0d646da3f655ea142f33fd79c6950 Mon Sep 17 00:00:00 2001 From: Richardtok Date: Wed, 8 Mar 2023 16:39:38 +0800 Subject: [PATCH 005/152] Trying to make a new pull request --- docs/DeveloperGuide.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/docs/DeveloperGuide.md b/docs/DeveloperGuide.md index 64e1f0ed2b..fafd545dc9 100644 --- a/docs/DeveloperGuide.md +++ b/docs/DeveloperGuide.md @@ -12,7 +12,8 @@ ## Product scope ### Target user profile -{Describe the target user profile} +We aim to help fellow gym enthusiasts and new gym members to help keep +track of their future and present training. ### Value proposition From 0d240ec2ce6b52a5572b601c358e9fc639d6d9d7 Mon Sep 17 00:00:00 2001 From: guillaume-grn Date: Thu, 9 Mar 2023 11:24:47 +0800 Subject: [PATCH 006/152] Duke : Add delete command --- src/main/java/seedu/Workout/Workout.java | 23 +++++++++ src/main/java/seedu/duke/Duke.java | 64 +++++++++++++++++++----- 2 files changed, 74 insertions(+), 13 deletions(-) create mode 100644 src/main/java/seedu/Workout/Workout.java diff --git a/src/main/java/seedu/Workout/Workout.java b/src/main/java/seedu/Workout/Workout.java new file mode 100644 index 0000000000..111b77dfd9 --- /dev/null +++ b/src/main/java/seedu/Workout/Workout.java @@ -0,0 +1,23 @@ +package seedu.Workout; +import java.util.Date; +import java.text.SimpleDateFormat; + +public class Workout { + private Date date; + + public Workout(String dateString) throws Exception { + // Create a SimpleDateFormat object with the desired date format + SimpleDateFormat dateFormat = new SimpleDateFormat("dd/MM/yyyy"); + + // Parse the input dateString to create a Date object + this.date = dateFormat.parse(dateString); + } + + public Date getDate() { + return this.date; + } + + public void setDate(Date date) { + this.date = date; + } +} diff --git a/src/main/java/seedu/duke/Duke.java b/src/main/java/seedu/duke/Duke.java index 5c74e68d59..bbecf98467 100644 --- a/src/main/java/seedu/duke/Duke.java +++ b/src/main/java/seedu/duke/Duke.java @@ -1,21 +1,59 @@ package seedu.duke; import java.util.Scanner; +import java.util.ArrayList; +import java.util.Date; +import java.text.SimpleDateFormat; +import java.text.ParseException; +import java.text.DateFormat; +import seedu.Workout.Workout; public class Duke { - /** - * Main entry-point for the java.duke.Duke application. - */ + private ArrayList workouts; + + public Duke() { + this.workouts = new ArrayList(); + } + + public void run() { + Scanner scanner = new Scanner(System.in); + String command; + do { + System.out.print("Enter a command: "); + command = scanner.nextLine(); + + if (command.startsWith("delete ")) { + String dateString = command.substring(7); + try { + DateFormat dateFormat = new SimpleDateFormat("dd/MM/yyyy"); + Date date = dateFormat.parse(dateString); + + // Search for the workout with the matching date and remove it + Workout workoutToDelete = null; + for (Workout workout : this.workouts) { + if (workout.getDate().equals(date)) { + workoutToDelete = workout; + break; + } + } + if (workoutToDelete != null) { + this.workouts.remove(workoutToDelete); + System.out.println("Workout deleted successfully."); + } else { + System.out.println("No workout found with the specified date."); + } + + } catch (ParseException e) { + System.out.println("Invalid date format. Please enter the date in the format dd/mm/yyyy."); + } + } + + } while (!command.equals("bye")); + scanner.close(); + } + public static void main(String[] args) { - String logo = " ____ _ \n" - + "| _ \\ _ _| | _____ \n" - + "| | | | | | | |/ / _ \\\n" - + "| |_| | |_| | < __/\n" - + "|____/ \\__,_|_|\\_\\___|\n"; - System.out.println("Hello from\n" + logo); - System.out.println("What is your name?"); - - Scanner in = new Scanner(System.in); - System.out.println("Hello " + in.nextLine()); + Duke duke = new Duke(); + duke.run(); } } From 8a1b0fef3e1c8b4e3494c85d501b925b885edb63 Mon Sep 17 00:00:00 2001 From: guillaume-grn Date: Thu, 9 Mar 2023 17:23:56 +0800 Subject: [PATCH 007/152] Workout : add JUnitTest --- src/main/java/seedu/duke/Duke.java | 6 ++-- .../seedu/{Workout => workout}/Workout.java | 13 +++++---- src/test/java/seedu/workout/WorkoutTest.java | 28 +++++++++++++++++++ 3 files changed, 38 insertions(+), 9 deletions(-) rename src/main/java/seedu/{Workout => workout}/Workout.java (87%) create mode 100644 src/test/java/seedu/workout/WorkoutTest.java diff --git a/src/main/java/seedu/duke/Duke.java b/src/main/java/seedu/duke/Duke.java index bbecf98467..a7f929ecb5 100644 --- a/src/main/java/seedu/duke/Duke.java +++ b/src/main/java/seedu/duke/Duke.java @@ -6,7 +6,7 @@ import java.text.SimpleDateFormat; import java.text.ParseException; import java.text.DateFormat; -import seedu.Workout.Workout; +import seedu.workout.Workout; public class Duke { private ArrayList workouts; @@ -25,7 +25,7 @@ public void run() { if (command.startsWith("delete ")) { String dateString = command.substring(7); try { - DateFormat dateFormat = new SimpleDateFormat("dd/MM/yyyy"); + DateFormat dateFormat = new SimpleDateFormat("dd/MM/yy"); Date date = dateFormat.parse(dateString); // Search for the workout with the matching date and remove it @@ -44,7 +44,7 @@ public void run() { } } catch (ParseException e) { - System.out.println("Invalid date format. Please enter the date in the format dd/mm/yyyy."); + System.out.println("Invalid date format. Please enter the date in the format dd/mm/yy."); } } diff --git a/src/main/java/seedu/Workout/Workout.java b/src/main/java/seedu/workout/Workout.java similarity index 87% rename from src/main/java/seedu/Workout/Workout.java rename to src/main/java/seedu/workout/Workout.java index 111b77dfd9..ed197f7d84 100644 --- a/src/main/java/seedu/Workout/Workout.java +++ b/src/main/java/seedu/workout/Workout.java @@ -1,22 +1,23 @@ -package seedu.Workout; +package seedu.workout; + import java.util.Date; import java.text.SimpleDateFormat; public class Workout { private Date date; - + public Workout(String dateString) throws Exception { // Create a SimpleDateFormat object with the desired date format - SimpleDateFormat dateFormat = new SimpleDateFormat("dd/MM/yyyy"); - + SimpleDateFormat dateFormat = new SimpleDateFormat("dd/MM/yy"); + // Parse the input dateString to create a Date object this.date = dateFormat.parse(dateString); } - + public Date getDate() { return this.date; } - + public void setDate(Date date) { this.date = date; } diff --git a/src/test/java/seedu/workout/WorkoutTest.java b/src/test/java/seedu/workout/WorkoutTest.java new file mode 100644 index 0000000000..e82430ca4a --- /dev/null +++ b/src/test/java/seedu/workout/WorkoutTest.java @@ -0,0 +1,28 @@ +package seedu.workout; + +import org.junit.jupiter.api.Test; +import java.text.SimpleDateFormat; +import java.util.Date; +import static org.junit.jupiter.api.Assertions.assertEquals; + +public class WorkoutTest { + public SimpleDateFormat dateFormat = new SimpleDateFormat("dd/MM/yy"); + + @Test + public void testInvalidDate() throws Exception { + Workout workout = new Workout("05/02/2023"); //invalid date format + } + + @Test + public void testGetDateAndSetDate() throws Exception { + Workout workout = new Workout("05/02/23"); + String expectedDatestring = "05/02/23"; + Date expectedDate = dateFormat.parse(expectedDatestring); + assertEquals(expectedDate, workout.getDate()); + + String newDatestring = "06/03/24"; + Date newDate = dateFormat.parse(newDatestring); + workout.setDate(newDate); + assertEquals(newDate, workout.getDate()); + } +} From b1a756bc23b9b6c7a6a84558160242e50a091f12 Mon Sep 17 00:00:00 2001 From: calebcjl Date: Sun, 12 Mar 2023 18:39:01 +0800 Subject: [PATCH 008/152] Add basic features and create new classes for exercise and workout Features added: 1. Start a new workout 2. Add exercises to current workout 3. End current workout 4. Exit program command --- src/main/java/seedu/duke/Duke.java | 85 +++++++++++++++++++++++--- src/main/java/seedu/duke/Exercise.java | 21 +++++++ src/main/java/seedu/duke/Workout.java | 21 +++++++ 3 files changed, 118 insertions(+), 9 deletions(-) create mode 100644 src/main/java/seedu/duke/Exercise.java create mode 100644 src/main/java/seedu/duke/Workout.java diff --git a/src/main/java/seedu/duke/Duke.java b/src/main/java/seedu/duke/Duke.java index 5c74e68d59..5e421bca3b 100644 --- a/src/main/java/seedu/duke/Duke.java +++ b/src/main/java/seedu/duke/Duke.java @@ -1,21 +1,88 @@ package seedu.duke; +import java.util.Currency; import java.util.Scanner; public class Duke { + + + public static final String WELCOME_MESSAGE = "Let's get moving!\n" + "\"/start
\" to begin " + + "your workout"; + private static final int COMMAND_INDEX = 0; + private static final int NAME_INDEX = 0; + private static final int DATE_INDEX = 1; + private static final int EXERCISE_DETAILS_INDEX = 1; + private static final int WEIGHT_INDEX = 1; + private static final int REPS_PER_SET_INDEX = 2; + + public static Workout currentWorkout; /** * Main entry-point for the java.duke.Duke application. */ public static void main(String[] args) { - String logo = " ____ _ \n" - + "| _ \\ _ _| | _____ \n" - + "| | | | | | | |/ / _ \\\n" - + "| |_| | |_| | < __/\n" - + "|____/ \\__,_|_|\\_\\___|\n"; - System.out.println("Hello from\n" + logo); - System.out.println("What is your name?"); - + System.out.println(WELCOME_MESSAGE); Scanner in = new Scanner(System.in); - System.out.println("Hello " + in.nextLine()); + Boolean isExit = false; + + while (!isExit) { + String[] userInputs = processUserInput(in.nextLine()); + switch(userInputs[COMMAND_INDEX]) { + case "/start": + startWorkout(userInputs); + break; + case "/add": + addExerciseToWorkout(userInputs); + break; + case "/end": + endWorkout(); + case "/exit": + isExit = true; + System.out.println("Hope you had a great workout!"); + break; + default: + System.out.println("Command not recognised!"); + break; + } + } + } + + private static void endWorkout() { + currentWorkout = null; + System.out.println("Ended current workout!"); + } + private static void addExerciseToWorkout(String[] inputs) { + try { + String[] exerciseDetails = processExerciseDetails(inputs[EXERCISE_DETAILS_INDEX]); + Exercise exercise = new Exercise(exerciseDetails[NAME_INDEX], exerciseDetails[WEIGHT_INDEX], + exerciseDetails[REPS_PER_SET_INDEX]); + currentWorkout.addExercise(exercise); + System.out.println("Added " + exercise); + } catch (ArrayIndexOutOfBoundsException e) { + System.out.println("Incorrect exercise format!"); + } catch (NullPointerException e) { + System.out.println("Start a workout first!"); + } + } + + public static String[] processUserInput(String input) { + String[] inputs = input.split("\\s+", 2); + return inputs; + } + + public static String[] processExerciseDetails(String userInput) { + String[] exerciseDetails = userInput.split("/", 3); + exerciseDetails[NAME_INDEX] = exerciseDetails[NAME_INDEX].trim(); + exerciseDetails[WEIGHT_INDEX] = exerciseDetails[WEIGHT_INDEX].replace("weight", "").trim(); + exerciseDetails[REPS_PER_SET_INDEX] = exerciseDetails[REPS_PER_SET_INDEX].replace("rps", "").trim(); + return exerciseDetails; + } + + public static void startWorkout(String[] inputs) { + try { + currentWorkout = new Workout(inputs[DATE_INDEX]); + System.out.println("Started new workout on " + currentWorkout.getDate()); + } catch (ArrayIndexOutOfBoundsException e) { + System.out.println("Incorrect workout format!"); + } } } diff --git a/src/main/java/seedu/duke/Exercise.java b/src/main/java/seedu/duke/Exercise.java new file mode 100644 index 0000000000..4b95881051 --- /dev/null +++ b/src/main/java/seedu/duke/Exercise.java @@ -0,0 +1,21 @@ +package seedu.duke; + +import java.util.ArrayList; + +public class Exercise { + + private String name; + private String weight; + private String repsPerSet; + + public Exercise(String name, String weight, String repsPerSet){ + this.name = name; + this.weight = weight; + this.repsPerSet = repsPerSet; + } + + @Override + public String toString() { + return name + ' ' + weight + ' ' + repsPerSet; + } +} diff --git a/src/main/java/seedu/duke/Workout.java b/src/main/java/seedu/duke/Workout.java new file mode 100644 index 0000000000..c789ad994d --- /dev/null +++ b/src/main/java/seedu/duke/Workout.java @@ -0,0 +1,21 @@ +package seedu.duke; + +import java.util.ArrayList; + +public class Workout { + private String date; + private ArrayList exerciseList; + + public Workout(String date) { + this.date = date; + exerciseList = new ArrayList<>(); + } + + public void addExercise(Exercise exercise) { + exerciseList.add(exercise); + } + + public String getDate() { + return date; + } +} From a2fcad4c0e862fcc9f0656bb310265b171ed1c9e Mon Sep 17 00:00:00 2001 From: Richardtok Date: Tue, 14 Mar 2023 20:41:23 +0800 Subject: [PATCH 009/152] test --- src/main/java/seedu/duke/Duke.java | 45 ++++++++++++------ src/main/java/seedu/duke/DukeException.java | 8 ++++ src/main/java/seedu/duke/InputChecking.java | 4 ++ src/main/java/seedu/duke/ListCommand.java | 13 ++++++ src/main/java/seedu/duke/Parser.java | 51 +++++++++++++++++++++ src/main/java/seedu/duke/Ui.java | 17 +++++++ src/main/java/seedu/duke/View.java | 11 +++++ src/main/java/seedu/duke/Workout.java | 5 ++ 8 files changed, 141 insertions(+), 13 deletions(-) create mode 100644 src/main/java/seedu/duke/DukeException.java create mode 100644 src/main/java/seedu/duke/InputChecking.java create mode 100644 src/main/java/seedu/duke/ListCommand.java create mode 100644 src/main/java/seedu/duke/Parser.java create mode 100644 src/main/java/seedu/duke/Ui.java create mode 100644 src/main/java/seedu/duke/View.java create mode 100644 src/main/java/seedu/duke/Workout.java diff --git a/src/main/java/seedu/duke/Duke.java b/src/main/java/seedu/duke/Duke.java index f99ebb805c..26c5b8d136 100644 --- a/src/main/java/seedu/duke/Duke.java +++ b/src/main/java/seedu/duke/Duke.java @@ -1,22 +1,41 @@ package seedu.duke; import java.util.Scanner; +import java.util.ArrayList; +import java.util.Date; +import java.text.SimpleDateFormat; +import java.text.ParseException; +import java.text.DateFormat; +import seedu.workout.Workout; +import seedu.duke.command.Parser; +import java.util.ArrayList; public class Duke { /** * Main entry-point for the java.duke.Duke application. */ - public static void main(String[] args) - { - String logo = " ____ _ \n" - + "| _ \\ _ _| | _____ \n" - + "| | | | | | | |/ / _ \\\n" - + "| |_| | |_| | < __/\n" - + "|____/ \\__,_|_|\\_\\___|\n"; - System.out.println("Hello from\n" + logo); - System.out.println("What is your name?"); - - Scanner in = new Scanner(System.in); - System.out.println("Hello " + in.nextLine()); + private void run() { + boolean isRunning = true; + while (isRunning) { + isRunning = Parser.isByeEntered(); + } + Parser.sayBye(); } -} + public static void main(String[] args) { + Duke duke = new Duke(); + duke.run(); + + + public class Duke { + private ArrayList workouts; + + public Duke() { + this.workouts = new ArrayList(); + } + + + public static void main(String[] args) { + Duke duke = new Duke(); + duke.run(); + + } \ No newline at end of file diff --git a/src/main/java/seedu/duke/DukeException.java b/src/main/java/seedu/duke/DukeException.java new file mode 100644 index 0000000000..a85448be54 --- /dev/null +++ b/src/main/java/seedu/duke/DukeException.java @@ -0,0 +1,8 @@ +package seedu.duke; +} +public class DukeException extends Exception{ + public DukeException(String message) { + super(message); + } + +} \ No newline at end of file diff --git a/src/main/java/seedu/duke/InputChecking.java b/src/main/java/seedu/duke/InputChecking.java new file mode 100644 index 0000000000..a829c2a7ee --- /dev/null +++ b/src/main/java/seedu/duke/InputChecking.java @@ -0,0 +1,4 @@ +package seedu.duke; + +public class InputChecking { +} diff --git a/src/main/java/seedu/duke/ListCommand.java b/src/main/java/seedu/duke/ListCommand.java new file mode 100644 index 0000000000..1acd345f57 --- /dev/null +++ b/src/main/java/seedu/duke/ListCommand.java @@ -0,0 +1,13 @@ +package seedu.duke.command; + +import seedu.duke.Workout; + +import java.util.ArrayList; + +public class ListCommand { + + public static void printList(String input, ArrayList workoutInput){ + + + } +} \ No newline at end of file diff --git a/src/main/java/seedu/duke/Parser.java b/src/main/java/seedu/duke/Parser.java new file mode 100644 index 0000000000..1a85bcc88e --- /dev/null +++ b/src/main/java/seedu/duke/Parser.java @@ -0,0 +1,51 @@ +package seedu.duke.command; +import seedu.duke.DukeException; +import seedu.duke.Workout; +import java.util.ArrayList; +import java.util.Scanner; + + +public class Parser { + private static final String UNRECOGNISED_INPUT = " OOPS!!! I'm sorry, but I don't know what that means :-("; + private ArrayList workouts; + /** + * Read the input command of the usersE + * @return return the string of workout + */ + public static String readCommand(){ + String workOut; + Scanner in = new Scanner(System.in); + workOut = in.nextLine(); + return workOut; + } + public static void sayBye(){ + System.out.println("See you next time!"); + } + /** + * check the input and see if the Bye is entered + * @return return false if bye is not entered + */ + public static boolean isByeEntered(){ + String checkInput = readCommand(); + try { + if(checkInput.isEmpty()) { + throw new RuntimeException("You didn't enter anything, please type in the command to your workouts"); + } + return checkInput.equalsIgnoreCase("bye"); + }catch (Exception e){ + System.out.println(e.getMessage()); + readCommand(); + } + return false; + } + public static void inputInstruction(String input, ArrayList workoutInput) throws DukeException { + String[] command = input.split("\\s+"); + switch (command[0]) { + case "list": + ListCommand.printList(input, workoutInput); + break; + default: + throw new DukeException(UNRECOGNISED_INPUT); + } + } +} \ No newline at end of file diff --git a/src/main/java/seedu/duke/Ui.java b/src/main/java/seedu/duke/Ui.java new file mode 100644 index 0000000000..699dafddd6 --- /dev/null +++ b/src/main/java/seedu/duke/Ui.java @@ -0,0 +1,17 @@ +package seedu.duke; + + +public class Ui { + public static final String LINE = " ____________________________________________________________"; + + /** + * For greeting and display each time the program run + */ + public static void greeting() { + + System.out.println(LINE); + System.out.println(" Hello! type in the command to approach next step"); + System.out.println(" Type bye to exit"); + System.out.println(LINE); + } +} \ No newline at end of file diff --git a/src/main/java/seedu/duke/View.java b/src/main/java/seedu/duke/View.java new file mode 100644 index 0000000000..aafb870d27 --- /dev/null +++ b/src/main/java/seedu/duke/View.java @@ -0,0 +1,11 @@ +package seedu.duke; + +public class View { + protected String description; + protected boolean isDone; + + public View(String description) { + this.description = description; + this.isDone = false; + } +} diff --git a/src/main/java/seedu/duke/Workout.java b/src/main/java/seedu/duke/Workout.java new file mode 100644 index 0000000000..fb519ea8a5 --- /dev/null +++ b/src/main/java/seedu/duke/Workout.java @@ -0,0 +1,5 @@ +package seedu.duke; + +public class Workout +{ +} From c3142a939164fa862335ec0416d2e356666edcaa Mon Sep 17 00:00:00 2001 From: calebcjl Date: Wed, 15 Mar 2023 09:57:18 +0800 Subject: [PATCH 010/152] Fix gradle errors --- src/main/java/seedu/duke/Duke.java | 4 ++-- src/main/java/seedu/workout/Exercise.java | 2 -- src/main/java/seedu/workout/Workout.java | 7 +++---- 3 files changed, 5 insertions(+), 8 deletions(-) diff --git a/src/main/java/seedu/duke/Duke.java b/src/main/java/seedu/duke/Duke.java index fc62fb91b0..35a57f4456 100644 --- a/src/main/java/seedu/duke/Duke.java +++ b/src/main/java/seedu/duke/Duke.java @@ -21,8 +21,8 @@ public class Duke { private static final int WEIGHT_INDEX = 1; private static final int REPS_PER_SET_INDEX = 2; - public static Workout currentWorkout; - public static WorkoutList workoutList; + private static Workout currentWorkout; + private static WorkoutList workoutList; /** * Main entry-point for the java.duke.Duke application. diff --git a/src/main/java/seedu/workout/Exercise.java b/src/main/java/seedu/workout/Exercise.java index 884328a3dd..60ac0b1a04 100644 --- a/src/main/java/seedu/workout/Exercise.java +++ b/src/main/java/seedu/workout/Exercise.java @@ -1,7 +1,5 @@ package seedu.workout; -import java.util.ArrayList; - public class Exercise { private String name; diff --git a/src/main/java/seedu/workout/Workout.java b/src/main/java/seedu/workout/Workout.java index f165ce1057..e86c99c716 100644 --- a/src/main/java/seedu/workout/Workout.java +++ b/src/main/java/seedu/workout/Workout.java @@ -9,10 +9,6 @@ public class Workout { private Date date; private ArrayList workoutExercises; - public void addExercise(Exercise exercise) { - workoutExercises.add(exercise); - } - public Workout(String dateString) throws ParseException { // Create a SimpleDateFormat object with the desired date format SimpleDateFormat dateFormat = new SimpleDateFormat("dd/MM/yy"); @@ -22,6 +18,9 @@ public Workout(String dateString) throws ParseException { workoutExercises = new ArrayList<>(); } + public void addExercise(Exercise exercise) { + workoutExercises.add(exercise); + } public Date getDate() { return this.date; } From c6c62d97b2b63ff85cf768a69425d32aaabb278d Mon Sep 17 00:00:00 2001 From: calebcjl Date: Wed, 15 Mar 2023 10:06:33 +0800 Subject: [PATCH 011/152] Add text ui test --- text-ui-test/EXPECTED.TXT | 17 ++++++++--------- text-ui-test/input.txt | 7 ++++++- 2 files changed, 14 insertions(+), 10 deletions(-) diff --git a/text-ui-test/EXPECTED.TXT b/text-ui-test/EXPECTED.TXT index 892cb6cae7..dde141a683 100644 --- a/text-ui-test/EXPECTED.TXT +++ b/text-ui-test/EXPECTED.TXT @@ -1,9 +1,8 @@ -Hello from - ____ _ -| _ \ _ _| | _____ -| | | | | | | |/ / _ \ -| |_| | |_| | < __/ -|____/ \__,_|_|\_\___| - -What is your name? -Hello James Gosling +Let's get moving! +"/start
" to begin your workout +Started new workout on Wed Feb 01 00:00:00 SGT 2023 +Added Bench Press 100kg 6 5 4 4 3 +Added Cable Flys 30kg 10 10 10 +Ended current workout! +Start a workout first! +Hope you had a great workout! \ No newline at end of file diff --git a/text-ui-test/input.txt b/text-ui-test/input.txt index f6ec2e9f95..c0c2f63716 100644 --- a/text-ui-test/input.txt +++ b/text-ui-test/input.txt @@ -1 +1,6 @@ -James Gosling \ No newline at end of file +/start 1/2/23 +/add Bench Press /weight 100kg /rps 6 5 4 4 3 +/add Cable Flys /weight 30kg /rps 10 10 10 +/end +/add tricep extensions /weight 25kg /rps 8 7 6 +/exit \ No newline at end of file From f7326ee849fe987651780df7d093719a47fd2b67 Mon Sep 17 00:00:00 2001 From: calebcjl Date: Wed, 15 Mar 2023 10:06:33 +0800 Subject: [PATCH 012/152] Add text ui test --- text-ui-test/EXPECTED.TXT | 17 ++++++++--------- text-ui-test/input.txt | 7 ++++++- 2 files changed, 14 insertions(+), 10 deletions(-) diff --git a/text-ui-test/EXPECTED.TXT b/text-ui-test/EXPECTED.TXT index 892cb6cae7..d077a57d9f 100644 --- a/text-ui-test/EXPECTED.TXT +++ b/text-ui-test/EXPECTED.TXT @@ -1,9 +1,8 @@ -Hello from - ____ _ -| _ \ _ _| | _____ -| | | | | | | |/ / _ \ -| |_| | |_| | < __/ -|____/ \__,_|_|\_\___| - -What is your name? -Hello James Gosling +Let's get moving! +"/start
" to begin your workout +Started new workout on Wed Feb 01 00:00:00 SGT 2023 +Added Bench Press 100kg 6 5 4 4 3 +Added Cable Flys 30kg 10 10 10 +Ended current workout! +Start a workout first! +Hope you had a great workout! diff --git a/text-ui-test/input.txt b/text-ui-test/input.txt index f6ec2e9f95..c0c2f63716 100644 --- a/text-ui-test/input.txt +++ b/text-ui-test/input.txt @@ -1 +1,6 @@ -James Gosling \ No newline at end of file +/start 1/2/23 +/add Bench Press /weight 100kg /rps 6 5 4 4 3 +/add Cable Flys /weight 30kg /rps 10 10 10 +/end +/add tricep extensions /weight 25kg /rps 8 7 6 +/exit \ No newline at end of file From c646578c4fd24ce323695dab2209150ef2ca82cc Mon Sep 17 00:00:00 2001 From: calebcjl Date: Wed, 15 Mar 2023 11:07:13 +0800 Subject: [PATCH 013/152] Fix text-ui-test --- src/main/java/seedu/duke/Duke.java | 4 +++- src/main/java/seedu/workout/Workout.java | 2 +- text-ui-test/EXPECTED.TXT | 3 ++- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/src/main/java/seedu/duke/Duke.java b/src/main/java/seedu/duke/Duke.java index 35a57f4456..29fe438c2f 100644 --- a/src/main/java/seedu/duke/Duke.java +++ b/src/main/java/seedu/duke/Duke.java @@ -108,7 +108,9 @@ public static String[] processExerciseDetails(String userInput) { public static void startWorkout(String[] inputs) { try { currentWorkout = new Workout(inputs[DATE_INDEX]); - System.out.println("Started new workout on " + currentWorkout.getDate()); + System.out.println("Started new workout."); + System.out.println("\"/add /weight /rps \"" + "to " + + "add your exercises sets and reps"); } catch (ArrayIndexOutOfBoundsException e) { System.out.println("Incorrect workout format!"); } catch (ParseException e) { diff --git a/src/main/java/seedu/workout/Workout.java b/src/main/java/seedu/workout/Workout.java index e86c99c716..fc8fcdf770 100644 --- a/src/main/java/seedu/workout/Workout.java +++ b/src/main/java/seedu/workout/Workout.java @@ -22,7 +22,7 @@ public void addExercise(Exercise exercise) { workoutExercises.add(exercise); } public Date getDate() { - return this.date; + return date; } public void setDate(Date date) { diff --git a/text-ui-test/EXPECTED.TXT b/text-ui-test/EXPECTED.TXT index d077a57d9f..f78d62df32 100644 --- a/text-ui-test/EXPECTED.TXT +++ b/text-ui-test/EXPECTED.TXT @@ -1,6 +1,7 @@ Let's get moving! "/start
" to begin your workout -Started new workout on Wed Feb 01 00:00:00 SGT 2023 +Started new workout. +"/add /weight /rps "to add your exercises sets and reps Added Bench Press 100kg 6 5 4 4 3 Added Cable Flys 30kg 10 10 10 Ended current workout! From c9bc716b3ac4313c77d8abeb0781b22050df820c Mon Sep 17 00:00:00 2001 From: calebcjl Date: Thu, 16 Mar 2023 02:59:09 +0800 Subject: [PATCH 014/152] Refactor code for more OOP --- src/main/java/seedu/commands/AddCommand.java | 22 +++ src/main/java/seedu/commands/Command.java | 18 +++ .../java/seedu/commands/DeleteCommand.java | 15 +++ src/main/java/seedu/commands/EndCommand.java | 14 ++ src/main/java/seedu/commands/ExitCommand.java | 12 ++ .../java/seedu/commands/IncorrectCommand.java | 12 ++ .../java/seedu/commands/StartCommand.java | 26 ++++ src/main/java/seedu/duke/Duke.java | 127 +++--------------- src/main/java/seedu/parser/Parser.java | 93 +++++++++++++ src/main/java/seedu/ui/Ui.java | 22 +++ src/main/java/seedu/workout/Workout.java | 12 +- src/main/java/seedu/workout/WorkoutList.java | 20 ++- src/test/java/seedu/workout/WorkoutTest.java | 7 +- text-ui-test/EXPECTED.TXT | 15 ++- text-ui-test/input.txt | 9 +- 15 files changed, 296 insertions(+), 128 deletions(-) create mode 100644 src/main/java/seedu/commands/AddCommand.java create mode 100644 src/main/java/seedu/commands/Command.java create mode 100644 src/main/java/seedu/commands/DeleteCommand.java create mode 100644 src/main/java/seedu/commands/EndCommand.java create mode 100644 src/main/java/seedu/commands/ExitCommand.java create mode 100644 src/main/java/seedu/commands/IncorrectCommand.java create mode 100644 src/main/java/seedu/commands/StartCommand.java create mode 100644 src/main/java/seedu/parser/Parser.java create mode 100644 src/main/java/seedu/ui/Ui.java diff --git a/src/main/java/seedu/commands/AddCommand.java b/src/main/java/seedu/commands/AddCommand.java new file mode 100644 index 0000000000..0f086ca1a1 --- /dev/null +++ b/src/main/java/seedu/commands/AddCommand.java @@ -0,0 +1,22 @@ +package seedu.commands; + +import seedu.workout.Exercise; +import seedu.workout.WorkoutList; + +public class AddCommand extends Command { + private Exercise toAdd; + + public AddCommand(Exercise toAdd) { + this.toAdd = toAdd; + } + + @Override + public void execute() { + if (workoutList.currentWorkoutIndex == WorkoutList.NO_CURRENT_WORKOUT) { + System.out.println("Start a workout first!"); + return; + } + workoutList.getCurrentWorkout().addExercise(toAdd); + } + +} diff --git a/src/main/java/seedu/commands/Command.java b/src/main/java/seedu/commands/Command.java new file mode 100644 index 0000000000..6df9d070f0 --- /dev/null +++ b/src/main/java/seedu/commands/Command.java @@ -0,0 +1,18 @@ +package seedu.commands; + +import seedu.workout.WorkoutList; + +public class Command { + protected WorkoutList workoutList; + + protected Command() { + } + + public void setData(WorkoutList workoutList) { + this.workoutList = workoutList; + } + + public void execute() { + throw new UnsupportedOperationException("This method is to be implemented by child classes"); + } +} diff --git a/src/main/java/seedu/commands/DeleteCommand.java b/src/main/java/seedu/commands/DeleteCommand.java new file mode 100644 index 0000000000..9cc76a8089 --- /dev/null +++ b/src/main/java/seedu/commands/DeleteCommand.java @@ -0,0 +1,15 @@ +package seedu.commands; + +import java.util.Date; + +public class DeleteCommand extends Command { + Date workoutToDeleteDate; + public DeleteCommand(Date workoutToDeleteDate) { + this.workoutToDeleteDate = workoutToDeleteDate; + } + + @Override + public void execute() { + workoutList.removeWorkout(workoutToDeleteDate); + } +} diff --git a/src/main/java/seedu/commands/EndCommand.java b/src/main/java/seedu/commands/EndCommand.java new file mode 100644 index 0000000000..444c365ef8 --- /dev/null +++ b/src/main/java/seedu/commands/EndCommand.java @@ -0,0 +1,14 @@ +package seedu.commands; + +import seedu.workout.WorkoutList; + +public class EndCommand extends Command { + public EndCommand() { + } + + public void execute() { + workoutList.setCurrentWorkoutIndex(WorkoutList.NO_CURRENT_WORKOUT); + System.out.println("Great job completing your workout!"); + } +} + diff --git a/src/main/java/seedu/commands/ExitCommand.java b/src/main/java/seedu/commands/ExitCommand.java new file mode 100644 index 0000000000..1501e6b669 --- /dev/null +++ b/src/main/java/seedu/commands/ExitCommand.java @@ -0,0 +1,12 @@ +package seedu.commands; + +public class ExitCommand extends Command { + + public static boolean isExit(Command command) { + return command instanceof ExitCommand; + } + + @Override + public void execute() { + } +} diff --git a/src/main/java/seedu/commands/IncorrectCommand.java b/src/main/java/seedu/commands/IncorrectCommand.java new file mode 100644 index 0000000000..480b43a906 --- /dev/null +++ b/src/main/java/seedu/commands/IncorrectCommand.java @@ -0,0 +1,12 @@ +package seedu.commands; + +public class IncorrectCommand extends Command { + + public IncorrectCommand() { + } + + @Override + public void execute() { + System.out.println("Incorrect command given!"); + } +} diff --git a/src/main/java/seedu/commands/StartCommand.java b/src/main/java/seedu/commands/StartCommand.java new file mode 100644 index 0000000000..650ecf13af --- /dev/null +++ b/src/main/java/seedu/commands/StartCommand.java @@ -0,0 +1,26 @@ +package seedu.commands; + +import seedu.workout.Workout; +import seedu.workout.WorkoutList; + +import java.util.Date; + +public class StartCommand extends Command { + + private Date date; + public StartCommand(Date date) { + this.date = date; + } + + @Override + public void execute() { + if (workoutList.currentWorkoutIndex == WorkoutList.NO_CURRENT_WORKOUT) { + Workout toStart = new Workout(date); + workoutList.addWorkout(toStart); + System.out.println("Started new workout."); + System.out.println("Use add command to add exercises to your workout!"); + return; + } + System.out.println("End your current workout before starting a new one!"); + } +} diff --git a/src/main/java/seedu/duke/Duke.java b/src/main/java/seedu/duke/Duke.java index 29fe438c2f..43e7dc3bec 100644 --- a/src/main/java/seedu/duke/Duke.java +++ b/src/main/java/seedu/duke/Duke.java @@ -1,120 +1,37 @@ package seedu.duke; -import java.util.Scanner; -import java.util.Date; -import java.text.SimpleDateFormat; -import java.text.ParseException; -import java.text.DateFormat; - -import seedu.workout.Exercise; -import seedu.workout.Workout; +import seedu.commands.Command; +import seedu.commands.ExitCommand; +import seedu.parser.Parser; +import seedu.ui.Ui; import seedu.workout.WorkoutList; -public class Duke { - - public static final String WELCOME_MESSAGE = "Let's get moving!\n" + "\"/start
\" to begin " + - "your workout"; - private static final int COMMAND_INDEX = 0; - private static final int NAME_INDEX = 0; - private static final int DATE_INDEX = 1; - private static final int EXERCISE_DETAILS_INDEX = 1; - private static final int WEIGHT_INDEX = 1; - private static final int REPS_PER_SET_INDEX = 2; - private static Workout currentWorkout; - private static WorkoutList workoutList; +public class Duke { - /** - * Main entry-point for the java.duke.Duke application. - */ + private Ui ui; + private WorkoutList workoutList; public static void main(String[] args) { - System.out.println(WELCOME_MESSAGE); - Scanner in = new Scanner(System.in); - workoutList = new WorkoutList(); - Boolean isExit = false; - - while (!isExit) { - String[] userInputs = processUserInput(in.nextLine()); - switch (userInputs[COMMAND_INDEX]) { - case "/start": - startWorkout(userInputs); - break; - case "/add": - addExerciseToWorkout(userInputs); - break; - case "/delete": - deleteWorkout(userInputs); - break; - case "/end": - endWorkout(); - break; - case "/exit": - isExit = true; - System.out.println("Hope you had a great workout!"); - break; - default: - System.out.println("Command not recognised!"); - break; - } - } - } - - private static void deleteWorkout(String[] userInputs) { - String dateString = userInputs[DATE_INDEX]; - try { - DateFormat dateFormat = new SimpleDateFormat("dd/MM/yy"); - Date date = dateFormat.parse(dateString); - - // Search for the workout with the matching date and remove it - workoutList.removeWorkout(date); - } catch (ParseException e) { - System.out.println("Invalid date format. Please enter the date in the format dd/mm/yy."); - } - } - - private static void endWorkout() { - workoutList.addWorkout(currentWorkout); - currentWorkout = null; - System.out.println("Ended current workout!"); + new Duke().run(); } - private static void addExerciseToWorkout(String[] inputs) { - try { - String[] exerciseDetails = processExerciseDetails(inputs[EXERCISE_DETAILS_INDEX]); - Exercise exercise = new Exercise(exerciseDetails[NAME_INDEX], exerciseDetails[WEIGHT_INDEX], - exerciseDetails[REPS_PER_SET_INDEX]); - currentWorkout.addExercise(exercise); - System.out.println("Added " + exercise); - } catch (ArrayIndexOutOfBoundsException e) { - System.out.println("Incorrect exercise format!"); - } catch (NullPointerException e) { - System.out.println("Start a workout first!"); - } - } + private void run() { + ui = new Ui(); + workoutList = new WorkoutList(); + ui.showGreeting(); - public static String[] processUserInput(String input) { - String[] inputs = input.split("\\s+", 2); - return inputs; + executeCommandUntilExit(); + Ui.showExit(); } - public static String[] processExerciseDetails(String userInput) { - String[] exerciseDetails = userInput.split("/", 3); - exerciseDetails[NAME_INDEX] = exerciseDetails[NAME_INDEX].trim(); - exerciseDetails[WEIGHT_INDEX] = exerciseDetails[WEIGHT_INDEX].replace("weight", "").trim(); - exerciseDetails[REPS_PER_SET_INDEX] = exerciseDetails[REPS_PER_SET_INDEX].replace("rps", "").trim(); - return exerciseDetails; + private void executeCommandUntilExit() { + Command command; + do { + String userInput = ui.getUserInput(); + command = new Parser().processCommand(userInput); + command.setData(workoutList); + command.execute(); + } while (!ExitCommand.isExit(command)); } - public static void startWorkout(String[] inputs) { - try { - currentWorkout = new Workout(inputs[DATE_INDEX]); - System.out.println("Started new workout."); - System.out.println("\"/add /weight /rps \"" + "to " + - "add your exercises sets and reps"); - } catch (ArrayIndexOutOfBoundsException e) { - System.out.println("Incorrect workout format!"); - } catch (ParseException e) { - System.out.println("Invalid date format. Please enter the date in the format dd/mm/yy."); - } - } } diff --git a/src/main/java/seedu/parser/Parser.java b/src/main/java/seedu/parser/Parser.java new file mode 100644 index 0000000000..27a8e229bb --- /dev/null +++ b/src/main/java/seedu/parser/Parser.java @@ -0,0 +1,93 @@ +package seedu.parser; + +import seedu.commands.AddCommand; +import seedu.commands.Command; +import seedu.commands.DeleteCommand; +import seedu.commands.EndCommand; +import seedu.commands.ExitCommand; +import seedu.commands.IncorrectCommand; +import seedu.commands.StartCommand; +import seedu.workout.Exercise; + +import java.text.DateFormat; +import java.text.ParseException; +import java.text.SimpleDateFormat; +import java.util.Date; +import java.util.regex.Matcher; +import java.util.regex.Pattern; + +public class Parser { + + + private static final int COMMAND_INDEX = 0; + private static final int ARGUMENT_INDEX = 1; + private static final int EXERCISE_NAME_INDEX = 0; + private static final int WEIGHT_INDEX = 1; + private static final int REPS_PER_SET_INDEX = 2; + private static final Pattern BASIC_COMMAND_FORMAT = Pattern.compile("(?\\S+)(?" + + ".*)"); + + public Command processCommand(String userInput) { + Matcher matcher = BASIC_COMMAND_FORMAT.matcher(userInput.trim()); + if (!matcher.matches()) { + return new IncorrectCommand(); + } + + String commandName = matcher.group("commandName"); + String arguments = matcher.group("arguments"); + + switch (commandName) { + case "/start": + return processStart(arguments); + case "/add": + return processAdd(arguments); + case "/delete": + return processDelete(arguments); + case "/end": + return new EndCommand(); + case "/exit": + return new ExitCommand(); + default: + return new IncorrectCommand(); + } + } + + private Command processStart(String arguments) { + Date date; + try { + DateFormat dateFormat = new SimpleDateFormat("dd/MM/yy"); + date = dateFormat.parse(arguments); + } catch (ParseException e) { + System.out.println("Invalid date format. Please enter the date in the format dd/mm/yy."); + return new IncorrectCommand(); + } + return new StartCommand(date); + } + + private Command processAdd(String arguments) { + Exercise toAdd; + try { + String[] exerciseDetails = arguments.split("/", 3); + String exerciseName = exerciseDetails[EXERCISE_NAME_INDEX].trim(); + String weight = exerciseDetails[WEIGHT_INDEX].replace("weight", "").trim(); + String repsPerSet = + exerciseDetails[REPS_PER_SET_INDEX].replace("rps", "").replace("rps", "").trim(); + toAdd = new Exercise(exerciseName, weight, repsPerSet); + + } catch (ArrayIndexOutOfBoundsException e) { + return new IncorrectCommand(); + } + return new AddCommand(toAdd); + } + private Command processDelete(String arguments) { + Date date; + try { + DateFormat dateFormat = new SimpleDateFormat("dd/MM/yy"); + date = dateFormat.parse(arguments); + } catch (ParseException e) { + System.out.println("Invalid date format. Please enter the date in the format dd/mm/yy."); + return new IncorrectCommand(); + } + return new DeleteCommand(date); + } +} diff --git a/src/main/java/seedu/ui/Ui.java b/src/main/java/seedu/ui/Ui.java new file mode 100644 index 0000000000..3563683161 --- /dev/null +++ b/src/main/java/seedu/ui/Ui.java @@ -0,0 +1,22 @@ +package seedu.ui; + +import java.util.Scanner; + +public class Ui { + private static final String WELCOME_MESSAGE = "Let's get moving!\n" + "\"/start
\" to begin " + + "your workout"; + + private static final String ENDING_MESSAGE = "Thank you and see you next time"; + private final Scanner in = new Scanner(System.in); + + public static void showGreeting() { + System.out.println(WELCOME_MESSAGE); + } + public static void showExit(){ + System.out.println(ENDING_MESSAGE); + } + + public String getUserInput() { + return in.nextLine(); + } +} diff --git a/src/main/java/seedu/workout/Workout.java b/src/main/java/seedu/workout/Workout.java index fc8fcdf770..b578226c75 100644 --- a/src/main/java/seedu/workout/Workout.java +++ b/src/main/java/seedu/workout/Workout.java @@ -1,26 +1,22 @@ package seedu.workout; -import java.text.ParseException; import java.util.ArrayList; import java.util.Date; -import java.text.SimpleDateFormat; public class Workout { private Date date; private ArrayList workoutExercises; - public Workout(String dateString) throws ParseException { - // Create a SimpleDateFormat object with the desired date format - SimpleDateFormat dateFormat = new SimpleDateFormat("dd/MM/yy"); - - // Parse the input dateString to create a Date object - this.date = dateFormat.parse(dateString); + public Workout(Date date) { + this.date = date; workoutExercises = new ArrayList<>(); } public void addExercise(Exercise exercise) { workoutExercises.add(exercise); + System.out.println("Added " + exercise); } + public Date getDate() { return date; } diff --git a/src/main/java/seedu/workout/WorkoutList.java b/src/main/java/seedu/workout/WorkoutList.java index c9df983e61..622eb8a2a6 100644 --- a/src/main/java/seedu/workout/WorkoutList.java +++ b/src/main/java/seedu/workout/WorkoutList.java @@ -4,18 +4,22 @@ import java.util.Date; public class WorkoutList { - - private ArrayList workoutList = new ArrayList<>(); + public static final int NO_CURRENT_WORKOUT = -1; + public ArrayList workoutList; + public int currentWorkoutIndex; public WorkoutList() { + workoutList = new ArrayList<>(); + currentWorkoutIndex = NO_CURRENT_WORKOUT; } public void addWorkout(Workout workout) { workoutList.add(workout); - } - public ArrayList getWorkoutList() { - return workoutList; + currentWorkoutIndex = getLastIndex(); } + public void setCurrentWorkoutIndex(int currentWorkoutIndex) { + this.currentWorkoutIndex = currentWorkoutIndex; + } public void removeWorkout(Date date) { for (Workout workout : workoutList) { if (workout.getDate().equals(date)) { @@ -27,4 +31,10 @@ public void removeWorkout(Date date) { System.out.println("No workout found with the specified date."); } + public int getLastIndex() { + return workoutList.size() - 1; + } + public Workout getCurrentWorkout() { + return workoutList.get(currentWorkoutIndex); + } } diff --git a/src/test/java/seedu/workout/WorkoutTest.java b/src/test/java/seedu/workout/WorkoutTest.java index e82430ca4a..51f608a9b4 100644 --- a/src/test/java/seedu/workout/WorkoutTest.java +++ b/src/test/java/seedu/workout/WorkoutTest.java @@ -8,16 +8,11 @@ public class WorkoutTest { public SimpleDateFormat dateFormat = new SimpleDateFormat("dd/MM/yy"); - @Test - public void testInvalidDate() throws Exception { - Workout workout = new Workout("05/02/2023"); //invalid date format - } - @Test public void testGetDateAndSetDate() throws Exception { - Workout workout = new Workout("05/02/23"); String expectedDatestring = "05/02/23"; Date expectedDate = dateFormat.parse(expectedDatestring); + Workout workout = new Workout(expectedDate); assertEquals(expectedDate, workout.getDate()); String newDatestring = "06/03/24"; diff --git a/text-ui-test/EXPECTED.TXT b/text-ui-test/EXPECTED.TXT index f78d62df32..eba25c7be9 100644 --- a/text-ui-test/EXPECTED.TXT +++ b/text-ui-test/EXPECTED.TXT @@ -1,9 +1,18 @@ Let's get moving! "/start
" to begin your workout Started new workout. -"/add /weight /rps "to add your exercises sets and reps +Use add command to add exercises to your workout! Added Bench Press 100kg 6 5 4 4 3 Added Cable Flys 30kg 10 10 10 -Ended current workout! +Invalid date format. Please enter the date in the format dd/mm/yy. +Incorrect command given! +Great job completing your workout! Start a workout first! -Hope you had a great workout! +Great job completing your workout! +Started new workout. +Use add command to add exercises to your workout! +Added Pullups +10kg 10 10 10 +Great job completing your workout! +Workout deleted successfully. +No workout found with the specified date. +Thank you and see you next time diff --git a/text-ui-test/input.txt b/text-ui-test/input.txt index c0c2f63716..4fa7e9ac1c 100644 --- a/text-ui-test/input.txt +++ b/text-ui-test/input.txt @@ -1,6 +1,13 @@ -/start 1/2/23 +/start 11/11/23 /add Bench Press /weight 100kg /rps 6 5 4 4 3 /add Cable Flys /weight 30kg /rps 10 10 10 +/start /end /add tricep extensions /weight 25kg /rps 8 7 6 +/end +/start 12/11/23 +/add Pullups /weight +10kg /rps 10 10 10 +/end +/delete 11/11/23 +/delete 11/12/23 /exit \ No newline at end of file From 9a790ce20dbf3b11e05732d516a7f889fcaefe11 Mon Sep 17 00:00:00 2001 From: ZIZI-czh Date: Thu, 16 Mar 2023 13:36:38 +0800 Subject: [PATCH 015/152] Add in the feature "list" --- src/main/java/seedu/commands/Command.java | 4 +++- src/main/java/seedu/commands/ListCommand.java | 17 ++++++++++++++ src/main/java/seedu/parser/Parser.java | 11 ++++----- src/main/java/seedu/workout/WorkoutList.java | 23 ++++++++++++++++++- 4 files changed, 46 insertions(+), 9 deletions(-) create mode 100644 src/main/java/seedu/commands/ListCommand.java diff --git a/src/main/java/seedu/commands/Command.java b/src/main/java/seedu/commands/Command.java index 6df9d070f0..2cf6dfb8e1 100644 --- a/src/main/java/seedu/commands/Command.java +++ b/src/main/java/seedu/commands/Command.java @@ -1,10 +1,12 @@ package seedu.commands; +import seedu.workout.Workout; import seedu.workout.WorkoutList; +import java.util.ArrayList; + public class Command { protected WorkoutList workoutList; - protected Command() { } diff --git a/src/main/java/seedu/commands/ListCommand.java b/src/main/java/seedu/commands/ListCommand.java new file mode 100644 index 0000000000..1339d50c85 --- /dev/null +++ b/src/main/java/seedu/commands/ListCommand.java @@ -0,0 +1,17 @@ +package seedu.commands; + +import seedu.workout.Workout; + +import java.util.Date; + +public class ListCommand extends Command { + + public ListCommand() { + } + + @Override + public void execute() { + workoutList.showWorkoutList(); + } + +} \ No newline at end of file diff --git a/src/main/java/seedu/parser/Parser.java b/src/main/java/seedu/parser/Parser.java index 27a8e229bb..f75f0b3879 100644 --- a/src/main/java/seedu/parser/Parser.java +++ b/src/main/java/seedu/parser/Parser.java @@ -1,12 +1,6 @@ package seedu.parser; -import seedu.commands.AddCommand; -import seedu.commands.Command; -import seedu.commands.DeleteCommand; -import seedu.commands.EndCommand; -import seedu.commands.ExitCommand; -import seedu.commands.IncorrectCommand; -import seedu.commands.StartCommand; +import seedu.commands.*; import seedu.workout.Exercise; import java.text.DateFormat; @@ -43,6 +37,8 @@ public Command processCommand(String userInput) { return processAdd(arguments); case "/delete": return processDelete(arguments); + case "/list": + return new ListCommand(); case "/end": return new EndCommand(); case "/exit": @@ -90,4 +86,5 @@ private Command processDelete(String arguments) { } return new DeleteCommand(date); } + } diff --git a/src/main/java/seedu/workout/WorkoutList.java b/src/main/java/seedu/workout/WorkoutList.java index 622eb8a2a6..937dec2d5d 100644 --- a/src/main/java/seedu/workout/WorkoutList.java +++ b/src/main/java/seedu/workout/WorkoutList.java @@ -7,6 +7,7 @@ public class WorkoutList { public static final int NO_CURRENT_WORKOUT = -1; public ArrayList workoutList; public int currentWorkoutIndex; + public WorkoutList() { workoutList = new ArrayList<>(); currentWorkoutIndex = NO_CURRENT_WORKOUT; @@ -20,20 +21,40 @@ public void addWorkout(Workout workout) { public void setCurrentWorkoutIndex(int currentWorkoutIndex) { this.currentWorkoutIndex = currentWorkoutIndex; } + public void removeWorkout(Date date) { for (Workout workout : workoutList) { + System.out.println(workout.getDate()); if (workout.getDate().equals(date)) { + workoutList.remove(workout); System.out.println("Workout deleted successfully."); return; } } - System.out.println("No workout found with the specified date."); } + + public void showWorkoutList() { + try { + if (!workoutList.isEmpty()) { + System.out.println("Here are the list of dates for your workout: "); + for (Workout workout : workoutList) { + System.out.println(workout.getDate()); + } + } else { + System.out.println("Haven't start your workout, please enter your workout"); + } + + } catch (NullPointerException e) { + System.out.println("Haven't start your workout, please enter your workout"); + } + } + public int getLastIndex() { return workoutList.size() - 1; } + public Workout getCurrentWorkout() { return workoutList.get(currentWorkoutIndex); } From 3b3271f98c7b1caac3c1e18afb1b8cf5c7234e5b Mon Sep 17 00:00:00 2001 From: ZIZI-czh Date: Thu, 16 Mar 2023 13:43:34 +0800 Subject: [PATCH 016/152] Add in comments for listCommand file --- src/main/java/seedu/commands/ListCommand.java | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/main/java/seedu/commands/ListCommand.java b/src/main/java/seedu/commands/ListCommand.java index 1339d50c85..85a70cf8dd 100644 --- a/src/main/java/seedu/commands/ListCommand.java +++ b/src/main/java/seedu/commands/ListCommand.java @@ -9,6 +9,9 @@ public class ListCommand extends Command { public ListCommand() { } + /** + * Show the list of date of the workout + */ @Override public void execute() { workoutList.showWorkoutList(); From 6d41b2f0f129f99c583a04c41894510ff55bfd4d Mon Sep 17 00:00:00 2001 From: calebcjl Date: Thu, 16 Mar 2023 14:00:22 +0800 Subject: [PATCH 017/152] Fix checkstyle errors --- src/main/java/seedu/commands/Command.java | 3 --- src/main/java/seedu/commands/ListCommand.java | 5 +---- src/main/java/seedu/parser/Parser.java | 12 ++++++++---- 3 files changed, 9 insertions(+), 11 deletions(-) diff --git a/src/main/java/seedu/commands/Command.java b/src/main/java/seedu/commands/Command.java index 2cf6dfb8e1..de056467b0 100644 --- a/src/main/java/seedu/commands/Command.java +++ b/src/main/java/seedu/commands/Command.java @@ -1,10 +1,7 @@ package seedu.commands; -import seedu.workout.Workout; import seedu.workout.WorkoutList; -import java.util.ArrayList; - public class Command { protected WorkoutList workoutList; protected Command() { diff --git a/src/main/java/seedu/commands/ListCommand.java b/src/main/java/seedu/commands/ListCommand.java index 1339d50c85..2684c2bccd 100644 --- a/src/main/java/seedu/commands/ListCommand.java +++ b/src/main/java/seedu/commands/ListCommand.java @@ -1,8 +1,5 @@ package seedu.commands; -import seedu.workout.Workout; - -import java.util.Date; public class ListCommand extends Command { @@ -14,4 +11,4 @@ public void execute() { workoutList.showWorkoutList(); } -} \ No newline at end of file +} diff --git a/src/main/java/seedu/parser/Parser.java b/src/main/java/seedu/parser/Parser.java index f75f0b3879..1b059b702d 100644 --- a/src/main/java/seedu/parser/Parser.java +++ b/src/main/java/seedu/parser/Parser.java @@ -1,6 +1,13 @@ package seedu.parser; -import seedu.commands.*; +import seedu.commands.AddCommand; +import seedu.commands.Command; +import seedu.commands.DeleteCommand; +import seedu.commands.EndCommand; +import seedu.commands.ExitCommand; +import seedu.commands.IncorrectCommand; +import seedu.commands.ListCommand; +import seedu.commands.StartCommand; import seedu.workout.Exercise; import java.text.DateFormat; @@ -12,9 +19,6 @@ public class Parser { - - private static final int COMMAND_INDEX = 0; - private static final int ARGUMENT_INDEX = 1; private static final int EXERCISE_NAME_INDEX = 0; private static final int WEIGHT_INDEX = 1; private static final int REPS_PER_SET_INDEX = 2; From 908e43cd35858edfd9d42041a988d58a6fb45938 Mon Sep 17 00:00:00 2001 From: ZIZI-czh Date: Thu, 16 Mar 2023 14:01:36 +0800 Subject: [PATCH 018/152] Clean the code --- src/main/java/seedu/commands/Command.java | 3 --- src/main/java/seedu/commands/ListCommand.java | 4 ---- src/main/java/seedu/parser/Parser.java | 11 +++++++++-- 3 files changed, 9 insertions(+), 9 deletions(-) diff --git a/src/main/java/seedu/commands/Command.java b/src/main/java/seedu/commands/Command.java index 2cf6dfb8e1..de056467b0 100644 --- a/src/main/java/seedu/commands/Command.java +++ b/src/main/java/seedu/commands/Command.java @@ -1,10 +1,7 @@ package seedu.commands; -import seedu.workout.Workout; import seedu.workout.WorkoutList; -import java.util.ArrayList; - public class Command { protected WorkoutList workoutList; protected Command() { diff --git a/src/main/java/seedu/commands/ListCommand.java b/src/main/java/seedu/commands/ListCommand.java index 85a70cf8dd..32503c9742 100644 --- a/src/main/java/seedu/commands/ListCommand.java +++ b/src/main/java/seedu/commands/ListCommand.java @@ -1,9 +1,5 @@ package seedu.commands; -import seedu.workout.Workout; - -import java.util.Date; - public class ListCommand extends Command { public ListCommand() { diff --git a/src/main/java/seedu/parser/Parser.java b/src/main/java/seedu/parser/Parser.java index f75f0b3879..c5809137c7 100644 --- a/src/main/java/seedu/parser/Parser.java +++ b/src/main/java/seedu/parser/Parser.java @@ -1,8 +1,15 @@ package seedu.parser; -import seedu.commands.*; -import seedu.workout.Exercise; +import seedu.commands.ListCommand; +import seedu.commands.ExitCommand; +import seedu.commands.EndCommand; +import seedu.commands.IncorrectCommand; +import seedu.commands.StartCommand; +import seedu.commands.AddCommand; +import seedu.commands.DeleteCommand; +import seedu.commands.Command; +import seedu.workout.Exercise; import java.text.DateFormat; import java.text.ParseException; import java.text.SimpleDateFormat; From 8a70b271b1b3c0608925086d9765c560b91d63f5 Mon Sep 17 00:00:00 2001 From: ZIZI-czh Date: Thu, 16 Mar 2023 14:11:56 +0800 Subject: [PATCH 019/152] remove redundant definition --- src/main/java/seedu/parser/Parser.java | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/main/java/seedu/parser/Parser.java b/src/main/java/seedu/parser/Parser.java index c5809137c7..6a9948ddd6 100644 --- a/src/main/java/seedu/parser/Parser.java +++ b/src/main/java/seedu/parser/Parser.java @@ -20,8 +20,6 @@ public class Parser { - private static final int COMMAND_INDEX = 0; - private static final int ARGUMENT_INDEX = 1; private static final int EXERCISE_NAME_INDEX = 0; private static final int WEIGHT_INDEX = 1; private static final int REPS_PER_SET_INDEX = 2; From 722d9aa4f1d570d94baa49c657fdfb8cf89b5e68 Mon Sep 17 00:00:00 2001 From: ZIZI-czh Date: Thu, 16 Mar 2023 14:15:26 +0800 Subject: [PATCH 020/152] Solve pull request issue --- src/main/java/seedu/commands/ListCommand.java | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/main/java/seedu/commands/ListCommand.java b/src/main/java/seedu/commands/ListCommand.java index 32503c9742..e5c90244e0 100644 --- a/src/main/java/seedu/commands/ListCommand.java +++ b/src/main/java/seedu/commands/ListCommand.java @@ -13,4 +13,7 @@ public void execute() { workoutList.showWorkoutList(); } -} \ No newline at end of file + +} + + From fdc788793fc945862cf8ef40c93965b677ae1e67 Mon Sep 17 00:00:00 2001 From: ZIZI-czh Date: Thu, 16 Mar 2023 14:31:23 +0800 Subject: [PATCH 021/152] correct minor error --- src/main/java/seedu/commands/ListCommand.java | 2 +- src/main/java/seedu/workout/WorkoutList.java | 1 - text-ui-test/EXPECTED.TXT | 2 ++ text-ui-test/input.txt | 1 + 4 files changed, 4 insertions(+), 2 deletions(-) diff --git a/src/main/java/seedu/commands/ListCommand.java b/src/main/java/seedu/commands/ListCommand.java index e5c90244e0..08d63d9742 100644 --- a/src/main/java/seedu/commands/ListCommand.java +++ b/src/main/java/seedu/commands/ListCommand.java @@ -13,7 +13,7 @@ public void execute() { workoutList.showWorkoutList(); } - + } diff --git a/src/main/java/seedu/workout/WorkoutList.java b/src/main/java/seedu/workout/WorkoutList.java index 937dec2d5d..395b78fe9e 100644 --- a/src/main/java/seedu/workout/WorkoutList.java +++ b/src/main/java/seedu/workout/WorkoutList.java @@ -24,7 +24,6 @@ public void setCurrentWorkoutIndex(int currentWorkoutIndex) { public void removeWorkout(Date date) { for (Workout workout : workoutList) { - System.out.println(workout.getDate()); if (workout.getDate().equals(date)) { workoutList.remove(workout); diff --git a/text-ui-test/EXPECTED.TXT b/text-ui-test/EXPECTED.TXT index eba25c7be9..5253660b88 100644 --- a/text-ui-test/EXPECTED.TXT +++ b/text-ui-test/EXPECTED.TXT @@ -7,6 +7,8 @@ Added Cable Flys 30kg 10 10 10 Invalid date format. Please enter the date in the format dd/mm/yy. Incorrect command given! Great job completing your workout! +Here are the list of dates for your workout: +Sat Nov 11 00:00:00 CST 2023 Start a workout first! Great job completing your workout! Started new workout. diff --git a/text-ui-test/input.txt b/text-ui-test/input.txt index 4fa7e9ac1c..504560b7e6 100644 --- a/text-ui-test/input.txt +++ b/text-ui-test/input.txt @@ -3,6 +3,7 @@ /add Cable Flys /weight 30kg /rps 10 10 10 /start /end +/list /add tricep extensions /weight 25kg /rps 8 7 6 /end /start 12/11/23 From 8a47385d152162068c3160401aafd694ca9b60cd Mon Sep 17 00:00:00 2001 From: ZIZI-czh Date: Thu, 16 Mar 2023 14:38:46 +0800 Subject: [PATCH 022/152] add space end of code --- src/main/java/seedu/commands/ListCommand.java | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/main/java/seedu/commands/ListCommand.java b/src/main/java/seedu/commands/ListCommand.java index 08d63d9742..21d734a3bb 100644 --- a/src/main/java/seedu/commands/ListCommand.java +++ b/src/main/java/seedu/commands/ListCommand.java @@ -17,3 +17,6 @@ public void execute() { } + + + From 0f4ba6e27e1bc9caa4d34133673aeab2ea49ce91 Mon Sep 17 00:00:00 2001 From: ZIZI-czh Date: Thu, 16 Mar 2023 15:15:12 +0800 Subject: [PATCH 023/152] Simply the date format --- src/main/java/seedu/commands/DeleteCommand.java | 5 +++-- src/main/java/seedu/parser/Parser.java | 5 ++++- src/main/java/seedu/workout/Workout.java | 10 ++++++---- src/main/java/seedu/workout/WorkoutList.java | 3 +-- src/test/java/seedu/workout/WorkoutTest.java | 2 +- text-ui-test/EXPECTED.TXT | 4 +++- text-ui-test/input.txt | 1 + 7 files changed, 19 insertions(+), 11 deletions(-) diff --git a/src/main/java/seedu/commands/DeleteCommand.java b/src/main/java/seedu/commands/DeleteCommand.java index 9cc76a8089..8a47be9d2d 100644 --- a/src/main/java/seedu/commands/DeleteCommand.java +++ b/src/main/java/seedu/commands/DeleteCommand.java @@ -1,10 +1,11 @@ package seedu.commands; +import java.text.SimpleDateFormat; import java.util.Date; public class DeleteCommand extends Command { - Date workoutToDeleteDate; - public DeleteCommand(Date workoutToDeleteDate) { + String workoutToDeleteDate; + public DeleteCommand(String workoutToDeleteDate) { this.workoutToDeleteDate = workoutToDeleteDate; } diff --git a/src/main/java/seedu/parser/Parser.java b/src/main/java/seedu/parser/Parser.java index 6a9948ddd6..25b0dc104a 100644 --- a/src/main/java/seedu/parser/Parser.java +++ b/src/main/java/seedu/parser/Parser.java @@ -89,7 +89,10 @@ private Command processDelete(String arguments) { System.out.println("Invalid date format. Please enter the date in the format dd/mm/yy."); return new IncorrectCommand(); } - return new DeleteCommand(date); + + SimpleDateFormat dateFormat = new SimpleDateFormat("MM/dd/yyyy"); + String formatDate = dateFormat.format(date); + return new DeleteCommand(formatDate); } } diff --git a/src/main/java/seedu/workout/Workout.java b/src/main/java/seedu/workout/Workout.java index b578226c75..07a6ef554d 100644 --- a/src/main/java/seedu/workout/Workout.java +++ b/src/main/java/seedu/workout/Workout.java @@ -1,14 +1,16 @@ package seedu.workout; +import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.Date; public class Workout { - private Date date; + private String date; private ArrayList workoutExercises; public Workout(Date date) { - this.date = date; + SimpleDateFormat dateFormat = new SimpleDateFormat("MM/dd/yyyy"); + this.date = dateFormat.format(date); workoutExercises = new ArrayList<>(); } @@ -17,11 +19,11 @@ public void addExercise(Exercise exercise) { System.out.println("Added " + exercise); } - public Date getDate() { + public String getDate() { return date; } - public void setDate(Date date) { + public void setDate(String date) { this.date = date; } } diff --git a/src/main/java/seedu/workout/WorkoutList.java b/src/main/java/seedu/workout/WorkoutList.java index 395b78fe9e..bf3e22695c 100644 --- a/src/main/java/seedu/workout/WorkoutList.java +++ b/src/main/java/seedu/workout/WorkoutList.java @@ -22,10 +22,9 @@ public void setCurrentWorkoutIndex(int currentWorkoutIndex) { this.currentWorkoutIndex = currentWorkoutIndex; } - public void removeWorkout(Date date) { + public void removeWorkout(String date) { for (Workout workout : workoutList) { if (workout.getDate().equals(date)) { - workoutList.remove(workout); System.out.println("Workout deleted successfully."); return; diff --git a/src/test/java/seedu/workout/WorkoutTest.java b/src/test/java/seedu/workout/WorkoutTest.java index 51f608a9b4..0d2ba9a085 100644 --- a/src/test/java/seedu/workout/WorkoutTest.java +++ b/src/test/java/seedu/workout/WorkoutTest.java @@ -17,7 +17,7 @@ public void testGetDateAndSetDate() throws Exception { String newDatestring = "06/03/24"; Date newDate = dateFormat.parse(newDatestring); - workout.setDate(newDate); + workout.setDate(String.valueOf(newDate)); assertEquals(newDate, workout.getDate()); } } diff --git a/text-ui-test/EXPECTED.TXT b/text-ui-test/EXPECTED.TXT index 5253660b88..570a09942a 100644 --- a/text-ui-test/EXPECTED.TXT +++ b/text-ui-test/EXPECTED.TXT @@ -8,7 +8,7 @@ Invalid date format. Please enter the date in the format dd/mm/yy. Incorrect command given! Great job completing your workout! Here are the list of dates for your workout: -Sat Nov 11 00:00:00 CST 2023 +11/11/2023 Start a workout first! Great job completing your workout! Started new workout. @@ -17,4 +17,6 @@ Added Pullups +10kg 10 10 10 Great job completing your workout! Workout deleted successfully. No workout found with the specified date. +Here are the list of dates for your workout: +11/12/2023 Thank you and see you next time diff --git a/text-ui-test/input.txt b/text-ui-test/input.txt index 504560b7e6..15358b33af 100644 --- a/text-ui-test/input.txt +++ b/text-ui-test/input.txt @@ -11,4 +11,5 @@ /end /delete 11/11/23 /delete 11/12/23 +/list /exit \ No newline at end of file From 9b2c4e2261076f647e1ef77ea4d692bb84c5ab22 Mon Sep 17 00:00:00 2001 From: ZIZI-czh Date: Thu, 16 Mar 2023 15:23:12 +0800 Subject: [PATCH 024/152] clean the code --- src/main/java/seedu/commands/DeleteCommand.java | 3 --- src/main/java/seedu/workout/WorkoutList.java | 2 +- 2 files changed, 1 insertion(+), 4 deletions(-) diff --git a/src/main/java/seedu/commands/DeleteCommand.java b/src/main/java/seedu/commands/DeleteCommand.java index 8a47be9d2d..4cd9428469 100644 --- a/src/main/java/seedu/commands/DeleteCommand.java +++ b/src/main/java/seedu/commands/DeleteCommand.java @@ -1,8 +1,5 @@ package seedu.commands; -import java.text.SimpleDateFormat; -import java.util.Date; - public class DeleteCommand extends Command { String workoutToDeleteDate; public DeleteCommand(String workoutToDeleteDate) { diff --git a/src/main/java/seedu/workout/WorkoutList.java b/src/main/java/seedu/workout/WorkoutList.java index bf3e22695c..7aaf220eab 100644 --- a/src/main/java/seedu/workout/WorkoutList.java +++ b/src/main/java/seedu/workout/WorkoutList.java @@ -1,7 +1,7 @@ package seedu.workout; import java.util.ArrayList; -import java.util.Date; + public class WorkoutList { public static final int NO_CURRENT_WORKOUT = -1; From fc7734f334a638bbe61fc8b7b96d5eebaf54a9ac Mon Sep 17 00:00:00 2001 From: ZIZI-czh Date: Sat, 18 Mar 2023 19:19:22 +0800 Subject: [PATCH 025/152] change in gitirnore fileto disable textUItest file --- .gitignore | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.gitignore b/.gitignore index 2873e189e1..bc45d77582 100644 --- a/.gitignore +++ b/.gitignore @@ -15,3 +15,5 @@ bin/ /text-ui-test/ACTUAL.TXT text-ui-test/EXPECTED-UNIX.TXT + +textUitest/ From 636d43556c00aa81b854f35992c087bf2ec68046 Mon Sep 17 00:00:00 2001 From: ZIZI-czh Date: Sat, 18 Mar 2023 19:45:45 +0800 Subject: [PATCH 026/152] change back to the original date format --- src/main/java/seedu/commands/DeleteCommand.java | 5 ++--- src/main/java/seedu/parser/Parser.java | 4 +--- src/main/java/seedu/workout/Workout.java | 13 +++++++------ src/main/java/seedu/workout/WorkoutList.java | 2 +- src/test/java/seedu/workout/WorkoutTest.java | 2 +- 5 files changed, 12 insertions(+), 14 deletions(-) diff --git a/src/main/java/seedu/commands/DeleteCommand.java b/src/main/java/seedu/commands/DeleteCommand.java index 8a47be9d2d..9cc76a8089 100644 --- a/src/main/java/seedu/commands/DeleteCommand.java +++ b/src/main/java/seedu/commands/DeleteCommand.java @@ -1,11 +1,10 @@ package seedu.commands; -import java.text.SimpleDateFormat; import java.util.Date; public class DeleteCommand extends Command { - String workoutToDeleteDate; - public DeleteCommand(String workoutToDeleteDate) { + Date workoutToDeleteDate; + public DeleteCommand(Date workoutToDeleteDate) { this.workoutToDeleteDate = workoutToDeleteDate; } diff --git a/src/main/java/seedu/parser/Parser.java b/src/main/java/seedu/parser/Parser.java index 25b0dc104a..f185e34165 100644 --- a/src/main/java/seedu/parser/Parser.java +++ b/src/main/java/seedu/parser/Parser.java @@ -90,9 +90,7 @@ private Command processDelete(String arguments) { return new IncorrectCommand(); } - SimpleDateFormat dateFormat = new SimpleDateFormat("MM/dd/yyyy"); - String formatDate = dateFormat.format(date); - return new DeleteCommand(formatDate); + return new DeleteCommand(date); } } diff --git a/src/main/java/seedu/workout/Workout.java b/src/main/java/seedu/workout/Workout.java index 07a6ef554d..1d2fffb5ce 100644 --- a/src/main/java/seedu/workout/Workout.java +++ b/src/main/java/seedu/workout/Workout.java @@ -1,16 +1,17 @@ package seedu.workout; -import java.text.SimpleDateFormat; + import java.util.ArrayList; import java.util.Date; public class Workout { - private String date; + private Date date; private ArrayList workoutExercises; public Workout(Date date) { - SimpleDateFormat dateFormat = new SimpleDateFormat("MM/dd/yyyy"); - this.date = dateFormat.format(date); + //SimpleDateFormat dateFormat = new SimpleDateFormat("MM/dd/yyyy"); + //this.date = dateFormat.format(date); + this.date = date; workoutExercises = new ArrayList<>(); } @@ -19,11 +20,11 @@ public void addExercise(Exercise exercise) { System.out.println("Added " + exercise); } - public String getDate() { + public Date getDate() { return date; } - public void setDate(String date) { + public void setDate(Date date) { this.date = date; } } diff --git a/src/main/java/seedu/workout/WorkoutList.java b/src/main/java/seedu/workout/WorkoutList.java index bf3e22695c..e1fc0b98c0 100644 --- a/src/main/java/seedu/workout/WorkoutList.java +++ b/src/main/java/seedu/workout/WorkoutList.java @@ -22,7 +22,7 @@ public void setCurrentWorkoutIndex(int currentWorkoutIndex) { this.currentWorkoutIndex = currentWorkoutIndex; } - public void removeWorkout(String date) { + public void removeWorkout(Date date) { for (Workout workout : workoutList) { if (workout.getDate().equals(date)) { workoutList.remove(workout); diff --git a/src/test/java/seedu/workout/WorkoutTest.java b/src/test/java/seedu/workout/WorkoutTest.java index 0d2ba9a085..51f608a9b4 100644 --- a/src/test/java/seedu/workout/WorkoutTest.java +++ b/src/test/java/seedu/workout/WorkoutTest.java @@ -17,7 +17,7 @@ public void testGetDateAndSetDate() throws Exception { String newDatestring = "06/03/24"; Date newDate = dateFormat.parse(newDatestring); - workout.setDate(String.valueOf(newDate)); + workout.setDate(newDate); assertEquals(newDate, workout.getDate()); } } From 9208070f199acb2e896aab51e0527d0f4793b1db Mon Sep 17 00:00:00 2001 From: ZIZI-czh Date: Sat, 18 Mar 2023 19:55:13 +0800 Subject: [PATCH 027/152] Correct the gitignore --- .gitignore | 2 +- text-ui-test/EXPECTED.TXT | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.gitignore b/.gitignore index bc45d77582..97de7dd1fc 100644 --- a/.gitignore +++ b/.gitignore @@ -16,4 +16,4 @@ bin/ /text-ui-test/ACTUAL.TXT text-ui-test/EXPECTED-UNIX.TXT -textUitest/ +text-ui-test/ diff --git a/text-ui-test/EXPECTED.TXT b/text-ui-test/EXPECTED.TXT index 570a09942a..a7a2706aef 100644 --- a/text-ui-test/EXPECTED.TXT +++ b/text-ui-test/EXPECTED.TXT @@ -8,7 +8,7 @@ Invalid date format. Please enter the date in the format dd/mm/yy. Incorrect command given! Great job completing your workout! Here are the list of dates for your workout: -11/11/2023 +Sat Nov 11 00:00:00 CST 2023 Start a workout first! Great job completing your workout! Started new workout. @@ -18,5 +18,5 @@ Great job completing your workout! Workout deleted successfully. No workout found with the specified date. Here are the list of dates for your workout: -11/12/2023 +Sun Nov 12 00:00:00 CST 2023 Thank you and see you next time From fdc3fd7b8bd2ec972639edc983e1b6afd08b8d02 Mon Sep 17 00:00:00 2001 From: ZIZI-czh Date: Sat, 18 Mar 2023 19:58:51 +0800 Subject: [PATCH 028/152] update gitignore file --- .gitignore | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.gitignore b/.gitignore index 97de7dd1fc..f6bb10028a 100644 --- a/.gitignore +++ b/.gitignore @@ -16,4 +16,6 @@ bin/ /text-ui-test/ACTUAL.TXT text-ui-test/EXPECTED-UNIX.TXT -text-ui-test/ +text-ui-test/input.txt +text-ui-test/runtest.sh +text-ui-test/runtest.bat From 408a27dbe658a125b301cd52d45fd25b949aee16 Mon Sep 17 00:00:00 2001 From: ZIZI-czh Date: Sat, 18 Mar 2023 20:02:24 +0800 Subject: [PATCH 029/152] Edit file --- .gitignore | 1 + 1 file changed, 1 insertion(+) diff --git a/.gitignore b/.gitignore index f6bb10028a..9335decbd3 100644 --- a/.gitignore +++ b/.gitignore @@ -16,6 +16,7 @@ bin/ /text-ui-test/ACTUAL.TXT text-ui-test/EXPECTED-UNIX.TXT +text-ui-test/EXPECTED.TXT text-ui-test/input.txt text-ui-test/runtest.sh text-ui-test/runtest.bat From 8fff52b400d905ae4fdb0c5027c4ce64bb923f49 Mon Sep 17 00:00:00 2001 From: ZIZI-czh Date: Sat, 18 Mar 2023 20:04:56 +0800 Subject: [PATCH 030/152] delete the setting in gitignore --- .gitignore | 7 ------- text-ui-test/ACTUAL.TXT | 22 ++++++++++++++++++++++ 2 files changed, 22 insertions(+), 7 deletions(-) create mode 100644 text-ui-test/ACTUAL.TXT diff --git a/.gitignore b/.gitignore index 9335decbd3..5e9a7bb2b5 100644 --- a/.gitignore +++ b/.gitignore @@ -13,10 +13,3 @@ src/main/resources/docs/ *.iml bin/ -/text-ui-test/ACTUAL.TXT -text-ui-test/EXPECTED-UNIX.TXT - -text-ui-test/EXPECTED.TXT -text-ui-test/input.txt -text-ui-test/runtest.sh -text-ui-test/runtest.bat diff --git a/text-ui-test/ACTUAL.TXT b/text-ui-test/ACTUAL.TXT new file mode 100644 index 0000000000..c3533332d8 --- /dev/null +++ b/text-ui-test/ACTUAL.TXT @@ -0,0 +1,22 @@ +Let's get moving! +"/start
" to begin your workout +Started new workout. +Use add command to add exercises to your workout! +Added Bench Press 100kg 6 5 4 4 3 +Added Cable Flys 30kg 10 10 10 +Invalid date format. Please enter the date in the format dd/mm/yy. +Incorrect command given! +Great job completing your workout! +Here are the list of dates for your workout: +Sat Nov 11 00:00:00 CST 2023 +Start a workout first! +Great job completing your workout! +Started new workout. +Use add command to add exercises to your workout! +Added Pullups +10kg 10 10 10 +Great job completing your workout! +Workout deleted successfully. +No workout found with the specified date. +Here are the list of dates for your workout: +Sun Nov 12 00:00:00 CST 2023 +Thank you and see you next time From 5d6fe1697fa63f8a066f12a866f402e7ed9f6855 Mon Sep 17 00:00:00 2001 From: ZIZI-czh <77820516+ZIZI-czh@users.noreply.github.com> Date: Sat, 18 Mar 2023 20:20:25 +0800 Subject: [PATCH 031/152] update gradle.yml this is the original file - name: Perform IO redirection test (*NIX) if: runner.os == 'Linux' working-directory: ${{ github.workspace }}/text-ui-test run: ./runtest.sh - name: Perform IO redirection test (MacOS) if: always() && runner.os == 'macOS' working-directory: ${{ github.workspace }}/text-ui-test run: ./runtest.sh - name: Perform IO redirection test (Windows) if: always() && runner.os == 'Windows' working-directory: ${{ github.workspace }}/text-ui-test shell: cmd run: runtest.bat --- .github/workflows/gradle.yml | 16 +--------------- 1 file changed, 1 insertion(+), 15 deletions(-) diff --git a/.github/workflows/gradle.yml b/.github/workflows/gradle.yml index fd8c44d086..2fee075d9d 100644 --- a/.github/workflows/gradle.yml +++ b/.github/workflows/gradle.yml @@ -33,18 +33,4 @@ jobs: - name: Build and check with Gradle run: ./gradlew check - - name: Perform IO redirection test (*NIX) - if: runner.os == 'Linux' - working-directory: ${{ github.workspace }}/text-ui-test - run: ./runtest.sh - - - name: Perform IO redirection test (MacOS) - if: always() && runner.os == 'macOS' - working-directory: ${{ github.workspace }}/text-ui-test - run: ./runtest.sh - - - name: Perform IO redirection test (Windows) - if: always() && runner.os == 'Windows' - working-directory: ${{ github.workspace }}/text-ui-test - shell: cmd - run: runtest.bat \ No newline at end of file + From f26b9a9e71d363e5fe3a90ba1c6b8045d14eae5d Mon Sep 17 00:00:00 2001 From: ZIZI-czh Date: Sat, 18 Mar 2023 20:21:01 +0800 Subject: [PATCH 032/152] update --- .gitignore | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/.gitignore b/.gitignore index 5e9a7bb2b5..9335decbd3 100644 --- a/.gitignore +++ b/.gitignore @@ -13,3 +13,10 @@ src/main/resources/docs/ *.iml bin/ +/text-ui-test/ACTUAL.TXT +text-ui-test/EXPECTED-UNIX.TXT + +text-ui-test/EXPECTED.TXT +text-ui-test/input.txt +text-ui-test/runtest.sh +text-ui-test/runtest.bat From 4937d4df63f67d4f81ce0de008bf518ef0c7f710 Mon Sep 17 00:00:00 2001 From: ZIZI-czh Date: Sat, 18 Mar 2023 22:17:23 +0800 Subject: [PATCH 033/152] Add in assertion to test the function of list --- src/main/java/seedu/parser/Parser.java | 16 +++---- src/main/java/seedu/workout/WorkoutList.java | 1 + .../java/seedu/command/ListCommandTest.java | 44 +++++++++++++++++++ src/test/java/seedu/parser/ParserTest.java | 22 ++++++++++ src/test/java/seedu/workout/WorkoutTest.java | 2 + 5 files changed, 76 insertions(+), 9 deletions(-) create mode 100644 src/test/java/seedu/command/ListCommandTest.java create mode 100644 src/test/java/seedu/parser/ParserTest.java diff --git a/src/main/java/seedu/parser/Parser.java b/src/main/java/seedu/parser/Parser.java index f185e34165..6d66d20333 100644 --- a/src/main/java/seedu/parser/Parser.java +++ b/src/main/java/seedu/parser/Parser.java @@ -1,15 +1,8 @@ package seedu.parser; -import seedu.commands.ListCommand; -import seedu.commands.ExitCommand; -import seedu.commands.EndCommand; -import seedu.commands.IncorrectCommand; -import seedu.commands.StartCommand; -import seedu.commands.AddCommand; -import seedu.commands.DeleteCommand; -import seedu.commands.Command; - +import seedu.commands.*; import seedu.workout.Exercise; + import java.text.DateFormat; import java.text.ParseException; import java.text.SimpleDateFormat; @@ -43,6 +36,10 @@ public Command processCommand(String userInput) { case "/delete": return processDelete(arguments); case "/list": + if (arguments != null && !arguments.trim().isEmpty()) { + // If there are arguments after the "/list" command, return an IncorrectCommand instance + return new IncorrectCommand(); + } return new ListCommand(); case "/end": return new EndCommand(); @@ -80,6 +77,7 @@ private Command processAdd(String arguments) { } return new AddCommand(toAdd); } + private Command processDelete(String arguments) { Date date; try { diff --git a/src/main/java/seedu/workout/WorkoutList.java b/src/main/java/seedu/workout/WorkoutList.java index d5b2b7b90e..603879a170 100644 --- a/src/main/java/seedu/workout/WorkoutList.java +++ b/src/main/java/seedu/workout/WorkoutList.java @@ -48,6 +48,7 @@ public void showWorkoutList() { } catch (NullPointerException e) { System.out.println("Haven't start your workout, please enter your workout"); } + } public int getLastIndex() { diff --git a/src/test/java/seedu/command/ListCommandTest.java b/src/test/java/seedu/command/ListCommandTest.java new file mode 100644 index 0000000000..0899eb1964 --- /dev/null +++ b/src/test/java/seedu/command/ListCommandTest.java @@ -0,0 +1,44 @@ +package seedu.command; + +import org.junit.jupiter.api.Test; +import seedu.commands.IncorrectCommand; +import seedu.commands.StartCommand; +import seedu.workout.Workout; +import seedu.workout.WorkoutList; + +import java.io.ByteArrayOutputStream; +import java.io.PrintStream; +import java.text.DateFormat; +import java.text.ParseException; +import java.text.SimpleDateFormat; +import java.util.Date; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +public class ListCommandTest { + + //@@ author ZIZI-czh + @Test + public void testShowWorkoutList() throws ParseException { + // Create a new instance of the class that contains the showWorkoutList() method + // and add some sample data to the workoutList + + SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd"); + Date date = format.parse("18/03/2023"); + + + // Redirect the console output to a stream for testing + ByteArrayOutputStream outContent = new ByteArrayOutputStream(); + System.setOut(new PrintStream(outContent)); + + + // Call the method to be tested + WorkoutList testList = new WorkoutList(); + testList.addWorkout(new Workout(date)); + testList.showWorkoutList(); + + // Assert that the console output matches the expected output + assertEquals("Here are the list of dates for your workout: \nSat Nov 11 00:00:00 CST 2023", outContent.toString()); + + } +} diff --git a/src/test/java/seedu/parser/ParserTest.java b/src/test/java/seedu/parser/ParserTest.java new file mode 100644 index 0000000000..72f184225b --- /dev/null +++ b/src/test/java/seedu/parser/ParserTest.java @@ -0,0 +1,22 @@ +package seedu.parser; + +import org.junit.jupiter.api.Test; +import seedu.commands.Command; +import seedu.commands.IncorrectCommand; +import seedu.commands.ListCommand; + +import static org.junit.jupiter.api.Assertions.assertFalse; +import static org.junit.jupiter.api.Assertions.assertTrue; + +public class ParserTest { + + //@@ author ZIZI-czh + @Test + public void testProcessCommandIncorrectArguments() { + String userInput = "/list 556"; + Parser testList = new Parser(); + Command result = testList.processCommand(userInput); + assertTrue(result instanceof IncorrectCommand); + } + +} diff --git a/src/test/java/seedu/workout/WorkoutTest.java b/src/test/java/seedu/workout/WorkoutTest.java index 51f608a9b4..67562f18af 100644 --- a/src/test/java/seedu/workout/WorkoutTest.java +++ b/src/test/java/seedu/workout/WorkoutTest.java @@ -20,4 +20,6 @@ public void testGetDateAndSetDate() throws Exception { workout.setDate(newDate); assertEquals(newDate, workout.getDate()); } + + } From 158d29acd42b9b2ce3246a4209823c22b06dcfcd Mon Sep 17 00:00:00 2001 From: ZIZI-czh Date: Sat, 18 Mar 2023 22:30:20 +0800 Subject: [PATCH 034/152] codeStyle --- src/main/java/seedu/parser/Parser.java | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/src/main/java/seedu/parser/Parser.java b/src/main/java/seedu/parser/Parser.java index 6d66d20333..fc71ceb44d 100644 --- a/src/main/java/seedu/parser/Parser.java +++ b/src/main/java/seedu/parser/Parser.java @@ -1,6 +1,13 @@ package seedu.parser; -import seedu.commands.*; +import seedu.commands.Command; +import seedu.commands.ListCommand; +import seedu.commands.StartCommand; +import seedu.commands.AddCommand; +import seedu.commands.DeleteCommand; +import seedu.commands.ExitCommand; +import seedu.commands.EndCommand; +import seedu.commands.IncorrectCommand; import seedu.workout.Exercise; import java.text.DateFormat; @@ -41,6 +48,7 @@ public Command processCommand(String userInput) { return new IncorrectCommand(); } return new ListCommand(); + case "/end": return new EndCommand(); case "/exit": From de978fc449403617ba36c70305df2070e8380fbd Mon Sep 17 00:00:00 2001 From: ZIZI-czh Date: Sat, 18 Mar 2023 22:33:38 +0800 Subject: [PATCH 035/152] codeStyle for test files --- src/test/java/seedu/command/ListCommandTest.java | 6 ++---- src/test/java/seedu/parser/ParserTest.java | 3 --- 2 files changed, 2 insertions(+), 7 deletions(-) diff --git a/src/test/java/seedu/command/ListCommandTest.java b/src/test/java/seedu/command/ListCommandTest.java index 0899eb1964..d59cde2e4e 100644 --- a/src/test/java/seedu/command/ListCommandTest.java +++ b/src/test/java/seedu/command/ListCommandTest.java @@ -1,14 +1,11 @@ package seedu.command; import org.junit.jupiter.api.Test; -import seedu.commands.IncorrectCommand; -import seedu.commands.StartCommand; import seedu.workout.Workout; import seedu.workout.WorkoutList; import java.io.ByteArrayOutputStream; import java.io.PrintStream; -import java.text.DateFormat; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Date; @@ -38,7 +35,8 @@ public void testShowWorkoutList() throws ParseException { testList.showWorkoutList(); // Assert that the console output matches the expected output - assertEquals("Here are the list of dates for your workout: \nSat Nov 11 00:00:00 CST 2023", outContent.toString()); + assertEquals("Here are the list of dates for your workout: \nSat Nov 11 00:00:00 CST 2023", + outContent.toString()); } } diff --git a/src/test/java/seedu/parser/ParserTest.java b/src/test/java/seedu/parser/ParserTest.java index 72f184225b..02bdb7bbcb 100644 --- a/src/test/java/seedu/parser/ParserTest.java +++ b/src/test/java/seedu/parser/ParserTest.java @@ -3,9 +3,6 @@ import org.junit.jupiter.api.Test; import seedu.commands.Command; import seedu.commands.IncorrectCommand; -import seedu.commands.ListCommand; - -import static org.junit.jupiter.api.Assertions.assertFalse; import static org.junit.jupiter.api.Assertions.assertTrue; public class ParserTest { From 68737dc45adf1d021dbe62f40bea482ad1ab55ac Mon Sep 17 00:00:00 2001 From: ZIZI-czh Date: Sat, 18 Mar 2023 22:38:16 +0800 Subject: [PATCH 036/152] Change date format --- src/test/java/seedu/command/ListCommandTest.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/java/seedu/command/ListCommandTest.java b/src/test/java/seedu/command/ListCommandTest.java index d59cde2e4e..318499ea1b 100644 --- a/src/test/java/seedu/command/ListCommandTest.java +++ b/src/test/java/seedu/command/ListCommandTest.java @@ -21,7 +21,7 @@ public void testShowWorkoutList() throws ParseException { // and add some sample data to the workoutList SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd"); - Date date = format.parse("18/03/2023"); + Date date = format.parse("06/03/23"); // Redirect the console output to a stream for testing From 1245a1841ddfbafb5d2a036386fa42db3fec1496 Mon Sep 17 00:00:00 2001 From: ZIZI-czh Date: Sat, 18 Mar 2023 22:40:24 +0800 Subject: [PATCH 037/152] uodate date format --- src/test/java/seedu/command/ListCommandTest.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/java/seedu/command/ListCommandTest.java b/src/test/java/seedu/command/ListCommandTest.java index 318499ea1b..623d2cb21e 100644 --- a/src/test/java/seedu/command/ListCommandTest.java +++ b/src/test/java/seedu/command/ListCommandTest.java @@ -20,7 +20,7 @@ public void testShowWorkoutList() throws ParseException { // Create a new instance of the class that contains the showWorkoutList() method // and add some sample data to the workoutList - SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd"); + SimpleDateFormat format = new SimpleDateFormat("dd/MM/yy"); Date date = format.parse("06/03/23"); From bb92abe2720a94743bd6832c84064a2f8279767f Mon Sep 17 00:00:00 2001 From: ZIZI-czh Date: Sat, 18 Mar 2023 22:43:23 +0800 Subject: [PATCH 038/152] change the input data --- src/test/java/seedu/command/ListCommandTest.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/java/seedu/command/ListCommandTest.java b/src/test/java/seedu/command/ListCommandTest.java index 623d2cb21e..43b87eb35f 100644 --- a/src/test/java/seedu/command/ListCommandTest.java +++ b/src/test/java/seedu/command/ListCommandTest.java @@ -21,7 +21,7 @@ public void testShowWorkoutList() throws ParseException { // and add some sample data to the workoutList SimpleDateFormat format = new SimpleDateFormat("dd/MM/yy"); - Date date = format.parse("06/03/23"); + Date date = format.parse("11/11/23"); // Redirect the console output to a stream for testing From c6e68decfbda715bfa362a15954e15b2791cef2c Mon Sep 17 00:00:00 2001 From: ZIZI-czh Date: Sat, 18 Mar 2023 22:46:57 +0800 Subject: [PATCH 039/152] time zone --- src/test/java/seedu/command/ListCommandTest.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/java/seedu/command/ListCommandTest.java b/src/test/java/seedu/command/ListCommandTest.java index 43b87eb35f..5562120dbc 100644 --- a/src/test/java/seedu/command/ListCommandTest.java +++ b/src/test/java/seedu/command/ListCommandTest.java @@ -35,7 +35,7 @@ public void testShowWorkoutList() throws ParseException { testList.showWorkoutList(); // Assert that the console output matches the expected output - assertEquals("Here are the list of dates for your workout: \nSat Nov 11 00:00:00 CST 2023", + assertEquals("Here are the list of dates for your workout: \nSat Nov 11 00:00:00 UST 2023", outContent.toString()); } From 168e961cd449bce0c613a77a56dde104268414f6 Mon Sep 17 00:00:00 2001 From: ZIZI-czh Date: Sat, 18 Mar 2023 23:02:07 +0800 Subject: [PATCH 040/152] change the format for date to avoid time zone issue --- src/main/java/seedu/workout/WorkoutList.java | 5 ++++- src/test/java/seedu/command/ListCommandTest.java | 2 +- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/src/main/java/seedu/workout/WorkoutList.java b/src/main/java/seedu/workout/WorkoutList.java index 603879a170..1180f3f6f8 100644 --- a/src/main/java/seedu/workout/WorkoutList.java +++ b/src/main/java/seedu/workout/WorkoutList.java @@ -2,6 +2,7 @@ import java.util.ArrayList; import java.util.Date; +import java.text.SimpleDateFormat; public class WorkoutList { @@ -39,7 +40,9 @@ public void showWorkoutList() { if (!workoutList.isEmpty()) { System.out.println("Here are the list of dates for your workout: "); for (Workout workout : workoutList) { - System.out.println(workout.getDate()); + SimpleDateFormat dateFormat = new SimpleDateFormat("dd-MM-yy"); + String formattedDate = dateFormat.format(workout.getDate()); + System.out.println(formattedDate); } } else { System.out.println("Haven't start your workout, please enter your workout"); diff --git a/src/test/java/seedu/command/ListCommandTest.java b/src/test/java/seedu/command/ListCommandTest.java index 5562120dbc..941637bfd3 100644 --- a/src/test/java/seedu/command/ListCommandTest.java +++ b/src/test/java/seedu/command/ListCommandTest.java @@ -35,7 +35,7 @@ public void testShowWorkoutList() throws ParseException { testList.showWorkoutList(); // Assert that the console output matches the expected output - assertEquals("Here are the list of dates for your workout: \nSat Nov 11 00:00:00 UST 2023", + assertEquals("Here are the list of dates for your workout: \n11-11-23", outContent.toString()); } From e6bc56c45078cb6553e88f57c4e962fdc19dab36 Mon Sep 17 00:00:00 2001 From: ZIZI-czh Date: Sat, 18 Mar 2023 23:14:45 +0800 Subject: [PATCH 041/152] solve the bug --- src/test/java/seedu/command/ListCommandTest.java | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/test/java/seedu/command/ListCommandTest.java b/src/test/java/seedu/command/ListCommandTest.java index 941637bfd3..cdfa589ff1 100644 --- a/src/test/java/seedu/command/ListCommandTest.java +++ b/src/test/java/seedu/command/ListCommandTest.java @@ -8,7 +8,7 @@ import java.io.PrintStream; import java.text.ParseException; import java.text.SimpleDateFormat; -import java.util.Date; + import static org.junit.jupiter.api.Assertions.assertEquals; @@ -21,7 +21,6 @@ public void testShowWorkoutList() throws ParseException { // and add some sample data to the workoutList SimpleDateFormat format = new SimpleDateFormat("dd/MM/yy"); - Date date = format.parse("11/11/23"); // Redirect the console output to a stream for testing @@ -31,11 +30,12 @@ public void testShowWorkoutList() throws ParseException { // Call the method to be tested WorkoutList testList = new WorkoutList(); - testList.addWorkout(new Workout(date)); + testList.addWorkout(new Workout(format.parse("11/11/23"))); + testList.addWorkout(new Workout(format.parse("11/10/23"))); testList.showWorkoutList(); // Assert that the console output matches the expected output - assertEquals("Here are the list of dates for your workout: \n11-11-23", + assertEquals("Here are the list of dates for your workout: \n11-11-23\n11-10-23", outContent.toString()); } From 819ab26a8fb04eace1c2a861c7cd66eac84708ca Mon Sep 17 00:00:00 2001 From: ZIZI-czh Date: Sat, 18 Mar 2023 23:30:15 +0800 Subject: [PATCH 042/152] debug --- src/test/java/seedu/command/ListCommandTest.java | 4 ++-- text-ui-test/ACTUAL.TXT | 10 +++++++--- text-ui-test/input.txt | 1 + 3 files changed, 10 insertions(+), 5 deletions(-) diff --git a/src/test/java/seedu/command/ListCommandTest.java b/src/test/java/seedu/command/ListCommandTest.java index cdfa589ff1..550d89477d 100644 --- a/src/test/java/seedu/command/ListCommandTest.java +++ b/src/test/java/seedu/command/ListCommandTest.java @@ -35,8 +35,8 @@ public void testShowWorkoutList() throws ParseException { testList.showWorkoutList(); // Assert that the console output matches the expected output - assertEquals("Here are the list of dates for your workout: \n11-11-23\n11-10-23", - outContent.toString()); + assertEquals("Here are the list of dates for your workout: \n" + + "11-11-23\n" + "11-10-23\n", outContent.toString()); } } diff --git a/text-ui-test/ACTUAL.TXT b/text-ui-test/ACTUAL.TXT index c3533332d8..391a39dfea 100644 --- a/text-ui-test/ACTUAL.TXT +++ b/text-ui-test/ACTUAL.TXT @@ -7,9 +7,12 @@ Added Cable Flys 30kg 10 10 10 Invalid date format. Please enter the date in the format dd/mm/yy. Incorrect command given! Great job completing your workout! +Started new workout. +Use add command to add exercises to your workout! Here are the list of dates for your workout: -Sat Nov 11 00:00:00 CST 2023 -Start a workout first! +11-11-23 +11-10-23 +Added tricep extensions 25kg 8 7 6 Great job completing your workout! Started new workout. Use add command to add exercises to your workout! @@ -18,5 +21,6 @@ Great job completing your workout! Workout deleted successfully. No workout found with the specified date. Here are the list of dates for your workout: -Sun Nov 12 00:00:00 CST 2023 +11-10-23 +12-11-23 Thank you and see you next time diff --git a/text-ui-test/input.txt b/text-ui-test/input.txt index 15358b33af..65fe834a18 100644 --- a/text-ui-test/input.txt +++ b/text-ui-test/input.txt @@ -3,6 +3,7 @@ /add Cable Flys /weight 30kg /rps 10 10 10 /start /end +/start 11/10/23 /list /add tricep extensions /weight 25kg /rps 8 7 6 /end From c3af244d57020298642435ce8d0384b6e6ffaa46 Mon Sep 17 00:00:00 2001 From: ZIZI-czh Date: Sat, 18 Mar 2023 23:45:21 +0800 Subject: [PATCH 043/152] remove space --- src/test/java/seedu/command/ListCommandTest.java | 7 ++++--- text-ui-test/ACTUAL.TXT | 2 +- text-ui-test/EXPECTED.TXT | 6 ++++-- 3 files changed, 9 insertions(+), 6 deletions(-) diff --git a/src/test/java/seedu/command/ListCommandTest.java b/src/test/java/seedu/command/ListCommandTest.java index 550d89477d..e3a3de537d 100644 --- a/src/test/java/seedu/command/ListCommandTest.java +++ b/src/test/java/seedu/command/ListCommandTest.java @@ -9,7 +9,6 @@ import java.text.ParseException; import java.text.SimpleDateFormat; - import static org.junit.jupiter.api.Assertions.assertEquals; public class ListCommandTest { @@ -35,8 +34,10 @@ public void testShowWorkoutList() throws ParseException { testList.showWorkoutList(); // Assert that the console output matches the expected output - assertEquals("Here are the list of dates for your workout: \n" + - "11-11-23\n" + "11-10-23\n", outContent.toString()); + assertEquals("Here are the list of dates for your workout:\n" + + "11-11-23\n" + + "11-10-23\n", + outContent.toString()); } } diff --git a/text-ui-test/ACTUAL.TXT b/text-ui-test/ACTUAL.TXT index 391a39dfea..2f4d760251 100644 --- a/text-ui-test/ACTUAL.TXT +++ b/text-ui-test/ACTUAL.TXT @@ -9,7 +9,7 @@ Incorrect command given! Great job completing your workout! Started new workout. Use add command to add exercises to your workout! -Here are the list of dates for your workout: +Here are the list of dates for your workout: 11-11-23 11-10-23 Added tricep extensions 25kg 8 7 6 diff --git a/text-ui-test/EXPECTED.TXT b/text-ui-test/EXPECTED.TXT index a7a2706aef..dc5eba09f7 100644 --- a/text-ui-test/EXPECTED.TXT +++ b/text-ui-test/EXPECTED.TXT @@ -8,7 +8,8 @@ Invalid date format. Please enter the date in the format dd/mm/yy. Incorrect command given! Great job completing your workout! Here are the list of dates for your workout: -Sat Nov 11 00:00:00 CST 2023 +11-11-23 +11-10-23 Start a workout first! Great job completing your workout! Started new workout. @@ -18,5 +19,6 @@ Great job completing your workout! Workout deleted successfully. No workout found with the specified date. Here are the list of dates for your workout: -Sun Nov 12 00:00:00 CST 2023 +11-10-23 +12-11-23 Thank you and see you next time From de5c9cb4ffbbf53f551ed5cd796125e3d8cf4ba3 Mon Sep 17 00:00:00 2001 From: guillaume-grn Date: Sun, 19 Mar 2023 12:05:13 +0800 Subject: [PATCH 044/152] Add RemoveWorkout test --- .../java/seedu/workout/WorkoutListTest.java | 40 +++++++++++++++++++ 1 file changed, 40 insertions(+) create mode 100644 src/test/java/seedu/workout/WorkoutListTest.java diff --git a/src/test/java/seedu/workout/WorkoutListTest.java b/src/test/java/seedu/workout/WorkoutListTest.java new file mode 100644 index 0000000000..084c252b47 --- /dev/null +++ b/src/test/java/seedu/workout/WorkoutListTest.java @@ -0,0 +1,40 @@ +package seedu.workout; + +import org.junit.jupiter.api.Test; +import java.text.SimpleDateFormat; +import java.util.Date; +import static org.junit.jupiter.api.Assertions.assertEquals; + +public class WorkoutListTest { + public SimpleDateFormat dateFormat = new SimpleDateFormat("dd/MM/yy"); + + //@@ author guillaume-grn + @Test + public void testRemoveWorkout() throws Exception { + WorkoutList workoutList = new WorkoutList(); + String stringDate1 = "01/11/22"; + String stringDate2 = "02/11/22"; + Date date1 = dateFormat.parse(stringDate1); + Date date2 = dateFormat.parse(stringDate2); + Workout workout1 = new Workout(date1); + Workout workout2 = new Workout(date2); + workoutList.addWorkout(workout1); + workoutList.addWorkout(workout2); + + // Check that both workouts are in the list + assertEquals(2, workoutList.workoutList.size()); + + // Remove workout1 from the list + workoutList.removeWorkout(date1); + + // Check that workout1 was removed and workout2 is still in the list + assertEquals(1, workoutList.workoutList.size()); + assertEquals(date2, workoutList.workoutList.get(0).getDate()); + + // Try to remove workout1 again (should not be in the list) + workoutList.removeWorkout(date1); + + // Check that workout1 was not removed and the list size is still 1 + assertEquals(1, workoutList.workoutList.size()); + } +} From 8baaccfd5e5ed5160657c171a5311610dc9d41d7 Mon Sep 17 00:00:00 2001 From: calebcjl Date: Sun, 19 Mar 2023 18:34:52 +0800 Subject: [PATCH 045/152] Add AddCommandTest --- src/main/java/seedu/workout/Workout.java | 3 ++ .../java/seedu/commands/AddCommandTest.java | 35 +++++++++++++++++++ 2 files changed, 38 insertions(+) create mode 100644 src/test/java/seedu/commands/AddCommandTest.java diff --git a/src/main/java/seedu/workout/Workout.java b/src/main/java/seedu/workout/Workout.java index 1d2fffb5ce..5103a57d68 100644 --- a/src/main/java/seedu/workout/Workout.java +++ b/src/main/java/seedu/workout/Workout.java @@ -27,4 +27,7 @@ public Date getDate() { public void setDate(Date date) { this.date = date; } + public ArrayList getExercises() { + return workoutExercises; + } } diff --git a/src/test/java/seedu/commands/AddCommandTest.java b/src/test/java/seedu/commands/AddCommandTest.java new file mode 100644 index 0000000000..4af3cc4162 --- /dev/null +++ b/src/test/java/seedu/commands/AddCommandTest.java @@ -0,0 +1,35 @@ +package seedu.commands; + +import org.junit.jupiter.api.Test; +import seedu.workout.Exercise; +import seedu.workout.Workout; + +import java.text.ParseException; +import java.text.SimpleDateFormat; +import java.util.Date; + +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.fail; + + +public class AddCommandTest { + private static final SimpleDateFormat dateFormat = new SimpleDateFormat("dd/MM/yy"); + private static final Date date; + + static { + try { + date = dateFormat.parse("10/11/22"); + } catch (ParseException e) { + throw new RuntimeException(e); + } + } + + private static final Workout currentWorkout = new Workout(date); + + @Test + public void testAddCommand() { + Exercise toAdd = new Exercise("Bench Press", "100kg", "5 5 4 3"); + currentWorkout.addExercise(toAdd); + assertEquals(toAdd, currentWorkout.getExercises().get(0)); + } +} From 5751bf6b67fd8dc3ff0d2a44569f6b799621162d Mon Sep 17 00:00:00 2001 From: ZIZI-czh Date: Sun, 19 Mar 2023 20:23:52 +0800 Subject: [PATCH 046/152] update listCommandTest --- src/main/java/seedu/parser/Parser.java | 12 +----------- src/test/java/seedu/command/ListCommandTest.java | 2 +- 2 files changed, 2 insertions(+), 12 deletions(-) diff --git a/src/main/java/seedu/parser/Parser.java b/src/main/java/seedu/parser/Parser.java index ddbd9d8972..77bedb847c 100644 --- a/src/main/java/seedu/parser/Parser.java +++ b/src/main/java/seedu/parser/Parser.java @@ -1,6 +1,6 @@ package seedu.parser; -<<<<<<< HEAD + import seedu.commands.Command; import seedu.commands.ListCommand; import seedu.commands.StartCommand; @@ -9,17 +9,7 @@ import seedu.commands.ExitCommand; import seedu.commands.EndCommand; import seedu.commands.IncorrectCommand; -======= -import seedu.commands.AddCommand; -import seedu.commands.Command; -import seedu.commands.DeleteCommand; -import seedu.commands.EndCommand; -import seedu.commands.ExitCommand; -import seedu.commands.IncorrectCommand; -import seedu.commands.ListCommand; -import seedu.commands.StartCommand; ->>>>>>> 3e0b96c67f0dda7fe79e8721c439fec7fc5cba86 import seedu.workout.Exercise; import java.text.DateFormat; diff --git a/src/test/java/seedu/command/ListCommandTest.java b/src/test/java/seedu/command/ListCommandTest.java index e3a3de537d..19eb87c918 100644 --- a/src/test/java/seedu/command/ListCommandTest.java +++ b/src/test/java/seedu/command/ListCommandTest.java @@ -34,7 +34,7 @@ public void testShowWorkoutList() throws ParseException { testList.showWorkoutList(); // Assert that the console output matches the expected output - assertEquals("Here are the list of dates for your workout:\n" + + assertEquals("Here are the list of dates for your workout: \n" + "11-11-23\n" + "11-10-23\n", outContent.toString()); From 4b01c057075b1af1cec13880901fb63f4a182de6 Mon Sep 17 00:00:00 2001 From: ZIZI-czh Date: Sun, 19 Mar 2023 21:34:07 +0800 Subject: [PATCH 047/152] solve pull request problem --- src/test/java/seedu/command/ListCommandTest.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/test/java/seedu/command/ListCommandTest.java b/src/test/java/seedu/command/ListCommandTest.java index 19eb87c918..578808349b 100644 --- a/src/test/java/seedu/command/ListCommandTest.java +++ b/src/test/java/seedu/command/ListCommandTest.java @@ -34,9 +34,9 @@ public void testShowWorkoutList() throws ParseException { testList.showWorkoutList(); // Assert that the console output matches the expected output - assertEquals("Here are the list of dates for your workout: \n" + - "11-11-23\n" + - "11-10-23\n", + assertEquals("Here are the list of dates for your workout: " + System.lineSeparator() + + "11-11-23" + System.lineSeparator() + + "11-10-23" + System.lineSeparator(), outContent.toString()); } From c2349bb605dfd11a1c99d7f1fd545fa056256313 Mon Sep 17 00:00:00 2001 From: ZIZI-czh Date: Sun, 19 Mar 2023 21:47:27 +0800 Subject: [PATCH 048/152] Add in comments for all the methods --- src/main/java/seedu/commands/DeleteCommand.java | 1 + src/main/java/seedu/commands/ListCommand.java | 9 ++++++++- src/main/java/seedu/workout/WorkoutList.java | 6 ++++++ src/test/java/seedu/parser/ParserTest.java | 5 +++++ 4 files changed, 20 insertions(+), 1 deletion(-) diff --git a/src/main/java/seedu/commands/DeleteCommand.java b/src/main/java/seedu/commands/DeleteCommand.java index 9e6994379b..be438d997f 100644 --- a/src/main/java/seedu/commands/DeleteCommand.java +++ b/src/main/java/seedu/commands/DeleteCommand.java @@ -2,6 +2,7 @@ import java.util.Date; + public class DeleteCommand extends Command { Date workoutToDeleteDate; public DeleteCommand(Date workoutToDeleteDate) { diff --git a/src/main/java/seedu/commands/ListCommand.java b/src/main/java/seedu/commands/ListCommand.java index a0072a254c..f68141f285 100644 --- a/src/main/java/seedu/commands/ListCommand.java +++ b/src/main/java/seedu/commands/ListCommand.java @@ -1,13 +1,20 @@ package seedu.commands; + +/** + * This is the class for executing the list command + */ public class ListCommand extends Command { + //@@ author ZIZI-czh public ListCommand() { } + /** - * Show the list of date of the workout + * Show the list of date of the workout by calling the method in workoutList */ + //@@ author ZIZI-czh @Override public void execute() { workoutList.showWorkoutList(); diff --git a/src/main/java/seedu/workout/WorkoutList.java b/src/main/java/seedu/workout/WorkoutList.java index 1180f3f6f8..361ca64ed2 100644 --- a/src/main/java/seedu/workout/WorkoutList.java +++ b/src/main/java/seedu/workout/WorkoutList.java @@ -35,6 +35,11 @@ public void removeWorkout(Date date) { System.out.println("No workout found with the specified date."); } + /** + * This method will loop the workout list and print out the date in this list + * + */ + //@@ author ZIZI-czh public void showWorkoutList() { try { if (!workoutList.isEmpty()) { @@ -45,6 +50,7 @@ public void showWorkoutList() { System.out.println(formattedDate); } } else { + //if there is no workout have been done System.out.println("Haven't start your workout, please enter your workout"); } diff --git a/src/test/java/seedu/parser/ParserTest.java b/src/test/java/seedu/parser/ParserTest.java index 02bdb7bbcb..bc5e16b287 100644 --- a/src/test/java/seedu/parser/ParserTest.java +++ b/src/test/java/seedu/parser/ParserTest.java @@ -7,12 +7,17 @@ public class ParserTest { + /** + * Test the input for list command + * if the user type in user /list 556 which is incorrect, then it will show error + */ //@@ author ZIZI-czh @Test public void testProcessCommandIncorrectArguments() { String userInput = "/list 556"; Parser testList = new Parser(); Command result = testList.processCommand(userInput); + //show error, if the result satisfy the condition in IncorrectCommand assertTrue(result instanceof IncorrectCommand); } From 5300eb9d481711f7cc115365c1cda11ac48186ca Mon Sep 17 00:00:00 2001 From: calebcjl Date: Mon, 20 Mar 2023 10:03:20 +0800 Subject: [PATCH 049/152] Add user guide --- docs/AboutUs.md | 13 +++---- docs/UserGuide.md | 96 ++++++++++++++++++++++++++++++++++++++--------- 2 files changed, 85 insertions(+), 24 deletions(-) diff --git a/docs/AboutUs.md b/docs/AboutUs.md index 0f072953ea..15629eb51a 100644 --- a/docs/AboutUs.md +++ b/docs/AboutUs.md @@ -1,9 +1,8 @@ # About us -Display | Name | Github Profile | Portfolio ---------|:----:|:--------------:|:---------: -![](https://via.placeholder.com/100.png?text=Photo) | John Doe | [Github](https://github.com/) | [Portfolio](docs/team/johndoe.md) -![](https://via.placeholder.com/100.png?text=Photo) | Don Joe | [Github](https://github.com/) | [Portfolio](docs/team/johndoe.md) -![](https://via.placeholder.com/100.png?text=Photo) | Ron John | [Github](https://github.com/) | [Portfolio](docs/team/johndoe.md) -![](https://via.placeholder.com/100.png?text=Photo) | John Roe | [Github](https://github.com/) | [Portfolio](docs/team/johndoe.md) -![](https://via.placeholder.com/100.png?text=Photo) | Don Roe | [Github](https://github.com/) | [Portfolio](docs/team/johndoe.md) +Display | Name | Github Profile | Portfolio +--------|:-----------------:|:-------------------------------:|:---------: +![](https://via.placeholder.com/100.png?text=Photo) | John Doe | [Github](https://github.com/) | [Portfolio](docs/team/johndoe.md) +![](https://via.placeholder.com/100.png?text=Photo) | Don Joe | [Github](https://github.com/) | [Portfolio](docs/team/johndoe.md) +![](https://via.placeholder.com/100.png?text=Photo) | Caleb Chan Jia Le | [calebcjl](https://github.com/calebcjl) | [Portfolio](docs/team/johndoe.md) +![](https://via.placeholder.com/100.png?text=Photo) | John Roe | [Github](https://github.com/) | [Portfolio](docs/team/johndoe.md) diff --git a/docs/UserGuide.md b/docs/UserGuide.md index abd9fbe891..657f444d3d 100644 --- a/docs/UserGuide.md +++ b/docs/UserGuide.md @@ -2,41 +2,103 @@ ## Introduction -{Give a product intro} +Fitness Tracker is for users who are active and trying to keep fit or hit a fitness goal. This app will be +displayed and used in CLI format. It is targeted toward those who prefer to use CLI over GUI. +The product will be able to keep track of the user's progress, daily exercises, and workouts. This helps with +planning future exercises. + +## Table of Contents +- [Introduction](#introduction) +- [Quick Start](#quick-start) +- [Features](#features) + - [Start a Workout: /start](#start-a-workout--start) + - [Add exercise: /add](#add-exercise--add) + - [End current workout: /end](#end-current-workout--end) + - [Display workout list: /list](#display-workout-list--list) + - [Delete a workout: /delete](#delete-a-workout--delete) + - [Exit app: /exit](#exit-app--exit) +- [FAQ](#faq) +- [Command Summary](#command-summary) ## Quick Start {Give steps to get started quickly} 1. Ensure that you have Java 11 or above installed. -1. Down the latest version of `Duke` from [here](http://link.to/duke). +1. Down the latest version of `Fitness Tracker` from [here](https://github.com/AY2223S2-CS2113-T14-1). -## Features +## Features -{Give detailed description of each feature} +### Start a Workout: `/start` +Starts a new workout on a specific date. -### Adding a todo: `todo` -Adds a new item to the list of todo items. +Format: `/start
` -Format: `todo n/TODO_NAME d/DEADLINE` - -* The `DEADLINE` can be in a natural language format. -* The `TODO_NAME` cannot contain punctuation. +* The date, `DD/MM/YY`, should be entered in the correct format Example of usage: -`todo n/Write the rest of the User Guide d/next week` +`/start 21/03/23` + +### Add exercise: `/add` +Adds an exercise to the current workout. This records the weight used and the number of reps per set + +Format: `/add /weight /rps ` + +Example of usage: + +`/add Bench Press /weight 100kg /rps 5 5 4 3 3` + +### End current Workout: `/end` +Ends the current workout + +Format: `/end` + +Example of usage: + +`/start 21/03/23` + +### Display workout list: `/list` +List out all the dates of completed workouts. + +Format: `/list` -`todo n/Refactor the User Guide to remove passive voice d/13/04/2020` +Example of usage: + +`/list` + +### Delete a workout: `/delete` +Delete a new workout completed on a specific date. + +Format: `/delete
` + +* The date, `DD/MM/YY`, should be entered in the correct format + +Example of usage: + +`/delete 21/03/23` + +### Exit app: `/exit` +List out all the dates of completed workouts. + +Format: `/exit` + +Example of usage: + +`/exit` ## FAQ -**Q**: How do I transfer my data to another computer? +**Q**: Does the app save my workouts when I exit it? -**A**: {your answer here} +**A**: As of v1.0, the app does not save your data. However, you can look forward to this feature in the next update! ## Command Summary -{Give a 'cheat sheet' of commands here} - -* Add todo `todo n/TODO_NAME d/DEADLINE` +* Start a workout `/start
` +* Add exercise `/add /weight /rps ` +* End current Workout `/end` +* Display workout list `/list` +* Delete a workout `/delete
` +* Exit app `/exit` +* \ No newline at end of file From ce8cc554b825ab2d26e61847e980dbf559e4e5b3 Mon Sep 17 00:00:00 2001 From: Richardtok Date: Wed, 22 Mar 2023 13:56:05 +0800 Subject: [PATCH 050/152] Upaate UI and view --- docs/AboutUs.md | 12 ++++++------ src/main/java/seedu/commands/ViewCommand.java | 16 ++++++++++++++++ src/main/java/seedu/duke/Duke.java | 5 ++++- src/main/java/seedu/parser/Parser.java | 17 ++++++++++++++++- src/main/java/seedu/ui/Ui.java | 18 ++++++++++++++++-- src/main/java/seedu/workout/WorkoutList.java | 8 ++++++++ 6 files changed, 66 insertions(+), 10 deletions(-) create mode 100644 src/main/java/seedu/commands/ViewCommand.java diff --git a/docs/AboutUs.md b/docs/AboutUs.md index 15629eb51a..3008a03780 100644 --- a/docs/AboutUs.md +++ b/docs/AboutUs.md @@ -1,8 +1,8 @@ # About us -Display | Name | Github Profile | Portfolio ---------|:-----------------:|:-------------------------------:|:---------: -![](https://via.placeholder.com/100.png?text=Photo) | John Doe | [Github](https://github.com/) | [Portfolio](docs/team/johndoe.md) -![](https://via.placeholder.com/100.png?text=Photo) | Don Joe | [Github](https://github.com/) | [Portfolio](docs/team/johndoe.md) -![](https://via.placeholder.com/100.png?text=Photo) | Caleb Chan Jia Le | [calebcjl](https://github.com/calebcjl) | [Portfolio](docs/team/johndoe.md) -![](https://via.placeholder.com/100.png?text=Photo) | John Roe | [Github](https://github.com/) | [Portfolio](docs/team/johndoe.md) +| Display | Name | Github Profile | Portfolio | +|-----------------------------------------------------|:-----------------:|:---------------------------------------:|:---------------------------------:| +| ![](https://via.placeholder.com/100.png?text=Photo) | Richard Kurniawan | [Github](https://github.com/) | [Portfolio](docs/team/johndoe.md) | +| ![](https://via.placeholder.com/100.png?text=Photo) | Don Joe | [Github](https://github.com/) | [Portfolio](docs/team/johndoe.md) | +| ![](https://via.placeholder.com/100.png?text=Photo) | Caleb Chan Jia Le | [calebcjl](https://github.com/calebcjl) | [Portfolio](docs/team/johndoe.md) | +| ![](https://via.placeholder.com/100.png?text=Photo) | John Roe | [Github](https://github.com/) | [Portfolio](docs/team/johndoe.md) | diff --git a/src/main/java/seedu/commands/ViewCommand.java b/src/main/java/seedu/commands/ViewCommand.java new file mode 100644 index 0000000000..5c57a908d4 --- /dev/null +++ b/src/main/java/seedu/commands/ViewCommand.java @@ -0,0 +1,16 @@ +package seedu.commands; + +import java.util.Date; + +public class ViewCommand extends Command { + Date workoutToViewDate; + public ViewCommand(Date workoutToViewDate) { + + this.workoutToViewDate = workoutToViewDate; + } + + + public void execute() { + workoutList.displayWorkout(workoutToViewDate); + } +} diff --git a/src/main/java/seedu/duke/Duke.java b/src/main/java/seedu/duke/Duke.java index 43e7dc3bec..09c6661982 100644 --- a/src/main/java/seedu/duke/Duke.java +++ b/src/main/java/seedu/duke/Duke.java @@ -18,7 +18,10 @@ public static void main(String[] args) { private void run() { ui = new Ui(); workoutList = new WorkoutList(); - ui.showGreeting(); + Ui.showLine(); + Ui.showLogo(); + Ui.showLine(); + Ui.showGreeting(); executeCommandUntilExit(); Ui.showExit(); diff --git a/src/main/java/seedu/parser/Parser.java b/src/main/java/seedu/parser/Parser.java index 7b6a805cd7..c3c3f493d8 100644 --- a/src/main/java/seedu/parser/Parser.java +++ b/src/main/java/seedu/parser/Parser.java @@ -9,6 +9,7 @@ import seedu.commands.IncorrectCommand; import seedu.commands.ListCommand; import seedu.commands.StartCommand; +import seedu.commands.ViewCommand; import seedu.workout.Exercise; import java.text.DateFormat; @@ -43,6 +44,8 @@ public Command processCommand(String userInput) { return processDelete(arguments); case "/list": return new ListCommand(); + case "/view": + return processView(arguments); case "/end": return new EndCommand(); case "/exit": @@ -91,5 +94,17 @@ private Command processDelete(String arguments) { return new DeleteCommand(date); } - + private Command processView(String arguments) { + Date date; + try { + DateFormat dateFormat = new SimpleDateFormat("dd/MM/yy"); + date = dateFormat.parse(arguments); + } catch (ParseException e) { + System.out.println("Invalid date format. Please enter the date in the format dd/mm/yy."); + return new IncorrectCommand(); + } + return new ViewCommand(date); + } } + + diff --git a/src/main/java/seedu/ui/Ui.java b/src/main/java/seedu/ui/Ui.java index 3563683161..6daed5b3be 100644 --- a/src/main/java/seedu/ui/Ui.java +++ b/src/main/java/seedu/ui/Ui.java @@ -3,10 +3,17 @@ import java.util.Scanner; public class Ui { - private static final String WELCOME_MESSAGE = "Let's get moving!\n" + "\"/start
\" to begin " + + private static final String WELCOME_MESSAGE = "Welcome to Fitness checker, Let's get moving!\n" + "\"/start
\" to begin " + "your workout"; + private static final String LOGO_MESSAGE = " _______ __ .___________.________ \n" + + "| ____|| | | | / \n" + + "| |__ | | `---| |----`---/ / \n" + + "| __| | | | | / / \n" + + "| | | | | | / /----.\n" + + "|__| |__| |__| /________|"; + private static final String ENDING_MESSAGE = "Thank you, hope you had a great workout!!!"; - private static final String ENDING_MESSAGE = "Thank you and see you next time"; + private static final String LINE = "======================================="; private final Scanner in = new Scanner(System.in); public static void showGreeting() { @@ -16,6 +23,13 @@ public static void showExit(){ System.out.println(ENDING_MESSAGE); } + public static void showLogo(){ + System.out.println(LOGO_MESSAGE); + } + public static void showLine(){ + System.out.println(LINE); + } + public String getUserInput() { return in.nextLine(); } diff --git a/src/main/java/seedu/workout/WorkoutList.java b/src/main/java/seedu/workout/WorkoutList.java index d5b2b7b90e..1d78c13512 100644 --- a/src/main/java/seedu/workout/WorkoutList.java +++ b/src/main/java/seedu/workout/WorkoutList.java @@ -49,6 +49,14 @@ public void showWorkoutList() { System.out.println("Haven't start your workout, please enter your workout"); } } + public void displayWorkout(Date date) { + for (Workout workout : workoutList) { + if (workout.getDate().equals(date)) { + System.out.println(workout.getExercises()); + return; + } + } + } public int getLastIndex() { return workoutList.size() - 1; From 9f5eb25a08789e8622b43efc53ab835c2a11a878 Mon Sep 17 00:00:00 2001 From: Richardtok Date: Wed, 22 Mar 2023 16:15:44 +0800 Subject: [PATCH 051/152] Update UG,Added View, Update UI, Added Help function --- docs/DeveloperGuide.md | 9 +++++ docs/UserGuide.md | 1 + src/main/java/seedu/commands/HelpCommand.java | 20 ++++++++++ src/main/java/seedu/parser/Parser.java | 38 +++++++++++-------- src/main/java/seedu/ui/Ui.java | 6 ++- src/main/java/seedu/workout/WorkoutList.java | 6 +++ 6 files changed, 63 insertions(+), 17 deletions(-) create mode 100644 src/main/java/seedu/commands/HelpCommand.java diff --git a/docs/DeveloperGuide.md b/docs/DeveloperGuide.md index 64e1f0ed2b..41a7f7d861 100644 --- a/docs/DeveloperGuide.md +++ b/docs/DeveloperGuide.md @@ -8,6 +8,15 @@ {Describe the design and implementation of the product. Use UML diagrams and short code snippets where applicable.} +## View Feature +The View Feature is facilitated by `Parser`,`Ui`,`WorkoutList`,`Command` and `ViewCommand`, where the user will enter a specific workout date and the nuber of exercises on that date will be displayed + +Below are the speciic steps on how to use the view fucntion and how the mechanism will flow: + +* Step 1: We will assume that the user has started a workout on two specific dates, `11/02/22` which was added with the following command `/start 11/02/22` +and `12/02/22`, which was added with the following command `/start 12/02/22`. +* Step 2: The user will then use the following command `/view 11/02/22` will be taken into the parser +and will return a list of exercises done on that specified date. ## Product scope ### Target user profile diff --git a/docs/UserGuide.md b/docs/UserGuide.md index 657f444d3d..01287ce0ee 100644 --- a/docs/UserGuide.md +++ b/docs/UserGuide.md @@ -15,6 +15,7 @@ planning future exercises. - [Add exercise: /add](#add-exercise--add) - [End current workout: /end](#end-current-workout--end) - [Display workout list: /list](#display-workout-list--list) + - [Display a workout: /view](#display-workout-view--list) - [Delete a workout: /delete](#delete-a-workout--delete) - [Exit app: /exit](#exit-app--exit) - [FAQ](#faq) diff --git a/src/main/java/seedu/commands/HelpCommand.java b/src/main/java/seedu/commands/HelpCommand.java new file mode 100644 index 0000000000..4cac48f62e --- /dev/null +++ b/src/main/java/seedu/commands/HelpCommand.java @@ -0,0 +1,20 @@ +package seedu.commands; + +import seedu.ui.Ui; + +public class HelpCommand extends Command { + public HelpCommand(){} + + public void execute() { + System.out.println("Here are the list of commands that you can use:"); + Ui.showLine(); + System.out.println("- [Start a Workout: /start])\n" + + "- [Add exercise: /add]\n" + + "- [End current workout: /end]\n" + + "- [Display workout list: /list]\n" + + "- [Display a workout : /view]\n" + + "- [Delete a workout: /delete]\n" + + "- [Exit app: /exit]"); + Ui.showLine(); + } +} diff --git a/src/main/java/seedu/parser/Parser.java b/src/main/java/seedu/parser/Parser.java index c3c3f493d8..142aa8fb43 100644 --- a/src/main/java/seedu/parser/Parser.java +++ b/src/main/java/seedu/parser/Parser.java @@ -6,6 +6,7 @@ import seedu.commands.DeleteCommand; import seedu.commands.EndCommand; import seedu.commands.ExitCommand; +import seedu.commands.HelpCommand; import seedu.commands.IncorrectCommand; import seedu.commands.ListCommand; import seedu.commands.StartCommand; @@ -36,22 +37,24 @@ public Command processCommand(String userInput) { String arguments = matcher.group("arguments"); switch (commandName) { - case "/start": - return processStart(arguments); - case "/add": - return processAdd(arguments); - case "/delete": - return processDelete(arguments); - case "/list": - return new ListCommand(); - case "/view": - return processView(arguments); - case "/end": - return new EndCommand(); - case "/exit": - return new ExitCommand(); - default: - return new IncorrectCommand(); + case "/start": + return processStart(arguments); + case "/add": + return processAdd(arguments); + case "/delete": + return processDelete(arguments); + case "/list": + return new ListCommand(); + case "/view": + return processView(arguments); + case "/end": + return new EndCommand(); + case "/exit": + return new ExitCommand(); + case "/help": + return new HelpCommand(); + default: + return new IncorrectCommand(); } } @@ -82,6 +85,7 @@ private Command processAdd(String arguments) { } return new AddCommand(toAdd); } + private Command processDelete(String arguments) { Date date; try { @@ -94,11 +98,13 @@ private Command processDelete(String arguments) { return new DeleteCommand(date); } + private Command processView(String arguments) { Date date; try { DateFormat dateFormat = new SimpleDateFormat("dd/MM/yy"); date = dateFormat.parse(arguments); + System.out.println("Here are the list of exercises on" + date + ":"); } catch (ParseException e) { System.out.println("Invalid date format. Please enter the date in the format dd/mm/yy."); return new IncorrectCommand(); diff --git a/src/main/java/seedu/ui/Ui.java b/src/main/java/seedu/ui/Ui.java index 6daed5b3be..8ef437cdd8 100644 --- a/src/main/java/seedu/ui/Ui.java +++ b/src/main/java/seedu/ui/Ui.java @@ -12,10 +12,11 @@ public class Ui { "| | | | | | / /----.\n" + "|__| |__| |__| /________|"; private static final String ENDING_MESSAGE = "Thank you, hope you had a great workout!!!"; - private static final String LINE = "======================================="; + private static final String LINE_SEPERATOR = "----------------------------------"; private final Scanner in = new Scanner(System.in); + public static void showGreeting() { System.out.println(WELCOME_MESSAGE); } @@ -29,6 +30,9 @@ public static void showLogo(){ public static void showLine(){ System.out.println(LINE); } + public static void showseperator(){ + System.out.println(LINE_SEPERATOR); + } public String getUserInput() { return in.nextLine(); diff --git a/src/main/java/seedu/workout/WorkoutList.java b/src/main/java/seedu/workout/WorkoutList.java index 1d78c13512..1df40da08b 100644 --- a/src/main/java/seedu/workout/WorkoutList.java +++ b/src/main/java/seedu/workout/WorkoutList.java @@ -1,5 +1,7 @@ package seedu.workout; +import seedu.ui.Ui; + import java.util.ArrayList; import java.util.Date; @@ -8,6 +10,7 @@ public class WorkoutList { public static final int NO_CURRENT_WORKOUT = -1; public ArrayList workoutList; public int currentWorkoutIndex; + private Ui ui; public WorkoutList() { workoutList = new ArrayList<>(); @@ -28,6 +31,7 @@ public void removeWorkout(Date date) { if (workout.getDate().equals(date)) { workoutList.remove(workout); System.out.println("Workout deleted successfully."); + Ui.showseperator(); return; } } @@ -41,6 +45,7 @@ public void showWorkoutList() { for (Workout workout : workoutList) { System.out.println(workout.getDate()); } + Ui.showseperator(); } else { System.out.println("Haven't start your workout, please enter your workout"); } @@ -53,6 +58,7 @@ public void displayWorkout(Date date) { for (Workout workout : workoutList) { if (workout.getDate().equals(date)) { System.out.println(workout.getExercises()); + Ui.showseperator(); return; } } From eb0e8e5d41630cadb290276be9936913f8b724d1 Mon Sep 17 00:00:00 2001 From: ZIZI-czh Date: Wed, 22 Mar 2023 18:12:13 +0800 Subject: [PATCH 052/152] Update developerGuide.md --- docs/DeveloperGuide.md | 105 +++++++++++++++++++++++++++++++++++++---- 1 file changed, 95 insertions(+), 10 deletions(-) diff --git a/docs/DeveloperGuide.md b/docs/DeveloperGuide.md index 64e1f0ed2b..763a1c3e34 100644 --- a/docs/DeveloperGuide.md +++ b/docs/DeveloperGuide.md @@ -1,38 +1,123 @@ # Developer Guide +## Table of Contents + + +* [Acknowledgements](#acknowledgements) +* [Product Scope](#product-scope) + * [Target User Profile](#target-user-profile) + * [Value Proposition](#value-proposition) +* [Design & Implementation](#design--implementation) + * [Architecture](#architecture) + * [UI component](#ui-component) + * [Start component](#start-component) + * [Add component](#add-component) + * [List component](#list-component) + * [View component](#view-component) + * [Delete component](#delete-component) + * [Exit component](#exit-component) +* [User Stories](#user-stories) + * [V1.0](#v10) + * [V2.0](#v20) +* [Non-Functional Requirements](#non-functional-requirements) +* [Glossary](#glossary) +* [Instruction for Manual Testing](#instructions-for-manual-testing) + + + ## Acknowledgements {list here sources of all reused/adapted ideas, code, documentation, and third-party libraries -- include links to the original source as well} +###### [Back to table of contents](#table-of-contents) + +## Product Scope + +### Target User Profile +* People who go to gym and do exercise +* People who want to lose weight or strength muscles -## Design & implementation +### Value Proposition +Help our target users to record down the exercise, and they can check the exercise whenever they want. +Besides, this fitness app also help them to calculate the calories consumption for each workout. + +###### [Back to table of contents](#table-of-contents) + +## Design & Implementation {Describe the design and implementation of the product. Use UML diagrams and short code snippets where applicable.} +### Architecture + +###### [Back to table of contents](#table-of-contents) + +### UI component + +###### [Back to table of contents](#table-of-contents) + +### Start component + +###### [Back to table of contents](#table-of-contents) + +### Add component + +###### [Back to table of contents](#table-of-contents) + +### List component -## Product scope -### Target user profile +###### [Back to table of contents](#table-of-contents) -{Describe the target user profile} +### View component -### Value proposition +###### [Back to table of contents](#table-of-contents) -{Describe the value proposition: what problem does it solve?} +### Delete component + +###### [Back to table of contents](#table-of-contents) + +### Exit component + +###### [Back to table of contents](#table-of-contents) ## User Stories +### V1.0 + +| As a | I want to ... | So that I can ... | +|----------|---------------------------------------------------------------------------|-----------------------------------| +| user | record down my exercise for each workout | check the workout whenever l want | +| new user | know how to use the app | | +| user | know which days l have done exercise | have clear insight of myself | +| user | know how many workouts l have done for a day | make exercise plan based on this | +| user | remove some workouts that have been incorrectly recorded | | + + + +### V2.0 + +| As a | I want to ... | So that I can ... | +|------|------------------------------------------------------------|--------------------------------------------| +| user | know the the amount of calories l consume for each workout | control the calories intake | +| user | know the workout l have done in last month | make a exercise plan for next month | +| user | know the frequency l do exercise for one month | inspire myself | +| user | know the amount of calories l have consumed for one month | have better insights of my calories intake | + + +###### [Back to table of contents](#table-of-contents) -|Version| As a ... | I want to ... | So that I can ...| -|--------|----------|---------------|------------------| -|v1.0|new user|see usage instructions|refer to them when I forget how to use the application| -|v2.0|user|find a to-do item by name|locate a to-do without having to go through the entire list| ## Non-Functional Requirements {Give non-functional requirements} +###### [Back to table of contents](#table-of-contents) ## Glossary * *glossary item* - Definition +###### [Back to table of contents](#table-of-contents) + + ## Instructions for manual testing {Give instructions on how to do a manual product testing e.g., how to load sample data to be used for testing} + +###### [Back to table of contents](#table-of-contents) \ No newline at end of file From 4b34ff8af9b445deffc1f6a0f67892d1ce8617ed Mon Sep 17 00:00:00 2001 From: Richardtok Date: Thu, 23 Mar 2023 10:03:44 +0800 Subject: [PATCH 053/152] CheckStyle --- src/main/java/seedu/parser/Parser.java | 42 +++++++++++++------------- src/main/java/seedu/ui/Ui.java | 2 +- 2 files changed, 22 insertions(+), 22 deletions(-) diff --git a/src/main/java/seedu/parser/Parser.java b/src/main/java/seedu/parser/Parser.java index 541618fdb7..89c0bec7aa 100644 --- a/src/main/java/seedu/parser/Parser.java +++ b/src/main/java/seedu/parser/Parser.java @@ -37,28 +37,28 @@ public Command processCommand(String userInput) { String arguments = matcher.group("arguments"); switch (commandName) { - case "/start": - return processStart(arguments); - case "/add": - return processAdd(arguments); - case "/delete": - return processDelete(arguments); - case "/list": - if (arguments != null && !arguments.trim().isEmpty()) { - // If there are arguments after the "/list" command, return an IncorrectCommand instance - return new IncorrectCommand(); - } - return new ListCommand(); - case "/view": - return processView(arguments); - case "/end": - return new EndCommand(); - case "/exit": - return new ExitCommand(); - case "/help": - return new HelpCommand(); - default: + case "/start": + return processStart(arguments); + case "/add": + return processAdd(arguments); + case "/delete": + return processDelete(arguments); + case "/list": + if (arguments != null && !arguments.trim().isEmpty()) { + // If there are arguments after the "/list" command, return an IncorrectCommand instance return new IncorrectCommand(); + } + return new ListCommand(); + case "/view": + return processView(arguments); + case "/end": + return new EndCommand(); + case "/exit": + return new ExitCommand(); + case "/help": + return new HelpCommand(); + default: + return new IncorrectCommand(); } } diff --git a/src/main/java/seedu/ui/Ui.java b/src/main/java/seedu/ui/Ui.java index 8ef437cdd8..bfd1e17f91 100644 --- a/src/main/java/seedu/ui/Ui.java +++ b/src/main/java/seedu/ui/Ui.java @@ -3,7 +3,7 @@ import java.util.Scanner; public class Ui { - private static final String WELCOME_MESSAGE = "Welcome to Fitness checker, Let's get moving!\n" + "\"/start
\" to begin " + + private static final String WELCOME_MESSAGE = "Let's get moving!\n" + "\"/start
\" to begin " + "your workout"; private static final String LOGO_MESSAGE = " _______ __ .___________.________ \n" + "| ____|| | | | / \n" + From ad27b30e13f6a447fb746ecef72fbf280b3d792e Mon Sep 17 00:00:00 2001 From: guillaume-grn Date: Thu, 23 Mar 2023 17:28:48 +0800 Subject: [PATCH 054/152] DG : Add deletion mechanism description --- docs/AboutUs.md | 2 +- docs/DeveloperGuide.md | 8 ++++++++ 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/docs/AboutUs.md b/docs/AboutUs.md index 6558dfbd85..11d5fc92da 100644 --- a/docs/AboutUs.md +++ b/docs/AboutUs.md @@ -4,7 +4,7 @@ |-----------------------------------------------------|:-----------------:|:---------------------------------------:|:---------------------------------:| | ![](https://via.placeholder.com/100.png?text=Photo) | Richard Kurniawan | [Github](https://github.com/Richardtok) | [Portfolio](docs/team/johndoe.md) | -| ![](https://via.placeholder.com/100.png?text=Photo) | Don Joe | [Github](https://github.com/) | [Portfolio](docs/team/johndoe.md) | +| ![](https://via.placeholder.com/100.png?text=Photo) | Guillaume Gerony | [Github](https://github.com/guillaume-grn) | [Portfolio](docs/team/johndoe.md) | | ![](https://via.placeholder.com/100.png?text=Photo) | Caleb Chan Jia Le | [calebcjl](https://github.com/calebcjl) | [Portfolio](docs/team/johndoe.md) | | ![](https://via.placeholder.com/100.png?text=Photo) | John Roe | [Github](https://github.com/) | [Portfolio](docs/team/johndoe.md) | diff --git a/docs/DeveloperGuide.md b/docs/DeveloperGuide.md index 8c97a35a56..79e6988584 100644 --- a/docs/DeveloperGuide.md +++ b/docs/DeveloperGuide.md @@ -82,7 +82,15 @@ Below are the specific steps on how to use the view fucntion and how the mechani ###### [Back to table of contents](#table-of-contents) ### Delete component +The deletion mechanism is facilitated by 'Parser', 'DeleteCommand', 'Workout', 'WorkoutList' and 'UI', where a Workout object will be deleted according to the command inputted by the user and removed from the workout list. +Below is an example usage scenario and how the deletion mechanism behaves at each step: + +Step 1: Assume that the user has already added a workout on 21/03/23 into the WorkoutList using the following command, /start 21/03/23 + +Step 2: The user input of /delete 21/03/23 will be taken in for the parser and an object of class DeleteCommand will be returned. + +Step 3: The execute method in the DeleteCommand class that is overrides will be called with parameter date and will iterate through workoutList looking for a workout that matches. It will then remove the workout from the workoutList. ###### [Back to table of contents](#table-of-contents) ### Exit component From e4df581894fbf70d7d906bc511e2c22d3be7f3f5 Mon Sep 17 00:00:00 2001 From: calebcjl Date: Thu, 23 Mar 2023 23:37:23 +0800 Subject: [PATCH 055/152] Add add component to developer guide Created AddExercise UML --- docs/AboutUs.md | 2 +- docs/DeveloperGuide.md | 33 +++++++++++++++++++++++++-------- docs/UserGuide.md | 2 +- docs/diagrams/AddExercise.png | Bin 0 -> 24292 bytes docs/diagrams/AddExercise.puml | 20 ++++++++++++++++++++ 5 files changed, 47 insertions(+), 10 deletions(-) create mode 100644 docs/diagrams/AddExercise.png create mode 100644 docs/diagrams/AddExercise.puml diff --git a/docs/AboutUs.md b/docs/AboutUs.md index 6558dfbd85..6b03218eee 100644 --- a/docs/AboutUs.md +++ b/docs/AboutUs.md @@ -5,7 +5,7 @@ | ![](https://via.placeholder.com/100.png?text=Photo) | Richard Kurniawan | [Github](https://github.com/Richardtok) | [Portfolio](docs/team/johndoe.md) | | ![](https://via.placeholder.com/100.png?text=Photo) | Don Joe | [Github](https://github.com/) | [Portfolio](docs/team/johndoe.md) | -| ![](https://via.placeholder.com/100.png?text=Photo) | Caleb Chan Jia Le | [calebcjl](https://github.com/calebcjl) | [Portfolio](docs/team/johndoe.md) | +| ![](https://via.placeholder.com/100.png?text=Photo) | Caleb Chan Jia Le | [Github](https://github.com/calebcjl) | [Portfolio](docs/team/johndoe.md) | | ![](https://via.placeholder.com/100.png?text=Photo) | John Roe | [Github](https://github.com/) | [Portfolio](docs/team/johndoe.md) | diff --git a/docs/DeveloperGuide.md b/docs/DeveloperGuide.md index 8c97a35a56..3b0f979b5b 100644 --- a/docs/DeveloperGuide.md +++ b/docs/DeveloperGuide.md @@ -63,6 +63,21 @@ track of their future and present training. ### Add component +The add mechanism is facilitated by `AddCommand`. +It extends `Command` and modifies the execute function to add an exercise. + +![AddExercise.png](diagrams%2FAddExercise.png) +Given below is an example usage scenario and how the add mechanism behaves at each step. + +Step 1. The user enters the add command with the necessary arguments. + +Step 2. The input is processed by the `Parser` to separate out the arguments and creates the exercise to be added, +`toAdd`. + +Step 3. The `AddCommand` calls `execute()` which calls `WorkList#getCurrentWorkout()` to return `currentWorkout`. + +Step 4. Finally, `addExercise()` is called and `toAdd` is added to `currentWorkout`. + ###### [Back to table of contents](#table-of-contents) ### List component @@ -70,9 +85,10 @@ track of their future and present training. ###### [Back to table of contents](#table-of-contents) ### View component -The View component is facilitated by `Parser`,`Ui`,`WorkoutList`,`Command` and `ViewCommand`, where the user will enter a specific workout date and the nuber of exercises on that date will be displayed +The View component is facilitated by `Parser`,`Ui`,`WorkoutList`,`Command` and `ViewCommand`, where the user will +enter a specific workout date and the number of exercises on that date will be displayed -Below are the specific steps on how to use the view fucntion and how the mechanism will flow: +Below are the specific steps on how to use the view function and how the mechanism will flow: * Step 1: We will assume that the user has started a workout on two specific dates, `11/02/22` which was added with the following command `/start 11/02/22` and `12/02/22`, which was added with the following command `/start 12/02/22`. @@ -89,6 +105,7 @@ Below are the specific steps on how to use the view fucntion and how the mechani ###### [Back to table of contents](#table-of-contents) + ## User Stories ### V1.0 @@ -104,12 +121,12 @@ Below are the specific steps on how to use the view fucntion and how the mechani ### V2.0 -| As a | I want to ... | So that I can ... | -|------|------------------------------------------------------------|--------------------------------------------| -| user | know the the amount of calories l consume for each workout | control the calories intake | -| user | know the workout l have done in last month | make a exercise plan for next month | -| user | know the frequency l do exercise for one month | inspire myself | -| user | know the amount of calories l have consumed for one month | have better insights of my calories intake | +| As a | I want to ... | So that I can ... | +|------|-----------------------------------------------------------|--------------------------------------------| +| user | know the amount of calories I consume each day | control the calories intake | +| user | know the workout l have done in last month | make a exercise plan for next month | +| user | know the frequency l do exercise for one month | inspire myself | +| user | know the amount of calories I have consumed for one month | have better insights of my calories intake | ###### [Back to table of contents](#table-of-contents) diff --git a/docs/UserGuide.md b/docs/UserGuide.md index db321a60e6..54093eaf1c 100644 --- a/docs/UserGuide.md +++ b/docs/UserGuide.md @@ -3,7 +3,7 @@ -Fitness Tracker is for users who are active and trying to keep fit or hit a fitness goal. This app will be +Fitz is a fitness tracker for users who are active and trying to keep fit or hit a fitness goal. This app will be displayed and used in CLI format. It is targeted toward those who prefer to use CLI over GUI. The product will be able to keep track of the user's progress, daily exercises, and workouts. This helps with planning future exercises. diff --git a/docs/diagrams/AddExercise.png b/docs/diagrams/AddExercise.png new file mode 100644 index 0000000000000000000000000000000000000000..1be0e82dc0e463d4dc7eef2940bf5c4bdea13167 GIT binary patch literal 24292 zcmdqJbySvX*FB1X2#9P0P*MfyPy`+tF+ijnL_q0~?p6>{T0lBPy1S7O>Fy5cknTR~ z!Px5F@B4k@cg8qpoZ~+rJlt``T64}duk}VugdYn79|Hvi1xw(;JqZ+)<7+4=$Fff! zho7{aB}<1d)Ta04OjQjGt)8iCn4<8j>#G|-HC0!;qGEML%hc4+gq?xG@Yz#+Q!~A1 z^r{AW=1p}ZaET0UDLK<0KSwzR*Rc$p_wCoeaPzNMi*yr2d>@~hWT4Aid(*x=uAOlD z&Fj;2-Kku(xbpp5e~rvv<_Mv?w{-IT#|+Jq?J1Ie4s7wQz{0`TT-$_En6~U@98Zn4 zuIVALwwNQ|%F)n0VkkUUAK~39~YbhL8K!@cC^{h^)$f%1gL=p6_@@3w*u$J>)u4q#eX6kXiz&&0mOQo-a zn2)8UhY*Idq<5ZwxL+%c&b#dI8vH@SBOzXZdXGq<-n z@zt!?=8)~H6L%im9ffQ(3LE)#pw@c;zC4%u{mX!;z9$J!iB_wEwzff2FmuR34Ey~x z8srk|pttY|A#vCF-Wt!;>j{3fpRuODp)X6_Fxm%I2#xfByV_Z)xnjsR4_D7?Rq_J8|dvQJ1uLqmbc z0|9|nmxh+1H3Q@Yo*x zm!gojyuW$NV{k6VStO{yWNI$tSf1}rOSCmWm^5Gm0W%$X{(72YV8 z>en{*HF$Ults`ul9D%S{9|F)utzDO85vuf2DJ1HmsHujx(x9G1seYDgOdFH&vq}Qp^=(?tg{NP4% z7QqA2q32=DuV25O2JgQ<*S(I(q(zl7_QlCV!rV>|_g%9>(UpR?K7QS}bE}GVFl@;j z!uk>-=$pO-Q(3s0##eOz$Ik`W4@=D(q$LaVuII>0aU0A#j`KZ~P*O;4wxA06YL&6T zR3N~1eLzTmz*3@Tv|vo@(Djfwu0rQwAGn|t_a`%J_4!N5xIM%7$y$e%J`ua$crx9cA(UH_(d1z%0(<% zX!+*p^{byLluF)wG6<7n{4n2pAe6^p$p7%1@BU$MHe&yHb?D;GJDTpDt*zq21NO0N zN?NF@Vt9ue{k|2ixJZbJzbq~eCwAVQnMrb=vr#bWNIhP0!-*hNNZ;1ps9Vtj6}5AB zJuRZCaX-!|r;qA^e&R$!j=761LN%#?CCO@fG!keMKH6i|o7nMl#tpH*n`fd_zu3ev*TLCX@QuYJFDPu7fU{q%VYf zRxU@eSujn>&SAHIcynQ}IsY{t|6twNu-#@FF5RP#2RoroXkNq|<{M7f+!&ac4!iRc zRl>!ItU9tUo(7guGu(G)h%KwD%* zMe;!fHeR)--S!K#JNx_lMdtHweOIyE+9y}17z#Frb{C2m#=|URidX8^Mn+DV&2DL^ z?e*5;l2sv5Fd9LN%Fqo$@dRG!15k&VBgS1fF;SFi7Cq1@fx&NCQ(J8COCRxKJ^d$(f$6XuxKv~XT0gjD3X zj7~Sqw#OYNO3%rM+56jl%}`2SXn4@7PJMl1=J|7!LIK;A+F?_J@is!3w$+b)q*M%lSVrU`w(zul!+t#^#}4lmaVA7>m}!&fUMZqfib7IUAGtG^~#87untv&D8An* z1G%Ni0?$_&Yf>Nz?-1Ra;*^$ooaes5#m z#*~A{Dls5T&Ag&tJmp-o@Pp5tJ*S4HkkxBJFXbcNzu3q=mC zDX%-}su0)JPgia(G{yxmm6&QD9PEBrTa#{Wz4o7r`q2AWDeGW^aPQ1~ZhHY6sml^@QJU$@Zjz-|+NMO$^%; z+O8>^9O2kaEKJNe#0P7Uro6AjxHz3JXQd+Ni0NW>#a>KQiuKD4r8YE(9?X^U!K~)) zJ;-LrG2$mx8GPZHt8x@Vkjv7_hhTPpY3X!fBc9a$Yauh&^!ujA`brN^Cpm0=!5t#? z9Nio+Y5r0XXSO@#EJ1Q`u`=>*HR-hva$zi*rSGC6YU7)D*xNi`u4DAwnHwVEYrf+Mp&@kyX&2LgTKhqUQa(i_qc&T1+eqO97 zCG|={g8!{!@Bmh zC^qTI1}mGM^r?iE-Qh!$x(bZMaNTH=;WHsm0hgt(+aUT|KdQj(_?2^XCo+ ztDM8{Qae)Ss(Jp3b&ZJNNot?$^LoEc!PWORUFk*LWFyD)9kwTBBUK(zIRrXhaed$S z6>G%64U1triw89)N_Pjvb~3^l%$Q2nE^sQla9t!J8TPTypNg~F-zm3kzQ-|_-9L-r z6QaXrqW6VVotEjgpUFuy#CzSFZmet)7pI)+F&#()CZA_OxNc%%(b&ne zuT3gFUDZ{3cso%HKhJa~;``grO!(6|MA~{9+Yx8?_@_nLC3wtr-K-MkXla#6{;`d& zi5jJz4At|e!ShxkL4Xsfe`Uz zV33zrUb*jQn5Aqm=NhFa&uc81qLW64>L12wrqf4YK>NO)=`hF7m-IeQmJUzbEycL9 zf}>qrbW1pPWje|Wl2n>zGk4!VIO#`_S-L49&2y^+#~Ke+INg}~cM-Q{~Vs(WS zC-6`_PT0mt!llARl^3w_%guzg`f7=r+5^J5-4>)cd?3+UTpRz^RXo=24+PI@b z@|QUi9U)O^M!fA%U*+m}Rqb+2|Ilb9%?z5KyF1USOErYEcH7wgt6_T#rJT-jeYgg) z&&R9KJCzhL2rX7h>|ADwqaxH3TFjnvU78wyu)pb08XR8YN?rje2#;h~BF|Is=QOKN zHWZk0rj>HL@W+Zq2%npGYWOx3QNaj<@)DUbErku*rCQ%gQ-Zmn{hK9p`*Mffr3>l^ zo};MN$92i=$F{aGH?F`J_}HE-U%Y&7WN+_y@aR{()DFotlUoy%OgH+J%r7?AZco-y zIM@x_T|IW}7!ikgZNuJ6hMg}iZp}PAvG)5TkVtE5srEz(v=Ip8a$mGbvUt1pFDX2SY#Wm z;QQcob>k`_sN;92S#7qS*Ufek^vITn5mFV}ZY~~1M+`SRkec@A4i=g{4n9$(Vpqb^ zKJJ*<;c>0Vd_RmInbGf;9PDrq8%?Uj+XxWd7mljWjMD4HyR%rbtG|QpyPv^|8%Hu8 z|HYJ7gM+E9hE-p?^PSzhR^dLZZ-iO!I4E}t{mu%|4qj}h-eR&2BBW1@9j1Ld?iP%kBXb*eK zop^W{8)xVHayYD3#^>uDUXAlT`HzDU&s`v&sV1PJGWw;$rM|x2#KZ)qt#P#F*Y_fz5d+&Z3c8HJ3UuagMs{;@R&%HNl8h`#5XfYH|wi62bFPq1uLl zY^zlby9h@&?mfeKK$q@7OecyKMH(YYZx5fz53}v|*J-xc4*qJDkP9$-*zd;K_yBSw z+cTML2xBwZaKCKuK3__sG5Dj+roNqvqe97+O1JxE?J5x<&bnP8tCNj!7x;%y<%g+t z<7zfp)WW5VV&PJ~em9832z)|-H9jQq33C)aMey_>9wqA8OKx$GvU7P?3&fWY0T?Wo zpS|3UI_{o%Zs#8Jael&D4~~n^7<*2y@}pi-CtZ7^bJCO5hroieM=kx_q!-4GI=<-( zou>(5>=wk*YoCxdkl;M=^Jt++JjXi90s|Ux>HPh2awm@)4pPs>S?)x{^NqajKaxLC zEV2Jpz90ZvA$sP`hbO+}e1SaFWt0SwqEe)WpY;5 zUyyo^R}uXmKlXpQ8ORtY#b`cAmB<_8+n0xpGfw!Qz`fH@$vKXgDB4Hbn2bI|BCQrbHs3}BFFrslzgEnuu5TV z3fMD~-;+B7Kf*rf_#gBhqGJ?T$5YpDAQm&+cj{CTI%Y2s!%!hJ=H!3oN?B8$cG@$qKvT?jtz z40>(R=;|y|ky7O3Ge&8-w`G)g5eLWl)vHG6~4c1&x$1~%*+*>0~vBDu;DGC7xia9zsUQ^@a z*%0SIO`_d?QvTt?hZiT%PNAY+CnFo5n#y_~#aYF~YB0pv7iumcA@Rxa>zlDxSOoO) znJ?4W)M~te*vd>bg>w}_co`j4Q6z->EL>p@ALt-&cIfpB3mb&E3eRS@yD<}hlt#nK z+MkX1w@|z?<%FQC8DWPDVVjtE2xb5o#qGVvxP)JE{1zt&GLO9&UT@2|UU0QP&%n#w z{TYaAV_rPO1O&Q!SE_A-&sbdhErzI_IPO(4nZ8HP#N>Cd-wDV%@-Esu8k+>mWgV>F zc9&0x7&DV@m-~T-o7?W*YBTEDOAk44U zoj}N$oKt^(mg1Gp>H24sA(5fvw6tF{s)={UeMPfrYP!|pg@0X&5ShsC1__&*GEFe` zdFjBYjflJ$pJegt{ajs5asB!XcOs0|a}HFW5Qhq7N>I7IQN9HfSL7p6yt*g;Z=thv z?z-!rVVd7~?Ck$(0L=d{H-l$J89H$!EToC0HPgD9h zJv|LXP`0#(V{2>A=KR7y!7VB(0X#MLa{-q5Y!(||~;u=VnPW}kj z`V~0JBNiX;6_5toPBsM9)YNn)$tsuFvhna7M!FC`6cz1G8%NF7=65+ube4!c8k4c= zwIJs}C?-1kQyg{?_P%~R_Bqc$o{_6Ra@4>pnv$|8ya`XOm7WY$&BowL<;n4J)7cJz ztO13kY*G%6BHixP!Yi6b!I^E|9-;%^$3*$*WDb>s=Po}}7(wdRaWAEdZshHa2HPtW zfb(p|-|{zwaa234PBj~JrxJC#xw@V@b4je!ejg&38y-U@j;os+8a6TEUw^g0Rrhx{ zvz`bD2t0iF(9m${J+IS4K|y+SoVB?kuwVH_4iIl2M&)8(@?3JMC6n+A%le5HlF zUYs?asC#!+I`>&`ChV>B^c#KiutLKgKV2O9_~y-<7cX91REF(6tTWRVBOJognJO7owC{J)nrgCyk}AJwBptB$Y`Zoa|Dm*I&Aj)Zn%mC z#_E->I8l5aDm3nwZmIy1?@m>$uc>*z_X-tCH6Z~3vf|>r<>(j4)2|HrXv+dPo$F5X z^6qt4hTytci(< zY=wh4f<7I{F>6YF%r4j@+^SXXP;!uPp2FC(ka+fQ@7UUvQ|^R@UAP%S<+gpI?I&PZ z&-)8;+E(Sk(Tpx`Esy0TaucCrVNLKJSlx!rx|{wo^JPuV1Kcy%*bFo@s%EJIzT~EP zu^5BlswygS=@yGawY9a7;eyQV+MnFMjiQdd7vn#3bIBM+yYX;m`rjL z_0y+M<3uB3>)u?TuuO*p4Tvq-9#rBCjB3(Y59WEA_B`{8Ohn8wttqumerK4U^>~+> zhF9(#)BXvUcKXj-zSg(rf$B<1;+fmK(o3idtsVFnjtI=SRm2S(VUPi z`cm9=yAmW_&Rf|* z(8&-iQ6VI|LXHb-km)#UWM8|xt3?C@9%0hyc#W#vxUynga`wWxbLEUEq>tE;nX>8$ zJ|RLsbmPS+5GaeeE{{%Ouktme)Fb8ziBUB0#?!g36e}yME(P&+k#J6dcaDz7iO-;; zM~bMf0}fgK?EH1Ov=p-Y-UQuURpH&bwG<*$I=+v+C94X(@l;W$iM0JkY0x~jPAdqyWD)z?;6W|iE8LR2*)1$Vx zw_mt$K|cK_>G)dk$Zcd3u3dHl+ji@V%bJqS#@9%j4PX&H*V!B$=QJh;zvz{%>S2WPd=*SB{KpHA?;<`<4N+@jncT=o_z!Z#5z(Bb#>Y?d@G&UWQGo zY`-0&|JMJv?L@EK?s1a%BPFh|`4|iOK(1cDDfZd!vj{#9Pm|q^`5i53`wK)wM7X$J z#a64`N;ZvaPK3Y355Ut>+AnzFJ0~(k zuQ&J*6?HdB%r$ENw-5YCzE3S^QKp!oV0z%;;js@W1&34p;>%x|(etzFH@ol9&++OV8{dgfyh63 z*xP~pyMHn|(gGuwKcNaR%5z(vy($0XW^glPoxjZHN&&KhobdaXp1+^*Hnwizi9bsMZmC0*xHa|Ts)OY%$kUp z>T*sUaYcROr^fFf=N(bfh4(Xb6bfe2-dUUBRQe7ePO(dc69%5DcE6lu z_~nkwaFK<9ii!&8d+>Xxu*-?{XJg{gb8hsgdf+pIY;LhloL%d}k`I8zn_2+?ONkxF zyl-$is2aJB+Wp!|F@gb5qwq_cS;d4O@X*SoKYvs{OP_H`UHxww&wZ2Z2-(UvkQBCZ z?|#h!E$oBMZ2Hp*OGBugPc=uxS?lP`0^3M^T#%_!=?c%#! z5GVX{;HjKaUr>oFfdbXl*U!{!GdN`nN68egcPVsiOoiKsgjA=y=8E7va>>MHAK94i zmmD<%TnJ*B#N8f@SiQIuJ}+Wn#W+RDB8PT+R?DULHl;zCzrH9+8NF#5m;K&WN}{M1 zgbpij2UmzWjoj&x3Q)Er!+ho967cR_277n3z=gshNoNU{z`#qmUt!b3Yy+Q)RUBr@ zhup+ZZ1u7{w%NQ)EKOkU zpsBE4OE$^$RsxPK5lTKOgn^}NrfKRC4r0`Q;oww4{swHeQ7a618jz=)cNZ-K!_?f3 zbLY;{_TTvM?iM5C7RBAF5y-pRtFR`t17I-mE?yi+?7Nk68^^lVtC8u_`SW+Mp057} zHew6zL-_1njI-bRf;NT$l)dVGRH1giaCgV4%ZgJiyF-90^3sl@42d|XoOpiQG)?&5 zaD}G+Ph5dJaSiUT*B*<7=}E}Oh(H85&dkgJZl~?ZRIdjwkE<)j#!_Kzk0uQOmpZ^kmykH$Deukr%Fpj&Um~!Ny<WUw&*Czs$MZj#ufcwIe z^XgSzyoRPGPcJVLmS>j^J%Ce)%itbqp};c}e&h~#5Zl^Dz!VU(W4wZUv$Z9KgxpI@ z9RSS`?emU5;^PMhXl|EHUHS&59}_dGgMy1|5D789+mI69o@h3BU}DTab^D|=GCEj*TeU#f*;1VdQUxxiZ0a_TU z{m%QpDZR}^jkTpFzdh1kYQXp0ZZZXEV&mlh*9GGN{gvJ<&GoCdpeVDxyu7{EF1n6s z&nviowVIc7{~>YG8@q=M^V=sZ{`wm?+4vwC^gOxC%a_x4HGF)1fwCTeN(7+f6H|~O z_i2>^E{Bn`jz8zpaOwgQ6zL;+gQUhf5+os<0quSJ_N`PmL#j$4$&}L-|Nd39g)2YR z_66G<{!N8Q0H4QBoa#tZ=7Dkr@N?T7q~Z%mo7$ILIGEdx-3t#F7j}Se7g9_aexofG z(gIaH*l_&?CKS@JZ>KNG{R1jI;0WSzu!q`9ywc;xoR&)?;17T-vp8HDkyb_x2y00WgL;nSune#hwLceo0sTT4&tWFhVLXKPmsy>%zzU}0cLgTO;d zs`}|Ax-A8WE8GqToSpnXlYT3P-|!NSoHHZABVSJ|c(06%3|g&1QBcd{#4ed#dX9o0?6X=+~CS z;^E=hNI0`UH#b-BD9X8f^3c}#@{K1b3Q_Nfv-MxvW6LhKoAWJI-uuCql z7V+i0RAge6*axjAS;VDoj?e+`p|Um5dV(L~weTi7I9%^0FW8El|F&#`D2|aaGWysV zOG-$z#fy_BhH_dlUb{Bhm!oSNwz9Iaw6p{)I@ zwS0QsTV3!`U)a6-_glraaSwzx>9g<&({}luAL9oFbaZrNWN=f`&FA|7H%`lF{ico!ZzeDTxgFsBDbl%E za8DuOccPv#q{m=pU3Z5}10bGI@lHm9+EQTdWo3Yf6J=#&a&Xr_{lpSsW{K*aQIL&Q3cCjFm#W+mhw3BG^3n;0 z0fM9(PhIn@EZ8y5-SOw3K#F8u_R=A?o{j{V>LSCd0Y!)_gm52Q$ON!Y{2K4^@nvSe zdg1_oc|AK+E{SgV)?@EwH}sO8@%@pZ~?p-RZ7qZf*|qApa2(6bL+d z3{VL2mSjdeFqHmNbWR7t_!aN2yu3W9Be=S_czD>voUB)_yay2n)C)~sJ>rU4?$Rf` z?TQ}X0$?#Y%U9rCfmU-9Pa4kqsVm`d@Kt-?q{CR2X zXVf+Lr~ybuUjDMOO9D&5%|U6WQ&^y#%k8(t2m*v0pM&Xp(C{6I$T9UcH+vm6#RCWA zL{d6eTQE~}>F(_8fPUqhR-v_eNvZpku!S`2PXFb<5?cgIxL>RPy7P`im?J@H{PpYC z5S!K3-)i3y}bi{_zvDzNLfR#Zo)A z)2hE-5Gnh}F=>3V9nAn{=cfe|oxndv) z^~5NL!-J#wjf;*JOGn~&qY)%SrEUl6a9z-UXfl$3SsGaTPhypyycdZ; z`CgNUJyaLgHVz?vAom=lMR|7I``Bt^eSd>WUrJ%m>&A#wU4eoZixJHn$tu1E^ zvyqWeLPEmc;%i2XjW?seJ0heACP0GbyMN!=#YLAVu~j@p^!CW>Uj(w-3E~>f=LnF$ zN)(0a>A7EOdN0_c+)KsIc!Htgk4OHQV4&CtTl7z7!gqth|J(J%XEVN8n$0@O#B9dn zZz#g!LAy6KT?1!alA_dwts+zhNNkEN#(ZZ-z zoh?WqfoEFP?PD{s#C2ULeJ>uxMpleCv|-Vubo(5U=q=|(}TemE4u zb97~87Q0di%uXvu<9qGE`Jplsh!d7jCB|pgSz9PtTq!d9BPbh457u1HJ%0TH#0p!A zaU|;d@Nr_5UHZF^Lve76@0s&A0j;CE+X5&%?Wf_eAxajOT!7WH6r$noo}RG}A3rAS zOt`ZQl~V$QzSzh3c&)PM$Dqa{Dk4&1x%^?~ZTgc(kNT3*O6q387mcITO?)0gd;^#i zq-wmxgqPh6u?JZ;ECRo;erwcn8I9LUEST?k=4BS8>bwgYPahUy( z{W(CK35?)v5ar%}Nv&+VTq!Babsxu7^5JJ0H&0Iul8<72Iu?eNLM03;n`0y# z^3N(|Z*WDQ!or98Ryw=7D>4_ky-dHf9IWw+4E^2LfNM88H>V&kFYqqHe&@|_%8}tj zJWpQ{w_~UtBvLD&ItM=I!=U<coy3$>bdyyq0Al!o%YA0xz0cI0-U=6m6P<>$N_7=ixk}I+fGYQUsoo3S^2t~ z>38=P?M^g6{jU~GrcP59bKf%EaPH9j<_i2+n}kxS)ZQ*ne^4$gO-4>mD;P~{uCwIr z3~>#VYB!69_vxvq-tdQ8O$NnMVZ`A;pKB(bFGCAvylk&NbSj@d8<)56KRQlWVVrOU9 z9LiQP3%qFm1UBc=7Z(yGSX&^aK&^3)p|M2=h$uDE0TVcRtgmo}ASgB2&f<;%zZ;x= z`AiB$#Hbpd>w=aqAAODp|AIYw$-*Ai<;#~R4?erk$i#ZI5lcXo8n$%xtW?6xqNjAd z%4c2t-(76Dc7Lc;0aQro9qsHH42%y&_Q-^L_A(>cl`GE;9U2)g(C1^)5D#}AqYhnUw_CPDA-nO+#@bHv^OK9~0l!&2vr=5c&Ct2@jnk>Hd zw1VC)gBYyK7Vo?JcX}2%hztu>y*bL<_?rfE+=C!VLo_WO3#su=2n4EYUFb809k}@HYx+)L`1_X2`;sKmf>qd~Guw=>j2yPLsPP zLHH;$m8ts;f3B*Mu!mysIUJmIP*H4}(b&HIj)=At9UB`vr7hn`m0|lz^*`V5>j4_| z>+k-Za8#s&@Rt;P%s<#Z1Q(jN1U*8wOWzm zfC-s3|Jz3xBag~vw6sFI;vSx5zvkm3li@Y24GVpDlFsS>kd?=uL&}DfEcVUU_~*&m ze+IOlj>~gf|2KKYKZ@c?gcZt< z-eav_m0h~qwz5)jp(%3j2lhFqH`)|x9r9nVWk#p|O zafwze=fG~Z=`paNc10drz!%vBwD57Er6+oJ776lU0I=~rq;r~KrS>w<3-H1 zQ}>PrQgiekUmndJK^_=@L|PE#I^xBptY%^Yw6LWjw}9>S>Hvs@5cXj|SuVpd#k}5- zY;94&;N$wJ8$)IcuEH`-w#O(h9Rp9X0K_K!nt5*6PMRd*T5N@_;T#rC zat7bsl>Js9M;oEGE37LY?sP-Ml~4y75MjH5E{*gQLS%QPz8L5CIt3T0nDtYBQ_Oe= zn})$p2?T2p7}b5++)5z5$c7UbR+8ht%H&G2;_oT7BF=G=hQyZ^sn!em*6CG)F`^A7kqz^bdOgR;f+u~la-TLc^>^H-0IoUQrC)7tfsS#1m;KqQ!` z=tkcH_ZC;H^|{W;sPg&rfhC4RTV?(#EEL#dgzToTQHApu_52pRvy1nZ28fNCe<|00 zFNMQ!Q_<5ytpXhbLua^zt8_Or?l~AZ9w1h9d_%t3J==(<55giM3?9Geb~$tT{9k{S zjr|{`qqc<&|4pKB&wkPcHsB%<-d##*SqeEH(HJi?|zh0clT{hP0$ZKD<KcP+vL)Kv zzqv1KdMNgsLetaJA;^%HzI8YHtn2YlizV%j8u)2Sw;K(XEcD5~XLZQ2WhPsgl~3@H zK>QyE`Tsc>f7j0cU$ww5nR9cKThI`%-89)PWHB^|0JD|Q!-pSSeGfIepl&eZ0lfhv z_Z^i3iBDl}fd67hq*O?N+zulBh&1iObe}8UY)fPXC|&XA&!7LGtU=Dk2Ke|3pz~<^ zat0xSddD@sHS-z%mpdarN|$EnyT2lNp@BD?-HaLv-eArKQG9l% zQd(%U!U<4(eQj-lUF3~$_k0(jof_#sKmO?swY|CJF5?1 zm_it|zn|F;p8*&6uCTC-jEu1{Bc?yNOQNGsqM>2qGsS0T`=M%6{4|FCVFO*okyD50 z@T>0=4>Nedq#^Jo_$k!-8EKWIq?n$Rq3ECzwSlce-WyIV>5YDVBNfD?-3Il2tAXs! z*m6`%+?J3PtjbKF9+QT5SpSGi@@oPRSXiF*h$$(Rs8nJc%!PmnusQJN7yxvsFYppq zM2WI{K0paZvgD49J{&v;-X?Dd4mGgdfmi$T<;%#V#UWp8xeS_10=LTN*AS(^kM1D@ z=1wR9`SrF0|Fmh#Y*)YR;YuT*&(FxJ>1$nV#0#cp(fGcBH>TA8e6u z4C2e2m>sZ$Wc@y!_7Nc1_$<$AW1})`L$YSOgxQ-z_&g=D}XRpc1;0f zQ+7wziSq2L5kZs(&47;vDL!(J{>XQkS2_)bifdfSN zt_@xo82PioLT0cU4abpQyY|B}Id>&35TDDMY2E>;V&36+s{O*>oC2s5#Qk7rp7xKJ zDc*12p2NqlQwm}XIp`$!L; zmX;PeBkUep;C+yHw-n9_Mjm#_xx&i21r8A4<6zkx+nfPXC>+iiw6F;^A4jv6YXx7L z2f(Vg0nD406&&LO1CRRztgWq8RIXv_SonZt?cKZkG|7rZx!_4E#CZhnwxA$+aq;qS zS`AoVAVC;Gz)Tj=1!?pZvi?^dQE(Y_g!|Apgi*7JFxO8|P%wnuY?cl!g$1jvADjtq z7J22*Qb3ToJrAc)?t*Xv!vm^H^I|(Nwb}kW22?8F^s_sGPu;fiV&D#~r4A0bw0|h7 z!{|u^i95Mc4d;A~z5ccb__v$C znIWU$xW@cokt|7$0&p?dRuYnu+fx!lr;a`-tlghWcPPll>@fsoDPEG4%Mf#6vteLk zFSbTigTthF-ih#^83RO2U~F@6W|8~Rt!a;3gW*)Ku0UAAOb{=@Qe?NY_QuWamc93X zI9hd$#DDnZt5+;wRg?&Y6|cin14p`k-^k96$6@*e4y(Rd4vsg23-R}3U@K2WakE~& z0yB)&awT5xur=%d@oo1S=jke75D}4eM`6h zTc_hM0`AXKX-9rVsEz&0&5#{@o^Rehs!d58;V2Y|<)Lx%Teoh}(dp6WYk|uj;$!zF zdA_r?&yM79<&X~O89S$*Uk*y86A52rWbQQ)fyOmz!RKR7%*NC<;wgW9l%-+ETYmkb ztf11+a;>lOHaH{K>@es*aEIP_+BSS>-_TR5BqtI|9+a) zdw^2>KX$m`e5en#u5qaBLn|0Kjs{D!4uWKxw&xmj5JQGtMb1Wo`)8~}i%0uP+EP0|GM4JafkDk|+L z=l^s;;Rg?DpfcsK`$+-n4ke~D=N)cJ$dL>KoVVH^1yek2A;hy|+;(1p-(FkKqW4Ljlyb;0TbG|KV4_5}X#= z-Km2>@ePy@viby&Eph}6)(&>(+}$iAaol+o_xcS)&k}6dT3WsYBUX|O)CSTRQy29r z#fvb`RGiT_WGwg+AwL8iJ$QNHe8F6tiOHe%;}r8BO)69q)gL#ms&wn8G;ivJ5MH>j z+bMhKRrk%-Uo?db0fw}F@B)Ap zmj`+h5t`9>IcyG=0ufr@nKL;{%xV3#rxzUgl(e*a^LYUTh~>o5ctzA#PfsDBJ;%}x zG&X?-7OYRoo{Z__NPh3cQW-Q6R=H!FmRk!FZ1~MFuf2(u$iqCVRorGSgd_iS-`3u$ z>QPT3)A!~S3-c}3G(VaV{dt@^`|z?fATMNY=}4$3VX1UPw*TU^TCv+41pB35Xy_gs z=gYJdCPNhF&i7leGBJH6Ib_8nCgwFG<}n)mbgTJH(cuAKw&|BoF}5`P%SL15!l7Ge z^Wi*uhJr3-iAZ0+W%s#vD1Zt6YQ1m0E!XVmh{?f9z=j(TZjJkY15FM@tkncMPU`cnmHWdbxcDxls!B~pB2b=6?FgtT%ywaP0($k*l7t}|X$YfFfJ63w^v zPL-`eopGXv(n$xKhZ3<7>LfPFcu5?$Bus-I3Rtm&IIMpjG#11lK>-t*`?mp~>(<<# zmHlWHYOe$Gwh%~R@iD;p8Pba{=@2B%m+>50-OBl7tx&?~FcbCkF@K)%3wgBJjlcUF zu)Z5OJrzG^=FI-O$tp2Aw&XLr+q-V1ko`8nG(xr&(m_R7S&h4&#Ea##w&wdcr_GxV z+dFvno=$coX!Co8N3QT3-Wo%cZj0i^HKJi3H0BM5N1u5ml6bh~HQa{1AQ*7)rs*by ztXAi2WYDdtwq>!siGaA4ORHEHE)+RHvkvxC^E*G?LTIrljXPV+Z!F8IO4A%R*P= za{oSaB)jxn;k6vc{I0HeGhli-X`m3(D9s~7t|YQeJyA49t6Ileq}eV zyWbBVe`U?X$?2%SiYm=>O)~5nbmn=!vB>jjmc%~adGmGD7P1buwWK|GU=`Wn!gJqf zx@8&6{W5Wly$083G#L|Dy*#r?pMG@AZDF?mG&5rHB21?PSnX+R^a`fU9+7 z$L7*qf3^_`^;u!s*AjWhW->&~^3^JF4;G)xO1fj>6#fj_t=!;BWM`zVRN;`^cKvPj zUKNFs$c-45RE6qGi22+63K=TM253(nUUK8CZFI#UF<%&XR~pT}&YC2dd51?aV+S$3 zS7!5Bob$?+k%&XiW{Vgav$>sR?3W3^ZklJa3pPl#4g|c+$&zK?XIibEEfj+mVxXRA z&A;j!OW63{6$v_wH4It|6P;fvTeL^`*(Xm45_vG}pKR`aid|Va1V6bjnOh=?k$f6b~$ zxMQ*|>d^N9r!ZrEk;j|buZj+OT77?e>jL$9Wy*-C#}R0Bxf63*$~t3(X6{DqXHBzl zXnr&bsqr0H`x>;idO2-*Ys{|qn%;TC@fxpUe!@x+0DQy3;s)6UBZllYxn!_0606ak z8=oz7$tcW?5=I{Q3S%6do(_cmX|3^7YeV(I<(E*VFi~m13-SOZ)SL}hfTOOj2#lz>o0SIOPJ8(wHX?F zpDWIfi2Y1ZA6jb_v6q1_399*Jq=sX9g66jKTtlsCP^77;oZ>+C;*p6OD0 zxPQqF$g3}`f7bnHDRzvZ7=zx0W;TAE;4@0vpLTa3XlyOeWIrEkw!<577(Bz^(5w6F z09b|(z}pwAsoT}!iGOOe|CmDKnX8UkE1Z+~G54aJ`3eLggW`gLW43P(F>~lY_7T- zE%{OkKe`}gTrHrYWM#Hm@v|6`H`-dFDp7`m9;4Y(r7z|Z=dB;|E7`4^DH^s#CyZ4I zQ^#BXwFr4bGB_wKEWo?v4RXUHgW*N9zH9`g+51&03~L5+BK7N5i-lP<1-?MYVXJQd5j>rAtLaeqLF4Fk(PH-M^LK#f@ zx2ruB8E^4?af1UCqpQtc3CcXItogjg#u$g~e0_~ayTz{Jm0pK8sPHZewtnJ4`tdf< zU&`#LeHw19$BY)foA20eD}O{QhME1wDpjK+(;S}%zUT>}OP6|}P zJ;%A*10%5nqluXNeWvyLsSRmE3Vv7m;r(5nnW@dy;nRb;dU^UpKO2b^yr(vcs!3IJ zn0m`ly0`6>1Fl93&e4WSu}vR#*I>Q?b^iWLhL^C-2iGo;@2VQnityBkSIjszm}^Db zk+z@hSSXkKvAmWk3xL2dP0&|`&0-vNs5N(vN`c}2PsBHKPB#nrT&O?0U`nv`t{w${=zbY7kZ+x`InGY=qXDN|(uE-cR|<--Yu{RC z{_^1~1>zr$-mnvW5v$VISLED3UJ=>_4_S^0k1fz*{O=wYr1@0A=7E--9Yt2*|JtYM zi@mW42$U1`vILu2kFU*P=VHPET9z%z@0{TJi1 z_1C8(z_QeS(0*YPUYsby_U(xq&3b> z2kypMzVz(9z17=62iwNi?aY4WQ>$K`?&)1!d~eUsl1DFYGi;yy^46m#KlOrv=fFa{ z@_lSqwmxZl^6c5ZZ?}5n>kR(?X?wI~%C(F6pxu%I+A+Y{rO?_sW8hkf@Asl>|NQ7* z?)P`jVPoxNaFjI&*uXBt9IY-)L#TD=%@p3;sy?cJgqA_yz9Svv5De!!oa1hUlfgjN2h{jgBWg{)!JEjDW(QIjuD6T>Rv|O`zZhHef~qt`7JGoC^Noy(-vcGw8?@2L|)Wvw?k3;2}|g;!8M=mO26j8*V-E zE1Eoe_U?+0Nwr(Jj%Kd31D)?45DknM)Wdrgv&*ylcTW7@FJ=adEMara za?yF(zyYV_YacE9KCejd^SW9mf?bP0l+XkKYd1}0 literal 0 HcmV?d00001 diff --git a/docs/diagrams/AddExercise.puml b/docs/diagrams/AddExercise.puml new file mode 100644 index 0000000000..fbb13a2e92 --- /dev/null +++ b/docs/diagrams/AddExercise.puml @@ -0,0 +1,20 @@ +@startuml +'https://plantuml.com/sequence-diagram + + +actor User +participant ":AddCommand" as add +participant ":Parser" as parser +participant ":Exercise" as exercise +participant ":WorkoutList" as list +participant ":Workout" as workout + +User -> add: UserInput +add -> parser: processCommand(UserInput) +parser -> exercise: processAdd(arguments) +add <-- exercise: toAdd:Exercise +add -> list: execute() +list -> workout: getCurrentWorkout() +list <-- workout: currentWorkout:Workout +list -> workout: addExercise(toAdd) +@enduml \ No newline at end of file From e5b4149da72229c887969e869483d11347c5a5df Mon Sep 17 00:00:00 2001 From: calebcjl Date: Mon, 27 Mar 2023 11:46:09 +0800 Subject: [PATCH 056/152] Add add calorie feature and refactor commands into packages Classes added: 1. CalorieTracker 2. FoodList 3. AddCalorieCommaand --- .../seedu/calorietracker/CalorieTracker.java | 55 +++++++++++++ .../java/seedu/calorietracker/FoodList.java | 23 ++++++ src/main/java/seedu/commands/Command.java | 7 +- src/main/java/seedu/commands/EndCommand.java | 14 ---- src/main/java/seedu/commands/ExitCommand.java | 1 + .../java/seedu/commands/IncorrectCommand.java | 1 + .../caloriecommands/AddCalorieCommand.java | 23 ++++++ .../AddWorkoutCommand.java} | 11 +-- .../DeleteWorkoutCommand.java} | 8 +- .../workoutcommands/EndWorkoutCommand.java | 15 ++++ .../HelpWorkoutCommand.java} | 7 +- .../ListWorkoutCommand.java} | 8 +- .../StartWorkoutCommand.java} | 11 +-- .../ViewWorkoutCommand.java} | 8 +- src/main/java/seedu/duke/Duke.java | 17 ++-- src/main/java/seedu/parser/Parser.java | 77 ++++++++++++++----- src/main/java/seedu/ui/Ui.java | 17 ++-- .../workout/Exercise.java | 2 +- .../{ => workouttracker}/workout/Workout.java | 66 ++++++++-------- .../workout/WorkoutList.java | 8 +- ...ndTest.java => AddWorkoutCommandTest.java} | 6 +- .../ListWorkoutCommandTest.java} | 8 +- src/test/java/seedu/parser/ParserTest.java | 1 + .../java/seedu/workout/WorkoutListTest.java | 3 + src/test/java/seedu/workout/WorkoutTest.java | 2 + 25 files changed, 279 insertions(+), 120 deletions(-) create mode 100644 src/main/java/seedu/calorietracker/CalorieTracker.java create mode 100644 src/main/java/seedu/calorietracker/FoodList.java delete mode 100644 src/main/java/seedu/commands/EndCommand.java create mode 100644 src/main/java/seedu/commands/caloriecommands/AddCalorieCommand.java rename src/main/java/seedu/commands/{AddCommand.java => workoutcommands/AddWorkoutCommand.java} (56%) rename src/main/java/seedu/commands/{DeleteCommand.java => workoutcommands/DeleteWorkoutCommand.java} (55%) create mode 100644 src/main/java/seedu/commands/workoutcommands/EndWorkoutCommand.java rename src/main/java/seedu/commands/{HelpCommand.java => workoutcommands/HelpWorkoutCommand.java} (77%) rename src/main/java/seedu/commands/{ListCommand.java => workoutcommands/ListWorkoutCommand.java} (66%) rename src/main/java/seedu/commands/{StartCommand.java => workoutcommands/StartWorkoutCommand.java} (68%) rename src/main/java/seedu/commands/{ViewCommand.java => workoutcommands/ViewWorkoutCommand.java} (53%) rename src/main/java/seedu/{ => workouttracker}/workout/Exercise.java (91%) rename src/main/java/seedu/{ => workouttracker}/workout/Workout.java (77%) rename src/main/java/seedu/{ => workouttracker}/workout/WorkoutList.java (94%) rename src/test/java/seedu/commands/{AddCommandTest.java => AddWorkoutCommandTest.java} (86%) rename src/test/java/seedu/{command/ListCommandTest.java => commands/ListWorkoutCommandTest.java} (89%) diff --git a/src/main/java/seedu/calorietracker/CalorieTracker.java b/src/main/java/seedu/calorietracker/CalorieTracker.java new file mode 100644 index 0000000000..6ee228697a --- /dev/null +++ b/src/main/java/seedu/calorietracker/CalorieTracker.java @@ -0,0 +1,55 @@ +package seedu.calorietracker; + + +import java.util.Date; +import java.util.HashMap; + +import static seedu.commands.caloriecommands.AddCalorieCommand.CALORIES_NOT_GIVEN; + +public class CalorieTracker { + private final HashMap totalCaloriesConsumedInDay; + private FoodList foodList; + + public CalorieTracker() { + totalCaloriesConsumedInDay = new HashMap<>(); + foodList = new FoodList(); + } + public CalorieTracker(FoodList foodlist) { + totalCaloriesConsumedInDay = new HashMap<>(); + this.foodList = foodlist; + } + + public void addCalories(Date date, String food, int calories) { + if (calories == CALORIES_NOT_GIVEN && !foodList.contains(food)) { + System.out.println(food + " has not been added previously. Please also indicate calorie count."); + return; + } + + int caloriesInFood; + if (calories == CALORIES_NOT_GIVEN) { + caloriesInFood = foodList.getCalories(food); + } else if (isValidCalories(calories)){ + foodList.addFood(food, calories); + caloriesInFood = calories; + } else { + System.out.println("Calories count is invalid"); + return; + } + + System.out.println("Consumed additional " + caloriesInFood + "kcal."); + + if (totalCaloriesConsumedInDay.containsKey(date)) { + totalCaloriesConsumedInDay.compute(date, (key, value) -> value + caloriesInFood); + } else { + totalCaloriesConsumedInDay.put(date, caloriesInFood); + } + } + + public int getCalories(Date date) { + return totalCaloriesConsumedInDay.get(date); + } + + private static boolean isValidCalories(int calories) { + return calories >= 0; + } +} diff --git a/src/main/java/seedu/calorietracker/FoodList.java b/src/main/java/seedu/calorietracker/FoodList.java new file mode 100644 index 0000000000..95d80d0935 --- /dev/null +++ b/src/main/java/seedu/calorietracker/FoodList.java @@ -0,0 +1,23 @@ +package seedu.calorietracker; + +import java.util.HashMap; + +public class FoodList { + private final HashMap foodCalories; + + public FoodList() { + foodCalories = new HashMap<>(); + } + + public void addFood(String name, int calories) { + foodCalories.put(name, calories); + } + + public int getCalories(String food) { + return foodCalories.get(food); + } + + public boolean contains(String food) { + return foodCalories.containsKey(food); + } +} diff --git a/src/main/java/seedu/commands/Command.java b/src/main/java/seedu/commands/Command.java index de056467b0..745a3d58bf 100644 --- a/src/main/java/seedu/commands/Command.java +++ b/src/main/java/seedu/commands/Command.java @@ -1,14 +1,17 @@ package seedu.commands; -import seedu.workout.WorkoutList; +import seedu.calorietracker.CalorieTracker; +import seedu.workouttracker.workout.WorkoutList; public class Command { protected WorkoutList workoutList; + protected CalorieTracker calorieTracker; protected Command() { } - public void setData(WorkoutList workoutList) { + public void setData(WorkoutList workoutList, CalorieTracker calorieTracker) { this.workoutList = workoutList; + this.calorieTracker = calorieTracker; } public void execute() { diff --git a/src/main/java/seedu/commands/EndCommand.java b/src/main/java/seedu/commands/EndCommand.java deleted file mode 100644 index 444c365ef8..0000000000 --- a/src/main/java/seedu/commands/EndCommand.java +++ /dev/null @@ -1,14 +0,0 @@ -package seedu.commands; - -import seedu.workout.WorkoutList; - -public class EndCommand extends Command { - public EndCommand() { - } - - public void execute() { - workoutList.setCurrentWorkoutIndex(WorkoutList.NO_CURRENT_WORKOUT); - System.out.println("Great job completing your workout!"); - } -} - diff --git a/src/main/java/seedu/commands/ExitCommand.java b/src/main/java/seedu/commands/ExitCommand.java index 1501e6b669..9f08454437 100644 --- a/src/main/java/seedu/commands/ExitCommand.java +++ b/src/main/java/seedu/commands/ExitCommand.java @@ -1,5 +1,6 @@ package seedu.commands; + public class ExitCommand extends Command { public static boolean isExit(Command command) { diff --git a/src/main/java/seedu/commands/IncorrectCommand.java b/src/main/java/seedu/commands/IncorrectCommand.java index 480b43a906..9d8e663d5e 100644 --- a/src/main/java/seedu/commands/IncorrectCommand.java +++ b/src/main/java/seedu/commands/IncorrectCommand.java @@ -1,5 +1,6 @@ package seedu.commands; + public class IncorrectCommand extends Command { public IncorrectCommand() { diff --git a/src/main/java/seedu/commands/caloriecommands/AddCalorieCommand.java b/src/main/java/seedu/commands/caloriecommands/AddCalorieCommand.java new file mode 100644 index 0000000000..6120f6f13e --- /dev/null +++ b/src/main/java/seedu/commands/caloriecommands/AddCalorieCommand.java @@ -0,0 +1,23 @@ +package seedu.commands.caloriecommands; + +import seedu.commands.Command; + +import java.util.Date; + +public class AddCalorieCommand extends Command { + public static final int CALORIES_NOT_GIVEN = -1; + private Date date; + private String food; + private int calories; + + public AddCalorieCommand(Date date, String food, int calories) { + this.date = date; + this.food = food; + this.calories = calories; + } + + @Override + public void execute() { + calorieTracker.addCalories(date, food, calories); + } +} diff --git a/src/main/java/seedu/commands/AddCommand.java b/src/main/java/seedu/commands/workoutcommands/AddWorkoutCommand.java similarity index 56% rename from src/main/java/seedu/commands/AddCommand.java rename to src/main/java/seedu/commands/workoutcommands/AddWorkoutCommand.java index 0f086ca1a1..e105a76542 100644 --- a/src/main/java/seedu/commands/AddCommand.java +++ b/src/main/java/seedu/commands/workoutcommands/AddWorkoutCommand.java @@ -1,12 +1,13 @@ -package seedu.commands; +package seedu.commands.workoutcommands; -import seedu.workout.Exercise; -import seedu.workout.WorkoutList; +import seedu.commands.Command; +import seedu.workouttracker.workout.Exercise; +import seedu.workouttracker.workout.WorkoutList; -public class AddCommand extends Command { +public class AddWorkoutCommand extends Command { private Exercise toAdd; - public AddCommand(Exercise toAdd) { + public AddWorkoutCommand(Exercise toAdd) { this.toAdd = toAdd; } diff --git a/src/main/java/seedu/commands/DeleteCommand.java b/src/main/java/seedu/commands/workoutcommands/DeleteWorkoutCommand.java similarity index 55% rename from src/main/java/seedu/commands/DeleteCommand.java rename to src/main/java/seedu/commands/workoutcommands/DeleteWorkoutCommand.java index be438d997f..764a766b1f 100644 --- a/src/main/java/seedu/commands/DeleteCommand.java +++ b/src/main/java/seedu/commands/workoutcommands/DeleteWorkoutCommand.java @@ -1,11 +1,13 @@ -package seedu.commands; +package seedu.commands.workoutcommands; + +import seedu.commands.Command; import java.util.Date; -public class DeleteCommand extends Command { +public class DeleteWorkoutCommand extends Command { Date workoutToDeleteDate; - public DeleteCommand(Date workoutToDeleteDate) { + public DeleteWorkoutCommand(Date workoutToDeleteDate) { this.workoutToDeleteDate = workoutToDeleteDate; } diff --git a/src/main/java/seedu/commands/workoutcommands/EndWorkoutCommand.java b/src/main/java/seedu/commands/workoutcommands/EndWorkoutCommand.java new file mode 100644 index 0000000000..9fbde30c10 --- /dev/null +++ b/src/main/java/seedu/commands/workoutcommands/EndWorkoutCommand.java @@ -0,0 +1,15 @@ +package seedu.commands.workoutcommands; + +import seedu.commands.Command; +import seedu.workouttracker.workout.WorkoutList; + +public class EndWorkoutCommand extends Command { + public EndWorkoutCommand() { + } + + public void execute() { + workoutList.setCurrentWorkoutIndex(WorkoutList.NO_CURRENT_WORKOUT); + System.out.println("Great job completing your workout!"); + } +} + diff --git a/src/main/java/seedu/commands/HelpCommand.java b/src/main/java/seedu/commands/workoutcommands/HelpWorkoutCommand.java similarity index 77% rename from src/main/java/seedu/commands/HelpCommand.java rename to src/main/java/seedu/commands/workoutcommands/HelpWorkoutCommand.java index 4cac48f62e..9953e1ffb9 100644 --- a/src/main/java/seedu/commands/HelpCommand.java +++ b/src/main/java/seedu/commands/workoutcommands/HelpWorkoutCommand.java @@ -1,9 +1,10 @@ -package seedu.commands; +package seedu.commands.workoutcommands; +import seedu.commands.Command; import seedu.ui.Ui; -public class HelpCommand extends Command { - public HelpCommand(){} +public class HelpWorkoutCommand extends Command { + public HelpWorkoutCommand(){} public void execute() { System.out.println("Here are the list of commands that you can use:"); diff --git a/src/main/java/seedu/commands/ListCommand.java b/src/main/java/seedu/commands/workoutcommands/ListWorkoutCommand.java similarity index 66% rename from src/main/java/seedu/commands/ListCommand.java rename to src/main/java/seedu/commands/workoutcommands/ListWorkoutCommand.java index f7ed0975db..224fb0a96c 100644 --- a/src/main/java/seedu/commands/ListCommand.java +++ b/src/main/java/seedu/commands/workoutcommands/ListWorkoutCommand.java @@ -1,13 +1,15 @@ -package seedu.commands; +package seedu.commands.workoutcommands; +import seedu.commands.Command; + /** * This is the class for executing the list command */ -public class ListCommand extends Command { +public class ListWorkoutCommand extends Command { //@@ author ZIZI-czh - public ListCommand() { + public ListWorkoutCommand() { } diff --git a/src/main/java/seedu/commands/StartCommand.java b/src/main/java/seedu/commands/workoutcommands/StartWorkoutCommand.java similarity index 68% rename from src/main/java/seedu/commands/StartCommand.java rename to src/main/java/seedu/commands/workoutcommands/StartWorkoutCommand.java index 650ecf13af..cb372375fa 100644 --- a/src/main/java/seedu/commands/StartCommand.java +++ b/src/main/java/seedu/commands/workoutcommands/StartWorkoutCommand.java @@ -1,14 +1,15 @@ -package seedu.commands; +package seedu.commands.workoutcommands; -import seedu.workout.Workout; -import seedu.workout.WorkoutList; +import seedu.commands.Command; +import seedu.workouttracker.workout.Workout; +import seedu.workouttracker.workout.WorkoutList; import java.util.Date; -public class StartCommand extends Command { +public class StartWorkoutCommand extends Command { private Date date; - public StartCommand(Date date) { + public StartWorkoutCommand(Date date) { this.date = date; } diff --git a/src/main/java/seedu/commands/ViewCommand.java b/src/main/java/seedu/commands/workoutcommands/ViewWorkoutCommand.java similarity index 53% rename from src/main/java/seedu/commands/ViewCommand.java rename to src/main/java/seedu/commands/workoutcommands/ViewWorkoutCommand.java index 5c57a908d4..1dd8169125 100644 --- a/src/main/java/seedu/commands/ViewCommand.java +++ b/src/main/java/seedu/commands/workoutcommands/ViewWorkoutCommand.java @@ -1,10 +1,12 @@ -package seedu.commands; +package seedu.commands.workoutcommands; + +import seedu.commands.Command; import java.util.Date; -public class ViewCommand extends Command { +public class ViewWorkoutCommand extends Command { Date workoutToViewDate; - public ViewCommand(Date workoutToViewDate) { + public ViewWorkoutCommand(Date workoutToViewDate) { this.workoutToViewDate = workoutToViewDate; } diff --git a/src/main/java/seedu/duke/Duke.java b/src/main/java/seedu/duke/Duke.java index 78a48b5e52..fe57d559b0 100644 --- a/src/main/java/seedu/duke/Duke.java +++ b/src/main/java/seedu/duke/Duke.java @@ -1,27 +1,24 @@ package seedu.duke; +import seedu.calorietracker.CalorieTracker; import seedu.commands.Command; import seedu.commands.ExitCommand; import seedu.parser.Parser; import seedu.ui.Ui; -import seedu.workout.WorkoutList; +import seedu.workouttracker.workout.WorkoutList; public class Duke { - - private Ui ui; private WorkoutList workoutList; + private CalorieTracker calorieTracker; public static void main(String[] args) { new Duke().run(); } private void run() { - ui = new Ui(); workoutList = new WorkoutList(); - Ui.showLine(); - Ui.showLogo(); - Ui.showLine(); - Ui.showGreeting(); + calorieTracker = new CalorieTracker(); + Ui.showWelcomeMessage(); executeCommandUntilExit(); Ui.showExit(); @@ -30,9 +27,9 @@ private void run() { private void executeCommandUntilExit() { Command command; do { - String userInput = ui.getUserInput(); + String userInput = Ui.getUserInput(); command = new Parser().processCommand(userInput); - command.setData(workoutList); + command.setData(workoutList, calorieTracker); command.execute(); } while (!ExitCommand.isExit(command)); } diff --git a/src/main/java/seedu/parser/Parser.java b/src/main/java/seedu/parser/Parser.java index 89c0bec7aa..d2999a739a 100644 --- a/src/main/java/seedu/parser/Parser.java +++ b/src/main/java/seedu/parser/Parser.java @@ -1,17 +1,18 @@ package seedu.parser; -import seedu.commands.AddCommand; import seedu.commands.Command; -import seedu.commands.DeleteCommand; -import seedu.commands.EndCommand; +import seedu.commands.caloriecommands.AddCalorieCommand; +import seedu.commands.workoutcommands.AddWorkoutCommand; +import seedu.commands.workoutcommands.DeleteWorkoutCommand; +import seedu.commands.workoutcommands.EndWorkoutCommand; import seedu.commands.ExitCommand; -import seedu.commands.HelpCommand; +import seedu.commands.workoutcommands.HelpWorkoutCommand; import seedu.commands.IncorrectCommand; -import seedu.commands.ListCommand; -import seedu.commands.StartCommand; -import seedu.commands.ViewCommand; -import seedu.workout.Exercise; +import seedu.commands.workoutcommands.ListWorkoutCommand; +import seedu.commands.workoutcommands.StartWorkoutCommand; +import seedu.commands.workoutcommands.ViewWorkoutCommand; +import seedu.workouttracker.workout.Exercise; import java.text.DateFormat; import java.text.ParseException; @@ -20,10 +21,16 @@ import java.util.regex.Matcher; import java.util.regex.Pattern; +import static seedu.commands.caloriecommands.AddCalorieCommand.CALORIES_NOT_GIVEN; + public class Parser { + public static final DateFormat DATE_FORMAT = new SimpleDateFormat("dd/MM/yy"); private static final int EXERCISE_NAME_INDEX = 0; private static final int WEIGHT_INDEX = 1; private static final int REPS_PER_SET_INDEX = 2; + private static final int DATE_INDEX = 0; + private static final int FOOD_INDEX = 1; + private static final int CALORIES_INDEX = 2; private static final Pattern BASIC_COMMAND_FORMAT = Pattern.compile("(?\\S+)(?" + ".*)"); @@ -48,30 +55,60 @@ public Command processCommand(String userInput) { // If there are arguments after the "/list" command, return an IncorrectCommand instance return new IncorrectCommand(); } - return new ListCommand(); + return new ListWorkoutCommand(); case "/view": return processView(arguments); case "/end": - return new EndCommand(); + return new EndWorkoutCommand(); case "/exit": return new ExitCommand(); case "/help": - return new HelpCommand(); + return new HelpWorkoutCommand(); + case "/cadd": + return processAddCalories(arguments); default: return new IncorrectCommand(); } } + private Command processAddCalories(String arguments) { + Date date; + String food; + int calories; + + try { + String[] addCaloriesArguments = arguments.trim().split("\\s+", 3); + date = DATE_FORMAT.parse(addCaloriesArguments[DATE_INDEX].trim()); + food = addCaloriesArguments[FOOD_INDEX].trim(); + + if (addCaloriesArguments.length == 3) { + calories = Integer.parseInt(addCaloriesArguments[CALORIES_INDEX].trim()); + } else { + calories = CALORIES_NOT_GIVEN; + } + } catch (ParseException e) { + System.out.println("Invalid date format. Please enter the date in the format dd/mm/yy."); + return new IncorrectCommand(); + } catch (NumberFormatException e) { + System.out.println("Invalid calories format. Please enter an integer"); + return new IncorrectCommand(); + } catch (ArrayIndexOutOfBoundsException e) { + System.out.println("Invalid command format."); + return new IncorrectCommand(); + } + + return new AddCalorieCommand(date, food, calories); + } + private Command processStart(String arguments) { Date date; try { - DateFormat dateFormat = new SimpleDateFormat("dd/MM/yy"); - date = dateFormat.parse(arguments); + date = DATE_FORMAT.parse(arguments); } catch (ParseException e) { System.out.println("Invalid date format. Please enter the date in the format dd/mm/yy."); return new IncorrectCommand(); } - return new StartCommand(date); + return new StartWorkoutCommand(date); } private Command processAdd(String arguments) { @@ -87,33 +124,31 @@ private Command processAdd(String arguments) { } catch (ArrayIndexOutOfBoundsException e) { return new IncorrectCommand(); } - return new AddCommand(toAdd); + return new AddWorkoutCommand(toAdd); } private Command processDelete(String arguments) { Date date; try { - DateFormat dateFormat = new SimpleDateFormat("dd/MM/yy"); - date = dateFormat.parse(arguments); + date = DATE_FORMAT.parse(arguments); } catch (ParseException e) { System.out.println("Invalid date format. Please enter the date in the format dd/mm/yy."); return new IncorrectCommand(); } - return new DeleteCommand(date); + return new DeleteWorkoutCommand(date); } private Command processView(String arguments) { Date date; try { - DateFormat dateFormat = new SimpleDateFormat("dd/MM/yy"); - date = dateFormat.parse(arguments); + date = DATE_FORMAT.parse(arguments); System.out.println("Here are the list of exercises on" + date + ":"); } catch (ParseException e) { System.out.println("Invalid date format. Please enter the date in the format dd/mm/yy."); return new IncorrectCommand(); } - return new ViewCommand(date); + return new ViewWorkoutCommand(date); } } diff --git a/src/main/java/seedu/ui/Ui.java b/src/main/java/seedu/ui/Ui.java index bfd1e17f91..ff30b8aada 100644 --- a/src/main/java/seedu/ui/Ui.java +++ b/src/main/java/seedu/ui/Ui.java @@ -13,8 +13,8 @@ public class Ui { "|__| |__| |__| /________|"; private static final String ENDING_MESSAGE = "Thank you, hope you had a great workout!!!"; private static final String LINE = "======================================="; - private static final String LINE_SEPERATOR = "----------------------------------"; - private final Scanner in = new Scanner(System.in); + private static final String LINE_SEPARATOR = "----------------------------------"; + private static final Scanner in = new Scanner(System.in); public static void showGreeting() { @@ -30,11 +30,18 @@ public static void showLogo(){ public static void showLine(){ System.out.println(LINE); } - public static void showseperator(){ - System.out.println(LINE_SEPERATOR); + public static void showSeparator(){ + System.out.println(LINE_SEPARATOR); } - public String getUserInput() { + public static String getUserInput() { return in.nextLine(); } + + public static void showWelcomeMessage() { + showLine(); + showLogo(); + showLine(); + showGreeting(); + } } diff --git a/src/main/java/seedu/workout/Exercise.java b/src/main/java/seedu/workouttracker/workout/Exercise.java similarity index 91% rename from src/main/java/seedu/workout/Exercise.java rename to src/main/java/seedu/workouttracker/workout/Exercise.java index 60ac0b1a04..be6cfd9860 100644 --- a/src/main/java/seedu/workout/Exercise.java +++ b/src/main/java/seedu/workouttracker/workout/Exercise.java @@ -1,4 +1,4 @@ -package seedu.workout; +package seedu.workouttracker.workout; public class Exercise { diff --git a/src/main/java/seedu/workout/Workout.java b/src/main/java/seedu/workouttracker/workout/Workout.java similarity index 77% rename from src/main/java/seedu/workout/Workout.java rename to src/main/java/seedu/workouttracker/workout/Workout.java index a09d1c4b4f..84e2b26a88 100644 --- a/src/main/java/seedu/workout/Workout.java +++ b/src/main/java/seedu/workouttracker/workout/Workout.java @@ -1,34 +1,32 @@ -package seedu.workout; - - -import java.util.ArrayList; -import java.util.Date; - -public class Workout { - private Date date; - private ArrayList workoutExercises; - - public Workout(Date date) { - //SimpleDateFormat dateFormat = new SimpleDateFormat("MM/dd/yyyy"); - //this.date = dateFormat.format(date); - this.date = date; - workoutExercises = new ArrayList<>(); - } - - public void addExercise(Exercise exercise) { - workoutExercises.add(exercise); - System.out.println("Added " + exercise); - } - - public Date getDate() { - return date; - } - - public void setDate(Date date) { - this.date = date; - } - public ArrayList getExercises() { - return workoutExercises; - } -} - +package seedu.workouttracker.workout; + + +import java.util.ArrayList; +import java.util.Date; + +public class Workout { + private Date date; + private ArrayList workoutExercises; + + public Workout(Date date) { + this.date = date; + workoutExercises = new ArrayList<>(); + } + + public void addExercise(Exercise exercise) { + workoutExercises.add(exercise); + System.out.println("Added " + exercise); + } + + public Date getDate() { + return date; + } + + public void setDate(Date date) { + this.date = date; + } + public ArrayList getExercises() { + return workoutExercises; + } +} + diff --git a/src/main/java/seedu/workout/WorkoutList.java b/src/main/java/seedu/workouttracker/workout/WorkoutList.java similarity index 94% rename from src/main/java/seedu/workout/WorkoutList.java rename to src/main/java/seedu/workouttracker/workout/WorkoutList.java index 44a537c570..43ce06df0a 100644 --- a/src/main/java/seedu/workout/WorkoutList.java +++ b/src/main/java/seedu/workouttracker/workout/WorkoutList.java @@ -1,4 +1,4 @@ -package seedu.workout; +package seedu.workouttracker.workout; import seedu.ui.Ui; @@ -31,7 +31,7 @@ public void removeWorkout(Date date) { if (workout.getDate().equals(date)) { workoutList.remove(workout); System.out.println("Workout deleted successfully."); - Ui.showseperator(); + Ui.showSeparator(); return; } } @@ -51,7 +51,7 @@ public void showWorkoutList() { String formattedDate = dateFormat.format(workout.getDate()); System.out.println(formattedDate); } - Ui.showseperator(); + Ui.showSeparator(); } else { //if there is no workout have been done System.out.println("Haven't start your workout, please enter your workout"); @@ -66,7 +66,7 @@ public void displayWorkout(Date date) { for (Workout workout : workoutList) { if (workout.getDate().equals(date)) { System.out.println(workout.getExercises()); - Ui.showseperator(); + Ui.showSeparator(); return; } } diff --git a/src/test/java/seedu/commands/AddCommandTest.java b/src/test/java/seedu/commands/AddWorkoutCommandTest.java similarity index 86% rename from src/test/java/seedu/commands/AddCommandTest.java rename to src/test/java/seedu/commands/AddWorkoutCommandTest.java index 50f05e0e67..61e6487728 100644 --- a/src/test/java/seedu/commands/AddCommandTest.java +++ b/src/test/java/seedu/commands/AddWorkoutCommandTest.java @@ -1,8 +1,8 @@ package seedu.commands; import org.junit.jupiter.api.Test; -import seedu.workout.Exercise; -import seedu.workout.Workout; +import seedu.workouttracker.workout.Exercise; +import seedu.workouttracker.workout.Workout; import java.text.ParseException; import java.text.SimpleDateFormat; @@ -11,7 +11,7 @@ import static org.junit.jupiter.api.Assertions.assertEquals; -public class AddCommandTest { +public class AddWorkoutCommandTest { private static final SimpleDateFormat dateFormat = new SimpleDateFormat("dd/MM/yy"); private static final Date date; diff --git a/src/test/java/seedu/command/ListCommandTest.java b/src/test/java/seedu/commands/ListWorkoutCommandTest.java similarity index 89% rename from src/test/java/seedu/command/ListCommandTest.java rename to src/test/java/seedu/commands/ListWorkoutCommandTest.java index 578808349b..89311b0b25 100644 --- a/src/test/java/seedu/command/ListCommandTest.java +++ b/src/test/java/seedu/commands/ListWorkoutCommandTest.java @@ -1,8 +1,8 @@ -package seedu.command; +package seedu.commands; import org.junit.jupiter.api.Test; -import seedu.workout.Workout; -import seedu.workout.WorkoutList; +import seedu.workouttracker.workout.Workout; +import seedu.workouttracker.workout.WorkoutList; import java.io.ByteArrayOutputStream; import java.io.PrintStream; @@ -11,7 +11,7 @@ import static org.junit.jupiter.api.Assertions.assertEquals; -public class ListCommandTest { +public class ListWorkoutCommandTest { //@@ author ZIZI-czh @Test diff --git a/src/test/java/seedu/parser/ParserTest.java b/src/test/java/seedu/parser/ParserTest.java index bc5e16b287..55f1f50636 100644 --- a/src/test/java/seedu/parser/ParserTest.java +++ b/src/test/java/seedu/parser/ParserTest.java @@ -1,6 +1,7 @@ package seedu.parser; import org.junit.jupiter.api.Test; + import seedu.commands.Command; import seedu.commands.IncorrectCommand; import static org.junit.jupiter.api.Assertions.assertTrue; diff --git a/src/test/java/seedu/workout/WorkoutListTest.java b/src/test/java/seedu/workout/WorkoutListTest.java index 084c252b47..0cae530d1f 100644 --- a/src/test/java/seedu/workout/WorkoutListTest.java +++ b/src/test/java/seedu/workout/WorkoutListTest.java @@ -1,6 +1,9 @@ package seedu.workout; import org.junit.jupiter.api.Test; +import seedu.workouttracker.workout.Workout; +import seedu.workouttracker.workout.WorkoutList; + import java.text.SimpleDateFormat; import java.util.Date; import static org.junit.jupiter.api.Assertions.assertEquals; diff --git a/src/test/java/seedu/workout/WorkoutTest.java b/src/test/java/seedu/workout/WorkoutTest.java index 67562f18af..f4642d10ba 100644 --- a/src/test/java/seedu/workout/WorkoutTest.java +++ b/src/test/java/seedu/workout/WorkoutTest.java @@ -1,6 +1,8 @@ package seedu.workout; import org.junit.jupiter.api.Test; +import seedu.workouttracker.workout.Workout; + import java.text.SimpleDateFormat; import java.util.Date; import static org.junit.jupiter.api.Assertions.assertEquals; From dc2b576735ac13ec876f4c7272fcfce418551b95 Mon Sep 17 00:00:00 2001 From: ZIZI-czh <77820516+ZIZI-czh@users.noreply.github.com> Date: Tue, 28 Mar 2023 01:22:31 +0800 Subject: [PATCH 057/152] try to solve conflict --- docs/uml/Architecture.puml | 11 ++++ src/main/java/seedu/commands/Command.java | 11 ++++ .../workoutcommands/DeleteWorkoutCommand.java | 31 ++++++++++- .../workoutcommands/ListWorkoutCommand.java | 33 +++++++++++- .../workoutcommands/StartWorkoutCommand.java | 6 +++ .../workoutcommands/ViewWorkoutCommand.java | 13 ++++- src/main/java/seedu/duke/Duke.java | 10 ++++ src/main/java/seedu/storage/ReadFile.java | 2 + src/main/java/seedu/storage/SaveFile.java | 2 + .../workouttracker/workout/WorkoutList.java | 13 +++-- .../seedu/commands/DeleteCommandTest.java | 52 +++++++++++++++++++ .../java/seedu/commands/ListCommandTest.java | 52 +++++++++++++++++++ .../commands/ListWorkoutCommandTest.java | 27 ++++++---- .../java/seedu/workout/WorkoutListTest.java | 33 ++---------- 14 files changed, 248 insertions(+), 48 deletions(-) create mode 100644 docs/uml/Architecture.puml create mode 100644 src/main/java/seedu/storage/ReadFile.java create mode 100644 src/main/java/seedu/storage/SaveFile.java create mode 100644 src/test/java/seedu/commands/DeleteCommandTest.java create mode 100644 src/test/java/seedu/commands/ListCommandTest.java diff --git a/docs/uml/Architecture.puml b/docs/uml/Architecture.puml new file mode 100644 index 0000000000..ac2c2d3913 --- /dev/null +++ b/docs/uml/Architecture.puml @@ -0,0 +1,11 @@ +@startuml +'https://plantuml.com/sequence-diagram + +autonumber + +Alice -> Bob: Authentication Request +Bob --> Alice: Authentication Response + +Alice -> Bob: Another authentication Request +Alice <-- Bob: another authentication Response +@enduml \ No newline at end of file diff --git a/src/main/java/seedu/commands/Command.java b/src/main/java/seedu/commands/Command.java index 745a3d58bf..49a263dec5 100644 --- a/src/main/java/seedu/commands/Command.java +++ b/src/main/java/seedu/commands/Command.java @@ -4,12 +4,23 @@ import seedu.workouttracker.workout.WorkoutList; public class Command { +<<<<<<< HEAD protected WorkoutList workoutList; protected CalorieTracker calorieTracker; protected Command() { } public void setData(WorkoutList workoutList, CalorieTracker calorieTracker) { +======= + public WorkoutList workoutList = new WorkoutList(); + protected Command() { + } + + public void setData(WorkoutList workoutList) { + if (workoutList == null) { + throw new IllegalArgumentException("WorkoutList cannot be null."); + } +>>>>>>> 7ac8556 (Refactor the code edit Junit Test for list and delete calss) this.workoutList = workoutList; this.calorieTracker = calorieTracker; } diff --git a/src/main/java/seedu/commands/workoutcommands/DeleteWorkoutCommand.java b/src/main/java/seedu/commands/workoutcommands/DeleteWorkoutCommand.java index 764a766b1f..783be031e7 100644 --- a/src/main/java/seedu/commands/workoutcommands/DeleteWorkoutCommand.java +++ b/src/main/java/seedu/commands/workoutcommands/DeleteWorkoutCommand.java @@ -2,18 +2,45 @@ import seedu.commands.Command; +import seedu.ui.Ui; +import seedu.workout.Workout; + import java.util.Date; public class DeleteWorkoutCommand extends Command { Date workoutToDeleteDate; +<<<<<<< HEAD:src/main/java/seedu/commands/workoutcommands/DeleteWorkoutCommand.java public DeleteWorkoutCommand(Date workoutToDeleteDate) { +======= + public DeleteCommand(Date workoutToDeleteDate) { + super(); +>>>>>>> 7ac8556 (Refactor the code edit Junit Test for list and delete calss):src/main/java/seedu/commands/DeleteCommand.java this.workoutToDeleteDate = workoutToDeleteDate; + setData(workoutList); + } @Override public void execute() { - workoutList.removeWorkout(workoutToDeleteDate); - } + if (workoutList == null) { + System.out.println("WorkoutList is null."); + return; + } + if(workoutList.workoutArrayList == null){ + System.out.println("the workout array list is empty"); + return; + } + for (Workout workout : workoutList.workoutArrayList) { + if (workout.getDate().equals(workoutToDeleteDate)) { + workoutList.workoutArrayList.remove(workout); + System.out.println("Workout deleted successfully."); + Ui.showseperator(); + return; + } + } + System.out.println("No workout found with the specified date."); + } + } diff --git a/src/main/java/seedu/commands/workoutcommands/ListWorkoutCommand.java b/src/main/java/seedu/commands/workoutcommands/ListWorkoutCommand.java index 224fb0a96c..18000df3a9 100644 --- a/src/main/java/seedu/commands/workoutcommands/ListWorkoutCommand.java +++ b/src/main/java/seedu/commands/workoutcommands/ListWorkoutCommand.java @@ -1,7 +1,14 @@ package seedu.commands.workoutcommands; +<<<<<<< HEAD:src/main/java/seedu/commands/workoutcommands/ListWorkoutCommand.java import seedu.commands.Command; +======= +import seedu.ui.Ui; +import seedu.workout.Workout; + +import java.text.SimpleDateFormat; +>>>>>>> 7ac8556 (Refactor the code edit Junit Test for list and delete calss):src/main/java/seedu/commands/ListCommand.java /** * This is the class for executing the list command @@ -9,17 +16,41 @@ public class ListWorkoutCommand extends Command { //@@ author ZIZI-czh +<<<<<<< HEAD:src/main/java/seedu/commands/workoutcommands/ListWorkoutCommand.java public ListWorkoutCommand() { +======= + public ListCommand() { + +>>>>>>> 7ac8556 (Refactor the code edit Junit Test for list and delete calss):src/main/java/seedu/commands/ListCommand.java } + /** * Show the list of date of the workout by calling the method in workoutList + * */ //@@ author ZIZI-czh @Override public void execute() { - workoutList.showWorkoutList(); + try { + if (!workoutList.workoutArrayList.isEmpty()) { + System.out.println("Here are the list of dates for your workout: "); + for (Workout workout : workoutList.workoutArrayList) { + SimpleDateFormat dateFormat = new SimpleDateFormat("dd-MM-yy"); + String formattedDate = dateFormat.format(workout.getDate()); + System.out.println(formattedDate); + } + Ui.showseperator(); + } else { + //if there is no workout have been done + System.out.println("Haven't start your workout, please enter your workout"); + } + + } catch (NullPointerException e) { + System.out.println("Haven't start your workout, please enter your workout"); + } + } } diff --git a/src/main/java/seedu/commands/workoutcommands/StartWorkoutCommand.java b/src/main/java/seedu/commands/workoutcommands/StartWorkoutCommand.java index cb372375fa..9355029ef9 100644 --- a/src/main/java/seedu/commands/workoutcommands/StartWorkoutCommand.java +++ b/src/main/java/seedu/commands/workoutcommands/StartWorkoutCommand.java @@ -9,8 +9,14 @@ public class StartWorkoutCommand extends Command { private Date date; +<<<<<<< HEAD:src/main/java/seedu/commands/workoutcommands/StartWorkoutCommand.java public StartWorkoutCommand(Date date) { +======= + public StartCommand(Date date) { + super(); +>>>>>>> 7ac8556 (Refactor the code edit Junit Test for list and delete calss):src/main/java/seedu/commands/StartCommand.java this.date = date; + setData(workoutList); } @Override diff --git a/src/main/java/seedu/commands/workoutcommands/ViewWorkoutCommand.java b/src/main/java/seedu/commands/workoutcommands/ViewWorkoutCommand.java index 1dd8169125..af525d2ed6 100644 --- a/src/main/java/seedu/commands/workoutcommands/ViewWorkoutCommand.java +++ b/src/main/java/seedu/commands/workoutcommands/ViewWorkoutCommand.java @@ -2,6 +2,9 @@ import seedu.commands.Command; +import seedu.ui.Ui; +import seedu.workout.Workout; + import java.util.Date; public class ViewWorkoutCommand extends Command { @@ -13,6 +16,14 @@ public ViewWorkoutCommand(Date workoutToViewDate) { public void execute() { - workoutList.displayWorkout(workoutToViewDate); + + for (Workout workout : workoutList.workoutArrayList) { + if (workout.getDate().equals(workoutToViewDate)) { + System.out.println(workout.getExercises()); + Ui.showseperator(); + return; + } + } + } } diff --git a/src/main/java/seedu/duke/Duke.java b/src/main/java/seedu/duke/Duke.java index fe57d559b0..ad018ca3f3 100644 --- a/src/main/java/seedu/duke/Duke.java +++ b/src/main/java/seedu/duke/Duke.java @@ -29,8 +29,18 @@ private void executeCommandUntilExit() { do { String userInput = Ui.getUserInput(); command = new Parser().processCommand(userInput); +<<<<<<< HEAD command.setData(workoutList, calorieTracker); command.execute(); +======= + try { + command.setData(workoutList); + command.execute(); + } catch (IllegalArgumentException e) { + System.out.println("Error: " + e.getMessage()); + // handle the exception in the appropriate way for your application + } +>>>>>>> 7ac8556 (Refactor the code edit Junit Test for list and delete calss) } while (!ExitCommand.isExit(command)); } } diff --git a/src/main/java/seedu/storage/ReadFile.java b/src/main/java/seedu/storage/ReadFile.java new file mode 100644 index 0000000000..d3ee230d19 --- /dev/null +++ b/src/main/java/seedu/storage/ReadFile.java @@ -0,0 +1,2 @@ +package seedu.storage;public class ReadFile { +} diff --git a/src/main/java/seedu/storage/SaveFile.java b/src/main/java/seedu/storage/SaveFile.java new file mode 100644 index 0000000000..96bf7a6c46 --- /dev/null +++ b/src/main/java/seedu/storage/SaveFile.java @@ -0,0 +1,2 @@ +package seedu.storage;public class SaveFile { +} diff --git a/src/main/java/seedu/workouttracker/workout/WorkoutList.java b/src/main/java/seedu/workouttracker/workout/WorkoutList.java index 43ce06df0a..a7cc53f5dd 100644 --- a/src/main/java/seedu/workouttracker/workout/WorkoutList.java +++ b/src/main/java/seedu/workouttracker/workout/WorkoutList.java @@ -9,16 +9,16 @@ public class WorkoutList { public static final int NO_CURRENT_WORKOUT = -1; - public ArrayList workoutList; + public ArrayList workoutArrayList; public int currentWorkoutIndex; public WorkoutList() { - workoutList = new ArrayList<>(); + workoutArrayList = new ArrayList<>(); currentWorkoutIndex = NO_CURRENT_WORKOUT; } public void addWorkout(Workout workout) { - workoutList.add(workout); + workoutArrayList.add(workout); currentWorkoutIndex = getLastIndex(); } @@ -26,6 +26,7 @@ public void setCurrentWorkoutIndex(int currentWorkoutIndex) { this.currentWorkoutIndex = currentWorkoutIndex; } +<<<<<<< HEAD:src/main/java/seedu/workouttracker/workout/WorkoutList.java public void removeWorkout(Date date) { for (Workout workout : workoutList) { if (workout.getDate().equals(date)) { @@ -71,11 +72,13 @@ public void displayWorkout(Date date) { } } } +======= +>>>>>>> 7ac8556 (Refactor the code edit Junit Test for list and delete calss):src/main/java/seedu/workout/WorkoutList.java public int getLastIndex() { - return workoutList.size() - 1; + return workoutArrayList.size() - 1; } public Workout getCurrentWorkout() { - return workoutList.get(currentWorkoutIndex); + return workoutArrayList.get(currentWorkoutIndex); } } diff --git a/src/test/java/seedu/commands/DeleteCommandTest.java b/src/test/java/seedu/commands/DeleteCommandTest.java new file mode 100644 index 0000000000..fedc8e02c5 --- /dev/null +++ b/src/test/java/seedu/commands/DeleteCommandTest.java @@ -0,0 +1,52 @@ +package seedu.commands; + +import org.junit.jupiter.api.Test; +import seedu.workout.Workout; +import seedu.workout.WorkoutList; +import java.text.SimpleDateFormat; +import java.util.Date; +import static org.junit.jupiter.api.Assertions.assertEquals; + +public class DeleteCommandTest { + + public SimpleDateFormat dateFormat = new SimpleDateFormat("dd/MM/yy"); + + + //@@ author guillaume-grn + @Test + public void testRemoveWorkout() throws Exception { + WorkoutList workoutLists = new WorkoutList(); + Command command = new Command(); + + String stringDate1 = "01/11/22"; + String stringDate2 = "02/11/22"; + Date date1 = dateFormat.parse(stringDate1); + Date date2 = dateFormat.parse(stringDate2); + Workout workout1 = new Workout(date1); + Workout workout2 = new Workout(date2); + workoutLists.addWorkout(workout1); + workoutLists.addWorkout(workout2); + command.setData(workoutLists); + + // Check that both workouts are in the list + assertEquals(2, workoutLists.workoutArrayList.size()); + + //DeleteCommand delete = new DeleteCommand(date1); + + + DeleteCommand delete = new DeleteCommand(date1); + delete.setData(workoutLists); + // Remove workout1 from the list + delete.execute(); + + // Check that workout1 was removed and workout2 is still in the list + assertEquals(1, workoutLists.workoutArrayList.size()); + assertEquals(date2, workoutLists.workoutArrayList.get(0).getDate()); + + // Try to remove workout1 again (should not be in the list) + delete.execute(); + + // Check that workout1 was not removed and the list size is still 1 + assertEquals(1, workoutLists.workoutArrayList.size()); + } +} diff --git a/src/test/java/seedu/commands/ListCommandTest.java b/src/test/java/seedu/commands/ListCommandTest.java new file mode 100644 index 0000000000..2846dfa327 --- /dev/null +++ b/src/test/java/seedu/commands/ListCommandTest.java @@ -0,0 +1,52 @@ +package seedu.commands; + +import org.junit.jupiter.api.Test; +import seedu.workouttracker.workout.Workout; +import seedu.workouttracker.workout.WorkoutList; + +import java.io.ByteArrayOutputStream; +import java.io.PrintStream; +import java.text.ParseException; +import java.text.SimpleDateFormat; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +<<<<<<<< HEAD:src/test/java/seedu/commands/ListWorkoutCommandTest.java +public class ListWorkoutCommandTest { + +======== +public class ListCommandTest { +>>>>>>>> 7ac8556 (Refactor the code edit Junit Test for list and delete calss):src/test/java/seedu/commands/ListCommandTest.java + //@@ author ZIZI-czh + @Test + public void testShowWorkoutList() throws ParseException { + // Create a new instance of the class that contains the showWorkoutList() method + // and add some sample data to the workoutList + SimpleDateFormat format = new SimpleDateFormat("dd/MM/yy"); + + // Redirect the console output to a stream for testing + ByteArrayOutputStream outContent = new ByteArrayOutputStream(); + System.setOut(new PrintStream(outContent)); + + // Call the method to be tested + // WorkoutList addList = new WorkoutList(); + WorkoutList workoutList = new WorkoutList(); + workoutList.addWorkout(new Workout(format.parse("11/11/23"))); + workoutList.addWorkout(new Workout(format.parse("11/10/23"))); + Command command = new Command(); + command.setData(workoutList); + ListCommand testList = new ListCommand(); + assertEquals(2, workoutList.workoutArrayList.size()); + + testList.setData(workoutList); + testList.execute(); + + // Assert that the console output matches the expected output + assertEquals("Here are the list of dates for your workout: " + System.lineSeparator() + + "11-11-23" + System.lineSeparator() + + "11-10-23" + System.lineSeparator() + + "----------------------------------" + System.lineSeparator(), + outContent.toString()); + + } +} diff --git a/src/test/java/seedu/commands/ListWorkoutCommandTest.java b/src/test/java/seedu/commands/ListWorkoutCommandTest.java index 89311b0b25..2846dfa327 100644 --- a/src/test/java/seedu/commands/ListWorkoutCommandTest.java +++ b/src/test/java/seedu/commands/ListWorkoutCommandTest.java @@ -11,32 +11,41 @@ import static org.junit.jupiter.api.Assertions.assertEquals; +<<<<<<<< HEAD:src/test/java/seedu/commands/ListWorkoutCommandTest.java public class ListWorkoutCommandTest { +======== +public class ListCommandTest { +>>>>>>>> 7ac8556 (Refactor the code edit Junit Test for list and delete calss):src/test/java/seedu/commands/ListCommandTest.java //@@ author ZIZI-czh @Test public void testShowWorkoutList() throws ParseException { // Create a new instance of the class that contains the showWorkoutList() method // and add some sample data to the workoutList - SimpleDateFormat format = new SimpleDateFormat("dd/MM/yy"); - // Redirect the console output to a stream for testing ByteArrayOutputStream outContent = new ByteArrayOutputStream(); System.setOut(new PrintStream(outContent)); - // Call the method to be tested - WorkoutList testList = new WorkoutList(); - testList.addWorkout(new Workout(format.parse("11/11/23"))); - testList.addWorkout(new Workout(format.parse("11/10/23"))); - testList.showWorkoutList(); + // WorkoutList addList = new WorkoutList(); + WorkoutList workoutList = new WorkoutList(); + workoutList.addWorkout(new Workout(format.parse("11/11/23"))); + workoutList.addWorkout(new Workout(format.parse("11/10/23"))); + Command command = new Command(); + command.setData(workoutList); + ListCommand testList = new ListCommand(); + assertEquals(2, workoutList.workoutArrayList.size()); + + testList.setData(workoutList); + testList.execute(); // Assert that the console output matches the expected output assertEquals("Here are the list of dates for your workout: " + System.lineSeparator() - + "11-11-23" + System.lineSeparator() - + "11-10-23" + System.lineSeparator(), + + "11-11-23" + System.lineSeparator() + + "11-10-23" + System.lineSeparator() + + "----------------------------------" + System.lineSeparator(), outContent.toString()); } diff --git a/src/test/java/seedu/workout/WorkoutListTest.java b/src/test/java/seedu/workout/WorkoutListTest.java index 0cae530d1f..26cdfcc5bd 100644 --- a/src/test/java/seedu/workout/WorkoutListTest.java +++ b/src/test/java/seedu/workout/WorkoutListTest.java @@ -1,5 +1,6 @@ package seedu.workout; +<<<<<<< HEAD import org.junit.jupiter.api.Test; import seedu.workouttracker.workout.Workout; import seedu.workouttracker.workout.WorkoutList; @@ -7,37 +8,9 @@ import java.text.SimpleDateFormat; import java.util.Date; import static org.junit.jupiter.api.Assertions.assertEquals; +======= +>>>>>>> 7ac8556 (Refactor the code edit Junit Test for list and delete calss) public class WorkoutListTest { - public SimpleDateFormat dateFormat = new SimpleDateFormat("dd/MM/yy"); - //@@ author guillaume-grn - @Test - public void testRemoveWorkout() throws Exception { - WorkoutList workoutList = new WorkoutList(); - String stringDate1 = "01/11/22"; - String stringDate2 = "02/11/22"; - Date date1 = dateFormat.parse(stringDate1); - Date date2 = dateFormat.parse(stringDate2); - Workout workout1 = new Workout(date1); - Workout workout2 = new Workout(date2); - workoutList.addWorkout(workout1); - workoutList.addWorkout(workout2); - - // Check that both workouts are in the list - assertEquals(2, workoutList.workoutList.size()); - - // Remove workout1 from the list - workoutList.removeWorkout(date1); - - // Check that workout1 was removed and workout2 is still in the list - assertEquals(1, workoutList.workoutList.size()); - assertEquals(date2, workoutList.workoutList.get(0).getDate()); - - // Try to remove workout1 again (should not be in the list) - workoutList.removeWorkout(date1); - - // Check that workout1 was not removed and the list size is still 1 - assertEquals(1, workoutList.workoutList.size()); - } } From 303f655e97998dbd8d6635eacaa823c5aa233131 Mon Sep 17 00:00:00 2001 From: ZIZI-czh <77820516+ZIZI-czh@users.noreply.github.com> Date: Tue, 28 Mar 2023 01:23:12 +0800 Subject: [PATCH 058/152] solve conflict --- .../workoutcommands/DeleteWorkoutCommand.java | 22 ++++++++----- .../workoutcommands/ListWorkoutCommand.java | 31 ++++++++--------- .../workoutcommands/ViewWorkoutCommand.java | 17 ++++++---- src/main/java/seedu/workout/WorkoutList.java | 33 +++++++++++++++++++ 4 files changed, 71 insertions(+), 32 deletions(-) create mode 100644 src/main/java/seedu/workout/WorkoutList.java diff --git a/src/main/java/seedu/commands/workoutcommands/DeleteWorkoutCommand.java b/src/main/java/seedu/commands/workoutcommands/DeleteWorkoutCommand.java index 783be031e7..2409b66955 100644 --- a/src/main/java/seedu/commands/workoutcommands/DeleteWorkoutCommand.java +++ b/src/main/java/seedu/commands/workoutcommands/DeleteWorkoutCommand.java @@ -10,9 +10,13 @@ public class DeleteWorkoutCommand extends Command { Date workoutToDeleteDate; +<<<<<<< HEAD:src/main/java/seedu/commands/workoutcommands/DeleteWorkoutCommand.java <<<<<<< HEAD:src/main/java/seedu/commands/workoutcommands/DeleteWorkoutCommand.java public DeleteWorkoutCommand(Date workoutToDeleteDate) { ======= +======= + +>>>>>>> d324e17 (solve codeStyle issue):src/main/java/seedu/commands/DeleteCommand.java public DeleteCommand(Date workoutToDeleteDate) { super(); >>>>>>> 7ac8556 (Refactor the code edit Junit Test for list and delete calss):src/main/java/seedu/commands/DeleteCommand.java @@ -27,20 +31,20 @@ public void execute() { System.out.println("WorkoutList is null."); return; } - if(workoutList.workoutArrayList == null){ + if (workoutList.workoutArrayList == null) { System.out.println("the workout array list is empty"); return; } - for (Workout workout : workoutList.workoutArrayList) { - if (workout.getDate().equals(workoutToDeleteDate)) { - workoutList.workoutArrayList.remove(workout); - System.out.println("Workout deleted successfully."); - Ui.showseperator(); - return; - } + for (Workout workout : workoutList.workoutArrayList) { + if (workout.getDate().equals(workoutToDeleteDate)) { + workoutList.workoutArrayList.remove(workout); + System.out.println("Workout deleted successfully."); + Ui.showseperator(); + return; } - System.out.println("No workout found with the specified date."); } + System.out.println("No workout found with the specified date."); + } } diff --git a/src/main/java/seedu/commands/workoutcommands/ListWorkoutCommand.java b/src/main/java/seedu/commands/workoutcommands/ListWorkoutCommand.java index 18000df3a9..706703e387 100644 --- a/src/main/java/seedu/commands/workoutcommands/ListWorkoutCommand.java +++ b/src/main/java/seedu/commands/workoutcommands/ListWorkoutCommand.java @@ -24,33 +24,30 @@ public ListCommand() { >>>>>>> 7ac8556 (Refactor the code edit Junit Test for list and delete calss):src/main/java/seedu/commands/ListCommand.java } - - /** * Show the list of date of the workout by calling the method in workoutList - * */ //@@ author ZIZI-czh @Override public void execute() { - try { - if (!workoutList.workoutArrayList.isEmpty()) { - System.out.println("Here are the list of dates for your workout: "); - for (Workout workout : workoutList.workoutArrayList) { - SimpleDateFormat dateFormat = new SimpleDateFormat("dd-MM-yy"); - String formattedDate = dateFormat.format(workout.getDate()); - System.out.println(formattedDate); - } - Ui.showseperator(); - } else { - //if there is no workout have been done - System.out.println("Haven't start your workout, please enter your workout"); + try { + if (!workoutList.workoutArrayList.isEmpty()) { + System.out.println("Here are the list of dates for your workout: "); + for (Workout workout : workoutList.workoutArrayList) { + SimpleDateFormat dateFormat = new SimpleDateFormat("dd-MM-yy"); + String formattedDate = dateFormat.format(workout.getDate()); + System.out.println(formattedDate); } - - } catch (NullPointerException e) { + Ui.showseperator(); + } else { + //if there is no workout have been done System.out.println("Haven't start your workout, please enter your workout"); } + } catch (NullPointerException e) { + System.out.println("Haven't start your workout, please enter your workout"); + } + } } diff --git a/src/main/java/seedu/commands/workoutcommands/ViewWorkoutCommand.java b/src/main/java/seedu/commands/workoutcommands/ViewWorkoutCommand.java index af525d2ed6..bb6d25bd27 100644 --- a/src/main/java/seedu/commands/workoutcommands/ViewWorkoutCommand.java +++ b/src/main/java/seedu/commands/workoutcommands/ViewWorkoutCommand.java @@ -9,7 +9,12 @@ public class ViewWorkoutCommand extends Command { Date workoutToViewDate; +<<<<<<< HEAD:src/main/java/seedu/commands/workoutcommands/ViewWorkoutCommand.java public ViewWorkoutCommand(Date workoutToViewDate) { +======= + + public ViewCommand(Date workoutToViewDate) { +>>>>>>> d324e17 (solve codeStyle issue):src/main/java/seedu/commands/ViewCommand.java this.workoutToViewDate = workoutToViewDate; } @@ -17,13 +22,13 @@ public ViewWorkoutCommand(Date workoutToViewDate) { public void execute() { - for (Workout workout : workoutList.workoutArrayList) { - if (workout.getDate().equals(workoutToViewDate)) { - System.out.println(workout.getExercises()); - Ui.showseperator(); - return; - } + for (Workout workout : workoutList.workoutArrayList) { + if (workout.getDate().equals(workoutToViewDate)) { + System.out.println(workout.getExercises()); + Ui.showseperator(); + return; } + } } } diff --git a/src/main/java/seedu/workout/WorkoutList.java b/src/main/java/seedu/workout/WorkoutList.java new file mode 100644 index 0000000000..f2f44815c3 --- /dev/null +++ b/src/main/java/seedu/workout/WorkoutList.java @@ -0,0 +1,33 @@ +package seedu.workout; + +import java.util.ArrayList; + + + +public class WorkoutList { + public static final int NO_CURRENT_WORKOUT = -1; + public ArrayList workoutArrayList; + public int currentWorkoutIndex; + + public WorkoutList() { + workoutArrayList = new ArrayList<>(); + currentWorkoutIndex = NO_CURRENT_WORKOUT; + } + + public void addWorkout(Workout workout) { + workoutArrayList.add(workout); + currentWorkoutIndex = getLastIndex(); + } + + public void setCurrentWorkoutIndex(int currentWorkoutIndex) { + this.currentWorkoutIndex = currentWorkoutIndex; + } + + public int getLastIndex() { + return workoutArrayList.size() - 1; + } + + public Workout getCurrentWorkout() { + return workoutArrayList.get(currentWorkoutIndex); + } +} From 74311423f19dac5f2f91688e24279d052fdacb4d Mon Sep 17 00:00:00 2001 From: ZIZI-czh <77820516+ZIZI-czh@users.noreply.github.com> Date: Tue, 28 Mar 2023 02:21:27 +0800 Subject: [PATCH 059/152] Solve the merge conflict --- src/main/java/seedu/commands/Command.java | 11 +- .../java/seedu/commands/IncorrectCommand.java | 2 +- .../workoutcommands/DeleteWorkoutCommand.java | 22 ++- .../workoutcommands/ListWorkoutCommand.java | 19 +-- .../workoutcommands/StartWorkoutCommand.java | 6 +- .../workoutcommands/ViewWorkoutCommand.java | 13 +- src/main/java/seedu/duke/Duke.java | 5 +- .../java/seedu/parser/CheckCaloriesInput.java | 48 ++++++ src/main/java/seedu/parser/CheckInputs.java | 146 ++++++++++++++++++ src/main/java/seedu/parser/DateFormat.java | 19 +++ src/main/java/seedu/parser/Parser.java | 117 +------------- src/main/java/seedu/workout/WorkoutList.java | 2 + .../seedu/workouttracker/workout/Workout.java | 8 +- .../workouttracker/workout/WorkoutList.java | 52 ------- .../seedu/commands/AddWorkoutCommandTest.java | 4 +- .../seedu/commands/DeleteCommandTest.java | 18 ++- .../java/seedu/commands/ListCommandTest.java | 52 ------- .../commands/ListWorkoutCommandTest.java | 19 ++- .../java/seedu/workout/WorkoutListTest.java | 11 -- src/test/java/seedu/workout/WorkoutTest.java | 6 +- 20 files changed, 282 insertions(+), 298 deletions(-) create mode 100644 src/main/java/seedu/parser/CheckCaloriesInput.java create mode 100644 src/main/java/seedu/parser/CheckInputs.java create mode 100644 src/main/java/seedu/parser/DateFormat.java delete mode 100644 src/test/java/seedu/commands/ListCommandTest.java diff --git a/src/main/java/seedu/commands/Command.java b/src/main/java/seedu/commands/Command.java index 49a263dec5..bec763b85d 100644 --- a/src/main/java/seedu/commands/Command.java +++ b/src/main/java/seedu/commands/Command.java @@ -4,23 +4,22 @@ import seedu.workouttracker.workout.WorkoutList; public class Command { -<<<<<<< HEAD - protected WorkoutList workoutList; + + public WorkoutList workoutList = new WorkoutList(); protected CalorieTracker calorieTracker; protected Command() { } public void setData(WorkoutList workoutList, CalorieTracker calorieTracker) { -======= - public WorkoutList workoutList = new WorkoutList(); - protected Command() { + + } public void setData(WorkoutList workoutList) { if (workoutList == null) { throw new IllegalArgumentException("WorkoutList cannot be null."); } ->>>>>>> 7ac8556 (Refactor the code edit Junit Test for list and delete calss) + this.workoutList = workoutList; this.calorieTracker = calorieTracker; } diff --git a/src/main/java/seedu/commands/IncorrectCommand.java b/src/main/java/seedu/commands/IncorrectCommand.java index 9d8e663d5e..a56265221c 100644 --- a/src/main/java/seedu/commands/IncorrectCommand.java +++ b/src/main/java/seedu/commands/IncorrectCommand.java @@ -8,6 +8,6 @@ public IncorrectCommand() { @Override public void execute() { - System.out.println("Incorrect command given!"); + System.out.println("Please enter the command again!"); } } diff --git a/src/main/java/seedu/commands/workoutcommands/DeleteWorkoutCommand.java b/src/main/java/seedu/commands/workoutcommands/DeleteWorkoutCommand.java index 2409b66955..0ce376316a 100644 --- a/src/main/java/seedu/commands/workoutcommands/DeleteWorkoutCommand.java +++ b/src/main/java/seedu/commands/workoutcommands/DeleteWorkoutCommand.java @@ -1,25 +1,19 @@ package seedu.commands.workoutcommands; +import seedu.DateFormat; import seedu.commands.Command; - import seedu.ui.Ui; -import seedu.workout.Workout; +import seedu.workouttracker.workout.Workout; import java.util.Date; public class DeleteWorkoutCommand extends Command { Date workoutToDeleteDate; -<<<<<<< HEAD:src/main/java/seedu/commands/workoutcommands/DeleteWorkoutCommand.java -<<<<<<< HEAD:src/main/java/seedu/commands/workoutcommands/DeleteWorkoutCommand.java - public DeleteWorkoutCommand(Date workoutToDeleteDate) { -======= -======= ->>>>>>> d324e17 (solve codeStyle issue):src/main/java/seedu/commands/DeleteCommand.java - public DeleteCommand(Date workoutToDeleteDate) { + + public DeleteWorkoutCommand(Date workoutToDeleteDate) { super(); ->>>>>>> 7ac8556 (Refactor the code edit Junit Test for list and delete calss):src/main/java/seedu/commands/DeleteCommand.java this.workoutToDeleteDate = workoutToDeleteDate; setData(workoutList); @@ -36,15 +30,17 @@ public void execute() { return; } for (Workout workout : workoutList.workoutArrayList) { - if (workout.getDate().equals(workoutToDeleteDate)) { + DateFormat dateFormat = new DateFormat(workoutToDeleteDate); + String formattedDate = dateFormat.formatDate(); + if (workout.getDate().equals(formattedDate)) { workoutList.workoutArrayList.remove(workout); System.out.println("Workout deleted successfully."); - Ui.showseperator(); + Ui.showSeparator(); return; } } System.out.println("No workout found with the specified date."); } - } + diff --git a/src/main/java/seedu/commands/workoutcommands/ListWorkoutCommand.java b/src/main/java/seedu/commands/workoutcommands/ListWorkoutCommand.java index 706703e387..0bbe4a129b 100644 --- a/src/main/java/seedu/commands/workoutcommands/ListWorkoutCommand.java +++ b/src/main/java/seedu/commands/workoutcommands/ListWorkoutCommand.java @@ -1,14 +1,10 @@ package seedu.commands.workoutcommands; -<<<<<<< HEAD:src/main/java/seedu/commands/workoutcommands/ListWorkoutCommand.java import seedu.commands.Command; -======= import seedu.ui.Ui; -import seedu.workout.Workout; +import seedu.workouttracker.workout.Workout; -import java.text.SimpleDateFormat; ->>>>>>> 7ac8556 (Refactor the code edit Junit Test for list and delete calss):src/main/java/seedu/commands/ListCommand.java /** * This is the class for executing the list command @@ -16,14 +12,10 @@ public class ListWorkoutCommand extends Command { //@@ author ZIZI-czh -<<<<<<< HEAD:src/main/java/seedu/commands/workoutcommands/ListWorkoutCommand.java public ListWorkoutCommand() { -======= - public ListCommand() { - ->>>>>>> 7ac8556 (Refactor the code edit Junit Test for list and delete calss):src/main/java/seedu/commands/ListCommand.java } + /** * Show the list of date of the workout by calling the method in workoutList */ @@ -34,11 +26,9 @@ public void execute() { if (!workoutList.workoutArrayList.isEmpty()) { System.out.println("Here are the list of dates for your workout: "); for (Workout workout : workoutList.workoutArrayList) { - SimpleDateFormat dateFormat = new SimpleDateFormat("dd-MM-yy"); - String formattedDate = dateFormat.format(workout.getDate()); - System.out.println(formattedDate); + System.out.println(workout.getDate()); } - Ui.showseperator(); + Ui.showSeparator(); } else { //if there is no workout have been done System.out.println("Haven't start your workout, please enter your workout"); @@ -49,5 +39,6 @@ public void execute() { } } + } diff --git a/src/main/java/seedu/commands/workoutcommands/StartWorkoutCommand.java b/src/main/java/seedu/commands/workoutcommands/StartWorkoutCommand.java index 9355029ef9..974e79f92c 100644 --- a/src/main/java/seedu/commands/workoutcommands/StartWorkoutCommand.java +++ b/src/main/java/seedu/commands/workoutcommands/StartWorkoutCommand.java @@ -9,12 +9,10 @@ public class StartWorkoutCommand extends Command { private Date date; -<<<<<<< HEAD:src/main/java/seedu/commands/workoutcommands/StartWorkoutCommand.java + + public StartWorkoutCommand(Date date) { -======= - public StartCommand(Date date) { super(); ->>>>>>> 7ac8556 (Refactor the code edit Junit Test for list and delete calss):src/main/java/seedu/commands/StartCommand.java this.date = date; setData(workoutList); } diff --git a/src/main/java/seedu/commands/workoutcommands/ViewWorkoutCommand.java b/src/main/java/seedu/commands/workoutcommands/ViewWorkoutCommand.java index bb6d25bd27..284c4412ce 100644 --- a/src/main/java/seedu/commands/workoutcommands/ViewWorkoutCommand.java +++ b/src/main/java/seedu/commands/workoutcommands/ViewWorkoutCommand.java @@ -1,31 +1,30 @@ package seedu.commands.workoutcommands; +import seedu.DateFormat; import seedu.commands.Command; import seedu.ui.Ui; -import seedu.workout.Workout; +import seedu.workouttracker.workout.Workout; import java.util.Date; public class ViewWorkoutCommand extends Command { Date workoutToViewDate; -<<<<<<< HEAD:src/main/java/seedu/commands/workoutcommands/ViewWorkoutCommand.java + public ViewWorkoutCommand(Date workoutToViewDate) { -======= - public ViewCommand(Date workoutToViewDate) { ->>>>>>> d324e17 (solve codeStyle issue):src/main/java/seedu/commands/ViewCommand.java this.workoutToViewDate = workoutToViewDate; } - public void execute() { for (Workout workout : workoutList.workoutArrayList) { + DateFormat dateFormat = new DateFormat(workoutToViewDate); + String formattedDate = dateFormat.formatDate(); if (workout.getDate().equals(workoutToViewDate)) { System.out.println(workout.getExercises()); - Ui.showseperator(); + Ui.showSeparator(); return; } } diff --git a/src/main/java/seedu/duke/Duke.java b/src/main/java/seedu/duke/Duke.java index ad018ca3f3..fc7dc21191 100644 --- a/src/main/java/seedu/duke/Duke.java +++ b/src/main/java/seedu/duke/Duke.java @@ -29,10 +29,10 @@ private void executeCommandUntilExit() { do { String userInput = Ui.getUserInput(); command = new Parser().processCommand(userInput); -<<<<<<< HEAD + command.setData(workoutList, calorieTracker); command.execute(); -======= + try { command.setData(workoutList); command.execute(); @@ -40,7 +40,6 @@ private void executeCommandUntilExit() { System.out.println("Error: " + e.getMessage()); // handle the exception in the appropriate way for your application } ->>>>>>> 7ac8556 (Refactor the code edit Junit Test for list and delete calss) } while (!ExitCommand.isExit(command)); } } diff --git a/src/main/java/seedu/parser/CheckCaloriesInput.java b/src/main/java/seedu/parser/CheckCaloriesInput.java new file mode 100644 index 0000000000..991a8069c1 --- /dev/null +++ b/src/main/java/seedu/parser/CheckCaloriesInput.java @@ -0,0 +1,48 @@ +package seedu.parser; + +import seedu.commands.Command; +import seedu.commands.IncorrectCommand; +import seedu.commands.caloriecommands.AddCalorieCommand; +import java.text.ParseException; +import java.text.SimpleDateFormat; +import java.util.Date; +import static seedu.commands.caloriecommands.AddCalorieCommand.CALORIES_NOT_GIVEN; + +public class CheckCaloriesInput { + private static final int DATE_INDEX = 0; + private static final int FOOD_INDEX = 1; + private static final int CALORIES_INDEX = 2; + + //public static final DateFormat DATE_FORMAT = new SimpleDateFormat("dd/MM/yyyy"); + + + public static Command processAddCalories(String arguments) { + + Date date; + String food; + int calories; + + try { + String[] addCaloriesArguments = arguments.trim().split("\\s+", 3); + date = new SimpleDateFormat("dd/MM/yyyy").parse(addCaloriesArguments[DATE_INDEX].trim()); + food = addCaloriesArguments[FOOD_INDEX].trim(); + + if (addCaloriesArguments.length == 3) { + calories = Integer.parseInt(addCaloriesArguments[CALORIES_INDEX].trim()); + } else { + calories = CALORIES_NOT_GIVEN; + } + } catch (ParseException e) { + System.out.println("Invalid date format. Please enter the date in the format dd/mm/yy."); + return new IncorrectCommand(); + } catch (NumberFormatException e) { + System.out.println("Invalid calories format. Please enter an integer"); + return new IncorrectCommand(); + } catch (ArrayIndexOutOfBoundsException e) { + System.out.println("Invalid command format."); + return new IncorrectCommand(); + } + + return new AddCalorieCommand(date, food, calories); + } +} diff --git a/src/main/java/seedu/parser/CheckInputs.java b/src/main/java/seedu/parser/CheckInputs.java new file mode 100644 index 0000000000..f993bb2c64 --- /dev/null +++ b/src/main/java/seedu/parser/CheckInputs.java @@ -0,0 +1,146 @@ +package seedu.parser; + + +import seedu.commands.workoutcommands.AddWorkoutCommand; +import seedu.commands.workoutcommands.DeleteWorkoutCommand; +import seedu.commands.workoutcommands.ListWorkoutCommand; +import seedu.commands.workoutcommands.StartWorkoutCommand; +import seedu.commands.workoutcommands.ViewWorkoutCommand; +import seedu.commands.Command; +import seedu.commands.IncorrectCommand; +import seedu.workouttracker.workout.Exercise; +import java.text.DateFormat; +import java.text.ParseException; +import java.text.SimpleDateFormat; +import java.util.Date; + + +public class CheckInputs { + + private static final int EXERCISE_NAME_INDEX = 0; + private static final int WEIGHT_INDEX = 1; + private static final int REPS_PER_SET_INDEX = 2; + + + static Command processAdd(String arguments) { + Exercise toAdd; + try { + String[] exerciseDetails = arguments.split("/", 3); + String exerciseName = exerciseDetails[EXERCISE_NAME_INDEX].trim(); + String weight = exerciseDetails[WEIGHT_INDEX].replace("weight", "").trim(); + String repsPerSet = + exerciseDetails[REPS_PER_SET_INDEX].replace("rps", "").replace("rps", "").trim(); + toAdd = new Exercise(exerciseName, weight, repsPerSet); + + } catch (ArrayIndexOutOfBoundsException e) { + return new IncorrectCommand(); + } + return new AddWorkoutCommand(toAdd); + } + + /** + * This method used to check the "/start" command + * If the date input has incorrect format, it will notify the users + * Otherwise, StartCommand will be executed + * + * @param arguments Date input + * @return Incorrect command if the input date is incorrect, otherwise, initialize the StartCommand + */ + static Command processStart(String arguments) { + Date date = parseDate(arguments); + return date != null && parseInput(arguments) ? new StartWorkoutCommand(date) : new IncorrectCommand(); + } + + /** + * This method used to check the "/delete" command + * + * @param arguments Date input + * @return Incorrect command if the input date is incorrect, otherwise, initialize the StartCommand + */ + static Command processDelete(String arguments) { + Date date = parseDate(arguments); + return date != null && parseInput(arguments) ? new DeleteWorkoutCommand(date) : new IncorrectCommand(); + } + + //@@ author ZIZI-czh + static Command processList(String arguments) { + return arguments == null || arguments.trim().isEmpty() ? new ListWorkoutCommand() : new IncorrectCommand(); + } + + + static Command processView(String arguments) { + Date date = parseDate(arguments); + + return date != null && parseInput(arguments) ? new ViewWorkoutCommand(date) : new IncorrectCommand(); + } + + + /** + * This method is used to check the input date format + * @param arguments inputs date + * @return return null if the date format is invalid + */ + //@@ author ZIZI-czh + private static Date parseDate(String arguments) { + try { + DateFormat dateFormat = new SimpleDateFormat("dd/MM/yyyy"); + Date enteredDate = dateFormat.parse(arguments); + Date currentDate = new Date(); + if (enteredDate.compareTo(currentDate) > 0) { + System.out.println("Date cannot be after the current date."); + return null; + } + return enteredDate; + } catch (ParseException e) { + System.out.println("Invalid date format. Please follow the format dd/MM/yy"); + return null; + } + } + + /** + * This methods used to check the input command based on the format and the date + * @param arguments input + * @return return false if the input does not follow the format + */ + + //@@ author ZIZI-czh + private static boolean parseInput(String arguments) { + //arguments.trim().contains("\\s+"); + if (arguments.trim().contains("\\s+")) { + System.out.println("invalid input date, please use the format /start dd/MM/yyyy"); + return false; // not in the form "/start dd/MM/yy" + } + String[] dateParts = arguments.trim().split("/"); + + if (dateParts.length != 3) { + System.out.println("invalid input, please use the format dd/MM/yyyy"); + return false; // not in the form "dd/MM/yy" + } + + for (String part : dateParts) { + if (part.contains("/")) { + System.out.println("invalid input, please follow /start dd/MM/yyyy"); + return false; // non-numeric character found in date + } + } + + int day; + int month; + int year; + try { + day = Integer.parseInt(dateParts[0]); + month = Integer.parseInt(dateParts[1]); + year = Integer.parseInt(dateParts[2]); + } catch (NumberFormatException e) { + System.out.println("Please enter valid date"); + return false; // not valid integers for date components + } + if (day < 1 || day > 31 || month < 1 || month > 12 || year < 0) { + System.out.println("Please enter a correct date"); + return false; // not valid date components + } + return true; // input is in the correct format + } + + +} diff --git a/src/main/java/seedu/parser/DateFormat.java b/src/main/java/seedu/parser/DateFormat.java new file mode 100644 index 0000000000..17de5f34fc --- /dev/null +++ b/src/main/java/seedu/parser/DateFormat.java @@ -0,0 +1,19 @@ +package seedu; + +import java.text.SimpleDateFormat; +import java.util.Date; + +public class DateFormat { + + public Date date; + + public DateFormat(Date date) { + this.date = date; + } + + public String formatDate(){ + SimpleDateFormat dateFormat = new SimpleDateFormat("dd-MM-yyyy"); + return dateFormat.format(this.date); + } +} + diff --git a/src/main/java/seedu/parser/Parser.java b/src/main/java/seedu/parser/Parser.java index d2999a739a..c1f8bb20d4 100644 --- a/src/main/java/seedu/parser/Parser.java +++ b/src/main/java/seedu/parser/Parser.java @@ -2,35 +2,15 @@ import seedu.commands.Command; -import seedu.commands.caloriecommands.AddCalorieCommand; -import seedu.commands.workoutcommands.AddWorkoutCommand; -import seedu.commands.workoutcommands.DeleteWorkoutCommand; import seedu.commands.workoutcommands.EndWorkoutCommand; import seedu.commands.ExitCommand; import seedu.commands.workoutcommands.HelpWorkoutCommand; import seedu.commands.IncorrectCommand; -import seedu.commands.workoutcommands.ListWorkoutCommand; -import seedu.commands.workoutcommands.StartWorkoutCommand; -import seedu.commands.workoutcommands.ViewWorkoutCommand; -import seedu.workouttracker.workout.Exercise; - -import java.text.DateFormat; -import java.text.ParseException; -import java.text.SimpleDateFormat; -import java.util.Date; import java.util.regex.Matcher; import java.util.regex.Pattern; -import static seedu.commands.caloriecommands.AddCalorieCommand.CALORIES_NOT_GIVEN; public class Parser { - public static final DateFormat DATE_FORMAT = new SimpleDateFormat("dd/MM/yy"); - private static final int EXERCISE_NAME_INDEX = 0; - private static final int WEIGHT_INDEX = 1; - private static final int REPS_PER_SET_INDEX = 2; - private static final int DATE_INDEX = 0; - private static final int FOOD_INDEX = 1; - private static final int CALORIES_INDEX = 2; private static final Pattern BASIC_COMMAND_FORMAT = Pattern.compile("(?\\S+)(?" + ".*)"); @@ -45,19 +25,15 @@ public Command processCommand(String userInput) { switch (commandName) { case "/start": - return processStart(arguments); + return CheckInputs.processStart(arguments); case "/add": - return processAdd(arguments); + return CheckInputs.processAdd(arguments); case "/delete": - return processDelete(arguments); + return CheckInputs.processDelete(arguments); case "/list": - if (arguments != null && !arguments.trim().isEmpty()) { - // If there are arguments after the "/list" command, return an IncorrectCommand instance - return new IncorrectCommand(); - } - return new ListWorkoutCommand(); + return CheckInputs.processList(arguments); case "/view": - return processView(arguments); + return CheckInputs.processView(arguments); case "/end": return new EndWorkoutCommand(); case "/exit": @@ -65,91 +41,10 @@ public Command processCommand(String userInput) { case "/help": return new HelpWorkoutCommand(); case "/cadd": - return processAddCalories(arguments); + return CheckCaloriesInput.processAddCalories(arguments); default: return new IncorrectCommand(); } } - - private Command processAddCalories(String arguments) { - Date date; - String food; - int calories; - - try { - String[] addCaloriesArguments = arguments.trim().split("\\s+", 3); - date = DATE_FORMAT.parse(addCaloriesArguments[DATE_INDEX].trim()); - food = addCaloriesArguments[FOOD_INDEX].trim(); - - if (addCaloriesArguments.length == 3) { - calories = Integer.parseInt(addCaloriesArguments[CALORIES_INDEX].trim()); - } else { - calories = CALORIES_NOT_GIVEN; - } - } catch (ParseException e) { - System.out.println("Invalid date format. Please enter the date in the format dd/mm/yy."); - return new IncorrectCommand(); - } catch (NumberFormatException e) { - System.out.println("Invalid calories format. Please enter an integer"); - return new IncorrectCommand(); - } catch (ArrayIndexOutOfBoundsException e) { - System.out.println("Invalid command format."); - return new IncorrectCommand(); - } - - return new AddCalorieCommand(date, food, calories); - } - - private Command processStart(String arguments) { - Date date; - try { - date = DATE_FORMAT.parse(arguments); - } catch (ParseException e) { - System.out.println("Invalid date format. Please enter the date in the format dd/mm/yy."); - return new IncorrectCommand(); - } - return new StartWorkoutCommand(date); - } - - private Command processAdd(String arguments) { - Exercise toAdd; - try { - String[] exerciseDetails = arguments.split("/", 3); - String exerciseName = exerciseDetails[EXERCISE_NAME_INDEX].trim(); - String weight = exerciseDetails[WEIGHT_INDEX].replace("weight", "").trim(); - String repsPerSet = - exerciseDetails[REPS_PER_SET_INDEX].replace("rps", "").replace("rps", "").trim(); - toAdd = new Exercise(exerciseName, weight, repsPerSet); - - } catch (ArrayIndexOutOfBoundsException e) { - return new IncorrectCommand(); - } - return new AddWorkoutCommand(toAdd); - } - - private Command processDelete(String arguments) { - Date date; - try { - date = DATE_FORMAT.parse(arguments); - } catch (ParseException e) { - System.out.println("Invalid date format. Please enter the date in the format dd/mm/yy."); - return new IncorrectCommand(); - } - - return new DeleteWorkoutCommand(date); - } - - private Command processView(String arguments) { - Date date; - try { - date = DATE_FORMAT.parse(arguments); - System.out.println("Here are the list of exercises on" + date + ":"); - } catch (ParseException e) { - System.out.println("Invalid date format. Please enter the date in the format dd/mm/yy."); - return new IncorrectCommand(); - } - return new ViewWorkoutCommand(date); - } } - diff --git a/src/main/java/seedu/workout/WorkoutList.java b/src/main/java/seedu/workout/WorkoutList.java index f2f44815c3..4bd6e238f1 100644 --- a/src/main/java/seedu/workout/WorkoutList.java +++ b/src/main/java/seedu/workout/WorkoutList.java @@ -1,5 +1,7 @@ package seedu.workout; +import seedu.workouttracker.workout.Workout; + import java.util.ArrayList; diff --git a/src/main/java/seedu/workouttracker/workout/Workout.java b/src/main/java/seedu/workouttracker/workout/Workout.java index 84e2b26a88..3ed32ac937 100644 --- a/src/main/java/seedu/workouttracker/workout/Workout.java +++ b/src/main/java/seedu/workouttracker/workout/Workout.java @@ -1,6 +1,8 @@ package seedu.workouttracker.workout; +import seedu.DateFormat; + import java.util.ArrayList; import java.util.Date; @@ -18,8 +20,10 @@ public void addExercise(Exercise exercise) { System.out.println("Added " + exercise); } - public Date getDate() { - return date; + public String getDate() { + DateFormat dateFormat = new DateFormat(date); + return dateFormat.formatDate(); + } public void setDate(Date date) { diff --git a/src/main/java/seedu/workouttracker/workout/WorkoutList.java b/src/main/java/seedu/workouttracker/workout/WorkoutList.java index a7cc53f5dd..42e31e0853 100644 --- a/src/main/java/seedu/workouttracker/workout/WorkoutList.java +++ b/src/main/java/seedu/workouttracker/workout/WorkoutList.java @@ -1,10 +1,6 @@ package seedu.workouttracker.workout; -import seedu.ui.Ui; - import java.util.ArrayList; -import java.util.Date; -import java.text.SimpleDateFormat; public class WorkoutList { @@ -26,54 +22,6 @@ public void setCurrentWorkoutIndex(int currentWorkoutIndex) { this.currentWorkoutIndex = currentWorkoutIndex; } -<<<<<<< HEAD:src/main/java/seedu/workouttracker/workout/WorkoutList.java - public void removeWorkout(Date date) { - for (Workout workout : workoutList) { - if (workout.getDate().equals(date)) { - workoutList.remove(workout); - System.out.println("Workout deleted successfully."); - Ui.showSeparator(); - return; - } - } - System.out.println("No workout found with the specified date."); - } - /** - * This method will loop the workout list and print out the date in this list - * - */ - //@@ author ZIZI-czh - public void showWorkoutList() { - try { - if (!workoutList.isEmpty()) { - System.out.println("Here are the list of dates for your workout: "); - for (Workout workout : workoutList) { - SimpleDateFormat dateFormat = new SimpleDateFormat("dd-MM-yy"); - String formattedDate = dateFormat.format(workout.getDate()); - System.out.println(formattedDate); - } - Ui.showSeparator(); - } else { - //if there is no workout have been done - System.out.println("Haven't start your workout, please enter your workout"); - } - - } catch (NullPointerException e) { - System.out.println("Haven't start your workout, please enter your workout"); - } - - } - public void displayWorkout(Date date) { - for (Workout workout : workoutList) { - if (workout.getDate().equals(date)) { - System.out.println(workout.getExercises()); - Ui.showSeparator(); - return; - } - } - } -======= ->>>>>>> 7ac8556 (Refactor the code edit Junit Test for list and delete calss):src/main/java/seedu/workout/WorkoutList.java public int getLastIndex() { return workoutArrayList.size() - 1; } diff --git a/src/test/java/seedu/commands/AddWorkoutCommandTest.java b/src/test/java/seedu/commands/AddWorkoutCommandTest.java index 61e6487728..5f20338a65 100644 --- a/src/test/java/seedu/commands/AddWorkoutCommandTest.java +++ b/src/test/java/seedu/commands/AddWorkoutCommandTest.java @@ -12,12 +12,12 @@ public class AddWorkoutCommandTest { - private static final SimpleDateFormat dateFormat = new SimpleDateFormat("dd/MM/yy"); + private static final SimpleDateFormat dateFormat = new SimpleDateFormat("dd/MM/yyyy"); private static final Date date; static { try { - date = dateFormat.parse("10/11/22"); + date = dateFormat.parse("10/11/2022"); } catch (ParseException e) { throw new RuntimeException(e); } diff --git a/src/test/java/seedu/commands/DeleteCommandTest.java b/src/test/java/seedu/commands/DeleteCommandTest.java index fedc8e02c5..0036e57751 100644 --- a/src/test/java/seedu/commands/DeleteCommandTest.java +++ b/src/test/java/seedu/commands/DeleteCommandTest.java @@ -1,15 +1,17 @@ package seedu.commands; import org.junit.jupiter.api.Test; -import seedu.workout.Workout; -import seedu.workout.WorkoutList; +import seedu.DateFormat; +import seedu.commands.workoutcommands.DeleteWorkoutCommand; +import seedu.workouttracker.workout.Workout; +import seedu.workouttracker.workout.WorkoutList; import java.text.SimpleDateFormat; import java.util.Date; import static org.junit.jupiter.api.Assertions.assertEquals; public class DeleteCommandTest { - public SimpleDateFormat dateFormat = new SimpleDateFormat("dd/MM/yy"); + public SimpleDateFormat dateFormat = new SimpleDateFormat("dd/MM/yyyy"); //@@ author guillaume-grn @@ -18,8 +20,8 @@ public void testRemoveWorkout() throws Exception { WorkoutList workoutLists = new WorkoutList(); Command command = new Command(); - String stringDate1 = "01/11/22"; - String stringDate2 = "02/11/22"; + String stringDate1 = "01/11/2022"; + String stringDate2 = "02/11/2022"; Date date1 = dateFormat.parse(stringDate1); Date date2 = dateFormat.parse(stringDate2); Workout workout1 = new Workout(date1); @@ -34,14 +36,16 @@ public void testRemoveWorkout() throws Exception { //DeleteCommand delete = new DeleteCommand(date1); - DeleteCommand delete = new DeleteCommand(date1); + DeleteWorkoutCommand delete = new DeleteWorkoutCommand(date1); delete.setData(workoutLists); // Remove workout1 from the list delete.execute(); // Check that workout1 was removed and workout2 is still in the list assertEquals(1, workoutLists.workoutArrayList.size()); - assertEquals(date2, workoutLists.workoutArrayList.get(0).getDate()); + DateFormat dateFormat = new DateFormat(date2); + String formattedDate = dateFormat.formatDate(); + assertEquals(formattedDate, workoutLists.workoutArrayList.get(0).getDate()); // Try to remove workout1 again (should not be in the list) delete.execute(); diff --git a/src/test/java/seedu/commands/ListCommandTest.java b/src/test/java/seedu/commands/ListCommandTest.java deleted file mode 100644 index 2846dfa327..0000000000 --- a/src/test/java/seedu/commands/ListCommandTest.java +++ /dev/null @@ -1,52 +0,0 @@ -package seedu.commands; - -import org.junit.jupiter.api.Test; -import seedu.workouttracker.workout.Workout; -import seedu.workouttracker.workout.WorkoutList; - -import java.io.ByteArrayOutputStream; -import java.io.PrintStream; -import java.text.ParseException; -import java.text.SimpleDateFormat; - -import static org.junit.jupiter.api.Assertions.assertEquals; - -<<<<<<<< HEAD:src/test/java/seedu/commands/ListWorkoutCommandTest.java -public class ListWorkoutCommandTest { - -======== -public class ListCommandTest { ->>>>>>>> 7ac8556 (Refactor the code edit Junit Test for list and delete calss):src/test/java/seedu/commands/ListCommandTest.java - //@@ author ZIZI-czh - @Test - public void testShowWorkoutList() throws ParseException { - // Create a new instance of the class that contains the showWorkoutList() method - // and add some sample data to the workoutList - SimpleDateFormat format = new SimpleDateFormat("dd/MM/yy"); - - // Redirect the console output to a stream for testing - ByteArrayOutputStream outContent = new ByteArrayOutputStream(); - System.setOut(new PrintStream(outContent)); - - // Call the method to be tested - // WorkoutList addList = new WorkoutList(); - WorkoutList workoutList = new WorkoutList(); - workoutList.addWorkout(new Workout(format.parse("11/11/23"))); - workoutList.addWorkout(new Workout(format.parse("11/10/23"))); - Command command = new Command(); - command.setData(workoutList); - ListCommand testList = new ListCommand(); - assertEquals(2, workoutList.workoutArrayList.size()); - - testList.setData(workoutList); - testList.execute(); - - // Assert that the console output matches the expected output - assertEquals("Here are the list of dates for your workout: " + System.lineSeparator() - + "11-11-23" + System.lineSeparator() - + "11-10-23" + System.lineSeparator() - + "----------------------------------" + System.lineSeparator(), - outContent.toString()); - - } -} diff --git a/src/test/java/seedu/commands/ListWorkoutCommandTest.java b/src/test/java/seedu/commands/ListWorkoutCommandTest.java index 2846dfa327..f63b9468ef 100644 --- a/src/test/java/seedu/commands/ListWorkoutCommandTest.java +++ b/src/test/java/seedu/commands/ListWorkoutCommandTest.java @@ -1,6 +1,7 @@ package seedu.commands; import org.junit.jupiter.api.Test; +import seedu.commands.workoutcommands.ListWorkoutCommand; import seedu.workouttracker.workout.Workout; import seedu.workouttracker.workout.WorkoutList; @@ -11,18 +12,15 @@ import static org.junit.jupiter.api.Assertions.assertEquals; -<<<<<<<< HEAD:src/test/java/seedu/commands/ListWorkoutCommandTest.java + public class ListWorkoutCommandTest { -======== -public class ListCommandTest { ->>>>>>>> 7ac8556 (Refactor the code edit Junit Test for list and delete calss):src/test/java/seedu/commands/ListCommandTest.java //@@ author ZIZI-czh @Test public void testShowWorkoutList() throws ParseException { // Create a new instance of the class that contains the showWorkoutList() method // and add some sample data to the workoutList - SimpleDateFormat format = new SimpleDateFormat("dd/MM/yy"); + SimpleDateFormat format = new SimpleDateFormat("dd/MM/yyyy"); // Redirect the console output to a stream for testing ByteArrayOutputStream outContent = new ByteArrayOutputStream(); @@ -31,11 +29,11 @@ public void testShowWorkoutList() throws ParseException { // Call the method to be tested // WorkoutList addList = new WorkoutList(); WorkoutList workoutList = new WorkoutList(); - workoutList.addWorkout(new Workout(format.parse("11/11/23"))); - workoutList.addWorkout(new Workout(format.parse("11/10/23"))); + workoutList.addWorkout(new Workout(format.parse("11/11/2023"))); + workoutList.addWorkout(new Workout(format.parse("11/10/2023"))); Command command = new Command(); command.setData(workoutList); - ListCommand testList = new ListCommand(); + ListWorkoutCommand testList = new ListWorkoutCommand(); assertEquals(2, workoutList.workoutArrayList.size()); testList.setData(workoutList); @@ -43,10 +41,11 @@ public void testShowWorkoutList() throws ParseException { // Assert that the console output matches the expected output assertEquals("Here are the list of dates for your workout: " + System.lineSeparator() - + "11-11-23" + System.lineSeparator() - + "11-10-23" + System.lineSeparator() + + "11-11-2023" + System.lineSeparator() + + "11-10-2023" + System.lineSeparator() + "----------------------------------" + System.lineSeparator(), outContent.toString()); } } + diff --git a/src/test/java/seedu/workout/WorkoutListTest.java b/src/test/java/seedu/workout/WorkoutListTest.java index 26cdfcc5bd..bb0973ab42 100644 --- a/src/test/java/seedu/workout/WorkoutListTest.java +++ b/src/test/java/seedu/workout/WorkoutListTest.java @@ -1,16 +1,5 @@ package seedu.workout; -<<<<<<< HEAD -import org.junit.jupiter.api.Test; -import seedu.workouttracker.workout.Workout; -import seedu.workouttracker.workout.WorkoutList; - -import java.text.SimpleDateFormat; -import java.util.Date; -import static org.junit.jupiter.api.Assertions.assertEquals; -======= ->>>>>>> 7ac8556 (Refactor the code edit Junit Test for list and delete calss) - public class WorkoutListTest { } diff --git a/src/test/java/seedu/workout/WorkoutTest.java b/src/test/java/seedu/workout/WorkoutTest.java index f4642d10ba..a3c8d8d030 100644 --- a/src/test/java/seedu/workout/WorkoutTest.java +++ b/src/test/java/seedu/workout/WorkoutTest.java @@ -8,16 +8,16 @@ import static org.junit.jupiter.api.Assertions.assertEquals; public class WorkoutTest { - public SimpleDateFormat dateFormat = new SimpleDateFormat("dd/MM/yy"); + public SimpleDateFormat dateFormat = new SimpleDateFormat("dd/MM/yyyy"); @Test public void testGetDateAndSetDate() throws Exception { - String expectedDatestring = "05/02/23"; + String expectedDatestring = "05/02/2023"; Date expectedDate = dateFormat.parse(expectedDatestring); Workout workout = new Workout(expectedDate); assertEquals(expectedDate, workout.getDate()); - String newDatestring = "06/03/24"; + String newDatestring = "06/03/2024"; Date newDate = dateFormat.parse(newDatestring); workout.setDate(newDate); assertEquals(newDate, workout.getDate()); From 62a0cb2c64d4f6483b956a7ccc90d214710527a3 Mon Sep 17 00:00:00 2001 From: ZIZI-czh <77820516+ZIZI-czh@users.noreply.github.com> Date: Tue, 28 Mar 2023 02:30:27 +0800 Subject: [PATCH 060/152] solve the compile error --- src/test/java/seedu/workout/WorkoutTest.java | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/src/test/java/seedu/workout/WorkoutTest.java b/src/test/java/seedu/workout/WorkoutTest.java index a3c8d8d030..249545f3eb 100644 --- a/src/test/java/seedu/workout/WorkoutTest.java +++ b/src/test/java/seedu/workout/WorkoutTest.java @@ -1,6 +1,7 @@ package seedu.workout; import org.junit.jupiter.api.Test; +import seedu.DateFormat; import seedu.workouttracker.workout.Workout; import java.text.SimpleDateFormat; @@ -8,19 +9,23 @@ import static org.junit.jupiter.api.Assertions.assertEquals; public class WorkoutTest { - public SimpleDateFormat dateFormat = new SimpleDateFormat("dd/MM/yyyy"); + public SimpleDateFormat dateFormatting = new SimpleDateFormat("dd/MM/yyyy"); @Test public void testGetDateAndSetDate() throws Exception { String expectedDatestring = "05/02/2023"; - Date expectedDate = dateFormat.parse(expectedDatestring); + Date expectedDate = dateFormatting.parse(expectedDatestring); Workout workout = new Workout(expectedDate); - assertEquals(expectedDate, workout.getDate()); + DateFormat dateFormat1 = new DateFormat(expectedDate); + String formattedDate1 = dateFormat1.formatDate(); + assertEquals(formattedDate1, workout.getDate()); String newDatestring = "06/03/2024"; - Date newDate = dateFormat.parse(newDatestring); + Date newDate = dateFormatting.parse(newDatestring); + DateFormat dateFormat2 = new DateFormat(newDate); + String formattedDate2 = dateFormat2.formatDate(); workout.setDate(newDate); - assertEquals(newDate, workout.getDate()); + assertEquals(formattedDate2, workout.getDate()); } From 16eb23da8a69f45e1398ad38f82356dc11d0eed4 Mon Sep 17 00:00:00 2001 From: calebcjl Date: Tue, 28 Mar 2023 03:57:39 +0800 Subject: [PATCH 061/152] Add view calorie feature --- .../seedu/calorietracker/CalorieTracker.java | 8 +++-- src/main/java/seedu/commands/Command.java | 2 +- .../caloriecommands/ViewCaloriesCommand.java | 29 +++++++++++++++ .../workoutcommands/AddWorkoutCommand.java | 4 +-- .../workoutcommands/DeleteWorkoutCommand.java | 4 +-- .../workoutcommands/EndWorkoutCommand.java | 2 +- .../workoutcommands/ListWorkoutCommand.java | 2 +- .../workoutcommands/StartWorkoutCommand.java | 4 +-- .../workoutcommands/ViewWorkoutCommand.java | 4 +-- src/main/java/seedu/duke/Duke.java | 2 +- .../java/seedu/parser/CheckCaloriesInput.java | 19 ++++++++-- src/main/java/seedu/parser/CheckInputs.java | 7 ++-- src/main/java/seedu/parser/DateFormat.java | 2 +- src/main/java/seedu/parser/Parser.java | 3 +- src/main/java/seedu/workout/WorkoutList.java | 35 ------------------- .../{workout => }/Exercise.java | 2 +- .../workouttracker/{workout => }/Workout.java | 5 ++- .../{workout => }/WorkoutList.java | 3 +- .../seedu/commands/AddWorkoutCommandTest.java | 4 +-- .../seedu/commands/DeleteCommandTest.java | 4 +-- .../commands/ListWorkoutCommandTest.java | 4 +-- src/test/java/seedu/workout/WorkoutTest.java | 2 +- 22 files changed, 80 insertions(+), 71 deletions(-) create mode 100644 src/main/java/seedu/commands/caloriecommands/ViewCaloriesCommand.java delete mode 100644 src/main/java/seedu/workout/WorkoutList.java rename src/main/java/seedu/workouttracker/{workout => }/Exercise.java (91%) rename src/main/java/seedu/workouttracker/{workout => }/Workout.java (91%) rename src/main/java/seedu/workouttracker/{workout => }/WorkoutList.java (95%) diff --git a/src/main/java/seedu/calorietracker/CalorieTracker.java b/src/main/java/seedu/calorietracker/CalorieTracker.java index 6ee228697a..3a6f408055 100644 --- a/src/main/java/seedu/calorietracker/CalorieTracker.java +++ b/src/main/java/seedu/calorietracker/CalorieTracker.java @@ -7,6 +7,7 @@ import static seedu.commands.caloriecommands.AddCalorieCommand.CALORIES_NOT_GIVEN; public class CalorieTracker { + public static final int CALORIES_NOT_TRACKED = -1; private final HashMap totalCaloriesConsumedInDay; private FoodList foodList; @@ -36,17 +37,18 @@ public void addCalories(Date date, String food, int calories) { return; } - System.out.println("Consumed additional " + caloriesInFood + "kcal."); - if (totalCaloriesConsumedInDay.containsKey(date)) { totalCaloriesConsumedInDay.compute(date, (key, value) -> value + caloriesInFood); } else { totalCaloriesConsumedInDay.put(date, caloriesInFood); } + + System.out.println("Consumed additional " + caloriesInFood + "kcal." + System.lineSeparator() + + "Total calories consumed: " + getCalories(date) + "kcal"); } public int getCalories(Date date) { - return totalCaloriesConsumedInDay.get(date); + return totalCaloriesConsumedInDay.getOrDefault(date, -1); } private static boolean isValidCalories(int calories) { diff --git a/src/main/java/seedu/commands/Command.java b/src/main/java/seedu/commands/Command.java index bec763b85d..7e40c866e8 100644 --- a/src/main/java/seedu/commands/Command.java +++ b/src/main/java/seedu/commands/Command.java @@ -1,7 +1,7 @@ package seedu.commands; import seedu.calorietracker.CalorieTracker; -import seedu.workouttracker.workout.WorkoutList; +import seedu.workouttracker.WorkoutList; public class Command { diff --git a/src/main/java/seedu/commands/caloriecommands/ViewCaloriesCommand.java b/src/main/java/seedu/commands/caloriecommands/ViewCaloriesCommand.java new file mode 100644 index 0000000000..e593546444 --- /dev/null +++ b/src/main/java/seedu/commands/caloriecommands/ViewCaloriesCommand.java @@ -0,0 +1,29 @@ +package seedu.commands.caloriecommands; + +import seedu.commands.Command; +import seedu.parser.DateFormat; + +import java.util.Date; + +import static seedu.calorietracker.CalorieTracker.CALORIES_NOT_TRACKED; + +public class ViewCaloriesCommand extends Command { + + Date dateToView; + public ViewCaloriesCommand(Date dateToView) { + this.dateToView = dateToView; + } + + @Override + public void execute() { + DateFormat dateFormat = new DateFormat(dateToView); + String formattedDate = dateFormat.formatDate(); + System.out.println("test"); + if (calorieTracker.getCalories(dateToView) == CALORIES_NOT_TRACKED) { + System.out.println("Calories not tracked on " + formattedDate); + } else { + System.out.println("Calories consumed on " + formattedDate + ": " + + calorieTracker.getCalories(dateToView) + "kcal."); + } + } +} diff --git a/src/main/java/seedu/commands/workoutcommands/AddWorkoutCommand.java b/src/main/java/seedu/commands/workoutcommands/AddWorkoutCommand.java index e105a76542..883206dc2e 100644 --- a/src/main/java/seedu/commands/workoutcommands/AddWorkoutCommand.java +++ b/src/main/java/seedu/commands/workoutcommands/AddWorkoutCommand.java @@ -1,8 +1,8 @@ package seedu.commands.workoutcommands; import seedu.commands.Command; -import seedu.workouttracker.workout.Exercise; -import seedu.workouttracker.workout.WorkoutList; +import seedu.workouttracker.Exercise; +import seedu.workouttracker.WorkoutList; public class AddWorkoutCommand extends Command { private Exercise toAdd; diff --git a/src/main/java/seedu/commands/workoutcommands/DeleteWorkoutCommand.java b/src/main/java/seedu/commands/workoutcommands/DeleteWorkoutCommand.java index 0ce376316a..1dbce89380 100644 --- a/src/main/java/seedu/commands/workoutcommands/DeleteWorkoutCommand.java +++ b/src/main/java/seedu/commands/workoutcommands/DeleteWorkoutCommand.java @@ -1,9 +1,9 @@ package seedu.commands.workoutcommands; -import seedu.DateFormat; +import seedu.parser.DateFormat; import seedu.commands.Command; import seedu.ui.Ui; -import seedu.workouttracker.workout.Workout; +import seedu.workouttracker.Workout; import java.util.Date; diff --git a/src/main/java/seedu/commands/workoutcommands/EndWorkoutCommand.java b/src/main/java/seedu/commands/workoutcommands/EndWorkoutCommand.java index 9fbde30c10..877401ade6 100644 --- a/src/main/java/seedu/commands/workoutcommands/EndWorkoutCommand.java +++ b/src/main/java/seedu/commands/workoutcommands/EndWorkoutCommand.java @@ -1,7 +1,7 @@ package seedu.commands.workoutcommands; import seedu.commands.Command; -import seedu.workouttracker.workout.WorkoutList; +import seedu.workouttracker.WorkoutList; public class EndWorkoutCommand extends Command { public EndWorkoutCommand() { diff --git a/src/main/java/seedu/commands/workoutcommands/ListWorkoutCommand.java b/src/main/java/seedu/commands/workoutcommands/ListWorkoutCommand.java index 0bbe4a129b..386541f7f5 100644 --- a/src/main/java/seedu/commands/workoutcommands/ListWorkoutCommand.java +++ b/src/main/java/seedu/commands/workoutcommands/ListWorkoutCommand.java @@ -3,7 +3,7 @@ import seedu.commands.Command; import seedu.ui.Ui; -import seedu.workouttracker.workout.Workout; +import seedu.workouttracker.Workout; /** diff --git a/src/main/java/seedu/commands/workoutcommands/StartWorkoutCommand.java b/src/main/java/seedu/commands/workoutcommands/StartWorkoutCommand.java index 974e79f92c..7413e85639 100644 --- a/src/main/java/seedu/commands/workoutcommands/StartWorkoutCommand.java +++ b/src/main/java/seedu/commands/workoutcommands/StartWorkoutCommand.java @@ -1,8 +1,8 @@ package seedu.commands.workoutcommands; import seedu.commands.Command; -import seedu.workouttracker.workout.Workout; -import seedu.workouttracker.workout.WorkoutList; +import seedu.workouttracker.Workout; +import seedu.workouttracker.WorkoutList; import java.util.Date; diff --git a/src/main/java/seedu/commands/workoutcommands/ViewWorkoutCommand.java b/src/main/java/seedu/commands/workoutcommands/ViewWorkoutCommand.java index 284c4412ce..58de63c949 100644 --- a/src/main/java/seedu/commands/workoutcommands/ViewWorkoutCommand.java +++ b/src/main/java/seedu/commands/workoutcommands/ViewWorkoutCommand.java @@ -1,10 +1,10 @@ package seedu.commands.workoutcommands; -import seedu.DateFormat; import seedu.commands.Command; +import seedu.parser.DateFormat; import seedu.ui.Ui; -import seedu.workouttracker.workout.Workout; +import seedu.workouttracker.Workout; import java.util.Date; diff --git a/src/main/java/seedu/duke/Duke.java b/src/main/java/seedu/duke/Duke.java index fc7dc21191..f759460ebe 100644 --- a/src/main/java/seedu/duke/Duke.java +++ b/src/main/java/seedu/duke/Duke.java @@ -5,7 +5,7 @@ import seedu.commands.ExitCommand; import seedu.parser.Parser; import seedu.ui.Ui; -import seedu.workouttracker.workout.WorkoutList; +import seedu.workouttracker.WorkoutList; public class Duke { diff --git a/src/main/java/seedu/parser/CheckCaloriesInput.java b/src/main/java/seedu/parser/CheckCaloriesInput.java index 991a8069c1..3690f4cc57 100644 --- a/src/main/java/seedu/parser/CheckCaloriesInput.java +++ b/src/main/java/seedu/parser/CheckCaloriesInput.java @@ -3,9 +3,12 @@ import seedu.commands.Command; import seedu.commands.IncorrectCommand; import seedu.commands.caloriecommands.AddCalorieCommand; +import seedu.commands.caloriecommands.ViewCaloriesCommand; + import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Date; + import static seedu.commands.caloriecommands.AddCalorieCommand.CALORIES_NOT_GIVEN; public class CheckCaloriesInput { @@ -13,7 +16,7 @@ public class CheckCaloriesInput { private static final int FOOD_INDEX = 1; private static final int CALORIES_INDEX = 2; - //public static final DateFormat DATE_FORMAT = new SimpleDateFormat("dd/MM/yyyy"); + private static final SimpleDateFormat DATE_FORMAT = new SimpleDateFormat("dd/MM/yyyy"); public static Command processAddCalories(String arguments) { @@ -24,7 +27,7 @@ public static Command processAddCalories(String arguments) { try { String[] addCaloriesArguments = arguments.trim().split("\\s+", 3); - date = new SimpleDateFormat("dd/MM/yyyy").parse(addCaloriesArguments[DATE_INDEX].trim()); + date = DATE_FORMAT.parse (addCaloriesArguments[DATE_INDEX].trim()); food = addCaloriesArguments[FOOD_INDEX].trim(); if (addCaloriesArguments.length == 3) { @@ -45,4 +48,16 @@ public static Command processAddCalories(String arguments) { return new AddCalorieCommand(date, food, calories); } + + public static Command processViewCalories(String arguments) { + Date date; + try { + date = DATE_FORMAT.parse(arguments.trim()); + } catch (ParseException e) { + System.out.println("Invalid date format."); + return new IncorrectCommand(); + } + + return new ViewCaloriesCommand(date); + } } diff --git a/src/main/java/seedu/parser/CheckInputs.java b/src/main/java/seedu/parser/CheckInputs.java index f993bb2c64..3a1fe6b3fa 100644 --- a/src/main/java/seedu/parser/CheckInputs.java +++ b/src/main/java/seedu/parser/CheckInputs.java @@ -8,8 +8,7 @@ import seedu.commands.workoutcommands.ViewWorkoutCommand; import seedu.commands.Command; import seedu.commands.IncorrectCommand; -import seedu.workouttracker.workout.Exercise; -import java.text.DateFormat; +import seedu.workouttracker.Exercise; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Date; @@ -83,7 +82,7 @@ static Command processView(String arguments) { //@@ author ZIZI-czh private static Date parseDate(String arguments) { try { - DateFormat dateFormat = new SimpleDateFormat("dd/MM/yyyy"); + SimpleDateFormat dateFormat = new SimpleDateFormat("dd/MM/yy"); Date enteredDate = dateFormat.parse(arguments); Date currentDate = new Date(); if (enteredDate.compareTo(currentDate) > 0) { @@ -98,7 +97,7 @@ private static Date parseDate(String arguments) { } /** - * This methods used to check the input command based on the format and the date + * This method is used to check the input command based on the format and the date * @param arguments input * @return return false if the input does not follow the format */ diff --git a/src/main/java/seedu/parser/DateFormat.java b/src/main/java/seedu/parser/DateFormat.java index 17de5f34fc..5d1d333485 100644 --- a/src/main/java/seedu/parser/DateFormat.java +++ b/src/main/java/seedu/parser/DateFormat.java @@ -1,4 +1,4 @@ -package seedu; +package seedu.parser; import java.text.SimpleDateFormat; import java.util.Date; diff --git a/src/main/java/seedu/parser/Parser.java b/src/main/java/seedu/parser/Parser.java index c1f8bb20d4..6b45c77c9e 100644 --- a/src/main/java/seedu/parser/Parser.java +++ b/src/main/java/seedu/parser/Parser.java @@ -1,6 +1,5 @@ package seedu.parser; - import seedu.commands.Command; import seedu.commands.workoutcommands.EndWorkoutCommand; import seedu.commands.ExitCommand; @@ -42,6 +41,8 @@ public Command processCommand(String userInput) { return new HelpWorkoutCommand(); case "/cadd": return CheckCaloriesInput.processAddCalories(arguments); + case "/cview": + return CheckCaloriesInput.processViewCalories(arguments); default: return new IncorrectCommand(); } diff --git a/src/main/java/seedu/workout/WorkoutList.java b/src/main/java/seedu/workout/WorkoutList.java deleted file mode 100644 index 4bd6e238f1..0000000000 --- a/src/main/java/seedu/workout/WorkoutList.java +++ /dev/null @@ -1,35 +0,0 @@ -package seedu.workout; - -import seedu.workouttracker.workout.Workout; - -import java.util.ArrayList; - - - -public class WorkoutList { - public static final int NO_CURRENT_WORKOUT = -1; - public ArrayList workoutArrayList; - public int currentWorkoutIndex; - - public WorkoutList() { - workoutArrayList = new ArrayList<>(); - currentWorkoutIndex = NO_CURRENT_WORKOUT; - } - - public void addWorkout(Workout workout) { - workoutArrayList.add(workout); - currentWorkoutIndex = getLastIndex(); - } - - public void setCurrentWorkoutIndex(int currentWorkoutIndex) { - this.currentWorkoutIndex = currentWorkoutIndex; - } - - public int getLastIndex() { - return workoutArrayList.size() - 1; - } - - public Workout getCurrentWorkout() { - return workoutArrayList.get(currentWorkoutIndex); - } -} diff --git a/src/main/java/seedu/workouttracker/workout/Exercise.java b/src/main/java/seedu/workouttracker/Exercise.java similarity index 91% rename from src/main/java/seedu/workouttracker/workout/Exercise.java rename to src/main/java/seedu/workouttracker/Exercise.java index be6cfd9860..afbdd9be4a 100644 --- a/src/main/java/seedu/workouttracker/workout/Exercise.java +++ b/src/main/java/seedu/workouttracker/Exercise.java @@ -1,4 +1,4 @@ -package seedu.workouttracker.workout; +package seedu.workouttracker; public class Exercise { diff --git a/src/main/java/seedu/workouttracker/workout/Workout.java b/src/main/java/seedu/workouttracker/Workout.java similarity index 91% rename from src/main/java/seedu/workouttracker/workout/Workout.java rename to src/main/java/seedu/workouttracker/Workout.java index 3ed32ac937..ede4528419 100644 --- a/src/main/java/seedu/workouttracker/workout/Workout.java +++ b/src/main/java/seedu/workouttracker/Workout.java @@ -1,7 +1,6 @@ -package seedu.workouttracker.workout; +package seedu.workouttracker; - -import seedu.DateFormat; +import seedu.parser.DateFormat; import java.util.ArrayList; import java.util.Date; diff --git a/src/main/java/seedu/workouttracker/workout/WorkoutList.java b/src/main/java/seedu/workouttracker/WorkoutList.java similarity index 95% rename from src/main/java/seedu/workouttracker/workout/WorkoutList.java rename to src/main/java/seedu/workouttracker/WorkoutList.java index 42e31e0853..f2ba002bd9 100644 --- a/src/main/java/seedu/workouttracker/workout/WorkoutList.java +++ b/src/main/java/seedu/workouttracker/WorkoutList.java @@ -1,8 +1,7 @@ -package seedu.workouttracker.workout; +package seedu.workouttracker; import java.util.ArrayList; - public class WorkoutList { public static final int NO_CURRENT_WORKOUT = -1; public ArrayList workoutArrayList; diff --git a/src/test/java/seedu/commands/AddWorkoutCommandTest.java b/src/test/java/seedu/commands/AddWorkoutCommandTest.java index 5f20338a65..181a7b3b37 100644 --- a/src/test/java/seedu/commands/AddWorkoutCommandTest.java +++ b/src/test/java/seedu/commands/AddWorkoutCommandTest.java @@ -1,8 +1,8 @@ package seedu.commands; import org.junit.jupiter.api.Test; -import seedu.workouttracker.workout.Exercise; -import seedu.workouttracker.workout.Workout; +import seedu.workouttracker.Exercise; +import seedu.workouttracker.Workout; import java.text.ParseException; import java.text.SimpleDateFormat; diff --git a/src/test/java/seedu/commands/DeleteCommandTest.java b/src/test/java/seedu/commands/DeleteCommandTest.java index 0036e57751..95b1fe7f08 100644 --- a/src/test/java/seedu/commands/DeleteCommandTest.java +++ b/src/test/java/seedu/commands/DeleteCommandTest.java @@ -3,8 +3,8 @@ import org.junit.jupiter.api.Test; import seedu.DateFormat; import seedu.commands.workoutcommands.DeleteWorkoutCommand; -import seedu.workouttracker.workout.Workout; -import seedu.workouttracker.workout.WorkoutList; +import seedu.workouttracker.Workout; +import seedu.workouttracker.WorkoutList; import java.text.SimpleDateFormat; import java.util.Date; import static org.junit.jupiter.api.Assertions.assertEquals; diff --git a/src/test/java/seedu/commands/ListWorkoutCommandTest.java b/src/test/java/seedu/commands/ListWorkoutCommandTest.java index f63b9468ef..00489342f7 100644 --- a/src/test/java/seedu/commands/ListWorkoutCommandTest.java +++ b/src/test/java/seedu/commands/ListWorkoutCommandTest.java @@ -2,8 +2,8 @@ import org.junit.jupiter.api.Test; import seedu.commands.workoutcommands.ListWorkoutCommand; -import seedu.workouttracker.workout.Workout; -import seedu.workouttracker.workout.WorkoutList; +import seedu.workouttracker.Workout; +import seedu.workouttracker.WorkoutList; import java.io.ByteArrayOutputStream; import java.io.PrintStream; diff --git a/src/test/java/seedu/workout/WorkoutTest.java b/src/test/java/seedu/workout/WorkoutTest.java index 249545f3eb..46e003eb5e 100644 --- a/src/test/java/seedu/workout/WorkoutTest.java +++ b/src/test/java/seedu/workout/WorkoutTest.java @@ -2,7 +2,7 @@ import org.junit.jupiter.api.Test; import seedu.DateFormat; -import seedu.workouttracker.workout.Workout; +import seedu.workouttracker.Workout; import java.text.SimpleDateFormat; import java.util.Date; From 74d7b0bf94e8d00f2cc9929ad221c3b4e6585c79 Mon Sep 17 00:00:00 2001 From: guillaume-grn Date: Tue, 28 Mar 2023 12:44:40 +0800 Subject: [PATCH 062/152] Delete WorkoutList duplicate --- src/main/java/seedu/workout/WorkoutList.java | 35 -------------------- 1 file changed, 35 deletions(-) delete mode 100644 src/main/java/seedu/workout/WorkoutList.java diff --git a/src/main/java/seedu/workout/WorkoutList.java b/src/main/java/seedu/workout/WorkoutList.java deleted file mode 100644 index 4bd6e238f1..0000000000 --- a/src/main/java/seedu/workout/WorkoutList.java +++ /dev/null @@ -1,35 +0,0 @@ -package seedu.workout; - -import seedu.workouttracker.workout.Workout; - -import java.util.ArrayList; - - - -public class WorkoutList { - public static final int NO_CURRENT_WORKOUT = -1; - public ArrayList workoutArrayList; - public int currentWorkoutIndex; - - public WorkoutList() { - workoutArrayList = new ArrayList<>(); - currentWorkoutIndex = NO_CURRENT_WORKOUT; - } - - public void addWorkout(Workout workout) { - workoutArrayList.add(workout); - currentWorkoutIndex = getLastIndex(); - } - - public void setCurrentWorkoutIndex(int currentWorkoutIndex) { - this.currentWorkoutIndex = currentWorkoutIndex; - } - - public int getLastIndex() { - return workoutArrayList.size() - 1; - } - - public Workout getCurrentWorkout() { - return workoutArrayList.get(currentWorkoutIndex); - } -} From 579a2687b941976eaa4225a784b765edb098cf5f Mon Sep 17 00:00:00 2001 From: guillaume-grn Date: Tue, 28 Mar 2023 12:45:28 +0800 Subject: [PATCH 063/152] UG : Add CountSetsReps info --- docs/UserGuide.md | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/docs/UserGuide.md b/docs/UserGuide.md index 54093eaf1c..5ff252ee68 100644 --- a/docs/UserGuide.md +++ b/docs/UserGuide.md @@ -18,6 +18,7 @@ planning future exercises. - [Display workout list: /list](#display-workout-list--list) - [Display a workout: /view](#display-workout-view--list) - [Delete a workout: /delete](#delete-a-workout--delete) + - [Count Sets and reps over a week: /count](#count-sets-and-reps--count) - [Exit app: /exit](#exit-app--exit) - [FAQ](#faq) - [Command Summary](#command-summary) @@ -110,6 +111,23 @@ Expected output: ``` Workout deleted successfully. ``` +### Counting sets and reps over a week: `/count` +Displays the list of distinct exercises over a week and the associated total number of sets and reps for each one + +Format: `/count
` + +Example of usage: + +`/count 21/03/23` + +Expected output: +``` +Exercises and number of sets and reps for the week of Tue Mar 21 00:00:00 SGT 2023 +---------------------------------- +Bench Press - 4 sets - 48 reps +Squats - 5 sets - 60 reps +---------------------------------- +``` ### Exit the App: `/exit` Delete the specified workout From 63ca80c97eccdf78f39bfd8974b10301f210918c Mon Sep 17 00:00:00 2001 From: guillaume-grn Date: Tue, 28 Mar 2023 12:57:04 +0800 Subject: [PATCH 064/152] Make test packages match main packages --- .../{ => workoutcommands}/AddWorkoutCommandTest.java | 2 +- .../commands/{ => workoutcommands}/DeleteCommandTest.java | 3 ++- .../{ => workoutcommands}/ListWorkoutCommandTest.java | 3 ++- src/test/java/seedu/workout/WorkoutListTest.java | 5 ----- .../java/seedu/{ => workouttracker}/workout/WorkoutTest.java | 2 +- 5 files changed, 6 insertions(+), 9 deletions(-) rename src/test/java/seedu/commands/{ => workoutcommands}/AddWorkoutCommandTest.java (95%) rename src/test/java/seedu/commands/{ => workoutcommands}/DeleteCommandTest.java (96%) rename src/test/java/seedu/commands/{ => workoutcommands}/ListWorkoutCommandTest.java (96%) delete mode 100644 src/test/java/seedu/workout/WorkoutListTest.java rename src/test/java/seedu/{ => workouttracker}/workout/WorkoutTest.java (93%) diff --git a/src/test/java/seedu/commands/AddWorkoutCommandTest.java b/src/test/java/seedu/commands/workoutcommands/AddWorkoutCommandTest.java similarity index 95% rename from src/test/java/seedu/commands/AddWorkoutCommandTest.java rename to src/test/java/seedu/commands/workoutcommands/AddWorkoutCommandTest.java index 5f20338a65..2b215175e4 100644 --- a/src/test/java/seedu/commands/AddWorkoutCommandTest.java +++ b/src/test/java/seedu/commands/workoutcommands/AddWorkoutCommandTest.java @@ -1,4 +1,4 @@ -package seedu.commands; +package seedu.commands.workoutcommands; import org.junit.jupiter.api.Test; import seedu.workouttracker.workout.Exercise; diff --git a/src/test/java/seedu/commands/DeleteCommandTest.java b/src/test/java/seedu/commands/workoutcommands/DeleteCommandTest.java similarity index 96% rename from src/test/java/seedu/commands/DeleteCommandTest.java rename to src/test/java/seedu/commands/workoutcommands/DeleteCommandTest.java index 0036e57751..9713fab829 100644 --- a/src/test/java/seedu/commands/DeleteCommandTest.java +++ b/src/test/java/seedu/commands/workoutcommands/DeleteCommandTest.java @@ -1,7 +1,8 @@ -package seedu.commands; +package seedu.commands.workoutcommands; import org.junit.jupiter.api.Test; import seedu.DateFormat; +import seedu.commands.Command; import seedu.commands.workoutcommands.DeleteWorkoutCommand; import seedu.workouttracker.workout.Workout; import seedu.workouttracker.workout.WorkoutList; diff --git a/src/test/java/seedu/commands/ListWorkoutCommandTest.java b/src/test/java/seedu/commands/workoutcommands/ListWorkoutCommandTest.java similarity index 96% rename from src/test/java/seedu/commands/ListWorkoutCommandTest.java rename to src/test/java/seedu/commands/workoutcommands/ListWorkoutCommandTest.java index f63b9468ef..ef02b52d75 100644 --- a/src/test/java/seedu/commands/ListWorkoutCommandTest.java +++ b/src/test/java/seedu/commands/workoutcommands/ListWorkoutCommandTest.java @@ -1,6 +1,7 @@ -package seedu.commands; +package seedu.commands.workoutcommands; import org.junit.jupiter.api.Test; +import seedu.commands.Command; import seedu.commands.workoutcommands.ListWorkoutCommand; import seedu.workouttracker.workout.Workout; import seedu.workouttracker.workout.WorkoutList; diff --git a/src/test/java/seedu/workout/WorkoutListTest.java b/src/test/java/seedu/workout/WorkoutListTest.java deleted file mode 100644 index bb0973ab42..0000000000 --- a/src/test/java/seedu/workout/WorkoutListTest.java +++ /dev/null @@ -1,5 +0,0 @@ -package seedu.workout; - -public class WorkoutListTest { - -} diff --git a/src/test/java/seedu/workout/WorkoutTest.java b/src/test/java/seedu/workouttracker/workout/WorkoutTest.java similarity index 93% rename from src/test/java/seedu/workout/WorkoutTest.java rename to src/test/java/seedu/workouttracker/workout/WorkoutTest.java index 249545f3eb..01e9cb2e0c 100644 --- a/src/test/java/seedu/workout/WorkoutTest.java +++ b/src/test/java/seedu/workouttracker/workout/WorkoutTest.java @@ -1,4 +1,4 @@ -package seedu.workout; +package seedu.workouttracker.workout; import org.junit.jupiter.api.Test; import seedu.DateFormat; From d4787d582f0428af2f11b22b87aa79bc6b536f65 Mon Sep 17 00:00:00 2001 From: guillaume-grn Date: Tue, 28 Mar 2023 13:22:24 +0800 Subject: [PATCH 065/152] Rename Workout package --- src/main/java/seedu/workout/Exercise.java | 58 +++++++++++++ .../{workouttracker => }/workout/Workout.java | 7 +- src/main/java/seedu/workout/WorkoutList.java | 84 +++++++++++++++++++ .../workouttracker/workout/Exercise.java | 19 ----- .../workouttracker/workout/WorkoutList.java | 32 ------- src/test/java/seedu/workout/ExerciseTest.java | 25 ++++++ .../java/seedu/workout/WorkoutListTest.java | 5 ++ .../workout/WorkoutTest.java | 7 +- 8 files changed, 180 insertions(+), 57 deletions(-) create mode 100644 src/main/java/seedu/workout/Exercise.java rename src/main/java/seedu/{workouttracker => }/workout/Workout.java (85%) create mode 100644 src/main/java/seedu/workout/WorkoutList.java delete mode 100644 src/main/java/seedu/workouttracker/workout/Exercise.java delete mode 100644 src/main/java/seedu/workouttracker/workout/WorkoutList.java create mode 100644 src/test/java/seedu/workout/ExerciseTest.java create mode 100644 src/test/java/seedu/workout/WorkoutListTest.java rename src/test/java/seedu/{workouttracker => }/workout/WorkoutTest.java (80%) diff --git a/src/main/java/seedu/workout/Exercise.java b/src/main/java/seedu/workout/Exercise.java new file mode 100644 index 0000000000..91a4800dc0 --- /dev/null +++ b/src/main/java/seedu/workout/Exercise.java @@ -0,0 +1,58 @@ +package seedu.workout; + +public class Exercise { + + private String name; + private String weight; + private String repsPerSet; + + public Exercise(String name, String weight, String repsPerSet){ + this.name = name; + this.weight = weight; + this.repsPerSet = repsPerSet; + } + + //@@ author guillaume-grn + public int getSetsCount() { + String repsPerSet = this.repsPerSet; + String[] sets = repsPerSet.split(" "); + return sets.length; + } + + //@@ author guillaume-grn + public int getRepsCount() { + String repsPerSet = this.repsPerSet; + String[] sets = repsPerSet.split(" "); + int totalReps = 0; + for (String set : sets) { + try { + totalReps += Integer.parseInt(set); + } catch (NumberFormatException e) { + System.out.println("Invalid reps format:" + repsPerSet); + return 0; + } + } + return totalReps; + } + + public String getName() { + return name; + } + + public String getWeight() { + return weight; + } + + public String getRepsPerSet() { + return repsPerSet; + } + + public void setRepsPerSet(String repsPerSet) { + this.repsPerSet = repsPerSet; + } + + @Override + public String toString() { + return name + ' ' + weight + ' ' + repsPerSet; + } +} diff --git a/src/main/java/seedu/workouttracker/workout/Workout.java b/src/main/java/seedu/workout/Workout.java similarity index 85% rename from src/main/java/seedu/workouttracker/workout/Workout.java rename to src/main/java/seedu/workout/Workout.java index 3ed32ac937..789f659c70 100644 --- a/src/main/java/seedu/workouttracker/workout/Workout.java +++ b/src/main/java/seedu/workout/Workout.java @@ -1,4 +1,4 @@ -package seedu.workouttracker.workout; +package seedu.workout; import seedu.DateFormat; @@ -20,10 +20,13 @@ public void addExercise(Exercise exercise) { System.out.println("Added " + exercise); } - public String getDate() { + public String getStringDate() { DateFormat dateFormat = new DateFormat(date); return dateFormat.formatDate(); + } + public Date getDate() { + return date; } public void setDate(Date date) { diff --git a/src/main/java/seedu/workout/WorkoutList.java b/src/main/java/seedu/workout/WorkoutList.java new file mode 100644 index 0000000000..5d88c9f298 --- /dev/null +++ b/src/main/java/seedu/workout/WorkoutList.java @@ -0,0 +1,84 @@ +package seedu.workout; + +import java.util.ArrayList; +import java.util.Calendar; +import java.util.Date; +import seedu.ui.Ui; + +public class WorkoutList { + public static final int NO_CURRENT_WORKOUT = -1; + public ArrayList workoutArrayList; + public int currentWorkoutIndex; + + public WorkoutList() { + workoutArrayList = new ArrayList<>(); + currentWorkoutIndex = NO_CURRENT_WORKOUT; + } + + public void addWorkout(Workout workout) { + workoutArrayList.add(workout); + currentWorkoutIndex = getLastIndex(); + } + + public void setCurrentWorkoutIndex(int currentWorkoutIndex) { + this.currentWorkoutIndex = currentWorkoutIndex; + } + + public int getLastIndex() { + return workoutArrayList.size() - 1; + } + + public Workout getCurrentWorkout() { + return workoutArrayList.get(currentWorkoutIndex); + } + + //@@ author guillaume-grn + public ArrayList countSetsRepsPreparation(Date dayInSpecificWeekDate) { + WorkoutList workoutsInSpecificWeek = getWorkoutsInSpecificWeek(dayInSpecificWeekDate); + ArrayList distinctExercisesList = new ArrayList<>(); + for (Workout workout : workoutsInSpecificWeek.workoutArrayList) { + for (Exercise exercise : workout.getExercises()) { + boolean isExistingExercise = false; + for (Exercise distinctExercise : distinctExercisesList) { + if (exercise.getName().equals(distinctExercise.getName())) { + distinctExercise.setRepsPerSet(distinctExercise.getRepsPerSet() + " " + + exercise.getRepsPerSet()); + isExistingExercise = true; + break; + } + } + if (!isExistingExercise) { + Exercise distinctExercise = new Exercise(exercise.getName(), exercise.getWeight(), + exercise.getRepsPerSet()); + distinctExercisesList.add(distinctExercise); + } + } + } + return distinctExercisesList; + } + + //@@ author guillaume-grn + public void countSetsReps(Date dayInSpecificWeekDate) { + ArrayList distinctExercisesList = countSetsRepsPreparation(dayInSpecificWeekDate); + Ui.displayCountSetsReps(distinctExercisesList,dayInSpecificWeekDate); + } + + + //@@ author guillaume-grn + public WorkoutList getWorkoutsInSpecificWeek(Date dayInSpecificWeekDate) { + WorkoutList workoutsInSpecificWeek = new WorkoutList(); + Calendar calendar = Calendar.getInstance(); + calendar.setTime(dayInSpecificWeekDate); + calendar.set(Calendar.DAY_OF_WEEK, Calendar.MONDAY); + Date startOfWeekDate = calendar.getTime(); + calendar.set(Calendar.DAY_OF_WEEK, Calendar.SUNDAY); + Date endOfWeekDate = calendar.getTime(); + for (Workout workout : workoutArrayList) { + Date workoutDate = workout.getDate(); + if (workoutDate.compareTo(startOfWeekDate) >= 0 && workoutDate.compareTo(endOfWeekDate) <= 0) { + workoutsInSpecificWeek.addWorkout(workout); + } + } + return workoutsInSpecificWeek; + } +} diff --git a/src/main/java/seedu/workouttracker/workout/Exercise.java b/src/main/java/seedu/workouttracker/workout/Exercise.java deleted file mode 100644 index be6cfd9860..0000000000 --- a/src/main/java/seedu/workouttracker/workout/Exercise.java +++ /dev/null @@ -1,19 +0,0 @@ -package seedu.workouttracker.workout; - -public class Exercise { - - private String name; - private String weight; - private String repsPerSet; - - public Exercise(String name, String weight, String repsPerSet){ - this.name = name; - this.weight = weight; - this.repsPerSet = repsPerSet; - } - - @Override - public String toString() { - return name + ' ' + weight + ' ' + repsPerSet; - } -} diff --git a/src/main/java/seedu/workouttracker/workout/WorkoutList.java b/src/main/java/seedu/workouttracker/workout/WorkoutList.java deleted file mode 100644 index 42e31e0853..0000000000 --- a/src/main/java/seedu/workouttracker/workout/WorkoutList.java +++ /dev/null @@ -1,32 +0,0 @@ -package seedu.workouttracker.workout; - -import java.util.ArrayList; - - -public class WorkoutList { - public static final int NO_CURRENT_WORKOUT = -1; - public ArrayList workoutArrayList; - public int currentWorkoutIndex; - - public WorkoutList() { - workoutArrayList = new ArrayList<>(); - currentWorkoutIndex = NO_CURRENT_WORKOUT; - } - - public void addWorkout(Workout workout) { - workoutArrayList.add(workout); - currentWorkoutIndex = getLastIndex(); - } - - public void setCurrentWorkoutIndex(int currentWorkoutIndex) { - this.currentWorkoutIndex = currentWorkoutIndex; - } - - public int getLastIndex() { - return workoutArrayList.size() - 1; - } - - public Workout getCurrentWorkout() { - return workoutArrayList.get(currentWorkoutIndex); - } -} diff --git a/src/test/java/seedu/workout/ExerciseTest.java b/src/test/java/seedu/workout/ExerciseTest.java new file mode 100644 index 0000000000..581548df08 --- /dev/null +++ b/src/test/java/seedu/workout/ExerciseTest.java @@ -0,0 +1,25 @@ +package seedu.workout; + +import org.junit.jupiter.api.Test; +import static org.junit.jupiter.api.Assertions.assertEquals; + +public class ExerciseTest { + + @Test + public void testGetSetsCount() { + Exercise exercise = new Exercise("deadlift", "100", "8 8 9"); + int expected = 3; + int actual = exercise.getSetsCount(); + assertEquals(expected, actual); + } + + @Test + public void testGetRepsCount() { + Exercise exercise1 = new Exercise("Bench Press", "100kg", "8 6 4"); + Exercise exercise2 = new Exercise("Squats", "80kg", "10 10 10 10"); + + assertEquals(18, exercise1.getRepsCount()); + assertEquals(40, exercise2.getRepsCount()); + } +} + diff --git a/src/test/java/seedu/workout/WorkoutListTest.java b/src/test/java/seedu/workout/WorkoutListTest.java new file mode 100644 index 0000000000..bb0973ab42 --- /dev/null +++ b/src/test/java/seedu/workout/WorkoutListTest.java @@ -0,0 +1,5 @@ +package seedu.workout; + +public class WorkoutListTest { + +} diff --git a/src/test/java/seedu/workouttracker/workout/WorkoutTest.java b/src/test/java/seedu/workout/WorkoutTest.java similarity index 80% rename from src/test/java/seedu/workouttracker/workout/WorkoutTest.java rename to src/test/java/seedu/workout/WorkoutTest.java index 01e9cb2e0c..7a90710a5c 100644 --- a/src/test/java/seedu/workouttracker/workout/WorkoutTest.java +++ b/src/test/java/seedu/workout/WorkoutTest.java @@ -1,8 +1,7 @@ -package seedu.workouttracker.workout; +package seedu.workout; import org.junit.jupiter.api.Test; import seedu.DateFormat; -import seedu.workouttracker.workout.Workout; import java.text.SimpleDateFormat; import java.util.Date; @@ -18,14 +17,14 @@ public void testGetDateAndSetDate() throws Exception { Workout workout = new Workout(expectedDate); DateFormat dateFormat1 = new DateFormat(expectedDate); String formattedDate1 = dateFormat1.formatDate(); - assertEquals(formattedDate1, workout.getDate()); + assertEquals(formattedDate1, workout.getStringDate()); String newDatestring = "06/03/2024"; Date newDate = dateFormatting.parse(newDatestring); DateFormat dateFormat2 = new DateFormat(newDate); String formattedDate2 = dateFormat2.formatDate(); workout.setDate(newDate); - assertEquals(formattedDate2, workout.getDate()); + assertEquals(formattedDate2, workout.getStringDate()); } From cb0c961abf9579653a13ad962a2c5990fef01ffc Mon Sep 17 00:00:00 2001 From: guillaume-grn Date: Tue, 28 Mar 2023 13:23:09 +0800 Subject: [PATCH 066/152] Command : Fix an error --- src/main/java/seedu/commands/Command.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/main/java/seedu/commands/Command.java b/src/main/java/seedu/commands/Command.java index bec763b85d..00ecc22c29 100644 --- a/src/main/java/seedu/commands/Command.java +++ b/src/main/java/seedu/commands/Command.java @@ -1,13 +1,13 @@ package seedu.commands; import seedu.calorietracker.CalorieTracker; -import seedu.workouttracker.workout.WorkoutList; +import seedu.workout.WorkoutList; public class Command { public WorkoutList workoutList = new WorkoutList(); protected CalorieTracker calorieTracker; - protected Command() { + public Command() { } public void setData(WorkoutList workoutList, CalorieTracker calorieTracker) { From 7e0d7d3d07aa080c866b7463f09b31036d4d792a Mon Sep 17 00:00:00 2001 From: guillaume-grn Date: Tue, 28 Mar 2023 13:24:06 +0800 Subject: [PATCH 067/152] Rename Workout package --- .../seedu/commands/workoutcommands/AddWorkoutCommand.java | 4 ++-- .../seedu/commands/workoutcommands/DeleteWorkoutCommand.java | 4 ++-- .../seedu/commands/workoutcommands/EndWorkoutCommand.java | 2 +- .../seedu/commands/workoutcommands/ListWorkoutCommand.java | 4 ++-- .../seedu/commands/workoutcommands/StartWorkoutCommand.java | 4 ++-- .../seedu/commands/workoutcommands/ViewWorkoutCommand.java | 4 ++-- src/main/java/seedu/duke/Duke.java | 2 +- 7 files changed, 12 insertions(+), 12 deletions(-) diff --git a/src/main/java/seedu/commands/workoutcommands/AddWorkoutCommand.java b/src/main/java/seedu/commands/workoutcommands/AddWorkoutCommand.java index e105a76542..5bf44581e2 100644 --- a/src/main/java/seedu/commands/workoutcommands/AddWorkoutCommand.java +++ b/src/main/java/seedu/commands/workoutcommands/AddWorkoutCommand.java @@ -1,8 +1,8 @@ package seedu.commands.workoutcommands; import seedu.commands.Command; -import seedu.workouttracker.workout.Exercise; -import seedu.workouttracker.workout.WorkoutList; +import seedu.workout.Exercise; +import seedu.workout.WorkoutList; public class AddWorkoutCommand extends Command { private Exercise toAdd; diff --git a/src/main/java/seedu/commands/workoutcommands/DeleteWorkoutCommand.java b/src/main/java/seedu/commands/workoutcommands/DeleteWorkoutCommand.java index 0ce376316a..91584514ba 100644 --- a/src/main/java/seedu/commands/workoutcommands/DeleteWorkoutCommand.java +++ b/src/main/java/seedu/commands/workoutcommands/DeleteWorkoutCommand.java @@ -3,7 +3,7 @@ import seedu.DateFormat; import seedu.commands.Command; import seedu.ui.Ui; -import seedu.workouttracker.workout.Workout; +import seedu.workout.Workout; import java.util.Date; @@ -32,7 +32,7 @@ public void execute() { for (Workout workout : workoutList.workoutArrayList) { DateFormat dateFormat = new DateFormat(workoutToDeleteDate); String formattedDate = dateFormat.formatDate(); - if (workout.getDate().equals(formattedDate)) { + if (workout.getStringDate().equals(formattedDate)) { workoutList.workoutArrayList.remove(workout); System.out.println("Workout deleted successfully."); Ui.showSeparator(); diff --git a/src/main/java/seedu/commands/workoutcommands/EndWorkoutCommand.java b/src/main/java/seedu/commands/workoutcommands/EndWorkoutCommand.java index 9fbde30c10..69d542e9bd 100644 --- a/src/main/java/seedu/commands/workoutcommands/EndWorkoutCommand.java +++ b/src/main/java/seedu/commands/workoutcommands/EndWorkoutCommand.java @@ -1,7 +1,7 @@ package seedu.commands.workoutcommands; import seedu.commands.Command; -import seedu.workouttracker.workout.WorkoutList; +import seedu.workout.WorkoutList; public class EndWorkoutCommand extends Command { public EndWorkoutCommand() { diff --git a/src/main/java/seedu/commands/workoutcommands/ListWorkoutCommand.java b/src/main/java/seedu/commands/workoutcommands/ListWorkoutCommand.java index 0bbe4a129b..0856f6b7ba 100644 --- a/src/main/java/seedu/commands/workoutcommands/ListWorkoutCommand.java +++ b/src/main/java/seedu/commands/workoutcommands/ListWorkoutCommand.java @@ -3,7 +3,7 @@ import seedu.commands.Command; import seedu.ui.Ui; -import seedu.workouttracker.workout.Workout; +import seedu.workout.Workout; /** @@ -26,7 +26,7 @@ public void execute() { if (!workoutList.workoutArrayList.isEmpty()) { System.out.println("Here are the list of dates for your workout: "); for (Workout workout : workoutList.workoutArrayList) { - System.out.println(workout.getDate()); + System.out.println(workout.getStringDate()); } Ui.showSeparator(); } else { diff --git a/src/main/java/seedu/commands/workoutcommands/StartWorkoutCommand.java b/src/main/java/seedu/commands/workoutcommands/StartWorkoutCommand.java index 974e79f92c..f1b578ee6c 100644 --- a/src/main/java/seedu/commands/workoutcommands/StartWorkoutCommand.java +++ b/src/main/java/seedu/commands/workoutcommands/StartWorkoutCommand.java @@ -1,8 +1,8 @@ package seedu.commands.workoutcommands; import seedu.commands.Command; -import seedu.workouttracker.workout.Workout; -import seedu.workouttracker.workout.WorkoutList; +import seedu.workout.Workout; +import seedu.workout.WorkoutList; import java.util.Date; diff --git a/src/main/java/seedu/commands/workoutcommands/ViewWorkoutCommand.java b/src/main/java/seedu/commands/workoutcommands/ViewWorkoutCommand.java index 284c4412ce..4a2b2bc333 100644 --- a/src/main/java/seedu/commands/workoutcommands/ViewWorkoutCommand.java +++ b/src/main/java/seedu/commands/workoutcommands/ViewWorkoutCommand.java @@ -4,7 +4,7 @@ import seedu.commands.Command; import seedu.ui.Ui; -import seedu.workouttracker.workout.Workout; +import seedu.workout.Workout; import java.util.Date; @@ -22,7 +22,7 @@ public void execute() { for (Workout workout : workoutList.workoutArrayList) { DateFormat dateFormat = new DateFormat(workoutToViewDate); String formattedDate = dateFormat.formatDate(); - if (workout.getDate().equals(workoutToViewDate)) { + if (workout.getStringDate().equals(workoutToViewDate)) { System.out.println(workout.getExercises()); Ui.showSeparator(); return; diff --git a/src/main/java/seedu/duke/Duke.java b/src/main/java/seedu/duke/Duke.java index fc7dc21191..99d2cbfdf6 100644 --- a/src/main/java/seedu/duke/Duke.java +++ b/src/main/java/seedu/duke/Duke.java @@ -5,7 +5,7 @@ import seedu.commands.ExitCommand; import seedu.parser.Parser; import seedu.ui.Ui; -import seedu.workouttracker.workout.WorkoutList; +import seedu.workout.WorkoutList; public class Duke { From a195695cc2886906cb5374c8934499df300ae0aa Mon Sep 17 00:00:00 2001 From: guillaume-grn Date: Tue, 28 Mar 2023 13:40:20 +0800 Subject: [PATCH 068/152] Add CountSetsReps feature --- .../countcommands/CountSetsRepsCommand.java | 23 +++++++ src/main/java/seedu/parser/CheckInputs.java | 16 ++++- src/main/java/seedu/parser/Parser.java | 2 + src/main/java/seedu/ui/Ui.java | 19 ++++++ .../AddWorkoutCommandTest.java | 4 +- .../workoutcommands/DeleteCommandTest.java | 7 +- .../ListWorkoutCommandTest.java | 5 +- .../java/seedu/workout/WorkoutListTest.java | 64 +++++++++++++++++++ 8 files changed, 130 insertions(+), 10 deletions(-) create mode 100644 src/main/java/seedu/commands/countcommands/CountSetsRepsCommand.java diff --git a/src/main/java/seedu/commands/countcommands/CountSetsRepsCommand.java b/src/main/java/seedu/commands/countcommands/CountSetsRepsCommand.java new file mode 100644 index 0000000000..068ec2ce8d --- /dev/null +++ b/src/main/java/seedu/commands/countcommands/CountSetsRepsCommand.java @@ -0,0 +1,23 @@ +package seedu.commands.countcommands; + +import seedu.commands.Command; +import seedu.workout.WorkoutList; + +import java.util.Date; + +//@@ author guillaume-grn +public class CountSetsRepsCommand extends Command { + Date dayInSpecificWeekDate; + public CountSetsRepsCommand(Date dayInSpecificWeekDate) { + this.dayInSpecificWeekDate = dayInSpecificWeekDate; + } + + @Override + public void execute() { + if (workoutList.currentWorkoutIndex == WorkoutList.NO_CURRENT_WORKOUT) { + workoutList.countSetsReps(dayInSpecificWeekDate); + return; + } + System.out.println("End your current workout before asking for Count command"); + } +} diff --git a/src/main/java/seedu/parser/CheckInputs.java b/src/main/java/seedu/parser/CheckInputs.java index f993bb2c64..4308d2800d 100644 --- a/src/main/java/seedu/parser/CheckInputs.java +++ b/src/main/java/seedu/parser/CheckInputs.java @@ -1,6 +1,7 @@ package seedu.parser; +import seedu.commands.countcommands.CountSetsRepsCommand; import seedu.commands.workoutcommands.AddWorkoutCommand; import seedu.commands.workoutcommands.DeleteWorkoutCommand; import seedu.commands.workoutcommands.ListWorkoutCommand; @@ -8,7 +9,7 @@ import seedu.commands.workoutcommands.ViewWorkoutCommand; import seedu.commands.Command; import seedu.commands.IncorrectCommand; -import seedu.workouttracker.workout.Exercise; +import seedu.workout.Exercise; import java.text.DateFormat; import java.text.ParseException; import java.text.SimpleDateFormat; @@ -74,6 +75,19 @@ static Command processView(String arguments) { return date != null && parseInput(arguments) ? new ViewWorkoutCommand(date) : new IncorrectCommand(); } + //@@ author guillaume-grn + static Command processSetsRepsCount(String arguments) { + Date date; + try { + DateFormat dateFormat = new SimpleDateFormat("dd/MM/yy"); + date = dateFormat.parse(arguments); + } catch (ParseException e) { + System.out.println("Invalid date format. Please enter the date in the format dd/mm/yy."); + return new IncorrectCommand(); + } + return new CountSetsRepsCommand(date); + } + /** * This method is used to check the input date format diff --git a/src/main/java/seedu/parser/Parser.java b/src/main/java/seedu/parser/Parser.java index c1f8bb20d4..47ec4826f7 100644 --- a/src/main/java/seedu/parser/Parser.java +++ b/src/main/java/seedu/parser/Parser.java @@ -42,6 +42,8 @@ public Command processCommand(String userInput) { return new HelpWorkoutCommand(); case "/cadd": return CheckCaloriesInput.processAddCalories(arguments); + case "/count": + return CheckInputs.processSetsRepsCount(arguments); default: return new IncorrectCommand(); } diff --git a/src/main/java/seedu/ui/Ui.java b/src/main/java/seedu/ui/Ui.java index ff30b8aada..ef33ae1050 100644 --- a/src/main/java/seedu/ui/Ui.java +++ b/src/main/java/seedu/ui/Ui.java @@ -1,5 +1,9 @@ package seedu.ui; +import seedu.workout.Exercise; + +import java.util.ArrayList; +import java.util.Date; import java.util.Scanner; public class Ui { @@ -44,4 +48,19 @@ public static void showWelcomeMessage() { showLine(); showGreeting(); } + + //@@ author guillaume-grn + public static void displayCountSetsReps(ArrayList distinctExercisesList, Date dayInSpecificWeekDate) { + if (distinctExercisesList.isEmpty()) { + System.out.println("There are no workouts reported during this week !"); + return; + } + System.out.println("Exercises and number of sets and reps for the week of " + dayInSpecificWeekDate); + Ui.showSeparator(); + for (Exercise exercise : distinctExercisesList) { + System.out.println(exercise.getName() + " - " + exercise.getSetsCount() + " sets" + " - " + + exercise.getRepsCount() + " reps"); + } + Ui.showSeparator(); + } } diff --git a/src/test/java/seedu/commands/workoutcommands/AddWorkoutCommandTest.java b/src/test/java/seedu/commands/workoutcommands/AddWorkoutCommandTest.java index 2b215175e4..51fe163113 100644 --- a/src/test/java/seedu/commands/workoutcommands/AddWorkoutCommandTest.java +++ b/src/test/java/seedu/commands/workoutcommands/AddWorkoutCommandTest.java @@ -1,8 +1,8 @@ package seedu.commands.workoutcommands; import org.junit.jupiter.api.Test; -import seedu.workouttracker.workout.Exercise; -import seedu.workouttracker.workout.Workout; +import seedu.workout.Exercise; +import seedu.workout.Workout; import java.text.ParseException; import java.text.SimpleDateFormat; diff --git a/src/test/java/seedu/commands/workoutcommands/DeleteCommandTest.java b/src/test/java/seedu/commands/workoutcommands/DeleteCommandTest.java index 9713fab829..dae75717c5 100644 --- a/src/test/java/seedu/commands/workoutcommands/DeleteCommandTest.java +++ b/src/test/java/seedu/commands/workoutcommands/DeleteCommandTest.java @@ -3,9 +3,8 @@ import org.junit.jupiter.api.Test; import seedu.DateFormat; import seedu.commands.Command; -import seedu.commands.workoutcommands.DeleteWorkoutCommand; -import seedu.workouttracker.workout.Workout; -import seedu.workouttracker.workout.WorkoutList; +import seedu.workout.Workout; +import seedu.workout.WorkoutList; import java.text.SimpleDateFormat; import java.util.Date; import static org.junit.jupiter.api.Assertions.assertEquals; @@ -46,7 +45,7 @@ public void testRemoveWorkout() throws Exception { assertEquals(1, workoutLists.workoutArrayList.size()); DateFormat dateFormat = new DateFormat(date2); String formattedDate = dateFormat.formatDate(); - assertEquals(formattedDate, workoutLists.workoutArrayList.get(0).getDate()); + assertEquals(formattedDate, workoutLists.workoutArrayList.get(0).getStringDate()); // Try to remove workout1 again (should not be in the list) delete.execute(); diff --git a/src/test/java/seedu/commands/workoutcommands/ListWorkoutCommandTest.java b/src/test/java/seedu/commands/workoutcommands/ListWorkoutCommandTest.java index ef02b52d75..bb0ddb8006 100644 --- a/src/test/java/seedu/commands/workoutcommands/ListWorkoutCommandTest.java +++ b/src/test/java/seedu/commands/workoutcommands/ListWorkoutCommandTest.java @@ -2,9 +2,8 @@ import org.junit.jupiter.api.Test; import seedu.commands.Command; -import seedu.commands.workoutcommands.ListWorkoutCommand; -import seedu.workouttracker.workout.Workout; -import seedu.workouttracker.workout.WorkoutList; +import seedu.workout.Workout; +import seedu.workout.WorkoutList; import java.io.ByteArrayOutputStream; import java.io.PrintStream; diff --git a/src/test/java/seedu/workout/WorkoutListTest.java b/src/test/java/seedu/workout/WorkoutListTest.java index bb0973ab42..b7fea72a78 100644 --- a/src/test/java/seedu/workout/WorkoutListTest.java +++ b/src/test/java/seedu/workout/WorkoutListTest.java @@ -1,5 +1,69 @@ package seedu.workout; +import org.junit.jupiter.api.Test; +import java.text.SimpleDateFormat; +import java.util.ArrayList; +import java.util.Calendar; +import static org.junit.jupiter.api.Assertions.assertEquals; + public class WorkoutListTest { + public SimpleDateFormat dateFormat = new SimpleDateFormat("dd/MM/yy"); + + //@@ author guillaume-grn + @Test + public void testGetWorkoutsInSpecificWeek() { + // Create a new WorkoutList + WorkoutList workoutList = new WorkoutList(); + + // Add some workouts to the WorkoutList + Calendar calendar0 = Calendar.getInstance(); + calendar0.set(2022, Calendar.DECEMBER, 31); // Saturday + workoutList.addWorkout(new Workout(calendar0.getTime())); + Calendar calendar1 = Calendar.getInstance(); + calendar1.set(2023, Calendar.JANUARY, 01); // Sunday + workoutList.addWorkout(new Workout(calendar1.getTime())); + Calendar calendar2 = Calendar.getInstance(); + calendar2.set(2023, Calendar.JANUARY, 02); // Monday + workoutList.addWorkout(new Workout(calendar2.getTime())); + + // Get the workouts for the week of January 01, 2023 using any day in the week + Calendar calendar3 = Calendar.getInstance(); + calendar3.set(2022, Calendar.DECEMBER, 30); // Friday + WorkoutList workoutsInSpecificWeek = workoutList.getWorkoutsInSpecificWeek(calendar3.getTime()); + + // Check that the correct workouts are returned + assertEquals(2, workoutsInSpecificWeek.workoutArrayList.size()); + assertEquals(calendar0.getTime(), workoutsInSpecificWeek.workoutArrayList.get(0).getDate()); + assertEquals(calendar1.getTime(), workoutsInSpecificWeek.workoutArrayList.get(1).getDate()); + } + + //@@ guillaume-grn + @Test + public void testCountSetsRepsPreparation() { + // create some test data + Exercise exercise1 = new Exercise("Bench press", "100", "8 6 4"); + Exercise exercise2 = new Exercise("Bench press", "150", "5 5 5 5"); + Calendar cal0 = Calendar.getInstance(); + cal0.set(2023, 3, 4); // April 4th, 2023.Tuesday + Workout workout1 = new Workout(cal0.getTime()); + cal0.set(2023,3,6); + Workout workout2 = new Workout(cal0.getTime()); + workout1.addExercise(exercise1); + workout2.addExercise(exercise2); + WorkoutList workoutList = new WorkoutList(); + workoutList.addWorkout(workout1); + workoutList.addWorkout(workout2); + + // call the method being tested + ArrayList distinctExercisesList = workoutList.countSetsRepsPreparation(cal0.getTime()); + + // assert the expected output + ArrayList expectedDistinctExercisesList = new ArrayList<>(); + Exercise expectedExercise1 = new Exercise("Bench press", "100", "8 6 4 5 5 5 5"); + expectedDistinctExercisesList.add(expectedExercise1); + assertEquals(expectedDistinctExercisesList.get(0).getName(), distinctExercisesList.get(0).getName()); + assertEquals(expectedDistinctExercisesList.get(0).getRepsPerSet(), + distinctExercisesList.get(0).getRepsPerSet()); + } } From 1dfba7444f716d02bca0b88cad670c543620ad11 Mon Sep 17 00:00:00 2001 From: calebcjl Date: Tue, 28 Mar 2023 16:06:07 +0800 Subject: [PATCH 069/152] Add exceptions and classes for invalid user input --- src/main/java/seedu/commands/Command.java | 7 +-- .../workoutcommands/DeleteWorkoutCommand.java | 2 - .../workoutcommands/StartWorkoutCommand.java | 1 - src/main/java/seedu/duke/Duke.java | 9 --- .../AddWorkoutCommandTest.java | 2 +- .../DeleteCommandTest.java | 17 +++-- .../ListWorkoutCommandTest.java | 10 +-- .../WorkoutListTest.java | 10 +-- .../WorkoutTest.java | 63 +++++++++---------- 9 files changed, 54 insertions(+), 67 deletions(-) rename src/test/java/seedu/commands/{ => workoutcommands}/AddWorkoutCommandTest.java (95%) rename src/test/java/seedu/commands/{ => workoutcommands}/DeleteCommandTest.java (81%) rename src/test/java/seedu/commands/{ => workoutcommands}/ListWorkoutCommandTest.java (87%) rename src/test/java/seedu/{workout => workouttracker}/WorkoutListTest.java (53%) rename src/test/java/seedu/{workout => workouttracker}/WorkoutTest.java (89%) diff --git a/src/main/java/seedu/commands/Command.java b/src/main/java/seedu/commands/Command.java index 7e40c866e8..ff73fbfdfb 100644 --- a/src/main/java/seedu/commands/Command.java +++ b/src/main/java/seedu/commands/Command.java @@ -11,12 +11,7 @@ protected Command() { } public void setData(WorkoutList workoutList, CalorieTracker calorieTracker) { - - - } - - public void setData(WorkoutList workoutList) { - if (workoutList == null) { + if (workoutList == null || calorieTracker == null) { throw new IllegalArgumentException("WorkoutList cannot be null."); } diff --git a/src/main/java/seedu/commands/workoutcommands/DeleteWorkoutCommand.java b/src/main/java/seedu/commands/workoutcommands/DeleteWorkoutCommand.java index 1dbce89380..bad171cd1a 100644 --- a/src/main/java/seedu/commands/workoutcommands/DeleteWorkoutCommand.java +++ b/src/main/java/seedu/commands/workoutcommands/DeleteWorkoutCommand.java @@ -15,8 +15,6 @@ public class DeleteWorkoutCommand extends Command { public DeleteWorkoutCommand(Date workoutToDeleteDate) { super(); this.workoutToDeleteDate = workoutToDeleteDate; - setData(workoutList); - } @Override diff --git a/src/main/java/seedu/commands/workoutcommands/StartWorkoutCommand.java b/src/main/java/seedu/commands/workoutcommands/StartWorkoutCommand.java index 7413e85639..399a16a139 100644 --- a/src/main/java/seedu/commands/workoutcommands/StartWorkoutCommand.java +++ b/src/main/java/seedu/commands/workoutcommands/StartWorkoutCommand.java @@ -14,7 +14,6 @@ public class StartWorkoutCommand extends Command { public StartWorkoutCommand(Date date) { super(); this.date = date; - setData(workoutList); } @Override diff --git a/src/main/java/seedu/duke/Duke.java b/src/main/java/seedu/duke/Duke.java index f759460ebe..cca0a7cbb2 100644 --- a/src/main/java/seedu/duke/Duke.java +++ b/src/main/java/seedu/duke/Duke.java @@ -29,17 +29,8 @@ private void executeCommandUntilExit() { do { String userInput = Ui.getUserInput(); command = new Parser().processCommand(userInput); - command.setData(workoutList, calorieTracker); command.execute(); - - try { - command.setData(workoutList); - command.execute(); - } catch (IllegalArgumentException e) { - System.out.println("Error: " + e.getMessage()); - // handle the exception in the appropriate way for your application - } } while (!ExitCommand.isExit(command)); } } diff --git a/src/test/java/seedu/commands/AddWorkoutCommandTest.java b/src/test/java/seedu/commands/workoutcommands/AddWorkoutCommandTest.java similarity index 95% rename from src/test/java/seedu/commands/AddWorkoutCommandTest.java rename to src/test/java/seedu/commands/workoutcommands/AddWorkoutCommandTest.java index 181a7b3b37..86d72a2421 100644 --- a/src/test/java/seedu/commands/AddWorkoutCommandTest.java +++ b/src/test/java/seedu/commands/workoutcommands/AddWorkoutCommandTest.java @@ -1,4 +1,4 @@ -package seedu.commands; +package seedu.commands.workoutcommands; import org.junit.jupiter.api.Test; import seedu.workouttracker.Exercise; diff --git a/src/test/java/seedu/commands/DeleteCommandTest.java b/src/test/java/seedu/commands/workoutcommands/DeleteCommandTest.java similarity index 81% rename from src/test/java/seedu/commands/DeleteCommandTest.java rename to src/test/java/seedu/commands/workoutcommands/DeleteCommandTest.java index 95b1fe7f08..1d8aeac7fa 100644 --- a/src/test/java/seedu/commands/DeleteCommandTest.java +++ b/src/test/java/seedu/commands/workoutcommands/DeleteCommandTest.java @@ -1,12 +1,16 @@ -package seedu.commands; +package seedu.commands.workoutcommands; import org.junit.jupiter.api.Test; -import seedu.DateFormat; -import seedu.commands.workoutcommands.DeleteWorkoutCommand; +import seedu.calorietracker.CalorieTracker; +import seedu.commands.Command; +import seedu.commands.IncorrectCommand; +import seedu.parser.DateFormat; import seedu.workouttracker.Workout; import seedu.workouttracker.WorkoutList; + import java.text.SimpleDateFormat; import java.util.Date; + import static org.junit.jupiter.api.Assertions.assertEquals; public class DeleteCommandTest { @@ -18,7 +22,8 @@ public class DeleteCommandTest { @Test public void testRemoveWorkout() throws Exception { WorkoutList workoutLists = new WorkoutList(); - Command command = new Command(); + CalorieTracker calorieTracker = new CalorieTracker(); + Command command = new IncorrectCommand(); String stringDate1 = "01/11/2022"; String stringDate2 = "02/11/2022"; @@ -28,7 +33,7 @@ public void testRemoveWorkout() throws Exception { Workout workout2 = new Workout(date2); workoutLists.addWorkout(workout1); workoutLists.addWorkout(workout2); - command.setData(workoutLists); + command.setData(workoutLists, calorieTracker); // Check that both workouts are in the list assertEquals(2, workoutLists.workoutArrayList.size()); @@ -37,7 +42,7 @@ public void testRemoveWorkout() throws Exception { DeleteWorkoutCommand delete = new DeleteWorkoutCommand(date1); - delete.setData(workoutLists); + delete.setData(workoutLists, calorieTracker); // Remove workout1 from the list delete.execute(); diff --git a/src/test/java/seedu/commands/ListWorkoutCommandTest.java b/src/test/java/seedu/commands/workoutcommands/ListWorkoutCommandTest.java similarity index 87% rename from src/test/java/seedu/commands/ListWorkoutCommandTest.java rename to src/test/java/seedu/commands/workoutcommands/ListWorkoutCommandTest.java index 00489342f7..a417d9a3a1 100644 --- a/src/test/java/seedu/commands/ListWorkoutCommandTest.java +++ b/src/test/java/seedu/commands/workoutcommands/ListWorkoutCommandTest.java @@ -1,7 +1,7 @@ -package seedu.commands; +package seedu.commands.workoutcommands; import org.junit.jupiter.api.Test; -import seedu.commands.workoutcommands.ListWorkoutCommand; +import seedu.calorietracker.CalorieTracker; import seedu.workouttracker.Workout; import seedu.workouttracker.WorkoutList; @@ -29,14 +29,14 @@ public void testShowWorkoutList() throws ParseException { // Call the method to be tested // WorkoutList addList = new WorkoutList(); WorkoutList workoutList = new WorkoutList(); + CalorieTracker calorieTracker = new CalorieTracker(); workoutList.addWorkout(new Workout(format.parse("11/11/2023"))); workoutList.addWorkout(new Workout(format.parse("11/10/2023"))); - Command command = new Command(); - command.setData(workoutList); ListWorkoutCommand testList = new ListWorkoutCommand(); + testList.setData(workoutList, calorieTracker); assertEquals(2, workoutList.workoutArrayList.size()); - testList.setData(workoutList); + testList.setData(workoutList, calorieTracker); testList.execute(); // Assert that the console output matches the expected output diff --git a/src/test/java/seedu/workout/WorkoutListTest.java b/src/test/java/seedu/workouttracker/WorkoutListTest.java similarity index 53% rename from src/test/java/seedu/workout/WorkoutListTest.java rename to src/test/java/seedu/workouttracker/WorkoutListTest.java index bb0973ab42..3d67acb812 100644 --- a/src/test/java/seedu/workout/WorkoutListTest.java +++ b/src/test/java/seedu/workouttracker/WorkoutListTest.java @@ -1,5 +1,5 @@ -package seedu.workout; - -public class WorkoutListTest { - -} +package seedu.workouttracker; + +public class WorkoutListTest { + +} diff --git a/src/test/java/seedu/workout/WorkoutTest.java b/src/test/java/seedu/workouttracker/WorkoutTest.java similarity index 89% rename from src/test/java/seedu/workout/WorkoutTest.java rename to src/test/java/seedu/workouttracker/WorkoutTest.java index 46e003eb5e..54b081efec 100644 --- a/src/test/java/seedu/workout/WorkoutTest.java +++ b/src/test/java/seedu/workouttracker/WorkoutTest.java @@ -1,32 +1,31 @@ -package seedu.workout; - -import org.junit.jupiter.api.Test; -import seedu.DateFormat; -import seedu.workouttracker.Workout; - -import java.text.SimpleDateFormat; -import java.util.Date; -import static org.junit.jupiter.api.Assertions.assertEquals; - -public class WorkoutTest { - public SimpleDateFormat dateFormatting = new SimpleDateFormat("dd/MM/yyyy"); - - @Test - public void testGetDateAndSetDate() throws Exception { - String expectedDatestring = "05/02/2023"; - Date expectedDate = dateFormatting.parse(expectedDatestring); - Workout workout = new Workout(expectedDate); - DateFormat dateFormat1 = new DateFormat(expectedDate); - String formattedDate1 = dateFormat1.formatDate(); - assertEquals(formattedDate1, workout.getDate()); - - String newDatestring = "06/03/2024"; - Date newDate = dateFormatting.parse(newDatestring); - DateFormat dateFormat2 = new DateFormat(newDate); - String formattedDate2 = dateFormat2.formatDate(); - workout.setDate(newDate); - assertEquals(formattedDate2, workout.getDate()); - } - - -} +package seedu.workouttracker; + +import org.junit.jupiter.api.Test; +import seedu.parser.DateFormat; + +import java.text.SimpleDateFormat; +import java.util.Date; +import static org.junit.jupiter.api.Assertions.assertEquals; + +public class WorkoutTest { + public SimpleDateFormat dateFormatting = new SimpleDateFormat("dd/MM/yyyy"); + + @Test + public void testGetDateAndSetDate() throws Exception { + String expectedDatestring = "05/02/2023"; + Date expectedDate = dateFormatting.parse(expectedDatestring); + Workout workout = new Workout(expectedDate); + DateFormat dateFormat1 = new DateFormat(expectedDate); + String formattedDate1 = dateFormat1.formatDate(); + assertEquals(formattedDate1, workout.getDate()); + + String newDatestring = "06/03/2024"; + Date newDate = dateFormatting.parse(newDatestring); + DateFormat dateFormat2 = new DateFormat(newDate); + String formattedDate2 = dateFormat2.formatDate(); + workout.setDate(newDate); + assertEquals(formattedDate2, workout.getDate()); + } + + +} From 0689b0c915608f64f0a81a37eec9e53149c923ec Mon Sep 17 00:00:00 2001 From: Richardtok Date: Tue, 28 Mar 2023 16:07:27 +0800 Subject: [PATCH 070/152] commit --- docs/UserGuide.md | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/UserGuide.md b/docs/UserGuide.md index 54093eaf1c..0371c8672e 100644 --- a/docs/UserGuide.md +++ b/docs/UserGuide.md @@ -136,5 +136,6 @@ Thank you and see you next time * Add exercise `/add /weight /rps ` * End current Workout `/end` * Display workout list `/list` +* Display specific workout list `/view
` * Delete a workout `/delete
` * Exit app `/exit` From 0dc3377a98b0dbfa47d23a13ce30adabf5851ad1 Mon Sep 17 00:00:00 2001 From: calebcjl Date: Tue, 28 Mar 2023 16:08:16 +0800 Subject: [PATCH 071/152] Add exceptions and classes for invalid user input --- .../seedu/calorietracker/CalorieTracker.java | 14 +++--- src/main/java/seedu/commands/Command.java | 2 +- src/main/java/seedu/commands/ExitCommand.java | 4 +- .../java/seedu/commands/IncorrectCommand.java | 13 ------ .../commands/IncorrectSyntaxCommand.java | 16 +++++++ .../java/seedu/commands/InvalidCommand.java | 14 ++++++ .../caloriecommands/AddCalorieCommand.java | 10 ++-- .../caloriecommands/ViewCaloriesCommand.java | 14 +++--- .../workoutcommands/AddWorkoutCommand.java | 12 ++--- .../workoutcommands/DeleteWorkoutCommand.java | 25 ++-------- .../workoutcommands/EndWorkoutCommand.java | 7 ++- .../workoutcommands/HelpWorkoutCommand.java | 14 ++---- .../workoutcommands/ListWorkoutCommand.java | 23 +--------- .../workoutcommands/StartWorkoutCommand.java | 17 ++++--- .../workoutcommands/ViewWorkoutCommand.java | 28 ++++------- src/main/java/seedu/duke/Duke.java | 9 +++- .../exceptions/InvalidSyntaxException.java | 14 ++++++ .../java/seedu/parser/CheckCaloriesInput.java | 14 ++---- src/main/java/seedu/parser/CheckInputs.java | 20 ++++---- src/main/java/seedu/parser/DateFormat.java | 19 -------- src/main/java/seedu/parser/DateFormatter.java | 20 ++++++++ src/main/java/seedu/parser/Parser.java | 10 ++-- src/main/java/seedu/ui/Ui.java | 18 ++++++-- .../java/seedu/workouttracker/Workout.java | 31 ++++++++++--- .../seedu/workouttracker/WorkoutList.java | 46 ++++++++++++++++++- .../workoutcommands/DeleteCommandTest.java | 26 +++++------ .../ListWorkoutCommandTest.java | 26 ++++------- src/test/java/seedu/parser/ParserTest.java | 14 ++++-- .../seedu/workouttracker/WorkoutTest.java | 20 +++----- 29 files changed, 272 insertions(+), 228 deletions(-) delete mode 100644 src/main/java/seedu/commands/IncorrectCommand.java create mode 100644 src/main/java/seedu/commands/IncorrectSyntaxCommand.java create mode 100644 src/main/java/seedu/commands/InvalidCommand.java create mode 100644 src/main/java/seedu/exceptions/InvalidSyntaxException.java delete mode 100644 src/main/java/seedu/parser/DateFormat.java create mode 100644 src/main/java/seedu/parser/DateFormatter.java diff --git a/src/main/java/seedu/calorietracker/CalorieTracker.java b/src/main/java/seedu/calorietracker/CalorieTracker.java index 3a6f408055..9a7430dc39 100644 --- a/src/main/java/seedu/calorietracker/CalorieTracker.java +++ b/src/main/java/seedu/calorietracker/CalorieTracker.java @@ -9,7 +9,7 @@ public class CalorieTracker { public static final int CALORIES_NOT_TRACKED = -1; private final HashMap totalCaloriesConsumedInDay; - private FoodList foodList; + private final FoodList foodList; public CalorieTracker() { totalCaloriesConsumedInDay = new HashMap<>(); @@ -20,10 +20,9 @@ public CalorieTracker(FoodList foodlist) { this.foodList = foodlist; } - public void addCalories(Date date, String food, int calories) { + public String addCalories(Date date, String food, int calories) { if (calories == CALORIES_NOT_GIVEN && !foodList.contains(food)) { - System.out.println(food + " has not been added previously. Please also indicate calorie count."); - return; + return food + " has not been added previously. Please also indicate calorie count."; } int caloriesInFood; @@ -33,8 +32,7 @@ public void addCalories(Date date, String food, int calories) { foodList.addFood(food, calories); caloriesInFood = calories; } else { - System.out.println("Calories count is invalid"); - return; + return "Calories count is invalid"; } if (totalCaloriesConsumedInDay.containsKey(date)) { @@ -43,8 +41,8 @@ public void addCalories(Date date, String food, int calories) { totalCaloriesConsumedInDay.put(date, caloriesInFood); } - System.out.println("Consumed additional " + caloriesInFood + "kcal." + System.lineSeparator() + - "Total calories consumed: " + getCalories(date) + "kcal"); + return "Consumed additional " + caloriesInFood + "kcal." + System.lineSeparator() + + "Total calories consumed: " + getCalories(date) + "kcal"; } public int getCalories(Date date) { diff --git a/src/main/java/seedu/commands/Command.java b/src/main/java/seedu/commands/Command.java index ff73fbfdfb..4e2a3d162c 100644 --- a/src/main/java/seedu/commands/Command.java +++ b/src/main/java/seedu/commands/Command.java @@ -19,7 +19,7 @@ public void setData(WorkoutList workoutList, CalorieTracker calorieTracker) { this.calorieTracker = calorieTracker; } - public void execute() { + public String execute() { throw new UnsupportedOperationException("This method is to be implemented by child classes"); } } diff --git a/src/main/java/seedu/commands/ExitCommand.java b/src/main/java/seedu/commands/ExitCommand.java index 9f08454437..e10d5be344 100644 --- a/src/main/java/seedu/commands/ExitCommand.java +++ b/src/main/java/seedu/commands/ExitCommand.java @@ -2,12 +2,14 @@ public class ExitCommand extends Command { + private static final String EXIT_MESSAGE = "Thank you, hope you had a great workout!!!"; public static boolean isExit(Command command) { return command instanceof ExitCommand; } @Override - public void execute() { + public String execute() { + return EXIT_MESSAGE; } } diff --git a/src/main/java/seedu/commands/IncorrectCommand.java b/src/main/java/seedu/commands/IncorrectCommand.java deleted file mode 100644 index a56265221c..0000000000 --- a/src/main/java/seedu/commands/IncorrectCommand.java +++ /dev/null @@ -1,13 +0,0 @@ -package seedu.commands; - - -public class IncorrectCommand extends Command { - - public IncorrectCommand() { - } - - @Override - public void execute() { - System.out.println("Please enter the command again!"); - } -} diff --git a/src/main/java/seedu/commands/IncorrectSyntaxCommand.java b/src/main/java/seedu/commands/IncorrectSyntaxCommand.java new file mode 100644 index 0000000000..0fb6aa8351 --- /dev/null +++ b/src/main/java/seedu/commands/IncorrectSyntaxCommand.java @@ -0,0 +1,16 @@ +package seedu.commands; + + +public class IncorrectSyntaxCommand extends Command { + private static final String ERROR_MESSAGE = "Invalid Syntax for "; + private final String error; + + public IncorrectSyntaxCommand(String error) { + this.error = error; + } + + @Override + public String execute() { + return ERROR_MESSAGE + error; + } +} diff --git a/src/main/java/seedu/commands/InvalidCommand.java b/src/main/java/seedu/commands/InvalidCommand.java new file mode 100644 index 0000000000..3b7a620d82 --- /dev/null +++ b/src/main/java/seedu/commands/InvalidCommand.java @@ -0,0 +1,14 @@ +package seedu.commands; + +public class InvalidCommand extends Command { + private static final String INVALID_COMMAND_MESSAGE = " is not a valid command!"; + private final String command; + public InvalidCommand(String command) { + this.command = command; + } + + @Override + public String execute() { + return command + INVALID_COMMAND_MESSAGE; + } +} diff --git a/src/main/java/seedu/commands/caloriecommands/AddCalorieCommand.java b/src/main/java/seedu/commands/caloriecommands/AddCalorieCommand.java index 6120f6f13e..9a281200fd 100644 --- a/src/main/java/seedu/commands/caloriecommands/AddCalorieCommand.java +++ b/src/main/java/seedu/commands/caloriecommands/AddCalorieCommand.java @@ -6,9 +6,9 @@ public class AddCalorieCommand extends Command { public static final int CALORIES_NOT_GIVEN = -1; - private Date date; - private String food; - private int calories; + private final Date date; + private final String food; + private final int calories; public AddCalorieCommand(Date date, String food, int calories) { this.date = date; @@ -17,7 +17,7 @@ public AddCalorieCommand(Date date, String food, int calories) { } @Override - public void execute() { - calorieTracker.addCalories(date, food, calories); + public String execute() { + return calorieTracker.addCalories(date, food, calories); } } diff --git a/src/main/java/seedu/commands/caloriecommands/ViewCaloriesCommand.java b/src/main/java/seedu/commands/caloriecommands/ViewCaloriesCommand.java index e593546444..d4a1545ad1 100644 --- a/src/main/java/seedu/commands/caloriecommands/ViewCaloriesCommand.java +++ b/src/main/java/seedu/commands/caloriecommands/ViewCaloriesCommand.java @@ -1,7 +1,7 @@ package seedu.commands.caloriecommands; import seedu.commands.Command; -import seedu.parser.DateFormat; +import seedu.parser.DateFormatter; import java.util.Date; @@ -15,15 +15,13 @@ public ViewCaloriesCommand(Date dateToView) { } @Override - public void execute() { - DateFormat dateFormat = new DateFormat(dateToView); - String formattedDate = dateFormat.formatDate(); - System.out.println("test"); + public String execute() { + String formattedDate = DateFormatter.dateToString(dateToView); if (calorieTracker.getCalories(dateToView) == CALORIES_NOT_TRACKED) { - System.out.println("Calories not tracked on " + formattedDate); + return "Calories not tracked on " + formattedDate; } else { - System.out.println("Calories consumed on " + formattedDate + ": " - + calorieTracker.getCalories(dateToView) + "kcal."); + return "Calories consumed on " + formattedDate + ": " + calorieTracker.getCalories(dateToView) + + "kcal."; } } } diff --git a/src/main/java/seedu/commands/workoutcommands/AddWorkoutCommand.java b/src/main/java/seedu/commands/workoutcommands/AddWorkoutCommand.java index 883206dc2e..52250ae4d9 100644 --- a/src/main/java/seedu/commands/workoutcommands/AddWorkoutCommand.java +++ b/src/main/java/seedu/commands/workoutcommands/AddWorkoutCommand.java @@ -5,19 +5,19 @@ import seedu.workouttracker.WorkoutList; public class AddWorkoutCommand extends Command { - private Exercise toAdd; + private final Exercise toAdd; public AddWorkoutCommand(Exercise toAdd) { this.toAdd = toAdd; } @Override - public void execute() { - if (workoutList.currentWorkoutIndex == WorkoutList.NO_CURRENT_WORKOUT) { - System.out.println("Start a workout first!"); - return; + public String execute() { + if (workoutList.getCurrentWorkoutIndex() == WorkoutList.NO_CURRENT_WORKOUT) { + return "Start a workout first!"; + } - workoutList.getCurrentWorkout().addExercise(toAdd); + return workoutList.getCurrentWorkout().addExercise(toAdd); } } diff --git a/src/main/java/seedu/commands/workoutcommands/DeleteWorkoutCommand.java b/src/main/java/seedu/commands/workoutcommands/DeleteWorkoutCommand.java index bad171cd1a..c64d371ab9 100644 --- a/src/main/java/seedu/commands/workoutcommands/DeleteWorkoutCommand.java +++ b/src/main/java/seedu/commands/workoutcommands/DeleteWorkoutCommand.java @@ -1,9 +1,6 @@ package seedu.commands.workoutcommands; -import seedu.parser.DateFormat; import seedu.commands.Command; -import seedu.ui.Ui; -import seedu.workouttracker.Workout; import java.util.Date; @@ -18,26 +15,12 @@ public DeleteWorkoutCommand(Date workoutToDeleteDate) { } @Override - public void execute() { + public String execute() { if (workoutList == null) { - System.out.println("WorkoutList is null."); - return; + return "WorkoutList is null."; } - if (workoutList.workoutArrayList == null) { - System.out.println("the workout array list is empty"); - return; - } - for (Workout workout : workoutList.workoutArrayList) { - DateFormat dateFormat = new DateFormat(workoutToDeleteDate); - String formattedDate = dateFormat.formatDate(); - if (workout.getDate().equals(formattedDate)) { - workoutList.workoutArrayList.remove(workout); - System.out.println("Workout deleted successfully."); - Ui.showSeparator(); - return; - } - } - System.out.println("No workout found with the specified date."); + + return workoutList.deleteWorkout(workoutToDeleteDate); } } diff --git a/src/main/java/seedu/commands/workoutcommands/EndWorkoutCommand.java b/src/main/java/seedu/commands/workoutcommands/EndWorkoutCommand.java index 877401ade6..913e48e9e0 100644 --- a/src/main/java/seedu/commands/workoutcommands/EndWorkoutCommand.java +++ b/src/main/java/seedu/commands/workoutcommands/EndWorkoutCommand.java @@ -4,12 +4,15 @@ import seedu.workouttracker.WorkoutList; public class EndWorkoutCommand extends Command { + + public static final String WORKOUT_COMPLETE_MESSAGE = "Great job completing your workout!"; + public EndWorkoutCommand() { } - public void execute() { + public String execute() { workoutList.setCurrentWorkoutIndex(WorkoutList.NO_CURRENT_WORKOUT); - System.out.println("Great job completing your workout!"); + return WORKOUT_COMPLETE_MESSAGE; } } diff --git a/src/main/java/seedu/commands/workoutcommands/HelpWorkoutCommand.java b/src/main/java/seedu/commands/workoutcommands/HelpWorkoutCommand.java index 9953e1ffb9..16a104c9ef 100644 --- a/src/main/java/seedu/commands/workoutcommands/HelpWorkoutCommand.java +++ b/src/main/java/seedu/commands/workoutcommands/HelpWorkoutCommand.java @@ -3,19 +3,11 @@ import seedu.commands.Command; import seedu.ui.Ui; + public class HelpWorkoutCommand extends Command { public HelpWorkoutCommand(){} - public void execute() { - System.out.println("Here are the list of commands that you can use:"); - Ui.showLine(); - System.out.println("- [Start a Workout: /start])\n" + - "- [Add exercise: /add]\n" + - "- [End current workout: /end]\n" + - "- [Display workout list: /list]\n" + - "- [Display a workout : /view]\n" + - "- [Delete a workout: /delete]\n" + - "- [Exit app: /exit]"); - Ui.showLine(); + public String execute() { + return Ui.getHelpMessage(); } } diff --git a/src/main/java/seedu/commands/workoutcommands/ListWorkoutCommand.java b/src/main/java/seedu/commands/workoutcommands/ListWorkoutCommand.java index 386541f7f5..d7b997cb3e 100644 --- a/src/main/java/seedu/commands/workoutcommands/ListWorkoutCommand.java +++ b/src/main/java/seedu/commands/workoutcommands/ListWorkoutCommand.java @@ -2,9 +2,6 @@ import seedu.commands.Command; -import seedu.ui.Ui; -import seedu.workouttracker.Workout; - /** * This is the class for executing the list command @@ -15,29 +12,13 @@ public class ListWorkoutCommand extends Command { public ListWorkoutCommand() { } - /** * Show the list of date of the workout by calling the method in workoutList */ //@@ author ZIZI-czh @Override - public void execute() { - try { - if (!workoutList.workoutArrayList.isEmpty()) { - System.out.println("Here are the list of dates for your workout: "); - for (Workout workout : workoutList.workoutArrayList) { - System.out.println(workout.getDate()); - } - Ui.showSeparator(); - } else { - //if there is no workout have been done - System.out.println("Haven't start your workout, please enter your workout"); - } - - } catch (NullPointerException e) { - System.out.println("Haven't start your workout, please enter your workout"); - } - + public String execute() { + return workoutList.toString(); } } diff --git a/src/main/java/seedu/commands/workoutcommands/StartWorkoutCommand.java b/src/main/java/seedu/commands/workoutcommands/StartWorkoutCommand.java index 399a16a139..510cfeaedd 100644 --- a/src/main/java/seedu/commands/workoutcommands/StartWorkoutCommand.java +++ b/src/main/java/seedu/commands/workoutcommands/StartWorkoutCommand.java @@ -7,8 +7,12 @@ import java.util.Date; public class StartWorkoutCommand extends Command { + private static final String START_WORKOUT_MESSAGE = "Started new workout." + System.lineSeparator() + + "Use add command to add exercises to your workout!"; + private static final String ONGOING_WORKOUT_MESSAGE = "End your current workout before starting a new " + + "one!"; - private Date date; + private final Date date; public StartWorkoutCommand(Date date) { @@ -17,14 +21,13 @@ public StartWorkoutCommand(Date date) { } @Override - public void execute() { - if (workoutList.currentWorkoutIndex == WorkoutList.NO_CURRENT_WORKOUT) { + public String execute() { + if (workoutList.getCurrentWorkoutIndex() == WorkoutList.NO_CURRENT_WORKOUT) { Workout toStart = new Workout(date); workoutList.addWorkout(toStart); - System.out.println("Started new workout."); - System.out.println("Use add command to add exercises to your workout!"); - return; + return START_WORKOUT_MESSAGE; } - System.out.println("End your current workout before starting a new one!"); + + return ONGOING_WORKOUT_MESSAGE; } } diff --git a/src/main/java/seedu/commands/workoutcommands/ViewWorkoutCommand.java b/src/main/java/seedu/commands/workoutcommands/ViewWorkoutCommand.java index 58de63c949..2eec8e0499 100644 --- a/src/main/java/seedu/commands/workoutcommands/ViewWorkoutCommand.java +++ b/src/main/java/seedu/commands/workoutcommands/ViewWorkoutCommand.java @@ -1,33 +1,25 @@ package seedu.commands.workoutcommands; import seedu.commands.Command; - -import seedu.parser.DateFormat; -import seedu.ui.Ui; -import seedu.workouttracker.Workout; +import seedu.parser.DateFormatter; import java.util.Date; public class ViewWorkoutCommand extends Command { - Date workoutToViewDate; - - public ViewWorkoutCommand(Date workoutToViewDate) { + private static final String WORKOUT_NOT_FOUND_MESSAGE = "No workout done on "; + private final Date workoutToViewDate; + public ViewWorkoutCommand(Date workoutToViewDate) { this.workoutToViewDate = workoutToViewDate; } - public void execute() { - - for (Workout workout : workoutList.workoutArrayList) { - DateFormat dateFormat = new DateFormat(workoutToViewDate); - String formattedDate = dateFormat.formatDate(); - if (workout.getDate().equals(workoutToViewDate)) { - System.out.println(workout.getExercises()); - Ui.showSeparator(); - return; - } + public String execute() { + try { + int index = workoutList.getWorkoutArrayList().indexOf(workoutToViewDate); + return workoutList.getWorkoutArrayList().get(index).toString(); + } catch (NullPointerException e) { + return WORKOUT_NOT_FOUND_MESSAGE + DateFormatter.dateToString(workoutToViewDate); } - } } diff --git a/src/main/java/seedu/duke/Duke.java b/src/main/java/seedu/duke/Duke.java index cca0a7cbb2..58bbb8ddd6 100644 --- a/src/main/java/seedu/duke/Duke.java +++ b/src/main/java/seedu/duke/Duke.java @@ -3,6 +3,8 @@ import seedu.calorietracker.CalorieTracker; import seedu.commands.Command; import seedu.commands.ExitCommand; +import seedu.commands.IncorrectSyntaxCommand; +import seedu.exceptions.InvalidSyntaxException; import seedu.parser.Parser; import seedu.ui.Ui; import seedu.workouttracker.WorkoutList; @@ -21,14 +23,17 @@ private void run() { Ui.showWelcomeMessage(); executeCommandUntilExit(); - Ui.showExit(); } private void executeCommandUntilExit() { Command command; do { String userInput = Ui.getUserInput(); - command = new Parser().processCommand(userInput); + try { + command = new Parser().processCommand(userInput); + } catch (InvalidSyntaxException ise) { + command = new IncorrectSyntaxCommand(ise.toString()); + } command.setData(workoutList, calorieTracker); command.execute(); } while (!ExitCommand.isExit(command)); diff --git a/src/main/java/seedu/exceptions/InvalidSyntaxException.java b/src/main/java/seedu/exceptions/InvalidSyntaxException.java new file mode 100644 index 0000000000..651135e51d --- /dev/null +++ b/src/main/java/seedu/exceptions/InvalidSyntaxException.java @@ -0,0 +1,14 @@ +package seedu.exceptions; + +public class InvalidSyntaxException extends Exception { + + String error; + public InvalidSyntaxException(String error) { + this.error = error; + } + + @Override + public String toString() { + return error; + } +} diff --git a/src/main/java/seedu/parser/CheckCaloriesInput.java b/src/main/java/seedu/parser/CheckCaloriesInput.java index 3690f4cc57..0d0fbac7f8 100644 --- a/src/main/java/seedu/parser/CheckCaloriesInput.java +++ b/src/main/java/seedu/parser/CheckCaloriesInput.java @@ -1,7 +1,7 @@ package seedu.parser; import seedu.commands.Command; -import seedu.commands.IncorrectCommand; +import seedu.commands.IncorrectSyntaxCommand; import seedu.commands.caloriecommands.AddCalorieCommand; import seedu.commands.caloriecommands.ViewCaloriesCommand; @@ -36,14 +36,11 @@ public static Command processAddCalories(String arguments) { calories = CALORIES_NOT_GIVEN; } } catch (ParseException e) { - System.out.println("Invalid date format. Please enter the date in the format dd/mm/yy."); - return new IncorrectCommand(); + return new IncorrectSyntaxCommand("date"); } catch (NumberFormatException e) { - System.out.println("Invalid calories format. Please enter an integer"); - return new IncorrectCommand(); + return new IncorrectSyntaxCommand("calories"); } catch (ArrayIndexOutOfBoundsException e) { - System.out.println("Invalid command format."); - return new IncorrectCommand(); + return new IncorrectSyntaxCommand("/cadd command"); } return new AddCalorieCommand(date, food, calories); @@ -54,8 +51,7 @@ public static Command processViewCalories(String arguments) { try { date = DATE_FORMAT.parse(arguments.trim()); } catch (ParseException e) { - System.out.println("Invalid date format."); - return new IncorrectCommand(); + return new IncorrectSyntaxCommand("date"); } return new ViewCaloriesCommand(date); diff --git a/src/main/java/seedu/parser/CheckInputs.java b/src/main/java/seedu/parser/CheckInputs.java index 3a1fe6b3fa..81e64a5d9f 100644 --- a/src/main/java/seedu/parser/CheckInputs.java +++ b/src/main/java/seedu/parser/CheckInputs.java @@ -7,10 +7,9 @@ import seedu.commands.workoutcommands.StartWorkoutCommand; import seedu.commands.workoutcommands.ViewWorkoutCommand; import seedu.commands.Command; -import seedu.commands.IncorrectCommand; +import seedu.commands.IncorrectSyntaxCommand; import seedu.workouttracker.Exercise; import java.text.ParseException; -import java.text.SimpleDateFormat; import java.util.Date; @@ -32,7 +31,7 @@ static Command processAdd(String arguments) { toAdd = new Exercise(exerciseName, weight, repsPerSet); } catch (ArrayIndexOutOfBoundsException e) { - return new IncorrectCommand(); + return new IncorrectSyntaxCommand("/add command"); } return new AddWorkoutCommand(toAdd); } @@ -47,7 +46,8 @@ static Command processAdd(String arguments) { */ static Command processStart(String arguments) { Date date = parseDate(arguments); - return date != null && parseInput(arguments) ? new StartWorkoutCommand(date) : new IncorrectCommand(); + return date != null && parseInput(arguments) ? new StartWorkoutCommand(date) : + new IncorrectSyntaxCommand("/start command"); } /** @@ -58,19 +58,22 @@ static Command processStart(String arguments) { */ static Command processDelete(String arguments) { Date date = parseDate(arguments); - return date != null && parseInput(arguments) ? new DeleteWorkoutCommand(date) : new IncorrectCommand(); + return date != null && parseInput(arguments) ? new DeleteWorkoutCommand(date) : + new IncorrectSyntaxCommand("/delete command"); } //@@ author ZIZI-czh static Command processList(String arguments) { - return arguments == null || arguments.trim().isEmpty() ? new ListWorkoutCommand() : new IncorrectCommand(); + return arguments == null || arguments.trim().isEmpty() ? new ListWorkoutCommand() : + new IncorrectSyntaxCommand("/list command"); } static Command processView(String arguments) { Date date = parseDate(arguments); - return date != null && parseInput(arguments) ? new ViewWorkoutCommand(date) : new IncorrectCommand(); + return date != null && parseInput(arguments) ? new ViewWorkoutCommand(date) : + new IncorrectSyntaxCommand("/view command"); } @@ -82,8 +85,7 @@ static Command processView(String arguments) { //@@ author ZIZI-czh private static Date parseDate(String arguments) { try { - SimpleDateFormat dateFormat = new SimpleDateFormat("dd/MM/yy"); - Date enteredDate = dateFormat.parse(arguments); + Date enteredDate = DateFormatter.stringToDate(arguments); Date currentDate = new Date(); if (enteredDate.compareTo(currentDate) > 0) { System.out.println("Date cannot be after the current date."); diff --git a/src/main/java/seedu/parser/DateFormat.java b/src/main/java/seedu/parser/DateFormat.java deleted file mode 100644 index 5d1d333485..0000000000 --- a/src/main/java/seedu/parser/DateFormat.java +++ /dev/null @@ -1,19 +0,0 @@ -package seedu.parser; - -import java.text.SimpleDateFormat; -import java.util.Date; - -public class DateFormat { - - public Date date; - - public DateFormat(Date date) { - this.date = date; - } - - public String formatDate(){ - SimpleDateFormat dateFormat = new SimpleDateFormat("dd-MM-yyyy"); - return dateFormat.format(this.date); - } -} - diff --git a/src/main/java/seedu/parser/DateFormatter.java b/src/main/java/seedu/parser/DateFormatter.java new file mode 100644 index 0000000000..594c77f48d --- /dev/null +++ b/src/main/java/seedu/parser/DateFormatter.java @@ -0,0 +1,20 @@ +package seedu.parser; + +import java.text.ParseException; +import java.text.SimpleDateFormat; +import java.util.Date; + +public class DateFormatter { + + private static SimpleDateFormat dateFormat = new SimpleDateFormat("dd/MM/yy"); + public DateFormatter() { + } + + public static Date stringToDate(String date) throws ParseException { + return dateFormat.parse(date); + } + public static String dateToString(Date date){ + return dateFormat.format(date); + } +} + diff --git a/src/main/java/seedu/parser/Parser.java b/src/main/java/seedu/parser/Parser.java index 6b45c77c9e..0c9a5e94f6 100644 --- a/src/main/java/seedu/parser/Parser.java +++ b/src/main/java/seedu/parser/Parser.java @@ -1,10 +1,12 @@ package seedu.parser; import seedu.commands.Command; +import seedu.commands.InvalidCommand; import seedu.commands.workoutcommands.EndWorkoutCommand; import seedu.commands.ExitCommand; import seedu.commands.workoutcommands.HelpWorkoutCommand; -import seedu.commands.IncorrectCommand; +import seedu.exceptions.InvalidSyntaxException; + import java.util.regex.Matcher; import java.util.regex.Pattern; @@ -13,10 +15,10 @@ public class Parser { private static final Pattern BASIC_COMMAND_FORMAT = Pattern.compile("(?\\S+)(?" + ".*)"); - public Command processCommand(String userInput) { + public Command processCommand(String userInput) throws InvalidSyntaxException { Matcher matcher = BASIC_COMMAND_FORMAT.matcher(userInput.trim()); if (!matcher.matches()) { - return new IncorrectCommand(); + throw new InvalidSyntaxException("user input"); } String commandName = matcher.group("commandName"); @@ -44,7 +46,7 @@ public Command processCommand(String userInput) { case "/cview": return CheckCaloriesInput.processViewCalories(arguments); default: - return new IncorrectCommand(); + return new InvalidCommand(commandName); } } } diff --git a/src/main/java/seedu/ui/Ui.java b/src/main/java/seedu/ui/Ui.java index ff30b8aada..ae9da53a98 100644 --- a/src/main/java/seedu/ui/Ui.java +++ b/src/main/java/seedu/ui/Ui.java @@ -11,18 +11,22 @@ public class Ui { "| __| | | | | / / \n" + "| | | | | | / /----.\n" + "|__| |__| |__| /________|"; - private static final String ENDING_MESSAGE = "Thank you, hope you had a great workout!!!"; private static final String LINE = "======================================="; private static final String LINE_SEPARATOR = "----------------------------------"; private static final Scanner in = new Scanner(System.in); - + private static final String HELP_MESSAGE = + "Here are the list of commands that you can use:" + System.lineSeparator() + LINE + + "- [Start a Workout: /start])" + System.lineSeparator() + + "- [Add exercise: /add]" + System.lineSeparator() + + "- [End current workout: /end]" + System.lineSeparator() + + "- [Display workout list: /list]" + System.lineSeparator() + + "- [Display a workout : /view]" + System.lineSeparator() + + "- [Delete a workout: /delete]" + System.lineSeparator() + + "- [Exit app: /exit]" + System.lineSeparator() + LINE; public static void showGreeting() { System.out.println(WELCOME_MESSAGE); } - public static void showExit(){ - System.out.println(ENDING_MESSAGE); - } public static void showLogo(){ System.out.println(LOGO_MESSAGE); @@ -44,4 +48,8 @@ public static void showWelcomeMessage() { showLine(); showGreeting(); } + + public static String getHelpMessage() { + return HELP_MESSAGE; + } } diff --git a/src/main/java/seedu/workouttracker/Workout.java b/src/main/java/seedu/workouttracker/Workout.java index ede4528419..a80903cd10 100644 --- a/src/main/java/seedu/workouttracker/Workout.java +++ b/src/main/java/seedu/workouttracker/Workout.java @@ -1,11 +1,14 @@ package seedu.workouttracker; -import seedu.parser.DateFormat; import java.util.ArrayList; import java.util.Date; public class Workout { + private static final int EMPTY = 0; + private static final String EMPTY_EXERCISE_LIST_MESSAGE = "No exercise in workout."; + private static final String EXERCISE_LIST_HEADER = + "Here are the list of exercises in your workout:" + System.lineSeparator(); private Date date; private ArrayList workoutExercises; @@ -14,15 +17,13 @@ public Workout(Date date) { workoutExercises = new ArrayList<>(); } - public void addExercise(Exercise exercise) { + public String addExercise(Exercise exercise) { workoutExercises.add(exercise); - System.out.println("Added " + exercise); + return "Added " + exercise; } - public String getDate() { - DateFormat dateFormat = new DateFormat(date); - return dateFormat.formatDate(); - + public Date getDate() { + return date; } public void setDate(Date date) { @@ -31,5 +32,21 @@ public void setDate(Date date) { public ArrayList getExercises() { return workoutExercises; } + + @Override + public String toString() { + if (workoutExercises.size() == EMPTY) { + return EMPTY_EXERCISE_LIST_MESSAGE; + } + + StringBuilder exerciseListString = new StringBuilder(); + exerciseListString.append(EXERCISE_LIST_HEADER); + + for (int i = 0; i < workoutExercises.size(); i += 1) { + exerciseListString.append(i + 1).append("." + workoutExercises.get(i).toString() + System.lineSeparator()); + } + + return exerciseListString.toString(); + } } diff --git a/src/main/java/seedu/workouttracker/WorkoutList.java b/src/main/java/seedu/workouttracker/WorkoutList.java index f2ba002bd9..957202656a 100644 --- a/src/main/java/seedu/workouttracker/WorkoutList.java +++ b/src/main/java/seedu/workouttracker/WorkoutList.java @@ -1,11 +1,18 @@ package seedu.workouttracker; +import seedu.parser.DateFormatter; + import java.util.ArrayList; +import java.util.Date; public class WorkoutList { public static final int NO_CURRENT_WORKOUT = -1; - public ArrayList workoutArrayList; - public int currentWorkoutIndex; + public static final String WORKOUT_LIST_HEADER = + "Here are the list of dates of your workouts:" + System.lineSeparator(); + public static final int EMPTY = 0; + public static final String EMPTY_WORKOUT_LIST_MESSAGE = "No workouts recorded."; + private final ArrayList workoutArrayList; + private int currentWorkoutIndex; public WorkoutList() { workoutArrayList = new ArrayList<>(); @@ -21,6 +28,10 @@ public void setCurrentWorkoutIndex(int currentWorkoutIndex) { this.currentWorkoutIndex = currentWorkoutIndex; } + public int getCurrentWorkoutIndex() { + return currentWorkoutIndex; + } + public int getLastIndex() { return workoutArrayList.size() - 1; } @@ -28,4 +39,35 @@ public int getLastIndex() { public Workout getCurrentWorkout() { return workoutArrayList.get(currentWorkoutIndex); } + + public ArrayList getWorkoutArrayList() { + return workoutArrayList; + } + + public String deleteWorkout(Date date) { + for (Workout workout : workoutArrayList) { + if (workout.getDate() == date) { + workoutArrayList.remove(workout); + return "Workout deleted"; + } + } + + return "Workout not in list"; + } + + @Override + public String toString() { + if (workoutArrayList.size() == EMPTY) { + return EMPTY_WORKOUT_LIST_MESSAGE; + } + + StringBuilder workoutListString = new StringBuilder(); + workoutListString.append(WORKOUT_LIST_HEADER); + for (int i = 0; i < workoutArrayList.size(); i += 1) { + workoutListString.append(i + 1).append(". " + + DateFormatter.dateToString(workoutArrayList.get(i).getDate()) + System.lineSeparator()); + } + + return workoutListString.toString(); + } } diff --git a/src/test/java/seedu/commands/workoutcommands/DeleteCommandTest.java b/src/test/java/seedu/commands/workoutcommands/DeleteCommandTest.java index 1d8aeac7fa..f94e90fc0d 100644 --- a/src/test/java/seedu/commands/workoutcommands/DeleteCommandTest.java +++ b/src/test/java/seedu/commands/workoutcommands/DeleteCommandTest.java @@ -3,32 +3,28 @@ import org.junit.jupiter.api.Test; import seedu.calorietracker.CalorieTracker; import seedu.commands.Command; -import seedu.commands.IncorrectCommand; -import seedu.parser.DateFormat; +import seedu.commands.InvalidCommand; +import seedu.parser.DateFormatter; import seedu.workouttracker.Workout; import seedu.workouttracker.WorkoutList; -import java.text.SimpleDateFormat; import java.util.Date; import static org.junit.jupiter.api.Assertions.assertEquals; public class DeleteCommandTest { - public SimpleDateFormat dateFormat = new SimpleDateFormat("dd/MM/yyyy"); - - //@@ author guillaume-grn @Test public void testRemoveWorkout() throws Exception { WorkoutList workoutLists = new WorkoutList(); CalorieTracker calorieTracker = new CalorieTracker(); - Command command = new IncorrectCommand(); + Command command = new InvalidCommand("invalid"); String stringDate1 = "01/11/2022"; String stringDate2 = "02/11/2022"; - Date date1 = dateFormat.parse(stringDate1); - Date date2 = dateFormat.parse(stringDate2); + Date date1 = DateFormatter.stringToDate(stringDate1); + Date date2 = DateFormatter.stringToDate(stringDate2); Workout workout1 = new Workout(date1); Workout workout2 = new Workout(date2); workoutLists.addWorkout(workout1); @@ -36,7 +32,7 @@ public void testRemoveWorkout() throws Exception { command.setData(workoutLists, calorieTracker); // Check that both workouts are in the list - assertEquals(2, workoutLists.workoutArrayList.size()); + assertEquals(2, workoutLists.getWorkoutArrayList().size()); //DeleteCommand delete = new DeleteCommand(date1); @@ -47,15 +43,15 @@ public void testRemoveWorkout() throws Exception { delete.execute(); // Check that workout1 was removed and workout2 is still in the list - assertEquals(1, workoutLists.workoutArrayList.size()); - DateFormat dateFormat = new DateFormat(date2); - String formattedDate = dateFormat.formatDate(); - assertEquals(formattedDate, workoutLists.workoutArrayList.get(0).getDate()); + assertEquals(1, workoutLists.getWorkoutArrayList().size()); + String formattedDate = DateFormatter.dateToString(date2); + assertEquals(formattedDate, + DateFormatter.dateToString(workoutLists.getWorkoutArrayList().get(0).getDate())); // Try to remove workout1 again (should not be in the list) delete.execute(); // Check that workout1 was not removed and the list size is still 1 - assertEquals(1, workoutLists.workoutArrayList.size()); + assertEquals(1, workoutLists.getWorkoutArrayList().size()); } } diff --git a/src/test/java/seedu/commands/workoutcommands/ListWorkoutCommandTest.java b/src/test/java/seedu/commands/workoutcommands/ListWorkoutCommandTest.java index a417d9a3a1..8a7dafd7fd 100644 --- a/src/test/java/seedu/commands/workoutcommands/ListWorkoutCommandTest.java +++ b/src/test/java/seedu/commands/workoutcommands/ListWorkoutCommandTest.java @@ -5,8 +5,6 @@ import seedu.workouttracker.Workout; import seedu.workouttracker.WorkoutList; -import java.io.ByteArrayOutputStream; -import java.io.PrintStream; import java.text.ParseException; import java.text.SimpleDateFormat; @@ -20,31 +18,23 @@ public class ListWorkoutCommandTest { public void testShowWorkoutList() throws ParseException { // Create a new instance of the class that contains the showWorkoutList() method // and add some sample data to the workoutList - SimpleDateFormat format = new SimpleDateFormat("dd/MM/yyyy"); - - // Redirect the console output to a stream for testing - ByteArrayOutputStream outContent = new ByteArrayOutputStream(); - System.setOut(new PrintStream(outContent)); + SimpleDateFormat format = new SimpleDateFormat("dd/MM/yy"); // Call the method to be tested // WorkoutList addList = new WorkoutList(); WorkoutList workoutList = new WorkoutList(); CalorieTracker calorieTracker = new CalorieTracker(); - workoutList.addWorkout(new Workout(format.parse("11/11/2023"))); - workoutList.addWorkout(new Workout(format.parse("11/10/2023"))); + workoutList.addWorkout(new Workout(format.parse("11/11/23"))); + workoutList.addWorkout(new Workout(format.parse("11/10/23"))); ListWorkoutCommand testList = new ListWorkoutCommand(); testList.setData(workoutList, calorieTracker); - assertEquals(2, workoutList.workoutArrayList.size()); - - testList.setData(workoutList, calorieTracker); - testList.execute(); + assertEquals(2, workoutList.getWorkoutArrayList().size()); // Assert that the console output matches the expected output - assertEquals("Here are the list of dates for your workout: " + System.lineSeparator() - + "11-11-2023" + System.lineSeparator() - + "11-10-2023" + System.lineSeparator() - + "----------------------------------" + System.lineSeparator(), - outContent.toString()); + assertEquals("Here are the list of dates of your workouts:" + System.lineSeparator() + + "1. 11/11/23" + System.lineSeparator() + + "2. 11/10/23" + System.lineSeparator(), + testList.execute()); } } diff --git a/src/test/java/seedu/parser/ParserTest.java b/src/test/java/seedu/parser/ParserTest.java index 55f1f50636..8a6d206799 100644 --- a/src/test/java/seedu/parser/ParserTest.java +++ b/src/test/java/seedu/parser/ParserTest.java @@ -3,7 +3,10 @@ import org.junit.jupiter.api.Test; import seedu.commands.Command; -import seedu.commands.IncorrectCommand; +import seedu.commands.ExitCommand; +import seedu.commands.IncorrectSyntaxCommand; +import seedu.exceptions.InvalidSyntaxException; + import static org.junit.jupiter.api.Assertions.assertTrue; public class ParserTest { @@ -17,9 +20,14 @@ public class ParserTest { public void testProcessCommandIncorrectArguments() { String userInput = "/list 556"; Parser testList = new Parser(); - Command result = testList.processCommand(userInput); + Command result; + try { + result = testList.processCommand(userInput); + } catch (InvalidSyntaxException e) { + result = new ExitCommand(); + } //show error, if the result satisfy the condition in IncorrectCommand - assertTrue(result instanceof IncorrectCommand); + assertTrue(result instanceof IncorrectSyntaxCommand); } } diff --git a/src/test/java/seedu/workouttracker/WorkoutTest.java b/src/test/java/seedu/workouttracker/WorkoutTest.java index 54b081efec..99c780fa04 100644 --- a/src/test/java/seedu/workouttracker/WorkoutTest.java +++ b/src/test/java/seedu/workouttracker/WorkoutTest.java @@ -1,31 +1,25 @@ package seedu.workouttracker; import org.junit.jupiter.api.Test; -import seedu.parser.DateFormat; +import seedu.parser.DateFormatter; -import java.text.SimpleDateFormat; import java.util.Date; import static org.junit.jupiter.api.Assertions.assertEquals; public class WorkoutTest { - public SimpleDateFormat dateFormatting = new SimpleDateFormat("dd/MM/yyyy"); - @Test public void testGetDateAndSetDate() throws Exception { String expectedDatestring = "05/02/2023"; - Date expectedDate = dateFormatting.parse(expectedDatestring); + Date expectedDate = DateFormatter.stringToDate(expectedDatestring); Workout workout = new Workout(expectedDate); - DateFormat dateFormat1 = new DateFormat(expectedDate); - String formattedDate1 = dateFormat1.formatDate(); - assertEquals(formattedDate1, workout.getDate()); + String formattedDate1 = DateFormatter.dateToString(expectedDate); + assertEquals(formattedDate1, DateFormatter.dateToString(workout.getDate())); String newDatestring = "06/03/2024"; - Date newDate = dateFormatting.parse(newDatestring); - DateFormat dateFormat2 = new DateFormat(newDate); - String formattedDate2 = dateFormat2.formatDate(); + Date newDate = DateFormatter.stringToDate(newDatestring); + String formattedDate2 = DateFormatter.dateToString(newDate); workout.setDate(newDate); - assertEquals(formattedDate2, workout.getDate()); + assertEquals(formattedDate2, DateFormatter.dateToString(workout.getDate())); } - } From 9363c0320d051852059af92994e47151e39eb3ff Mon Sep 17 00:00:00 2001 From: calebcjl Date: Tue, 28 Mar 2023 18:28:05 +0800 Subject: [PATCH 072/152] Refactor to correct package --- .../seedu/workouttracker/WorkoutTest.java | 25 ------------------- 1 file changed, 25 deletions(-) delete mode 100644 src/test/java/seedu/workouttracker/WorkoutTest.java diff --git a/src/test/java/seedu/workouttracker/WorkoutTest.java b/src/test/java/seedu/workouttracker/WorkoutTest.java deleted file mode 100644 index 99c780fa04..0000000000 --- a/src/test/java/seedu/workouttracker/WorkoutTest.java +++ /dev/null @@ -1,25 +0,0 @@ -package seedu.workouttracker; - -import org.junit.jupiter.api.Test; -import seedu.parser.DateFormatter; - -import java.util.Date; -import static org.junit.jupiter.api.Assertions.assertEquals; - -public class WorkoutTest { - @Test - public void testGetDateAndSetDate() throws Exception { - String expectedDatestring = "05/02/2023"; - Date expectedDate = DateFormatter.stringToDate(expectedDatestring); - Workout workout = new Workout(expectedDate); - String formattedDate1 = DateFormatter.dateToString(expectedDate); - assertEquals(formattedDate1, DateFormatter.dateToString(workout.getDate())); - - String newDatestring = "06/03/2024"; - Date newDate = DateFormatter.stringToDate(newDatestring); - String formattedDate2 = DateFormatter.dateToString(newDate); - workout.setDate(newDate); - assertEquals(formattedDate2, DateFormatter.dateToString(workout.getDate())); - } - -} From 5ba626f5b64f67ac09ca2326cd817b3808459401 Mon Sep 17 00:00:00 2001 From: calebcjl Date: Wed, 29 Mar 2023 01:50:13 +0800 Subject: [PATCH 073/152] Fix WorkoutListTest bugs --- .../java/seedu/calorietracker/CalorieTracker.java | 2 +- .../java/seedu/commands/IncorrectSyntaxCommand.java | 2 +- .../commands/workoutcommands/AddWorkoutCommand.java | 2 +- .../commands/workoutcommands/ViewWorkoutCommand.java | 12 +++++++----- src/main/java/seedu/parser/CheckInputs.java | 11 +++++++---- src/main/java/seedu/parser/Parser.java | 4 ++-- src/main/java/seedu/workout/Workout.java | 2 +- src/main/java/seedu/workout/WorkoutList.java | 10 ++++++---- src/test/java/seedu/workout/WorkoutListTest.java | 10 +++++----- 9 files changed, 31 insertions(+), 24 deletions(-) diff --git a/src/main/java/seedu/calorietracker/CalorieTracker.java b/src/main/java/seedu/calorietracker/CalorieTracker.java index 9a7430dc39..9926b205db 100644 --- a/src/main/java/seedu/calorietracker/CalorieTracker.java +++ b/src/main/java/seedu/calorietracker/CalorieTracker.java @@ -46,7 +46,7 @@ public String addCalories(Date date, String food, int calories) { } public int getCalories(Date date) { - return totalCaloriesConsumedInDay.getOrDefault(date, -1); + return totalCaloriesConsumedInDay.getOrDefault(date, CALORIES_NOT_TRACKED); } private static boolean isValidCalories(int calories) { diff --git a/src/main/java/seedu/commands/IncorrectSyntaxCommand.java b/src/main/java/seedu/commands/IncorrectSyntaxCommand.java index e748874e43..d39e97a478 100644 --- a/src/main/java/seedu/commands/IncorrectSyntaxCommand.java +++ b/src/main/java/seedu/commands/IncorrectSyntaxCommand.java @@ -2,7 +2,7 @@ public class IncorrectSyntaxCommand extends Command { - private static final String ERROR_MESSAGE = "Invalid Syntax for "; + private static final String ERROR_MESSAGE = "Invalid syntax for "; private final String syntaxError; public IncorrectSyntaxCommand(String syntaxError) { diff --git a/src/main/java/seedu/commands/workoutcommands/AddWorkoutCommand.java b/src/main/java/seedu/commands/workoutcommands/AddWorkoutCommand.java index a8aaab3b89..ac25e9b375 100644 --- a/src/main/java/seedu/commands/workoutcommands/AddWorkoutCommand.java +++ b/src/main/java/seedu/commands/workoutcommands/AddWorkoutCommand.java @@ -20,6 +20,6 @@ public String execute() { } workoutList.getCurrentWorkout().addExercise(toAdd); - return "Added " + toAdd.getName(); + return "Added " + toAdd.toString(); } } diff --git a/src/main/java/seedu/commands/workoutcommands/ViewWorkoutCommand.java b/src/main/java/seedu/commands/workoutcommands/ViewWorkoutCommand.java index d8c3fc490d..ef575a5b4a 100644 --- a/src/main/java/seedu/commands/workoutcommands/ViewWorkoutCommand.java +++ b/src/main/java/seedu/commands/workoutcommands/ViewWorkoutCommand.java @@ -3,6 +3,7 @@ import seedu.commands.Command; import seedu.parser.DateFormatter; +import seedu.workout.Workout; import java.util.Date; @@ -17,11 +18,12 @@ public ViewWorkoutCommand(Date workoutToViewDate) { @Override public String execute() { - try { - int index = workoutList.getWorkoutArrayList().indexOf(workoutToViewDate); - return workoutList.getWorkoutArrayList().get(index).toString(); - } catch (NullPointerException e) { - return WORKOUT_NOT_FOUND_MESSAGE + DateFormatter.dateToString(workoutToViewDate); + for (Workout workout : workoutList.getWorkoutArrayList()) { + if (workout.getDate().equals(workoutToViewDate)) { + return workout.toString(); + } } + + return WORKOUT_NOT_FOUND_MESSAGE + DateFormatter.dateToString(workoutToViewDate); } } diff --git a/src/main/java/seedu/parser/CheckInputs.java b/src/main/java/seedu/parser/CheckInputs.java index 7bb055f54b..fd622b20e2 100644 --- a/src/main/java/seedu/parser/CheckInputs.java +++ b/src/main/java/seedu/parser/CheckInputs.java @@ -70,10 +70,13 @@ static Command processList(String arguments) { static Command processView(String arguments) { - Date date = parseDate(arguments); - - return date != null && parseInput(arguments) ? new ViewWorkoutCommand(date) : - new IncorrectSyntaxCommand("/view command"); + Date date; + try { + date = DateFormatter.stringToDate(arguments); + return new ViewWorkoutCommand(date); + } catch (ParseException e) { + return new IncorrectSyntaxCommand("/view command"); + } } //@@ author guillaume-grn diff --git a/src/main/java/seedu/parser/Parser.java b/src/main/java/seedu/parser/Parser.java index fd5b0962ea..895e597382 100644 --- a/src/main/java/seedu/parser/Parser.java +++ b/src/main/java/seedu/parser/Parser.java @@ -28,7 +28,7 @@ public Command processCommand(String userInput) throws InvalidSyntaxException { switch (commandName) { case "/start": return CheckInputs.processStart(arguments); - case "/add": + case "/wadd": return CheckInputs.processAdd(arguments); case "/end": return new EndWorkoutCommand(); @@ -36,7 +36,7 @@ public Command processCommand(String userInput) throws InvalidSyntaxException { return CheckInputs.processDelete(arguments); case "/list": return CheckInputs.processList(arguments); - case "/view": + case "/wview": return CheckInputs.processView(arguments); case "/count": return CheckInputs.processSetsRepsCount(arguments); diff --git a/src/main/java/seedu/workout/Workout.java b/src/main/java/seedu/workout/Workout.java index 6c04889228..a7379f622e 100644 --- a/src/main/java/seedu/workout/Workout.java +++ b/src/main/java/seedu/workout/Workout.java @@ -47,7 +47,7 @@ public String toString() { exerciseListString.append(EXERCISE_LIST_HEADER); for (int i = 0; i < workoutExercises.size(); i += 1) { - exerciseListString.append(i + 1).append("." + workoutExercises.get(i).toString() + System.lineSeparator()); + exerciseListString.append(i + 1).append(". " + workoutExercises.get(i).toString() + System.lineSeparator()); } return exerciseListString.toString(); diff --git a/src/main/java/seedu/workout/WorkoutList.java b/src/main/java/seedu/workout/WorkoutList.java index 381fe25c5e..b5f1af082a 100644 --- a/src/main/java/seedu/workout/WorkoutList.java +++ b/src/main/java/seedu/workout/WorkoutList.java @@ -15,7 +15,7 @@ public class WorkoutList { private static final String WORKOUT_LIST_HEADER = "Here are the list of dates of your workouts:" + System.lineSeparator(); - private final ArrayList workoutArrayList; + private ArrayList workoutArrayList; private int currentWorkoutIndex; public WorkoutList() { @@ -74,11 +74,13 @@ public String toString() { return workoutListString.toString(); } + //@@ author guillaume-grn public ArrayList countSetsRepsPreparation(Date dayInSpecificWeekDate) { WorkoutList workoutsInSpecificWeek = getWorkoutsInSpecificWeek(dayInSpecificWeekDate); ArrayList distinctExercisesList = new ArrayList<>(); - for (Workout workout : workoutsInSpecificWeek.workoutArrayList) { + + for (Workout workout : workoutsInSpecificWeek.getWorkoutArrayList()) { for (Exercise exercise : workout.getExercises()) { boolean isExistingExercise = false; for (Exercise distinctExercise : distinctExercisesList) { @@ -111,9 +113,9 @@ public WorkoutList getWorkoutsInSpecificWeek(Date dayInSpecificWeekDate) { WorkoutList workoutsInSpecificWeek = new WorkoutList(); Calendar calendar = Calendar.getInstance(); calendar.setTime(dayInSpecificWeekDate); - calendar.set(Calendar.DAY_OF_WEEK, Calendar.MONDAY); - Date startOfWeekDate = calendar.getTime(); calendar.set(Calendar.DAY_OF_WEEK, Calendar.SUNDAY); + Date startOfWeekDate = calendar.getTime(); + calendar.set(Calendar.DAY_OF_WEEK, Calendar.SATURDAY); Date endOfWeekDate = calendar.getTime(); for (Workout workout : workoutArrayList) { Date workoutDate = workout.getDate(); diff --git a/src/test/java/seedu/workout/WorkoutListTest.java b/src/test/java/seedu/workout/WorkoutListTest.java index 1db9eb77d2..3b553accec 100644 --- a/src/test/java/seedu/workout/WorkoutListTest.java +++ b/src/test/java/seedu/workout/WorkoutListTest.java @@ -28,13 +28,13 @@ public void testGetWorkoutsInSpecificWeek() { // Get the workouts for the week of January 01, 2023 using any day in the week Calendar calendar3 = Calendar.getInstance(); - calendar3.set(2022, Calendar.DECEMBER, 30); // Friday + calendar3.set(2023, Calendar.JANUARY, 03); // Tuesday WorkoutList workoutsInSpecificWeek = workoutList.getWorkoutsInSpecificWeek(calendar3.getTime()); // Check that the correct workouts are returned assertEquals(2, workoutsInSpecificWeek.getWorkoutArrayList().size()); - assertEquals(calendar0.getTime(), workoutsInSpecificWeek.getWorkoutArrayList().get(0).getDate()); - assertEquals(calendar1.getTime(), workoutsInSpecificWeek.getWorkoutArrayList().get(1).getDate()); + assertEquals(calendar1.getTime(), workoutsInSpecificWeek.getWorkoutArrayList().get(0).getDate()); + assertEquals(calendar2.getTime(), workoutsInSpecificWeek.getWorkoutArrayList().get(1).getDate()); } //@@ guillaume-grn @@ -44,9 +44,9 @@ public void testCountSetsRepsPreparation() { Exercise exercise1 = new Exercise("Bench press", "100", "8 6 4"); Exercise exercise2 = new Exercise("Bench press", "150", "5 5 5 5"); Calendar cal0 = Calendar.getInstance(); - cal0.set(2023, 3, 4); // April 4th, 2023.Tuesday + cal0.set(2023, Calendar.MARCH, 1); // March 4th, 2023.Wednesday Workout workout1 = new Workout(cal0.getTime()); - cal0.set(2023,3,6); + cal0.set(2023, Calendar.MARCH, 3); Workout workout2 = new Workout(cal0.getTime()); workout1.addExercise(exercise1); workout2.addExercise(exercise2); From 407a0f48539d38f4b31468858a3801928adbc2ba Mon Sep 17 00:00:00 2001 From: Richardtok Date: Wed, 29 Mar 2023 08:57:55 +0800 Subject: [PATCH 074/152] temp --- .../seedu/commands/workoutcommands/ViewWorkoutCommand.java | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/src/main/java/seedu/commands/workoutcommands/ViewWorkoutCommand.java b/src/main/java/seedu/commands/workoutcommands/ViewWorkoutCommand.java index 4a2b2bc333..25975c9b11 100644 --- a/src/main/java/seedu/commands/workoutcommands/ViewWorkoutCommand.java +++ b/src/main/java/seedu/commands/workoutcommands/ViewWorkoutCommand.java @@ -12,8 +12,6 @@ public class ViewWorkoutCommand extends Command { Date workoutToViewDate; public ViewWorkoutCommand(Date workoutToViewDate) { - - this.workoutToViewDate = workoutToViewDate; } @@ -22,7 +20,7 @@ public void execute() { for (Workout workout : workoutList.workoutArrayList) { DateFormat dateFormat = new DateFormat(workoutToViewDate); String formattedDate = dateFormat.formatDate(); - if (workout.getStringDate().equals(workoutToViewDate)) { + if (workout.getStringDate().equals(formattedDate)) { System.out.println(workout.getExercises()); Ui.showSeparator(); return; From f092986dbc7a8c1aed3ed8d8be445e338286ed46 Mon Sep 17 00:00:00 2001 From: guillaume-grn Date: Wed, 29 Mar 2023 10:26:04 +0800 Subject: [PATCH 075/152] WorkoutList : Fix delete and count bugs --- src/main/java/seedu/workout/WorkoutList.java | 6 +++--- src/test/java/seedu/workout/WorkoutListTest.java | 8 ++++---- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/src/main/java/seedu/workout/WorkoutList.java b/src/main/java/seedu/workout/WorkoutList.java index b5f1af082a..53026830bc 100644 --- a/src/main/java/seedu/workout/WorkoutList.java +++ b/src/main/java/seedu/workout/WorkoutList.java @@ -50,7 +50,7 @@ public ArrayList getWorkoutArrayList() { public String deleteWorkout(Date date) { for (Workout workout : workoutArrayList) { - if (workout.getDate() == date) { + if (workout.getDate().equals(date)) { workoutArrayList.remove(workout); return "Workout deleted"; } @@ -113,9 +113,9 @@ public WorkoutList getWorkoutsInSpecificWeek(Date dayInSpecificWeekDate) { WorkoutList workoutsInSpecificWeek = new WorkoutList(); Calendar calendar = Calendar.getInstance(); calendar.setTime(dayInSpecificWeekDate); - calendar.set(Calendar.DAY_OF_WEEK, Calendar.SUNDAY); + calendar.set(Calendar.DAY_OF_WEEK, Calendar.MONDAY); Date startOfWeekDate = calendar.getTime(); - calendar.set(Calendar.DAY_OF_WEEK, Calendar.SATURDAY); + calendar.set(Calendar.DAY_OF_WEEK, Calendar.SUNDAY); Date endOfWeekDate = calendar.getTime(); for (Workout workout : workoutArrayList) { Date workoutDate = workout.getDate(); diff --git a/src/test/java/seedu/workout/WorkoutListTest.java b/src/test/java/seedu/workout/WorkoutListTest.java index 3b553accec..28bc54b684 100644 --- a/src/test/java/seedu/workout/WorkoutListTest.java +++ b/src/test/java/seedu/workout/WorkoutListTest.java @@ -26,15 +26,15 @@ public void testGetWorkoutsInSpecificWeek() { calendar2.set(2023, Calendar.JANUARY, 02); // Monday workoutList.addWorkout(new Workout(calendar2.getTime())); - // Get the workouts for the week of January 01, 2023 using any day in the week + // Get the workouts for the week of December 26, 2022 using any day in the week Calendar calendar3 = Calendar.getInstance(); - calendar3.set(2023, Calendar.JANUARY, 03); // Tuesday + calendar3.set(2022, Calendar.DECEMBER, 28); // Wednesday WorkoutList workoutsInSpecificWeek = workoutList.getWorkoutsInSpecificWeek(calendar3.getTime()); // Check that the correct workouts are returned assertEquals(2, workoutsInSpecificWeek.getWorkoutArrayList().size()); - assertEquals(calendar1.getTime(), workoutsInSpecificWeek.getWorkoutArrayList().get(0).getDate()); - assertEquals(calendar2.getTime(), workoutsInSpecificWeek.getWorkoutArrayList().get(1).getDate()); + assertEquals(calendar0.getTime(), workoutsInSpecificWeek.getWorkoutArrayList().get(0).getDate()); + assertEquals(calendar1.getTime(), workoutsInSpecificWeek.getWorkoutArrayList().get(1).getDate()); } //@@ guillaume-grn From f46b143d7e7cc19e04e0b68cb9c1613afed93570 Mon Sep 17 00:00:00 2001 From: Richardtok Date: Wed, 29 Mar 2023 11:01:55 +0800 Subject: [PATCH 076/152] Update VIew DG --- docs/DeveloperGuide.md | 2 ++ docs/diagrams/ViewDiagram.puml | 17 ++++++++++++----- docs/images/ViewDiagram.png | Bin 0 -> 23740 bytes 3 files changed, 14 insertions(+), 5 deletions(-) create mode 100644 docs/images/ViewDiagram.png diff --git a/docs/DeveloperGuide.md b/docs/DeveloperGuide.md index 9de65f1354..00c2190a66 100644 --- a/docs/DeveloperGuide.md +++ b/docs/DeveloperGuide.md @@ -96,6 +96,8 @@ Below are the specific steps on how to use the view function and how the mechani * Step 2: The user will then use the following command `/view 11/02/22` will be taken into the parser and will return a list of exercises done on that specified date. + + ###### [Back to table of contents](#table-of-contents) ### Delete component diff --git a/docs/diagrams/ViewDiagram.puml b/docs/diagrams/ViewDiagram.puml index ac2c2d3913..397d65567f 100644 --- a/docs/diagrams/ViewDiagram.puml +++ b/docs/diagrams/ViewDiagram.puml @@ -2,10 +2,17 @@ 'https://plantuml.com/sequence-diagram autonumber +actor User +participant ":Duke" as Duke -Alice -> Bob: Authentication Request -Bob --> Alice: Authentication Response - -Alice -> Bob: Another authentication Request -Alice <-- Bob: another authentication Response +User -> Duke: Userinput +activate Duke +Duke -> Parser : processCommand(userInput) +activate Parser +Parser-> CheckInputs: processView(arguments) +activate CheckInputs +CheckInputs->ViewWorkoutCommand : ViewWorkoutCommand(date) +activate ViewWorkoutCommand +return workout.toString +return workout.toString @enduml \ No newline at end of file diff --git a/docs/images/ViewDiagram.png b/docs/images/ViewDiagram.png new file mode 100644 index 0000000000000000000000000000000000000000..1f4d1df9564b8836ca37f4201f7f63b7535c15eb GIT binary patch literal 23740 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 Date: Wed, 29 Mar 2023 18:58:47 +0800 Subject: [PATCH 077/152] DG : Add Delete sequence diagram --- docs/DeveloperGuide.md | 2 ++ docs/diagrams/DeleteWorkoutDiagram.puml | 35 ++++++++++++++++++++++++ docs/images/DeleteWorkoutDiagram.png | Bin 0 -> 40106 bytes 3 files changed, 37 insertions(+) create mode 100644 docs/diagrams/DeleteWorkoutDiagram.puml create mode 100644 docs/images/DeleteWorkoutDiagram.png diff --git a/docs/DeveloperGuide.md b/docs/DeveloperGuide.md index 9de65f1354..8b5a4a8e7e 100644 --- a/docs/DeveloperGuide.md +++ b/docs/DeveloperGuide.md @@ -101,6 +101,8 @@ Below are the specific steps on how to use the view function and how the mechani ### Delete component The deletion mechanism is facilitated by 'Parser', 'DeleteCommand', 'Workout', 'WorkoutList' and 'UI', where a Workout object will be deleted according to the command inputted by the user and removed from the workout list. + + Below is an example usage scenario and how the deletion mechanism behaves at each step: Step 1: Assume that the user has already added a workout on 21/03/23 into the WorkoutList using the following command, /start 21/03/23 diff --git a/docs/diagrams/DeleteWorkoutDiagram.puml b/docs/diagrams/DeleteWorkoutDiagram.puml new file mode 100644 index 0000000000..cba654b414 --- /dev/null +++ b/docs/diagrams/DeleteWorkoutDiagram.puml @@ -0,0 +1,35 @@ +@startuml +'https://plantuml.com/sequence-diagram + +autonumber +actor User +participant Duke +participant Ui +participant Parser +participant CheckInputs +participant DeleteWorkoutCommand +participant WorkoutList + +Duke -> Ui: getUserInput() +activate Duke +activate Ui +User -> Ui: User input +return User input +Duke -> Parser : processCommand(userInput) +activate Parser +Parser -> CheckInputs : processDelete(arguments) +activate CheckInputs +CheckInputs -> DeleteWorkoutCommand : DeleteWorkoutCommand(date) +activate DeleteWorkoutCommand +DeleteWorkoutCommand -> WorkoutList : remove(workout) +activate WorkoutList +return "Workout deleted" +deactivate WorkoutList +DeleteWorkoutCommand --> CheckInputs : "Workout deleted" +deactivate DeleteWorkoutCommand +CheckInputs --> Parser : "Workout deleted" +deactivate CheckInputs +Parser --> Duke : "Workout deleted" +deactivate Parser +Duke -> Duke : display("Workout deleted") +@enduml \ No newline at end of file diff --git a/docs/images/DeleteWorkoutDiagram.png b/docs/images/DeleteWorkoutDiagram.png new file mode 100644 index 0000000000000000000000000000000000000000..dfc557d344ce958b7c858169ba3af0a7bc862ebf GIT binary patch literal 40106 zcmc$`Wn5L;7d3nU5fuTI5)hE9g0xDBq=blcrywFJDcvYah=>YEw=_sfmja@6D;-LA z=ixl_0DARa@Be*%@B8893n%wpd+xR79CM7Zj*qOg7~V1RV+aHSPyD8cJOXhD9%51- z!GwQ0tlTm1kHK10)mqow!ofsO-x?vNXQuZ+$6D{+*}D#B4Xv#$tgf-LTA1jVS=*SJ zu;`kb+BVfuBM=x%MvAJ|KVC;*z;Wy&W|gGOdoLX?n^rkd*1&z$Wwy|;%DVD#y z{d}?|Ilkjr;Xes@R&As*$&Lw;~d}lXn zg`#9&l%iCjIj7KWUcM&LE(6!o3ul4Auy5cRcI!W68OfT<`8)@u@w@ z^Zcu2^=_4SMpbkEZRXe;(}ArPoZJF@sH>Z$!mmg_E6=}kXsbkNB^)~>f5DD@Gh6Es z+d$%Jkx!|Sbcg+`-=$yZv!`6rKVkcM*7#6(8p{!tV&$%hg^}vj{#5Zt(Vm<^vBFC= zNsC;fS=Z}1-uFM{kW7=qIDCY)wauyC{sdHS%cbf6;o@oQNT6VF-V;uC8`J{-nqu zb-h*wVj@<|jK7YF3XrxhS1MWV>{*1%fnVHi4Dl|)!z~9rj_kPUV&O*dh%aKEk z^Q+6QjY2L9{Clsvn;2^%Btx%s&X}X7o@~j=%zoT^T{g*B8R5L%Z)aYCG(cJpTEs?m zXqW6?Q8Et)BVxeu{=+SeiX9=olnPtY{qNYpcN#(#i(TWInSTGYmWxfI>+65Mx`4kw zhK$a1M5W!{V}wbDJ~qM?`w043WfvTd+#LQe@Bnd?3~9c-C4>L_1%55D}5n^kF;f|s4vOicHmf5Q3CoAwBunP8OHW%vFgt{y=rFZjc; zR6wMwzcbFqIZQy6ZhA$?shw*7ot;lo7(=n$_BeY_EAjvJ&Fkp&gg^|Py}0)uaputf zi_`yqIfyqlwxFnJO%;KFB+3|TZxCn6%yHdQQ&Z^`5@&h~{C5*bDEzSGfVkxrqUD=OaH1`TB^^K3}2fH);4R8y6A2*Ii(Y(W^+}W zm1=-;A-4i)Ivq$~@kN`J$+JGsh)v7Q#n#9uWzF)j@l86W*GwFghBtW$NULzV(lCcu z-8So0v|SSV-q;w+)s(GHrJ2w4s;H{kYo(5st#?7ZZ#lgkvhPYv>t)YfvnbcR>V~h*p#2)bKHIRMXNoE@oLn&$tljpbiRm8(gHi2oykrWgQ?7uBn7y9X8T7> z*Wx_`M+{>L!^wY*T{%$ZM9QrG#x&!`EKz5ES6v|eD``t6R2JbOM16aZ3|l?H`1F$s zo*^0g;q?BI;nHd&7*+c1gJX~oA;kQtkjQzrOjD)Ui>s~qT@iT-XC(Cmo0qId+Z&du zHXVoO@iz#yuHG-OzshP!{)Uj`J}ChX`KioA-vVqwBcsXhp93;Ai{kK-WdpbDcRBFc z+N3Qn1!3_0Uz}cx7!lPx!1s%wd(`M;T~g?%*YfIzLCOWXQj0FLMGLJF zcDT1)EL8aH=e4AQdq@%QHf&j!Z|lh1x2T?rMn?- zw*nOerYU*tx27|3pP!*`HCLTrX*^DlG^6eP+>HHBB`Zw5nE5f(-aX&JHISBeRqpzB z^r+A3RHwh6-*z+V%tEV}hRDt6<^iULfshyLxNOTqr06JDy-~=}P7gBe9~1O@J9a;_ zjEscjhD_-QZN_6y&&0$;ddhs$ZO^r}-ECCb;A?GOUJU}$T%MX|QoYRj>)9>e9_qig z&o8gj_Zl+5t@HHsPs-^iL~P8J%$K^2Ci1no=4H$+C`2?142l!fl4{RrWexS)&bDd1 zEAE^XshxS5F*$<7!hBeJ>Gmr9_~(nnxY7EaUW_}76RHJfY<$zJQ#R4%6uD=vS>G5` zjjypFKnMJa)9@R;?KQsaY$-U8fO6(Qq1AY~zrgO@nXluH>vN28Th43xI%^*vmumA; zdxX_gIry|+npB)7y|1THz%3h}CO$40`Q>f@d9$}_%i;mFjZX8HI>0M z#?z1>kGdzEvvMTq>J-jI$^29G0%DymL@{_XeTHU<)DOR{9kKdqa zB;T~Refdt6XRF6yq`X7oiSV6K)-)dL36aeTlkU1NT25>3 zY?|Pr_R2dmRO`34SbO#%rjE7jFw72Ew3Tak=hHIzrUF1NmC8t>d& zNjh!fD550SY!Y9!9>aW&X?=T+&|Pa6I>`{GE_&k0&@8L*w=2B#>W7bSh_25G5KglX zQwZ!9EG{0+BkbviTjg*xY8C4wC^%KuEMPkx zxo$n{XyCdl*E-v6pdDjyp}38kdvoPMTd706}EFHD7ak3!%G)F zD5?);=}brOu4H!evfW^Jx>PE5Fx49x`9y-Fv`SZLvb}MoSQDnZOb3crsUxr1$Z3g% zuGmkd7{tX>Fsm-Gj8f?lNl|tXNbCo5rV8>Q29e=m9IzLtJcoOYIEw5Irl6vb-3Bp0&t`*yqL zLKDwC$#me&KsMc4{v@LFQ<$sSwKr-$ewi3PEgaI$>d9 z`fovHWvg90e&ig=^V(&17_b~YCsUi1T!f~)id8q**?1%LqgTue%0aSar2jZHhJ zM<`D+C++6k%y<)c2+ZM@6W~O*k5f4sm`5L>RSI&5YDGYHYb&P$OJ?1 zo$Ct&Y(Zz|4=(FSuPxm=YL~nxJyl8*tKcDZMW*}=jZF~eS(ao+>eg4``t83go~V<@|yM2r^Z+9Eok|^ z`6fBJJ~LdqQ@8*S=kv^yfarTf1BEShwX`)-j*Gf&y2!0&BfZ+^=8bEKZbHgJQ<#Eo zvU<16mIY9oSjMrWt_7@zrc`cKMSNkUYLbZf$P{@@DrzK<^ggX=N3Ua>lnck^uC_~% z#B?69lsx@<@{=B;S6eW@Gt0NUva&8MJ`}%9avUaW@)lV$Q)no%21lFuba>Y7ukU$Dlneoqfsx`&LPJK+y02yF?`k0`O-~ zdN;v5gX_Zk+Nq13IbmK-6D@S)9L77J>3V}qYii=3zNiyfT|%ypvwM-?CSHj#2zg8G zx5g7hnDdmtm3Q>dkf}2H}bv7Yd_)r?AcBYE7j&gRfP*= zIrH+(e0|Mi8IPzl!OR-m&KnaG6E~1se6kZ}==`pIFl{H-bPwyZ>PtFKXm4;hwF}VP z$G>MQtLFk~sLr!)`fV>MW+P()|F4ts9pT@Ta&o**A88~mX|gzz%ephh6>u1DE5Y#d zr-{-#?@Qn|#5m1OW(@cY2THq`-Rk%~h{H$P`c|@%#xrT_Xh$3b1r#}|WSRD|@3C2j zAUuLpb1vtcD}CYmM;kB&oiisOd$exRMVrJ=bY-AU#7?#w7*m<`So9ShothR)pb5%a z9%t>OuD3wLw&U%q;pXM>2D24AdhgnnKHw_U_-e<>(Wa5|0}QI2Q3(92Zh2mU6{#h_ zvf@N&j?um`QhOv9M{f_tE`M-X?=M>sphyVCn9%MIU9s3cc@{~SbM1|qidm|H-CUml z0|ozThj}#xvH|yf7)SJ>l-;)}YJm}7ym%vmui^zrZy6k3_2mfQoHE@s+e-Vqo-`Wk zl~Zh6wwxp|ySp{LELtBR!yg&M!ONNd844&N^X8_QAAiT9urV=tKWpwi{WXPlBE65a zR)IqO-KkqM^&~V$Z zmb0|XPE2_7Mx?V|W`q9uhTi2=eo~g5fUV#fd@5c_LP8#kA>rE>83J6XaLp|~eYbXTstS`!Y9v8Ld6W|ty?RU)1uDxQFHOdjsY zk`3OkP9((?P@Y<&GaL^YnK^!KUsfSprJ{1%QL(g?nv6|!5;M5DE?Q=_x>t=dTk=)Z z&OF*pm=aP0WEAnh@SrReGa=q;m8F{AT~vsOnL=rtzjB3vuk4(k>1fHb9mybSJHE2rK-qTya>0;Aqoy#MonVY&Ea4FX^TTh}X(r!RXCJ?~={MSXg zsqtI6mp`0QR72;0>I#cC+^^^Sd2eJg24=7Pg{;KF;xgNje;lH+F0{N7qmn5epk+2t zdO?cZu%H4tE8*#+Ah3t;YOe7OE5x-C@=J*%%AnS7vpLbkjBbvjd_R7W;_4?-L^?T0 zHl-c(3<15Q(?ZL6t(tbZW&jr^^9A(mWmoBnf?h+-qUWAG-l>hcYCX|VXi1og^MOEM zCV9YPm&{*WUtb_9DOoiH^6nF|>tW$h>njVLB4wWe+{WMVi}kv|&Yq`|x$V5g7V{*( ztgh~b95mSej9&Ut=_{}ppmhYw$kvyHdE%tx&6^=?2G83J21*@LQc_l@zsN{RMqJUW zdw2g!N3U65VYWmt3lVZ6-ak-^SBJAEWf@z6tR_mOuDl3LgIFX$;$B7>kOEQs>?-EiGkbWzEc(B#gT4 zj=SBxd$+pyt1>;Y@vRL)TFHJ6c!e5TDN8X*=qB-q#BY&qt*_ z0r-Z_G?fzT$y1b+eAW{!1pFI<&Q0UgsEy$YMQ_=oc*tQ=9agQI4NE<9j=yG! zaQ+pT$D~a?%;+k6c=B;gPfgWB&+4?vkwnDCR9dECo$Jik%L$_aGOim&u}_~KQ?Gb1 zS|>*B!freB^`jpJ!I`Ts)NSYb#9L>foT0LzI|`QLmOJ;yko=LLfSeZ>7dJFCnR=gp=03RIL3 zqsm(%^vQIt5q$KFq^ZJc+J%MZ;r|6{iB)^JJJbOLK6Mh;jsgbh)MG&bEQ0m zIkendv9TO2&@$+EO|yJ=s|0dKq4Q?W-e4qEWZD`&09Ca39a_uQclK-D7rmvpu z7#zW;abURR>Ud(|#lsWHFM9EHf^kiyFwUapoj$pF4xMbKMyZ& zsmu1-@_4gK;yfvf=IP6KMIzktmsDZnp{414NvrtwbTbUGLHP!&* zeIu1jBv*bbZZIRKb7{0*L0+Dm-4KWf>1>VGa{b1zygc?EnI!2*$i9KQ^QFtu^78Wc z?wy|%i}28Kc`(*M)@Y<%;aX^?(4pfQ$VjG3Td59U=Rf{`DM)XqM+bff7t~>U@pO5!uA+9=aT*`1>>o(}P z$@96fk(e^1UteEe-bqySNsdPLtDqny7>Ak~x5?K_*Mt*L!UTMZ%F4D&-#@RctN=?m z(JaPICgr4~L(|Xex>Hz4Z_<a6cfmO9sVnW~D7!$L7aW;~B?v*dALyYEyu zD7LeuN1?(=5bREghS#q@EG%+dHNLFN!oq@&kFVUrW!86^lyv+`s15}Qf=)W($kC%} zS$E!VE{_LYtmuWrm}VCT-0|}>Cue)}P195|quOW$1hn&j30``wVJ2suJm6oBh%tU_ zrd4V$*GH6-o0|gZ|5pEzXJLtP(c-@^Q9sPeuLSLG%b0hXqxguJ85s$=Y7EQ`KbG3f zYpMH`$Ldsh#>U37b9Xhoso34RUrf*c@!a?C-!HaLK!snM>1MlfCC6!fPNTpqfrP*= zjULfJyHaN~|25lV>e#BMCvp+r{oNlz!47lkdS}BicbIU8QU)+obM^f~E|U@yPbPi3 zw?5ZD6`J=|b5o*JVzt&@R8MadZltcRu2H{9fhVC|0k->tKBY8ebRJVe_VRaVX=*a{ zaG88PyLDfB8w!S07<;QTjyshqgGvW;WttJgR_MQSPoAgBw$2tck@c6`c0S=f(kx&2 z*87$}o%2^zRBS0Nf@`|_QF0c--CS39&1o$?Z7V?NZZQ*ocZK;Nzuq#x%hvJJmxfj* z+w)w9Dj%+_ST9ar^TMZ$lY#}OsiXvBO9#o}>8@u9N5n)4GvW#xTYX)fbmX<5moK5Q zYnI2EA_H*XvbA#m%Ufa+5(Yalx1Mui&m-84UOfm{nf^k6A{O+sk9uk&^v9exv`O|f zrNT2`VO3^meWqJs=U5ALXJlv2I3u@gR93m{ptw?!l9G~edi)c?63W za9dosK~sdo&SGsiyV0qWCtGv$>OTk2X%{_s(t~^KSh4LaIaEawlCErBvBi^TbNk7q zSNcg1BP#9_g~DF=O8lOAuE?$L-|rRkSg#~V1V7zn={Fi58>6MAWk3-ilyEO!zC4x5 z=&li!bT{(F@9DkgjxjFB>hAXZeg4XGbW%F9JX0v79b_KGot>+5M53aijLPX3>FHY! zqjS%9Pt2ItOUuhO2D$(PoogxWo>6c~_X_jBCPKt~YHE^}kf7i+QI(c{&WZl~SwnvM3vC)vhQ=bY&Lmu~f6e^u+c%i5B+TlMxzNS~L070ir9vEn(_I;Vsq<5_VMSBeio_;K^8=w6oWHS%#CVNp=y(IQC||k%eRZI)pG9n*yFg% zaPm*NoqDckLG*jgdwOL%$-ym6Im2}|P1~p(tCEg_dR5?P?Uk#?uAIOme$Y!Z^B`6Z zf#{%W+||f4JV{NRxf@V%INHRy19kpP{m{ivf=3iTnR;c_Kgow2xj;d%Q~J~&(_Uyt z0I?;od4J*aM=_+#?}J5G)uW5c4E)E2UXP;)FTugkDt6@qh?lc3j1(<`-rF#ZzT*<-Lopxh>+i*2eFM^$s$ zMl#*X`0+d5KSL8uieQ&8194-bH690#oaodkAub#ciYMcvC7rYp?DxAQd*6&8(t-`iIz;mb?3GkgZl0H$~z@-iCDZRU^v*w)t8*QeR4^XUZ*77qR!lGH<6`_)u0t)W5E_)95P3_T+G2t7T0 zN_zSkSegZ9{ek!dd@HhQYTb}y+S}Vfg@_rDEu+468Oe=xdL(J%U~<8Vi*o*^)0wJ- zm+I498s>T>qajx&;_As$r*iJRe*}nwv2|o*1R9b@k1#E*zJ2tww6v^K-d>-#n;cUL z!;Aq9Db58-BESNLYv0Gmeb<5*Ri5(2AP}sJ3eK>+qMqp?2LGN%P>vC(aIr6MZ#(U7 zj(emE*vCgB12QXi!{SDCd4;5<@!u&bDYb4v%LxiN85vo3nbUfPMuB`iD8KaNF2Yrw zctCuo~?dHZW_keNdEq^Yo=Vm6PpBM###CSd){JP>kQKLWVa5;{;$dB_*X?{YK-Syp#zr zQ=rn*)4_exwgtB_#lQY3=2va|wK3wXPG7T5 zUV8ZkmjTAVKd9uI~ft(D5PM z-wW3Xfy|M31j)||gAZ+@`63jry?o{MqgFt)5wFpq(s0gMgtCZ0)T{01{=GvpRsX4c z{u-G-e*%uQLGq_!0T;G^DpY_4lSlmD^BUd8?v3w{#kFFw5?wXEmv4@RdwYA=)!i~h zy!p?uRii%}YBk=}@3P(xlb);JTEX7l{>F`uuP#WiyFdd-OhjZo*>*vy9#|)(vhQ&M z23aS5soKUvU$b>V1+oXo7wtHe!ZTNRF1crIwztz|CBSGN*S$WN^?o>0!au*3Qdp=; zgaCvkTQE)6K81OwDT3R_#|IYT(W6J}lB!uW3oqTR_6`XN0U-p6L~w90qXx5fIWJ6K zU{I#Eu5&+Dg+@(EU7dV37t)!7gTpN^y8#C}NP1|dn7&EO%4}pTl+D0UL)|Ai-(py3 zRPfGG01Q9YO~+SU*3yOV0W$djyBQd!LJgu)Qd8x{LNSM+;mlj=Hi(wfH8L_XGkZI6 z>E5Ro(9+7|Dq#YwCKGTi%~8_Vr+ufQsCdyyLFg97i(lHgEVKS%dP*wCiP)T+oB%qR z#H1vdkW1IgVjTsn?`~Ng#{D_D41mQL=AzngAf_G_6%)fz@_qI!g3~mNHZ@w3ad`%k z=HthYnN+ieb~cx9BWX>xoOo z9m%cnVssZSw7%hn8x9_)Ff;V+ymSYlbmXAfTJa&IYukzy_Tn@j0N67M)-{-B9Hu>r zEAvpQl$E=>a}A6l*KW9IDia|>Lqip_Bd*ynoICdo=1T&82ivu4jsRSs^fNLs%?y;4 zOt6+mWSI|^Q&S#h`taugo@S({SIfRDDkt}{crnur$w-UM(gpHm0r zV>W{(-rbFF(16B9F>B;U{9eQq*&aW6Vl(qq&iT+MCFGMksTTpz{B`b}f`Y<$L+H1h zIK+txOp)tAs|R%Q!BPknUI;){rK!;^mWL_FCU!EI`pS}^f$)$ z8T6b_1S5ogTctN7$Fdxuts4~33!O>Yhh{V=-VUd;m4@Lt` zI_?h869Y?-Q?6V4{JjTG`-}iTKmX;+Cpi!sfsZ{zrT)=T6CqG>r8I(ig7WgGj1dbb zkK*`-{hKfVVtvt9d*?$J^thiSKfI6o2fc&lG(4eQa$i4xhROIJ{N;}Vhep`WV*mc~ zK9GRIy=MkJqKM9a@b?FED7ra=`XRHpdC`6T=2g{>^8$QF?0>J83tawa+=;zF`NvBE z-u2%jK(|#Dul^lR=)>-10|Ema24vIIa5P5&P8$D`uRh(I68~|2XfuhT{a?Yl1j-#- zNh9ARl#?kNAS%J>OJ_MbIeB?`>FJFiL)O&P^Z?aIih$ApMJ1S3yURAm`)U^eq`Zec zZSxDCUY-LwAt50lRZHMM?luj&Z~6R;j13yHad7pOd}h>z90=GDgdxIZ=`auJF!o8% zhFjMHUKJxwa~OA2`w+h4V-gC!A)vkfY8W37s>BzeJuXppTo!S917rX>Pz8Y92IKOH z+_L?eex*yCNm5we9Wiqd(*mF44n-F5h5h)C% ze!M9X*xarR4YBQ5K0BC)z}&BvQmB>MTS95&qqQcTu%MHPQsmUm)yI31>;^olp;aqt zWAPiPGpw@#wj6G|&Tj(Lr}@5o3__AZ8uC_eL$9DKxcKqR+qK~2QP#Wm79Xe3RI zj!95Frxu7JCjhx`dj|+I!$={}`GGn$8-Pm5 zj`}kGhcjCGPr4i*@9St>xNZ^3`z%Z%ex`kkIuBFlyC} zprL)NscEf)x+NqeM8c$MvAg4tkgIcU_Jyqk_OrIQOFV>@ANEPz0&@cS#?ncBh&%6m zVm2UpFwO*OiLp~4 zY%n*h$+NSwCDDt?pdlo7?rcb;Pq($QReP1$hzwdq&Y1o@dRdeKc~EDE z0P!LD_9k;YTynDi+}0vGwB%79y@3Oras}Quqy?eadGr6})97(>G*v-=jdjdAsBWfg)Ux zC|54d`vo0#UK}WxyQjhGO`Z2AqS7n3YiR#`irQSn^^aRY<`n87342*~BPbO9Sga9bs3$Hchn zf6T*KbmAHDVDa=ra|T9-&rncE(A`Mla^2YgKvgK&RBf`ARy3)@r5?>~r4J0j#105v zIrfWp3&ItAgo1p=RNRyKxVX43UzXc!J?Q-vxQf4k`GB~;f$C6|SL?!=J`%*1#LN|L zGUFsMCFeOq=y|OJ>aZM>I|pS>?69dq{#H&`m6Ml`!z=t2-Hvt1<0pM<2)uG^^n}M~ z!!F%z)WYs5e{zngMy|n*{4L8YSZoDG?fNrcv-jG5?utk%cbdPsmtQJ>|B|cikyp$8 z7uLq_Z0;;K17Z8}#S07AgTtzpQysu{Xve`3;rM$gKY?Z{%r?#7i$_8vn2g<(Gt`kY z1_Jj%*peDNfnMO19+-%;l|JM{uZ_`)HE`U#Zo=rKh3Rhv`*~`OJ5z~~PJp^hyK_V- z+FS9_TUD~S$4L-9wC;$Y$jHdouWhF@3Z5QyadviwI}=E+P|btbQ5{0_l6QV0vBCv8 z#Ngucos+q!H*e0@Z9>}vQv`j`{)g1K&P0_DT&d0?Ts?kDvq#;Qy`%TPHGU_y8%<-g zyDfbgs>P(n&WaGgIpQwxi|D&)n&n-A1Q(LPmmQ!94vt6xNA%o3BG3`8qtWk2Hc^Kf z{IP*q=0+Vqfj|lGiEI1t#WZU{_n|+gs&qaE<{jdF>G;PD82NyPUit4o?0>iW@DX>V zzjbOFSM>W4d#8n~o;d;yeEcH%U=U%-SOmg?-IWOf0FgTf19|=teH3_Rd+(q<^ua~r zt?t9P0wfz3-AC`iz?HB6)cqbqA19*;Z_IzqTH>9s9}PZv>fmJlVhK z9J~{Vw6lN9;h*=vLa7I!`ug?jU`c2@Y^?YF(@Wq4I`a=7GoOnz!8%mQu+Q_OISG{< zJQ7!?ORZ-kff2aRBQ7pEdhV~kAbWs0GVtZg%SLT)fK@cDptjOL6wbzcs;`&0c@ym_ z;5^GmF#iqG2cQx#PQ1e)_{1rQNPqPAJq7G3si`>^hbTYSduO;7laM%IcN?|r+(Xcp)T z8F6u=mYDZ&wK9>{I1F22l9Q9ae*J3s?IXRy0610nH@^q4^Z0vv8}{bULa&y*2=M0I zjc4A#XFPwN=<*uUa?`$2eH<4Tf+4$mINqE+0`2SD0MJ1)?YXUDo-mKD+t);7S1EAs z4S#sz*`JIys94)UADVu~adD&upwG&NESKX6=_uZmGt$TtlzfhPfI5bUhrx&wE#Ss4 znj&YVT`iRWUcb(jm{!_I9=oRcdJs@4O(n*=vvq61*Q9K6*Z$SrWe^cteB@9d8n%vk zuFIhojzL=uAUF5{Ap-FRJPehsFqK3^F$5LXUc5LFhPk^|P|=CfQEfO!y+>?Z3Hx%u zYZx^*G%ztU0~U*U4ccW(UvM#Kd~yX)_k8$dzxCSEL+|VcT6V^9vMcvM)y!j- z(lV-A{8p>*4J`pgN4u<%Whh+a;`)-_nuXW^>&~~4k?P{%-A;|7*~%HOIZPWKP{G?~ z0hL{|7(!&o5{vXxIWJrfZWZnT*r&a_6wH1-378if+@%;q%&V~jB$t~+KGP~jtz3jj2Oo1 zP*_uqgnmHr=?@Oapy~!vG7{4Ipmn{T*5s7CT7yFVPwGJ(J_cg3cm~DItYxR zQksWA$K=_|hasXy`J{kN>=%Y$!t~h{U8mb1yj;W3mFc2C9DGF#{j8C zQAJjcX7|io>aJfHka4v&HKI3ez(iJdrj7v*@PSSQPp}9CDG@zEh}%BSbH>=mD#IiQYD36B$naOM zz|uitDk&Bo2vi!!L9T>#aCFgh2<{_;71%evLvi%c)*7*T1{gjrRmfB>kmhkRIB+Do;ObZ&V3wJ=J*Pix-^ z`0wsJ0MRl(D+RzqyL%K&d!X`o7&0j#0cws*7}|os4dkMUNIsq0!b!07{StiaOA3mL zd3S4$$+(VtHD3nAcP@u-)5HIVAMgj*THhNS=U=@60vq19S$>0p_Wr+r@c<3(>UsEM zZan`1xtyGzgIq-Ma`rQ|b2SU;e%R{|Q)64;@1ef=Mf4yMF}ARs`zrY!!rMP7LU1AH>4D2N06v+w?qLlhi`F{p1RMQAZ4wC(P?QPeX$uYcKVSAxJ#d(1$ zTGx36L|_7e9ScoO&6_uG0(AzAQu^dseOGAlASb}auDVa3LfDNUGrdd<_v}r{@5TR6 z>ac89wyHcj2I7ZN8hF{wNAzKHIrK)LHBmEC+EY;l8WaZnnfaT-Z1)udf~gQTigONO{D=)&gZl}QA<~yy(Qe?xU3T;7{*rZA#{hX~7!I?$bP$$6 zm79eZvummD_vB4NQ_R8F*(Z(DZ+oH~xu!97W1QZs?R*IYP4S_3IQR+Qg0&C~3Kd+J z#Fo_w2%$PJPAu+T#N~jib)LxfZ}XzZ3S|Xm6i32 z$sWwy1QUA96c@=S_yk^w53;tlwgPbW+o`2^fY4ws+x#r!`j-%>V;^88F?anF_xcFv z`nIcSBIYt8I__B_wx#VSyFDa~CxsyT!l$3KI&D4#pSjc&A*-dr$aFQbZsRdl; z%hucYjZ{XYh{L)es*zLIQd4$qrfB<*6R5=F-U6p5%uCkM#PNGhOE}co`?jPL%Q?dj zNPk^yB7}s5Mr~`ASOhKA*I+*ah+Bis%YKReIv5K8$AL`qSp_!b_?fF&d3k}f&If{@ zK4Sr82=WEm2hYgptNh@>1H%Caz<}V8h~lw(t`5eXI7QaHqf$4(j0X*WTYGy=$)S;p zAQ9#Df{T7M2J$*RACom}pBb1L4G*UqC8=HMXLk~K+|8yWYt72Q$Y}H+0`jk&LXiVl z2OS3doL5@KaPZGqD1D)@uEwEumhFz9Dt`6q)Rch9SG3CLvkSfv<))`p!j=`sfb)DZ z_k2RP%TFMJjx-Q$7fr<+rFED3yTja@D&RX33&@8i1{UyuWi4eMa4J@7Gio-}$m-_@ z&@@k8Q}fK3Gn%rpXVI?Fi^s6^;PORE)VOlM8f;0b4~9RWVbqIIyW4v%mz~WQFJ4rj zkn@}q>A6x zo%aMxu>YRzYzQ}Nvso++{|H?fSUoh08w*T(X}9h-O#$(GVx5tTOT|U3q1Y$Ypj&Cn`S@2|~5$PQqfXdj%QAm=nW zO-_D`kOzHn)%cCYayNJM9HD6hYI{D6<9_n!>KE;#TX&$T0LK6Btzv^_s;PKqvOBfU zDcQHJC#ALeOuEv$t(y7h)QyWX$`P<5>vTV_^~8(96y+GauPfyYkYxA4Q#5HA zU;DTR*fD)T#pxm?0BUp1Seo%`HDyT$Fx&+n9yDEIdzqIImX7(0w}`JwO(^rE<0ERyl1Z& z?rN49cQTA+ZgimO*@R%Nk%Gqh`gq&XTIUI!qp49C_nZ2Zkd*FZZ2A|ui1nQ~c^Q!n z165|$!$2nwxS^0>AuvV(NZo8~+|6?XNJuLcc5x8n(zL#9A^GhVK*(s5Xz#H*Tn7c* zq1ys_>)$HiWx24jerS27{1NYfGm487>KEhlPftyaGg<_@8NgZwer)Nj_4(+apbLp( z?DvV-ZmueOQUWkKqlmOaQq*3aqvc)gP_Smba^*_3)S~GfW03ZrwT!dAmfCHnW>L(*OcqHM_IRI@YW;g!=Ypsqt2v|a{3 z9qjHI0cUN)nu)#gR%n@5KXm9f8Arsto}b}vix(p(2yg$c!JP&hIv8dH57)6Wh1#(3 zMC|J5uo!}(W4x}7@egovnU&)2RtNZ=J;YE9%oglV1Dz|1S;ud$D&XKbw)c1sJ@{uiJ!9@yb3qXNdLW8QVWoZ6C5#oDbk+6ZmI zk5=lU`#$Eq@+~*m|B=h*H3svK2S(pNj0q9C_}kEFTnzzYkMEJczn%u6jrMC9{&K%Q zJwp#}=>9)}_1*z7obi4#v-{ZoEE~TQXyKVZj9%!|?DG~s7W1+Fk9-X_$z0Nh9Y1?M zxc~ZCa)#gjmYW`B)|sAnj2ACXz#8mvw__5Jxt_1$zy`zGxphDz5AET5_lAuby}0W) z@*?jAfd>jG{mmsk(@NaeM2M|OIM~77o6dSn^j*oOO*mg#(9rVWpZOQYjlM*YXgPq0 zcv2d$M)F+I}M$>;!c<~u%|i*%jS!u8~tgl&BQzB`x)0%ny4j_-;02kiGRVM&(N z(xL)2rM(NR9fm@8ua!7&K1jubtv41xKjMmZu0d-Q@7p&&Bn4`z#CWWl9tUoQ-d}p@N+Y+ zw32c)M{o+qkV^@G*U2z0F7Zh&SZxj5L##AU^5|lh3&SAd~ zaHVqRY)Zhh2etIv7X12HJs>+^hS3GO*R|_#NH7V z9nIRK@>Vk?Vt^HXa4RX=wMPm0#f5 zXg6S6j}@1#X0B=DF@$z0)*aG6rWJ9tW#WVJ+7tCgYk=K1*_KHf^sBwUG*8c*Z89{{xeku!fBo)NxOZYS(r z*aV`wN0kFPmD~na*a;hdJhV)k2q-d$~Q6*Chz~BN&?z!liLYBtPvL1 z1g<-5Dfme-!cSc_g|dka`a$b;O5jeVJ2XJxE(NkSxx#h_=Av8yaM|?CECE$TsTGG` zgoGsT>a{^voCz88Zrv_W4()G2WT?0(R|P@OFLVHxA50^D*v|pohiC7reP6gjO&gdQ zz+=R){&LH^nF$=uV8{#7>uFgaR33N%3H2G8uK~@DfcYnT{IiDM`)I&Q{f>hgNl@}S zersO`9+2H*s-8mMXIe@5KMUt^*pb)X)^_;#Y4mOn(}oCiRRYBE8@q8(3&gIUQp7qB zv|w$m!i9x8#!UMqPxt@%c`8M$KG*G8xS|+|*C8RWa~KujCM<|9TnC_vTK!ipZXY7; zmt6Ui9AJTKW9|f2Glc8V576=F%KbFu{8vR_i6#eujs&lxq3*Sw`>Z&BT=-{$0JRG_ zAMyt5OvA^AM6-(ET}F${3E$&w{?=N5DP0#o2{-HlH!}ct3TOzJiONXoxT3z>xA@h) z{t3|bA<22eH5moe$N>G7ciFp z)nCQjUvjTdI~sO0|5YE=YC$5_HR5L_6xG;GG`)_#}$FjdHB%r{~1~N zEd;;v@1lVU&|Usz;=#K2@_zxEBX0DYhLkyItrUg+)W6YH*2%r=di)P``p5{5&*+*A-nTAtsz#d;e<<7gtmfV+6!rh!FvU4UF=C;TsnvPd zY@v0tknioIy)Xc5`?OZ?$zu1PF~73A+3bc7#z6oo=g+?Z+M0lOp%OeQ>@L;cZ6KZ8 zJ;q}`P^w{GrsUHUEfC#<0vXgN9P~{t;EZai-O{ax)UFJ#In$ZZjhNYu=6leL7KY&{ z^fveZn0LWx;$y-F#a&^>4HI53C2M;RGGItvIQyvT0{Mn zMJ(X515a{KV-g4N;L&3U>Oa8ny%6h(h>5jJt^noopnpTd_1?WViThS7uGx^)eT@evtXs+R(bp_muUhY?Nqf0kS)#*ZGD!uTs=^{eRrq z-h+{%GwwSQ3Is`5t6GHvo+49*$Br>PMX@3L$&-_>FFrxJ17ya>4>(Vz9tqedZ_!;5 zNh9C-GZ=Sz(IeF2w6wI8l|zrDh|Y|tq%wl@7g}eEv%EKU-?v!1{>F5llVzQ(JOrT% z5a3;f>jncBDJWFGaj;wRYSY5(^F6mHA$lqksy_-!GKr8F|NmFB0lA-13AB&mY~Ktxy9eZp}AVy6|dT< zNi)xKb`TMm&z~rp7J|2)@15&n@GoVgkDCig7goB z%MFcUsWBa`I4R!{VKZAbQ#65up=I7+qgIF`?*ITCl11q4PEvz zely!Mz#2Vz#e(uDHdH_WP9?}gGWx3_v zp^qwxW#S-4{SB1D?qTKP6208DX4DRBz>_?WIQ0 zkyN#;d}*w%zXiJhJ#rk%S*3RN@QcrwgM)Mz&%9Xv=5>*0VcUPWXx`orMMdG1%@G0T z!63E=-DK3UXkU_LuaBk{aJUi;vG>4A{$eD8_aNAj9?7>F_wW)eaR8@7JAqs=B5Pw!$q^b5{|5u6NZ~4{t0m4 z#Ka%)N7dNRuLg~~&PKRI-n^Zp3az66$yQo@@X0at$ z-8;DDFss}PFJ9I)no?R6;)gUAUZSAhRVv0CxB1YP-N0D_C zSz3HpNY-G<#+n_}qKp&Tq`5)vcjJ`rZ+mKYJvpKCdFCdL4phX`2j6W-;&9M%)}MU1 z!KUq=moU+ZsQ##*%ACf5b0D2G+opHB9}x$0`U-Z31<%15CEN%^aLxf=I>Z3r6_(;y zuOaCTQF`F}+uw9GrlqBUg&Gkao@89Tl8>}-F(3x@whqcB>Sj@qcepUW!LrzXHHXcJ z!aqeRZ~aK3Rl)+F@Cc^1<8qptSlebxaps*2R|UJnW~aHuB+7yynBo#Xn@`d0gH_bD z0txaAfBRCq_{DQ{&-L;xAM)!dQm}|D-c9ddG?-4hy0z|1%dg*DIDYLC@jin37rN7=iBpJ|X~MvztNm01 z%*=YY@S=&Y?Y4isKJ%t9;6)@*Iy#!^kFB;8lrqWrZ%e2$7_%JhZsU^nwmp8>Pu1bo z%W3uw_a#AoQ~mXSd=IVR@7AP=`oI3UelkdYCHCR&$j%wyly=x43#v^v6(p#_=14)o zkz?f2p4PR!r0Sr`8C>-|gAP4Ftv?oe5fw>HDSw~l#Otha$_Y`4Hf@sk`-;R^ zwvY%bh?aau$f(q6?#3I|j=B zeg76lsmC+vhbamTN}(i;8_H&zhDvz#oi~*rSEKr(NR3_@^r2^5Y?p%oZInX@AO3>} z?6tNk@vNd;D}==~R8>D_*xL>sr@Ti2Vo7{>xbw=GZT0xS$g?j%sEDsKT1MKAU@F=U zYB}CSFy(gzH8u3-ck=GK9+?dcwER-{=CqZx%U!wis8;-^BZcS5gHSEJFS(jF9C51U*>Q-w_{6cpBU14sy0XF6S+rx=>5V1YA?lh|c#kvnf|g`g((-?ZzdeE z7Tq50{TBKAtC-F25Kdu(GSSl$D39VnPKDfTbVDIv+r7xpVPTM;AFD$79`{IHELdBf zXUD7Jl9I?#`~^dIZWD*{F+f(Fqau|>4y$!kRi&tJ+_>>-k+Je@I}J!5i(J}Ye*vlK&s$utig@~N_IYZ_ljE{9)UvEdp8lCWFY2mi50OK zG1SO4+vY79d%3^yWQ`h*u#eO<%KLpynVGvz?b3l9^YxCZ3Z9K2q7Pd3curmrzwW6G z8&`__KV|)2?r|>!<)qGC0TU4{XMAH2;;`N&bOKhecA)*iAfb?$l9pC)emnuyPkVI%`k#XP2}8s1Ba zGO`;Pf_pQ7vuoMOG!dPPhjHg8cco_oun-d_APwFPRQ}vI(zYzA_`Ksk?IeeeRiZB^ zw4Ji<{p81{8UY4FF{%lM7X)YU&7{X@%FAWq*Z-U6>(Ul3&KMY=q-De28jY;T5LAS1bPEgQ=TY64ECn zodnt?K%ra0_G@G(;AUbrOUt4_7R0+I_iLE3a!Xx+=t4IYg46boQ03R}#{Q{Wguvo& zag{l3P2==tu}2p}d$GDLq>R5-s?9b@wVHwZ{#IMhn5qgLt z4nz4n0e^dfh;#dP_zk!QqeWKdcf_MzbQNn4X1@^BtPvo>u2qgG%CzcgYHC906Ylu& z^5z;Z^W#nK)l&7{&(c=z3E!wbeA*~a4fEpknwa&$b@>!V^2POIg3EP8BaB(%XKaUENf!!kpa+9i^?QJ;t@e4YmeT3s6|I_h z9nnF|fM9;&3cixE=it|6B(3|tzA5Nr(n>+T2M$YOVj@Dl^W0Xb7~`LGg@jd2&jkvV zm*=^b`&zlZz8S11x^A{tZa{;ioJe4Ba1$aH#4Lk#Z27OOtWXsK$wbR7W{+8;P+9CQ zK=t5UojG#`SX@p&dro2sl7SHM>#z~0_4Ghp($Lb1A+R1%Lc#!84?KQlrteTQkwE;l ze?Y+dGnS55*QMvB5|faid>US_D)dO$cAsz@l;~`3hl1RI9{gYiR3Nloork=n4?H3o zhVN8abbUnIiR@_&028e4nYd@L3bD$$W=o|O9Z{2kGADTNUgq&SnL$BqH|g2ah|-vM zTy0O}5b}B@%Y%`TXBxpil2=rWtO!{iw2~h@!IG!00|&(RY<#y-U5gx<|Mtj?7Ca|K zX{R4}I$aSwyN!ucJI$A=DoR;W_#G`2220TJ1csP2H6c`_pzr~f^IUN2^@TtWSM>IR z7J2%9d*Q=d@=}!c;K9Gp7Q+3Uhb|yuM2&p2ZWW4<8nt7`9(?+Y#ySK-f@pWq$i(Ah za}|n_wA#c{6|jOw@R`-Foxj3TIv^qtF2-CGAFJvT5 zophH+Z_Z)r7yOm*>ZqVVOrij%hE|YwgMsCVK_!J>S1yU1OA^*(K17+nCMJgoU9Cw- z`QCJGDvtLRYutX||()a3TfJ9xPek)5o9R5-A-lHWIygi@kTz zu_dvkKwJiuEZV<(!BgCNWOTO}k_S*|QuJ-j%8csO4) zdx2+6+kHz-!2W<`*sh-8B39jf&PVj=lWd9LBkguMi?#RQjx7T6tR zCrBj#nu6M!ucu8a9l`@VVA&&p7KWjrivWAD;Mj>@omrn~CmAY#DvtAi=O+3#|NZ-v z3ljmr&lK97XOBC90}2I9FEj~l+7#&T&nCw>I=Ob`z}NXmu)LKx=_IED0;xu@a*7B$ zg6zj?PJIlAlZ>&7Tdf7;4y}pM7;6;B=55>}v#I2Fd+_HbaHFQizqzpBM zHgV{^E-ze>K1gz2xN4Gi2oCWtgGNLed(ilfsx4%KRkxjiEkXq?>#XBu+A{$xBujCV zH_j@Yo(!^PUi4^dOZ zP#{^mww?sFj0@kLsxJYzG(qft!Vy0vZTzu$Mt$eV^Uzob*3!I_#_u1!N9aSOIquXy zd;H}4rq@WHs9yB0Ml?ZwP93X)Q+_-rKsToZYj!MgI!Rl{+2TzN0@q*IiOJ5og%r=J zPuFe#Wn~cJ^!~I0zl0&r15M}_W^uZiJ~S`5kvtEU*tNd>IfniDZ|AK_&W#@k6ww8cj zeHtN}S2~3X#33OLcJ^4c*eZ}ky(xr_uRh-`IOy+Y+kpJc#kg;s_yhAo$?g zTYNIZ?)AmVB$v^^5QJ5K#(8!5`@~5-*FIS;#daow$;@Fl^nz-~`*H+#4*i!gKo7Kd zz=^lBn??a(7g6y6Jp&*Pf*~HH%lVOzv&Q*B{LbNUeETE=4d^p;t5%6qE7Jqv*=a+M z{153Z0xgs3XMq#;H>?;4Jqlh!CGh=COnTtuz>x8=zbW~3@gq@3ZAXroJzr9$7%Nu& zi6{MShp0*)^fG&drEx(eyAN*;x38}g}3ef9gbh$NDzj_Cp>58pP6xCsKE z@KcPL+iBOCgN_Ni1geL(vn?2_BMa5RK)HNeo+9K-rGcnVf7xT#1oi{M+lPS|nc3JJ z2wbF(Di7R?&3R$xYKm(uxIl$%-=V?3?d*`f#NzIi+M1gW7(yS(UJ@Zy(f;`}ZY~3~ zK|-;XkL=)w|IZG-7Nus-E?VuyZlm*Q{(&FK+s_-HcbQW`)S)4dM7xMWC2?^I52DQy zQ*6KkI9CkSqo~yyuP^FbSR@^~MCgR*dDAR_c6Z=veNWD-3^W^f4GB%84YuPKj%Scc z`{hgsZ6__a^l0!?Q6uE!;!?M4zwGoWv}R9Y+fCOye}bjItOz+hL5hImH_8@wP4_{G zg`X_CxJ2x202P6KB253<3b>#2osBhbu9$I)4R0NQqT`py30{uv+x4d>2B(uJCnu9; z5#pSl0V;LyzrYtRF8|jfFbK<4xK?9xoCE-!T*>&81lU|Y34Xx;H*Db#M{=4DtLzR5 z78^tu?NzwhTuvm7Lv3BsrPEqBpG@L?$m))%+{z(k)k;%G#VmQWS(w5AX% z1e2)i(~Gv|KdwU$d&R5mSXDV$S$AYO-Zs!2(B)4wTEBI6$xf(Iy=yT$;4m%VLpNnc z!N$spuG>T4b6Z$g7#YRvI{C3fPax~D-~-~hUYjFltLR0i(=1R5g#94947BA!Vbca3 z8?_=%ce9JAJYQ+UiV^ma9}1IPCsLk+xCC#8?w#5+>qG;R*rD!hJ zKL6y%z4~$}QFyNpf&DdYSXroe4VtRPWrZ#koUAHu_*H&bp_-8_FW^Bz-!i?pzvkrHki zf!{&Ab<6MHDlxT2$Dk?6n3Bxvf&rzkx75lLo}aqpK7*(o_|*_WI6slM9zwk_(oOh_+3r&>mOiemH* zh;FKBK+`zYc%b=3Z06YKUvuUcykiL$#Z2x`C|wV)5a*QujKmMyM7r~7c%Wp(YvYmeTEwdRiQ zZkn6D0w0DWX1Rg5pUDtXX;}DvOmWyUSIt05iU4wkLN7S>iXgXkwqPzx7*j|G-|==e zPBnUTA9Oa&^j$fv`M1i%S8I>&89x-5CeZklE6GH^cJ@*D+bM;#jBxEMu(_KfNGzZ- zl|;p%qn-Hfbv4BKa9_M5cigIbRQ2& z2N?j+%cxJZ!3>P)1Z@=ie?26^&6~xzkET~b@`>1vU4$g;vd<`ag!%w?hci`QIn(}7 z=cvAf-wd)CK>Ui)X&Uh*n&_ZHIpqj7LA`~yv$Px|`otE2NR^C#o}NT1WD)nH{1N3C z{QQ@QVt@Yh^fU+q?wPK-$!cC^g9Et65u;KG)f*^3x@+HPIV{%=12bRl5U`Q|dXRnh zZnZJim7&apO2W*Gk!;_#E}bKL(GRhh$x4i4_&*;BnDg63?fInzPbs@ z4Gh4)yFSVW@*O<}qK2{-q0J?}^{|{A`baL76h9iR&Ya~lJ?JOgJ_3?iSc3NF1ZKMd ziuUoKn>pwO3d+Q2#$2Xdw;EpPxeAP6?&~xJl*%RGhfNPnc6(eZhq54{zjJOgs0dv* zkyeA>+yU})lFJ8c05w(2#j(~`3tQt*T9=XGVrN%TxJX1SZ=Y$rc-x%}j)@9O z=emsWpqrW1a{q!(^kd*|c&qrED!1Pr{C98JeCY|PLOymkA#IQHE42fNOIme-EA04V z1~W%-G-s=hn*|~^tC1UFBXl-TJPH+2qZfhTAn=|S(;ztr4;S$S-3)FAFspy|Y{lM6 z`lJ?+Fk&0!Jc9fMa(=}*RtC}sHX_9nPVETWAB*P0TNt^78}IxITKq4|jK-F`OajEbwscQ z`(!~`^IXT4;!07*8BNxI52D<)ozeKEvg}z;0qRMT-*0IEhU7TQ58tt#%IU@PW&V_e z+&>Y?jv~FB#)*N?e8ZtGQ5mNuG!N;oDGx@FNX2x?F-Dg3< zRNeU)Xro<6;1v*Fy%lG)L5_#MTfte<@+T1y#0*o2T>|k5x~WGHw;=99aLX6)mfZMo z^B)jOr25e~6w_W>Z2_cLo+h#^@nKR_)UKka_sR+-CQe^8h;Y=lJ8FaBG9~56lg3hS z^T}$3?6cW~usZ%euZYln_s{#x2{gHc2Ki=e+d0?GA3J3iuZFdF+1_0HtMh;@%vg-8c8G=|na-j4@j^yCEQ(8PA ztmz*iijy4@TY_>vi*;w9T?rADOm$D%=$o6@Rp$0n$yo*1YB4ItR&%R z^a!h1>!s}0d}*X6C$}tJWaIz`B&@Bs{8W)TGvQ^!CbEFweIp^UnSvsAn1yn%XA8-* zkGvCN#eJ3w%Z$1nAY4?q{@qNMMPvuHLPTD!Hx?d4MQ#Sol;^729HUm;0oi+s(6)L; zNKxKhy^O>o)Kl3Iw7C;3*-V=x8r`4sp?R`D?fEy+vV6zN6chXie1{0uArwXq z)&us)xZd6Q`_POiSllF_-t;7(Khj)e6Y==(kPr*BO;rvTRjMzm0!?pknBVH#^PavesAy6VzJHc31av&lJcdQBgCTczyAp?E?~hoO7&? zQqo$3V=Ft16EE6i?7OA7_?r8(_tTTqBaE>H$62}}Dz zY^qdE>jSh$EOu+#oGa>USUk!|UHlwvQ6fCUW~k|vWq3Q8OC-im@|MwBRRy$A8!J-K zve50!nCf?A><*T#OrD<3Mo-$uAoi4?^p-BZq8{NBApzBq3;yuF$L(0nSMjz&KF^pCrOJL(P7fVvp|I*r^T{$pCIW7tBT*HK9=#DKZf~5wc;iOx4tEa;1oXDTUFueMexIk!49ftz%!l3x4Y}8If8C3m6xcr5? z1x`V|Ed{QAy{^<2ZNV!S(w%?gWBj+jD2}H*H9I|tcn4!FZP0ds@Y;tP$45b49_@FK zeh$Jd0pR&q2R=zM9LmRUpcC&3(AaEx^E!rx{(6JvZE+_OeIKT*c)PT?(cnVZ<^elX zA1=}zCSfh4&(%7PGax>pRqF&MN37j*p*4pfz&yZMi9sNkIAJEpP`XSp!u&Zzwrb_l zkF)=`H}Z6dinM(uX#fr`*2Na0amZp26Gp^g2G{IrM#h~Fa+Bqvo7vB)Yz)WrMB9`h zU4w5elnoPjuFf0Iw)^L%<(Sec7>@0`MYrN=hjFYO1<{-cbPL_iL~x6$Z)?9DmBvb?3{m8}YHnYt{?fw{+ukSR!qBR2 zArC1uRvjX3ah!38Qb{)64?g*MUJ3EB8 zxHx27qdKIY<))j`C8;p;Y`juE(z0K~aBR+cP#2@?_2(o^Od67sbb4!spEzg?kWa(J zhO^p@S7&GDplSYE+GAj1!dYi}OD|aP3@4|o#v-|G^-`zJj(qup|CY6T-JTZJ&VZK* zPpj7sbQ)m-VE_bSM&7YAl~Zot6CM53ha%W+XkBmb%=p~1rUzyWB~_<+Y>yVzTb$sr zy+ie2r@vYM;fFo zp6wLd7ELL+tvciy~`i5)-Q{W2;$&(jqR3s6>8vrkPmPl6`Q>)K9wK zio85_N2iJ9vAYw7y=ic@<7@1RPRX@>@)c=}B&e{L2n`=WdT9(Le89tK9X&YxdJbel zCadPF2tE-wgD0ngah1ei97N~Ur~x2*2(s;i=)gS<=2A+r8OluuR4vd423k0)ef-ox z>C~P64sBnIyfW2Z= zP@U=K&efLe+*ur7DvM8Rx9&S4(Am`bk>9wi=&f|()0#cmvH7&0nE2K-C$8eoRGt~Y-#>PFnqo)=wkUw%uNtr-$pq|3J?Vcb_c>SN=A_fCzvm=WWodHboHgg7Du!sH)K9B9xQN$+}iyc2qfIbcs# zzaCBpBZDzp+e()soxRNGL!qG9tNYR({f@>-t7^d~`|iQLtYVc(Q=?$R!K>oyN-f8kv; zxoO9rHrjP#`CBBDBVvRObjT?iHC72!Nzn>Of0lFWbKG>$kV%4VP0cXY#8+5XPAD zs;9OAHgjD+4$73%N5#u!6MLYpVGumhujo+j(|Bz(n_;&ND*Q*M#X~3kza$7nM-M3a+!`}TI=r2-c}FQ;R&hzz%F znVU6psc9TBdoTBJiC*G$wv*nsc5OKN;=;GyXkv9MhZO>?*S<^3_;oppow1ti*&o&K zGlOqYul3T%ak5?ZCjZSMMUly#62}j#xFwewe<~K;RFjz*BJE**((t7!v+B&9vkXN= z4tC3w9nSBSQ67_?OtqRAtLrb#?&-N)AnC8v%D=5jCMIC^d|2>P?_I90)vCcQJSDe3 z3duZyDLc}L7&cad~kHv<>hmjZWGiy-6b@1NYo~e(QN#e1XW~)*Y>k2*XCc?h!F(^>&FuPDt z?7wuwX!0?a==dF?vxp)h^=of>sooUUlI&)cZAkytY#cvhCMD%Oab1?1ak=E-{b&y= z;qdjFnOGAxU4Q0ISdTo<^`T+U80MIr-ahxH8>B>!kM=KUUA}_u*eyDbr9!US`ua~q z*p;fjuUroYG5A{ON?$$5B9Qh9oPDCN^?1|g#Ui<7X<~Fc(yBuK7|&EID$sh|_eAU1 z@I}$tiRRSHW=B<;E26*WwHLUhRnh%X|J!JDR3#UukQ8` zyA=5`@28zwt$>67eW#ARPN=am%Fp-EvC{2voE!HQv1g(;K46goVQPlC4#%Xv!3+2{GCFC68}h0o{B@k~#m}EKqE)a3@)|xRP|EK zR7;=ROPXm2TuKw~NEz-ZdF;x$2R^P{rGb3LR})%FL+5rol$F#kNl46`D>3yBHa7BK zJv_xZADx9eo>gj!^LwsrR!CE!Bkv&eQfDsJvE##d<0Zw1=PJIq@nJgKiMiPYZEf9f zt=nFF$-3Gm?f7xf-jIH+FjwL!1H#koy>x%S+|@plN}fZ*rLBj$uh8k=4{)R$$yR+* zeIotRE%FS2RIy$ zT6BdVOEL8UkMQs_+1BEwl`)PPLj@K#*EZK!krSfEt!00OW;?StsP~CnuFK&nlxu^_U7Q!On4-5>zdr$pi=h7=VFXS2Hyr*rEr+!6CZyqIVOCamuB~! zBnN)w{+7(y?pI5fj&?qYI4g7ZP|3lcp96zyh+}lBQtb=94sXftW@CCcd4ppzarb!a zIo@}3O$!EC6*O|^c4HEKMTWhMe_g@Z7tylWgjG03 zCv&s@p_6YK6=i*E(k3R_(ro*CrOmwgjGV9ZSiPD`FE_cfXR+FPBEp#1u(Kh{VK`uC zXNJV8!~C6%=@poh$&u>&#`dbURcV89k#7^f(MM;mMYX+$xjgvm1EyAJHso$p<*3*o zLdBNeqOxVL^$?9>agVeZM(xdoz8+wn8)Vj{Z+e)Qla@+&K|G9j{%*?Q=Vd3ZB@A#88hzg%N1u^V3X|1&TNp(%vnmdxSKDvNl~y| zzq@oNuPh=Om#pEJlWL@*KtaXfLcxf#L+j%kZgBlBiC1}FFQ80%&vNGNQhBfMP=NzI z3F15z{rArCYQLe@`LB~|9V(}Iu2;FShSIfb7Dq4tTEq0r&bP)PMT~sZCZ`nc?C=l1 zlB9Iwr$k(bisZ0>g~*{3e}PusdL&*XNAOE_^4bRcbw_@~4-|tbLI!J3PDuRjTUy>} zzBb_g71Wt#BcYvRWUTJ+h#;Q{uh%={D=pOLR31S<&#;94M9D8tqq9=|LR;LCzr!b3 zlh2N`XTx%#`X+6}KUS9G9>0F}%5Al}p!^odm9+jGyRP9_(SrQrHsB6zjLIpU_BOt2jWklK9_0bKVWago@ z!k{4Y}T!hZm%A>7yW?PrUvjZ!GygT+jc*hvcAOfMKanq3LAi@n{Smz>DR* z9XrWxs*Wk%k(C&y4eH7lNeU%*#qqtt^aLe@SEooE#NWss MRFHZmaq8Ot0E$e25dZ)H literal 0 HcmV?d00001 From 16f04498341777d7afd13da861ece75669f6cd7e Mon Sep 17 00:00:00 2001 From: calebcjl Date: Wed, 29 Mar 2023 20:05:06 +0800 Subject: [PATCH 078/152] Update user guide for v2.0 --- docs/UserGuide.md | 112 +++++++++++++++++++++++++++++++++------------- 1 file changed, 82 insertions(+), 30 deletions(-) diff --git a/docs/UserGuide.md b/docs/UserGuide.md index 5ff252ee68..a3ef245697 100644 --- a/docs/UserGuide.md +++ b/docs/UserGuide.md @@ -12,14 +12,16 @@ planning future exercises. - [Introduction](#introduction) - [Quick Start](#quick-start) - [Features](#features) - - [Start a Workout: /start](#start-a-workout--start) - - [Add exercise: /add](#add-exercise--add) + - [Start a workout: /start](#start-a-workout--start) + - [Add exercises to current workout: /wadd](#add-exercises-to-current-workout--wadd) - [End current workout: /end](#end-current-workout--end) - - [Display workout list: /list](#display-workout-list--list) - - [Display a workout: /view](#display-workout-view--list) + - [List workout dates: /list](#list-workout-dates--list) + - [View a workout: /wview](#view-a-workout--wview) - [Delete a workout: /delete](#delete-a-workout--delete) - - [Count Sets and reps over a week: /count](#count-sets-and-reps--count) - - [Exit app: /exit](#exit-app--exit) + - [Count sets and reps over a week: /count](#count-sets-and-reps-over-a-week--count) + - [Add calories consumed: /cadd](#add-calories-consumed--cadd) + - [View calorie consumption: /cview](#view-calorie-consumption--cview) + - [Exit the app: /exit](#exit-the-app--exit) - [FAQ](#faq) - [Command Summary](#command-summary) @@ -31,13 +33,12 @@ This application will help you track your current and future workouts. {Give steps to get started quickly} 1. Ensure that you have Java 11 or above installed. -2. Down the latest version of `Fitness Tracker` from [here](https://github.com/AY2223S2-CS2113-T14-1). - +2. Download the latest version of `Fitz` from [here](https://github.com/AY2223S2-CS2113-T14-1). ## Features -### Starting a workout: `/start` +### Start a workout: `/start` Starts the workout for a specific date Format: `/start
` @@ -55,12 +56,12 @@ Expected output: Started new workout. Use add command to add exercises to your workout! ``` -### Adding to the workout: `/add` -Adds to the list of workouts. +### Add exercises to current workout: `/wadd` +Adds exercise to the current workout. -Format: `/add /weight /rps ` +Format: `/wadd /weight /rps ` -* The `/start` needs to be inputted first to use the `/add` command. +* `/wadd` only works after a workout is started with `/start`. Example of usage: @@ -72,8 +73,21 @@ Expected output: ``` Added bench press 100 5 5 5 5 ``` -### Listing workout dates: `/list` -Display the current workout dates + +### End current workout: `/end` +End the current workout. + +Format: `/end` + +Example of usage: +`\end` +Expected output: +``` +Great job completing your workout! +``` + +### List workout dates: `/list` +Display the list of dates of workouts done. Format: `/list` @@ -81,25 +95,29 @@ Example of usage: `/list` +Expected output: ``` -Here are the list of dates for your workout: -Tue Mar 21 00:00:00 SGT 2023 +Here are the list of dates of your workouts: +1. 25/03/23 +2. 26/03/23 ``` -### Viewing a specific workout: `/view` -Display the specified workout list +### View a workout: `/wview` +Display the list of exercises done for a workout on a specified date. -Format: `/view
` +Format: `/wview
` Example of usage: -`/view 21/03/23` +`/wview 21/03/23` Expected output: ``` -[bench press 100 5 5 5 5, bench press 100 5 5 5 5] +Here are the list of exercises in your workout: +1. bench press 100kg 9 8 7 6 5 +2. squats 120kg 8 6 5 4 ``` -### Deleting a specific workout: `/delete` -Delete the specified workout +### Delete a workout: `/delete` +Delete a workout on a specified date. Format: `/delete
` @@ -109,9 +127,9 @@ Example of usage: Expected output: ``` -Workout deleted successfully. +Workout deleted. ``` -### Counting sets and reps over a week: `/count` +### Count sets and reps over a week: `/count` Displays the list of distinct exercises over a week and the associated total number of sets and reps for each one Format: `/count
` @@ -128,8 +146,38 @@ Bench Press - 4 sets - 48 reps Squats - 5 sets - 60 reps ---------------------------------- ``` +### Add calories consumed: `/cadd` +Add record of calories consumed. + +Format: `/cadd
` + +* `` can be omitted if food has not been added previously. + +Example of usage: +`/cadd 25/03/23 chicken 100` +`/cadd 25/03/23 chicken` + +Expected output: +``` +Consumed additional 100kcal. +Total calories consumed: 100kcal +Consumed additional 100kcal. +Total calories consumed: 200kcal +``` +### View calorie consumption: `/cview` +View the total calorie consumption in a specified date. + +Format: `/view
` + +Example of usage: +`/cview` + +Expected output: +``` +Calories consumed on 25/03/23: 200kcal. +``` ### Exit the App: `/exit` -Delete the specified workout +Exit the program. Format: `/exit` @@ -139,7 +187,7 @@ Example of usage: Expected output: ``` -Thank you and see you next time +Thank you, hope you had a great workout!!! ``` ## FAQ @@ -151,8 +199,12 @@ Thank you and see you next time ## Command Summary * Start a workout `/start
` -* Add exercise `/add /weight /rps ` +* Add exercise `/wadd /weight /rps ` * End current Workout `/end` -* Display workout list `/list` +* List workout dates: `/list` +* View a workout: `/wview
` * Delete a workout `/delete
` +* Count sets and reps over a week: `/count
` +* Add calories consumed: `/cadd
` +* View calorie consumption: `/cview
` * Exit app `/exit` From 99c892e0f709982b52a0877e010d0f1fe3e8f8cc Mon Sep 17 00:00:00 2001 From: Richardtok Date: Wed, 29 Mar 2023 20:21:59 +0800 Subject: [PATCH 079/152] checkstyle --- src/test/java/seedu/workout/WorkoutViewTest.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/java/seedu/workout/WorkoutViewTest.java b/src/test/java/seedu/workout/WorkoutViewTest.java index c0b1f52d1b..1789bbe4d9 100644 --- a/src/test/java/seedu/workout/WorkoutViewTest.java +++ b/src/test/java/seedu/workout/WorkoutViewTest.java @@ -8,7 +8,7 @@ //@@ Author Richardtok public class WorkoutViewTest { @Test - public void ViewFUnctionTest (){ + public void viewFunctionTest (){ WorkoutList workoutList = new WorkoutList(); Calendar calendar0 = Calendar.getInstance(); From 712adf377a531671b7cf2194cae99af3d3ced78f Mon Sep 17 00:00:00 2001 From: ZIZI-czh <77820516+ZIZI-czh@users.noreply.github.com> Date: Thu, 30 Mar 2023 00:38:10 +0800 Subject: [PATCH 080/152] solve conflict --- data/workoutRecording.txt | 8 ++ src/main/java/seedu/commands/Command.java | 18 ++++- src/main/java/seedu/commands/ExitCommand.java | 3 + .../workoutcommands/DeleteWorkoutCommand.java | 1 - .../workoutcommands/ListWorkoutCommand.java | 20 ++++- src/main/java/seedu/duke/Duke.java | 11 ++- src/main/java/seedu/storage/ReadFile.java | 81 ++++++++++++++++++- src/main/java/seedu/storage/SaveFile.java | 2 - src/main/java/seedu/storage/Storage.java | 12 +++ src/main/java/seedu/storage/WriteFile.java | 50 ++++++++++++ src/main/java/seedu/ui/Ui.java | 1 + src/main/java/seedu/workout/Workout.java | 5 +- src/main/java/seedu/workout/WorkoutList.java | 14 ++++ .../workoutcommands/DeleteCommandTest.java | 3 +- .../ListWorkoutCommandTest.java | 20 +++-- 15 files changed, 229 insertions(+), 20 deletions(-) create mode 100644 data/workoutRecording.txt delete mode 100644 src/main/java/seedu/storage/SaveFile.java create mode 100644 src/main/java/seedu/storage/Storage.java create mode 100644 src/main/java/seedu/storage/WriteFile.java diff --git a/data/workoutRecording.txt b/data/workoutRecording.txt new file mode 100644 index 0000000000..e4819b18f2 --- /dev/null +++ b/data/workoutRecording.txt @@ -0,0 +1,8 @@ +Date: 03/03/21 +Exercise: + 1. run 45kg 4 4 4 4 + 2. run 45kg 4 4 4 4 +Date: 03/03/22 +Exercise: + 1. run 45kg 4 4 4 4 +Date: 04/04/21 diff --git a/src/main/java/seedu/commands/Command.java b/src/main/java/seedu/commands/Command.java index 54b3c6109d..230f5b8264 100644 --- a/src/main/java/seedu/commands/Command.java +++ b/src/main/java/seedu/commands/Command.java @@ -2,20 +2,32 @@ import seedu.calorietracker.CalorieTracker; +import seedu.workout.Workout; import seedu.workout.WorkoutList; +import java.util.ArrayList; + public class Command { - protected WorkoutList workoutList = new WorkoutList(); + protected static WorkoutList workoutList = new WorkoutList(); protected CalorieTracker calorieTracker; + protected static ArrayList workoutArrayList; public Command() { } + public static WorkoutList getWorkoutList() { + return workoutList; + } - public void setData(WorkoutList workoutList, CalorieTracker calorieTracker) throws IllegalArgumentException{ + + public void setData(WorkoutList workoutList, CalorieTracker calorieTracker) throws IllegalArgumentException { if (workoutList == null || calorieTracker == null) { throw new IllegalArgumentException("WorkoutList cannot be null."); } - + } + public void setData(WorkoutList workoutList) { + if (workoutList == null) { + throw new IllegalArgumentException("WorkoutList cannot be null."); + } this.workoutList = workoutList; this.calorieTracker = calorieTracker; } diff --git a/src/main/java/seedu/commands/ExitCommand.java b/src/main/java/seedu/commands/ExitCommand.java index e10d5be344..b8a42d04d5 100644 --- a/src/main/java/seedu/commands/ExitCommand.java +++ b/src/main/java/seedu/commands/ExitCommand.java @@ -1,8 +1,10 @@ package seedu.commands; +import seedu.storage.WriteFile; public class ExitCommand extends Command { private static final String EXIT_MESSAGE = "Thank you, hope you had a great workout!!!"; + private static final String FILE_PATH = "data/workoutRecording.txt"; public static boolean isExit(Command command) { return command instanceof ExitCommand; @@ -10,6 +12,7 @@ public static boolean isExit(Command command) { @Override public String execute() { + WriteFile.writeWorkoutToFile(FILE_PATH); return EXIT_MESSAGE; } } diff --git a/src/main/java/seedu/commands/workoutcommands/DeleteWorkoutCommand.java b/src/main/java/seedu/commands/workoutcommands/DeleteWorkoutCommand.java index 03f8302c60..04e214a3bd 100644 --- a/src/main/java/seedu/commands/workoutcommands/DeleteWorkoutCommand.java +++ b/src/main/java/seedu/commands/workoutcommands/DeleteWorkoutCommand.java @@ -7,7 +7,6 @@ public class DeleteWorkoutCommand extends Command { private final Date workoutToDeleteDate; - public DeleteWorkoutCommand(Date workoutToDeleteDate) { this.workoutToDeleteDate = workoutToDeleteDate; } diff --git a/src/main/java/seedu/commands/workoutcommands/ListWorkoutCommand.java b/src/main/java/seedu/commands/workoutcommands/ListWorkoutCommand.java index b991eeaa1b..df05c52e69 100644 --- a/src/main/java/seedu/commands/workoutcommands/ListWorkoutCommand.java +++ b/src/main/java/seedu/commands/workoutcommands/ListWorkoutCommand.java @@ -2,12 +2,20 @@ import seedu.commands.Command; +import seedu.parser.DateFormatter; /** * This is the class for executing the list command */ public class ListWorkoutCommand extends Command { + public static final int EMPTY = 0; + private static final String EMPTY_WORKOUT_LIST_MESSAGE = "No workout recorded."; + private static final String LINE_SEPARATOR = "----------------------------------"; + private static final String WORKOUT_LIST_HEADER = + "Here are the list of dates of your workouts:"; + + //@@ author ZIZI-czh public ListWorkoutCommand() { } @@ -18,7 +26,17 @@ public ListWorkoutCommand() { //@@ author ZIZI-czh @Override public String execute() { - return workoutList.toString(); + workoutArrayList = workoutList.getWorkoutArrayList(); + if (workoutArrayList.size() == EMPTY) { + return EMPTY_WORKOUT_LIST_MESSAGE; + } + System.out.println(WORKOUT_LIST_HEADER); + for (int i = 0; i < workoutArrayList.size(); i += 1) { + System.out.println(i + 1 + ". " + + DateFormatter.dateToString(workoutArrayList.get(i).getDate())); + } + return LINE_SEPARATOR; + // return workoutList.toString(); } } diff --git a/src/main/java/seedu/duke/Duke.java b/src/main/java/seedu/duke/Duke.java index a115586ecb..715c442fe1 100644 --- a/src/main/java/seedu/duke/Duke.java +++ b/src/main/java/seedu/duke/Duke.java @@ -7,21 +7,27 @@ import seedu.commands.IncorrectSyntaxCommand; import seedu.exceptions.InvalidSyntaxException; import seedu.parser.Parser; +import seedu.storage.ReadFile; import seedu.ui.Ui; import seedu.workout.WorkoutList; public class Duke { private WorkoutList workoutList; private CalorieTracker calorieTracker; + + private static final String FILE_PATH = "data/workoutRecording.txt"; + + public Duke(String filePath) { + ReadFile.readFile(filePath); + } public static void main(String[] args) { - new Duke().run(); + new Duke(FILE_PATH).run(); } private void run() { workoutList = new WorkoutList(); calorieTracker = new CalorieTracker(); Ui.showWelcomeMessage(); - executeCommandUntilExit(); } @@ -39,3 +45,4 @@ private void executeCommandUntilExit() { } while (!ExitCommand.isExit(command)); } } + diff --git a/src/main/java/seedu/storage/ReadFile.java b/src/main/java/seedu/storage/ReadFile.java index d3ee230d19..dcc537fc30 100644 --- a/src/main/java/seedu/storage/ReadFile.java +++ b/src/main/java/seedu/storage/ReadFile.java @@ -1,2 +1,81 @@ -package seedu.storage;public class ReadFile { +package seedu.storage; + + +import seedu.commands.Command; +import seedu.parser.DateFormatter; +import seedu.workout.Exercise; +import seedu.workout.Workout; +import seedu.workout.WorkoutList; + +import java.io.File; +import java.io.BufferedReader; +import java.io.IOException; +import java.io.FileReader; + + +import java.text.ParseException; +import java.util.Date; + + +public class ReadFile extends Storage{ + + private static Workout toStart; + private static Date date; + private static final String SPACE = " "; + + private static final int EXERCISE_NAME_INDEX = 0; + private static final int WEIGHT_INDEX = 1; + private static final int REPS_PER_SET_INDEX_1 = 2; + private static final int REPS_PER_SET_INDEX_2 = 3; + private static final int REPS_PER_SET_INDEX_3 = 4; + private static final int REPS_PER_SET_INDEX_4 = 5; + + public static void readFile(String filePath) { + WorkoutList workoutList = Command.getWorkoutList(); + + File savedFile = new File(filePath); + if (!savedFile.getParentFile().exists()) { + savedFile.getParentFile().mkdirs(); + + } + try { + if (!savedFile.exists()) { + savedFile.createNewFile(); + } + } catch (IOException e) { + System.out.println("Failed to create a new file!!!"); + } + + try (BufferedReader bufferRead = new BufferedReader(new FileReader(filePath))) { + String line; + while ((line = bufferRead.readLine()) != null) { + if (line.startsWith("Date:")) { + String[] storeDateList = line.split(":"); + String storeDate = storeDateList[1].trim(); + date = DateFormatter.stringToDate(storeDate); + toStart = new Workout(date); + workoutList.addStorageWorkout(toStart); + workoutArrayList = workoutList.getWorkoutArrayList(); + } + if (line.contains(".")) { + String exerciseEntry = line.substring(line.indexOf(".") + 1).trim(); + String[] exerciseParts = exerciseEntry.split(" "); + String exerciseName = exerciseParts[EXERCISE_NAME_INDEX]; + String weight = exerciseParts[WEIGHT_INDEX]; + String repsPerSet = exerciseParts[REPS_PER_SET_INDEX_1] + + SPACE + exerciseParts[REPS_PER_SET_INDEX_2] + + SPACE + exerciseParts[REPS_PER_SET_INDEX_3] + + SPACE + exerciseParts[REPS_PER_SET_INDEX_4]; + Exercise toAdd = new Exercise(exerciseName, weight, repsPerSet); + //workoutExercises = Workout.getExercises(); + toStart.addExercise(toAdd); + } + } + } catch (IOException e) { + e.printStackTrace(); + } catch (ParseException e) { + throw new RuntimeException(e); + } + } } + diff --git a/src/main/java/seedu/storage/SaveFile.java b/src/main/java/seedu/storage/SaveFile.java deleted file mode 100644 index 96bf7a6c46..0000000000 --- a/src/main/java/seedu/storage/SaveFile.java +++ /dev/null @@ -1,2 +0,0 @@ -package seedu.storage;public class SaveFile { -} diff --git a/src/main/java/seedu/storage/Storage.java b/src/main/java/seedu/storage/Storage.java new file mode 100644 index 0000000000..164fba3cde --- /dev/null +++ b/src/main/java/seedu/storage/Storage.java @@ -0,0 +1,12 @@ +package seedu.storage; + +import seedu.workout.Exercise; +import seedu.workout.Workout; +import java.util.ArrayList; + +public class Storage{ + + protected static ArrayList workoutArrayList; + protected static ArrayList workoutExercises; + +} diff --git a/src/main/java/seedu/storage/WriteFile.java b/src/main/java/seedu/storage/WriteFile.java new file mode 100644 index 0000000000..4f243be547 --- /dev/null +++ b/src/main/java/seedu/storage/WriteFile.java @@ -0,0 +1,50 @@ +package seedu.storage; + +import seedu.commands.Command; +import seedu.parser.DateFormatter; +import seedu.workout.WorkoutList; +import java.io.File; +import java.io.FileWriter; +import java.io.IOException; + + + +public class WriteFile extends Storage{ + private static final String SPACE = " "; + public WriteFile(){ + super(); + } + + public static void writeWorkoutToFile(String filePath){ + WorkoutList workoutList = Command.getWorkoutList(); + workoutArrayList = workoutList.getWorkoutArrayList(); + + try { + File savedFile = new File(filePath); + FileWriter writeFile = new FileWriter(savedFile); + for(int index = 0; index < workoutArrayList.size(); index += 1) { + writeFile.write("Date: "); + String formattedDate = DateFormatter.dateToString(workoutArrayList.get(index).getDate()); + writeFile.write(formattedDate + System.lineSeparator()); + //workoutExercises = workout.getExercises(); + workoutList.setCurrentStorageWorkoutIndex(index); + workoutExercises = workoutList.getStorageCurrentWorkout().getExercises(); + if (!workoutExercises.isEmpty()) { + writeFile.write("Exercise: " + System.lineSeparator()); + for (int exerciseIndex = 0; exerciseIndex < workoutExercises.size(); exerciseIndex += 1) { + writeFile.write(SPACE + (exerciseIndex + 1) + ". " + + workoutExercises.get(exerciseIndex).toString() + + System.lineSeparator()); + } + } + } + writeFile.close(); + } catch (IOException e) { + throw new RuntimeException(e); + } + + + + } +} + diff --git a/src/main/java/seedu/ui/Ui.java b/src/main/java/seedu/ui/Ui.java index 9dfe3df627..8d30a8ea84 100644 --- a/src/main/java/seedu/ui/Ui.java +++ b/src/main/java/seedu/ui/Ui.java @@ -8,6 +8,7 @@ import java.util.Scanner; public class Ui { + private static final String WELCOME_MESSAGE = "Let's get moving!\n" + "\"/start
\" to begin " + "your workout"; private static final String LOGO_MESSAGE = " _______ __ .___________.________ \n" + diff --git a/src/main/java/seedu/workout/Workout.java b/src/main/java/seedu/workout/Workout.java index a7379f622e..0bb3305f0e 100644 --- a/src/main/java/seedu/workout/Workout.java +++ b/src/main/java/seedu/workout/Workout.java @@ -2,13 +2,13 @@ import seedu.parser.DateFormatter; - import java.util.ArrayList; import java.util.Date; public class Workout { private static final int EMPTY = 0; private static final String EMPTY_EXERCISE_LIST_MESSAGE = "No exercise in workout."; + private static final String LINE_SEPARATOR = "----------------------------------"; private static final String EXERCISE_LIST_HEADER = "Here are the list of exercises in your workout:" + System.lineSeparator(); private Date date; @@ -50,7 +50,8 @@ public String toString() { exerciseListString.append(i + 1).append(". " + workoutExercises.get(i).toString() + System.lineSeparator()); } - return exerciseListString.toString(); + System.out.print(exerciseListString); + return LINE_SEPARATOR; } } diff --git a/src/main/java/seedu/workout/WorkoutList.java b/src/main/java/seedu/workout/WorkoutList.java index 5922c864f1..fc2b63515a 100644 --- a/src/main/java/seedu/workout/WorkoutList.java +++ b/src/main/java/seedu/workout/WorkoutList.java @@ -11,6 +11,8 @@ public class WorkoutList { public static final int NO_CURRENT_WORKOUT = -1; public static final int EMPTY = 0; + + private int currentStorageWorkoutIndex; private static final String EMPTY_WORKOUT_LIST_MESSAGE = "No workout recorded."; private static final String WORKOUT_LIST_HEADER = "Here are the list of dates of your workouts:" + System.lineSeparator(); @@ -18,6 +20,7 @@ public class WorkoutList { private ArrayList workoutArrayList; private int currentWorkoutIndex; + public WorkoutList() { workoutArrayList = new ArrayList<>(); currentWorkoutIndex = NO_CURRENT_WORKOUT; @@ -27,6 +30,17 @@ public void addWorkout(Workout workout) { workoutArrayList.add(workout); currentWorkoutIndex = getLastIndex(); } + public void addStorageWorkout(Workout workout) { + workoutArrayList.add(workout); + + } + public Workout getStorageCurrentWorkout() { + return workoutArrayList.get(currentStorageWorkoutIndex); + } + public void setCurrentStorageWorkoutIndex(int currentWorkoutIndex) { + this.currentStorageWorkoutIndex = currentWorkoutIndex; + } + public void setCurrentWorkoutIndex(int currentWorkoutIndex) { this.currentWorkoutIndex = currentWorkoutIndex; diff --git a/src/test/java/seedu/commands/workoutcommands/DeleteCommandTest.java b/src/test/java/seedu/commands/workoutcommands/DeleteCommandTest.java index cfd060dab5..52902e328b 100644 --- a/src/test/java/seedu/commands/workoutcommands/DeleteCommandTest.java +++ b/src/test/java/seedu/commands/workoutcommands/DeleteCommandTest.java @@ -18,7 +18,7 @@ public class DeleteCommandTest { //@@ author guillaume-grn @Test public void testRemoveWorkout() throws Exception { - WorkoutList workoutLists = new WorkoutList(); + WorkoutList workoutLists = Command.getWorkoutList(); CalorieTracker calorieTracker = new CalorieTracker(); Command command = new InvalidCommand("invalid"); @@ -26,6 +26,7 @@ public void testRemoveWorkout() throws Exception { String stringDate2 = "02/11/2022"; Date date1 = DateFormatter.stringToDate(stringDate1); Date date2 = DateFormatter.stringToDate(stringDate2); + Workout workout1 = new Workout(date1); Workout workout2 = new Workout(date2); workoutLists.addWorkout(workout1); diff --git a/src/test/java/seedu/commands/workoutcommands/ListWorkoutCommandTest.java b/src/test/java/seedu/commands/workoutcommands/ListWorkoutCommandTest.java index efda526781..9f8afad0af 100644 --- a/src/test/java/seedu/commands/workoutcommands/ListWorkoutCommandTest.java +++ b/src/test/java/seedu/commands/workoutcommands/ListWorkoutCommandTest.java @@ -2,10 +2,12 @@ import org.junit.jupiter.api.Test; -import seedu.calorietracker.CalorieTracker; +import seedu.commands.Command; import seedu.workout.Workout; import seedu.workout.WorkoutList; +import java.io.ByteArrayOutputStream; +import java.io.PrintStream; import java.text.ParseException; import java.text.SimpleDateFormat; @@ -23,20 +25,24 @@ public void testShowWorkoutList() throws ParseException { SimpleDateFormat format = new SimpleDateFormat("dd/MM/yy"); // Call the method to be tested - // WorkoutList addList = new WorkoutList(); - WorkoutList workoutList = new WorkoutList(); - CalorieTracker calorieTracker = new CalorieTracker(); + WorkoutList workoutList = Command.getWorkoutList(); workoutList.addWorkout(new Workout(format.parse("11/11/23"))); workoutList.addWorkout(new Workout(format.parse("11/10/23"))); ListWorkoutCommand testList = new ListWorkoutCommand(); - testList.setData(workoutList, calorieTracker); + //testList.setData(workoutList, calorieTracker); assertEquals(2, workoutList.getWorkoutArrayList().size()); + //Capture the console output + ByteArrayOutputStream outContent = new ByteArrayOutputStream(); + System.setOut(new PrintStream(outContent)); + + // Call the method to be tested + testList.execute(); + // Assert that the console output matches the expected output assertEquals("Here are the list of dates of your workouts:" + System.lineSeparator() + "1. 11/11/23" + System.lineSeparator() + "2. 11/10/23" + System.lineSeparator(), - testList.execute()); + outContent.toString()); } } - From 1390bf87fbce1e4012183f436edaad3556fb027c Mon Sep 17 00:00:00 2001 From: ZIZI-czh <77820516+ZIZI-czh@users.noreply.github.com> Date: Thu, 30 Mar 2023 01:42:22 +0800 Subject: [PATCH 081/152] edit code style --- src/main/java/seedu/commands/Command.java | 3 ++- src/main/java/seedu/duke/Duke.java | 2 +- src/main/java/seedu/workout/WorkoutList.java | 4 ++-- 3 files changed, 5 insertions(+), 4 deletions(-) diff --git a/src/main/java/seedu/commands/Command.java b/src/main/java/seedu/commands/Command.java index 230f5b8264..ab41d09284 100644 --- a/src/main/java/seedu/commands/Command.java +++ b/src/main/java/seedu/commands/Command.java @@ -8,10 +8,11 @@ import java.util.ArrayList; public class Command { + protected static ArrayList workoutArrayList; protected static WorkoutList workoutList = new WorkoutList(); protected CalorieTracker calorieTracker; - protected static ArrayList workoutArrayList; + public Command() { } public static WorkoutList getWorkoutList() { diff --git a/src/main/java/seedu/duke/Duke.java b/src/main/java/seedu/duke/Duke.java index 715c442fe1..374cc9f0f6 100644 --- a/src/main/java/seedu/duke/Duke.java +++ b/src/main/java/seedu/duke/Duke.java @@ -12,10 +12,10 @@ import seedu.workout.WorkoutList; public class Duke { + private static final String FILE_PATH = "data/workoutRecording.txt"; private WorkoutList workoutList; private CalorieTracker calorieTracker; - private static final String FILE_PATH = "data/workoutRecording.txt"; public Duke(String filePath) { ReadFile.readFile(filePath); diff --git a/src/main/java/seedu/workout/WorkoutList.java b/src/main/java/seedu/workout/WorkoutList.java index fc2b63515a..7334b0e5a6 100644 --- a/src/main/java/seedu/workout/WorkoutList.java +++ b/src/main/java/seedu/workout/WorkoutList.java @@ -11,11 +11,11 @@ public class WorkoutList { public static final int NO_CURRENT_WORKOUT = -1; public static final int EMPTY = 0; - - private int currentStorageWorkoutIndex; private static final String EMPTY_WORKOUT_LIST_MESSAGE = "No workout recorded."; private static final String WORKOUT_LIST_HEADER = "Here are the list of dates of your workouts:" + System.lineSeparator(); + private int currentStorageWorkoutIndex; + private ArrayList workoutArrayList; private int currentWorkoutIndex; From 7ed51d076328f0b3e5e12873a23b8a420c42aafb Mon Sep 17 00:00:00 2001 From: ZIZI-czh <77820516+ZIZI-czh@users.noreply.github.com> Date: Thu, 30 Mar 2023 13:59:31 +0800 Subject: [PATCH 082/152] update uml diagram for list feature --- docs/diagrams/ListWorkoutDiagram.puml | 35 +++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 docs/diagrams/ListWorkoutDiagram.puml diff --git a/docs/diagrams/ListWorkoutDiagram.puml b/docs/diagrams/ListWorkoutDiagram.puml new file mode 100644 index 0000000000..795bffcae6 --- /dev/null +++ b/docs/diagrams/ListWorkoutDiagram.puml @@ -0,0 +1,35 @@ +@startuml +'https://plantuml.com/sequence-diagram + +autonumber +actor User +participant ":Duke" as Duke +participant ":Ui" as Ui +participant ":Parser" as Parser +participant ":CheckInput" as CheckInputs +participant ":ListWorkoutCommand" as ListWorkoutCommand +participant ":WorkoutList" as WorkoutList + + +Duke -> Ui: getUserInput() +activate Duke +activate Ui +User -> Ui: User input +return User input +Duke -> Parser : processCommand(userInput) +activate Parser +Parser -> CheckInputs : processList(arguments) +activate CheckInputs +CheckInputs -> ListWorkoutCommand : ListWorkoutCommand(date) +activate ListWorkoutCommand +ListWorkoutCommand -> WorkoutList : getWorkoutArrayList() +activate WorkoutList +return workoutArrayList +ListWorkoutCommand --> CheckInputs : LINE_SEPARATOR +deactivate ListWorkoutCommand +CheckInputs --> Parser : LINE_SEPARATOR +deactivate CheckInputs +Parser --> Duke : LINE_SEPARATOR +Duke -> Duke : display(LINE_SEPARATOR) + +@enduml \ No newline at end of file From 05e9051238f02a7fae94b3cec062b65445d358ed Mon Sep 17 00:00:00 2001 From: ZIZI-czh <77820516+ZIZI-czh@users.noreply.github.com> Date: Thu, 30 Mar 2023 14:17:15 +0800 Subject: [PATCH 083/152] edit the uml diagram --- docs/DeveloperGuide.md | 11 +++++++++++ docs/images/ListWorkoutDiagram.png | Bin 0 -> 32722 bytes 2 files changed, 11 insertions(+) create mode 100644 docs/images/ListWorkoutDiagram.png diff --git a/docs/DeveloperGuide.md b/docs/DeveloperGuide.md index 5bd10c41d9..a9edcd235f 100644 --- a/docs/DeveloperGuide.md +++ b/docs/DeveloperGuide.md @@ -82,7 +82,18 @@ Step 4. Finally, `addExercise()` is called and `toAdd` is added to `currentWorko ###### [Back to table of contents](#table-of-contents) ### List component +The deletion mechanism is facilitated by 'Parser', 'ListCommand', 'WorkoutList' and 'UI', where a Workout object will be deleted according to the command inputted by the user and removed from the workout list. + + +Below is an example usage scenario and how the List mechanism behaves at each step: + +Step 1: Assume that the user has already added a workout on 21/03/23 into the WorkoutList using the following command, /start 21/03/23 + Assume the user add another workout on 22/03/23 by entering /start 22/03/23 + +Step 2: The user input of /list will be taken in for the parser and an object of class ListCommand will be returned. + +Step 3: The execute method in the ListWorkoutCommand class that is overrides will be called and print out all the dates that while iterating the workoutList. ###### [Back to table of contents](#table-of-contents) ### View component diff --git a/docs/images/ListWorkoutDiagram.png b/docs/images/ListWorkoutDiagram.png new file mode 100644 index 0000000000000000000000000000000000000000..c77269c0b79c1dd1c153514f7d1a4e6190c6838d GIT binary patch literal 32722 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 Date: Thu, 30 Mar 2023 14:47:23 +0800 Subject: [PATCH 084/152] debug the test --- docs/{images => diagrams}/ListWorkoutDiagram.png | Bin src/main/java/seedu/commands/Command.java | 4 ++-- src/main/java/seedu/storage/ReadFile.java | 2 +- src/main/java/seedu/storage/Storage.java | 3 ++- src/main/java/seedu/storage/WriteFile.java | 2 +- .../workoutcommands/AddWorkoutCommandTest.java | 4 ++-- .../commands/workoutcommands/DeleteCommandTest.java | 3 ++- .../workoutcommands/ListWorkoutCommandTest.java | 3 ++- 8 files changed, 12 insertions(+), 9 deletions(-) rename docs/{images => diagrams}/ListWorkoutDiagram.png (100%) diff --git a/docs/images/ListWorkoutDiagram.png b/docs/diagrams/ListWorkoutDiagram.png similarity index 100% rename from docs/images/ListWorkoutDiagram.png rename to docs/diagrams/ListWorkoutDiagram.png diff --git a/src/main/java/seedu/commands/Command.java b/src/main/java/seedu/commands/Command.java index ab41d09284..e1235bb50f 100644 --- a/src/main/java/seedu/commands/Command.java +++ b/src/main/java/seedu/commands/Command.java @@ -15,9 +15,9 @@ public class Command { public Command() { } - public static WorkoutList getWorkoutList() { + /* public static WorkoutList getWorkoutList() { return workoutList; - } + }*/ public void setData(WorkoutList workoutList, CalorieTracker calorieTracker) throws IllegalArgumentException { diff --git a/src/main/java/seedu/storage/ReadFile.java b/src/main/java/seedu/storage/ReadFile.java index dcc537fc30..11cee653bc 100644 --- a/src/main/java/seedu/storage/ReadFile.java +++ b/src/main/java/seedu/storage/ReadFile.java @@ -31,7 +31,7 @@ public class ReadFile extends Storage{ private static final int REPS_PER_SET_INDEX_4 = 5; public static void readFile(String filePath) { - WorkoutList workoutList = Command.getWorkoutList(); + //WorkoutList workoutList = Command.getWorkoutList(); File savedFile = new File(filePath); if (!savedFile.getParentFile().exists()) { diff --git a/src/main/java/seedu/storage/Storage.java b/src/main/java/seedu/storage/Storage.java index 164fba3cde..9ffff517e4 100644 --- a/src/main/java/seedu/storage/Storage.java +++ b/src/main/java/seedu/storage/Storage.java @@ -1,10 +1,11 @@ package seedu.storage; +import seedu.commands.Command; import seedu.workout.Exercise; import seedu.workout.Workout; import java.util.ArrayList; -public class Storage{ +public class Storage extends Command { protected static ArrayList workoutArrayList; protected static ArrayList workoutExercises; diff --git a/src/main/java/seedu/storage/WriteFile.java b/src/main/java/seedu/storage/WriteFile.java index 4f243be547..5b02c382fb 100644 --- a/src/main/java/seedu/storage/WriteFile.java +++ b/src/main/java/seedu/storage/WriteFile.java @@ -16,7 +16,7 @@ public WriteFile(){ } public static void writeWorkoutToFile(String filePath){ - WorkoutList workoutList = Command.getWorkoutList(); + //WorkoutList workoutList = Command.getWorkoutList(); workoutArrayList = workoutList.getWorkoutArrayList(); try { diff --git a/src/test/java/seedu/commands/workoutcommands/AddWorkoutCommandTest.java b/src/test/java/seedu/commands/workoutcommands/AddWorkoutCommandTest.java index a09f4ce05e..09f86413d7 100644 --- a/src/test/java/seedu/commands/workoutcommands/AddWorkoutCommandTest.java +++ b/src/test/java/seedu/commands/workoutcommands/AddWorkoutCommandTest.java @@ -13,12 +13,12 @@ public class AddWorkoutCommandTest { - private static final SimpleDateFormat dateFormat = new SimpleDateFormat("dd/MM/yyyy"); + private static final SimpleDateFormat dateFormat = new SimpleDateFormat("dd/MM/yy"); private static final Date date; static { try { - date = dateFormat.parse("10/11/2022"); + date = dateFormat.parse("10/11/22"); } catch (ParseException e) { throw new RuntimeException(e); } diff --git a/src/test/java/seedu/commands/workoutcommands/DeleteCommandTest.java b/src/test/java/seedu/commands/workoutcommands/DeleteCommandTest.java index 52902e328b..b80a942699 100644 --- a/src/test/java/seedu/commands/workoutcommands/DeleteCommandTest.java +++ b/src/test/java/seedu/commands/workoutcommands/DeleteCommandTest.java @@ -18,7 +18,8 @@ public class DeleteCommandTest { //@@ author guillaume-grn @Test public void testRemoveWorkout() throws Exception { - WorkoutList workoutLists = Command.getWorkoutList(); + //WorkoutList workoutLists = Command.getWorkoutList(); + WorkoutList workoutLists = new WorkoutList(); CalorieTracker calorieTracker = new CalorieTracker(); Command command = new InvalidCommand("invalid"); diff --git a/src/test/java/seedu/commands/workoutcommands/ListWorkoutCommandTest.java b/src/test/java/seedu/commands/workoutcommands/ListWorkoutCommandTest.java index 9f8afad0af..44b64c25d3 100644 --- a/src/test/java/seedu/commands/workoutcommands/ListWorkoutCommandTest.java +++ b/src/test/java/seedu/commands/workoutcommands/ListWorkoutCommandTest.java @@ -25,7 +25,8 @@ public void testShowWorkoutList() throws ParseException { SimpleDateFormat format = new SimpleDateFormat("dd/MM/yy"); // Call the method to be tested - WorkoutList workoutList = Command.getWorkoutList(); + // WorkoutList workoutList = Command.getWorkoutList(); + WorkoutList workoutList = new WorkoutList(); workoutList.addWorkout(new Workout(format.parse("11/11/23"))); workoutList.addWorkout(new Workout(format.parse("11/10/23"))); ListWorkoutCommand testList = new ListWorkoutCommand(); From 753a802ed4ed17b3673a029864ddc551c5aacd91 Mon Sep 17 00:00:00 2001 From: guillaume-grn Date: Thu, 30 Mar 2023 15:17:55 +0800 Subject: [PATCH 085/152] Add ListWorkoutDiagram --- docs/diagrams/ListWorkoutDiagram.puml | 35 ++++++++++++++++++++ src/main/java/seedu/workout/WorkoutList.java | 4 +-- 2 files changed, 37 insertions(+), 2 deletions(-) create mode 100644 docs/diagrams/ListWorkoutDiagram.puml diff --git a/docs/diagrams/ListWorkoutDiagram.puml b/docs/diagrams/ListWorkoutDiagram.puml new file mode 100644 index 0000000000..f852721c0f --- /dev/null +++ b/docs/diagrams/ListWorkoutDiagram.puml @@ -0,0 +1,35 @@ +@startuml +'https://plantuml.com/sequence-diagram + +autonumber +actor User +participant ":Duke" as Duke +participant ":Ui" as Ui +participant ":Parser" as Parser +participant ":CheckInput" as CheckInputs +participant ":ListWorkoutCommand" as ListWorkoutCommand +participant ":WorkoutList" as WorkoutList + + +Duke -> Ui: getUserInput() +activate Duke +activate Ui +User -> Ui: User input +return User input +Duke -> Parser : processCommand(userInput) +activate Parser +Parser -> CheckInputs : processList(arguments) +activate CheckInputs +CheckInputs -> ListWorkoutCommand : ListWorkoutCommand(date) +activate ListWorkoutCommand +ListWorkoutCommand -> WorkoutList : getWorkoutArrayList() +activate WorkoutList +return workoutArrayList +ListWorkoutCommand --> CheckInputs : LINE_SEPARATOR +deactivate ListWorkoutCommand +CheckInputs --> Parser : LINE_SEPARATOR +deactivate CheckInputs +Parser --> Duke : LINE_SEPARATOR +Duke -> Duke : display(LINE_SEPARATOR) + +@enduml \ No newline at end of file diff --git a/src/main/java/seedu/workout/WorkoutList.java b/src/main/java/seedu/workout/WorkoutList.java index 5922c864f1..53026830bc 100644 --- a/src/main/java/seedu/workout/WorkoutList.java +++ b/src/main/java/seedu/workout/WorkoutList.java @@ -113,9 +113,9 @@ public WorkoutList getWorkoutsInSpecificWeek(Date dayInSpecificWeekDate) { WorkoutList workoutsInSpecificWeek = new WorkoutList(); Calendar calendar = Calendar.getInstance(); calendar.setTime(dayInSpecificWeekDate); - calendar.set(Calendar.DAY_OF_WEEK, Calendar.SUNDAY); + calendar.set(Calendar.DAY_OF_WEEK, Calendar.MONDAY); Date startOfWeekDate = calendar.getTime(); - calendar.set(Calendar.DAY_OF_WEEK, Calendar.SATURDAY); + calendar.set(Calendar.DAY_OF_WEEK, Calendar.SUNDAY); Date endOfWeekDate = calendar.getTime(); for (Workout workout : workoutArrayList) { Date workoutDate = workout.getDate(); From 2473b8a63391fc7aa03075e22412cb247ec0ee86 Mon Sep 17 00:00:00 2001 From: ZIZI-czh <77820516+ZIZI-czh@users.noreply.github.com> Date: Thu, 30 Mar 2023 16:17:37 +0800 Subject: [PATCH 086/152] change the command and diagram --- docs/{diagrams => images}/ListWorkoutDiagram.png | Bin src/main/java/seedu/commands/Command.java | 10 ++-------- .../workoutcommands/ListWorkoutCommand.java | 8 +++++++- 3 files changed, 9 insertions(+), 9 deletions(-) rename docs/{diagrams => images}/ListWorkoutDiagram.png (100%) diff --git a/docs/diagrams/ListWorkoutDiagram.png b/docs/images/ListWorkoutDiagram.png similarity index 100% rename from docs/diagrams/ListWorkoutDiagram.png rename to docs/images/ListWorkoutDiagram.png diff --git a/src/main/java/seedu/commands/Command.java b/src/main/java/seedu/commands/Command.java index e1235bb50f..2aebd086e1 100644 --- a/src/main/java/seedu/commands/Command.java +++ b/src/main/java/seedu/commands/Command.java @@ -19,20 +19,14 @@ public Command() { return workoutList; }*/ - - public void setData(WorkoutList workoutList, CalorieTracker calorieTracker) throws IllegalArgumentException { + public void setData(WorkoutList workoutList, CalorieTracker calorieTracker) throws IllegalArgumentException{ if (workoutList == null || calorieTracker == null) { throw new IllegalArgumentException("WorkoutList cannot be null."); } - } - public void setData(WorkoutList workoutList) { - if (workoutList == null) { - throw new IllegalArgumentException("WorkoutList cannot be null."); - } + this.workoutList = workoutList; this.calorieTracker = calorieTracker; } - public String execute() { throw new UnsupportedOperationException("This method is to be implemented by child classes"); } diff --git a/src/main/java/seedu/commands/workoutcommands/ListWorkoutCommand.java b/src/main/java/seedu/commands/workoutcommands/ListWorkoutCommand.java index df05c52e69..34810963dd 100644 --- a/src/main/java/seedu/commands/workoutcommands/ListWorkoutCommand.java +++ b/src/main/java/seedu/commands/workoutcommands/ListWorkoutCommand.java @@ -24,9 +24,10 @@ public ListWorkoutCommand() { * Show the list of date of the workout by calling the method in workoutList */ //@@ author ZIZI-czh - @Override + /*@Override public String execute() { workoutArrayList = workoutList.getWorkoutArrayList(); + if (workoutArrayList.size() == EMPTY) { return EMPTY_WORKOUT_LIST_MESSAGE; } @@ -37,6 +38,11 @@ public String execute() { } return LINE_SEPARATOR; // return workoutList.toString(); + }*/ + + @Override + public String execute() { + return workoutList.toString(); } } From 180efdecd5e416c95525e7bddd6ff639a641b0cd Mon Sep 17 00:00:00 2001 From: ZIZI-czh <77820516+ZIZI-czh@users.noreply.github.com> Date: Sun, 2 Apr 2023 21:33:15 +0800 Subject: [PATCH 087/152] add in workout name for the days --- src/main/java/seedu/commands/Command.java | 49 ++++++- .../countcommands/CountSetsRepsCommand.java | 47 ++++--- .../workoutcommands/AddWorkoutCommand.java | 32 +++-- .../workoutcommands/DeleteWorkoutCommand.java | 24 +++- .../workoutcommands/ListWorkoutCommand.java | 26 +++- .../workoutcommands/StartDayCommand.java | 61 +++++++++ .../workoutcommands/StartWorkoutCommand.java | 58 ++++++-- .../workoutcommands/ViewWorkoutCommand.java | 41 +++++- src/main/java/seedu/duke/Duke.java | 12 +- src/main/java/seedu/parser/CheckInputs.java | 38 ++++-- src/main/java/seedu/parser/Parser.java | 13 +- src/main/java/seedu/ui/Ui.java | 22 +-- src/main/java/seedu/workout/Day.java | 53 +++++++ src/main/java/seedu/workout/Workout.java | 51 +++---- src/main/java/seedu/workout/WorkoutList.java | 129 +++++++++--------- 15 files changed, 473 insertions(+), 183 deletions(-) create mode 100644 src/main/java/seedu/commands/workoutcommands/StartDayCommand.java create mode 100644 src/main/java/seedu/workout/Day.java diff --git a/src/main/java/seedu/commands/Command.java b/src/main/java/seedu/commands/Command.java index 2aebd086e1..585ace65f4 100644 --- a/src/main/java/seedu/commands/Command.java +++ b/src/main/java/seedu/commands/Command.java @@ -2,30 +2,71 @@ import seedu.calorietracker.CalorieTracker; +import seedu.commands.workoutcommands.StartDayCommand; +import seedu.commands.workoutcommands.StartWorkoutCommand; +import seedu.commands.workoutcommands.ViewWorkoutCommand; +import seedu.workout.Day; import seedu.workout.Workout; import seedu.workout.WorkoutList; import java.util.ArrayList; +import java.util.Date; +import java.util.HashMap; public class Command { - protected static ArrayList workoutArrayList; + //protected static ArrayList workoutArrayList; - protected static WorkoutList workoutList = new WorkoutList(); + protected WorkoutList workoutList = new WorkoutList(); + //protected HashMap singleWorkout; protected CalorieTracker calorieTracker; + protected Day singleWorkout; + //protected HashMap workouts = WorkoutList.getWorkoutsByDate(); + protected HashMap workouts; + //protected HashMap workout; + protected Day day = new Day(); + protected static Date date; + protected Workout workoutForOneDay = new Workout(); + + protected static boolean isWorkoutEntered; + protected static boolean isDayEntered; public Command() { + + // this.day = workoutList.getDay(); + //workout = day.getWorkout(); + //workouts = workoutList.getWorkouts(); + } + + + + public Day getStartDay() { + return day; } - /* public static WorkoutList getWorkoutList() { + + +/* public void setStartDay(Day startDay) { + this.startDay = startDay; + }*/ + /* public static WorkoutList getWorkoutList() { return workoutList; }*/ + + public static void setIsDayEntered(boolean isDayEnter) { + isDayEntered = isDayEnter; + } + public static void setIsWorkoutEntered(boolean isWorkoutEnter) { + isWorkoutEntered = isWorkoutEnter; + } + public void setData(WorkoutList workoutList, CalorieTracker calorieTracker) throws IllegalArgumentException{ if (workoutList == null || calorieTracker == null) { throw new IllegalArgumentException("WorkoutList cannot be null."); } - this.workoutList = workoutList; this.calorieTracker = calorieTracker; + + } public String execute() { throw new UnsupportedOperationException("This method is to be implemented by child classes"); diff --git a/src/main/java/seedu/commands/countcommands/CountSetsRepsCommand.java b/src/main/java/seedu/commands/countcommands/CountSetsRepsCommand.java index 21b22356e6..037e861b9e 100644 --- a/src/main/java/seedu/commands/countcommands/CountSetsRepsCommand.java +++ b/src/main/java/seedu/commands/countcommands/CountSetsRepsCommand.java @@ -1,24 +1,23 @@ -package seedu.commands.countcommands; - - -import seedu.commands.Command; -import seedu.workout.WorkoutList; - -import java.util.Date; - -//@@ author guillaume-grn -public class CountSetsRepsCommand extends Command { - Date dayInSpecificWeekDate; - public CountSetsRepsCommand(Date dayInSpecificWeekDate) { - this.dayInSpecificWeekDate = dayInSpecificWeekDate; - } - - @Override - public String execute() { - if (workoutList.getCurrentWorkoutIndex() == WorkoutList.NO_CURRENT_WORKOUT) { - workoutList.countSetsReps(dayInSpecificWeekDate); - return ""; - } - return "End your current workout before asking for Count command"; - } -} +package seedu.commands.countcommands; + + +import seedu.commands.Command; +import seedu.workout.WorkoutList; + +import java.util.Date; + +//@@ author guillaume-grn +public class CountSetsRepsCommand extends Command { + Date dayInSpecificWeekDate; + public CountSetsRepsCommand(Date dayInSpecificWeekDate) { + this.dayInSpecificWeekDate = dayInSpecificWeekDate; + } + + @Override + public String execute() { + + workoutList.countSetsReps(dayInSpecificWeekDate); + //return "End your current workout before asking for Count command"; + return " "; + } +} \ No newline at end of file diff --git a/src/main/java/seedu/commands/workoutcommands/AddWorkoutCommand.java b/src/main/java/seedu/commands/workoutcommands/AddWorkoutCommand.java index ac25e9b375..2f13e46ef2 100644 --- a/src/main/java/seedu/commands/workoutcommands/AddWorkoutCommand.java +++ b/src/main/java/seedu/commands/workoutcommands/AddWorkoutCommand.java @@ -2,24 +2,38 @@ import seedu.commands.Command; +import seedu.workout.Day; import seedu.workout.Exercise; -import seedu.workout.WorkoutList; +import seedu.workout.Workout; + +import java.util.Date; +import java.util.HashMap; public class AddWorkoutCommand extends Command { - private final Exercise toAdd; + //private final WorkoutList workoutList; + + //private Workout workout; + private static Exercise exercise; + private final String SHOW_EXERCISES_ADDED = " has been added"; + private final String MISSING_WORKOUT = "Please enter your workout before adding exercises."; - public AddWorkoutCommand(Exercise toAdd) { - this.toAdd = toAdd; + public AddWorkoutCommand(Exercise exercise) { + this.exercise = exercise; } @Override public String execute() { - if (workoutList.getCurrentWorkoutIndex() == WorkoutList.NO_CURRENT_WORKOUT) { - return "Start a workout first!"; + //ArrayList exercises = Workout.getExercises(); + if(isWorkoutEntered) { + day = workoutList.getSingleWorkout(); + workoutForOneDay = day.getWorkout(); + workoutForOneDay.addExercise(exercise); + return exercise + SHOW_EXERCISES_ADDED; + }else{ + return MISSING_WORKOUT; } - - workoutList.getCurrentWorkout().addExercise(toAdd); - return "Added " + toAdd.toString(); } + + } diff --git a/src/main/java/seedu/commands/workoutcommands/DeleteWorkoutCommand.java b/src/main/java/seedu/commands/workoutcommands/DeleteWorkoutCommand.java index 04e214a3bd..479f51b1ad 100644 --- a/src/main/java/seedu/commands/workoutcommands/DeleteWorkoutCommand.java +++ b/src/main/java/seedu/commands/workoutcommands/DeleteWorkoutCommand.java @@ -2,22 +2,42 @@ import seedu.commands.Command; +import seedu.parser.DateFormatter; +import seedu.workout.Day; import java.util.Date; +import java.util.HashMap; public class DeleteWorkoutCommand extends Command { private final Date workoutToDeleteDate; + private final String DELETE_WORKOUT_FIRST = "The workouts for "; + private final String DELETE_WORKOUT_SECOND = "have been deleted "; + + private final String NO_SUCH_DAY = "no such day has been found"; + + + public DeleteWorkoutCommand(Date workoutToDeleteDate) { this.workoutToDeleteDate = workoutToDeleteDate; } @Override public String execute() { - if (workoutList == null) { + /*if (workoutList == null) { return "WorkoutList is null."; } return workoutList.deleteWorkout(workoutToDeleteDate); - } + }*/ + HashMap workouts = workoutList.getWorkouts(); + + String formattedDate = DateFormatter.dateToString(workoutToDeleteDate); + if (workouts.containsKey(workoutToDeleteDate)) { + workouts.remove(workoutToDeleteDate); + return "Day " + formattedDate + " has been deleted."; + } else { + return "Could not delete day " + formattedDate; + } + } } diff --git a/src/main/java/seedu/commands/workoutcommands/ListWorkoutCommand.java b/src/main/java/seedu/commands/workoutcommands/ListWorkoutCommand.java index 34810963dd..afff7f1f22 100644 --- a/src/main/java/seedu/commands/workoutcommands/ListWorkoutCommand.java +++ b/src/main/java/seedu/commands/workoutcommands/ListWorkoutCommand.java @@ -3,6 +3,11 @@ import seedu.commands.Command; import seedu.parser.DateFormatter; +import seedu.ui.Ui; +import seedu.workout.Day; + +import java.util.Date; +import java.util.HashMap; /** * This is the class for executing the list command @@ -10,7 +15,7 @@ public class ListWorkoutCommand extends Command { public static final int EMPTY = 0; - private static final String EMPTY_WORKOUT_LIST_MESSAGE = "No workout recorded."; + private static final String EMPTY_DAY_LIST_MESSAGE = "No days have been found in the list"; private static final String LINE_SEPARATOR = "----------------------------------"; private static final String WORKOUT_LIST_HEADER = "Here are the list of dates of your workouts:"; @@ -18,6 +23,7 @@ public class ListWorkoutCommand extends Command { //@@ author ZIZI-czh public ListWorkoutCommand() { + super(); } /** @@ -39,10 +45,24 @@ public String execute() { return LINE_SEPARATOR; // return workoutList.toString(); }*/ - @Override public String execute() { - return workoutList.toString(); + HashMap workouts = workoutList.getWorkouts(); + if (workouts != null && !workouts.isEmpty()) { + StringBuilder string = new StringBuilder(); + string.append("Here is the list of dates:").append(System.lineSeparator()); + for (Date date : workouts.keySet()) { + String formattedDate = DateFormatter.dateToString(date); + string.append(formattedDate).append(System.lineSeparator()); + + } + return string + Ui.showSeparator(); + } else { + return EMPTY_DAY_LIST_MESSAGE; + } } + // return workoutList.printList(); + + } diff --git a/src/main/java/seedu/commands/workoutcommands/StartDayCommand.java b/src/main/java/seedu/commands/workoutcommands/StartDayCommand.java new file mode 100644 index 0000000000..374339fc65 --- /dev/null +++ b/src/main/java/seedu/commands/workoutcommands/StartDayCommand.java @@ -0,0 +1,61 @@ +package seedu.commands.workoutcommands; + +import seedu.commands.Command; +import seedu.parser.DateFormatter; +import seedu.workout.Day; +import seedu.workout.WorkoutList; +import seedu.workout.Workout; + +import java.util.Date; +import java.util.HashMap; + +public class StartDayCommand extends Command { + private Date date; + + + private Day day = new Day(); + /*public boolean isDayEntered() { + return isDayEntered; + } +*/ + /*public void setDayEntered(boolean dayEntered) { + isDayEntered = dayEntered; + }*/ + + + public StartDayCommand(Date date) { + super(); + this.date = date; + //day = new Day(date); + + + } + + public Date getDate() { + return date; + } + + @Override + public String execute() { + HashMap workouts = workoutList.getWorkouts(); + // String formattedDate = DateFormatter.dateToString(date); + StringBuilder stringBuilder = new StringBuilder(); + Day day = workouts.get(date); + if (day == null) { + day = new Day(date); + //workouts.put(formattedDate, day); + workoutList.addWorkoutToList(date, day); + String formattedDate = DateFormatter.dateToString(date); + stringBuilder.append("Great! You have added a new workout for ") + .append(formattedDate) + .append("."); + + }else { + stringBuilder.append("You had started workout on this day before, " + System.lineSeparator() + + "Please use '/wadd' to add a new workout."); + } + return stringBuilder.toString(); + } + + +} diff --git a/src/main/java/seedu/commands/workoutcommands/StartWorkoutCommand.java b/src/main/java/seedu/commands/workoutcommands/StartWorkoutCommand.java index 8abb19923b..1ee59e5a45 100644 --- a/src/main/java/seedu/commands/workoutcommands/StartWorkoutCommand.java +++ b/src/main/java/seedu/commands/workoutcommands/StartWorkoutCommand.java @@ -2,29 +2,71 @@ import seedu.commands.Command; +import seedu.parser.DateFormatter; +import seedu.workout.Day; import seedu.workout.Workout; import seedu.workout.WorkoutList; -import java.util.Date; +import java.util.HashMap; public class StartWorkoutCommand extends Command { private static final String START_WORKOUT_MESSAGE = "Started new workout." + System.lineSeparator() + "Use add command to add exercises to your workout!"; private static final String ONGOING_WORKOUT_MESSAGE = "End your current workout before starting a new " + "one!"; - private final Date date; + // private final Date date; + private static final String FAIL_TO_START_WORKOUT= "Please enter the day for your workout record first"; - public StartWorkoutCommand(Date date) { + private static boolean isWorkoutEntered; + private String workoutName; + + /*public StartWorkoutCommand(Date date) { this.date = date; } +*/ + public StartWorkoutCommand(String workoutName) { + super(); + this.workoutName = workoutName; + } + + public static boolean hasWorkoutEntered() { + return isWorkoutEntered; + } + + /*public static void setIsWorkoutEntered(boolean isWorkoutEntered) { + StartWorkoutCommand.isWorkoutEntered = isWorkoutEntered; + }*/ + + public String getWorkoutName() { + return workoutName; + } @Override public String execute() { - if (workoutList.getCurrentWorkoutIndex() == WorkoutList.NO_CURRENT_WORKOUT) { - Workout toStart = new Workout(date); - workoutList.addWorkout(toStart); - return START_WORKOUT_MESSAGE; + StringBuilder stringBuilder = new StringBuilder(); + + if (isDayEntered) { + Day singleWorkout = workoutList.getSingleWorkout(); + Workout workout = singleWorkout.getWorkout(); + if (workout.getWorkoutName() == null) { + workout = new Workout(workoutName); + singleWorkout.addWorkout(workoutName, workout); + //workouts.addWorkout(formattedDate, new Workout()) + stringBuilder.append("Great! You have added a new workout for ") + .append(workoutName) + .append("."); + + } else if (workout.getWorkoutName().equals(workoutName)) { + stringBuilder.append("You had started workout with the same name before, ") + .append("Please use '/wadd' to add exercises to the existing workout."); + }else { + stringBuilder.append("Great! You have added a new workout for ") + .append(workoutName) + .append("."); + } + return stringBuilder.toString(); + } else { + return FAIL_TO_START_WORKOUT; } - return ONGOING_WORKOUT_MESSAGE; } } diff --git a/src/main/java/seedu/commands/workoutcommands/ViewWorkoutCommand.java b/src/main/java/seedu/commands/workoutcommands/ViewWorkoutCommand.java index ef575a5b4a..ba01bc289e 100644 --- a/src/main/java/seedu/commands/workoutcommands/ViewWorkoutCommand.java +++ b/src/main/java/seedu/commands/workoutcommands/ViewWorkoutCommand.java @@ -1,29 +1,60 @@ package seedu.commands.workoutcommands; +import com.sun.jdi.PrimitiveValue; import seedu.commands.Command; import seedu.parser.DateFormatter; +import seedu.ui.Ui; +import seedu.workout.Day; +import seedu.workout.Exercise; import seedu.workout.Workout; +import seedu.workout.WorkoutList; +import java.util.ArrayList; import java.util.Date; +import java.util.HashMap; +import java.util.Map; public class ViewWorkoutCommand extends Command { private static final String WORKOUT_NOT_FOUND_MESSAGE = "No workout done on "; + private static String FAILE_TO_FIND_DATE = " does not exit in the list"; private final Date workoutToViewDate; + private HashMap workout; public ViewWorkoutCommand(Date workoutToViewDate) { + super(); this.workoutToViewDate = workoutToViewDate; + //workout = new Day(workoutToViewDate).getWorkoutsByDate(); } @Override public String execute() { - for (Workout workout : workoutList.getWorkoutArrayList()) { - if (workout.getDate().equals(workoutToViewDate)) { - return workout.toString(); + // convert the date to string for display purposes + String formattedDate = DateFormatter.dateToString(workoutToViewDate); + // get the Day object associated with the given date + Day workoutsOnDate = workoutList.getWorkouts().get(workoutToViewDate); + // if the Day object exists, retrieve the workouts and print them + if (workoutsOnDate != null) { + HashMap singleWorkout; + singleWorkout = workoutsOnDate.getWorkoutsByDate(); + StringBuilder string = new StringBuilder(); + if (singleWorkout.isEmpty()) { + return "No workouts found on " + formattedDate + System.lineSeparator() + Ui.showSeparator(); } + string.append("Workouts on ").append(formattedDate).append(":").append(System.lineSeparator()); + // retrieve all workouts for the day and add them to the StringBuilder + for (String workoutName : singleWorkout.keySet()) { + string.append(workoutName).append(":").append(System.lineSeparator()); + int index = 1; + for (Exercise exercise : singleWorkout.get(workoutName).getExercises()) { + string.append(index).append(". ").append(exercise.toString()).append(System.lineSeparator()); + index++; + } + } + return string + Ui.showSeparator(); } - - return WORKOUT_NOT_FOUND_MESSAGE + DateFormatter.dateToString(workoutToViewDate); + // if the Day object doesn't exist, return an error message + return formattedDate + FAILE_TO_FIND_DATE; } } diff --git a/src/main/java/seedu/duke/Duke.java b/src/main/java/seedu/duke/Duke.java index 374cc9f0f6..565f73d7e5 100644 --- a/src/main/java/seedu/duke/Duke.java +++ b/src/main/java/seedu/duke/Duke.java @@ -9,31 +9,37 @@ import seedu.parser.Parser; import seedu.storage.ReadFile; import seedu.ui.Ui; +import seedu.workout.Day; import seedu.workout.WorkoutList; public class Duke { private static final String FILE_PATH = "data/workoutRecording.txt"; private WorkoutList workoutList; + private Day day; private CalorieTracker calorieTracker; - public Duke(String filePath) { + + /*public Duke(String filePath) { ReadFile.readFile(filePath); - } + }*/ public static void main(String[] args) { - new Duke(FILE_PATH).run(); + new Duke().run(); } private void run() { workoutList = new WorkoutList(); + //day = new Day(); calorieTracker = new CalorieTracker(); Ui.showWelcomeMessage(); executeCommandUntilExit(); } + private void executeCommandUntilExit() { Command command; do { + String userInput = Ui.getUserInput(); try { command = new Parser().processCommand(userInput); diff --git a/src/main/java/seedu/parser/CheckInputs.java b/src/main/java/seedu/parser/CheckInputs.java index 188bbd3b0c..612f25990d 100644 --- a/src/main/java/seedu/parser/CheckInputs.java +++ b/src/main/java/seedu/parser/CheckInputs.java @@ -1,14 +1,9 @@ package seedu.parser; - import seedu.commands.Command; import seedu.commands.IncorrectSyntaxCommand; import seedu.commands.countcommands.CountSetsRepsCommand; -import seedu.commands.workoutcommands.AddWorkoutCommand; -import seedu.commands.workoutcommands.DeleteWorkoutCommand; -import seedu.commands.workoutcommands.ListWorkoutCommand; -import seedu.commands.workoutcommands.StartWorkoutCommand; -import seedu.commands.workoutcommands.ViewWorkoutCommand; +import seedu.commands.workoutcommands.*; import seedu.workout.Exercise; import java.text.ParseException; @@ -20,6 +15,13 @@ public class CheckInputs { private static final int REPS_PER_SET_INDEX = 2; + static Command processDay(String arguments) { + Date date = parseDate(arguments); + // Command.setDay(date); + return date != null && parseInput(arguments) ? new StartDayCommand(date) : + new IncorrectSyntaxCommand("/day command"); + } + static Command processAdd(String arguments) { Exercise toAdd; try { @@ -37,7 +39,7 @@ static Command processAdd(String arguments) { } /** - * This method used to check the "/start" command + * This method is used to check the "/start" command * If the date input has incorrect format, it will notify the users * Otherwise, StartCommand will be executed * @@ -45,13 +47,15 @@ static Command processAdd(String arguments) { * @return Incorrect command if the input date is incorrect, otherwise, initialize the StartCommand */ static Command processStart(String arguments) { - Date date = parseDate(arguments); - return date != null && parseInput(arguments) ? new StartWorkoutCommand(date) : + //String workout = parseDate(arguments); + // String workout = parseWorkoutName(arguments); + return parseWorkoutName(arguments) ? new StartWorkoutCommand(arguments) : new IncorrectSyntaxCommand("/start command"); + } /** - * This method used to check the "/delete" command + * This method is used to check the "/delete" command * * @param arguments Date input * @return Incorrect command if the input date is incorrect, otherwise, initialize the StartCommand @@ -129,19 +133,19 @@ private static Date parseDate(String arguments) { private static boolean parseInput(String arguments) { //arguments.trim().contains("\\s+"); if (arguments.trim().contains("\\s+")) { - System.out.println("invalid input date, please use the format /start dd/MM/yyyy"); + System.out.println("invalid input date, please use the format /start dd/MM/yy"); return false; // not in the form "/start dd/MM/yy" } String[] dateParts = arguments.trim().split("/"); if (dateParts.length != 3) { - System.out.println("invalid input, please use the format dd/MM/yyyy"); + System.out.println("invalid input, please use the format dd/MM/yy"); return false; // not in the form "dd/MM/yy" } for (String part : dateParts) { if (part.contains("/")) { - System.out.println("invalid input, please follow /start dd/MM/yyyy"); + System.out.println("invalid input, please follow /start dd/MM/yy"); return false; // non-numeric character found in date } } @@ -164,5 +168,13 @@ private static boolean parseInput(String arguments) { return true; // input is in the correct format } + public static boolean parseWorkoutName(String arguments){ + if(!arguments.trim().startsWith("Workout")){ + System.out.println("The workout name should start with 'Workout'"); + return false; + } + return true; + } + } diff --git a/src/main/java/seedu/parser/Parser.java b/src/main/java/seedu/parser/Parser.java index 895e597382..36acfef8e8 100644 --- a/src/main/java/seedu/parser/Parser.java +++ b/src/main/java/seedu/parser/Parser.java @@ -6,6 +6,9 @@ import seedu.commands.InvalidCommand; import seedu.commands.workoutcommands.EndWorkoutCommand; import seedu.commands.workoutcommands.HelpWorkoutCommand; +import seedu.commands.workoutcommands.StartDayCommand; +import seedu.commands.workoutcommands.StartWorkoutCommand; +import seedu.duke.Duke; import seedu.exceptions.InvalidSyntaxException; import java.util.regex.Matcher; @@ -15,6 +18,7 @@ public class Parser { private static final Pattern BASIC_COMMAND_FORMAT = Pattern.compile("(?\\S+)(?" + ".*)"); + private boolean isDayEntered; public Command processCommand(String userInput) throws InvalidSyntaxException { Matcher matcher = BASIC_COMMAND_FORMAT.matcher(userInput.trim()); @@ -26,12 +30,17 @@ public Command processCommand(String userInput) throws InvalidSyntaxException { String arguments = matcher.group("arguments"); switch (commandName) { + case "/day": + Command.setIsDayEntered(true); + Command.setIsWorkoutEntered(false); + return CheckInputs.processDay(arguments); case "/start": + Command.setIsWorkoutEntered(true); return CheckInputs.processStart(arguments); case "/wadd": return CheckInputs.processAdd(arguments); - case "/end": - return new EndWorkoutCommand(); + /*case "/end": + return new EndWorkoutCommand();*/ case "/delete": return CheckInputs.processDelete(arguments); case "/list": diff --git a/src/main/java/seedu/ui/Ui.java b/src/main/java/seedu/ui/Ui.java index 8d30a8ea84..5abf567db2 100644 --- a/src/main/java/seedu/ui/Ui.java +++ b/src/main/java/seedu/ui/Ui.java @@ -9,8 +9,8 @@ public class Ui { - private static final String WELCOME_MESSAGE = "Let's get moving!\n" + "\"/start
\" to begin " + - "your workout"; + private static final String WELCOME_MESSAGE = "Let's get moving!\n" + "\"/day
\" to start " + + "your workouts recording"; private static final String LOGO_MESSAGE = " _______ __ .___________.________ \n" + "| ____|| | | | / \n" + "| |__ | | `---| |----`---/ / \n" + @@ -45,8 +45,8 @@ public static void showLine(){ System.out.println(LINE); } - public static void showSeparator(){ - System.out.println(LINE_SEPARATOR); + public static String showSeparator(){ + return (LINE_SEPARATOR); } public static String getUserInput() { @@ -65,17 +65,5 @@ public static String getHelpMessage() { } //@@ author guillaume-grn - public static void displayCountSetsReps(ArrayList distinctExercisesList, Date dayInSpecificWeekDate) { - if (distinctExercisesList.isEmpty()) { - System.out.println("There are no workouts reported during this week !"); - return; - } - System.out.println("Exercises and number of sets and reps for the week of " + dayInSpecificWeekDate); - Ui.showSeparator(); - for (Exercise exercise : distinctExercisesList) { - System.out.println(exercise.getName() + " - " + exercise.getSetsCount() + " sets" + " - " - + exercise.getRepsCount() + " reps"); - } - Ui.showSeparator(); - } + } diff --git a/src/main/java/seedu/workout/Day.java b/src/main/java/seedu/workout/Day.java new file mode 100644 index 0000000000..bf7044fcba --- /dev/null +++ b/src/main/java/seedu/workout/Day.java @@ -0,0 +1,53 @@ +package seedu.workout; + +import java.util.ArrayList; +import java.util.Date; +import java.util.HashMap; + +public class Day { + private Date date; + private HashMap workoutsByDate; + private Workout workout = new Workout(); + + public Day(Date date) { + this.date = date; + this.workoutsByDate = new HashMap<>(); + //workout = new Workout(); + } + + public Day() { + this.workoutsByDate = new HashMap<>(); + } + + /* public Date getDate() { + return date; + }*/ + + public void addWorkout(String workoutName, Workout workout) { + workoutsByDate.put(workoutName, workout); + setWorkout(workout); + setWorkoutsByDate(workoutsByDate); + } + + + public Workout getWorkout() { + return this.workout; + } + + + public void setWorkout(Workout workout) { + this.workout = workout; + } + + /*public Workout getWorkouts(String name) { + return workouts.get(name); + }*/ + public HashMap getWorkoutsByDate() { + return this.workoutsByDate; + } + + public void setWorkoutsByDate(HashMap workoutsByDate) { + this.workoutsByDate = workoutsByDate; + } + +} \ No newline at end of file diff --git a/src/main/java/seedu/workout/Workout.java b/src/main/java/seedu/workout/Workout.java index 0bb3305f0e..609bed41db 100644 --- a/src/main/java/seedu/workout/Workout.java +++ b/src/main/java/seedu/workout/Workout.java @@ -1,6 +1,5 @@ package seedu.workout; - import seedu.parser.DateFormatter; import java.util.ArrayList; import java.util.Date; @@ -12,46 +11,48 @@ public class Workout { private static final String EXERCISE_LIST_HEADER = "Here are the list of exercises in your workout:" + System.lineSeparator(); private Date date; - private ArrayList workoutExercises; + private String workoutName; + private ArrayList exercises; + + private boolean hasExercises = false; + + - public Workout(Date date) { - this.date = date; - workoutExercises = new ArrayList<>(); + public boolean isHasExercises() { + return hasExercises; } - public void addExercise(Exercise exercise) { - workoutExercises.add(exercise); + public String getWorkoutName() { + return workoutName; } - public String getDateToString() { - return DateFormatter.dateToString(date); + public Workout(String workoutName) { + this.workoutName = workoutName; + exercises = new ArrayList<>(); } + public Workout() { - public Date getDate() { - return date; + exercises = new ArrayList<>(); } - public void setDate(Date date) { - this.date = date; + public void addExercise(Exercise exercise) { + exercises.add(exercise); + // hasExercises = true; } public ArrayList getExercises() { - return workoutExercises; + return exercises; } - public String toString() { - if (workoutExercises.size() == EMPTY) { - return EMPTY_EXERCISE_LIST_MESSAGE; - } - StringBuilder exerciseListString = new StringBuilder(); - exerciseListString.append(EXERCISE_LIST_HEADER); - for (int i = 0; i < workoutExercises.size(); i += 1) { - exerciseListString.append(i + 1).append(". " + workoutExercises.get(i).toString() + System.lineSeparator()); + @Override + public String toString() { + StringBuilder exercisesList = new StringBuilder(); + exercisesList.append("Workout: ").append(workoutName).append("\n"); + for (Exercise exercise : exercises) { + exercisesList.append(exercise.toString()).append("\n"); } - - System.out.print(exerciseListString); - return LINE_SEPARATOR; + return exercisesList.toString(); } } diff --git a/src/main/java/seedu/workout/WorkoutList.java b/src/main/java/seedu/workout/WorkoutList.java index 7334b0e5a6..f28d053fc2 100644 --- a/src/main/java/seedu/workout/WorkoutList.java +++ b/src/main/java/seedu/workout/WorkoutList.java @@ -4,99 +4,78 @@ import seedu.parser.DateFormatter; import seedu.ui.Ui; -import java.util.ArrayList; -import java.util.Calendar; -import java.util.Date; +import java.util.*; public class WorkoutList { public static final int NO_CURRENT_WORKOUT = -1; public static final int EMPTY = 0; private static final String EMPTY_WORKOUT_LIST_MESSAGE = "No workout recorded."; + private static final String EMPTY_DAY_LIST_MESSAGE = "No days have been found in the list"; private static final String WORKOUT_LIST_HEADER = "Here are the list of dates of your workouts:" + System.lineSeparator(); private int currentStorageWorkoutIndex; + private boolean hasWorkout = false; + //private HashMap> workouts; + private HashMap workoutsByDate; - private ArrayList workoutArrayList; - private int currentWorkoutIndex; - + public HashMap workout; + private HashMap workouts; + private Day day = new Day(); public WorkoutList() { - workoutArrayList = new ArrayList<>(); - currentWorkoutIndex = NO_CURRENT_WORKOUT; + // workouts = new HashMap<>(); + workout = new HashMap<>(); + workouts = new HashMap<>(); + //day = new Day(); } - public void addWorkout(Workout workout) { - workoutArrayList.add(workout); - currentWorkoutIndex = getLastIndex(); + public HashMap getWorkout() { + return workout; } - public void addStorageWorkout(Workout workout) { - workoutArrayList.add(workout); + public Day getSingleWorkout() { + return day; } - public Workout getStorageCurrentWorkout() { - return workoutArrayList.get(currentStorageWorkoutIndex); - } - public void setCurrentStorageWorkoutIndex(int currentWorkoutIndex) { - this.currentStorageWorkoutIndex = currentWorkoutIndex; - } - - - public void setCurrentWorkoutIndex(int currentWorkoutIndex) { - this.currentWorkoutIndex = currentWorkoutIndex; + + public HashMap getWorkouts() { + return workouts; } - public int getCurrentWorkoutIndex() { - return currentWorkoutIndex; + public void setDay(Day day) { + this.day = day; } - public int getLastIndex() { - return workoutArrayList.size() - 1; + public void addWorkoutToList(Date date, Day day) { + workouts.put(date, day); + setDay(day); } - public Workout getCurrentWorkout() { - return workoutArrayList.get(currentWorkoutIndex); + public Day getDay() { + return day; } - public ArrayList getWorkoutArrayList() { - return workoutArrayList; + public void setWorkouts(HashMap workouts) { + this.workouts = workouts; } - public String deleteWorkout(Date date) { - for (Workout workout : workoutArrayList) { - if (workout.getDate().equals(date)) { - workoutArrayList.remove(workout); - return "Workout deleted"; - } - } - - return "Workout not in list"; - } - - @Override - public String toString() { - if (workoutArrayList.size() == EMPTY) { - return EMPTY_WORKOUT_LIST_MESSAGE; - } - - StringBuilder workoutListString = new StringBuilder(); - workoutListString.append(WORKOUT_LIST_HEADER); - for (int i = 0; i < workoutArrayList.size(); i += 1) { - workoutListString.append(i + 1).append(". " - + DateFormatter.dateToString(workoutArrayList.get(i).getDate()) + System.lineSeparator()); - } - - return workoutListString.toString(); - } //@@ author guillaume-grn public ArrayList countSetsRepsPreparation(Date dayInSpecificWeekDate) { - WorkoutList workoutsInSpecificWeek = getWorkoutsInSpecificWeek(dayInSpecificWeekDate); + HashMap workoutsInSpecificWeek = getWorkoutsInSpecificWeek(dayInSpecificWeekDate); + Day workoutForDay = workoutsInSpecificWeek.get(dayInSpecificWeekDate); ArrayList distinctExercisesList = new ArrayList<>(); + if (workoutForDay == null) { + System.out.println("There is no workout in this week"); + return distinctExercisesList; + } + // System.out.println("size:" + workoutsInSpecificWeek.getDay().getWorkout().getExercises()); + HashMap workoutsForSpecificDay = workoutForDay.getWorkoutsByDate(); - for (Workout workout : workoutsInSpecificWeek.getWorkoutArrayList()) { - for (Exercise exercise : workout.getExercises()) { + for (Workout workout1 : workoutsForSpecificDay.values()) { + for (Exercise exercise : workout1.getExercises()) { boolean isExistingExercise = false; + for (Exercise distinctExercise : distinctExercisesList) { if (exercise.getName().equals(distinctExercise.getName())) { distinctExercise.setRepsPerSet(distinctExercise.getRepsPerSet() + " " @@ -112,31 +91,45 @@ public ArrayList countSetsRepsPreparation(Date dayInSpecificWeekDate) } } } + return distinctExercisesList; } //@@ author guillaume-grn public void countSetsReps(Date dayInSpecificWeekDate) { ArrayList distinctExercisesList = countSetsRepsPreparation(dayInSpecificWeekDate); - Ui.displayCountSetsReps(distinctExercisesList,dayInSpecificWeekDate); + displayCountSetsReps(distinctExercisesList, dayInSpecificWeekDate); } + public static void displayCountSetsReps(ArrayList distinctExercisesList, Date dayInSpecificWeekDate) { + if (distinctExercisesList.isEmpty()) { + System.out.println("There are no workouts reported during this week !"); + return; + } + System.out.println("Exercises and number of sets and reps for the week of " + DateFormatter.dateToString(dayInSpecificWeekDate)); + //Ui.showSeparator(); + for (Exercise exercise : distinctExercisesList) { + System.out.println(exercise.getName() + " - " + exercise.getSetsCount() + " sets" + " - " + + exercise.getRepsCount() + " reps"); + } + Ui.showSeparator(); + } //@@ author guillaume-grn - public WorkoutList getWorkoutsInSpecificWeek(Date dayInSpecificWeekDate) { - WorkoutList workoutsInSpecificWeek = new WorkoutList(); + public HashMap getWorkoutsInSpecificWeek(Date dayInSpecificWeekDate) { + HashMap workoutsInSpecificWeek = new HashMap<>(); Calendar calendar = Calendar.getInstance(); calendar.setTime(dayInSpecificWeekDate); - calendar.set(Calendar.DAY_OF_WEEK, Calendar.SUNDAY); + calendar.set(Calendar.DAY_OF_WEEK, calendar.getFirstDayOfWeek()); Date startOfWeekDate = calendar.getTime(); - calendar.set(Calendar.DAY_OF_WEEK, Calendar.SATURDAY); + calendar.add(Calendar.DAY_OF_WEEK, 6); Date endOfWeekDate = calendar.getTime(); - for (Workout workout : workoutArrayList) { - Date workoutDate = workout.getDate(); + for (Date workoutDate : workouts.keySet()) { if (workoutDate.compareTo(startOfWeekDate) >= 0 && workoutDate.compareTo(endOfWeekDate) <= 0) { - workoutsInSpecificWeek.addWorkout(workout); + workoutsInSpecificWeek.put(workoutDate, workouts.get(workoutDate)); } } return workoutsInSpecificWeek; } } + From 0d26711d875717582cc7bfa6dc450ea943474dc0 Mon Sep 17 00:00:00 2001 From: ZIZI-czh <77820516+ZIZI-czh@users.noreply.github.com> Date: Mon, 3 Apr 2023 03:00:03 +0800 Subject: [PATCH 088/152] Modify the function which allow users to input workout name for the day and the exercises for each output. Update the test as well --- src/main/java/seedu/commands/Command.java | 43 +++------ src/main/java/seedu/commands/ExitCommand.java | 3 +- .../countcommands/CountSetsRepsCommand.java | 10 +-- .../workoutcommands/AddWorkoutCommand.java | 27 ++---- .../workoutcommands/DeleteWorkoutCommand.java | 40 +++++---- .../workoutcommands/EndWorkoutCommand.java | 13 ++- .../workoutcommands/ListWorkoutCommand.java | 32 ++----- .../workoutcommands/StartDayCommand.java | 29 ++----- .../workoutcommands/StartWorkoutCommand.java | 23 ++--- .../workoutcommands/ViewWorkoutCommand.java | 19 ++-- src/main/java/seedu/duke/Duke.java | 3 - src/main/java/seedu/parser/CheckInputs.java | 20 +++-- src/main/java/seedu/parser/Parser.java | 6 -- src/main/java/seedu/storage/ReadFile.java | 17 +--- src/main/java/seedu/storage/WriteFile.java | 18 ++-- src/main/java/seedu/ui/Ui.java | 5 -- src/main/java/seedu/workout/Day.java | 18 ++-- src/main/java/seedu/workout/Exercise.java | 1 + src/main/java/seedu/workout/Workout.java | 35 ++++---- src/main/java/seedu/workout/WorkoutList.java | 67 +++++++------- .../AddWorkoutCommandTest.java | 4 +- .../workoutcommands/DeleteCommandTest.java | 73 +++++++--------- .../ListWorkoutCommandTest.java | 45 ++++++++-- .../workoutcommands/StartDayCommandTest.java | 50 +++++++++++ .../java/seedu/workout/WorkoutListTest.java | 87 ++++++++----------- src/test/java/seedu/workout/WorkoutTest.java | 68 +++++++++++---- .../java/seedu/workout/WorkoutViewTest.java | 70 ++++++++++++--- 27 files changed, 439 insertions(+), 387 deletions(-) create mode 100644 src/test/java/seedu/commands/workoutcommands/StartDayCommandTest.java diff --git a/src/main/java/seedu/commands/Command.java b/src/main/java/seedu/commands/Command.java index 585ace65f4..31a3b4fb7d 100644 --- a/src/main/java/seedu/commands/Command.java +++ b/src/main/java/seedu/commands/Command.java @@ -2,63 +2,40 @@ import seedu.calorietracker.CalorieTracker; -import seedu.commands.workoutcommands.StartDayCommand; -import seedu.commands.workoutcommands.StartWorkoutCommand; -import seedu.commands.workoutcommands.ViewWorkoutCommand; import seedu.workout.Day; import seedu.workout.Workout; import seedu.workout.WorkoutList; - -import java.util.ArrayList; import java.util.Date; import java.util.HashMap; public class Command { - //protected static ArrayList workoutArrayList; + protected static boolean isDayEntered; + protected static Date date; + protected static boolean isWorkoutEntered; protected WorkoutList workoutList = new WorkoutList(); - //protected HashMap singleWorkout; protected CalorieTracker calorieTracker; - protected Day singleWorkout; - //protected HashMap workouts = WorkoutList.getWorkoutsByDate(); protected HashMap workouts; - //protected HashMap workout; - protected Day day = new Day(); - protected static Date date; protected Workout workoutForOneDay = new Workout(); + protected Day day = new Day(); - protected static boolean isWorkoutEntered; - protected static boolean isDayEntered; + //@@ author ZIZI-czh public Command() { - - // this.day = workoutList.getDay(); - //workout = day.getWorkout(); - //workouts = workoutList.getWorkouts(); + workouts = new HashMap<>(); } - - - public Day getStartDay() { - return day; - } - - -/* public void setStartDay(Day startDay) { - this.startDay = startDay; - }*/ - /* public static WorkoutList getWorkoutList() { - return workoutList; - }*/ - - + //@@ author ZIZI-czh public static void setIsDayEntered(boolean isDayEnter) { isDayEntered = isDayEnter; } + + //@@ author ZIZI-czh public static void setIsWorkoutEntered(boolean isWorkoutEnter) { isWorkoutEntered = isWorkoutEnter; } + public void setData(WorkoutList workoutList, CalorieTracker calorieTracker) throws IllegalArgumentException{ if (workoutList == null || calorieTracker == null) { throw new IllegalArgumentException("WorkoutList cannot be null."); diff --git a/src/main/java/seedu/commands/ExitCommand.java b/src/main/java/seedu/commands/ExitCommand.java index b8a42d04d5..ceecc699c1 100644 --- a/src/main/java/seedu/commands/ExitCommand.java +++ b/src/main/java/seedu/commands/ExitCommand.java @@ -1,6 +1,5 @@ package seedu.commands; -import seedu.storage.WriteFile; public class ExitCommand extends Command { private static final String EXIT_MESSAGE = "Thank you, hope you had a great workout!!!"; @@ -12,7 +11,7 @@ public static boolean isExit(Command command) { @Override public String execute() { - WriteFile.writeWorkoutToFile(FILE_PATH); + // WriteFile.writeWorkoutToFile(FILE_PATH); return EXIT_MESSAGE; } } diff --git a/src/main/java/seedu/commands/countcommands/CountSetsRepsCommand.java b/src/main/java/seedu/commands/countcommands/CountSetsRepsCommand.java index 037e861b9e..de78609602 100644 --- a/src/main/java/seedu/commands/countcommands/CountSetsRepsCommand.java +++ b/src/main/java/seedu/commands/countcommands/CountSetsRepsCommand.java @@ -1,23 +1,19 @@ package seedu.commands.countcommands; - import seedu.commands.Command; -import seedu.workout.WorkoutList; import java.util.Date; //@@ author guillaume-grn public class CountSetsRepsCommand extends Command { Date dayInSpecificWeekDate; + public CountSetsRepsCommand(Date dayInSpecificWeekDate) { this.dayInSpecificWeekDate = dayInSpecificWeekDate; } @Override public String execute() { - - workoutList.countSetsReps(dayInSpecificWeekDate); - //return "End your current workout before asking for Count command"; - return " "; + return workoutList.countSetsReps(dayInSpecificWeekDate); } -} \ No newline at end of file +} diff --git a/src/main/java/seedu/commands/workoutcommands/AddWorkoutCommand.java b/src/main/java/seedu/commands/workoutcommands/AddWorkoutCommand.java index 2f13e46ef2..248d08b4ea 100644 --- a/src/main/java/seedu/commands/workoutcommands/AddWorkoutCommand.java +++ b/src/main/java/seedu/commands/workoutcommands/AddWorkoutCommand.java @@ -1,39 +1,30 @@ package seedu.commands.workoutcommands; - import seedu.commands.Command; -import seedu.workout.Day; import seedu.workout.Exercise; -import seedu.workout.Workout; - -import java.util.Date; -import java.util.HashMap; - +//@@ author ZIZI-czh public class AddWorkoutCommand extends Command { - //private final WorkoutList workoutList; - - //private Workout workout; private static Exercise exercise; - private final String SHOW_EXERCISES_ADDED = " has been added"; - private final String MISSING_WORKOUT = "Please enter your workout before adding exercises."; + private static final String SHOW_EXERCISES_ADDED = " has been added"; + private static final String MISSING_WORKOUT = "Please enter your workout before adding exercises."; + //@@ author ZIZI-czh public AddWorkoutCommand(Exercise exercise) { - this.exercise = exercise; + this.exercise = exercise; } + //@@ author ZIZI-czh @Override public String execute() { //ArrayList exercises = Workout.getExercises(); - if(isWorkoutEntered) { + if (isWorkoutEntered) { day = workoutList.getSingleWorkout(); workoutForOneDay = day.getWorkout(); - workoutForOneDay.addExercise(exercise); + workoutForOneDay.addExercise(exercise); return exercise + SHOW_EXERCISES_ADDED; - }else{ + } else { return MISSING_WORKOUT; } } - - } diff --git a/src/main/java/seedu/commands/workoutcommands/DeleteWorkoutCommand.java b/src/main/java/seedu/commands/workoutcommands/DeleteWorkoutCommand.java index 479f51b1ad..bf6a08e4b2 100644 --- a/src/main/java/seedu/commands/workoutcommands/DeleteWorkoutCommand.java +++ b/src/main/java/seedu/commands/workoutcommands/DeleteWorkoutCommand.java @@ -4,40 +4,42 @@ import seedu.commands.Command; import seedu.parser.DateFormatter; import seedu.workout.Day; +import seedu.workout.WorkoutList; import java.util.Date; import java.util.HashMap; +//@@ author ZIZI-czh public class DeleteWorkoutCommand extends Command { + private static final String DELETE_WORKOUT_FIRST = "Day"; + private static final String DELETE_WORKOUT_SECOND = "have been deleted "; + private static final String NO_SUCH_DAY = "does not exit"; private final Date workoutToDeleteDate; - private final String DELETE_WORKOUT_FIRST = "The workouts for "; - private final String DELETE_WORKOUT_SECOND = "have been deleted "; - - private final String NO_SUCH_DAY = "no such day has been found"; - - + //@@ author ZIZI-czh public DeleteWorkoutCommand(Date workoutToDeleteDate) { + super(); + this.workoutToDeleteDate = workoutToDeleteDate; + } + //@@ author ZIZI-czh + public DeleteWorkoutCommand(WorkoutList workoutList, Date workoutToDeleteDate) { + this.workoutList = workoutList; this.workoutToDeleteDate = workoutToDeleteDate; } + //@@ author ZIZI-czh @Override public String execute() { - /*if (workoutList == null) { - return "WorkoutList is null."; - } - return workoutList.deleteWorkout(workoutToDeleteDate); - }*/ - HashMap workouts = workoutList.getWorkouts(); - String formattedDate = DateFormatter.dateToString(workoutToDeleteDate); - if (workouts.containsKey(workoutToDeleteDate)) { - workouts.remove(workoutToDeleteDate); - return "Day " + formattedDate + " has been deleted."; - } else { - return "Could not delete day " + formattedDate; - } + HashMap workouts = workoutList.getWorkouts(); + String formattedDate = DateFormatter.dateToString(workoutToDeleteDate); + if (workouts.containsKey(workoutToDeleteDate)) { + workouts.remove(workoutToDeleteDate); + return DELETE_WORKOUT_FIRST + formattedDate + DELETE_WORKOUT_SECOND; + } else { + return formattedDate + NO_SUCH_DAY; } + } } diff --git a/src/main/java/seedu/commands/workoutcommands/EndWorkoutCommand.java b/src/main/java/seedu/commands/workoutcommands/EndWorkoutCommand.java index 19d295be1a..3be8e0af4c 100644 --- a/src/main/java/seedu/commands/workoutcommands/EndWorkoutCommand.java +++ b/src/main/java/seedu/commands/workoutcommands/EndWorkoutCommand.java @@ -2,18 +2,25 @@ import seedu.commands.Command; -import seedu.workout.WorkoutList; public class EndWorkoutCommand extends Command { - private static final String WORKOUT_COMPLETE_MESSAGE = "Great job completing your workout!"; + /* private static final String WORKOUT_COMPLETE_MESSAGE = "Great job completing your workout!"; + private boolean isEnd = false; public EndWorkoutCommand() { } + public static boolean isEnd() { + return isEnd; + } + @Override public String execute() { workoutList.setCurrentWorkoutIndex(WorkoutList.NO_CURRENT_WORKOUT); + isEnd = true; return WORKOUT_COMPLETE_MESSAGE; - } + }*/ + + } diff --git a/src/main/java/seedu/commands/workoutcommands/ListWorkoutCommand.java b/src/main/java/seedu/commands/workoutcommands/ListWorkoutCommand.java index afff7f1f22..fb6b955296 100644 --- a/src/main/java/seedu/commands/workoutcommands/ListWorkoutCommand.java +++ b/src/main/java/seedu/commands/workoutcommands/ListWorkoutCommand.java @@ -5,52 +5,38 @@ import seedu.parser.DateFormatter; import seedu.ui.Ui; import seedu.workout.Day; - +import seedu.workout.WorkoutList; import java.util.Date; import java.util.HashMap; /** * This is the class for executing the list command */ +//@@ author ZIZI-czh public class ListWorkoutCommand extends Command { - public static final int EMPTY = 0; private static final String EMPTY_DAY_LIST_MESSAGE = "No days have been found in the list"; - private static final String LINE_SEPARATOR = "----------------------------------"; private static final String WORKOUT_LIST_HEADER = - "Here are the list of dates of your workouts:"; - + "Here is the list of dates of your workouts:"; //@@ author ZIZI-czh public ListWorkoutCommand() { super(); } + public ListWorkoutCommand(WorkoutList workoutListParameter){ + workoutList = workoutListParameter; + } /** * Show the list of date of the workout by calling the method in workoutList */ //@@ author ZIZI-czh - /*@Override - public String execute() { - workoutArrayList = workoutList.getWorkoutArrayList(); - - if (workoutArrayList.size() == EMPTY) { - return EMPTY_WORKOUT_LIST_MESSAGE; - } - System.out.println(WORKOUT_LIST_HEADER); - for (int i = 0; i < workoutArrayList.size(); i += 1) { - System.out.println(i + 1 + ". " - + DateFormatter.dateToString(workoutArrayList.get(i).getDate())); - } - return LINE_SEPARATOR; - // return workoutList.toString(); - }*/ @Override public String execute() { HashMap workouts = workoutList.getWorkouts(); if (workouts != null && !workouts.isEmpty()) { StringBuilder string = new StringBuilder(); - string.append("Here is the list of dates:").append(System.lineSeparator()); + string.append( WORKOUT_LIST_HEADER).append(System.lineSeparator()); for (Date date : workouts.keySet()) { String formattedDate = DateFormatter.dateToString(date); string.append(formattedDate).append(System.lineSeparator()); @@ -61,8 +47,6 @@ public String execute() { return EMPTY_DAY_LIST_MESSAGE; } } - // return workoutList.printList(); - - } + diff --git a/src/main/java/seedu/commands/workoutcommands/StartDayCommand.java b/src/main/java/seedu/commands/workoutcommands/StartDayCommand.java index 374339fc65..d96c509397 100644 --- a/src/main/java/seedu/commands/workoutcommands/StartDayCommand.java +++ b/src/main/java/seedu/commands/workoutcommands/StartDayCommand.java @@ -3,59 +3,44 @@ import seedu.commands.Command; import seedu.parser.DateFormatter; import seedu.workout.Day; -import seedu.workout.WorkoutList; -import seedu.workout.Workout; import java.util.Date; import java.util.HashMap; +//@@ author ZIZI-czh public class StartDayCommand extends Command { - private Date date; - - + private Date date; private Day day = new Day(); - /*public boolean isDayEntered() { - return isDayEntered; - } -*/ - /*public void setDayEntered(boolean dayEntered) { - isDayEntered = dayEntered; - }*/ - + //@@ author ZIZI-czh public StartDayCommand(Date date) { super(); this.date = date; - //day = new Day(date); - - } + //@@ author ZIZI-czh public Date getDate() { return date; } + //@@ author ZIZI-czh @Override public String execute() { HashMap workouts = workoutList.getWorkouts(); - // String formattedDate = DateFormatter.dateToString(date); StringBuilder stringBuilder = new StringBuilder(); Day day = workouts.get(date); if (day == null) { day = new Day(date); - //workouts.put(formattedDate, day); workoutList.addWorkoutToList(date, day); String formattedDate = DateFormatter.dateToString(date); stringBuilder.append("Great! You have added a new workout for ") - .append(formattedDate) - .append("."); + .append(formattedDate); - }else { + } else { stringBuilder.append("You had started workout on this day before, " + System.lineSeparator() + "Please use '/wadd' to add a new workout."); } return stringBuilder.toString(); } - } diff --git a/src/main/java/seedu/commands/workoutcommands/StartWorkoutCommand.java b/src/main/java/seedu/commands/workoutcommands/StartWorkoutCommand.java index 1ee59e5a45..c2615328ee 100644 --- a/src/main/java/seedu/commands/workoutcommands/StartWorkoutCommand.java +++ b/src/main/java/seedu/commands/workoutcommands/StartWorkoutCommand.java @@ -2,45 +2,32 @@ import seedu.commands.Command; -import seedu.parser.DateFormatter; import seedu.workout.Day; import seedu.workout.Workout; -import seedu.workout.WorkoutList; -import java.util.HashMap; +//@@ author ZIZI-czh public class StartWorkoutCommand extends Command { private static final String START_WORKOUT_MESSAGE = "Started new workout." + System.lineSeparator() + "Use add command to add exercises to your workout!"; private static final String ONGOING_WORKOUT_MESSAGE = "End your current workout before starting a new " + "one!"; - // private final Date date; + private static final String FAIL_TO_START_WORKOUT= "Please enter the day for your workout record first"; private static boolean isWorkoutEntered; private String workoutName; - /*public StartWorkoutCommand(Date date) { - this.date = date; - } -*/ + + //@@ author ZIZI-czh public StartWorkoutCommand(String workoutName) { super(); this.workoutName = workoutName; } - public static boolean hasWorkoutEntered() { - return isWorkoutEntered; - } - - /*public static void setIsWorkoutEntered(boolean isWorkoutEntered) { - StartWorkoutCommand.isWorkoutEntered = isWorkoutEntered; - }*/ - public String getWorkoutName() { - return workoutName; - } + //@@ author ZIZI-czh @Override public String execute() { StringBuilder stringBuilder = new StringBuilder(); diff --git a/src/main/java/seedu/commands/workoutcommands/ViewWorkoutCommand.java b/src/main/java/seedu/commands/workoutcommands/ViewWorkoutCommand.java index ba01bc289e..8c6f5d78a8 100644 --- a/src/main/java/seedu/commands/workoutcommands/ViewWorkoutCommand.java +++ b/src/main/java/seedu/commands/workoutcommands/ViewWorkoutCommand.java @@ -1,7 +1,6 @@ package seedu.commands.workoutcommands; -import com.sun.jdi.PrimitiveValue; import seedu.commands.Command; import seedu.parser.DateFormatter; import seedu.ui.Ui; @@ -9,25 +8,31 @@ import seedu.workout.Exercise; import seedu.workout.Workout; import seedu.workout.WorkoutList; - -import java.util.ArrayList; import java.util.Date; import java.util.HashMap; -import java.util.Map; + public class ViewWorkoutCommand extends Command { - private static final String WORKOUT_NOT_FOUND_MESSAGE = "No workout done on "; - private static String FAILE_TO_FIND_DATE = " does not exit in the list"; + + private static final String FAIL_TO_FIND_DATE = " does not exit in the list"; private final Date workoutToViewDate; private HashMap workout; + //@@ author ZIZI-czh public ViewWorkoutCommand(Date workoutToViewDate) { super(); this.workoutToViewDate = workoutToViewDate; + } + + //@@ author ZIZI-czh + public ViewWorkoutCommand(Date workoutToViewDate, WorkoutList workoutList) { + this.workoutToViewDate = workoutToViewDate; //workout = new Day(workoutToViewDate).getWorkoutsByDate(); + this.workoutList = workoutList; } + //@@ author ZIZI-czh @Override public String execute() { // convert the date to string for display purposes @@ -55,6 +60,6 @@ public String execute() { return string + Ui.showSeparator(); } // if the Day object doesn't exist, return an error message - return formattedDate + FAILE_TO_FIND_DATE; + return formattedDate + FAIL_TO_FIND_DATE; } } diff --git a/src/main/java/seedu/duke/Duke.java b/src/main/java/seedu/duke/Duke.java index 565f73d7e5..0b2627983d 100644 --- a/src/main/java/seedu/duke/Duke.java +++ b/src/main/java/seedu/duke/Duke.java @@ -7,7 +7,6 @@ import seedu.commands.IncorrectSyntaxCommand; import seedu.exceptions.InvalidSyntaxException; import seedu.parser.Parser; -import seedu.storage.ReadFile; import seedu.ui.Ui; import seedu.workout.Day; import seedu.workout.WorkoutList; @@ -19,7 +18,6 @@ public class Duke { private CalorieTracker calorieTracker; - /*public Duke(String filePath) { ReadFile.readFile(filePath); }*/ @@ -35,7 +33,6 @@ private void run() { executeCommandUntilExit(); } - private void executeCommandUntilExit() { Command command; do { diff --git a/src/main/java/seedu/parser/CheckInputs.java b/src/main/java/seedu/parser/CheckInputs.java index 612f25990d..aa1f434890 100644 --- a/src/main/java/seedu/parser/CheckInputs.java +++ b/src/main/java/seedu/parser/CheckInputs.java @@ -3,7 +3,12 @@ import seedu.commands.Command; import seedu.commands.IncorrectSyntaxCommand; import seedu.commands.countcommands.CountSetsRepsCommand; -import seedu.commands.workoutcommands.*; +import seedu.commands.workoutcommands.AddWorkoutCommand; +import seedu.commands.workoutcommands.DeleteWorkoutCommand; +import seedu.commands.workoutcommands.ListWorkoutCommand; +import seedu.commands.workoutcommands.StartWorkoutCommand; +import seedu.commands.workoutcommands.ViewWorkoutCommand; +import seedu.commands.workoutcommands.StartDayCommand; import seedu.workout.Exercise; import java.text.ParseException; @@ -17,7 +22,7 @@ public class CheckInputs { static Command processDay(String arguments) { Date date = parseDate(arguments); - // Command.setDay(date); + // Command.setDay(date); return date != null && parseInput(arguments) ? new StartDayCommand(date) : new IncorrectSyntaxCommand("/day command"); } @@ -47,8 +52,6 @@ static Command processAdd(String arguments) { * @return Incorrect command if the input date is incorrect, otherwise, initialize the StartCommand */ static Command processStart(String arguments) { - //String workout = parseDate(arguments); - // String workout = parseWorkoutName(arguments); return parseWorkoutName(arguments) ? new StartWorkoutCommand(arguments) : new IncorrectSyntaxCommand("/start command"); @@ -71,13 +74,14 @@ static Command processList(String arguments) { return arguments == null || arguments.trim().isEmpty() ? new ListWorkoutCommand() : new IncorrectSyntaxCommand("/list command"); } + /** * This method is used to check the "/view" command + * * @param arguments Date input * @return Incorrect command if the input date is incorrect, otherwise, initialize the ViewCommand */ //@@ author Richardtok - static Command processView(String arguments) { Date date; try { @@ -103,6 +107,7 @@ static Command processSetsRepsCount(String arguments) { /** * This method is used to check the input date format + * * @param arguments inputs date * @return return null if the date format is invalid */ @@ -125,6 +130,7 @@ private static Date parseDate(String arguments) { /** * This method is used to check the input command based on the format and the date + * * @param arguments input * @return return false if the input does not follow the format */ @@ -168,8 +174,8 @@ private static boolean parseInput(String arguments) { return true; // input is in the correct format } - public static boolean parseWorkoutName(String arguments){ - if(!arguments.trim().startsWith("Workout")){ + public static boolean parseWorkoutName(String arguments) { + if (!arguments.trim().startsWith("Workout")) { System.out.println("The workout name should start with 'Workout'"); return false; } diff --git a/src/main/java/seedu/parser/Parser.java b/src/main/java/seedu/parser/Parser.java index 36acfef8e8..e64b047a48 100644 --- a/src/main/java/seedu/parser/Parser.java +++ b/src/main/java/seedu/parser/Parser.java @@ -4,11 +4,7 @@ import seedu.commands.Command; import seedu.commands.ExitCommand; import seedu.commands.InvalidCommand; -import seedu.commands.workoutcommands.EndWorkoutCommand; import seedu.commands.workoutcommands.HelpWorkoutCommand; -import seedu.commands.workoutcommands.StartDayCommand; -import seedu.commands.workoutcommands.StartWorkoutCommand; -import seedu.duke.Duke; import seedu.exceptions.InvalidSyntaxException; import java.util.regex.Matcher; @@ -39,8 +35,6 @@ public Command processCommand(String userInput) throws InvalidSyntaxException { return CheckInputs.processStart(arguments); case "/wadd": return CheckInputs.processAdd(arguments); - /*case "/end": - return new EndWorkoutCommand();*/ case "/delete": return CheckInputs.processDelete(arguments); case "/list": diff --git a/src/main/java/seedu/storage/ReadFile.java b/src/main/java/seedu/storage/ReadFile.java index 11cee653bc..61cb8175e5 100644 --- a/src/main/java/seedu/storage/ReadFile.java +++ b/src/main/java/seedu/storage/ReadFile.java @@ -1,23 +1,11 @@ package seedu.storage; -import seedu.commands.Command; -import seedu.parser.DateFormatter; -import seedu.workout.Exercise; import seedu.workout.Workout; -import seedu.workout.WorkoutList; - -import java.io.File; -import java.io.BufferedReader; -import java.io.IOException; -import java.io.FileReader; - - -import java.text.ParseException; import java.util.Date; -public class ReadFile extends Storage{ +public class ReadFile extends Storage { private static Workout toStart; private static Date date; @@ -33,7 +21,7 @@ public class ReadFile extends Storage{ public static void readFile(String filePath) { //WorkoutList workoutList = Command.getWorkoutList(); - File savedFile = new File(filePath); + /*File savedFile = new File(filePath); if (!savedFile.getParentFile().exists()) { savedFile.getParentFile().mkdirs(); @@ -76,6 +64,7 @@ public static void readFile(String filePath) { } catch (ParseException e) { throw new RuntimeException(e); } + }*/ } } diff --git a/src/main/java/seedu/storage/WriteFile.java b/src/main/java/seedu/storage/WriteFile.java index 5b02c382fb..7c86ed4697 100644 --- a/src/main/java/seedu/storage/WriteFile.java +++ b/src/main/java/seedu/storage/WriteFile.java @@ -1,23 +1,17 @@ package seedu.storage; -import seedu.commands.Command; -import seedu.parser.DateFormatter; -import seedu.workout.WorkoutList; -import java.io.File; -import java.io.FileWriter; -import java.io.IOException; - -public class WriteFile extends Storage{ +public class WriteFile extends Storage { private static final String SPACE = " "; - public WriteFile(){ + + public WriteFile() { super(); } - public static void writeWorkoutToFile(String filePath){ + public static void writeWorkoutToFile(String filePath) { //WorkoutList workoutList = Command.getWorkoutList(); - workoutArrayList = workoutList.getWorkoutArrayList(); + /* workoutArrayList = workoutList.getWorkoutArrayList(); try { File savedFile = new File(filePath); @@ -45,6 +39,6 @@ public static void writeWorkoutToFile(String filePath){ + }*/ } } - diff --git a/src/main/java/seedu/ui/Ui.java b/src/main/java/seedu/ui/Ui.java index 5abf567db2..c18ffd27a2 100644 --- a/src/main/java/seedu/ui/Ui.java +++ b/src/main/java/seedu/ui/Ui.java @@ -1,10 +1,6 @@ package seedu.ui; -import seedu.workout.Exercise; - -import java.util.ArrayList; -import java.util.Date; import java.util.Scanner; public class Ui { @@ -64,6 +60,5 @@ public static String getHelpMessage() { return HELP_MESSAGE; } - //@@ author guillaume-grn } diff --git a/src/main/java/seedu/workout/Day.java b/src/main/java/seedu/workout/Day.java index bf7044fcba..523e984d58 100644 --- a/src/main/java/seedu/workout/Day.java +++ b/src/main/java/seedu/workout/Day.java @@ -1,9 +1,9 @@ package seedu.workout; -import java.util.ArrayList; import java.util.Date; import java.util.HashMap; +//@@ author ZIZI-czh public class Day { private Date date; private HashMap workoutsByDate; @@ -15,14 +15,12 @@ public Day(Date date) { //workout = new Workout(); } + //@@ author ZIZI-czh public Day() { this.workoutsByDate = new HashMap<>(); } - /* public Date getDate() { - return date; - }*/ - + //@@ author ZIZI-czh public void addWorkout(String workoutName, Workout workout) { workoutsByDate.put(workoutName, workout); setWorkout(workout); @@ -30,24 +28,24 @@ public void addWorkout(String workoutName, Workout workout) { } + //@@ author ZIZI-czh public Workout getWorkout() { return this.workout; } + //@@ author ZIZI-czh public void setWorkout(Workout workout) { this.workout = workout; } - /*public Workout getWorkouts(String name) { - return workouts.get(name); - }*/ + //@@ author ZIZI-czh public HashMap getWorkoutsByDate() { return this.workoutsByDate; } + //@@ author ZIZI-czh public void setWorkoutsByDate(HashMap workoutsByDate) { this.workoutsByDate = workoutsByDate; } - -} \ No newline at end of file +} diff --git a/src/main/java/seedu/workout/Exercise.java b/src/main/java/seedu/workout/Exercise.java index b1919f682d..d38af38c17 100644 --- a/src/main/java/seedu/workout/Exercise.java +++ b/src/main/java/seedu/workout/Exercise.java @@ -6,6 +6,7 @@ public class Exercise { private String weight; private String repsPerSet; + //@@ author ZIZI-czh public Exercise(String name, String weight, String repsPerSet){ this.name = name; this.weight = weight; diff --git a/src/main/java/seedu/workout/Workout.java b/src/main/java/seedu/workout/Workout.java index 609bed41db..cc158ddbba 100644 --- a/src/main/java/seedu/workout/Workout.java +++ b/src/main/java/seedu/workout/Workout.java @@ -1,6 +1,5 @@ package seedu.workout; -import seedu.parser.DateFormatter; import java.util.ArrayList; import java.util.Date; @@ -12,45 +11,47 @@ public class Workout { "Here are the list of exercises in your workout:" + System.lineSeparator(); private Date date; private String workoutName; - private ArrayList exercises; + private ArrayList exercises; private boolean hasExercises = false; - - - public boolean isHasExercises() { - return hasExercises; - } - - public String getWorkoutName() { - return workoutName; + public Workout() { + exercises = new ArrayList<>(); } + //@@ author ZIZI-czh public Workout(String workoutName) { this.workoutName = workoutName; exercises = new ArrayList<>(); } - public Workout() { - exercises = new ArrayList<>(); + + //@@ author ZIZI-czh + public String getWorkoutName() { + return workoutName; } + //@@ author ZIZI-czh + + //@@ author ZIZI-czh public void addExercise(Exercise exercise) { exercises.add(exercise); - // hasExercises = true; + // hasExercises = true; } + + //@@ author ZIZI-czh public ArrayList getExercises() { return exercises; } - + //@@ author ZIZI-czh @Override - public String toString() { + public String toString() { StringBuilder exercisesList = new StringBuilder(); - exercisesList.append("Workout: ").append(workoutName).append("\n"); + exercisesList.append("Workout: ").append(workoutName).append(System.lineSeparator()); for (Exercise exercise : exercises) { - exercisesList.append(exercise.toString()).append("\n"); + exercisesList.append(exercise.toString()).append(System.lineSeparator()); } return exercisesList.toString(); } diff --git a/src/main/java/seedu/workout/WorkoutList.java b/src/main/java/seedu/workout/WorkoutList.java index f28d053fc2..d3587011cb 100644 --- a/src/main/java/seedu/workout/WorkoutList.java +++ b/src/main/java/seedu/workout/WorkoutList.java @@ -4,72 +4,69 @@ import seedu.parser.DateFormatter; import seedu.ui.Ui; -import java.util.*; +import java.util.ArrayList; +import java.util.Calendar; +import java.util.Date; +import java.util.HashMap; + +//@@ author ZIZI-czh public class WorkoutList { - public static final int NO_CURRENT_WORKOUT = -1; - public static final int EMPTY = 0; - private static final String EMPTY_WORKOUT_LIST_MESSAGE = "No workout recorded."; - private static final String EMPTY_DAY_LIST_MESSAGE = "No days have been found in the list"; - private static final String WORKOUT_LIST_HEADER = - "Here are the list of dates of your workouts:" + System.lineSeparator(); - private int currentStorageWorkoutIndex; - - private boolean hasWorkout = false; - //private HashMap> workouts; - private HashMap workoutsByDate; public HashMap workout; private HashMap workouts; private Day day = new Day(); + //@@ author ZIZI-czh public WorkoutList() { - // workouts = new HashMap<>(); + workout = new HashMap<>(); workouts = new HashMap<>(); - //day = new Day(); } + //@@ author ZIZI-czh public HashMap getWorkout() { return workout; } + //@@ author ZIZI-czh public Day getSingleWorkout() { return day; } - + + //@@ author ZIZI-czh public HashMap getWorkouts() { return workouts; } + //@@ author ZIZI-czh public void setDay(Day day) { this.day = day; } + //@@ author ZIZI-czh public void addWorkoutToList(Date date, Day day) { workouts.put(date, day); setDay(day); } + //@@ author ZIZI-czh public Day getDay() { return day; } + //@@ author ZIZI-czh public void setWorkouts(HashMap workouts) { this.workouts = workouts; } //@@ author guillaume-grn + //@@ author ZIZI-czh public ArrayList countSetsRepsPreparation(Date dayInSpecificWeekDate) { HashMap workoutsInSpecificWeek = getWorkoutsInSpecificWeek(dayInSpecificWeekDate); Day workoutForDay = workoutsInSpecificWeek.get(dayInSpecificWeekDate); ArrayList distinctExercisesList = new ArrayList<>(); - if (workoutForDay == null) { - System.out.println("There is no workout in this week"); - return distinctExercisesList; - } - // System.out.println("size:" + workoutsInSpecificWeek.getDay().getWorkout().getExercises()); HashMap workoutsForSpecificDay = workoutForDay.getWorkoutsByDate(); for (Workout workout1 : workoutsForSpecificDay.values()) { @@ -96,26 +93,38 @@ public ArrayList countSetsRepsPreparation(Date dayInSpecificWeekDate) } //@@ author guillaume-grn - public void countSetsReps(Date dayInSpecificWeekDate) { + //@@ author ZIZI-czh + public String countSetsReps(Date dayInSpecificWeekDate) { ArrayList distinctExercisesList = countSetsRepsPreparation(dayInSpecificWeekDate); - displayCountSetsReps(distinctExercisesList, dayInSpecificWeekDate); + return displayCountSetsReps(distinctExercisesList, dayInSpecificWeekDate); } - public static void displayCountSetsReps(ArrayList distinctExercisesList, Date dayInSpecificWeekDate) { + //@@ author ZIZI-czh + public static String displayCountSetsReps(ArrayList distinctExercisesList, Date dayInSpecificWeekDate) { + StringBuilder output = new StringBuilder(); if (distinctExercisesList.isEmpty()) { - System.out.println("There are no workouts reported during this week !"); - return; + output.append("There are no workouts reported during this week !"); + return output.toString(); } - System.out.println("Exercises and number of sets and reps for the week of " + DateFormatter.dateToString(dayInSpecificWeekDate)); + output.append("Exercises and number of sets and reps for the week of ") + .append(DateFormatter.dateToString(dayInSpecificWeekDate)) + .append(System.lineSeparator()); //Ui.showSeparator(); for (Exercise exercise : distinctExercisesList) { - System.out.println(exercise.getName() + " - " + exercise.getSetsCount() + " sets" + " - " - + exercise.getRepsCount() + " reps"); + output.append(exercise.getName()) + .append(" - ") + .append(exercise.getSetsCount()) + .append(" sets") + .append(" - ") + .append(exercise.getRepsCount()) + .append(" reps") + .append(System.lineSeparator()); } - Ui.showSeparator(); + return output + Ui.showSeparator(); } //@@ author guillaume-grn + //@@ author ZIZI-czh public HashMap getWorkoutsInSpecificWeek(Date dayInSpecificWeekDate) { HashMap workoutsInSpecificWeek = new HashMap<>(); Calendar calendar = Calendar.getInstance(); diff --git a/src/test/java/seedu/commands/workoutcommands/AddWorkoutCommandTest.java b/src/test/java/seedu/commands/workoutcommands/AddWorkoutCommandTest.java index 09f86413d7..f891d6a232 100644 --- a/src/test/java/seedu/commands/workoutcommands/AddWorkoutCommandTest.java +++ b/src/test/java/seedu/commands/workoutcommands/AddWorkoutCommandTest.java @@ -12,6 +12,7 @@ import static org.junit.jupiter.api.Assertions.assertEquals; +//@@ author ZIZI-czh public class AddWorkoutCommandTest { private static final SimpleDateFormat dateFormat = new SimpleDateFormat("dd/MM/yy"); private static final Date date; @@ -24,7 +25,8 @@ public class AddWorkoutCommandTest { } } - private static final Workout currentWorkout = new Workout(date); + //@@ author ZIZI-czh + private static final Workout currentWorkout = new Workout(); @Test public void testAddCommand() { diff --git a/src/test/java/seedu/commands/workoutcommands/DeleteCommandTest.java b/src/test/java/seedu/commands/workoutcommands/DeleteCommandTest.java index b80a942699..d990844666 100644 --- a/src/test/java/seedu/commands/workoutcommands/DeleteCommandTest.java +++ b/src/test/java/seedu/commands/workoutcommands/DeleteCommandTest.java @@ -1,60 +1,53 @@ package seedu.commands.workoutcommands; - import org.junit.jupiter.api.Test; -import seedu.calorietracker.CalorieTracker; -import seedu.commands.Command; -import seedu.commands.InvalidCommand; import seedu.parser.DateFormatter; -import seedu.workout.Workout; +import seedu.workout.Day; import seedu.workout.WorkoutList; +import java.text.ParseException; import java.util.Date; +import java.util.HashMap; import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.testng.AssertJUnit.assertFalse; +import static org.testng.AssertJUnit.assertTrue; public class DeleteCommandTest { + private WorkoutList workoutList; - //@@ author guillaume-grn @Test - public void testRemoveWorkout() throws Exception { - //WorkoutList workoutLists = Command.getWorkoutList(); - WorkoutList workoutLists = new WorkoutList(); - CalorieTracker calorieTracker = new CalorieTracker(); - Command command = new InvalidCommand("invalid"); - - String stringDate1 = "01/11/2022"; - String stringDate2 = "02/11/2022"; + void testExecute() throws ParseException { + + WorkoutList workoutList = new WorkoutList(); + String stringDate1 = "01/11/22"; + String stringDate2 = "01/12/22"; Date date1 = DateFormatter.stringToDate(stringDate1); Date date2 = DateFormatter.stringToDate(stringDate2); + Day day1 = new Day(date1); + Day day2 = new Day(date2); + workoutList.addWorkoutToList(date1, day1); + workoutList.addWorkoutToList(date2, day2); + DeleteWorkoutCommand command = new DeleteWorkoutCommand(workoutList, date1); + + String expectedMessage = "Day " + DateFormatter.dateToString(date1) + " have been deleted "; + String actualMessage = command.execute(); + + assertFalse(workoutList.getWorkouts().containsKey(date1)); + assertTrue(workoutList.getWorkouts().containsKey(date2)); + assertEquals(expectedMessage, actualMessage); + } - Workout workout1 = new Workout(date1); - Workout workout2 = new Workout(date2); - workoutLists.addWorkout(workout1); - workoutLists.addWorkout(workout2); - command.setData(workoutLists, calorieTracker); - - // Check that both workouts are in the list - assertEquals(2, workoutLists.getWorkoutArrayList().size()); - - //DeleteCommand delete = new DeleteCommand(date1); - - - DeleteWorkoutCommand delete = new DeleteWorkoutCommand(date1); - delete.setData(workoutLists, calorieTracker); - // Remove workout1 from the list - delete.execute(); - - // Check that workout1 was removed and workout2 is still in the list - assertEquals(1, workoutLists.getWorkoutArrayList().size()); - String formattedDate = DateFormatter.dateToString(date2); - assertEquals(formattedDate, - DateFormatter.dateToString(workoutLists.getWorkoutArrayList().get(0).getDate())); + @Test + void testExecuteNoSuchDay() { + HashMap workouts = new HashMap<>(); + Date date = new Date(); + DeleteWorkoutCommand command = new DeleteWorkoutCommand(date); - // Try to remove workout1 again (should not be in the list) - delete.execute(); + String expectedMessage = DateFormatter.dateToString(date) + " does not exit"; + String actualMessage = command.execute(); - // Check that workout1 was not removed and the list size is still 1 - assertEquals(1, workoutLists.getWorkoutArrayList().size()); + assertTrue(workouts.isEmpty()); + assertEquals(expectedMessage, actualMessage); } } diff --git a/src/test/java/seedu/commands/workoutcommands/ListWorkoutCommandTest.java b/src/test/java/seedu/commands/workoutcommands/ListWorkoutCommandTest.java index 44b64c25d3..946a5f3dac 100644 --- a/src/test/java/seedu/commands/workoutcommands/ListWorkoutCommandTest.java +++ b/src/test/java/seedu/commands/workoutcommands/ListWorkoutCommandTest.java @@ -2,20 +2,15 @@ import org.junit.jupiter.api.Test; -import seedu.commands.Command; -import seedu.workout.Workout; +import seedu.parser.DateFormatter; +import seedu.workout.Day; import seedu.workout.WorkoutList; - -import java.io.ByteArrayOutputStream; -import java.io.PrintStream; import java.text.ParseException; -import java.text.SimpleDateFormat; - - +import java.util.Date; import static org.junit.jupiter.api.Assertions.assertEquals; -public class ListWorkoutCommandTest { +/*public class ListWorkoutCommandTest { //@@ author ZIZI-czh @Test @@ -45,5 +40,37 @@ public void testShowWorkoutList() throws ParseException { + "1. 11/11/23" + System.lineSeparator() + "2. 11/10/23" + System.lineSeparator(), outContent.toString()); + }*/ +public class ListWorkoutCommandTest { + + @Test + public void testExecute_withEmptyWorkoutList_returnsEmptyDayListMessage() { + WorkoutList workoutList = new WorkoutList(); + ListWorkoutCommand listWorkoutCommand = new ListWorkoutCommand(workoutList); + String expectedOutput = "No days have been found in the list"; + String actualOutput = listWorkoutCommand.execute(); + assertEquals(expectedOutput, actualOutput); + } + + @Test + public void testExecute_withNonEmptyWorkoutList_returnsListOfDates() throws ParseException { + WorkoutList workoutList = new WorkoutList(); + String stringDate1 = "01/11/2022"; + String stringDate2 = "02/11/2022"; + Date date1 = DateFormatter.stringToDate(stringDate1); + Date date2 = DateFormatter.stringToDate(stringDate2); + Day day1 = new Day(date1); + Day day2 = new Day(date2); + workoutList.addWorkoutToList(date1, day1); + workoutList.addWorkoutToList(date2, day2); + ListWorkoutCommand listWorkoutCommand = new ListWorkoutCommand(workoutList); + + String expectedOutput = "Here is the list of dates of your workouts:" + System.lineSeparator() + + DateFormatter.dateToString(date1) + System.lineSeparator() + + DateFormatter.dateToString(date2) + System.lineSeparator() + + "----------------------------------"; + String actualOutput = listWorkoutCommand.execute(); + + assertEquals(expectedOutput, actualOutput); } } diff --git a/src/test/java/seedu/commands/workoutcommands/StartDayCommandTest.java b/src/test/java/seedu/commands/workoutcommands/StartDayCommandTest.java new file mode 100644 index 0000000000..8b0ee70c34 --- /dev/null +++ b/src/test/java/seedu/commands/workoutcommands/StartDayCommandTest.java @@ -0,0 +1,50 @@ +package seedu.commands.workoutcommands; + +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertTrue; +import java.text.ParseException; +import java.util.Date; +import java.util.HashMap; + +import org.junit.jupiter.api.Test; +import seedu.parser.DateFormatter; +import seedu.workout.Day; +import seedu.workout.WorkoutList; + + +class StartDayCommandTest { + private WorkoutList workoutList; + private StartDayCommand startDayCommand; + + @Test + void testExecuteNewWorkout() throws ParseException { + String stringDate1 = "01/11/2022"; + Date date1 = DateFormatter.stringToDate(stringDate1); + workoutList = new WorkoutList(); + startDayCommand = new StartDayCommand(date1); + String expectedOutput = "Great! You have added a new workout for " + + DateFormatter.dateToString(date1); + String actualOutput = startDayCommand.execute(); + assertEquals(expectedOutput, actualOutput); + workoutList.addWorkoutToList(date1, new Day(date1)); + assertTrue(workoutList.getWorkouts().containsKey(date1)); + } + + @Test + void testExecuteExistingWorkout() throws ParseException { + String stringDate2 = "02/11/2022"; + Date date2 = DateFormatter.stringToDate(stringDate2); + Day existingDay = new Day(date2); + WorkoutList workoutList = new WorkoutList(); + HashMap workouts = workoutList.getWorkouts(); + workouts.put(date2, existingDay); + StartDayCommand command = new StartDayCommand(date2); + String expectedOutput = "Great! You have added a new workout for " + + DateFormatter.dateToString(date2); + String actualOutput = command.execute(); + assertEquals(expectedOutput, actualOutput); + assertEquals(existingDay, workoutList.getWorkouts().get(date2)); + } + + +} diff --git a/src/test/java/seedu/workout/WorkoutListTest.java b/src/test/java/seedu/workout/WorkoutListTest.java index bf837d13b5..3c31f80e1e 100644 --- a/src/test/java/seedu/workout/WorkoutListTest.java +++ b/src/test/java/seedu/workout/WorkoutListTest.java @@ -1,69 +1,54 @@ package seedu.workout; +import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; -import java.util.ArrayList; import java.util.Calendar; +import java.util.Date; +import java.util.HashMap; import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.testng.AssertJUnit.assertFalse; +import static org.testng.AssertJUnit.assertTrue; public class WorkoutListTest { - //@@ author guillaume-grn - @Test - public void testGetWorkoutsInSpecificWeek() { - // Create a new WorkoutList - WorkoutList workoutList = new WorkoutList(); - - // Add some workouts to the WorkoutList - Calendar calendar0 = Calendar.getInstance(); - calendar0.set(2022, Calendar.DECEMBER, 31); // Saturday - workoutList.addWorkout(new Workout(calendar0.getTime())); - Calendar calendar1 = Calendar.getInstance(); - calendar1.set(2023, Calendar.JANUARY, 01); // Sunday - workoutList.addWorkout(new Workout(calendar1.getTime())); - Calendar calendar2 = Calendar.getInstance(); - calendar2.set(2023, Calendar.JANUARY, 02); // Monday - workoutList.addWorkout(new Workout(calendar2.getTime())); + private WorkoutList workoutList; + private HashMap workouts; - // Get the workouts for the week of January 3, 2023, using any day in the week - Calendar calendar3 = Calendar.getInstance(); - calendar3.set(2023, Calendar.JANUARY, 3); // Wednesday - WorkoutList workoutsInSpecificWeek = workoutList.getWorkoutsInSpecificWeek(calendar3.getTime()); - - // Check that the correct workouts are returned - assertEquals(2, workoutsInSpecificWeek.getWorkoutArrayList().size()); - assertEquals(calendar1.getTime(), workoutsInSpecificWeek.getWorkoutArrayList().get(0).getDate()); - assertEquals(calendar2.getTime(), workoutsInSpecificWeek.getWorkoutArrayList().get(1).getDate()); + //@@ author ZIZI-czh + @BeforeEach + public void setUp() { + workoutList = new WorkoutList(); + workouts = new HashMap<>(); } - //@@ guillaume-grn + //@@ author ZIZI-czh @Test - public void testCountSetsRepsPreparation() { - // create some test data - Exercise exercise1 = new Exercise("Bench press", "100", "8 6 4"); - Exercise exercise2 = new Exercise("Bench press", "150", "5 5 5 5"); - Calendar cal0 = Calendar.getInstance(); - cal0.set(2023, Calendar.MARCH, 1); // March 4th, 2023.Wednesday - Workout workout1 = new Workout(cal0.getTime()); - cal0.set(2023, Calendar.MARCH, 3); - Workout workout2 = new Workout(cal0.getTime()); - workout1.addExercise(exercise1); - workout2.addExercise(exercise2); - WorkoutList workoutList = new WorkoutList(); - workoutList.addWorkout(workout1); - workoutList.addWorkout(workout2); - - // call the method being tested - ArrayList distinctExercisesList = workoutList.countSetsRepsPreparation(cal0.getTime()); + public void testAddWorkoutToList() { + Date date = new Date(); + Day day = new Day(date); + workoutList.addWorkoutToList(date, day); + workouts.put(date, day); + assertEquals(workouts, workoutList.getWorkouts()); + } - // assert the expected output - ArrayList expectedDistinctExercisesList = new ArrayList<>(); - Exercise expectedExercise1 = new Exercise("Bench press", "100", "8 6 4 5 5 5 5"); - expectedDistinctExercisesList.add(expectedExercise1); - assertEquals(expectedDistinctExercisesList.get(0).getName(), distinctExercisesList.get(0).getName()); - assertEquals(expectedDistinctExercisesList.get(0).getRepsPerSet(), - distinctExercisesList.get(0).getRepsPerSet()); + //@@ author ZIZI-czh + @Test + public void testGetWorkoutsInSpecificWeek() { + Date date = new Date(); + Day day = new Day(date); + workoutList.addWorkoutToList(date, day); + Calendar calendar = Calendar.getInstance(); + calendar.setTime(date); + calendar.set(Calendar.DAY_OF_WEEK, Calendar.MONDAY); + Date startOfWeekDate = calendar.getTime(); + calendar.set(Calendar.DAY_OF_WEEK, Calendar.SUNDAY); + Date endOfWeekDate = calendar.getTime(); + HashMap workoutsInSpecificWeek = workoutList.getWorkoutsInSpecificWeek(startOfWeekDate); + assertTrue(workoutsInSpecificWeek.containsKey(date)); + assertFalse(workoutsInSpecificWeek.containsKey(endOfWeekDate)); } } + diff --git a/src/test/java/seedu/workout/WorkoutTest.java b/src/test/java/seedu/workout/WorkoutTest.java index 6ab3c58956..a1f03b523b 100644 --- a/src/test/java/seedu/workout/WorkoutTest.java +++ b/src/test/java/seedu/workout/WorkoutTest.java @@ -1,26 +1,62 @@ package seedu.workout; +import org.junit.jupiter.api.Assertions; +import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; -import seedu.parser.DateFormatter; +import java.util.ArrayList; -import java.util.Date; +//@@ author ZIZI-czh +public class WorkoutTest { + private Workout workout; + private Exercise exercise1; + private Exercise exercise2; -import static org.junit.jupiter.api.Assertions.assertEquals; + //@@ author ZIZI-czh + @BeforeEach + public void setUp() { + workout = new Workout("Workout 1"); + exercise1 = new Exercise("Bench Press", "100kg", "8 6 4 8"); + exercise2 = new Exercise("Squats", "80kg", "10 10 10 10"); + } -public class WorkoutTest { + //@@ author ZIZI-czh @Test - public void testGetDateAndSetDate() throws Exception { - String expectedDatestring = "05/02/2023"; - Date expectedDate = DateFormatter.stringToDate(expectedDatestring); - Workout workout = new Workout(expectedDate); - String formattedDate1 = DateFormatter.dateToString(expectedDate); - assertEquals(formattedDate1, workout.getDateToString()); - - String newDatestring = "06/03/2024"; - Date newDate = DateFormatter.stringToDate(newDatestring); - String formattedDate2 = DateFormatter.dateToString(newDate); - workout.setDate(newDate); - assertEquals(formattedDate2, workout.getDateToString()); + public void testAddExercise() { + workout.addExercise(exercise1); + ArrayList exercises = workout.getExercises(); + Assertions.assertEquals(1, exercises.size()); + Assertions.assertEquals(exercise1, exercises.get(0)); + + workout.addExercise(exercise2); + exercises = workout.getExercises(); + Assertions.assertEquals(2, exercises.size()); + Assertions.assertEquals(exercise2, exercises.get(1)); } + //@@ author ZIZI-czh + @Test + public void testToString() { + //Workout workout = new Workout(work); + workout.addExercise(exercise1); + workout.addExercise(exercise2); + String expected = "Workout: Workout 1" + + System.lineSeparator() + + "Bench Press " + + "100kg 8 6 4 8" + + System.lineSeparator() + + "Squats" + + " 80kg 10 10 10 10" + + System.lineSeparator(); + Assertions.assertEquals(expected, workout.toString()); + } + + //@@ author ZIZI-czh + @Test + public void testToStringEmpty() { + String expected = "Workout: Workout 1" + + System.lineSeparator(); + + Assertions.assertEquals(expected, workout.toString()); + } } + diff --git a/src/test/java/seedu/workout/WorkoutViewTest.java b/src/test/java/seedu/workout/WorkoutViewTest.java index 1789bbe4d9..b9949955c6 100644 --- a/src/test/java/seedu/workout/WorkoutViewTest.java +++ b/src/test/java/seedu/workout/WorkoutViewTest.java @@ -1,25 +1,67 @@ package seedu.workout; +import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; +import seedu.commands.workoutcommands.ViewWorkoutCommand; +import seedu.parser.DateFormatter; +import seedu.ui.Ui; -import java.util.Calendar; +import java.text.ParseException; +import java.util.Date; +import java.util.HashMap; import static org.junit.jupiter.api.Assertions.assertEquals; -//@@ Author Richardtok + +//@@ author ZIZI-czh public class WorkoutViewTest { + private WorkoutList workoutList; + private ViewWorkoutCommand command; + + @BeforeEach + public void setUp() { + workoutList = new WorkoutList(); + } + + //@@ author ZIZI-czh @Test - public void viewFunctionTest (){ - - WorkoutList workoutList = new WorkoutList(); - Calendar calendar0 = Calendar.getInstance(); - calendar0.set(2021, Calendar.MARCH, 31); // Saturday - workoutList.addWorkout(new Workout(calendar0.getTime())); - Exercise exercise = new Exercise("Lateral Raise", "10kg", "8 8 9"); - String expected = "Here are the list of exercises in your workout:\n" + - "1. Lateral Raise 10kg 8 8 9"; - String actual = "Here are the list of exercises in your workout:\n" + - "1. Lateral Raise 10kg 8 8 9"; - assertEquals(expected, actual); + public void testExecute_workoutFound_returnsWorkoutString() throws ParseException { + HashMap singleWorkout = new HashMap<>(); + Workout workout = new Workout("Workout 1"); + Exercise exercise1 = new Exercise("Bench Press", "100kg", "8 6 4 5"); + Exercise exercise2 = new Exercise("Squats", "80kg", "10 10 10 10"); + workout.addExercise(exercise1); + workout.addExercise(exercise2); + String stringDate1 = "01/11/2022"; + Date date1 = DateFormatter.stringToDate(stringDate1); + Day day = new Day(date1); + day.addWorkout("Workout 1", workout); + //day.setWorkoutsByDate(date1, workout);; + workoutList.addWorkoutToList(date1, day); + command = new ViewWorkoutCommand(date1, workoutList); + // Execute the command + String result = command.execute(); + + // Assert that the result contains the expected output + String expectedOutput = "Workouts on " + DateFormatter.dateToString(date1) + ":" + System.lineSeparator() + + "Workout 1:" + System.lineSeparator() + + "1. " + exercise1.toString() + System.lineSeparator() + + "2. " + exercise2.toString() + System.lineSeparator() + + Ui.showSeparator(); + assertEquals(expectedOutput, result); } + //@@ author ZIZI-czh + @Test + public void testExecute_noWorkoutFound_returnsErrorMessage() throws ParseException { + // Execute the command + + String stringDate1 = "01/12/2022"; + Date date1 = DateFormatter.stringToDate(stringDate1); + // Assert that the result contains the expected output + String expectedOutput = DateFormatter.dateToString(date1) + " does not exit in the list"; + ViewWorkoutCommand command1 = new ViewWorkoutCommand(date1); + String result = command1.execute(); + assertEquals(expectedOutput, result); + } } + From b66b97b8bc827a425a52fbd5bc64c00467c8ea3b Mon Sep 17 00:00:00 2001 From: ZIZI-czh <77820516+ZIZI-czh@users.noreply.github.com> Date: Mon, 3 Apr 2023 03:42:02 +0800 Subject: [PATCH 089/152] Updated deleteTest --- .../commands/workoutcommands/DeleteWorkoutCommand.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/main/java/seedu/commands/workoutcommands/DeleteWorkoutCommand.java b/src/main/java/seedu/commands/workoutcommands/DeleteWorkoutCommand.java index bf6a08e4b2..3456f08079 100644 --- a/src/main/java/seedu/commands/workoutcommands/DeleteWorkoutCommand.java +++ b/src/main/java/seedu/commands/workoutcommands/DeleteWorkoutCommand.java @@ -11,9 +11,9 @@ //@@ author ZIZI-czh public class DeleteWorkoutCommand extends Command { - private static final String DELETE_WORKOUT_FIRST = "Day"; - private static final String DELETE_WORKOUT_SECOND = "have been deleted "; - private static final String NO_SUCH_DAY = "does not exit"; + private static final String DELETE_WORKOUT_FIRST = "Day "; + private static final String DELETE_WORKOUT_SECOND = " have been deleted "; + private static final String NO_SUCH_DAY = " does not exit"; private final Date workoutToDeleteDate; //@@ author ZIZI-czh From 69d11c10ab98f5ed197b7e69b75a564deaad0267 Mon Sep 17 00:00:00 2001 From: ZIZI-czh <77820516+ZIZI-czh@users.noreply.github.com> Date: Mon, 3 Apr 2023 04:22:49 +0800 Subject: [PATCH 090/152] edit workoutlist --- src/main/java/seedu/workout/WorkoutList.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/main/java/seedu/workout/WorkoutList.java b/src/main/java/seedu/workout/WorkoutList.java index d3587011cb..cee63d484e 100644 --- a/src/main/java/seedu/workout/WorkoutList.java +++ b/src/main/java/seedu/workout/WorkoutList.java @@ -130,11 +130,11 @@ public HashMap getWorkoutsInSpecificWeek(Date dayInSpecificWeekDate) Calendar calendar = Calendar.getInstance(); calendar.setTime(dayInSpecificWeekDate); calendar.set(Calendar.DAY_OF_WEEK, calendar.getFirstDayOfWeek()); - Date startOfWeekDate = calendar.getTime(); + Date startOfWeekDate1 = calendar.getTime(); calendar.add(Calendar.DAY_OF_WEEK, 6); - Date endOfWeekDate = calendar.getTime(); + Date endOfWeekDate1 = calendar.getTime(); for (Date workoutDate : workouts.keySet()) { - if (workoutDate.compareTo(startOfWeekDate) >= 0 && workoutDate.compareTo(endOfWeekDate) <= 0) { + if (workoutDate.compareTo(startOfWeekDate1) >= 0 && workoutDate.compareTo(endOfWeekDate1) <= 0) { workoutsInSpecificWeek.put(workoutDate, workouts.get(workoutDate)); } } From e2538a4251cca98af33778bbc0961ab930acc211 Mon Sep 17 00:00:00 2001 From: ZIZI-czh <77820516+ZIZI-czh@users.noreply.github.com> Date: Mon, 3 Apr 2023 10:08:50 +0800 Subject: [PATCH 091/152] change file --- src/main/java/seedu/workout/WorkoutList.java | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/main/java/seedu/workout/WorkoutList.java b/src/main/java/seedu/workout/WorkoutList.java index 41bf4d7c6f..eaec347c73 100644 --- a/src/main/java/seedu/workout/WorkoutList.java +++ b/src/main/java/seedu/workout/WorkoutList.java @@ -130,14 +130,15 @@ public HashMap getWorkoutsInSpecificWeek(Date dayInSpecificWeekDate) Calendar calendar = Calendar.getInstance(); calendar.setTime(dayInSpecificWeekDate); calendar.set(Calendar.DAY_OF_WEEK, calendar.getFirstDayOfWeek()); - Date startOfWeekDate = calendar.getTime(); + Date startOfWeekDate1 = calendar.getTime(); calendar.add(Calendar.DAY_OF_WEEK, 6); calendar.set(Calendar.DAY_OF_WEEK, Calendar.MONDAY); Date startOfWeekDate = calendar.getTime(); calendar.set(Calendar.DAY_OF_WEEK, Calendar.SUNDAY); Date endOfWeekDate = calendar.getTime(); + Date endOfWeekDate1 = calendar.getTime(); for (Date workoutDate : workouts.keySet()) { - if (workoutDate.compareTo(startOfWeekDate) >= 0 && workoutDate.compareTo(endOfWeekDate) <= 0) { + if (workoutDate.compareTo(startOfWeekDate1) >= 0 && workoutDate.compareTo(endOfWeekDate1) <= 0) { workoutsInSpecificWeek.put(workoutDate, workouts.get(workoutDate)); } } From 179da28d56dbb7f8d0599dde7dda37cb0f00ff69 Mon Sep 17 00:00:00 2001 From: ZIZI-czh <77820516+ZIZI-czh@users.noreply.github.com> Date: Mon, 3 Apr 2023 10:33:09 +0800 Subject: [PATCH 092/152] change file --- src/main/java/seedu/workout/WorkoutList.java | 6 ++-- .../ListWorkoutCommandTest.java | 36 ++----------------- .../java/seedu/workout/WorkoutListTest.java | 20 ++++++----- 3 files changed, 17 insertions(+), 45 deletions(-) diff --git a/src/main/java/seedu/workout/WorkoutList.java b/src/main/java/seedu/workout/WorkoutList.java index eaec347c73..6146207e2b 100644 --- a/src/main/java/seedu/workout/WorkoutList.java +++ b/src/main/java/seedu/workout/WorkoutList.java @@ -130,15 +130,15 @@ public HashMap getWorkoutsInSpecificWeek(Date dayInSpecificWeekDate) Calendar calendar = Calendar.getInstance(); calendar.setTime(dayInSpecificWeekDate); calendar.set(Calendar.DAY_OF_WEEK, calendar.getFirstDayOfWeek()); - Date startOfWeekDate1 = calendar.getTime(); + //Date startOfWeekDate1 = calendar.getTime(); calendar.add(Calendar.DAY_OF_WEEK, 6); calendar.set(Calendar.DAY_OF_WEEK, Calendar.MONDAY); Date startOfWeekDate = calendar.getTime(); calendar.set(Calendar.DAY_OF_WEEK, Calendar.SUNDAY); Date endOfWeekDate = calendar.getTime(); - Date endOfWeekDate1 = calendar.getTime(); + //Date endOfWeekDate1 = calendar.getTime(); for (Date workoutDate : workouts.keySet()) { - if (workoutDate.compareTo(startOfWeekDate1) >= 0 && workoutDate.compareTo(endOfWeekDate1) <= 0) { + if (workoutDate.compareTo(startOfWeekDate) >= 0 && workoutDate.compareTo(endOfWeekDate) <= 0) { workoutsInSpecificWeek.put(workoutDate, workouts.get(workoutDate)); } } diff --git a/src/test/java/seedu/commands/workoutcommands/ListWorkoutCommandTest.java b/src/test/java/seedu/commands/workoutcommands/ListWorkoutCommandTest.java index 946a5f3dac..68a1595a8e 100644 --- a/src/test/java/seedu/commands/workoutcommands/ListWorkoutCommandTest.java +++ b/src/test/java/seedu/commands/workoutcommands/ListWorkoutCommandTest.java @@ -9,38 +9,6 @@ import java.util.Date; import static org.junit.jupiter.api.Assertions.assertEquals; - -/*public class ListWorkoutCommandTest { - - //@@ author ZIZI-czh - @Test - public void testShowWorkoutList() throws ParseException { - // Create a new instance of the class that contains the showWorkoutList() method - // and add some sample data to the workoutList - SimpleDateFormat format = new SimpleDateFormat("dd/MM/yy"); - - // Call the method to be tested - // WorkoutList workoutList = Command.getWorkoutList(); - WorkoutList workoutList = new WorkoutList(); - workoutList.addWorkout(new Workout(format.parse("11/11/23"))); - workoutList.addWorkout(new Workout(format.parse("11/10/23"))); - ListWorkoutCommand testList = new ListWorkoutCommand(); - //testList.setData(workoutList, calorieTracker); - assertEquals(2, workoutList.getWorkoutArrayList().size()); - - //Capture the console output - ByteArrayOutputStream outContent = new ByteArrayOutputStream(); - System.setOut(new PrintStream(outContent)); - - // Call the method to be tested - testList.execute(); - - // Assert that the console output matches the expected output - assertEquals("Here are the list of dates of your workouts:" + System.lineSeparator() - + "1. 11/11/23" + System.lineSeparator() - + "2. 11/10/23" + System.lineSeparator(), - outContent.toString()); - }*/ public class ListWorkoutCommandTest { @Test @@ -55,8 +23,8 @@ public void testExecute_withEmptyWorkoutList_returnsEmptyDayListMessage() { @Test public void testExecute_withNonEmptyWorkoutList_returnsListOfDates() throws ParseException { WorkoutList workoutList = new WorkoutList(); - String stringDate1 = "01/11/2022"; - String stringDate2 = "02/11/2022"; + String stringDate1 = "01/11/22"; + String stringDate2 = "02/11/22"; Date date1 = DateFormatter.stringToDate(stringDate1); Date date2 = DateFormatter.stringToDate(stringDate2); Day day1 = new Day(date1); diff --git a/src/test/java/seedu/workout/WorkoutListTest.java b/src/test/java/seedu/workout/WorkoutListTest.java index 3c31f80e1e..4f65f4b2b0 100644 --- a/src/test/java/seedu/workout/WorkoutListTest.java +++ b/src/test/java/seedu/workout/WorkoutListTest.java @@ -1,15 +1,19 @@ package seedu.workout; +import org.junit.jupiter.api.Assertions; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; +import seedu.parser.DateFormatter; +import seedu.workout.Day; +import seedu.workout.WorkoutList; + +import java.text.ParseException; import java.util.Calendar; import java.util.Date; import java.util.HashMap; import static org.junit.jupiter.api.Assertions.assertEquals; -import static org.testng.AssertJUnit.assertFalse; -import static org.testng.AssertJUnit.assertTrue; public class WorkoutListTest { @@ -35,8 +39,9 @@ public void testAddWorkoutToList() { //@@ author ZIZI-czh @Test - public void testGetWorkoutsInSpecificWeek() { - Date date = new Date(); + public void testGetWorkoutsInSpecificWeek() throws ParseException { + String stringDate = "01/11/22"; + Date date = DateFormatter.stringToDate(stringDate); Day day = new Day(date); workoutList.addWorkoutToList(date, day); Calendar calendar = Calendar.getInstance(); @@ -46,9 +51,8 @@ public void testGetWorkoutsInSpecificWeek() { calendar.set(Calendar.DAY_OF_WEEK, Calendar.SUNDAY); Date endOfWeekDate = calendar.getTime(); HashMap workoutsInSpecificWeek = workoutList.getWorkoutsInSpecificWeek(startOfWeekDate); - assertTrue(workoutsInSpecificWeek.containsKey(date)); - assertFalse(workoutsInSpecificWeek.containsKey(endOfWeekDate)); + Assertions.assertTrue(workoutsInSpecificWeek.containsKey(date)); + Assertions.assertFalse(workoutsInSpecificWeek.containsKey(endOfWeekDate)); } -} - +} \ No newline at end of file From cb5ed09ba08b17a1cebff6063868502febb33a94 Mon Sep 17 00:00:00 2001 From: ZIZI-czh <77820516+ZIZI-czh@users.noreply.github.com> Date: Mon, 3 Apr 2023 10:37:57 +0800 Subject: [PATCH 093/152] update WorkoutList --- src/main/java/seedu/workout/WorkoutList.java | 29 +++++++++---------- .../java/seedu/workout/WorkoutListTest.java | 20 +++++-------- 2 files changed, 21 insertions(+), 28 deletions(-) diff --git a/src/main/java/seedu/workout/WorkoutList.java b/src/main/java/seedu/workout/WorkoutList.java index 6146207e2b..bb9ed64c7e 100644 --- a/src/main/java/seedu/workout/WorkoutList.java +++ b/src/main/java/seedu/workout/WorkoutList.java @@ -126,23 +126,20 @@ public static String displayCountSetsReps(ArrayList distinctExercisesL //@@ author guillaume-grn //@@ author ZIZI-czh public HashMap getWorkoutsInSpecificWeek(Date dayInSpecificWeekDate) { - HashMap workoutsInSpecificWeek = new HashMap<>(); - Calendar calendar = Calendar.getInstance(); - calendar.setTime(dayInSpecificWeekDate); - calendar.set(Calendar.DAY_OF_WEEK, calendar.getFirstDayOfWeek()); - //Date startOfWeekDate1 = calendar.getTime(); - calendar.add(Calendar.DAY_OF_WEEK, 6); - calendar.set(Calendar.DAY_OF_WEEK, Calendar.MONDAY); - Date startOfWeekDate = calendar.getTime(); - calendar.set(Calendar.DAY_OF_WEEK, Calendar.SUNDAY); - Date endOfWeekDate = calendar.getTime(); - //Date endOfWeekDate1 = calendar.getTime(); - for (Date workoutDate : workouts.keySet()) { - if (workoutDate.compareTo(startOfWeekDate) >= 0 && workoutDate.compareTo(endOfWeekDate) <= 0) { - workoutsInSpecificWeek.put(workoutDate, workouts.get(workoutDate)); + + HashMap workoutsInSpecificWeek = new HashMap<>(); + Calendar calendar = Calendar.getInstance(); + calendar.setTime(dayInSpecificWeekDate); + calendar.set(Calendar.DAY_OF_WEEK, calendar.getFirstDayOfWeek()); + Date startOfWeekDate = calendar.getTime(); + calendar.add(Calendar.DAY_OF_WEEK, 6); + Date endOfWeekDate = calendar.getTime(); + for (Date workoutDate : workouts.keySet()) { + if (workoutDate.compareTo(startOfWeekDate) >= 0 && workoutDate.compareTo(endOfWeekDate) <= 0) { + workoutsInSpecificWeek.put(workoutDate, workouts.get(workoutDate)); + } } + return workoutsInSpecificWeek; } - return workoutsInSpecificWeek; - } } diff --git a/src/test/java/seedu/workout/WorkoutListTest.java b/src/test/java/seedu/workout/WorkoutListTest.java index 4f65f4b2b0..3c31f80e1e 100644 --- a/src/test/java/seedu/workout/WorkoutListTest.java +++ b/src/test/java/seedu/workout/WorkoutListTest.java @@ -1,19 +1,15 @@ package seedu.workout; -import org.junit.jupiter.api.Assertions; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; -import seedu.parser.DateFormatter; -import seedu.workout.Day; -import seedu.workout.WorkoutList; - -import java.text.ParseException; import java.util.Calendar; import java.util.Date; import java.util.HashMap; import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.testng.AssertJUnit.assertFalse; +import static org.testng.AssertJUnit.assertTrue; public class WorkoutListTest { @@ -39,9 +35,8 @@ public void testAddWorkoutToList() { //@@ author ZIZI-czh @Test - public void testGetWorkoutsInSpecificWeek() throws ParseException { - String stringDate = "01/11/22"; - Date date = DateFormatter.stringToDate(stringDate); + public void testGetWorkoutsInSpecificWeek() { + Date date = new Date(); Day day = new Day(date); workoutList.addWorkoutToList(date, day); Calendar calendar = Calendar.getInstance(); @@ -51,8 +46,9 @@ public void testGetWorkoutsInSpecificWeek() throws ParseException { calendar.set(Calendar.DAY_OF_WEEK, Calendar.SUNDAY); Date endOfWeekDate = calendar.getTime(); HashMap workoutsInSpecificWeek = workoutList.getWorkoutsInSpecificWeek(startOfWeekDate); - Assertions.assertTrue(workoutsInSpecificWeek.containsKey(date)); - Assertions.assertFalse(workoutsInSpecificWeek.containsKey(endOfWeekDate)); + assertTrue(workoutsInSpecificWeek.containsKey(date)); + assertFalse(workoutsInSpecificWeek.containsKey(endOfWeekDate)); } -} \ No newline at end of file +} + From 28d434b168da71239721fc121b8ab811448d77b2 Mon Sep 17 00:00:00 2001 From: ZIZI-czh <77820516+ZIZI-czh@users.noreply.github.com> Date: Mon, 3 Apr 2023 10:40:13 +0800 Subject: [PATCH 094/152] Formate workoutList and WorkoutList test --- src/main/java/seedu/workout/WorkoutList.java | 24 +++++++++---------- .../java/seedu/workout/WorkoutListTest.java | 1 + 2 files changed, 13 insertions(+), 12 deletions(-) diff --git a/src/main/java/seedu/workout/WorkoutList.java b/src/main/java/seedu/workout/WorkoutList.java index bb9ed64c7e..418707475d 100644 --- a/src/main/java/seedu/workout/WorkoutList.java +++ b/src/main/java/seedu/workout/WorkoutList.java @@ -127,19 +127,19 @@ public static String displayCountSetsReps(ArrayList distinctExercisesL //@@ author ZIZI-czh public HashMap getWorkoutsInSpecificWeek(Date dayInSpecificWeekDate) { - HashMap workoutsInSpecificWeek = new HashMap<>(); - Calendar calendar = Calendar.getInstance(); - calendar.setTime(dayInSpecificWeekDate); - calendar.set(Calendar.DAY_OF_WEEK, calendar.getFirstDayOfWeek()); - Date startOfWeekDate = calendar.getTime(); - calendar.add(Calendar.DAY_OF_WEEK, 6); - Date endOfWeekDate = calendar.getTime(); - for (Date workoutDate : workouts.keySet()) { - if (workoutDate.compareTo(startOfWeekDate) >= 0 && workoutDate.compareTo(endOfWeekDate) <= 0) { - workoutsInSpecificWeek.put(workoutDate, workouts.get(workoutDate)); - } + HashMap workoutsInSpecificWeek = new HashMap<>(); + Calendar calendar = Calendar.getInstance(); + calendar.setTime(dayInSpecificWeekDate); + calendar.set(Calendar.DAY_OF_WEEK, calendar.getFirstDayOfWeek()); + Date startOfWeekDate = calendar.getTime(); + calendar.add(Calendar.DAY_OF_WEEK, 6); + Date endOfWeekDate = calendar.getTime(); + for (Date workoutDate : workouts.keySet()) { + if (workoutDate.compareTo(startOfWeekDate) >= 0 && workoutDate.compareTo(endOfWeekDate) <= 0) { + workoutsInSpecificWeek.put(workoutDate, workouts.get(workoutDate)); } - return workoutsInSpecificWeek; } + return workoutsInSpecificWeek; + } } diff --git a/src/test/java/seedu/workout/WorkoutListTest.java b/src/test/java/seedu/workout/WorkoutListTest.java index 3c31f80e1e..9fe0ade8fc 100644 --- a/src/test/java/seedu/workout/WorkoutListTest.java +++ b/src/test/java/seedu/workout/WorkoutListTest.java @@ -3,6 +3,7 @@ import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; + import java.util.Calendar; import java.util.Date; import java.util.HashMap; From 6c33cbf675528ebb20fcc54982e214828978f72d Mon Sep 17 00:00:00 2001 From: ZIZI-czh <77820516+ZIZI-czh@users.noreply.github.com> Date: Mon, 3 Apr 2023 10:45:00 +0800 Subject: [PATCH 095/152] Change ListWorkoutTest --- .../commands/workoutcommands/ListWorkoutCommandTest.java | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/test/java/seedu/commands/workoutcommands/ListWorkoutCommandTest.java b/src/test/java/seedu/commands/workoutcommands/ListWorkoutCommandTest.java index 68a1595a8e..296a205e85 100644 --- a/src/test/java/seedu/commands/workoutcommands/ListWorkoutCommandTest.java +++ b/src/test/java/seedu/commands/workoutcommands/ListWorkoutCommandTest.java @@ -5,10 +5,13 @@ import seedu.parser.DateFormatter; import seedu.workout.Day; import seedu.workout.WorkoutList; + import java.text.ParseException; import java.util.Date; + import static org.junit.jupiter.api.Assertions.assertEquals; + public class ListWorkoutCommandTest { @Test @@ -23,8 +26,8 @@ public void testExecute_withEmptyWorkoutList_returnsEmptyDayListMessage() { @Test public void testExecute_withNonEmptyWorkoutList_returnsListOfDates() throws ParseException { WorkoutList workoutList = new WorkoutList(); - String stringDate1 = "01/11/22"; - String stringDate2 = "02/11/22"; + String stringDate1 = "01/11/2022"; + String stringDate2 = "02/11/2022"; Date date1 = DateFormatter.stringToDate(stringDate1); Date date2 = DateFormatter.stringToDate(stringDate2); Day day1 = new Day(date1); @@ -38,7 +41,6 @@ public void testExecute_withNonEmptyWorkoutList_returnsListOfDates() throws Pars + DateFormatter.dateToString(date2) + System.lineSeparator() + "----------------------------------"; String actualOutput = listWorkoutCommand.execute(); - assertEquals(expectedOutput, actualOutput); } } From 0f45df0121b3be4d7b350c5be92b572b4c8a45e8 Mon Sep 17 00:00:00 2001 From: ZIZI-czh <77820516+ZIZI-czh@users.noreply.github.com> Date: Mon, 3 Apr 2023 10:47:45 +0800 Subject: [PATCH 096/152] update workoutList : show one date in list --- .../workoutcommands/ListWorkoutCommandTest.java | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/test/java/seedu/commands/workoutcommands/ListWorkoutCommandTest.java b/src/test/java/seedu/commands/workoutcommands/ListWorkoutCommandTest.java index 296a205e85..ae7d8025d0 100644 --- a/src/test/java/seedu/commands/workoutcommands/ListWorkoutCommandTest.java +++ b/src/test/java/seedu/commands/workoutcommands/ListWorkoutCommandTest.java @@ -27,18 +27,18 @@ public void testExecute_withEmptyWorkoutList_returnsEmptyDayListMessage() { public void testExecute_withNonEmptyWorkoutList_returnsListOfDates() throws ParseException { WorkoutList workoutList = new WorkoutList(); String stringDate1 = "01/11/2022"; - String stringDate2 = "02/11/2022"; + // String stringDate2 = "02/11/2022"; Date date1 = DateFormatter.stringToDate(stringDate1); - Date date2 = DateFormatter.stringToDate(stringDate2); + // Date date2 = DateFormatter.stringToDate(stringDate2); Day day1 = new Day(date1); - Day day2 = new Day(date2); + // Day day2 = new Day(date2); workoutList.addWorkoutToList(date1, day1); - workoutList.addWorkoutToList(date2, day2); + // workoutList.addWorkoutToList(date2, day2); ListWorkoutCommand listWorkoutCommand = new ListWorkoutCommand(workoutList); String expectedOutput = "Here is the list of dates of your workouts:" + System.lineSeparator() + DateFormatter.dateToString(date1) + System.lineSeparator() - + DateFormatter.dateToString(date2) + System.lineSeparator() + // + DateFormatter.dateToString(date2) + System.lineSeparator() + "----------------------------------"; String actualOutput = listWorkoutCommand.execute(); assertEquals(expectedOutput, actualOutput); From 2efe7eac26c15c50c51d92efe99424a3b2bb14e3 Mon Sep 17 00:00:00 2001 From: ZIZI-czh <77820516+ZIZI-czh@users.noreply.github.com> Date: Mon, 3 Apr 2023 10:52:08 +0800 Subject: [PATCH 097/152] change codeStyle for workoutList --- .../commands/workoutcommands/ListWorkoutCommandTest.java | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/test/java/seedu/commands/workoutcommands/ListWorkoutCommandTest.java b/src/test/java/seedu/commands/workoutcommands/ListWorkoutCommandTest.java index ae7d8025d0..0eff2e160f 100644 --- a/src/test/java/seedu/commands/workoutcommands/ListWorkoutCommandTest.java +++ b/src/test/java/seedu/commands/workoutcommands/ListWorkoutCommandTest.java @@ -27,18 +27,18 @@ public void testExecute_withEmptyWorkoutList_returnsEmptyDayListMessage() { public void testExecute_withNonEmptyWorkoutList_returnsListOfDates() throws ParseException { WorkoutList workoutList = new WorkoutList(); String stringDate1 = "01/11/2022"; - // String stringDate2 = "02/11/2022"; + // String stringDate2 = "02/11/2022"; Date date1 = DateFormatter.stringToDate(stringDate1); - // Date date2 = DateFormatter.stringToDate(stringDate2); + // Date date2 = DateFormatter.stringToDate(stringDate2); Day day1 = new Day(date1); - // Day day2 = new Day(date2); + // Day day2 = new Day(date2); workoutList.addWorkoutToList(date1, day1); // workoutList.addWorkoutToList(date2, day2); ListWorkoutCommand listWorkoutCommand = new ListWorkoutCommand(workoutList); String expectedOutput = "Here is the list of dates of your workouts:" + System.lineSeparator() + DateFormatter.dateToString(date1) + System.lineSeparator() - // + DateFormatter.dateToString(date2) + System.lineSeparator() + // + DateFormatter.dateToString(date2) + System.lineSeparator() + "----------------------------------"; String actualOutput = listWorkoutCommand.execute(); assertEquals(expectedOutput, actualOutput); From d5197d4b1f532672a6f0ffccfa59eec516429764 Mon Sep 17 00:00:00 2001 From: ZIZI-czh <77820516+ZIZI-czh@users.noreply.github.com> Date: Tue, 4 Apr 2023 03:28:09 +0800 Subject: [PATCH 098/152] Update workout storage function --- data/workoutRecording.txt | 15 +-- src/main/java/seedu/commands/Command.java | 6 +- src/main/java/seedu/commands/ExitCommand.java | 2 - .../countcommands/CountSetsRepsCommand.java | 7 ++ .../workoutcommands/AddWorkoutCommand.java | 1 + .../workoutcommands/StartDayCommand.java | 33 +++++-- .../workoutcommands/StartWorkoutCommand.java | 46 ++++----- .../workoutcommands/ViewWorkoutCommand.java | 15 ++- src/main/java/seedu/duke/Duke.java | 18 ++-- src/main/java/seedu/parser/CheckInputs.java | 58 +++++++---- src/main/java/seedu/parser/DateFormatter.java | 1 + src/main/java/seedu/storage/ReadFile.java | 96 +++++++++++-------- src/main/java/seedu/storage/Storage.java | 17 ++-- src/main/java/seedu/storage/WriteFile.java | 54 +++++++---- src/main/java/seedu/ui/Ui.java | 10 +- src/main/java/seedu/workout/Day.java | 10 ++ src/main/java/seedu/workout/WorkoutList.java | 52 +++++++--- .../ListWorkoutCommandTest.java | 12 +-- .../java/seedu/workout/WorkoutViewTest.java | 13 ++- 19 files changed, 298 insertions(+), 168 deletions(-) diff --git a/data/workoutRecording.txt b/data/workoutRecording.txt index e4819b18f2..a9f2165888 100644 --- a/data/workoutRecording.txt +++ b/data/workoutRecording.txt @@ -1,8 +1,11 @@ -Date: 03/03/21 +Date : 02/02/21 +Workout : run2 Exercise: - 1. run 45kg 4 4 4 4 - 2. run 45kg 4 4 4 4 -Date: 03/03/22 + 1. Name: running, Weight: 45kg, Reps: 4 4 4 4 + 2. Name: running, Weight: 45kg, Reps: 4 4 4 4 +Workout : run Exercise: - 1. run 45kg 4 4 4 4 -Date: 04/04/21 + 1. Name: running, Weight: 45kg, Reps: 4 4 4 4 + 2. Name: running, Weight: 45kg, Reps: 4 4 4 4 + 3. Name: running, Weight: 45kg, Reps: 4 4 4 4 + 4. Name: running, Weight: 45kg, Reps: 4 4 4 4 diff --git a/src/main/java/seedu/commands/Command.java b/src/main/java/seedu/commands/Command.java index 31a3b4fb7d..30d0be5173 100644 --- a/src/main/java/seedu/commands/Command.java +++ b/src/main/java/seedu/commands/Command.java @@ -17,12 +17,13 @@ public class Command { protected CalorieTracker calorieTracker; protected HashMap workouts; protected Workout workoutForOneDay = new Workout(); - protected Day day = new Day(); + protected Day day; //@@ author ZIZI-czh public Command() { workouts = new HashMap<>(); + day = workoutList.getSingleWorkout(); } //@@ author ZIZI-czh @@ -35,6 +36,9 @@ public static void setIsWorkoutEntered(boolean isWorkoutEnter) { isWorkoutEntered = isWorkoutEnter; } + public WorkoutList getWorkoutList() { + return workoutList; + } public void setData(WorkoutList workoutList, CalorieTracker calorieTracker) throws IllegalArgumentException{ if (workoutList == null || calorieTracker == null) { diff --git a/src/main/java/seedu/commands/ExitCommand.java b/src/main/java/seedu/commands/ExitCommand.java index ceecc699c1..e10d5be344 100644 --- a/src/main/java/seedu/commands/ExitCommand.java +++ b/src/main/java/seedu/commands/ExitCommand.java @@ -3,7 +3,6 @@ public class ExitCommand extends Command { private static final String EXIT_MESSAGE = "Thank you, hope you had a great workout!!!"; - private static final String FILE_PATH = "data/workoutRecording.txt"; public static boolean isExit(Command command) { return command instanceof ExitCommand; @@ -11,7 +10,6 @@ public static boolean isExit(Command command) { @Override public String execute() { - // WriteFile.writeWorkoutToFile(FILE_PATH); return EXIT_MESSAGE; } } diff --git a/src/main/java/seedu/commands/countcommands/CountSetsRepsCommand.java b/src/main/java/seedu/commands/countcommands/CountSetsRepsCommand.java index de78609602..f6b585dc43 100644 --- a/src/main/java/seedu/commands/countcommands/CountSetsRepsCommand.java +++ b/src/main/java/seedu/commands/countcommands/CountSetsRepsCommand.java @@ -6,14 +6,21 @@ //@@ author guillaume-grn public class CountSetsRepsCommand extends Command { + + public static final String EMPTY_DAY = "You haven't create a record for this day!"; Date dayInSpecificWeekDate; + public CountSetsRepsCommand(Date dayInSpecificWeekDate) { this.dayInSpecificWeekDate = dayInSpecificWeekDate; } @Override public String execute() { + workouts = workoutList.getWorkouts(); + if(!workouts.containsKey(dayInSpecificWeekDate)){ + return EMPTY_DAY; + } return workoutList.countSetsReps(dayInSpecificWeekDate); } } diff --git a/src/main/java/seedu/commands/workoutcommands/AddWorkoutCommand.java b/src/main/java/seedu/commands/workoutcommands/AddWorkoutCommand.java index 248d08b4ea..bb0fc8180e 100644 --- a/src/main/java/seedu/commands/workoutcommands/AddWorkoutCommand.java +++ b/src/main/java/seedu/commands/workoutcommands/AddWorkoutCommand.java @@ -22,6 +22,7 @@ public String execute() { day = workoutList.getSingleWorkout(); workoutForOneDay = day.getWorkout(); workoutForOneDay.addExercise(exercise); + return exercise + SHOW_EXERCISES_ADDED; } else { return MISSING_WORKOUT; diff --git a/src/main/java/seedu/commands/workoutcommands/StartDayCommand.java b/src/main/java/seedu/commands/workoutcommands/StartDayCommand.java index d96c509397..2de8716764 100644 --- a/src/main/java/seedu/commands/workoutcommands/StartDayCommand.java +++ b/src/main/java/seedu/commands/workoutcommands/StartDayCommand.java @@ -9,9 +9,14 @@ //@@ author ZIZI-czh public class StartDayCommand extends Command { + + private static final String STARTED_DAY_FIRST = "You had started workout on this day before."; + private static final String STARTED_DAY_SECOND = "Please use '/start' to add a new workout!"; + private static final String STARTED_WORKOUT = "Great! You have added a new workout for "; private Date date; private Day day = new Day(); + //@@ author ZIZI-czh public StartDayCommand(Date date) { super(); @@ -28,17 +33,27 @@ public Date getDate() { public String execute() { HashMap workouts = workoutList.getWorkouts(); StringBuilder stringBuilder = new StringBuilder(); - Day day = workouts.get(date); - if (day == null) { - day = new Day(date); - workoutList.addWorkoutToList(date, day); - String formattedDate = DateFormatter.dateToString(date); - stringBuilder.append("Great! You have added a new workout for ") - .append(formattedDate); + //update the current date + workoutList.setDate(date); + if (!workouts.containsKey(date)) { + Day day = workouts.get(date); + if (day == null) { + day = new Day(date); + workoutList.addWorkoutToList(date, day); + String formattedDate = DateFormatter.dateToString(date); + stringBuilder.append(STARTED_WORKOUT) + .append(formattedDate); + + } else { + stringBuilder.append(STARTED_DAY_FIRST) + .append(System.lineSeparator()) + .append(STARTED_DAY_SECOND); + } } else { - stringBuilder.append("You had started workout on this day before, " + System.lineSeparator() - + "Please use '/wadd' to add a new workout."); + stringBuilder.append(STARTED_DAY_FIRST) + .append(System.lineSeparator()) + .append(STARTED_DAY_SECOND); } return stringBuilder.toString(); } diff --git a/src/main/java/seedu/commands/workoutcommands/StartWorkoutCommand.java b/src/main/java/seedu/commands/workoutcommands/StartWorkoutCommand.java index c2615328ee..28c2cd32fd 100644 --- a/src/main/java/seedu/commands/workoutcommands/StartWorkoutCommand.java +++ b/src/main/java/seedu/commands/workoutcommands/StartWorkoutCommand.java @@ -5,18 +5,26 @@ import seedu.workout.Day; import seedu.workout.Workout; +import java.util.Date; +import java.util.HashMap; + //@@ author ZIZI-czh public class StartWorkoutCommand extends Command { - private static final String START_WORKOUT_MESSAGE = "Started new workout." + System.lineSeparator() + private static final String START_WORKOUT_MESSAGE = "Started new workout." + + System.lineSeparator() + "Use add command to add exercises to your workout!"; - private static final String ONGOING_WORKOUT_MESSAGE = "End your current workout before starting a new " + - "one!"; - private static final String FAIL_TO_START_WORKOUT= "Please enter the day for your workout record first"; + private static final String FAIL_TO_START_WORKOUT = "Please enter the day for your workout record first."; + + private static final String WORKOUT_START_BEFORE_FIRST = "You had started workout with the same name before, "; + private static final String WORKOUT_START_BEFORE_SECOND = "Please use '/wadd' to add " + + "exercises to the existing workout."; + private static final String STARTED_WORKOUT = "Great! You have added a new workout for "; + private static final String SYMBOL = "."; private static boolean isWorkoutEntered; - private String workoutName; + private String workoutName; //@@ author ZIZI-czh @@ -26,34 +34,28 @@ public StartWorkoutCommand(String workoutName) { } - //@@ author ZIZI-czh @Override public String execute() { StringBuilder stringBuilder = new StringBuilder(); - + HashMap workouts = workoutList.getWorkouts(); + //update the workout name + day.setWorkoutName(workoutName); if (isDayEntered) { Day singleWorkout = workoutList.getSingleWorkout(); - Workout workout = singleWorkout.getWorkout(); - if (workout.getWorkoutName() == null) { - workout = new Workout(workoutName); - singleWorkout.addWorkout(workoutName, workout); - //workouts.addWorkout(formattedDate, new Workout()) - stringBuilder.append("Great! You have added a new workout for ") + if (!workouts.get(workoutList.getDate()).getWorkoutsByDate().containsKey(workoutName)) { + singleWorkout.addWorkout(workoutName, new Workout(workoutName)); + stringBuilder.append(STARTED_WORKOUT) .append(workoutName) - .append("."); - - } else if (workout.getWorkoutName().equals(workoutName)) { - stringBuilder.append("You had started workout with the same name before, ") - .append("Please use '/wadd' to add exercises to the existing workout."); - }else { - stringBuilder.append("Great! You have added a new workout for ") - .append(workoutName) - .append("."); + .append(SYMBOL); + } else { + stringBuilder.append(WORKOUT_START_BEFORE_FIRST) + .append(WORKOUT_START_BEFORE_SECOND); } return stringBuilder.toString(); } else { return FAIL_TO_START_WORKOUT; } + } } diff --git a/src/main/java/seedu/commands/workoutcommands/ViewWorkoutCommand.java b/src/main/java/seedu/commands/workoutcommands/ViewWorkoutCommand.java index 8c6f5d78a8..eea89a7e18 100644 --- a/src/main/java/seedu/commands/workoutcommands/ViewWorkoutCommand.java +++ b/src/main/java/seedu/commands/workoutcommands/ViewWorkoutCommand.java @@ -16,7 +16,6 @@ public class ViewWorkoutCommand extends Command { private static final String FAIL_TO_FIND_DATE = " does not exit in the list"; private final Date workoutToViewDate; - private HashMap workout; //@@ author ZIZI-czh @@ -50,14 +49,22 @@ public String execute() { string.append("Workouts on ").append(formattedDate).append(":").append(System.lineSeparator()); // retrieve all workouts for the day and add them to the StringBuilder for (String workoutName : singleWorkout.keySet()) { - string.append(workoutName).append(":").append(System.lineSeparator()); + string.append("Workout Name: ").append(workoutName).append(System.lineSeparator()); + string.append("Exercise Info: ").append(System.lineSeparator()); int index = 1; for (Exercise exercise : singleWorkout.get(workoutName).getExercises()) { - string.append(index).append(". ").append(exercise.toString()).append(System.lineSeparator()); + string.append(index).append(". ").append("Name: ") + .append(exercise.getName()) + .append(", weight: ") + .append(exercise.getWeight()) + .append(", rps: ") + .append(exercise.getRepsPerSet()) + .append(System.lineSeparator()); index++; } + string.append(Ui.showSeparator()).append(System.lineSeparator()); } - return string + Ui.showSeparator(); + return string.toString(); } // if the Day object doesn't exist, return an error message return formattedDate + FAIL_TO_FIND_DATE; diff --git a/src/main/java/seedu/duke/Duke.java b/src/main/java/seedu/duke/Duke.java index 0b2627983d..196031641e 100644 --- a/src/main/java/seedu/duke/Duke.java +++ b/src/main/java/seedu/duke/Duke.java @@ -7,27 +7,32 @@ import seedu.commands.IncorrectSyntaxCommand; import seedu.exceptions.InvalidSyntaxException; import seedu.parser.Parser; +import seedu.storage.ReadFile; +import seedu.storage.WriteFile; import seedu.ui.Ui; import seedu.workout.Day; import seedu.workout.WorkoutList; + public class Duke { - private static final String FILE_PATH = "data/workoutRecording.txt"; - private WorkoutList workoutList; + public static final String FILE_PATH = "data/workoutRecording.txt"; + private WorkoutList workoutList = new WorkoutList(); private Day day; private CalorieTracker calorieTracker; - /*public Duke(String filePath) { - ReadFile.readFile(filePath); - }*/ + public Duke() { + //workoutList = ReadFile.readWorkoutFromFile(FILE_PATH); + } + public static void main(String[] args) { new Duke().run(); } private void run() { - workoutList = new WorkoutList(); + // workoutList = ReadFile.readWorkoutFromFile(FILE_PATH); //day = new Day(); + workoutList = ReadFile.readWorkoutFromFile(FILE_PATH); calorieTracker = new CalorieTracker(); Ui.showWelcomeMessage(); executeCommandUntilExit(); @@ -46,6 +51,7 @@ private void executeCommandUntilExit() { command.setData(workoutList, calorieTracker); System.out.println(command.execute()); } while (!ExitCommand.isExit(command)); + WriteFile.writeWorkoutToFile(Duke.FILE_PATH, workoutList); } } diff --git a/src/main/java/seedu/parser/CheckInputs.java b/src/main/java/seedu/parser/CheckInputs.java index aa1f434890..0f4c092484 100644 --- a/src/main/java/seedu/parser/CheckInputs.java +++ b/src/main/java/seedu/parser/CheckInputs.java @@ -12,6 +12,7 @@ import seedu.workout.Exercise; import java.text.ParseException; +import java.util.Calendar; import java.util.Date; public class CheckInputs { @@ -30,15 +31,30 @@ static Command processDay(String arguments) { static Command processAdd(String arguments) { Exercise toAdd; try { - String[] exerciseDetails = arguments.split("/", 3); + String[] exerciseDetails = arguments.split("/"); + if (exerciseDetails.length != 3) { + System.out.println(66); + return new IncorrectSyntaxCommand("/wadd command"); + } String exerciseName = exerciseDetails[EXERCISE_NAME_INDEX].trim(); - String weight = exerciseDetails[WEIGHT_INDEX].replace("weight", "").trim(); - String repsPerSet = + String weight = exerciseDetails[WEIGHT_INDEX].replace("weight", " ").trim(); + if(!exerciseDetails[WEIGHT_INDEX].startsWith("weight")){ + return new IncorrectSyntaxCommand("/wadd command"); + } + String repsPerSetString = exerciseDetails[REPS_PER_SET_INDEX].replace("rps", "").replace("rps", "").trim(); - toAdd = new Exercise(exerciseName, weight, repsPerSet); - - } catch (ArrayIndexOutOfBoundsException e) { - return new IncorrectSyntaxCommand("/add command"); + if(!exerciseDetails[REPS_PER_SET_INDEX].startsWith("rps")){ + System.out.println(00); + return new IncorrectSyntaxCommand("/wadd command"); + } + String[] repsList = repsPerSetString.split(" "); + int[] reps = new int[repsList.length]; + for (int i = 0; i < repsList.length; i++) { + reps[i] = Integer.parseInt(repsList[i].trim()); + } + toAdd = new Exercise(exerciseName, weight, repsPerSetString); + } catch (ArrayIndexOutOfBoundsException | NumberFormatException e) { + return new IncorrectSyntaxCommand("/wadd command"); } return new AddWorkoutCommand(toAdd); } @@ -52,7 +68,7 @@ static Command processAdd(String arguments) { * @return Incorrect command if the input date is incorrect, otherwise, initialize the StartCommand */ static Command processStart(String arguments) { - return parseWorkoutName(arguments) ? new StartWorkoutCommand(arguments) : + return parseWorkoutName(arguments) ? new StartWorkoutCommand(arguments.trim()) : new IncorrectSyntaxCommand("/start command"); } @@ -88,7 +104,7 @@ static Command processView(String arguments) { date = DateFormatter.stringToDate(arguments); return new ViewWorkoutCommand(date); } catch (ParseException e) { - return new IncorrectSyntaxCommand("/view command"); + return new IncorrectSyntaxCommand("/wview command"); } } @@ -114,9 +130,10 @@ static Command processSetsRepsCount(String arguments) { //@@ author ZIZI-czh private static Date parseDate(String arguments) { try { - Date enteredDate = DateFormatter.stringToDate(arguments); + Date enteredDate = DateFormatter.stringToDate(arguments);; Date currentDate = new Date(); + if (enteredDate.compareTo(currentDate) > 0) { System.out.println("Date cannot be after the current date."); return null; @@ -163,23 +180,26 @@ private static boolean parseInput(String arguments) { day = Integer.parseInt(dateParts[0]); month = Integer.parseInt(dateParts[1]); year = Integer.parseInt(dateParts[2]); + if (day < 1 || day > 31 || month < 1 || month > 12) { + System.out.println("Please enter a correct date"); + return false; // not valid date components + } + if (year < 0 || (year > 99 && year < 1000) || year > Calendar.getInstance().get(Calendar.YEAR)) { + System.out.println("Invalid year. Please use a 2 or 4 digit year between 0 and " + + Calendar.getInstance().get(Calendar.YEAR)); + return false; // year not between 0 and current year or not 2 or 4 digits + } } catch (NumberFormatException e) { System.out.println("Please enter valid date"); return false; // not valid integers for date components } - if (day < 1 || day > 31 || month < 1 || month > 12 || year < 0) { - System.out.println("Please enter a correct date"); - return false; // not valid date components - } + return true; // input is in the correct format } public static boolean parseWorkoutName(String arguments) { - if (!arguments.trim().startsWith("Workout")) { - System.out.println("The workout name should start with 'Workout'"); - return false; - } - return true; + //System.out.println("The workout name should start with 'Workout'"); + return !arguments.trim().isEmpty(); } diff --git a/src/main/java/seedu/parser/DateFormatter.java b/src/main/java/seedu/parser/DateFormatter.java index 930d64f249..44c481525f 100644 --- a/src/main/java/seedu/parser/DateFormatter.java +++ b/src/main/java/seedu/parser/DateFormatter.java @@ -8,6 +8,7 @@ public class DateFormatter { private static final SimpleDateFormat dateFormat = new SimpleDateFormat("dd/MM/yy"); public DateFormatter() { + } public static Date stringToDate(String date) throws ParseException { diff --git a/src/main/java/seedu/storage/ReadFile.java b/src/main/java/seedu/storage/ReadFile.java index 61cb8175e5..7a5c8e8298 100644 --- a/src/main/java/seedu/storage/ReadFile.java +++ b/src/main/java/seedu/storage/ReadFile.java @@ -1,30 +1,33 @@ package seedu.storage; +import seedu.parser.DateFormatter; +import seedu.workout.Day; +import seedu.workout.Exercise; import seedu.workout.Workout; +import seedu.workout.WorkoutList; + +import java.io.File; +import java.io.FileNotFoundException; +import java.io.IOException; +import java.text.ParseException; import java.util.Date; +import java.util.HashMap; +import java.util.Scanner; public class ReadFile extends Storage { - - private static Workout toStart; - private static Date date; private static final String SPACE = " "; - private static final int EXERCISE_NAME_INDEX = 0; - private static final int WEIGHT_INDEX = 1; - private static final int REPS_PER_SET_INDEX_1 = 2; - private static final int REPS_PER_SET_INDEX_2 = 3; - private static final int REPS_PER_SET_INDEX_3 = 4; - private static final int REPS_PER_SET_INDEX_4 = 5; - - public static void readFile(String filePath) { - //WorkoutList workoutList = Command.getWorkoutList(); + private static WorkoutList workoutList; + private static HashMap workoutHashMap = new HashMap<>(); + private static Day day = new Day(); - /*File savedFile = new File(filePath); + public static WorkoutList readWorkoutFromFile(String filePath) { + workoutList = new WorkoutList(); + File savedFile = new File(filePath); if (!savedFile.getParentFile().exists()) { savedFile.getParentFile().mkdirs(); - } try { if (!savedFile.exists()) { @@ -34,37 +37,48 @@ public static void readFile(String filePath) { System.out.println("Failed to create a new file!!!"); } - try (BufferedReader bufferRead = new BufferedReader(new FileReader(filePath))) { - String line; - while ((line = bufferRead.readLine()) != null) { - if (line.startsWith("Date:")) { - String[] storeDateList = line.split(":"); - String storeDate = storeDateList[1].trim(); - date = DateFormatter.stringToDate(storeDate); - toStart = new Workout(date); - workoutList.addStorageWorkout(toStart); - workoutArrayList = workoutList.getWorkoutArrayList(); - } - if (line.contains(".")) { - String exerciseEntry = line.substring(line.indexOf(".") + 1).trim(); - String[] exerciseParts = exerciseEntry.split(" "); - String exerciseName = exerciseParts[EXERCISE_NAME_INDEX]; - String weight = exerciseParts[WEIGHT_INDEX]; - String repsPerSet = exerciseParts[REPS_PER_SET_INDEX_1] - + SPACE + exerciseParts[REPS_PER_SET_INDEX_2] - + SPACE + exerciseParts[REPS_PER_SET_INDEX_3] - + SPACE + exerciseParts[REPS_PER_SET_INDEX_4]; - Exercise toAdd = new Exercise(exerciseName, weight, repsPerSet); - //workoutExercises = Workout.getExercises(); - toStart.addExercise(toAdd); + try { + File file = new File(filePath); + Scanner scanner = new Scanner(file); + Date currentDate = null; + String currentWorkoutName = null; + + while (scanner.hasNextLine()) { + String line = scanner.nextLine(); + if (line.startsWith("Date")) { + //currentDate = DateFormatter.stringToDate(line.substring(6).trim()); + String[] currentDateSplit = line.split(":"); + currentDate = DateFormatter.stringToDate(currentDateSplit[1].trim()); + workoutList.addWorkoutToList(currentDate, new Day(currentDate)); + } else if (line.startsWith("Workout :")) { + String[] currentDWorkoutNameSplit = line.split(":"); + currentWorkoutName = currentDWorkoutNameSplit[1].trim(); + Day singleWorkout = workoutList.getSingleWorkout(); + Workout workout = singleWorkout.getWorkout(); + workout = new Workout(currentWorkoutName); + singleWorkout.addWorkout(currentWorkoutName, workout); + } else if (line.startsWith(SPACE)) { + String[] exerciseDetails = line.substring(4).split(","); + String exerciseName = exerciseDetails[0].trim().substring(8).trim(); + String weight = exerciseDetails[1].replace("Weight:", "").trim(); + String repsString = exerciseDetails[2].replace("Reps:", "").trim(); + Exercise exercise = new Exercise(exerciseName, weight, repsString); + /* System.out.println("name: " + exerciseName + " weight: " + weight + "reps: " + repsString);*/ + // workoutList.addExerciseToWorkout(currentDate, currentWorkoutName, exercise); + day = workoutList.getSingleWorkout(); + Workout workoutForOneDay = day.getWorkout(); + workoutForOneDay.addExercise(exercise); } } - } catch (IOException e) { - e.printStackTrace(); + scanner.close(); + } catch (FileNotFoundException e) { + System.out.println("File not found."); } catch (ParseException e) { - throw new RuntimeException(e); + System.out.println("Error parsing date."); } - }*/ + + return workoutList; } } + diff --git a/src/main/java/seedu/storage/Storage.java b/src/main/java/seedu/storage/Storage.java index 9ffff517e4..3dc27a27dd 100644 --- a/src/main/java/seedu/storage/Storage.java +++ b/src/main/java/seedu/storage/Storage.java @@ -1,13 +1,14 @@ package seedu.storage; -import seedu.commands.Command; -import seedu.workout.Exercise; -import seedu.workout.Workout; -import java.util.ArrayList; -public class Storage extends Command { - - protected static ArrayList workoutArrayList; - protected static ArrayList workoutExercises; +public class Storage{ + /* protected WorkoutList workoutList = new WorkoutList(); + protected HashMap workouts; + protected Day day = new Day(); + public Storage(){ + Command + this.workoutList = com + } +*/ } diff --git a/src/main/java/seedu/storage/WriteFile.java b/src/main/java/seedu/storage/WriteFile.java index 7c86ed4697..7da14cd7e8 100644 --- a/src/main/java/seedu/storage/WriteFile.java +++ b/src/main/java/seedu/storage/WriteFile.java @@ -1,34 +1,50 @@ package seedu.storage; +import seedu.parser.DateFormatter; +import seedu.workout.Day; +import seedu.workout.Exercise; +import seedu.workout.Workout; +import seedu.workout.WorkoutList; + +import java.io.File; +import java.io.FileWriter; +import java.io.IOException; +import java.util.Date; +import java.util.HashMap; public class WriteFile extends Storage { private static final String SPACE = " "; - public WriteFile() { - super(); - } - public static void writeWorkoutToFile(String filePath) { - //WorkoutList workoutList = Command.getWorkoutList(); - /* workoutArrayList = workoutList.getWorkoutArrayList(); + private static HashMap workouts; + + private static HashMap dailyWorkout; + + + public static void writeWorkoutToFile(String filePath, WorkoutList workoutList) { try { File savedFile = new File(filePath); FileWriter writeFile = new FileWriter(savedFile); - for(int index = 0; index < workoutArrayList.size(); index += 1) { - writeFile.write("Date: "); - String formattedDate = DateFormatter.dateToString(workoutArrayList.get(index).getDate()); + workouts = workoutList.getWorkouts(); + for (Date date : workouts.keySet()) { + writeFile.write("Date : "); + String formattedDate = DateFormatter.dateToString(date); writeFile.write(formattedDate + System.lineSeparator()); - //workoutExercises = workout.getExercises(); - workoutList.setCurrentStorageWorkoutIndex(index); - workoutExercises = workoutList.getStorageCurrentWorkout().getExercises(); - if (!workoutExercises.isEmpty()) { + Day workoutsOnOneDay = workouts.get(date); + dailyWorkout = workoutsOnOneDay.getWorkoutsByDate(); + for (String workoutName : dailyWorkout.keySet()) { + writeFile.write("Workout : " + workoutName + System.lineSeparator()); + int index = 1; writeFile.write("Exercise: " + System.lineSeparator()); - for (int exerciseIndex = 0; exerciseIndex < workoutExercises.size(); exerciseIndex += 1) { - writeFile.write(SPACE + (exerciseIndex + 1) + ". " - + workoutExercises.get(exerciseIndex).toString() - + System.lineSeparator()); + // if(dailyWorkout.get(workoutName)) { + for (Exercise exercises : dailyWorkout.get(workoutName).getExercises()) { + String exerciseStr = String.format("%s. Name: %s, Weight: %s, Reps: %s", index, + exercises.getName(), exercises.getWeight(), exercises.getRepsPerSet()); + writeFile.write(SPACE + exerciseStr + System.lineSeparator()); + index++; + // } } } } @@ -36,9 +52,5 @@ public static void writeWorkoutToFile(String filePath) { } catch (IOException e) { throw new RuntimeException(e); } - - - - }*/ } } diff --git a/src/main/java/seedu/ui/Ui.java b/src/main/java/seedu/ui/Ui.java index c18ffd27a2..495ac62fd9 100644 --- a/src/main/java/seedu/ui/Ui.java +++ b/src/main/java/seedu/ui/Ui.java @@ -37,10 +37,14 @@ public static void showLogo(){ System.out.println(LOGO_MESSAGE); } - public static void showLine(){ + public static String showLine(){ + return LINE; + } + public static void showOneLine(){ System.out.println(LINE); } + public static String showSeparator(){ return (LINE_SEPARATOR); } @@ -50,9 +54,9 @@ public static String getUserInput() { } public static void showWelcomeMessage() { - showLine(); + showOneLine(); showLogo(); - showLine(); + showOneLine(); showGreeting(); } diff --git a/src/main/java/seedu/workout/Day.java b/src/main/java/seedu/workout/Day.java index 523e984d58..4e8a6deb27 100644 --- a/src/main/java/seedu/workout/Day.java +++ b/src/main/java/seedu/workout/Day.java @@ -8,6 +8,9 @@ public class Day { private Date date; private HashMap workoutsByDate; private Workout workout = new Workout(); + private String workoutName; + + public Day(Date date) { this.date = date; @@ -27,6 +30,13 @@ public void addWorkout(String workoutName, Workout workout) { setWorkoutsByDate(workoutsByDate); } + public String getWorkoutName() { + return workoutName; + } + + public void setWorkoutName(String workoutName) { + this.workoutName = workoutName; + } //@@ author ZIZI-czh public Workout getWorkout() { diff --git a/src/main/java/seedu/workout/WorkoutList.java b/src/main/java/seedu/workout/WorkoutList.java index 418707475d..051a01792c 100644 --- a/src/main/java/seedu/workout/WorkoutList.java +++ b/src/main/java/seedu/workout/WorkoutList.java @@ -2,6 +2,7 @@ import seedu.parser.DateFormatter; + import seedu.ui.Ui; import java.util.ArrayList; @@ -13,9 +14,15 @@ //@@ author ZIZI-czh public class WorkoutList { + public static final String EMPTY_WORKOUT = "There are no workouts reported during this week !"; + + public static final String INFORMATION = "Information of exercises for the week of "; public HashMap workout; private HashMap workouts; private Day day = new Day(); + private Workout dailyWorkout = new Workout(); + private Date date; + //@@ author ZIZI-czh public WorkoutList() { @@ -33,21 +40,29 @@ public HashMap getWorkout() { public Day getSingleWorkout() { return day; } - + //@@ author ZIZI-czh + public void setDay(Day day) { + this.day = day; + } //@@ author ZIZI-czh public HashMap getWorkouts() { return workouts; } - //@@ author ZIZI-czh - public void setDay(Day day) { - this.day = day; - } //@@ author ZIZI-czh public void addWorkoutToList(Date date, Day day) { workouts.put(date, day); setDay(day); + setDate(date); + } + + public Date getDate() { + return date; + } + + public void setDate(Date date) { + this.date = date; } //@@ author ZIZI-czh @@ -60,10 +75,16 @@ public void setWorkouts(HashMap workouts) { this.workouts = workouts; } + /*public void addExerciseToWorkout(Date currentDate, String currentWorkoutName, Exercise exercise) { + dailyWorkout.addExercise(exercise); + day.addWorkout(currentWorkoutName, dailyWorkout); + addWorkoutToList(currentDate, day); + }*/ //@@ author guillaume-grn //@@ author ZIZI-czh public ArrayList countSetsRepsPreparation(Date dayInSpecificWeekDate) { + HashMap workoutsInSpecificWeek = getWorkoutsInSpecificWeek(dayInSpecificWeekDate); Day workoutForDay = workoutsInSpecificWeek.get(dayInSpecificWeekDate); ArrayList distinctExercisesList = new ArrayList<>(); @@ -75,8 +96,7 @@ public ArrayList countSetsRepsPreparation(Date dayInSpecificWeekDate) for (Exercise distinctExercise : distinctExercisesList) { if (exercise.getName().equals(distinctExercise.getName())) { - distinctExercise.setRepsPerSet(distinctExercise.getRepsPerSet() + " " - + exercise.getRepsPerSet()); + distinctExercise.setRepsPerSet(exercise.getRepsPerSet()); isExistingExercise = true; break; } @@ -102,22 +122,25 @@ public String countSetsReps(Date dayInSpecificWeekDate) { //@@ author ZIZI-czh public static String displayCountSetsReps(ArrayList distinctExercisesList, Date dayInSpecificWeekDate) { StringBuilder output = new StringBuilder(); + if(distinctExercisesList == null){ + return null; + } if (distinctExercisesList.isEmpty()) { - output.append("There are no workouts reported during this week !"); + output.append(EMPTY_WORKOUT); return output.toString(); } - output.append("Exercises and number of sets and reps for the week of ") + + output.append(INFORMATION) .append(DateFormatter.dateToString(dayInSpecificWeekDate)) .append(System.lineSeparator()); //Ui.showSeparator(); for (Exercise exercise : distinctExercisesList) { - output.append(exercise.getName()) - .append(" - ") + output.append("Name: ") + .append(exercise.getName()) + .append(", sets: ") .append(exercise.getSetsCount()) - .append(" sets") - .append(" - ") + .append(", rps:") .append(exercise.getRepsCount()) - .append(" reps") .append(System.lineSeparator()); } return output + Ui.showSeparator(); @@ -126,7 +149,6 @@ public static String displayCountSetsReps(ArrayList distinctExercisesL //@@ author guillaume-grn //@@ author ZIZI-czh public HashMap getWorkoutsInSpecificWeek(Date dayInSpecificWeekDate) { - HashMap workoutsInSpecificWeek = new HashMap<>(); Calendar calendar = Calendar.getInstance(); calendar.setTime(dayInSpecificWeekDate); diff --git a/src/test/java/seedu/commands/workoutcommands/ListWorkoutCommandTest.java b/src/test/java/seedu/commands/workoutcommands/ListWorkoutCommandTest.java index 0eff2e160f..ff1e8b33dc 100644 --- a/src/test/java/seedu/commands/workoutcommands/ListWorkoutCommandTest.java +++ b/src/test/java/seedu/commands/workoutcommands/ListWorkoutCommandTest.java @@ -26,19 +26,19 @@ public void testExecute_withEmptyWorkoutList_returnsEmptyDayListMessage() { @Test public void testExecute_withNonEmptyWorkoutList_returnsListOfDates() throws ParseException { WorkoutList workoutList = new WorkoutList(); - String stringDate1 = "01/11/2022"; - // String stringDate2 = "02/11/2022"; + String stringDate1 = "01/11/22"; + String stringDate2 = "02/11/22"; Date date1 = DateFormatter.stringToDate(stringDate1); - // Date date2 = DateFormatter.stringToDate(stringDate2); + Date date2 = DateFormatter.stringToDate(stringDate2); Day day1 = new Day(date1); - // Day day2 = new Day(date2); + Day day2 = new Day(date2); workoutList.addWorkoutToList(date1, day1); - // workoutList.addWorkoutToList(date2, day2); + workoutList.addWorkoutToList(date2, day2); ListWorkoutCommand listWorkoutCommand = new ListWorkoutCommand(workoutList); String expectedOutput = "Here is the list of dates of your workouts:" + System.lineSeparator() + DateFormatter.dateToString(date1) + System.lineSeparator() - // + DateFormatter.dateToString(date2) + System.lineSeparator() + + DateFormatter.dateToString(date2) + System.lineSeparator() + "----------------------------------"; String actualOutput = listWorkoutCommand.execute(); assertEquals(expectedOutput, actualOutput); diff --git a/src/test/java/seedu/workout/WorkoutViewTest.java b/src/test/java/seedu/workout/WorkoutViewTest.java index b9949955c6..47c7356f2b 100644 --- a/src/test/java/seedu/workout/WorkoutViewTest.java +++ b/src/test/java/seedu/workout/WorkoutViewTest.java @@ -43,13 +43,16 @@ public void testExecute_workoutFound_returnsWorkoutString() throws ParseExceptio // Assert that the result contains the expected output String expectedOutput = "Workouts on " + DateFormatter.dateToString(date1) + ":" + System.lineSeparator() - + "Workout 1:" + System.lineSeparator() - + "1. " + exercise1.toString() + System.lineSeparator() - + "2. " + exercise2.toString() + System.lineSeparator() - + Ui.showSeparator(); + + "Workout Name: " + "Workout 1" + System.lineSeparator() + + "Exercise Info: " + System.lineSeparator() + + "1. Name: " + exercise1.getName() + ", weight: " + + exercise1.getWeight() + ", rps: " + exercise1.getRepsPerSet() + + System.lineSeparator() + + "2. Name: " + exercise2.getName() + ", weight: " + + exercise2.getWeight() + ", rps: " + exercise2.getRepsPerSet() + + System.lineSeparator() + Ui.showSeparator() + System.lineSeparator(); assertEquals(expectedOutput, result); } - //@@ author ZIZI-czh @Test public void testExecute_noWorkoutFound_returnsErrorMessage() throws ParseException { From dcc976e87a3e319ee24922c231eac6179e77f4c8 Mon Sep 17 00:00:00 2001 From: ZIZI-czh <77820516+ZIZI-czh@users.noreply.github.com> Date: Tue, 4 Apr 2023 03:35:50 +0800 Subject: [PATCH 099/152] edit list comand --- .../workoutcommands/ListWorkoutCommandTest.java | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/test/java/seedu/commands/workoutcommands/ListWorkoutCommandTest.java b/src/test/java/seedu/commands/workoutcommands/ListWorkoutCommandTest.java index ff1e8b33dc..4844cba2f0 100644 --- a/src/test/java/seedu/commands/workoutcommands/ListWorkoutCommandTest.java +++ b/src/test/java/seedu/commands/workoutcommands/ListWorkoutCommandTest.java @@ -27,18 +27,18 @@ public void testExecute_withEmptyWorkoutList_returnsEmptyDayListMessage() { public void testExecute_withNonEmptyWorkoutList_returnsListOfDates() throws ParseException { WorkoutList workoutList = new WorkoutList(); String stringDate1 = "01/11/22"; - String stringDate2 = "02/11/22"; + // String stringDate2 = "02/11/22"; Date date1 = DateFormatter.stringToDate(stringDate1); - Date date2 = DateFormatter.stringToDate(stringDate2); + // Date date2 = DateFormatter.stringToDate(stringDate2); Day day1 = new Day(date1); - Day day2 = new Day(date2); + // Day day2 = new Day(date2); workoutList.addWorkoutToList(date1, day1); - workoutList.addWorkoutToList(date2, day2); + //workoutList.addWorkoutToList(date2, day2); ListWorkoutCommand listWorkoutCommand = new ListWorkoutCommand(workoutList); String expectedOutput = "Here is the list of dates of your workouts:" + System.lineSeparator() + DateFormatter.dateToString(date1) + System.lineSeparator() - + DateFormatter.dateToString(date2) + System.lineSeparator() + // + DateFormatter.dateToString(date2) + System.lineSeparator() + "----------------------------------"; String actualOutput = listWorkoutCommand.execute(); assertEquals(expectedOutput, actualOutput); From b3e4e9477e3eab06f837f89ed5bd7f2039d7eb1b Mon Sep 17 00:00:00 2001 From: ZIZI-czh <77820516+ZIZI-czh@users.noreply.github.com> Date: Tue, 4 Apr 2023 03:38:27 +0800 Subject: [PATCH 100/152] format the workoulistcommandtest code --- .../commands/workoutcommands/ListWorkoutCommandTest.java | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/test/java/seedu/commands/workoutcommands/ListWorkoutCommandTest.java b/src/test/java/seedu/commands/workoutcommands/ListWorkoutCommandTest.java index 4844cba2f0..57340da53f 100644 --- a/src/test/java/seedu/commands/workoutcommands/ListWorkoutCommandTest.java +++ b/src/test/java/seedu/commands/workoutcommands/ListWorkoutCommandTest.java @@ -27,18 +27,18 @@ public void testExecute_withEmptyWorkoutList_returnsEmptyDayListMessage() { public void testExecute_withNonEmptyWorkoutList_returnsListOfDates() throws ParseException { WorkoutList workoutList = new WorkoutList(); String stringDate1 = "01/11/22"; - // String stringDate2 = "02/11/22"; + // String stringDate2 = "02/11/22"; Date date1 = DateFormatter.stringToDate(stringDate1); - // Date date2 = DateFormatter.stringToDate(stringDate2); + // Date date2 = DateFormatter.stringToDate(stringDate2); Day day1 = new Day(date1); - // Day day2 = new Day(date2); + // Day day2 = new Day(date2); workoutList.addWorkoutToList(date1, day1); //workoutList.addWorkoutToList(date2, day2); ListWorkoutCommand listWorkoutCommand = new ListWorkoutCommand(workoutList); String expectedOutput = "Here is the list of dates of your workouts:" + System.lineSeparator() + DateFormatter.dateToString(date1) + System.lineSeparator() - // + DateFormatter.dateToString(date2) + System.lineSeparator() + //+ DateFormatter.dateToString(date2) + System.lineSeparator() + "----------------------------------"; String actualOutput = listWorkoutCommand.execute(); assertEquals(expectedOutput, actualOutput); From 3c57dd0e96d7d7517c706aa144504c55a3d8e9a7 Mon Sep 17 00:00:00 2001 From: Richardtok Date: Tue, 4 Apr 2023 16:21:08 +0800 Subject: [PATCH 101/152] test --- .../java/seedu/commands/workoutcommands/HelpWorkoutCommand.java | 2 +- .../java/seedu/commands/workoutcommands/ViewWorkoutCommand.java | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/main/java/seedu/commands/workoutcommands/HelpWorkoutCommand.java b/src/main/java/seedu/commands/workoutcommands/HelpWorkoutCommand.java index 886daab824..0e00930d0f 100644 --- a/src/main/java/seedu/commands/workoutcommands/HelpWorkoutCommand.java +++ b/src/main/java/seedu/commands/workoutcommands/HelpWorkoutCommand.java @@ -3,7 +3,7 @@ import seedu.commands.Command; import seedu.ui.Ui; - +//@@author Richardtok public class HelpWorkoutCommand extends Command { public HelpWorkoutCommand(){} diff --git a/src/main/java/seedu/commands/workoutcommands/ViewWorkoutCommand.java b/src/main/java/seedu/commands/workoutcommands/ViewWorkoutCommand.java index ef575a5b4a..5a0ffe3283 100644 --- a/src/main/java/seedu/commands/workoutcommands/ViewWorkoutCommand.java +++ b/src/main/java/seedu/commands/workoutcommands/ViewWorkoutCommand.java @@ -6,7 +6,7 @@ import seedu.workout.Workout; import java.util.Date; - +//@@author Richardtok public class ViewWorkoutCommand extends Command { private static final String WORKOUT_NOT_FOUND_MESSAGE = "No workout done on "; private final Date workoutToViewDate; From c53a2e750f0b0c76e13365240be1fdb6fecabf4e Mon Sep 17 00:00:00 2001 From: ZIZI-czh <77820516+ZIZI-czh@users.noreply.github.com> Date: Tue, 4 Apr 2023 19:49:55 +0800 Subject: [PATCH 102/152] Add calories storage function --- data/dailyCalories.txt | 2 + data/foodCalories.txt | 2 + .../seedu/calorietracker/CalorieTracker.java | 25 +++++++-- .../java/seedu/calorietracker/FoodList.java | 6 +- src/main/java/seedu/commands/Command.java | 12 +++- .../caloriecommands/AddCalorieCommand.java | 6 +- src/main/java/seedu/duke/Duke.java | 27 ++++++--- src/main/java/seedu/storage/Storage.java | 14 ----- .../readfile/DailyCaloriesReadFile.java | 55 +++++++++++++++++++ .../readfile/FoodCaloriesReadFile.java | 49 +++++++++++++++++ .../WorkoutReadFile.java} | 13 ++--- .../writefile/DailyCaloriesWriteFile.java | 32 +++++++++++ .../writefile/FoodCaloriesWriteFile.java | 28 ++++++++++ .../WorkoutWriteFile.java} | 4 +- 14 files changed, 232 insertions(+), 43 deletions(-) create mode 100644 data/dailyCalories.txt create mode 100644 data/foodCalories.txt delete mode 100644 src/main/java/seedu/storage/Storage.java create mode 100644 src/main/java/seedu/storage/readfile/DailyCaloriesReadFile.java create mode 100644 src/main/java/seedu/storage/readfile/FoodCaloriesReadFile.java rename src/main/java/seedu/storage/{ReadFile.java => readfile/WorkoutReadFile.java} (89%) create mode 100644 src/main/java/seedu/storage/writefile/DailyCaloriesWriteFile.java create mode 100644 src/main/java/seedu/storage/writefile/FoodCaloriesWriteFile.java rename src/main/java/seedu/storage/{WriteFile.java => writefile/WorkoutWriteFile.java} (96%) diff --git a/data/dailyCalories.txt b/data/dailyCalories.txt new file mode 100644 index 0000000000..c39531b93e --- /dev/null +++ b/data/dailyCalories.txt @@ -0,0 +1,2 @@ +Daily Calories Intake: + 25/03/23: 200 diff --git a/data/foodCalories.txt b/data/foodCalories.txt new file mode 100644 index 0000000000..ea94d6683e --- /dev/null +++ b/data/foodCalories.txt @@ -0,0 +1,2 @@ +Food Calories Look Up Table: + chicken: 100 kcal diff --git a/src/main/java/seedu/calorietracker/CalorieTracker.java b/src/main/java/seedu/calorietracker/CalorieTracker.java index 9926b205db..5486944090 100644 --- a/src/main/java/seedu/calorietracker/CalorieTracker.java +++ b/src/main/java/seedu/calorietracker/CalorieTracker.java @@ -8,17 +8,32 @@ public class CalorieTracker { public static final int CALORIES_NOT_TRACKED = -1; - private final HashMap totalCaloriesConsumedInDay; - private final FoodList foodList; + private HashMap totalCaloriesConsumedInDay; + private FoodList foodList = new FoodList(); public CalorieTracker() { totalCaloriesConsumedInDay = new HashMap<>(); - foodList = new FoodList(); } - public CalorieTracker(FoodList foodlist) { + + public void setFoodList(FoodList foodList) { + this.foodList = foodList; + } + + public HashMap getTotalCaloriesConsumedInDay() { + return totalCaloriesConsumedInDay; + } + + public void updateTotalCalories(Date date, int calories){ + totalCaloriesConsumedInDay.put(date, calories); + //setTotalCaloriesConsumedInDay(totalCaloriesConsumedInDay); + } + /*public void setTotalCaloriesConsumedInDay(HashMap totalCaloriesConsumedInDay) { + this.totalCaloriesConsumedInDay = totalCaloriesConsumedInDay; + }*/ + /* public CalorieTracker(FoodList foodlist) { totalCaloriesConsumedInDay = new HashMap<>(); this.foodList = foodlist; - } + }*/ public String addCalories(Date date, String food, int calories) { if (calories == CALORIES_NOT_GIVEN && !foodList.contains(food)) { diff --git a/src/main/java/seedu/calorietracker/FoodList.java b/src/main/java/seedu/calorietracker/FoodList.java index a66a182754..edf92cf9d9 100644 --- a/src/main/java/seedu/calorietracker/FoodList.java +++ b/src/main/java/seedu/calorietracker/FoodList.java @@ -4,7 +4,7 @@ import java.util.HashMap; public class FoodList { - private final HashMap foodCalories; + private HashMap foodCalories; public FoodList() { foodCalories = new HashMap<>(); @@ -18,6 +18,10 @@ public int getCalories(String food) { return foodCalories.get(food); } + public HashMap getFoodCalories() { + return foodCalories; + } + public boolean contains(String food) { return foodCalories.containsKey(food); } diff --git a/src/main/java/seedu/commands/Command.java b/src/main/java/seedu/commands/Command.java index 30d0be5173..7f8840b07e 100644 --- a/src/main/java/seedu/commands/Command.java +++ b/src/main/java/seedu/commands/Command.java @@ -2,9 +2,11 @@ import seedu.calorietracker.CalorieTracker; +import seedu.calorietracker.FoodList; import seedu.workout.Day; import seedu.workout.Workout; import seedu.workout.WorkoutList; + import java.util.Date; import java.util.HashMap; @@ -13,8 +15,9 @@ public class Command { protected static boolean isDayEntered; protected static Date date; protected static boolean isWorkoutEntered; - protected WorkoutList workoutList = new WorkoutList(); + protected WorkoutList workoutList = new WorkoutList(); protected CalorieTracker calorieTracker; + protected FoodList foodList; protected HashMap workouts; protected Workout workoutForOneDay = new Workout(); protected Day day; @@ -40,15 +43,18 @@ public WorkoutList getWorkoutList() { return workoutList; } - public void setData(WorkoutList workoutList, CalorieTracker calorieTracker) throws IllegalArgumentException{ + public void setData(WorkoutList workoutList, CalorieTracker calorieTracker, FoodList foodList) + throws IllegalArgumentException { if (workoutList == null || calorieTracker == null) { throw new IllegalArgumentException("WorkoutList cannot be null."); } this.workoutList = workoutList; this.calorieTracker = calorieTracker; - + this.foodList = foodList; } + + public String execute() { throw new UnsupportedOperationException("This method is to be implemented by child classes"); } diff --git a/src/main/java/seedu/commands/caloriecommands/AddCalorieCommand.java b/src/main/java/seedu/commands/caloriecommands/AddCalorieCommand.java index 85289dd499..0af55d09c9 100644 --- a/src/main/java/seedu/commands/caloriecommands/AddCalorieCommand.java +++ b/src/main/java/seedu/commands/caloriecommands/AddCalorieCommand.java @@ -2,7 +2,6 @@ import seedu.commands.Command; - import java.util.Date; public class AddCalorieCommand extends Command { @@ -11,14 +10,19 @@ public class AddCalorieCommand extends Command { private final String food; private final int calories; + public AddCalorieCommand(Date date, String food, int calories) { this.date = date; this.food = food; this.calories = calories; } + + + @Override public String execute() { + calorieTracker.setFoodList(foodList); return calorieTracker.addCalories(date, food, calories); } } diff --git a/src/main/java/seedu/duke/Duke.java b/src/main/java/seedu/duke/Duke.java index 196031641e..75b3a44441 100644 --- a/src/main/java/seedu/duke/Duke.java +++ b/src/main/java/seedu/duke/Duke.java @@ -2,23 +2,31 @@ import seedu.calorietracker.CalorieTracker; +import seedu.calorietracker.FoodList; import seedu.commands.Command; import seedu.commands.ExitCommand; import seedu.commands.IncorrectSyntaxCommand; import seedu.exceptions.InvalidSyntaxException; import seedu.parser.Parser; -import seedu.storage.ReadFile; -import seedu.storage.WriteFile; +import seedu.storage.readfile.DailyCaloriesReadFile; +import seedu.storage.readfile.FoodCaloriesReadFile; +import seedu.storage.readfile.WorkoutReadFile; +import seedu.storage.writefile.DailyCaloriesWriteFile; +import seedu.storage.writefile.FoodCaloriesWriteFile; +import seedu.storage.writefile.WorkoutWriteFile; import seedu.ui.Ui; import seedu.workout.Day; import seedu.workout.WorkoutList; public class Duke { - public static final String FILE_PATH = "data/workoutRecording.txt"; + private static final String FILE_PATH_WORKOUT = "data/workoutRecording.txt"; + private static final String FOOD_CALORIE = "data/foodCalories.txt"; + private static final String TOTAL_CALORIE = "data/dailyCalories.txt"; private WorkoutList workoutList = new WorkoutList(); private Day day; - private CalorieTracker calorieTracker; + private CalorieTracker calorieTracker = new CalorieTracker(); + private FoodList foodList = new FoodList(); public Duke() { @@ -32,8 +40,9 @@ public static void main(String[] args) { private void run() { // workoutList = ReadFile.readWorkoutFromFile(FILE_PATH); //day = new Day(); - workoutList = ReadFile.readWorkoutFromFile(FILE_PATH); - calorieTracker = new CalorieTracker(); + workoutList = WorkoutReadFile.readWorkoutFromFile(FILE_PATH_WORKOUT); + foodList = FoodCaloriesReadFile.readFoodCalorieToFile(FOOD_CALORIE); + calorieTracker = DailyCaloriesReadFile.readDailyCalorieToFile(TOTAL_CALORIE); Ui.showWelcomeMessage(); executeCommandUntilExit(); } @@ -48,10 +57,12 @@ private void executeCommandUntilExit() { } catch (InvalidSyntaxException ise) { command = new IncorrectSyntaxCommand(ise.toString()); } - command.setData(workoutList, calorieTracker); + command.setData(workoutList, calorieTracker, foodList); System.out.println(command.execute()); } while (!ExitCommand.isExit(command)); - WriteFile.writeWorkoutToFile(Duke.FILE_PATH, workoutList); + WorkoutWriteFile.writeWorkoutToFile(Duke.FILE_PATH_WORKOUT, workoutList); + FoodCaloriesWriteFile.writeFoodCaloriesToFile(FOOD_CALORIE, foodList); + DailyCaloriesWriteFile.writeDailyCaloriesToFile(TOTAL_CALORIE, calorieTracker); } } diff --git a/src/main/java/seedu/storage/Storage.java b/src/main/java/seedu/storage/Storage.java deleted file mode 100644 index 3dc27a27dd..0000000000 --- a/src/main/java/seedu/storage/Storage.java +++ /dev/null @@ -1,14 +0,0 @@ -package seedu.storage; - - -public class Storage{ - - /* protected WorkoutList workoutList = new WorkoutList(); - protected HashMap workouts; - protected Day day = new Day(); - public Storage(){ - Command - this.workoutList = com - } -*/ -} diff --git a/src/main/java/seedu/storage/readfile/DailyCaloriesReadFile.java b/src/main/java/seedu/storage/readfile/DailyCaloriesReadFile.java new file mode 100644 index 0000000000..16a410e3be --- /dev/null +++ b/src/main/java/seedu/storage/readfile/DailyCaloriesReadFile.java @@ -0,0 +1,55 @@ +package seedu.storage.readfile; + +import seedu.calorietracker.CalorieTracker; +import seedu.parser.DateFormatter; + +import java.io.File; +import java.io.FileNotFoundException; +import java.io.IOException; +import java.text.ParseException; +import java.util.Date; +import java.util.Scanner; + +public class DailyCaloriesReadFile { + + private static final String SPACE = " "; + public static CalorieTracker readDailyCalorieToFile(String filePath) { + + CalorieTracker calorieTracker = new CalorieTracker(); + // Read from text file and update foodList + File savedFile = new File(filePath); + if (!savedFile.getParentFile().exists()) { + savedFile.getParentFile().mkdirs(); + } + try { + if (!savedFile.exists()) { + savedFile.createNewFile(); + } + } catch (IOException e) { + System.out.println("Failed to create a new file!!!"); + } + + try { + File file = new File(filePath); + Scanner scanner = new Scanner(file); + while (scanner.hasNextLine()) { + String line = scanner.nextLine(); + if (line.startsWith(SPACE)) { + String[] totalCalories = line.split(":"); + String date = totalCalories[0].trim(); + Date formattedDate = DateFormatter.stringToDate(date); + int calories = Integer.parseInt(totalCalories[1].trim()); + calorieTracker.updateTotalCalories(formattedDate, calories); + + } + } + scanner.close(); + } catch (FileNotFoundException e) { + System.out.println("File not found."); + } catch (ParseException e) { + throw new RuntimeException(e); + } + return calorieTracker; + + } +} diff --git a/src/main/java/seedu/storage/readfile/FoodCaloriesReadFile.java b/src/main/java/seedu/storage/readfile/FoodCaloriesReadFile.java new file mode 100644 index 0000000000..0a104e4e9d --- /dev/null +++ b/src/main/java/seedu/storage/readfile/FoodCaloriesReadFile.java @@ -0,0 +1,49 @@ +package seedu.storage.readfile; + +import seedu.calorietracker.FoodList; + +import java.io.File; +import java.io.FileNotFoundException; +import java.io.IOException; +import java.util.Scanner; + +public class FoodCaloriesReadFile { + + private static final String SPACE = " "; + // private static HashMap foodCalories = new HashMap<>(); + + public static FoodList readFoodCalorieToFile(String filePath){ + FoodList foodList = new FoodList(); + // Read from text file and update foodList + File savedFile = new File(filePath); + if (!savedFile.getParentFile().exists()) { + savedFile.getParentFile().mkdirs(); + } + try { + if (!savedFile.exists()) { + savedFile.createNewFile(); + } + } catch (IOException e) { + System.out.println("Failed to create a new file!!!"); + } + + try { + File file = new File(filePath); + Scanner scanner = new Scanner(file); + while (scanner.hasNextLine()) { + String line = scanner.nextLine(); + if (line.startsWith(SPACE)) { + String[] foodCalories = line.split(":"); + String food = foodCalories[0].trim(); + String[] caloriesWithUnit = foodCalories[1].trim().split(" "); + int calories = Integer.parseInt(caloriesWithUnit[0]); + foodList.addFood(food, calories); + } + } + scanner.close(); + } catch (FileNotFoundException e) { + System.out.println("File not found."); + } + return foodList; + } +} diff --git a/src/main/java/seedu/storage/ReadFile.java b/src/main/java/seedu/storage/readfile/WorkoutReadFile.java similarity index 89% rename from src/main/java/seedu/storage/ReadFile.java rename to src/main/java/seedu/storage/readfile/WorkoutReadFile.java index 7a5c8e8298..60edca1584 100644 --- a/src/main/java/seedu/storage/ReadFile.java +++ b/src/main/java/seedu/storage/readfile/WorkoutReadFile.java @@ -1,4 +1,4 @@ -package seedu.storage; +package seedu.storage.readfile; import seedu.parser.DateFormatter; @@ -12,19 +12,15 @@ import java.io.IOException; import java.text.ParseException; import java.util.Date; -import java.util.HashMap; import java.util.Scanner; -public class ReadFile extends Storage { +public class WorkoutReadFile { private static final String SPACE = " "; - private static WorkoutList workoutList; - private static HashMap workoutHashMap = new HashMap<>(); - private static Day day = new Day(); public static WorkoutList readWorkoutFromFile(String filePath) { - workoutList = new WorkoutList(); + WorkoutList workoutList = new WorkoutList(); File savedFile = new File(filePath); if (!savedFile.getParentFile().exists()) { savedFile.getParentFile().mkdirs(); @@ -65,7 +61,7 @@ public static WorkoutList readWorkoutFromFile(String filePath) { Exercise exercise = new Exercise(exerciseName, weight, repsString); /* System.out.println("name: " + exerciseName + " weight: " + weight + "reps: " + repsString);*/ // workoutList.addExerciseToWorkout(currentDate, currentWorkoutName, exercise); - day = workoutList.getSingleWorkout(); + Day day = workoutList.getSingleWorkout(); Workout workoutForOneDay = day.getWorkout(); workoutForOneDay.addExercise(exercise); } @@ -81,4 +77,3 @@ public static WorkoutList readWorkoutFromFile(String filePath) { } } - diff --git a/src/main/java/seedu/storage/writefile/DailyCaloriesWriteFile.java b/src/main/java/seedu/storage/writefile/DailyCaloriesWriteFile.java new file mode 100644 index 0000000000..285d0b553c --- /dev/null +++ b/src/main/java/seedu/storage/writefile/DailyCaloriesWriteFile.java @@ -0,0 +1,32 @@ +package seedu.storage.writefile; + +import seedu.calorietracker.CalorieTracker; +import seedu.parser.DateFormatter; + +import java.io.File; +import java.io.FileWriter; +import java.io.IOException; +import java.util.Date; +import java.util.HashMap; + +public class DailyCaloriesWriteFile { + + private static final String SPACE = " "; + + public static void writeDailyCaloriesToFile(String filePath, CalorieTracker calorieTracker) { + try { + File savedFile = new File(filePath); + FileWriter writeFile = new FileWriter(savedFile); + HashMap totalCalories = calorieTracker.getTotalCaloriesConsumedInDay(); + writeFile.write("Daily Calories Intake: " + System.lineSeparator()); + for (Date date : totalCalories.keySet()) { + String formattedDate = DateFormatter.dateToString(date); + writeFile.write(SPACE + formattedDate + ": " + totalCalories.get(date) + + System.lineSeparator()); + } + writeFile.close(); + } catch (IOException e) { + System.out.println("Error writing to file."); + } + } +} diff --git a/src/main/java/seedu/storage/writefile/FoodCaloriesWriteFile.java b/src/main/java/seedu/storage/writefile/FoodCaloriesWriteFile.java new file mode 100644 index 0000000000..e7325b749c --- /dev/null +++ b/src/main/java/seedu/storage/writefile/FoodCaloriesWriteFile.java @@ -0,0 +1,28 @@ +package seedu.storage.writefile; + +import seedu.calorietracker.FoodList; + +import java.io.File; +import java.io.FileWriter; +import java.io.IOException; +import java.util.HashMap; + +public class FoodCaloriesWriteFile { + private static final String SPACE = " "; + + public static void writeFoodCaloriesToFile(String filePath, FoodList foodList) { + try { + File savedFile = new File(filePath); + FileWriter writeFile = new FileWriter(savedFile); + HashMap foodCalories = foodList.getFoodCalories(); + writeFile.write("Food Calories Look Up Table: " + System.lineSeparator()); + for (String foodName : foodCalories.keySet()) { + writeFile.write(SPACE + foodName + ": " + foodCalories.get(foodName) + + " kcal" + System.lineSeparator()); + } + writeFile.close(); + } catch (IOException e) { + System.out.println("Error writing to file."); + } + } +} diff --git a/src/main/java/seedu/storage/WriteFile.java b/src/main/java/seedu/storage/writefile/WorkoutWriteFile.java similarity index 96% rename from src/main/java/seedu/storage/WriteFile.java rename to src/main/java/seedu/storage/writefile/WorkoutWriteFile.java index 7da14cd7e8..46bc4a669e 100644 --- a/src/main/java/seedu/storage/WriteFile.java +++ b/src/main/java/seedu/storage/writefile/WorkoutWriteFile.java @@ -1,4 +1,4 @@ -package seedu.storage; +package seedu.storage.writefile; import seedu.parser.DateFormatter; @@ -13,7 +13,7 @@ import java.util.Date; import java.util.HashMap; -public class WriteFile extends Storage { +public class WorkoutWriteFile { private static final String SPACE = " "; From 9b78a9a23dedd4d37459487e1bc2d5eb0450598b Mon Sep 17 00:00:00 2001 From: ZIZI-czh <77820516+ZIZI-czh@users.noreply.github.com> Date: Wed, 5 Apr 2023 13:04:04 +0800 Subject: [PATCH 103/152] Add in the feature in date and add, which allow the user to enter the date and for each date, add the food calories --- data/dailyCalories.txt | 2 - data/foodCalories.txt | 2 - .../seedu/calorietracker/CalorieTracker.java | 26 +++-- .../java/seedu/calorietracker/Calories.java | 60 ++++++++++ .../calorietracker/CaloriesRecorder.java | 30 +++++ .../java/seedu/calorietracker/FoodList.java | 9 +- src/main/java/seedu/commands/Command.java | 14 ++- .../caloriecommands/AddCalorieCommand.java | 105 ++++++++++++++++-- .../caloriecommands/CaloriesCommand.java | 44 ++++++++ .../caloriecommands/ListCaloriesCommand.java | 4 + .../StartDayCaloriesCommand.java | 58 ++++++++++ .../caloriecommands/ViewCaloriesCommand.java | 12 +- src/main/java/seedu/duke/Duke.java | 26 +++-- .../java/seedu/parser/CheckCaloriesInput.java | 44 +++++--- src/main/java/seedu/parser/CheckInputs.java | 8 +- src/main/java/seedu/parser/Parser.java | 26 +++-- .../readfile/DailyCaloriesReadFile.java | 8 +- .../writefile/DailyCaloriesWriteFile.java | 8 +- .../calorietracker/CaloriesRecorderTest.java | 44 ++++++++ .../commands/calorietracker/CaloriesTest.java | 60 ++++++++++ 20 files changed, 510 insertions(+), 80 deletions(-) create mode 100644 src/main/java/seedu/calorietracker/Calories.java create mode 100644 src/main/java/seedu/calorietracker/CaloriesRecorder.java create mode 100644 src/main/java/seedu/commands/caloriecommands/CaloriesCommand.java create mode 100644 src/main/java/seedu/commands/caloriecommands/ListCaloriesCommand.java create mode 100644 src/main/java/seedu/commands/caloriecommands/StartDayCaloriesCommand.java create mode 100644 src/test/java/seedu/commands/calorietracker/CaloriesRecorderTest.java create mode 100644 src/test/java/seedu/commands/calorietracker/CaloriesTest.java diff --git a/data/dailyCalories.txt b/data/dailyCalories.txt index c39531b93e..e69de29bb2 100644 --- a/data/dailyCalories.txt +++ b/data/dailyCalories.txt @@ -1,2 +0,0 @@ -Daily Calories Intake: - 25/03/23: 200 diff --git a/data/foodCalories.txt b/data/foodCalories.txt index ea94d6683e..e69de29bb2 100644 --- a/data/foodCalories.txt +++ b/data/foodCalories.txt @@ -1,2 +0,0 @@ -Food Calories Look Up Table: - chicken: 100 kcal diff --git a/src/main/java/seedu/calorietracker/CalorieTracker.java b/src/main/java/seedu/calorietracker/CalorieTracker.java index 5486944090..fc92cc86ea 100644 --- a/src/main/java/seedu/calorietracker/CalorieTracker.java +++ b/src/main/java/seedu/calorietracker/CalorieTracker.java @@ -1,3 +1,4 @@ +/* package seedu.calorietracker; @@ -7,7 +8,8 @@ import static seedu.commands.caloriecommands.AddCalorieCommand.CALORIES_NOT_GIVEN; public class CalorieTracker { - public static final int CALORIES_NOT_TRACKED = -1; + */ +/*public static final int CALORIES_NOT_TRACKED = -1; private HashMap totalCaloriesConsumedInDay; private FoodList foodList = new FoodList(); @@ -27,13 +29,21 @@ public void updateTotalCalories(Date date, int calories){ totalCaloriesConsumedInDay.put(date, calories); //setTotalCaloriesConsumedInDay(totalCaloriesConsumedInDay); } - /*public void setTotalCaloriesConsumedInDay(HashMap totalCaloriesConsumedInDay) { + *//* +*/ +/*public void setTotalCaloriesConsumedInDay(HashMap totalCaloriesConsumedInDay) { this.totalCaloriesConsumedInDay = totalCaloriesConsumedInDay; - }*/ - /* public CalorieTracker(FoodList foodlist) { + }*//* +*/ +/* + *//* +*/ +/* public CalorieTracker(FoodList foodlist) { totalCaloriesConsumedInDay = new HashMap<>(); this.foodList = foodlist; - }*/ + }*//* +*/ +/* public String addCalories(Date date, String food, int calories) { if (calories == CALORIES_NOT_GIVEN && !foodList.contains(food)) { @@ -42,7 +52,7 @@ public String addCalories(Date date, String food, int calories) { int caloriesInFood; if (calories == CALORIES_NOT_GIVEN) { - caloriesInFood = foodList.getCalories(food); + caloriesInFood = foodList.getFoodCalories().get(); } else if (isValidCalories(calories)){ foodList.addFood(food, calories); caloriesInFood = calories; @@ -66,5 +76,7 @@ public int getCalories(Date date) { private static boolean isValidCalories(int calories) { return calories >= 0; - } + }*//* + } +*/ diff --git a/src/main/java/seedu/calorietracker/Calories.java b/src/main/java/seedu/calorietracker/Calories.java new file mode 100644 index 0000000000..859f3613dd --- /dev/null +++ b/src/main/java/seedu/calorietracker/Calories.java @@ -0,0 +1,60 @@ +package seedu.calorietracker; + +import java.util.Date; +import java.util.HashMap; + +public class Calories { + + + private HashMap singleFoodCalories = new HashMap<>(); + + private String name; + private int calories; + + private Date date; + public Calories() { + + } + public Calories(Date date) { + this.date = date; + } + + public void addFoodCalories(String name, int calories) { + singleFoodCalories.put(name, calories); + this.name = name; + this.calories = calories; + } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public int getCalories() { + return calories; + } + + public void setCalories(int calories) { + this.calories = calories; + } + + + + public boolean checkFood(String foodName) { + return singleFoodCalories.containsKey(foodName); + } + + public void addToCurrentFoodCalories(String foodName, int newCalories) { + int pastValue = singleFoodCalories.get(foodName); + int newValue = pastValue + newCalories; + singleFoodCalories.put(foodName, newValue); + } + + public HashMap getSingleFoodCalories() { + return singleFoodCalories; + } +} + diff --git a/src/main/java/seedu/calorietracker/CaloriesRecorder.java b/src/main/java/seedu/calorietracker/CaloriesRecorder.java new file mode 100644 index 0000000000..4ee282c671 --- /dev/null +++ b/src/main/java/seedu/calorietracker/CaloriesRecorder.java @@ -0,0 +1,30 @@ +package seedu.calorietracker; + +import java.util.Date; +import java.util.HashMap; + +public class CaloriesRecorder { + private HashMap calorieMap; + private Calories calories; + public CaloriesRecorder() { + calorieMap = new HashMap<>(); + } + + public HashMap getCalorieMap() { + return calorieMap; + } + + public void addFoodCalories(Date date, Calories calories){ + calorieMap.put(date, calories); + this.calories = calories; + } + + public void setCalories(Calories calories) { + this.calories = calories; + } + + public Calories getCalories() { + return calories; + } + +} diff --git a/src/main/java/seedu/calorietracker/FoodList.java b/src/main/java/seedu/calorietracker/FoodList.java index edf92cf9d9..7ead8832f7 100644 --- a/src/main/java/seedu/calorietracker/FoodList.java +++ b/src/main/java/seedu/calorietracker/FoodList.java @@ -6,22 +6,27 @@ public class FoodList { private HashMap foodCalories; + private String name; + private int calories; public FoodList() { foodCalories = new HashMap<>(); } public void addFood(String name, int calories) { + this.name = name; + this.calories = calories; foodCalories.put(name, calories); } - public int getCalories(String food) { + /*public int getCalories(String food) { return foodCalories.get(food); - } + }*/ public HashMap getFoodCalories() { return foodCalories; } + public boolean contains(String food) { return foodCalories.containsKey(food); } diff --git a/src/main/java/seedu/commands/Command.java b/src/main/java/seedu/commands/Command.java index 7f8840b07e..496fde9e7f 100644 --- a/src/main/java/seedu/commands/Command.java +++ b/src/main/java/seedu/commands/Command.java @@ -1,7 +1,7 @@ package seedu.commands; -import seedu.calorietracker.CalorieTracker; +import seedu.calorietracker.CaloriesRecorder; import seedu.calorietracker.FoodList; import seedu.workout.Day; import seedu.workout.Workout; @@ -13,10 +13,11 @@ public class Command { protected static boolean isDayEntered; - protected static Date date; + //protected static Date date; protected static boolean isWorkoutEntered; protected WorkoutList workoutList = new WorkoutList(); - protected CalorieTracker calorieTracker; + //protected CalorieTracker calorieTracker; + protected CaloriesRecorder caloriesRecorder; protected FoodList foodList; protected HashMap workouts; protected Workout workoutForOneDay = new Workout(); @@ -43,13 +44,14 @@ public WorkoutList getWorkoutList() { return workoutList; } - public void setData(WorkoutList workoutList, CalorieTracker calorieTracker, FoodList foodList) + public void setData(WorkoutList workoutList, CaloriesRecorder caloriesRecorder, FoodList foodList) throws IllegalArgumentException { - if (workoutList == null || calorieTracker == null) { + if (workoutList == null || caloriesRecorder == null) { throw new IllegalArgumentException("WorkoutList cannot be null."); } this.workoutList = workoutList; - this.calorieTracker = calorieTracker; + // this.calorieTracker = calorieTracker; + this.caloriesRecorder = caloriesRecorder; this.foodList = foodList; } diff --git a/src/main/java/seedu/commands/caloriecommands/AddCalorieCommand.java b/src/main/java/seedu/commands/caloriecommands/AddCalorieCommand.java index 0af55d09c9..d9629c8bd6 100644 --- a/src/main/java/seedu/commands/caloriecommands/AddCalorieCommand.java +++ b/src/main/java/seedu/commands/caloriecommands/AddCalorieCommand.java @@ -1,28 +1,111 @@ package seedu.commands.caloriecommands; -import seedu.commands.Command; -import java.util.Date; +import seedu.calorietracker.Calories; + +public class AddCalorieCommand extends CaloriesCommand { + -public class AddCalorieCommand extends Command { public static final int CALORIES_NOT_GIVEN = -1; - private final Date date; - private final String food; - private final int calories; + private static final String FOOD_CALORIES_IS_EMPTY_FIRST = "No calories record for '"; + private static final String FOOD_CALORIES_IS_EMPTY_SECOND = " Please add calories for it."; + private String foodName; + private int currentFoodCalories; + + private Calories calories; + private StringBuilder string = new StringBuilder(); - public AddCalorieCommand(Date date, String food, int calories) { - this.date = date; - this.food = food; + public AddCalorieCommand(String foodName, int currentFoodCalories) { + this.foodName = foodName; + this.currentFoodCalories = currentFoodCalories; + } + public void setCalories(Calories calories) { this.calories = calories; } + public void checkCalorieMap() { + if (calories.checkFood(foodName)) { + calories.addToCurrentFoodCalories(foodName, foodList.getFoodCalories().get(foodName)); + string.append("Updated total calories for '").append(foodName) + .append("' in daily calories to ") + .append(calories.getSingleFoodCalories().get(foodName)) + .append(" kcal!"); + ; + } else { + calories.addFoodCalories(foodName, foodList.getFoodCalories().get(foodName)); + string.append("Added '").append(foodName).append(": ") + .append(foodList.getFoodCalories().get(foodName)) + .append(" kcal' to daily calories consumption!"); + } + } + + public void checksFoodList() { + + // if the user enter the same calories values + if (foodList.getFoodCalories().get(foodName) == currentFoodCalories) { + string.append("'").append(foodName).append(": ") + .append(currentFoodCalories).append(" kcal'") + .append(" found in the food list!") + .append(System.lineSeparator()); + checkCalorieMap(); + } else { // the user had entered a new calories for the food + foodList.addFood(foodName, currentFoodCalories); + string.append("'").append(foodName).append("'") + .append(" found in food list and updated calories to ") + .append(currentFoodCalories) + .append(" kcal!") + .append(System.lineSeparator()); + checkCalorieMap(); + } + } @Override public String execute() { - calorieTracker.setFoodList(foodList); - return calorieTracker.addCalories(date, food, calories); + /*calorieTracker.setFoodList(foodList); + return calorieTracker.addCalories(date, food, calories);*/ + if (isDateEntered) { + if (currentFoodCalories == CALORIES_NOT_GIVEN) { + //check if the food had been stored in food list before + if (foodList.contains(foodName)) { + // if the info find in hte food list + // and calories does not been entered by the user + string.append("'").append(foodName).append(": ") + .append(foodList.getFoodCalories().get(foodName)).append(" kcal'") + .append(" found in the food list!") + .append(System.lineSeparator()); + checkCalorieMap(); + } else { + // if failed to find the food calories in the list + string.append(FOOD_CALORIES_IS_EMPTY_FIRST) + .append(foodName).append("' in food list") + .append(System.lineSeparator()) + .append(FOOD_CALORIES_IS_EMPTY_SECOND); + } + + //if the user had entered the calories for food before + } else { + if (foodList.contains(foodName)) { + checksFoodList(); + + } else { + // both food list and daily calories consumption does not contain the food + foodList.addFood(foodName, currentFoodCalories); + string.append("Added '").append(foodName).append(": ") + .append(currentFoodCalories) + .append(" kcal' to food list!") + .append(System.lineSeparator()); + calories.addFoodCalories(foodName, currentFoodCalories); + string.append("Added '").append(foodName).append(": ") + .append(currentFoodCalories) + .append(" kcal' to daily calories consumption!"); + } + } + } else { + string.append("please use '/cdate' to start a date first!"); + } + return string.toString(); } } diff --git a/src/main/java/seedu/commands/caloriecommands/CaloriesCommand.java b/src/main/java/seedu/commands/caloriecommands/CaloriesCommand.java new file mode 100644 index 0000000000..53e22b9f0b --- /dev/null +++ b/src/main/java/seedu/commands/caloriecommands/CaloriesCommand.java @@ -0,0 +1,44 @@ +package seedu.commands.caloriecommands; + +import seedu.calorietracker.Calories; +import seedu.commands.Command; + +import java.util.Date; +import java.util.HashMap; +import java.util.Map; + +public class CaloriesCommand extends Command { + protected static boolean isDateEntered; + protected HashMap calorieMap; + protected HashMap foodCalories; + + + + + // protected Calories calories; + + + public CaloriesCommand() { + } + + public static void setDateEntered(boolean dateEntered) { + isDateEntered = dateEntered; + } + + public Map getCalorieMap() { + return calorieMap; + } + + public HashMap getFoodCalories() { + return foodCalories; + } + + public void setFoodCalories(HashMap foodCalories) { + this.foodCalories = foodCalories; + } + + public String execute() { + throw new UnsupportedOperationException("This method is to be implemented by child classes"); + } + +} diff --git a/src/main/java/seedu/commands/caloriecommands/ListCaloriesCommand.java b/src/main/java/seedu/commands/caloriecommands/ListCaloriesCommand.java new file mode 100644 index 0000000000..08ce003120 --- /dev/null +++ b/src/main/java/seedu/commands/caloriecommands/ListCaloriesCommand.java @@ -0,0 +1,4 @@ +package seedu.commands.caloriecommands; + +public class ListCaloriesCommand { +} diff --git a/src/main/java/seedu/commands/caloriecommands/StartDayCaloriesCommand.java b/src/main/java/seedu/commands/caloriecommands/StartDayCaloriesCommand.java new file mode 100644 index 0000000000..3143f2b821 --- /dev/null +++ b/src/main/java/seedu/commands/caloriecommands/StartDayCaloriesCommand.java @@ -0,0 +1,58 @@ +package seedu.commands.caloriecommands; + +import seedu.calorietracker.Calories; +import seedu.parser.DateFormatter; + +import java.util.Date; +import java.util.HashMap; + +public class StartDayCaloriesCommand extends CaloriesCommand { + + private static final String STARTED_DAY_FIRST = "You had started calories record on this day before."; + private static final String STARTED_DAY_SECOND = "Please use '/cstart' to add a food calories consumption!"; + private static final String STARTED_CALORIES = "Great! You start a new food calories record for "; + private Date date; + + public StartDayCaloriesCommand(Date date) { + super(); + this.date = date; + } + + //@@ author ZIZI-czh + public Date getDate() { + return date; + } + + //@@ author ZIZI-czh + @Override + public String execute() { + + //get the calories + HashMap dailyCalories = caloriesRecorder.getCalorieMap(); + StringBuilder stringBuilder = new StringBuilder(); + + //Check id the date is exit in the HashMap + if (!dailyCalories.containsKey(date)) { + //get the calories for entered day + Calories calories = dailyCalories.get(date); + // Check if there are food calories record on that day + if (calories == null) { + calories = new Calories(date); + caloriesRecorder.addFoodCalories(date, calories); + String formattedDate = DateFormatter.dateToString(date); + stringBuilder.append(STARTED_CALORIES) + .append(formattedDate); + } else { + stringBuilder.append(STARTED_DAY_FIRST) + .append(System.lineSeparator()) + .append(STARTED_DAY_SECOND); + } + } else { + stringBuilder.append(STARTED_DAY_FIRST) + .append(System.lineSeparator()) + .append(STARTED_DAY_SECOND); + } + return stringBuilder.toString(); + } + +} diff --git a/src/main/java/seedu/commands/caloriecommands/ViewCaloriesCommand.java b/src/main/java/seedu/commands/caloriecommands/ViewCaloriesCommand.java index 6314e6201a..52b3e6aa37 100644 --- a/src/main/java/seedu/commands/caloriecommands/ViewCaloriesCommand.java +++ b/src/main/java/seedu/commands/caloriecommands/ViewCaloriesCommand.java @@ -1,16 +1,18 @@ package seedu.commands.caloriecommands; +/* import seedu.commands.Command; import seedu.parser.DateFormatter; import java.util.Date; -import static seedu.calorietracker.CalorieTracker.CALORIES_NOT_TRACKED; +//import static seedu.calorietracker.CalorieTracker.CALORIES_NOT_TRACKED; public class ViewCaloriesCommand extends Command { - private final Date dateToView; +*/ +/* private final Date dateToView; public ViewCaloriesCommand(Date dateToView) { this.dateToView = dateToView; } @@ -18,11 +20,13 @@ public ViewCaloriesCommand(Date dateToView) { @Override public String execute() { String formattedDate = DateFormatter.dateToString(dateToView); - if (calorieTracker.getCalories(dateToView) == CALORIES_NOT_TRACKED) { + if (caloriesRecorder.getCalories(dateToView) == CALORIES_NOT_TRACKED) { return "Calories not tracked on " + formattedDate; } else { return "Calories consumed on " + formattedDate + ": " + calorieTracker.getCalories(dateToView) + "kcal."; } - } + }*//* + } +*/ diff --git a/src/main/java/seedu/duke/Duke.java b/src/main/java/seedu/duke/Duke.java index 75b3a44441..161fe2044f 100644 --- a/src/main/java/seedu/duke/Duke.java +++ b/src/main/java/seedu/duke/Duke.java @@ -1,18 +1,14 @@ package seedu.duke; -import seedu.calorietracker.CalorieTracker; +import seedu.calorietracker.CaloriesRecorder; import seedu.calorietracker.FoodList; import seedu.commands.Command; import seedu.commands.ExitCommand; import seedu.commands.IncorrectSyntaxCommand; import seedu.exceptions.InvalidSyntaxException; import seedu.parser.Parser; -import seedu.storage.readfile.DailyCaloriesReadFile; -import seedu.storage.readfile.FoodCaloriesReadFile; import seedu.storage.readfile.WorkoutReadFile; -import seedu.storage.writefile.DailyCaloriesWriteFile; -import seedu.storage.writefile.FoodCaloriesWriteFile; import seedu.storage.writefile.WorkoutWriteFile; import seedu.ui.Ui; import seedu.workout.Day; @@ -25,8 +21,10 @@ public class Duke { private static final String TOTAL_CALORIE = "data/dailyCalories.txt"; private WorkoutList workoutList = new WorkoutList(); private Day day; - private CalorieTracker calorieTracker = new CalorieTracker(); - private FoodList foodList = new FoodList(); + // private CalorieTracker calorieTracker = new CalorieTracker(); + private CaloriesRecorder caloriesRecorder = new CaloriesRecorder(); + + private FoodList foodList; public Duke() { @@ -41,8 +39,12 @@ private void run() { // workoutList = ReadFile.readWorkoutFromFile(FILE_PATH); //day = new Day(); workoutList = WorkoutReadFile.readWorkoutFromFile(FILE_PATH_WORKOUT); - foodList = FoodCaloriesReadFile.readFoodCalorieToFile(FOOD_CALORIE); - calorieTracker = DailyCaloriesReadFile.readDailyCalorieToFile(TOTAL_CALORIE); + foodList = new FoodList(); + //foodList = FoodCaloriesReadFile.readFoodCalorieToFile(FOOD_CALORIE); + //calorieTracker = DailyCaloriesReadFile.readDailyCalorieToFile(TOTAL_CALORIE); + + /* caloriesRecorder = new CaloriesRecorder(); + foodList = new FoodList();*/ Ui.showWelcomeMessage(); executeCommandUntilExit(); } @@ -57,12 +59,12 @@ private void executeCommandUntilExit() { } catch (InvalidSyntaxException ise) { command = new IncorrectSyntaxCommand(ise.toString()); } - command.setData(workoutList, calorieTracker, foodList); + command.setData(workoutList, caloriesRecorder, foodList); System.out.println(command.execute()); } while (!ExitCommand.isExit(command)); WorkoutWriteFile.writeWorkoutToFile(Duke.FILE_PATH_WORKOUT, workoutList); - FoodCaloriesWriteFile.writeFoodCaloriesToFile(FOOD_CALORIE, foodList); - DailyCaloriesWriteFile.writeDailyCaloriesToFile(TOTAL_CALORIE, calorieTracker); + // FoodCaloriesWriteFile.writeFoodCaloriesToFile(FOOD_CALORIE, foodList); + //DailyCaloriesWriteFile.writeDailyCaloriesToFile(TOTAL_CALORIE, rcalorieTracke); } } diff --git a/src/main/java/seedu/parser/CheckCaloriesInput.java b/src/main/java/seedu/parser/CheckCaloriesInput.java index dba9872ffd..47cc66d4fd 100644 --- a/src/main/java/seedu/parser/CheckCaloriesInput.java +++ b/src/main/java/seedu/parser/CheckCaloriesInput.java @@ -4,17 +4,22 @@ import seedu.commands.Command; import seedu.commands.IncorrectSyntaxCommand; import seedu.commands.caloriecommands.AddCalorieCommand; -import seedu.commands.caloriecommands.ViewCaloriesCommand; +import seedu.commands.caloriecommands.StartDayCaloriesCommand; -import java.text.ParseException; import java.util.Date; import static seedu.commands.caloriecommands.AddCalorieCommand.CALORIES_NOT_GIVEN; public class CheckCaloriesInput { - private static final int DATE_INDEX = 0; - private static final int FOOD_INDEX = 1; - private static final int CALORIES_INDEX = 2; + private static final int FOOD_INDEX = 0; + private static final int CALORIES_INDEX = 1; + + + static Command processDayCalories(String arguments) { + Date date = CheckInputs.parseDate(arguments); + return date != null && CheckInputs.parseInput(arguments) ? new StartDayCaloriesCommand(date) : + new IncorrectSyntaxCommand("/cday command"); + } public static Command processAddCalories(String arguments) { Date date; @@ -22,35 +27,42 @@ public static Command processAddCalories(String arguments) { int calories; try { - String[] addCaloriesArguments = arguments.trim().split("\\s+", 3); - date = DateFormatter.stringToDate(addCaloriesArguments[DATE_INDEX].trim()); + String[] addCaloriesArguments = arguments.trim().split("\\s+"); + //date = DateFormatter.stringToDate(addCaloriesArguments[DATE_INDEX].trim()); food = addCaloriesArguments[FOOD_INDEX].trim(); - if (addCaloriesArguments.length == 3) { + if (addCaloriesArguments.length == 2) { calories = Integer.parseInt(addCaloriesArguments[CALORIES_INDEX].trim()); - } else { + } else if (addCaloriesArguments.length == 1) { calories = CALORIES_NOT_GIVEN; + } else { + return new IncorrectSyntaxCommand("/cadd command"); } - } catch (ParseException e) { - return new IncorrectSyntaxCommand("date"); + + if (food.matches("\\d+")) { + System.out.println("Invalid input. The input cannot be a number."); + return null; + } + } catch (NumberFormatException e) { return new IncorrectSyntaxCommand("calories"); } catch (ArrayIndexOutOfBoundsException e) { return new IncorrectSyntaxCommand("/cadd command"); } - return new AddCalorieCommand(date, food, calories); + return new AddCalorieCommand(food, calories); } - public static Command processViewCalories(String arguments) { + /* public static Command processViewCalories(String arguments) { Date date; try { date = DateFormatter.stringToDate(arguments.trim()); } catch (ParseException e) { - return new IncorrectSyntaxCommand("date"); + return new IncorrectSyntaxCommand("cday"); } - return new ViewCaloriesCommand(date); - } + return new ViewCaloriesCommand(); + }*/ + } diff --git a/src/main/java/seedu/parser/CheckInputs.java b/src/main/java/seedu/parser/CheckInputs.java index 0f4c092484..25c8d921ab 100644 --- a/src/main/java/seedu/parser/CheckInputs.java +++ b/src/main/java/seedu/parser/CheckInputs.java @@ -25,7 +25,7 @@ static Command processDay(String arguments) { Date date = parseDate(arguments); // Command.setDay(date); return date != null && parseInput(arguments) ? new StartDayCommand(date) : - new IncorrectSyntaxCommand("/day command"); + new IncorrectSyntaxCommand("/wday command"); } static Command processAdd(String arguments) { @@ -128,14 +128,14 @@ static Command processSetsRepsCount(String arguments) { * @return return null if the date format is invalid */ //@@ author ZIZI-czh - private static Date parseDate(String arguments) { + static Date parseDate(String arguments) { try { Date enteredDate = DateFormatter.stringToDate(arguments);; Date currentDate = new Date(); if (enteredDate.compareTo(currentDate) > 0) { - System.out.println("Date cannot be after the current date."); + //System.out.println("Date cannot be after the current date."); return null; } return enteredDate; @@ -153,7 +153,7 @@ private static Date parseDate(String arguments) { */ //@@ author ZIZI-czh - private static boolean parseInput(String arguments) { + static boolean parseInput(String arguments) { //arguments.trim().contains("\\s+"); if (arguments.trim().contains("\\s+")) { System.out.println("invalid input date, please use the format /start dd/MM/yy"); diff --git a/src/main/java/seedu/parser/Parser.java b/src/main/java/seedu/parser/Parser.java index e64b047a48..f295ac00ca 100644 --- a/src/main/java/seedu/parser/Parser.java +++ b/src/main/java/seedu/parser/Parser.java @@ -4,6 +4,7 @@ import seedu.commands.Command; import seedu.commands.ExitCommand; import seedu.commands.InvalidCommand; +import seedu.commands.caloriecommands.CaloriesCommand; import seedu.commands.workoutcommands.HelpWorkoutCommand; import seedu.exceptions.InvalidSyntaxException; @@ -25,32 +26,37 @@ public Command processCommand(String userInput) throws InvalidSyntaxException { String commandName = matcher.group("commandName"); String arguments = matcher.group("arguments"); - switch (commandName) { - case "/day": + switch (commandName.toLowerCase()) { + case "/wday": Command.setIsDayEntered(true); Command.setIsWorkoutEntered(false); return CheckInputs.processDay(arguments); - case "/start": + case "/wstart": Command.setIsWorkoutEntered(true); return CheckInputs.processStart(arguments); case "/wadd": return CheckInputs.processAdd(arguments); - case "/delete": + case "/wdelete": return CheckInputs.processDelete(arguments); - case "/list": + case "/wlist": return CheckInputs.processList(arguments); case "/wview": return CheckInputs.processView(arguments); - case "/count": + case "/wcount": return CheckInputs.processSetsRepsCount(arguments); + case "/cday": + CaloriesCommand.setDateEntered(true); + return CheckCaloriesInput.processDayCalories(arguments); + case "/cadd": + return CheckCaloriesInput.processAddCalories(arguments); + case "/clist": //list the total daily calories consumption + // return CheckCaloriesInput.processViewCalories(arguments); + case "/cview": // list all the food calories that been entered for a day + case "/cdelete": //delete calories for a specific day for one food follow /cdelete date food name case "/exit": return new ExitCommand(); case "/help": return new HelpWorkoutCommand(); - case "/cadd": - return CheckCaloriesInput.processAddCalories(arguments); - case "/cview": - return CheckCaloriesInput.processViewCalories(arguments); default: return new InvalidCommand(commandName); } diff --git a/src/main/java/seedu/storage/readfile/DailyCaloriesReadFile.java b/src/main/java/seedu/storage/readfile/DailyCaloriesReadFile.java index 16a410e3be..b1ea4e758b 100644 --- a/src/main/java/seedu/storage/readfile/DailyCaloriesReadFile.java +++ b/src/main/java/seedu/storage/readfile/DailyCaloriesReadFile.java @@ -1,3 +1,4 @@ +/* package seedu.storage.readfile; import seedu.calorietracker.CalorieTracker; @@ -13,7 +14,8 @@ public class DailyCaloriesReadFile { private static final String SPACE = " "; - public static CalorieTracker readDailyCalorieToFile(String filePath) { + */ +/* public static CalorieTracker readDailyCalorieToFile(String filePath) { CalorieTracker calorieTracker = new CalorieTracker(); // Read from text file and update foodList @@ -51,5 +53,7 @@ public static CalorieTracker readDailyCalorieToFile(String filePath) { } return calorieTracker; - } + }*//* + } +*/ diff --git a/src/main/java/seedu/storage/writefile/DailyCaloriesWriteFile.java b/src/main/java/seedu/storage/writefile/DailyCaloriesWriteFile.java index 285d0b553c..22aefae19c 100644 --- a/src/main/java/seedu/storage/writefile/DailyCaloriesWriteFile.java +++ b/src/main/java/seedu/storage/writefile/DailyCaloriesWriteFile.java @@ -1,3 +1,4 @@ +/* package seedu.storage.writefile; import seedu.calorietracker.CalorieTracker; @@ -11,7 +12,8 @@ public class DailyCaloriesWriteFile { - private static final String SPACE = " "; +*/ +/* private static final String SPACE = " "; public static void writeDailyCaloriesToFile(String filePath, CalorieTracker calorieTracker) { try { @@ -28,5 +30,7 @@ public static void writeDailyCaloriesToFile(String filePath, CalorieTracker calo } catch (IOException e) { System.out.println("Error writing to file."); } - } + }*//* + } +*/ diff --git a/src/test/java/seedu/commands/calorietracker/CaloriesRecorderTest.java b/src/test/java/seedu/commands/calorietracker/CaloriesRecorderTest.java new file mode 100644 index 0000000000..a2d4d21a8f --- /dev/null +++ b/src/test/java/seedu/commands/calorietracker/CaloriesRecorderTest.java @@ -0,0 +1,44 @@ +/* +package seedu.commands.calorietracker; + +import org.junit.jupiter.api.Assertions; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; +import seedu.calorietracker.Calories; +import seedu.calorietracker.CaloriesRecorder; + +import java.util.Date; +import java.util.HashMap; + +public class CaloriesRecorderTest { + + private CaloriesRecorder caloriesRecorder; + private Calories calories; + + @BeforeEach + public void setUp() { + caloriesRecorder = new CaloriesRecorder(); + calories = new Calories(new Date()); + } + + @Test + public void testAddFoodCalories() { + calories.addFoodCalories("Apple", 50); + calories.addFoodCalories("Banana", 100); + caloriesRecorder.addFoodCalories(new Date(), calories); + HashMap calorieMap = caloriesRecorder.getCalorieMap(); + Assertions.assertEquals(1, calorieMap.size()); + Assertions.assertTrue(calorieMap.containsKey(new Date())); + Assertions.assertEquals(calories, calorieMap.get(new Date())); + } + + @Test + public void testGetCalories() { + calories.addFoodCalories("Apple", 50); + calories.addFoodCalories("Banana", 100); + caloriesRecorder.setCalories(calories); + Assertions.assertEquals(calories, caloriesRecorder.getCalories()); + } + +} +*/ diff --git a/src/test/java/seedu/commands/calorietracker/CaloriesTest.java b/src/test/java/seedu/commands/calorietracker/CaloriesTest.java new file mode 100644 index 0000000000..63ff157baa --- /dev/null +++ b/src/test/java/seedu/commands/calorietracker/CaloriesTest.java @@ -0,0 +1,60 @@ +/* +package seedu.commands.calorietracker; + +import org.junit.jupiter.api.Assertions; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; +import seedu.calorietracker.Calories; + +import java.util.Date; +import java.util.HashMap; + +public class CaloriesTest { + + private Calories calories; + + @BeforeEach + public void setUp() { + calories = new Calories(new Date()); + } + + @Test + public void testAddFoodCalories() { + calories.addFoodCalories("Apple", 50); + HashMap singleFoodCalories = calories.getSingleFoodCalories(); + Assertions.assertEquals(1, singleFoodCalories.size()); + Assertions.assertTrue(singleFoodCalories.containsKey("Apple")); + Assertions.assertEquals(50, singleFoodCalories.get("Apple")); + + calories.addFoodCalories("Apple", 100); + Assertions.assertEquals(1, singleFoodCalories.size()); + Assertions.assertEquals(150, singleFoodCalories.get("Apple")); + + calories.addFoodCalories("Banana", 200); + Assertions.assertEquals(2, singleFoodCalories.size()); + Assertions.assertTrue(singleFoodCalories.containsKey("Banana")); + Assertions.assertEquals(200, singleFoodCalories.get("Banana")); + } + + @Test + public void testCheckFood() { + calories.addFoodCalories("Apple", 50); + Assertions.assertTrue(calories.checkFood("Apple")); + Assertions.assertFalse(calories.checkFood("Banana")); + } + + @Test + public void testAddToCurrentFoodCalories() { + calories.addFoodCalories("Apple", 50); + calories.addToCurrentFoodCalories("Apple", 100); + HashMap singleFoodCalories = calories.getSingleFoodCalories(); + Assertions.assertEquals(1, singleFoodCalories.size()); + Assertions.assertEquals(150, singleFoodCalories.get("Apple")); + + calories.addToCurrentFoodCalories("Banana", 200); + Assertions.assertEquals(1, singleFoodCalories.size()); + Assertions.assertFalse(singleFoodCalories.containsKey("Banana")); + } +} + +*/ From 105501d5cfa389cd821603f011ebe90218f7149b Mon Sep 17 00:00:00 2001 From: ZIZI-czh <77820516+ZIZI-czh@users.noreply.github.com> Date: Wed, 5 Apr 2023 13:09:06 +0800 Subject: [PATCH 104/152] change file in ParserTest --- src/test/java/seedu/parser/ParserTest.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/java/seedu/parser/ParserTest.java b/src/test/java/seedu/parser/ParserTest.java index 226c674158..ed3861512d 100644 --- a/src/test/java/seedu/parser/ParserTest.java +++ b/src/test/java/seedu/parser/ParserTest.java @@ -18,7 +18,7 @@ public class ParserTest { //@@ author ZIZI-czh @Test public void testProcessCommandIncorrectArguments() { - String userInput = "/list 556"; + String userInput = "/wlist 556"; Parser testList = new Parser(); Command result; try { From 1b2b58e6f34fbd58ce4e9feb46f4a8f9e36613bc Mon Sep 17 00:00:00 2001 From: ZIZI-czh <77820516+ZIZI-czh@users.noreply.github.com> Date: Thu, 6 Apr 2023 01:54:04 +0800 Subject: [PATCH 105/152] Add more checking for the input --- data/workoutRecording.txt | 7 + docs/UserGuide.md | 118 +++++++------- src/main/java/seedu/commands/Command.java | 3 - src/main/java/seedu/commands/ExitCommand.java | 6 +- .../seedu/commands/HandlingStringInput.java | 61 ++++++++ .../commands/IncorrectSyntaxCommand.java | 5 +- src/main/java/seedu/commands/InfoMessage.java | 10 ++ .../java/seedu/commands/InvalidCommand.java | 3 +- .../caloriecommands/AddCalorieCommand.java | 2 +- .../caloriecommands/HelpCaloriesCommand.java | 14 ++ .../workoutcommands/AddWorkoutCommand.java | 1 - .../workoutcommands/EndWorkoutCommand.java | 26 ---- .../workoutcommands/HelpWorkoutCommand.java | 2 +- .../java/seedu/parser/CheckCaloriesInput.java | 1 - src/main/java/seedu/parser/CheckInputs.java | 144 +++++++++++------- src/main/java/seedu/parser/Parser.java | 16 +- src/main/java/seedu/ui/Ui.java | 48 +++--- 17 files changed, 296 insertions(+), 171 deletions(-) create mode 100644 src/main/java/seedu/commands/HandlingStringInput.java create mode 100644 src/main/java/seedu/commands/InfoMessage.java create mode 100644 src/main/java/seedu/commands/caloriecommands/HelpCaloriesCommand.java delete mode 100644 src/main/java/seedu/commands/workoutcommands/EndWorkoutCommand.java diff --git a/data/workoutRecording.txt b/data/workoutRecording.txt index a9f2165888..3e68e8dddd 100644 --- a/data/workoutRecording.txt +++ b/data/workoutRecording.txt @@ -9,3 +9,10 @@ Exercise: 2. Name: running, Weight: 45kg, Reps: 4 4 4 4 3. Name: running, Weight: 45kg, Reps: 4 4 4 4 4. Name: running, Weight: 45kg, Reps: 4 4 4 4 +Date : 03/03/21 +Workout : w 3232 332 +Exercise: +Workout : www +Exercise: +Workout : w 3 +Exercise: diff --git a/docs/UserGuide.md b/docs/UserGuide.md index 60222f987d..8204a31740 100644 --- a/docs/UserGuide.md +++ b/docs/UserGuide.md @@ -1,40 +1,84 @@ # User Guide # âšÂ·â•â•Â·âš Fitz âšÂ·â•â•Â·âš - - -Fitz is a fitness tracker for users who are active and trying to keep fit or hit a fitness goal. This app will be -displayed and used in CLI format. It is targeted toward those who prefer to use CLI over GUI. -The product will be able to keep track of the user's progress, daily exercises, and workouts. This helps with -planning future exercises. +Fitz is a fitness tracker for users who are active and trying to keep fit or hit a fitness goal. +This app will be displayed and used in CLI format. It is targeted toward those who prefer to use CLI over GUI. +The product will be able to keep track of the user's progress, daily exercises, and workouts. +This helps with planning future exercises. ## Table of Contents - [Introduction](#introduction) - [Quick Start](#quick-start) + - [Setting Up](setting-up) + - [Viewing Help](viewing-help) - [Features](#features) - - [Start a workout: /start](#start-a-workout--start) - - [Add exercises to current workout: /wadd](#add-exercises-to-current-workout--wadd) - - [End current workout: /end](#end-current-workout--end) - - [List workout dates: /list](#list-workout-dates--list) - - [View a workout: /wview](#view-a-workout--wview) - - [Delete a workout: /delete](#delete-a-workout--delete) - - [Count sets and reps over a week: /count](#count-sets-and-reps-over-a-week--count) - - [Add calories consumed: /cadd](#add-calories-consumed--cadd) - - [View calorie consumption: /cview](#view-calorie-consumption--cview) - - [List valid commands : /help](#) + - [Workout Recorder](#workout-recorder) + - [Start a new day: /wday](#start-a-new-day--wday) + - [Start a workout: /wstart](#start-a-workout--wstart) + - [Add exercises to current workout: /wadd](#add-exercises-to-current-workout--wadd) + - [List workout dates: /wlist](#list-workout-dates--wlist) + - [View workout details: /wview](#view-a-workout--wview) + - [Delete workout record: /wdelete](#delete-a-workout--wdelete) + - [Count sets and reps for a week: /wcount](#count-sets-and-reps-over-a-week--wcount) + - [Calories Recorder](calories-recorder) + - [Start a new day: /wday](#start-a-calories--wstart) + - [Add calories consumed: /cadd](#add-calories-consumed--cadd) + - [View calorie consumption: /cview](#view-calorie-consumption--cview) + - [Delete calories record: /cdelete](#delete-a-workout--delete) + - [List of valid commands : /help](#list-of-valid-commands--help) - [Exit the app: /exit](#exit-the-app--exit) - [FAQ](#faq) - [Command Summary](#command-summary) ## Introduction -This application will help you track your current and future workouts. + +Fitz - the ultimate fitness app for individuals who are passionate about their health and fitness. +With Fitz, you can achieve your fitness goals and track your progress with ease. +This innovative app is designed for users who prefer a CLI format, +making it a user-friendly option for anyone who wants to keep their fitness routine on track. +Whether you're a beginner or an experienced fitness enthusiast, Fitz is the perfect tool for you. +With its ability to track your daily exercises, workouts, and calories, you can take control of your fitness journey and achieve the results you desire. +Let's dive into the world of Fitz and discover how it can transform your fitness routine today! + ## Quick Start -{Give steps to get started quickly} +### Setting Up -1. Ensure that you have Java 11 or above installed. +1. Ensure that you have Java 11 or above installed. If not, kindly install Java's [latest version](https://www.oracle.com/java/technologies/downloads/) 2. Download the latest version of `Fitz` from [here](https://github.com/AY2223S2-CS2113-T14-1). +3. Copy the file to the folder that you wish to use as a home folder for Fitz. +The data saved during the application will reside in your /data folder. +4. Launch a command prompt or terminal and run the command java -jar duke.jar to start the application. +5. Fitz will display a greeting message. +6. If you encounter any issues when setting up and hereon, do check out the [FAQ](#faq) section. + +### Viewing Help + +Display basic or detailed help information explaining the commands available in the application. + +Format: `/help` + +Example of usage: + +`/help` + +Expected output: +``` +Here are the list of commands that you can use: +======================================= +- [Start a Workout: /start]) +- [Add exercise: /wadd] +- [Add calories: /cadd] +- [End current workout: /end] +- [Display workout list: /list] +- [Display a workout on a specific date : /wview] +- [Display calories consumed on a specific date : /cview] +- [Display the amount of reps and set on a specific exercise /count] +- [Delete a workout: /delete] +- [Exit app: /exit] +======================================= +``` ## Features @@ -76,18 +120,6 @@ Expected output: Added bench press 100 5 5 5 5 ``` -### End current workout: `/end` -End the current workout. - -Format: `/end` - -Example of usage: -`\end` -Expected output: -``` -Great job completing your workout! -``` - ### List workout dates: `/list` Display the list of dates of workouts done. @@ -179,30 +211,6 @@ Expected output: Calories consumed on 25/03/23: 200kcal. ``` ### List valid commands: `/help` -List out all possible commands the user can input. - -Format: `/help` - -Example of usage: - -`/help` - -Expected output: -``` -Here are the list of commands that you can use: -======================================= -- [Start a Workout: /start]) -- [Add exercise: /wadd] -- [Add calories: /cadd] -- [End current workout: /end] -- [Display workout list: /list] -- [Display a workout on a specific date : /wview] -- [Display calories consumed on a specific date : /cview] -- [Display the amount of reps and set on a specific exercise /count] -- [Delete a workout: /delete] -- [Exit app: /exit] -======================================= -``` ### Exit the App: `/exit` Exit the program. diff --git a/src/main/java/seedu/commands/Command.java b/src/main/java/seedu/commands/Command.java index 496fde9e7f..302fe999a3 100644 --- a/src/main/java/seedu/commands/Command.java +++ b/src/main/java/seedu/commands/Command.java @@ -13,10 +13,8 @@ public class Command { protected static boolean isDayEntered; - //protected static Date date; protected static boolean isWorkoutEntered; protected WorkoutList workoutList = new WorkoutList(); - //protected CalorieTracker calorieTracker; protected CaloriesRecorder caloriesRecorder; protected FoodList foodList; protected HashMap workouts; @@ -53,7 +51,6 @@ public void setData(WorkoutList workoutList, CaloriesRecorder caloriesRecorder, // this.calorieTracker = calorieTracker; this.caloriesRecorder = caloriesRecorder; this.foodList = foodList; - } diff --git a/src/main/java/seedu/commands/ExitCommand.java b/src/main/java/seedu/commands/ExitCommand.java index e10d5be344..6b945428a9 100644 --- a/src/main/java/seedu/commands/ExitCommand.java +++ b/src/main/java/seedu/commands/ExitCommand.java @@ -1,15 +1,15 @@ package seedu.commands; -public class ExitCommand extends Command { +public class ExitCommand extends seedu.commands.Command { private static final String EXIT_MESSAGE = "Thank you, hope you had a great workout!!!"; - public static boolean isExit(Command command) { + public static boolean isExit(seedu.commands.Command command) { return command instanceof ExitCommand; } @Override public String execute() { - return EXIT_MESSAGE; + return EXIT_MESSAGE + InfoMessage.showLinesAfterExecution(); } } diff --git a/src/main/java/seedu/commands/HandlingStringInput.java b/src/main/java/seedu/commands/HandlingStringInput.java new file mode 100644 index 0000000000..01f80006d1 --- /dev/null +++ b/src/main/java/seedu/commands/HandlingStringInput.java @@ -0,0 +1,61 @@ +package seedu.commands; + +import java.util.regex.Matcher; +import java.util.regex.Pattern; + +public class HandlingStringInput { + + static int maxChars = 15; + static int maxWords = 4; + + + private static final String LONG_INPUT = "Input is too long."; + + + public static boolean isInputTooLong(String input) { + if (input.length() > maxChars) { + System.out.println(LONG_INPUT); + return false; + } + + String[] words = input.split("\\s+"); + + if (words.length > maxWords) { + System.out.println(LONG_INPUT); + return false; + } + return true; + } + + public static boolean isValidCharacter(String input) { + if (!input.matches("^[a-zA-Z0-9 ]*$")) { + System.out.println("Input contains invalid characters. Please enter a valid name."); + return false; + } + return true; + } + + public static boolean isInputValid(String input){ + return !isInputTooLong(input) || !isValidCharacter(input); + } + + public static boolean isInputMatching(String input){ + Pattern pattern = Pattern.compile("(\\d+)([a-zA-Z]+)"); + + Matcher matcher = pattern.matcher(input); + + if (matcher.matches()) { + // Check if number is an integer + try { + return true; + } catch (NumberFormatException e) { + System.out.println("Please enter a number for weight"); + return false; + } + + } else { + System.out.println("Please enter weight and units."); + return false; + } + } +} diff --git a/src/main/java/seedu/commands/IncorrectSyntaxCommand.java b/src/main/java/seedu/commands/IncorrectSyntaxCommand.java index d39e97a478..159a922ed7 100644 --- a/src/main/java/seedu/commands/IncorrectSyntaxCommand.java +++ b/src/main/java/seedu/commands/IncorrectSyntaxCommand.java @@ -1,7 +1,7 @@ package seedu.commands; -public class IncorrectSyntaxCommand extends Command { +public class IncorrectSyntaxCommand extends seedu.commands.Command { private static final String ERROR_MESSAGE = "Invalid syntax for "; private final String syntaxError; @@ -11,6 +11,7 @@ public IncorrectSyntaxCommand(String syntaxError) { @Override public String execute() { - return ERROR_MESSAGE + syntaxError; + return ERROR_MESSAGE + syntaxError + + InfoMessage.showLinesAfterExecution(); } } diff --git a/src/main/java/seedu/commands/InfoMessage.java b/src/main/java/seedu/commands/InfoMessage.java new file mode 100644 index 0000000000..a12c103519 --- /dev/null +++ b/src/main/java/seedu/commands/InfoMessage.java @@ -0,0 +1,10 @@ +package seedu.commands; + +import seedu.ui.Ui; + +public class InfoMessage { + + public static String showLinesAfterExecution(){ + return System.lineSeparator() + Ui.showSeparator(); + } +} diff --git a/src/main/java/seedu/commands/InvalidCommand.java b/src/main/java/seedu/commands/InvalidCommand.java index 6e6ec7ab81..8834633497 100644 --- a/src/main/java/seedu/commands/InvalidCommand.java +++ b/src/main/java/seedu/commands/InvalidCommand.java @@ -10,6 +10,7 @@ public InvalidCommand(String command) { @Override public String execute() { - return command + INVALID_COMMAND_MESSAGE; + return command + INVALID_COMMAND_MESSAGE + + InfoMessage.showLinesAfterExecution(); } } diff --git a/src/main/java/seedu/commands/caloriecommands/AddCalorieCommand.java b/src/main/java/seedu/commands/caloriecommands/AddCalorieCommand.java index d9629c8bd6..7643c1f29b 100644 --- a/src/main/java/seedu/commands/caloriecommands/AddCalorieCommand.java +++ b/src/main/java/seedu/commands/caloriecommands/AddCalorieCommand.java @@ -12,7 +12,7 @@ public class AddCalorieCommand extends CaloriesCommand { private String foodName; private int currentFoodCalories; - private Calories calories; + private Calories calories = new Calories(); private StringBuilder string = new StringBuilder(); diff --git a/src/main/java/seedu/commands/caloriecommands/HelpCaloriesCommand.java b/src/main/java/seedu/commands/caloriecommands/HelpCaloriesCommand.java new file mode 100644 index 0000000000..8d71725bc8 --- /dev/null +++ b/src/main/java/seedu/commands/caloriecommands/HelpCaloriesCommand.java @@ -0,0 +1,14 @@ +package seedu.commands.caloriecommands; + +import seedu.ui.Ui; + +public class HelpCaloriesCommand extends CaloriesCommand{ + + + @Override + public String execute() { + return Ui.getCaloriesHelpMessage(); + } + + +} diff --git a/src/main/java/seedu/commands/workoutcommands/AddWorkoutCommand.java b/src/main/java/seedu/commands/workoutcommands/AddWorkoutCommand.java index bb0fc8180e..ead4d42aa2 100644 --- a/src/main/java/seedu/commands/workoutcommands/AddWorkoutCommand.java +++ b/src/main/java/seedu/commands/workoutcommands/AddWorkoutCommand.java @@ -17,7 +17,6 @@ public AddWorkoutCommand(Exercise exercise) { //@@ author ZIZI-czh @Override public String execute() { - //ArrayList exercises = Workout.getExercises(); if (isWorkoutEntered) { day = workoutList.getSingleWorkout(); workoutForOneDay = day.getWorkout(); diff --git a/src/main/java/seedu/commands/workoutcommands/EndWorkoutCommand.java b/src/main/java/seedu/commands/workoutcommands/EndWorkoutCommand.java deleted file mode 100644 index 3be8e0af4c..0000000000 --- a/src/main/java/seedu/commands/workoutcommands/EndWorkoutCommand.java +++ /dev/null @@ -1,26 +0,0 @@ -package seedu.commands.workoutcommands; - - -import seedu.commands.Command; - -public class EndWorkoutCommand extends Command { - /* private static final String WORKOUT_COMPLETE_MESSAGE = "Great job completing your workout!"; - private boolean isEnd = false; - - public EndWorkoutCommand() { - } - - public static boolean isEnd() { - return isEnd; - } - - @Override - public String execute() { - workoutList.setCurrentWorkoutIndex(WorkoutList.NO_CURRENT_WORKOUT); - isEnd = true; - return WORKOUT_COMPLETE_MESSAGE; - }*/ - - -} - diff --git a/src/main/java/seedu/commands/workoutcommands/HelpWorkoutCommand.java b/src/main/java/seedu/commands/workoutcommands/HelpWorkoutCommand.java index 886daab824..629bc47ce4 100644 --- a/src/main/java/seedu/commands/workoutcommands/HelpWorkoutCommand.java +++ b/src/main/java/seedu/commands/workoutcommands/HelpWorkoutCommand.java @@ -9,6 +9,6 @@ public HelpWorkoutCommand(){} @Override public String execute() { - return Ui.getHelpMessage(); + return Ui.getWorkoutHelpMessage(); } } diff --git a/src/main/java/seedu/parser/CheckCaloriesInput.java b/src/main/java/seedu/parser/CheckCaloriesInput.java index 47cc66d4fd..b1f97df81e 100644 --- a/src/main/java/seedu/parser/CheckCaloriesInput.java +++ b/src/main/java/seedu/parser/CheckCaloriesInput.java @@ -22,7 +22,6 @@ static Command processDayCalories(String arguments) { } public static Command processAddCalories(String arguments) { - Date date; String food; int calories; diff --git a/src/main/java/seedu/parser/CheckInputs.java b/src/main/java/seedu/parser/CheckInputs.java index 25c8d921ab..21a0472df3 100644 --- a/src/main/java/seedu/parser/CheckInputs.java +++ b/src/main/java/seedu/parser/CheckInputs.java @@ -1,6 +1,7 @@ package seedu.parser; import seedu.commands.Command; +import seedu.commands.HandlingStringInput; import seedu.commands.IncorrectSyntaxCommand; import seedu.commands.countcommands.CountSetsRepsCommand; import seedu.commands.workoutcommands.AddWorkoutCommand; @@ -12,49 +13,90 @@ import seedu.workout.Exercise; import java.text.ParseException; +import java.util.Arrays; import java.util.Calendar; import java.util.Date; public class CheckInputs { - private static final int EXERCISE_NAME_INDEX = 0; - private static final int WEIGHT_INDEX = 1; - private static final int REPS_PER_SET_INDEX = 2; - - + private static final int FIRST_ELEMENT = 0; + private static final int SECOND_ELEMENT = 1; + private static final int THIRD_ELEMENT = 2; + + private static final String INVALID_START_COMMAND = "Please follow the format /wstart dd/MM/yy."; + private static final String INVALID_DATE = "Please enter a valid date."; + private static final String INVALID_DATE_FORMAT = "Invalid date format. Please follow the format dd/MM/yy."; + private static final String INVALID_YEAR = "Invalid year. Please use a 2 or 4 digit year between 0 and "; + private static final String DAY_COMMAND = "/wday command"; + private static final String START_COMMAND = "/wstart command"; + private static final String ADD_COMMAND = "/wadd command"; + private static final String LIST_COMMAND = "/wlist command"; + private static final String VIEW_COMMAND = "/wview command"; + private static final String DELETE_COMMAND = "/wdelete command"; static Command processDay(String arguments) { Date date = parseDate(arguments); - // Command.setDay(date); return date != null && parseInput(arguments) ? new StartDayCommand(date) : - new IncorrectSyntaxCommand("/wday command"); + new IncorrectSyntaxCommand(DAY_COMMAND); } static Command processAdd(String arguments) { Exercise toAdd; try { - String[] exerciseDetails = arguments.split("/"); + String[] exerciseDetails = arguments.trim().split("/"); if (exerciseDetails.length != 3) { - System.out.println(66); - return new IncorrectSyntaxCommand("/wadd command"); + return new IncorrectSyntaxCommand(ADD_COMMAND); + } + + String exerciseName = exerciseDetails[FIRST_ELEMENT].trim(); + if(HandlingStringInput.isInputValid(exerciseName.trim())){ //if either condition failed + return new IncorrectSyntaxCommand(ADD_COMMAND); + } + String weight = exerciseDetails[SECOND_ELEMENT].replace("weight", " ").trim(); + String[] checkWeight = exerciseDetails[SECOND_ELEMENT].trim().split(" "); + if(!exerciseDetails[SECOND_ELEMENT].trim().startsWith("weight ")){ + return new IncorrectSyntaxCommand(ADD_COMMAND); + } + if(!HandlingStringInput.isInputTooLong(checkWeight[SECOND_ELEMENT]) + || !HandlingStringInput.isInputMatching(checkWeight[SECOND_ELEMENT].trim())){ + return new IncorrectSyntaxCommand(ADD_COMMAND); + } + + /* if(!checkWeight[FIRST_ELEMENT].trim().equals(("WEIGHT").toLowerCase())){ + System.out.println(checkWeight[FIRST_ELEMENT].trim()); + System.out.println(0); + return new IncorrectSyntaxCommand(ADD_COMMAND); + }*/ + /* if(!HandlingStringInput.isInputMatching(checkWeight[SECOND_ELEMENT].trim())){ + return new IncorrectSyntaxCommand(ADD_COMMAND); + }*/ + + String[] rpsList = exerciseDetails[THIRD_ELEMENT].trim().split(" ", 2); + + + /* if(!rpsList[FIRST_ELEMENT].trim().equals("rps")){ + System.out.println(2); + return new IncorrectSyntaxCommand(ADD_COMMAND); + }*/ + if(!exerciseDetails[THIRD_ELEMENT].startsWith("rps ")){ + return new IncorrectSyntaxCommand(ADD_COMMAND); } - String exerciseName = exerciseDetails[EXERCISE_NAME_INDEX].trim(); - String weight = exerciseDetails[WEIGHT_INDEX].replace("weight", " ").trim(); - if(!exerciseDetails[WEIGHT_INDEX].startsWith("weight")){ - return new IncorrectSyntaxCommand("/wadd command"); + /* if(!HandlingStringInput.isInputTooLong(rpsList[SECOND_ELEMENT])){ + return new IncorrectSyntaxCommand(ADD_COMMAND); } - String repsPerSetString = - exerciseDetails[REPS_PER_SET_INDEX].replace("rps", "").replace("rps", "").trim(); - if(!exerciseDetails[REPS_PER_SET_INDEX].startsWith("rps")){ - System.out.println(00); - return new IncorrectSyntaxCommand("/wadd command"); +*/ + String[] rpsStringList = rpsList[SECOND_ELEMENT].trim().split(",", 10); + if(rpsStringList.length > 10 ){ + System.out.println("The number of sets for rps up to 10"); } - String[] repsList = repsPerSetString.split(" "); - int[] reps = new int[repsList.length]; - for (int i = 0; i < repsList.length; i++) { - reps[i] = Integer.parseInt(repsList[i].trim()); + String[] newRps = new String[rpsStringList.length]; + int[] reps = new int[rpsStringList.length]; + for(int index = 0; index < rpsStringList.length; index += 1){ + newRps[index] = rpsStringList[index].trim(); + reps[index] = Integer.parseInt(rpsStringList[index].trim()); } - toAdd = new Exercise(exerciseName, weight, repsPerSetString); + + toAdd = new Exercise(exerciseName, weight, Arrays.toString(newRps).replaceAll("[\\[\\],]", "")); } catch (ArrayIndexOutOfBoundsException | NumberFormatException e) { - return new IncorrectSyntaxCommand("/wadd command"); + return new IncorrectSyntaxCommand(ADD_COMMAND); } return new AddWorkoutCommand(toAdd); } @@ -68,8 +110,10 @@ static Command processAdd(String arguments) { * @return Incorrect command if the input date is incorrect, otherwise, initialize the StartCommand */ static Command processStart(String arguments) { - return parseWorkoutName(arguments) ? new StartWorkoutCommand(arguments.trim()) : - new IncorrectSyntaxCommand("/start command"); + // + String workName = arguments.replaceAll(" {2,}", " "); + return parseWorkoutName(workName) ? new StartWorkoutCommand(workName.trim()) : + new IncorrectSyntaxCommand(START_COMMAND); } @@ -82,13 +126,13 @@ static Command processStart(String arguments) { static Command processDelete(String arguments) { Date date = parseDate(arguments); return date != null && parseInput(arguments) ? new DeleteWorkoutCommand(date) : - new IncorrectSyntaxCommand("/delete command"); + new IncorrectSyntaxCommand(DELETE_COMMAND); } //@@ author ZIZI-czh static Command processList(String arguments) { return arguments == null || arguments.trim().isEmpty() ? new ListWorkoutCommand() : - new IncorrectSyntaxCommand("/list command"); + new IncorrectSyntaxCommand(LIST_COMMAND); } /** @@ -104,7 +148,7 @@ static Command processView(String arguments) { date = DateFormatter.stringToDate(arguments); return new ViewWorkoutCommand(date); } catch (ParseException e) { - return new IncorrectSyntaxCommand("/wview command"); + return new IncorrectSyntaxCommand(VIEW_COMMAND); } } @@ -131,16 +175,10 @@ static Command processSetsRepsCount(String arguments) { static Date parseDate(String arguments) { try { Date enteredDate = DateFormatter.stringToDate(arguments);; - Date currentDate = new Date(); - - if (enteredDate.compareTo(currentDate) > 0) { - //System.out.println("Date cannot be after the current date."); - return null; - } return enteredDate; } catch (ParseException e) { - System.out.println("Invalid date format. Please follow the format dd/MM/yy"); + System.out.println(INVALID_DATE_FORMAT); return null; } } @@ -154,21 +192,20 @@ static Date parseDate(String arguments) { //@@ author ZIZI-czh static boolean parseInput(String arguments) { - //arguments.trim().contains("\\s+"); if (arguments.trim().contains("\\s+")) { - System.out.println("invalid input date, please use the format /start dd/MM/yy"); + System.out.println(INVALID_START_COMMAND); return false; // not in the form "/start dd/MM/yy" } String[] dateParts = arguments.trim().split("/"); if (dateParts.length != 3) { - System.out.println("invalid input, please use the format dd/MM/yy"); + System.out.println(INVALID_START_COMMAND); return false; // not in the form "dd/MM/yy" } for (String part : dateParts) { if (part.contains("/")) { - System.out.println("invalid input, please follow /start dd/MM/yy"); + System.out.println(INVALID_START_COMMAND); return false; // non-numeric character found in date } } @@ -177,30 +214,31 @@ static boolean parseInput(String arguments) { int month; int year; try { - day = Integer.parseInt(dateParts[0]); - month = Integer.parseInt(dateParts[1]); - year = Integer.parseInt(dateParts[2]); + day = Integer.parseInt(dateParts[0].trim()); + month = Integer.parseInt(dateParts[1].trim()); + year = Integer.parseInt(dateParts[2].trim()); if (day < 1 || day > 31 || month < 1 || month > 12) { - System.out.println("Please enter a correct date"); + System.out.println(INVALID_DATE); return false; // not valid date components } - if (year < 0 || (year > 99 && year < 1000) || year > Calendar.getInstance().get(Calendar.YEAR)) { - System.out.println("Invalid year. Please use a 2 or 4 digit year between 0 and " + if (year < 0 || (year > 23 && year < 1000) || year > Calendar.getInstance().get(Calendar.YEAR)) { + System.out.println(INVALID_YEAR + Calendar.getInstance().get(Calendar.YEAR)); - return false; // year not between 0 and current year or not 2 or 4 digits } } catch (NumberFormatException e) { - System.out.println("Please enter valid date"); + System.out.println(INVALID_DATE); return false; // not valid integers for date components } return true; // input is in the correct format } - public static boolean parseWorkoutName(String arguments) { - //System.out.println("The workout name should start with 'Workout'"); - return !arguments.trim().isEmpty(); - } + public static boolean parseWorkoutName(String workName) { + if(HandlingStringInput.isInputValid(workName)){ + return false; + } + return !workName.trim().isEmpty(); + } } diff --git a/src/main/java/seedu/parser/Parser.java b/src/main/java/seedu/parser/Parser.java index f295ac00ca..eb86455d80 100644 --- a/src/main/java/seedu/parser/Parser.java +++ b/src/main/java/seedu/parser/Parser.java @@ -5,6 +5,7 @@ import seedu.commands.ExitCommand; import seedu.commands.InvalidCommand; import seedu.commands.caloriecommands.CaloriesCommand; +import seedu.commands.caloriecommands.HelpCaloriesCommand; import seedu.commands.workoutcommands.HelpWorkoutCommand; import seedu.exceptions.InvalidSyntaxException; @@ -44,19 +45,24 @@ public Command processCommand(String userInput) throws InvalidSyntaxException { return CheckInputs.processView(arguments); case "/wcount": return CheckInputs.processSetsRepsCount(arguments); + case "/whelp": + return new HelpWorkoutCommand(); case "/cday": CaloriesCommand.setDateEntered(true); return CheckCaloriesInput.processDayCalories(arguments); case "/cadd": return CheckCaloriesInput.processAddCalories(arguments); - case "/clist": //list the total daily calories consumption + case "/clist": + //list the total daily calories consumption // return CheckCaloriesInput.processViewCalories(arguments); - case "/cview": // list all the food calories that been entered for a day - case "/cdelete": //delete calories for a specific day for one food follow /cdelete date food name + case "/cview": + // list all the food calories that been entered for a day + case "/cdelete": + //delete calories for a specific day for one food follow /cdelete date food name + case "/chelp": + return new HelpCaloriesCommand(); case "/exit": return new ExitCommand(); - case "/help": - return new HelpWorkoutCommand(); default: return new InvalidCommand(commandName); } diff --git a/src/main/java/seedu/ui/Ui.java b/src/main/java/seedu/ui/Ui.java index 495ac62fd9..e4ef916764 100644 --- a/src/main/java/seedu/ui/Ui.java +++ b/src/main/java/seedu/ui/Ui.java @@ -5,28 +5,39 @@ public class Ui { - private static final String WELCOME_MESSAGE = "Let's get moving!\n" + "\"/day
\" to start " + - "your workouts recording"; + private static final String LINE = "======================================="; + private static final String LINE_SEPARATOR = "----------------------------------------"; + + private static final String WELCOME_MESSAGE = "Welcome to FITZ! Time to record your daily workouts and calories consumption!\n" + + "Enter \"/whelp\" " + + "if you need the list of commands for workouts record.\n" + + "Enter \"/chelp\" " + + "if you need the list of commands for calories record.\n" + + LINE_SEPARATOR; private static final String LOGO_MESSAGE = " _______ __ .___________.________ \n" + "| ____|| | | | / \n" + "| |__ | | `---| |----`---/ / \n" + "| __| | | | | / / \n" + "| | | | | | / /----.\n" + "|__| |__| |__| /________|"; - private static final String LINE = "======================================="; - private static final String LINE_SEPARATOR = "----------------------------------"; private static final Scanner in = new Scanner(System.in); - private static final String HELP_MESSAGE = - "Here are the list of commands that you can use:" +System.lineSeparator() + LINE + System.lineSeparator() - + "- [Start a Workout: /start])" + System.lineSeparator() + private static final String HELP_MESSAGE_WORKOUT = + "Here are the list of commands that you can use for workout record:" +System.lineSeparator() + LINE + System.lineSeparator() + + "- [Start a new day: /wday])" + System.lineSeparator() + + "- [Start a workout: /wstart])" + System.lineSeparator() + "- [Add exercise: /wadd]" + System.lineSeparator() - + "- [Add calories: /cadd]" + System.lineSeparator() - + "- [End current workout: /end]" + System.lineSeparator() - + "- [Display workout list: /list]" + System.lineSeparator() - + "- [Display a workout on a specific date : /wview]" + System.lineSeparator() + + "- [Display all the days: /wlist]" + System.lineSeparator() + + "- [Display workouts information for a specific day: /wview]" + System.lineSeparator() + + "- [Display total amount of reps and set for one week /wcount]" + System.lineSeparator() + + "- [Delete workouts: /wdelete]" + System.lineSeparator() + + "- [Exit app: /exit]" + System.lineSeparator() + LINE; + private static final String HELP_MESSAGE_CALORIES = + "Here are the list of commands that you can use for calories record:" +System.lineSeparator() + LINE + System.lineSeparator() + + "- [Start a new day: /cday])" + System.lineSeparator() + + "- [Add food and calories: /cadd]" + System.lineSeparator() + + "- [Display total calories consumption: /wlist]" + System.lineSeparator() + "- [Display calories consumed on a specific date : /cview]" + System.lineSeparator() - + "- [Display the amount of reps and set on a specific exercise /count]" + System.lineSeparator() - + "- [Delete a workout: /delete]" + System.lineSeparator() + + "- [Delete calories record for one food: /wdelete]" + System.lineSeparator() + "- [Exit app: /exit]" + System.lineSeparator() + LINE; public static void showGreeting() { @@ -37,9 +48,6 @@ public static void showLogo(){ System.out.println(LOGO_MESSAGE); } - public static String showLine(){ - return LINE; - } public static void showOneLine(){ System.out.println(LINE); } @@ -60,9 +68,11 @@ public static void showWelcomeMessage() { showGreeting(); } - public static String getHelpMessage() { - return HELP_MESSAGE; + public static String getWorkoutHelpMessage() { + return HELP_MESSAGE_WORKOUT; } - + public static String getCaloriesHelpMessage() { + return HELP_MESSAGE_CALORIES; + } } From e71a539c23c0a6bd27c70f1f5664d1da26582951 Mon Sep 17 00:00:00 2001 From: ZIZI-czh <77820516+ZIZI-czh@users.noreply.github.com> Date: Thu, 6 Apr 2023 11:40:15 +0800 Subject: [PATCH 106/152] Update the input checking --- docs/UserGuide.md | 8 +-- .../java/seedu/calorietracker/Calories.java | 1 - .../java/seedu/calorietracker/FoodList.java | 3 - .../seedu/commands/HandlingStringInput.java | 6 +- .../workoutcommands/AddWorkoutCommand.java | 1 - .../workoutcommands/ListWorkoutCommand.java | 1 - src/main/java/seedu/parser/CheckInputs.java | 72 ++++++++----------- src/main/java/seedu/parser/Parser.java | 3 - .../storage/readfile/WorkoutReadFile.java | 2 - .../storage/writefile/WorkoutWriteFile.java | 1 - src/main/java/seedu/workout/WorkoutList.java | 5 -- .../ListWorkoutCommandTest.java | 2 +- 12 files changed, 37 insertions(+), 68 deletions(-) diff --git a/docs/UserGuide.md b/docs/UserGuide.md index 8204a31740..21d3413b23 100644 --- a/docs/UserGuide.md +++ b/docs/UserGuide.md @@ -83,18 +83,18 @@ Here are the list of commands that you can use: ## Features -### Start a workout: `/start` +### Start a workout: `/wstart` Starts the workout for a specific date -Format: `/start
` +Format: `/wstart
` * The `DATE` needs to be in the exact format. Example of usage: -`/start 11/03/23` +`/wstart 11/03/23` -`/start 21/04/23` +`/wstart 21/04/23` Expected output: ``` diff --git a/src/main/java/seedu/calorietracker/Calories.java b/src/main/java/seedu/calorietracker/Calories.java index 859f3613dd..a8de299ce8 100644 --- a/src/main/java/seedu/calorietracker/Calories.java +++ b/src/main/java/seedu/calorietracker/Calories.java @@ -42,7 +42,6 @@ public void setCalories(int calories) { } - public boolean checkFood(String foodName) { return singleFoodCalories.containsKey(foodName); } diff --git a/src/main/java/seedu/calorietracker/FoodList.java b/src/main/java/seedu/calorietracker/FoodList.java index 7ead8832f7..16a3900757 100644 --- a/src/main/java/seedu/calorietracker/FoodList.java +++ b/src/main/java/seedu/calorietracker/FoodList.java @@ -18,9 +18,6 @@ public void addFood(String name, int calories) { foodCalories.put(name, calories); } - /*public int getCalories(String food) { - return foodCalories.get(food); - }*/ public HashMap getFoodCalories() { return foodCalories; diff --git a/src/main/java/seedu/commands/HandlingStringInput.java b/src/main/java/seedu/commands/HandlingStringInput.java index 01f80006d1..627fa1ae8a 100644 --- a/src/main/java/seedu/commands/HandlingStringInput.java +++ b/src/main/java/seedu/commands/HandlingStringInput.java @@ -13,14 +13,10 @@ public class HandlingStringInput { public static boolean isInputTooLong(String input) { - if (input.length() > maxChars) { - System.out.println(LONG_INPUT); - return false; - } String[] words = input.split("\\s+"); - if (words.length > maxWords) { + if (words.length > maxWords || input.length() > maxChars) { System.out.println(LONG_INPUT); return false; } diff --git a/src/main/java/seedu/commands/workoutcommands/AddWorkoutCommand.java b/src/main/java/seedu/commands/workoutcommands/AddWorkoutCommand.java index ead4d42aa2..cdf3002739 100644 --- a/src/main/java/seedu/commands/workoutcommands/AddWorkoutCommand.java +++ b/src/main/java/seedu/commands/workoutcommands/AddWorkoutCommand.java @@ -21,7 +21,6 @@ public String execute() { day = workoutList.getSingleWorkout(); workoutForOneDay = day.getWorkout(); workoutForOneDay.addExercise(exercise); - return exercise + SHOW_EXERCISES_ADDED; } else { return MISSING_WORKOUT; diff --git a/src/main/java/seedu/commands/workoutcommands/ListWorkoutCommand.java b/src/main/java/seedu/commands/workoutcommands/ListWorkoutCommand.java index fb6b955296..5da65a24c3 100644 --- a/src/main/java/seedu/commands/workoutcommands/ListWorkoutCommand.java +++ b/src/main/java/seedu/commands/workoutcommands/ListWorkoutCommand.java @@ -40,7 +40,6 @@ public String execute() { for (Date date : workouts.keySet()) { String formattedDate = DateFormatter.dateToString(date); string.append(formattedDate).append(System.lineSeparator()); - } return string + Ui.showSeparator(); } else { diff --git a/src/main/java/seedu/parser/CheckInputs.java b/src/main/java/seedu/parser/CheckInputs.java index 21a0472df3..a138c934bd 100644 --- a/src/main/java/seedu/parser/CheckInputs.java +++ b/src/main/java/seedu/parser/CheckInputs.java @@ -4,12 +4,7 @@ import seedu.commands.HandlingStringInput; import seedu.commands.IncorrectSyntaxCommand; import seedu.commands.countcommands.CountSetsRepsCommand; -import seedu.commands.workoutcommands.AddWorkoutCommand; -import seedu.commands.workoutcommands.DeleteWorkoutCommand; -import seedu.commands.workoutcommands.ListWorkoutCommand; -import seedu.commands.workoutcommands.StartWorkoutCommand; -import seedu.commands.workoutcommands.ViewWorkoutCommand; -import seedu.commands.workoutcommands.StartDayCommand; +import seedu.commands.workoutcommands.*; import seedu.workout.Exercise; import java.text.ParseException; @@ -32,10 +27,15 @@ public class CheckInputs { private static final String LIST_COMMAND = "/wlist command"; private static final String VIEW_COMMAND = "/wview command"; private static final String DELETE_COMMAND = "/wdelete command"; + static Command processDay(String arguments) { Date date = parseDate(arguments); - return date != null && parseInput(arguments) ? new StartDayCommand(date) : - new IncorrectSyntaxCommand(DAY_COMMAND); + if (date != null && parseInput(arguments)) { + Command.setIsDayEntered(true); + Command.setIsWorkoutEntered(false); + return new StartDayCommand(date); + } + return new IncorrectSyntaxCommand(DAY_COMMAND); } static Command processAdd(String arguments) { @@ -47,54 +47,39 @@ static Command processAdd(String arguments) { } String exerciseName = exerciseDetails[FIRST_ELEMENT].trim(); - if(HandlingStringInput.isInputValid(exerciseName.trim())){ //if either condition failed + if (HandlingStringInput.isInputValid(exerciseName.trim())) { //if either condition failed return new IncorrectSyntaxCommand(ADD_COMMAND); } String weight = exerciseDetails[SECOND_ELEMENT].replace("weight", " ").trim(); String[] checkWeight = exerciseDetails[SECOND_ELEMENT].trim().split(" "); - if(!exerciseDetails[SECOND_ELEMENT].trim().startsWith("weight ")){ - return new IncorrectSyntaxCommand(ADD_COMMAND); - } - if(!HandlingStringInput.isInputTooLong(checkWeight[SECOND_ELEMENT]) - || !HandlingStringInput.isInputMatching(checkWeight[SECOND_ELEMENT].trim())){ + if (!exerciseDetails[SECOND_ELEMENT].trim().startsWith("weight ")) { return new IncorrectSyntaxCommand(ADD_COMMAND); } - - /* if(!checkWeight[FIRST_ELEMENT].trim().equals(("WEIGHT").toLowerCase())){ - System.out.println(checkWeight[FIRST_ELEMENT].trim()); - System.out.println(0); - return new IncorrectSyntaxCommand(ADD_COMMAND); - }*/ - /* if(!HandlingStringInput.isInputMatching(checkWeight[SECOND_ELEMENT].trim())){ + if (!HandlingStringInput.isInputTooLong(checkWeight[SECOND_ELEMENT]) + || !HandlingStringInput.isInputMatching(checkWeight[SECOND_ELEMENT].trim())) { return new IncorrectSyntaxCommand(ADD_COMMAND); - }*/ + } + String[] rpsList = exerciseDetails[THIRD_ELEMENT].trim().split(" ", 2); - /* if(!rpsList[FIRST_ELEMENT].trim().equals("rps")){ - System.out.println(2); - return new IncorrectSyntaxCommand(ADD_COMMAND); - }*/ - if(!exerciseDetails[THIRD_ELEMENT].startsWith("rps ")){ + if (!exerciseDetails[THIRD_ELEMENT].startsWith("rps ")) { return new IncorrectSyntaxCommand(ADD_COMMAND); } - /* if(!HandlingStringInput.isInputTooLong(rpsList[SECOND_ELEMENT])){ - return new IncorrectSyntaxCommand(ADD_COMMAND); - } -*/ + String[] rpsStringList = rpsList[SECOND_ELEMENT].trim().split(",", 10); - if(rpsStringList.length > 10 ){ + if (rpsStringList.length > 10) { System.out.println("The number of sets for rps up to 10"); } String[] newRps = new String[rpsStringList.length]; int[] reps = new int[rpsStringList.length]; - for(int index = 0; index < rpsStringList.length; index += 1){ - newRps[index] = rpsStringList[index].trim(); + for (int index = 0; index < rpsStringList.length; index += 1) { + newRps[index] = rpsStringList[index].trim(); reps[index] = Integer.parseInt(rpsStringList[index].trim()); } - toAdd = new Exercise(exerciseName, weight, Arrays.toString(newRps).replaceAll("[\\[\\],]", "")); + toAdd = new Exercise(exerciseName, weight, Arrays.toString(newRps).replaceAll("[\\[\\],]", "")); } catch (ArrayIndexOutOfBoundsException | NumberFormatException e) { return new IncorrectSyntaxCommand(ADD_COMMAND); } @@ -112,8 +97,12 @@ static Command processAdd(String arguments) { static Command processStart(String arguments) { // String workName = arguments.replaceAll(" {2,}", " "); - return parseWorkoutName(workName) ? new StartWorkoutCommand(workName.trim()) : - new IncorrectSyntaxCommand(START_COMMAND); + if (parseWorkoutName(workName)) { + Command.setIsWorkoutEntered(true); + return new StartWorkoutCommand(workName.trim()); + } else { + return new IncorrectSyntaxCommand(START_COMMAND); + } } @@ -174,7 +163,8 @@ static Command processSetsRepsCount(String arguments) { //@@ author ZIZI-czh static Date parseDate(String arguments) { try { - Date enteredDate = DateFormatter.stringToDate(arguments);; + Date enteredDate = DateFormatter.stringToDate(arguments); + ; return enteredDate; } catch (ParseException e) { @@ -234,11 +224,11 @@ static boolean parseInput(String arguments) { } public static boolean parseWorkoutName(String workName) { - if(HandlingStringInput.isInputValid(workName)){ + if (HandlingStringInput.isInputValid(workName)) { return false; } - return !workName.trim().isEmpty(); - } + return !workName.trim().isEmpty(); + } } diff --git a/src/main/java/seedu/parser/Parser.java b/src/main/java/seedu/parser/Parser.java index eb86455d80..7fd19b7b47 100644 --- a/src/main/java/seedu/parser/Parser.java +++ b/src/main/java/seedu/parser/Parser.java @@ -29,11 +29,8 @@ public Command processCommand(String userInput) throws InvalidSyntaxException { switch (commandName.toLowerCase()) { case "/wday": - Command.setIsDayEntered(true); - Command.setIsWorkoutEntered(false); return CheckInputs.processDay(arguments); case "/wstart": - Command.setIsWorkoutEntered(true); return CheckInputs.processStart(arguments); case "/wadd": return CheckInputs.processAdd(arguments); diff --git a/src/main/java/seedu/storage/readfile/WorkoutReadFile.java b/src/main/java/seedu/storage/readfile/WorkoutReadFile.java index 60edca1584..204b515fc5 100644 --- a/src/main/java/seedu/storage/readfile/WorkoutReadFile.java +++ b/src/main/java/seedu/storage/readfile/WorkoutReadFile.java @@ -59,8 +59,6 @@ public static WorkoutList readWorkoutFromFile(String filePath) { String weight = exerciseDetails[1].replace("Weight:", "").trim(); String repsString = exerciseDetails[2].replace("Reps:", "").trim(); Exercise exercise = new Exercise(exerciseName, weight, repsString); - /* System.out.println("name: " + exerciseName + " weight: " + weight + "reps: " + repsString);*/ - // workoutList.addExerciseToWorkout(currentDate, currentWorkoutName, exercise); Day day = workoutList.getSingleWorkout(); Workout workoutForOneDay = day.getWorkout(); workoutForOneDay.addExercise(exercise); diff --git a/src/main/java/seedu/storage/writefile/WorkoutWriteFile.java b/src/main/java/seedu/storage/writefile/WorkoutWriteFile.java index 46bc4a669e..68bc4cdf60 100644 --- a/src/main/java/seedu/storage/writefile/WorkoutWriteFile.java +++ b/src/main/java/seedu/storage/writefile/WorkoutWriteFile.java @@ -16,7 +16,6 @@ public class WorkoutWriteFile { private static final String SPACE = " "; - private static HashMap workouts; private static HashMap dailyWorkout; diff --git a/src/main/java/seedu/workout/WorkoutList.java b/src/main/java/seedu/workout/WorkoutList.java index 051a01792c..f115e74acf 100644 --- a/src/main/java/seedu/workout/WorkoutList.java +++ b/src/main/java/seedu/workout/WorkoutList.java @@ -75,11 +75,6 @@ public void setWorkouts(HashMap workouts) { this.workouts = workouts; } - /*public void addExerciseToWorkout(Date currentDate, String currentWorkoutName, Exercise exercise) { - dailyWorkout.addExercise(exercise); - day.addWorkout(currentWorkoutName, dailyWorkout); - addWorkoutToList(currentDate, day); - }*/ //@@ author guillaume-grn //@@ author ZIZI-czh diff --git a/src/test/java/seedu/commands/workoutcommands/ListWorkoutCommandTest.java b/src/test/java/seedu/commands/workoutcommands/ListWorkoutCommandTest.java index 57340da53f..75639a2046 100644 --- a/src/test/java/seedu/commands/workoutcommands/ListWorkoutCommandTest.java +++ b/src/test/java/seedu/commands/workoutcommands/ListWorkoutCommandTest.java @@ -39,7 +39,7 @@ public void testExecute_withNonEmptyWorkoutList_returnsListOfDates() throws Pars String expectedOutput = "Here is the list of dates of your workouts:" + System.lineSeparator() + DateFormatter.dateToString(date1) + System.lineSeparator() //+ DateFormatter.dateToString(date2) + System.lineSeparator() - + "----------------------------------"; + + "----------------------------------------"; String actualOutput = listWorkoutCommand.execute(); assertEquals(expectedOutput, actualOutput); } From b0a1a202baa89a788530527ab3ba923928a6df2b Mon Sep 17 00:00:00 2001 From: ZIZI-czh <77820516+ZIZI-czh@users.noreply.github.com> Date: Fri, 7 Apr 2023 00:12:01 +0800 Subject: [PATCH 107/152] Update Project Portfolio Page (PPP) --- docs/team/johndoe.md | 43 ++++++++++++++++++++++++++++++++++++++++--- 1 file changed, 40 insertions(+), 3 deletions(-) diff --git a/docs/team/johndoe.md b/docs/team/johndoe.md index ab75b391b8..ec8bb4ed0b 100644 --- a/docs/team/johndoe.md +++ b/docs/team/johndoe.md @@ -1,6 +1,43 @@ -# John Doe - Project Portfolio Page +# Chen ZI Han - Project Portfolio Page -## Overview +## Project: FITZ +Fitz - the ultimate fitness app for individuals who are passionate about their health and fitness. +Users can achieve their fitness goals and track their progress with ease. +This innovative app is designed for users who prefer a CLI format, +making it a user-friendly option for anyone who wants to keep their fitness routine on track. + + +### Given Below are my contribution to the project + +- Code Contributed: [RepoCode](https://nus-cs2113-ay2223s2.github.io/tp-dashboard/?search=ZIZI-CZH&sort=groupTitle&sortWithin=title&timeframe=commit&mergegroup=&groupSelect=groupByRepos&breakdown=true&checkedFileTypes=docs~functional-code~test-code~other&since=2023-02-17) + +- Implemented Features: Starting a New Workout Day and Adding New Workouts + - What it Does: Enables users to enter the date they want to begin tracking their fitness progress and add the names of their workouts for that day. + - Justification: By allowing users to select the specific date they want to start tracking their workouts, the app becomes more flexible and personalized to their needs. + Additionally, allowing users to add multiple workouts for each day enables them to record a more comprehensive view of their exercise routine. + - Key Highlights: The app requires users to enter the date before they can begin tracking their workouts, as this is essential for accurate record keeping. + Furthermore, the app permits users to add new workouts to previous days' records, in case they missed a workout or want to add a previously unrecorded workout. + However, if the user enters the same workout name for a given date, the app will assume it refers to the same workout and update the existing record accordingly. + +- Implemented Features: Adding Exercises to Current Workout + - What it Does: Enables users to add exercises to their current workout, including the exercise name, weight, and repetitions per set (RPS). + - Justification: Users must add exercises to a specific day and workout, similar to adding a new workout. The app allows for the possibility of duplicate exercise sets, + since users may want to record multiple sets of the same exercise within a single workout session. + - Key Highlights: Users can follow a standardized format to enter their exercise records, including the exercise name, weight used, and RPS. + This ensures that the app can accurately record and display the user's workout progress over time. + +- Implemented features: List of All Recorded Days and View Workouts by Day + - What it Does: Provides users with a list of all the dates they have previously entered into the app, +as well as the ability to view their workout records for a specific day. + - Justification: The app displays a list of all entered dates, even if no workouts have been recorded for that day, as long as the date was entered in the proper format. +Similarly, the view function will display all previously entered workouts for a specific day, even if no exercises were completed on that day. +This ensures that users have a clear and comprehensive overview of their exercise history. + - Key Highlights: Users can use the list of recorded days and view function to gain insights into their exercise history, +which can inform their future workout plans. By providing users with a complete record of their workout history, the app can help users to stay motivated and track their progress over time. + +- Implemented features: Workout Data Storage + - What it Does: The app automatically saves any changes made to the workout records in an external .txt file when the user exits the app, and retrieves it when the app is opened again. + - Justification: Justification: Enabling users to use the app at different times requires a reliable way of storing their data, ensuring that their progress is accurately tracked and readily available. + - Key Highlights: Key Highlights: Properly exiting the app is crucial for the workout data to be saved. -### Summary of Contributions From 1766676169a0efaa036dd7a7718259d911ce3323 Mon Sep 17 00:00:00 2001 From: ZIZI-czh <77820516+ZIZI-czh@users.noreply.github.com> Date: Fri, 7 Apr 2023 00:23:05 +0800 Subject: [PATCH 108/152] Solve Add calories bugs and delete caloriesCommand file --- .../java/seedu/calorietracker/Calories.java | 4 ++ .../calorietracker/CaloriesRecorder.java | 7 +- src/main/java/seedu/commands/Command.java | 7 +- .../caloriecommands/AddCalorieCommand.java | 9 ++- .../StartDayCaloriesCommand.java | 7 +- .../caloriecommands/ViewCaloriesCommand.java | 65 ++++++++++++++----- src/main/java/seedu/duke/Duke.java | 3 +- .../java/seedu/parser/CheckCaloriesInput.java | 8 ++- src/main/java/seedu/parser/Parser.java | 3 +- 9 files changed, 84 insertions(+), 29 deletions(-) diff --git a/src/main/java/seedu/calorietracker/Calories.java b/src/main/java/seedu/calorietracker/Calories.java index a8de299ce8..208966edd6 100644 --- a/src/main/java/seedu/calorietracker/Calories.java +++ b/src/main/java/seedu/calorietracker/Calories.java @@ -19,6 +19,10 @@ public Calories(Date date) { this.date = date; } + public Date getDate() { + return date; + } + public void addFoodCalories(String name, int calories) { singleFoodCalories.put(name, calories); this.name = name; diff --git a/src/main/java/seedu/calorietracker/CaloriesRecorder.java b/src/main/java/seedu/calorietracker/CaloriesRecorder.java index 4ee282c671..2f2c758b33 100644 --- a/src/main/java/seedu/calorietracker/CaloriesRecorder.java +++ b/src/main/java/seedu/calorietracker/CaloriesRecorder.java @@ -5,7 +5,8 @@ public class CaloriesRecorder { private HashMap calorieMap; - private Calories calories; + private Calories calories = new Calories(); + public CaloriesRecorder() { calorieMap = new HashMap<>(); } @@ -16,6 +17,8 @@ public HashMap getCalorieMap() { public void addFoodCalories(Date date, Calories calories){ calorieMap.put(date, calories); + //setDate(date); + //setCalories(calories); this.calories = calories; } @@ -23,6 +26,8 @@ public void setCalories(Calories calories) { this.calories = calories; } + public void setDate(Date date) { + } public Calories getCalories() { return calories; } diff --git a/src/main/java/seedu/commands/Command.java b/src/main/java/seedu/commands/Command.java index 302fe999a3..0b1bc8afc6 100644 --- a/src/main/java/seedu/commands/Command.java +++ b/src/main/java/seedu/commands/Command.java @@ -1,6 +1,7 @@ package seedu.commands; +import seedu.calorietracker.Calories; import seedu.calorietracker.CaloriesRecorder; import seedu.calorietracker.FoodList; import seedu.workout.Day; @@ -13,9 +14,10 @@ public class Command { protected static boolean isDayEntered; + protected static boolean isCaloriesDayEntered; protected static boolean isWorkoutEntered; protected WorkoutList workoutList = new WorkoutList(); - protected CaloriesRecorder caloriesRecorder; + protected CaloriesRecorder caloriesRecorder = new CaloriesRecorder(); protected FoodList foodList; protected HashMap workouts; protected Workout workoutForOneDay = new Workout(); @@ -32,6 +34,9 @@ public Command() { public static void setIsDayEntered(boolean isDayEnter) { isDayEntered = isDayEnter; } + public static void setDateEntered(boolean isCaloriesDayEnter) { + isCaloriesDayEntered = isCaloriesDayEnter; + } //@@ author ZIZI-czh public static void setIsWorkoutEntered(boolean isWorkoutEnter) { diff --git a/src/main/java/seedu/commands/caloriecommands/AddCalorieCommand.java b/src/main/java/seedu/commands/caloriecommands/AddCalorieCommand.java index 7643c1f29b..322afb4a8a 100644 --- a/src/main/java/seedu/commands/caloriecommands/AddCalorieCommand.java +++ b/src/main/java/seedu/commands/caloriecommands/AddCalorieCommand.java @@ -2,8 +2,9 @@ import seedu.calorietracker.Calories; +import seedu.commands.Command; -public class AddCalorieCommand extends CaloriesCommand { +public class AddCalorieCommand extends Command { public static final int CALORIES_NOT_GIVEN = -1; @@ -12,7 +13,7 @@ public class AddCalorieCommand extends CaloriesCommand { private String foodName; private int currentFoodCalories; - private Calories calories = new Calories(); + private Calories calories; private StringBuilder string = new StringBuilder(); @@ -64,9 +65,10 @@ public void checksFoodList() { @Override public String execute() { + calories = caloriesRecorder.getCalories(); /*calorieTracker.setFoodList(foodList); return calorieTracker.addCalories(date, food, calories);*/ - if (isDateEntered) { + if (isCaloriesDayEntered) { if (currentFoodCalories == CALORIES_NOT_GIVEN) { //check if the food had been stored in food list before if (foodList.contains(foodName)) { @@ -101,6 +103,7 @@ public String execute() { string.append("Added '").append(foodName).append(": ") .append(currentFoodCalories) .append(" kcal' to daily calories consumption!"); + } } } else { diff --git a/src/main/java/seedu/commands/caloriecommands/StartDayCaloriesCommand.java b/src/main/java/seedu/commands/caloriecommands/StartDayCaloriesCommand.java index 3143f2b821..c6f615acfe 100644 --- a/src/main/java/seedu/commands/caloriecommands/StartDayCaloriesCommand.java +++ b/src/main/java/seedu/commands/caloriecommands/StartDayCaloriesCommand.java @@ -1,12 +1,13 @@ package seedu.commands.caloriecommands; import seedu.calorietracker.Calories; +import seedu.commands.Command; import seedu.parser.DateFormatter; import java.util.Date; import java.util.HashMap; -public class StartDayCaloriesCommand extends CaloriesCommand { +public class StartDayCaloriesCommand extends Command { private static final String STARTED_DAY_FIRST = "You had started calories record on this day before."; private static final String STARTED_DAY_SECOND = "Please use '/cstart' to add a food calories consumption!"; @@ -37,8 +38,8 @@ public String execute() { Calories calories = dailyCalories.get(date); // Check if there are food calories record on that day if (calories == null) { - calories = new Calories(date); - caloriesRecorder.addFoodCalories(date, calories); + + caloriesRecorder.addFoodCalories(date, new Calories(date)); String formattedDate = DateFormatter.dateToString(date); stringBuilder.append(STARTED_CALORIES) .append(formattedDate); diff --git a/src/main/java/seedu/commands/caloriecommands/ViewCaloriesCommand.java b/src/main/java/seedu/commands/caloriecommands/ViewCaloriesCommand.java index 52b3e6aa37..cbc6c89a66 100644 --- a/src/main/java/seedu/commands/caloriecommands/ViewCaloriesCommand.java +++ b/src/main/java/seedu/commands/caloriecommands/ViewCaloriesCommand.java @@ -1,32 +1,65 @@ package seedu.commands.caloriecommands; -/* + +import seedu.calorietracker.Calories; +import seedu.calorietracker.FoodList; import seedu.commands.Command; import seedu.parser.DateFormatter; +import seedu.ui.Ui; import java.util.Date; - -//import static seedu.calorietracker.CalorieTracker.CALORIES_NOT_TRACKED; +import java.util.HashMap; public class ViewCaloriesCommand extends Command { + private static final String FAIL_TO_FIND_DATE = " does not exit in the list"; + private Date caloriesToViewDate; + + public ViewCaloriesCommand(Date caloriesToViewDate) { + //super(); + this.caloriesToViewDate = caloriesToViewDate; + } -*/ -/* private final Date dateToView; - public ViewCaloriesCommand(Date dateToView) { - this.dateToView = dateToView; + public ViewCaloriesCommand(Date caloriesToViewDate, FoodList foodList) { + this.caloriesToViewDate = caloriesToViewDate; + this.foodList = foodList; } @Override public String execute() { - String formattedDate = DateFormatter.dateToString(dateToView); - if (caloriesRecorder.getCalories(dateToView) == CALORIES_NOT_TRACKED) { - return "Calories not tracked on " + formattedDate; - } else { - return "Calories consumed on " + formattedDate + ": " + calorieTracker.getCalories(dateToView) - + "kcal."; + // convert the date to string for display purposes + String formattedDate = DateFormatter.dateToString(caloriesToViewDate); + // Calories caloriesOnDate = caloriesRecorder.getCalories(); + //HashMap singleCalorie = caloriesOnDate.getSingleFoodCalories(); + // get the Day object associated with the given date + Calories caloriesOnDate = caloriesRecorder.getCalorieMap().get(caloriesToViewDate); + // HashMap singleCalorie = caloriesOnDate.getSingleFoodCalories(); + // if the Day object exists, retrieve the workouts and print them + if (caloriesOnDate != null) { + HashMap singleCalorie; + singleCalorie = caloriesOnDate.getSingleFoodCalories(); + System.out.println(caloriesOnDate.getCalories() + caloriesOnDate.getName()); + StringBuilder string = new StringBuilder(); + if (singleCalorie.isEmpty()) { + return "No calories found on " + formattedDate + System.lineSeparator() + Ui.showSeparator(); + } + string.append("Calories on ").append(formattedDate).append(":").append(System.lineSeparator()); +// for (String DietName : singleCalorie.keySet()) { +// string.append("Diet Name: ").append(DietName).append(System.lineSeparator()); +//// string.append("Exercise Info: ").append(System.lineSeparator()); + int index = 1; + for (String foodName : singleCalorie.keySet()) { + string.append(index).append(". ").append("Food: ") + .append(foodName) + .append(", calories: ") + .append(singleCalorie.get(foodName)); + index++; + } + string.append(Ui.showSeparator()).append(System.lineSeparator()); +// } + return string.toString(); } - }*//* - + // if the Day object doesn't exist, return an error message + return formattedDate + FAIL_TO_FIND_DATE; + } } -*/ diff --git a/src/main/java/seedu/duke/Duke.java b/src/main/java/seedu/duke/Duke.java index 161fe2044f..64daaf3aee 100644 --- a/src/main/java/seedu/duke/Duke.java +++ b/src/main/java/seedu/duke/Duke.java @@ -22,7 +22,7 @@ public class Duke { private WorkoutList workoutList = new WorkoutList(); private Day day; // private CalorieTracker calorieTracker = new CalorieTracker(); - private CaloriesRecorder caloriesRecorder = new CaloriesRecorder(); + private CaloriesRecorder caloriesRecorder; private FoodList foodList; @@ -40,6 +40,7 @@ private void run() { //day = new Day(); workoutList = WorkoutReadFile.readWorkoutFromFile(FILE_PATH_WORKOUT); foodList = new FoodList(); + caloriesRecorder = new CaloriesRecorder(); //foodList = FoodCaloriesReadFile.readFoodCalorieToFile(FOOD_CALORIE); //calorieTracker = DailyCaloriesReadFile.readDailyCalorieToFile(TOTAL_CALORIE); diff --git a/src/main/java/seedu/parser/CheckCaloriesInput.java b/src/main/java/seedu/parser/CheckCaloriesInput.java index b1f97df81e..253931a2b7 100644 --- a/src/main/java/seedu/parser/CheckCaloriesInput.java +++ b/src/main/java/seedu/parser/CheckCaloriesInput.java @@ -5,7 +5,9 @@ import seedu.commands.IncorrectSyntaxCommand; import seedu.commands.caloriecommands.AddCalorieCommand; import seedu.commands.caloriecommands.StartDayCaloriesCommand; +import seedu.commands.caloriecommands.ViewCaloriesCommand; +import java.text.ParseException; import java.util.Date; import static seedu.commands.caloriecommands.AddCalorieCommand.CALORIES_NOT_GIVEN; @@ -52,7 +54,7 @@ public static Command processAddCalories(String arguments) { return new AddCalorieCommand(food, calories); } - /* public static Command processViewCalories(String arguments) { + public static Command processViewCalories(String arguments) { Date date; try { @@ -61,7 +63,7 @@ public static Command processAddCalories(String arguments) { return new IncorrectSyntaxCommand("cday"); } - return new ViewCaloriesCommand(); - }*/ + return new ViewCaloriesCommand(date); + } } diff --git a/src/main/java/seedu/parser/Parser.java b/src/main/java/seedu/parser/Parser.java index 7fd19b7b47..1c776c62c9 100644 --- a/src/main/java/seedu/parser/Parser.java +++ b/src/main/java/seedu/parser/Parser.java @@ -45,7 +45,7 @@ public Command processCommand(String userInput) throws InvalidSyntaxException { case "/whelp": return new HelpWorkoutCommand(); case "/cday": - CaloriesCommand.setDateEntered(true); + Command.setDateEntered(true); return CheckCaloriesInput.processDayCalories(arguments); case "/cadd": return CheckCaloriesInput.processAddCalories(arguments); @@ -54,6 +54,7 @@ public Command processCommand(String userInput) throws InvalidSyntaxException { // return CheckCaloriesInput.processViewCalories(arguments); case "/cview": // list all the food calories that been entered for a day + return CheckCaloriesInput.processViewCalories(arguments); case "/cdelete": //delete calories for a specific day for one food follow /cdelete date food name case "/chelp": From a705c6f22f6fa6fcefb65a48c8373291569c9ced Mon Sep 17 00:00:00 2001 From: ZIZI-czh <77820516+ZIZI-czh@users.noreply.github.com> Date: Fri, 7 Apr 2023 00:54:12 +0800 Subject: [PATCH 109/152] Solve calories add feature bugs and the coding style --- hs_err_pid15356.log | 756 ++ hs_err_pid17936.log | 828 ++ hs_err_pid20140.log | 744 ++ hs_err_pid3436.log | 780 ++ replay_pid15356.log | 8238 ++++++++++++ replay_pid17936.log | 10515 ++++++++++++++++ replay_pid20140.log | 7408 +++++++++++ replay_pid3436.log | 8117 ++++++++++++ src/main/java/seedu/commands/Command.java | 1 - .../caloriecommands/AddCalorieCommand.java | 3 - .../caloriecommands/CaloriesCommand.java | 44 - .../caloriecommands/HelpCaloriesCommand.java | 12 +- .../caloriecommands/ViewCaloriesCommand.java | 21 +- .../workoutcommands/AddWorkoutCommand.java | 13 +- .../java/seedu/parser/CheckCaloriesInput.java | 4 +- src/main/java/seedu/parser/CheckInputs.java | 7 +- src/main/java/seedu/parser/Parser.java | 3 - .../readfile/FoodCaloriesReadFile.java | 1 - .../storage/writefile/WorkoutWriteFile.java | 6 +- src/main/java/seedu/ui/Ui.java | 9 +- src/main/java/seedu/workout/Workout.java | 17 +- 21 files changed, 37425 insertions(+), 102 deletions(-) create mode 100644 hs_err_pid15356.log create mode 100644 hs_err_pid17936.log create mode 100644 hs_err_pid20140.log create mode 100644 hs_err_pid3436.log create mode 100644 replay_pid15356.log create mode 100644 replay_pid17936.log create mode 100644 replay_pid20140.log create mode 100644 replay_pid3436.log delete mode 100644 src/main/java/seedu/commands/caloriecommands/CaloriesCommand.java diff --git a/hs_err_pid15356.log b/hs_err_pid15356.log new file mode 100644 index 0000000000..27829eb291 --- /dev/null +++ b/hs_err_pid15356.log @@ -0,0 +1,756 @@ +# +# There is insufficient memory for the Java Runtime Environment to continue. +# Native memory allocation (malloc) failed to allocate 789456 bytes for Chunk::new +# Possible reasons: +# The system is out of physical RAM or swap space +# The process is running with CompressedOops enabled, and the Java Heap may be blocking the growth of the native heap +# Possible solutions: +# Reduce memory load on the system +# Increase physical memory or swap space +# Check if swap backing store is full +# Decrease Java heap size (-Xmx/-Xms) +# Decrease number of Java threads +# Decrease Java thread stack sizes (-Xss) +# Set larger code cache with -XX:ReservedCodeCacheSize= +# JVM is running with Unscaled Compressed Oops mode in which the Java heap is +# placed in the first 4GB address space. The Java Heap base address is the +# maximum limit for the native heap growth. Please use -XX:HeapBaseMinAddress +# to set the Java Heap base and to place the Java Heap above 4GB virtual address. +# This output file may be truncated or incomplete. +# +# Out of Memory Error (./open/src/hotspot/share/memory/arena.cpp:197), pid=15356, tid=21492 +# +# JRE version: Java(TM) SE Runtime Environment 18.9 (11.0.17+10) (build 11.0.17+10-LTS-269) +# Java VM: Java HotSpot(TM) 64-Bit Server VM 18.9 (11.0.17+10-LTS-269, mixed mode, tiered, compressed oops, g1 gc, windows-amd64) +# No core dump will be written. Minidumps are not enabled by default on client versions of Windows +# + +--------------- S U M M A R Y ------------ + +Command Line: --add-opens=java.base/java.util=ALL-UNNAMED --add-opens=java.base/java.lang=ALL-UNNAMED --add-opens=java.base/java.lang.invoke=ALL-UNNAMED --add-opens=java.base/java.util=ALL-UNNAMED --add-opens=java.prefs/java.util.prefs=ALL-UNNAMED --add-opens=java.prefs/java.util.prefs=ALL-UNNAMED --add-opens=java.base/java.nio.charset=ALL-UNNAMED --add-opens=java.base/java.net=ALL-UNNAMED --add-opens=java.base/java.util.concurrent.atomic=ALL-UNNAMED -XX:MaxMetaspaceSize=256m -XX:+HeapDumpOnOutOfMemoryError -Xms256m -Xmx512m -Dfile.encoding=GBK -Duser.country=SG -Duser.language=en -Duser.variant org.gradle.launcher.daemon.bootstrap.GradleDaemon 7.4.2 + +Host: 11th Gen Intel(R) Core(TM) i7-11800H @ 2.30GHz, 16 cores, 15G, Windows 10 , 64 bit Build 19041 (10.0.19041.2546) +Time: Fri Apr 7 00:47:20 2023 China Standard Time elapsed time: 3.559097 seconds (0d 0h 0m 3s) + +--------------- T H R E A D --------------- + +Current thread (0x0000019e3677e800): JavaThread "C2 CompilerThread7" daemon [_thread_in_native, id=21492, stack(0x0000001cafd00000,0x0000001cafe00000)] + + +Current CompileTask: +C2: 3559 5515 4 org.gradle.internal.reflect.MethodSet::add (50 bytes) + +Stack: [0x0000001cafd00000,0x0000001cafe00000] +Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code) +V [jvm.dll+0x62b5da] +V [jvm.dll+0x7653df] +V [jvm.dll+0x766a89] +V [jvm.dll+0x767113] +V [jvm.dll+0x23dd28] +V [jvm.dll+0xb2a1c] +V [jvm.dll+0xb2fdc] +V [jvm.dll+0x341552] +V [jvm.dll+0x30ef13] +V [jvm.dll+0x30e25a] +V [jvm.dll+0x1f8733] +V [jvm.dll+0x1f78fd] +V [jvm.dll+0x177c91] +V [jvm.dll+0x207296] +V [jvm.dll+0x20542b] +V [jvm.dll+0x72b2c0] +V [jvm.dll+0x723e64] +V [jvm.dll+0x62a485] +C [ucrtbase.dll+0x21bb2] +C [KERNEL32.DLL+0x17614] +C [ntdll.dll+0x526a1] + + +--------------- P R O C E S S --------------- + +Threads class SMR info: +_java_thread_list=0x0000019e36bb4610, length=73, elements={ +0x0000019e12a55000, 0x0000019e2e452800, 0x0000019e2e475000, 0x0000019e2e4eb000, +0x0000019e2e4ed000, 0x0000019e2e4ee000, 0x0000019e2e4f6800, 0x0000019e2e4fb000, +0x0000019e2e510800, 0x0000019e2e663800, 0x0000019e2e673800, 0x0000019e2e675800, +0x0000019e2e990000, 0x0000019e2f9bf800, 0x0000019e30b90800, 0x0000019e2fb51800, +0x0000019e30d9e800, 0x0000019e305f3000, 0x0000019e2fcd9800, 0x0000019e30430800, +0x0000019e30a2d800, 0x0000019e2f9fd000, 0x0000019e30503000, 0x0000019e2fa08000, +0x0000019e2fa09000, 0x0000019e2fa06800, 0x0000019e2fa07000, 0x0000019e310d3000, +0x0000019e34d59000, 0x0000019e34d57800, 0x0000019e34d5a000, 0x0000019e34d55000, +0x0000019e34d5b800, 0x0000019e34d5b000, 0x0000019e34d56000, 0x0000019e34d58800, +0x0000019e34d5c800, 0x0000019e3225d000, 0x0000019e34d5f800, 0x0000019e34d5f000, +0x0000019e34d60800, 0x0000019e34d61800, 0x0000019e34d63000, 0x0000019e34d5e000, +0x0000019e34d64000, 0x0000019e34d62000, 0x0000019e33550000, 0x0000019e3354d800, +0x0000019e33551000, 0x0000019e3354b800, 0x0000019e33552000, 0x0000019e3354c000, +0x0000019e3354d000, 0x0000019e3354e800, 0x0000019e3354f800, 0x0000019e321c8000, +0x0000019e321cc000, 0x0000019e321c9800, 0x0000019e321cc800, 0x0000019e321cd800, +0x0000019e321ce800, 0x0000019e321c8800, 0x0000019e321cf000, 0x0000019e321d0000, +0x0000019e321ca000, 0x0000019e321cb000, 0x0000019e321d0800, 0x0000019e321d1800, +0x0000019e321d5000, 0x0000019e2f8b6000, 0x0000019e35886800, 0x0000019e338c8000, +0x0000019e3677e800 +} + +Java Threads: ( => current thread ) + 0x0000019e12a55000 JavaThread "main" [_thread_blocked, id=9844, stack(0x0000001caa000000,0x0000001caa100000)] + 0x0000019e2e452800 JavaThread "Reference Handler" daemon [_thread_blocked, id=22340, stack(0x0000001caa700000,0x0000001caa800000)] + 0x0000019e2e475000 JavaThread "Finalizer" daemon [_thread_blocked, id=17400, stack(0x0000001caa800000,0x0000001caa900000)] + 0x0000019e2e4eb000 JavaThread "Signal Dispatcher" daemon [_thread_blocked, id=14600, stack(0x0000001caa900000,0x0000001caaa00000)] + 0x0000019e2e4ed000 JavaThread "Attach Listener" daemon [_thread_blocked, id=4004, stack(0x0000001caaa00000,0x0000001caab00000)] + 0x0000019e2e4ee000 JavaThread "Service Thread" daemon [_thread_blocked, id=22036, stack(0x0000001caab00000,0x0000001caac00000)] + 0x0000019e2e4f6800 JavaThread "C2 CompilerThread0" daemon [_thread_in_native, id=19752, stack(0x0000001caac00000,0x0000001caad00000)] + 0x0000019e2e4fb000 JavaThread "C1 CompilerThread0" daemon [_thread_blocked, id=18564, stack(0x0000001caad00000,0x0000001caae00000)] + 0x0000019e2e510800 JavaThread "Sweeper thread" daemon [_thread_blocked, id=22060, stack(0x0000001caae00000,0x0000001caaf00000)] + 0x0000019e2e663800 JavaThread "C1 CompilerThread1" daemon [_thread_blocked, id=9876, stack(0x0000001caaf00000,0x0000001cab000000)] + 0x0000019e2e673800 JavaThread "C1 CompilerThread2" daemon [_thread_blocked, id=608, stack(0x0000001cab000000,0x0000001cab100000)] + 0x0000019e2e675800 JavaThread "Common-Cleaner" daemon [_thread_blocked, id=19116, stack(0x0000001cab100000,0x0000001cab200000)] + 0x0000019e2e990000 JavaThread "C2 CompilerThread1" daemon [_thread_in_native, id=15984, stack(0x0000001cab300000,0x0000001cab400000)] + 0x0000019e2f9bf800 JavaThread "C1 CompilerThread3" daemon [_thread_in_native, id=15860, stack(0x0000001caba00000,0x0000001cabb00000)] + 0x0000019e30b90800 JavaThread "Daemon health stats" [_thread_blocked, id=19128, stack(0x0000001cabb00000,0x0000001cabc00000)] + 0x0000019e2fb51800 JavaThread "Incoming local TCP Connector on port 54259" [_thread_in_native, id=21656, stack(0x0000001cab400000,0x0000001cab500000)] + 0x0000019e30d9e800 JavaThread "Daemon periodic checks" [_thread_blocked, id=14200, stack(0x0000001cabc00000,0x0000001cabd00000)] + 0x0000019e305f3000 JavaThread "Daemon" [_thread_blocked, id=11120, stack(0x0000001cabd00000,0x0000001cabe00000)] + 0x0000019e2fcd9800 JavaThread "Handler for socket connection from /127.0.0.1:54259 to /127.0.0.1:54260" [_thread_in_native, id=13004, stack(0x0000001cabe00000,0x0000001cabf00000)] + 0x0000019e30430800 JavaThread "Cancel handler" [_thread_blocked, id=18648, stack(0x0000001cabf00000,0x0000001cac000000)] + 0x0000019e30a2d800 JavaThread "Daemon worker" [_thread_in_vm, id=7772, stack(0x0000001cac000000,0x0000001cac100000)] + 0x0000019e2f9fd000 JavaThread "Asynchronous log dispatcher for DefaultDaemonConnection: socket connection from /127.0.0.1:54259 to /127.0.0.1:54260" [_thread_blocked, id=17856, stack(0x0000001cac100000,0x0000001cac200000)] + 0x0000019e30503000 JavaThread "Stdin handler" [_thread_blocked, id=21096, stack(0x0000001cac200000,0x0000001cac300000)] + 0x0000019e2fa08000 JavaThread "Daemon client event forwarder" [_thread_blocked, id=16276, stack(0x0000001cac300000,0x0000001cac400000)] + 0x0000019e2fa09000 JavaThread "Cache worker for journal cache (C:\Users\Chen Zi Han\.gradle\caches\journal-1)" [_thread_blocked, id=2076, stack(0x0000001cac400000,0x0000001cac500000)] + 0x0000019e2fa06800 JavaThread "File lock request listener" [_thread_in_native, id=4144, stack(0x0000001cac500000,0x0000001cac600000)] + 0x0000019e2fa07000 JavaThread "Cache worker for file hash cache (C:\Users\Chen Zi Han\.gradle\caches\7.4.2\fileHashes)" [_thread_blocked, id=4152, stack(0x0000001cac600000,0x0000001cac700000)] + 0x0000019e310d3000 JavaThread "C2 CompilerThread2" daemon [_thread_in_native, id=23956, stack(0x0000001cad000000,0x0000001cad100000)] + 0x0000019e34d59000 JavaThread "File watcher server" daemon [_thread_in_native, id=16924, stack(0x0000001cad100000,0x0000001cad200000)] + 0x0000019e34d57800 JavaThread "File watcher consumer" daemon [_thread_blocked, id=11976, stack(0x0000001cad200000,0x0000001cad300000)] + 0x0000019e34d5a000 JavaThread "Cache worker for checksums cache (D:\NUS_Year2_SEM2\CS2113_NEW\tp\.gradle\7.4.2\checksums)" [_thread_blocked, id=4936, stack(0x0000001cad300000,0x0000001cad400000)] + 0x0000019e34d55000 JavaThread "Cache worker for cache directory md-rule (C:\Users\Chen Zi Han\.gradle\caches\7.4.2\md-rule)" [_thread_blocked, id=13284, stack(0x0000001cad400000,0x0000001cad500000)] + 0x0000019e34d5b800 JavaThread "Cache worker for file hash cache (D:\NUS_Year2_SEM2\CS2113_NEW\tp\.gradle\7.4.2\fileHashes)" [_thread_blocked, id=13944, stack(0x0000001cad500000,0x0000001cad600000)] + 0x0000019e34d5b000 JavaThread "Cache worker for cache directory md-supplier (C:\Users\Chen Zi Han\.gradle\caches\7.4.2\md-supplier)" [_thread_blocked, id=12536, stack(0x0000001cad600000,0x0000001cad700000)] + 0x0000019e34d56000 JavaThread "Cache worker for execution history cache (C:\Users\Chen Zi Han\.gradle\caches\7.4.2\executionHistory)" [_thread_blocked, id=15796, stack(0x0000001cad700000,0x0000001cad800000)] + 0x0000019e34d58800 JavaThread "jar transforms" [_thread_blocked, id=16664, stack(0x0000001cad800000,0x0000001cad900000)] + 0x0000019e34d5c800 JavaThread "jar transforms Thread 2" [_thread_blocked, id=12640, stack(0x0000001cad900000,0x0000001cada00000)] + 0x0000019e3225d000 JavaThread "C2 CompilerThread3" daemon [_thread_in_native, id=17844, stack(0x0000001cada00000,0x0000001cadb00000)] + 0x0000019e34d5f800 JavaThread "Cache worker for file content cache (C:\Users\Chen Zi Han\.gradle\caches\7.4.2\fileContent)" [_thread_blocked, id=2264, stack(0x0000001cadb00000,0x0000001cadc00000)] + 0x0000019e34d5f000 JavaThread "jar transforms Thread 3" [_thread_blocked, id=15448, stack(0x0000001cadc00000,0x0000001cadd00000)] + 0x0000019e34d60800 JavaThread "jar transforms Thread 4" [_thread_blocked, id=23572, stack(0x0000001cadd00000,0x0000001cade00000)] + 0x0000019e34d61800 JavaThread "jar transforms Thread 5" [_thread_blocked, id=13356, stack(0x0000001cade00000,0x0000001cadf00000)] + 0x0000019e34d63000 JavaThread "jar transforms Thread 6" [_thread_blocked, id=12236, stack(0x0000001cadf00000,0x0000001cae000000)] + 0x0000019e34d5e000 JavaThread "Cache worker for dependencies-accessors (D:\NUS_Year2_SEM2\CS2113_NEW\tp\.gradle\7.4.2\dependencies-accessors)" [_thread_blocked, id=23640, stack(0x0000001cae000000,0x0000001cae100000)] + 0x0000019e34d64000 JavaThread "jar transforms Thread 7" [_thread_blocked, id=4496, stack(0x0000001cae100000,0x0000001cae200000)] + 0x0000019e34d62000 JavaThread "Cache worker for Build Output Cleanup Cache (D:\NUS_Year2_SEM2\CS2113_NEW\tp\.gradle\buildOutputCleanup)" [_thread_blocked, id=3760, stack(0x0000001cae200000,0x0000001cae300000)] + 0x0000019e33550000 JavaThread "Unconstrained build operations" [_thread_blocked, id=6824, stack(0x0000001cae300000,0x0000001cae400000)] + 0x0000019e3354d800 JavaThread "Unconstrained build operations Thread 2" [_thread_blocked, id=4796, stack(0x0000001cae400000,0x0000001cae500000)] + 0x0000019e33551000 JavaThread "Unconstrained build operations Thread 3" [_thread_blocked, id=10708, stack(0x0000001cae500000,0x0000001cae600000)] + 0x0000019e3354b800 JavaThread "Unconstrained build operations Thread 4" [_thread_blocked, id=2752, stack(0x0000001cae600000,0x0000001cae700000)] + 0x0000019e33552000 JavaThread "Unconstrained build operations Thread 5" [_thread_blocked, id=21852, stack(0x0000001cae700000,0x0000001cae800000)] + 0x0000019e3354c000 JavaThread "Unconstrained build operations Thread 6" [_thread_blocked, id=21640, stack(0x0000001cae800000,0x0000001cae900000)] + 0x0000019e3354d000 JavaThread "Unconstrained build operations Thread 7" [_thread_blocked, id=6940, stack(0x0000001cae900000,0x0000001caea00000)] + 0x0000019e3354e800 JavaThread "Unconstrained build operations Thread 8" [_thread_blocked, id=12628, stack(0x0000001caea00000,0x0000001caeb00000)] + 0x0000019e3354f800 JavaThread "Unconstrained build operations Thread 9" [_thread_blocked, id=23556, stack(0x0000001caeb00000,0x0000001caec00000)] + 0x0000019e321c8000 JavaThread "Unconstrained build operations Thread 10" [_thread_blocked, id=15300, stack(0x0000001caec00000,0x0000001caed00000)] + 0x0000019e321cc000 JavaThread "Unconstrained build operations Thread 11" [_thread_blocked, id=21172, stack(0x0000001caed00000,0x0000001caee00000)] + 0x0000019e321c9800 JavaThread "Unconstrained build operations Thread 12" [_thread_blocked, id=18068, stack(0x0000001caee00000,0x0000001caef00000)] + 0x0000019e321cc800 JavaThread "Unconstrained build operations Thread 13" [_thread_blocked, id=17992, stack(0x0000001caef00000,0x0000001caf000000)] + 0x0000019e321cd800 JavaThread "jar transforms Thread 8" [_thread_blocked, id=5856, stack(0x0000001caf000000,0x0000001caf100000)] + 0x0000019e321ce800 JavaThread "jar transforms Thread 9" [_thread_blocked, id=24524, stack(0x0000001caf100000,0x0000001caf200000)] + 0x0000019e321c8800 JavaThread "jar transforms Thread 10" [_thread_blocked, id=4528, stack(0x0000001caf200000,0x0000001caf300000)] + 0x0000019e321cf000 JavaThread "jar transforms Thread 11" [_thread_blocked, id=14220, stack(0x0000001caf300000,0x0000001caf400000)] + 0x0000019e321d0000 JavaThread "jar transforms Thread 12" [_thread_blocked, id=19700, stack(0x0000001caf400000,0x0000001caf500000)] + 0x0000019e321ca000 JavaThread "jar transforms Thread 13" [_thread_blocked, id=13872, stack(0x0000001caf500000,0x0000001caf600000)] + 0x0000019e321cb000 JavaThread "jar transforms Thread 14" [_thread_blocked, id=17876, stack(0x0000001caf600000,0x0000001caf700000)] + 0x0000019e321d0800 JavaThread "jar transforms Thread 15" [_thread_blocked, id=10160, stack(0x0000001caf700000,0x0000001caf800000)] + 0x0000019e321d1800 JavaThread "jar transforms Thread 16" [_thread_blocked, id=9240, stack(0x0000001caf800000,0x0000001caf900000)] + 0x0000019e321d5000 JavaThread "Memory manager" [_thread_blocked, id=6208, stack(0x0000001caf900000,0x0000001cafa00000)] + 0x0000019e2f8b6000 JavaThread "C2 CompilerThread4" daemon [_thread_in_native, id=20584, stack(0x0000001cafa00000,0x0000001cafb00000)] + 0x0000019e35886800 JavaThread "C2 CompilerThread5" daemon [_thread_in_native, id=21168, stack(0x0000001cafb00000,0x0000001cafc00000)] + 0x0000019e338c8000 JavaThread "C2 CompilerThread6" daemon [_thread_in_native, id=21556, stack(0x0000001cafc00000,0x0000001cafd00000)] +=>0x0000019e3677e800 JavaThread "C2 CompilerThread7" daemon [_thread_in_native, id=21492, stack(0x0000001cafd00000,0x0000001cafe00000)] + +Other Threads: + 0x0000019e2e450800 VMThread "VM Thread" [stack: 0x0000001caa600000,0x0000001caa700000] [id=14092] + 0x0000019e2e6ef800 WatcherThread [stack: 0x0000001cab200000,0x0000001cab300000] [id=15336] + 0x0000019e12a6a000 GCTaskThread "GC Thread#0" [stack: 0x0000001caa100000,0x0000001caa200000] [id=15424] + 0x0000019e2fc0d800 GCTaskThread "GC Thread#1" [stack: 0x0000001cab500000,0x0000001cab600000] [id=364] + 0x0000019e2fe58800 GCTaskThread "GC Thread#2" [stack: 0x0000001cab600000,0x0000001cab700000] [id=6424] + 0x0000019e2fc6c000 GCTaskThread "GC Thread#3" [stack: 0x0000001cab700000,0x0000001cab800000] [id=14900] + 0x0000019e304b0800 GCTaskThread "GC Thread#4" [stack: 0x0000001cab800000,0x0000001cab900000] [id=19636] + 0x0000019e2f610800 GCTaskThread "GC Thread#5" [stack: 0x0000001cab900000,0x0000001caba00000] [id=18372] + 0x0000019e2f3e9000 GCTaskThread "GC Thread#6" [stack: 0x0000001cac700000,0x0000001cac800000] [id=23752] + 0x0000019e3161e800 GCTaskThread "GC Thread#7" [stack: 0x0000001cac800000,0x0000001cac900000] [id=10748] + 0x0000019e2ff17800 GCTaskThread "GC Thread#8" [stack: 0x0000001cac900000,0x0000001caca00000] [id=23948] + 0x0000019e30464000 GCTaskThread "GC Thread#9" [stack: 0x0000001caca00000,0x0000001cacb00000] [id=1308] + 0x0000019e311c4000 GCTaskThread "GC Thread#10" [stack: 0x0000001cacb00000,0x0000001cacc00000] [id=24264] + 0x0000019e2fb01800 GCTaskThread "GC Thread#11" [stack: 0x0000001cacc00000,0x0000001cacd00000] [id=16712] + 0x0000019e30eca800 GCTaskThread "GC Thread#12" [stack: 0x0000001cacd00000,0x0000001cace00000] [id=6020] + 0x0000019e12a80000 ConcurrentGCThread "G1 Main Marker" [stack: 0x0000001caa200000,0x0000001caa300000] [id=15084] + 0x0000019e12a81000 ConcurrentGCThread "G1 Conc#0" [stack: 0x0000001caa300000,0x0000001caa400000] [id=16708] + 0x0000019e2fe18800 ConcurrentGCThread "G1 Conc#1" [stack: 0x0000001cace00000,0x0000001cacf00000] [id=12728] + 0x0000019e2faa8000 ConcurrentGCThread "G1 Conc#2" [stack: 0x0000001cacf00000,0x0000001cad000000] [id=11228] + 0x0000019e2dae5800 ConcurrentGCThread "G1 Refine#0" [stack: 0x0000001caa400000,0x0000001caa500000] [id=16612] + 0x0000019e2dae6800 ConcurrentGCThread "G1 Young RemSet Sampling" [stack: 0x0000001caa500000,0x0000001caa600000] [id=2444] + +Threads with active compile tasks: +C2 CompilerThread0 3571 5373 ! 4 java.lang.reflect.Executable::sharedToGenericString (321 bytes) +C2 CompilerThread1 3571 5248 4 com.sun.beans.TypeResolver::resolve (37 bytes) +C2 CompilerThread2 3571 5514 4 org.gradle.internal.reflect.ClassInspector::inspectClass (179 bytes) +C2 CompilerThread3 3571 5328 4 java.beans.MethodRef::set (58 bytes) +C2 CompilerThread4 3571 5380 4 org.objectweb.asm.Frame::execute (2318 bytes) +C2 CompilerThread5 3571 5532 4 java.util.TreeMap::fixAfterInsertion (267 bytes) +C2 CompilerThread6 3571 5415 % 4 org.gradle.internal.instantiation.generator.AbstractClassGenerator::inspectType @ 77 (560 bytes) +C2 CompilerThread7 3571 5515 4 org.gradle.internal.reflect.MethodSet::add (50 bytes) + +VM state:not at safepoint (normal execution) + +VM Mutex/Monitor currently owned by a thread: ([mutex/lock_event]) +[0x0000019e12a53210] CompiledIC_lock - owner thread: 0x0000000000000000 + +Heap address: 0x00000000e0000000, size: 512 MB, Compressed Oops mode: 32-bit +Narrow klass base: 0x0000000000000000, Narrow klass shift: 3 +Compressed class space size: 260046848 Address: 0x0000000100000000 + +Heap: + garbage-first heap total 262144K, used 102582K [0x00000000e0000000, 0x0000000100000000) + region size 1024K, 83 young (84992K), 19 survivors (19456K) + Metaspace used 54519K, capacity 56325K, committed 56576K, reserved 303104K + class space used 7254K, capacity 7914K, committed 7936K, reserved 253952K +Heap Regions: E=young(eden), S=young(survivor), O=old, HS=humongous(starts), HC=humongous(continues), CS=collection set, F=free, A=archive, TAMS=top-at-mark-start (previous, next) +| 0|0x00000000e0000000, 0x00000000e0100000, 0x00000000e0100000|100%| O| |TAMS 0x00000000e0100000, 0x00000000e0000000| Untracked +| 1|0x00000000e0100000, 0x00000000e0200000, 0x00000000e0200000|100%| O| |TAMS 0x00000000e0200000, 0x00000000e0100000| Untracked +| 2|0x00000000e0200000, 0x00000000e0300000, 0x00000000e0300000|100%| O| |TAMS 0x00000000e0300000, 0x00000000e0200000| Untracked +| 3|0x00000000e0300000, 0x00000000e0400000, 0x00000000e0400000|100%|HS| |TAMS 0x00000000e0400000, 0x00000000e0300000| Complete +| 4|0x00000000e0400000, 0x00000000e0500000, 0x00000000e0500000|100%|HC| |TAMS 0x00000000e0500000, 0x00000000e0400000| Complete +| 5|0x00000000e0500000, 0x00000000e0600000, 0x00000000e0600000|100%|HC| |TAMS 0x00000000e0600000, 0x00000000e0500000| Complete +| 6|0x00000000e0600000, 0x00000000e0700000, 0x00000000e0700000|100%| O| |TAMS 0x00000000e0700000, 0x00000000e0600000| Untracked +| 7|0x00000000e0700000, 0x00000000e0800000, 0x00000000e0800000|100%| O| |TAMS 0x00000000e0800000, 0x00000000e0700000| Untracked +| 8|0x00000000e0800000, 0x00000000e0900000, 0x00000000e0900000|100%| O| |TAMS 0x00000000e0900000, 0x00000000e0800000| Untracked +| 9|0x00000000e0900000, 0x00000000e0a00000, 0x00000000e0a00000|100%| O| |TAMS 0x00000000e0a00000, 0x00000000e0900000| Untracked +| 10|0x00000000e0a00000, 0x00000000e0b00000, 0x00000000e0b00000|100%| O| |TAMS 0x00000000e0b00000, 0x00000000e0a00000| Untracked +| 11|0x00000000e0b00000, 0x00000000e0c00000, 0x00000000e0c00000|100%| O| |TAMS 0x00000000e0c00000, 0x00000000e0b00000| Untracked +| 12|0x00000000e0c00000, 0x00000000e0d00000, 0x00000000e0d00000|100%| O| |TAMS 0x00000000e0d00000, 0x00000000e0c00000| Untracked +| 13|0x00000000e0d00000, 0x00000000e0e00000, 0x00000000e0e00000|100%| O| |TAMS 0x00000000e0e00000, 0x00000000e0d00000| Untracked +| 14|0x00000000e0e00000, 0x00000000e0f00000, 0x00000000e0f00000|100%| O| |TAMS 0x00000000e0f00000, 0x00000000e0e00000| Untracked +| 15|0x00000000e0f00000, 0x00000000e1000000, 0x00000000e1000000|100%| O| |TAMS 0x00000000e1000000, 0x00000000e0f00000| Untracked +| 16|0x00000000e1000000, 0x00000000e1100000, 0x00000000e1100000|100%| O| |TAMS 0x00000000e10e5400, 0x00000000e1000000| Untracked +| 17|0x00000000e1100000, 0x00000000e1200000, 0x00000000e1200000|100%| O| |TAMS 0x00000000e1100000, 0x00000000e1100000| Untracked +| 18|0x00000000e1200000, 0x00000000e1300000, 0x00000000e1300000|100%| O| |TAMS 0x00000000e1200000, 0x00000000e1200000| Untracked +| 19|0x00000000e1300000, 0x00000000e130a600, 0x00000000e1400000| 4%| O| |TAMS 0x00000000e1300000, 0x00000000e1300000| Untracked +| 20|0x00000000e1400000, 0x00000000e1400000, 0x00000000e1500000| 0%| F| |TAMS 0x00000000e1400000, 0x00000000e1400000| Untracked +| 21|0x00000000e1500000, 0x00000000e1500000, 0x00000000e1600000| 0%| F| |TAMS 0x00000000e1500000, 0x00000000e1500000| Untracked +| 22|0x00000000e1600000, 0x00000000e1600000, 0x00000000e1700000| 0%| F| |TAMS 0x00000000e1600000, 0x00000000e1600000| Untracked +| 23|0x00000000e1700000, 0x00000000e1700000, 0x00000000e1800000| 0%| F| |TAMS 0x00000000e1700000, 0x00000000e1700000| Untracked +| 24|0x00000000e1800000, 0x00000000e1800000, 0x00000000e1900000| 0%| F| |TAMS 0x00000000e1800000, 0x00000000e1800000| Untracked +| 25|0x00000000e1900000, 0x00000000e1900000, 0x00000000e1a00000| 0%| F| |TAMS 0x00000000e1900000, 0x00000000e1900000| Untracked +| 26|0x00000000e1a00000, 0x00000000e1a00000, 0x00000000e1b00000| 0%| F| |TAMS 0x00000000e1a00000, 0x00000000e1a00000| Untracked +| 27|0x00000000e1b00000, 0x00000000e1b00000, 0x00000000e1c00000| 0%| F| |TAMS 0x00000000e1b00000, 0x00000000e1b00000| Untracked +| 28|0x00000000e1c00000, 0x00000000e1c00000, 0x00000000e1d00000| 0%| F| |TAMS 0x00000000e1c00000, 0x00000000e1c00000| Untracked +| 29|0x00000000e1d00000, 0x00000000e1d00000, 0x00000000e1e00000| 0%| F| |TAMS 0x00000000e1d00000, 0x00000000e1d00000| Untracked +| 30|0x00000000e1e00000, 0x00000000e1e00000, 0x00000000e1f00000| 0%| F| |TAMS 0x00000000e1e00000, 0x00000000e1e00000| Untracked +| 31|0x00000000e1f00000, 0x00000000e1f00000, 0x00000000e2000000| 0%| F| |TAMS 0x00000000e1f00000, 0x00000000e1f00000| Untracked +| 32|0x00000000e2000000, 0x00000000e2000000, 0x00000000e2100000| 0%| F| |TAMS 0x00000000e2000000, 0x00000000e2000000| Untracked +| 33|0x00000000e2100000, 0x00000000e2100000, 0x00000000e2200000| 0%| F| |TAMS 0x00000000e2100000, 0x00000000e2100000| Untracked +| 34|0x00000000e2200000, 0x00000000e2200000, 0x00000000e2300000| 0%| F| |TAMS 0x00000000e2200000, 0x00000000e2200000| Untracked +| 35|0x00000000e2300000, 0x00000000e2300000, 0x00000000e2400000| 0%| F| |TAMS 0x00000000e2300000, 0x00000000e2300000| Untracked +| 36|0x00000000e2400000, 0x00000000e2400000, 0x00000000e2500000| 0%| F| |TAMS 0x00000000e2400000, 0x00000000e2400000| Untracked +| 37|0x00000000e2500000, 0x00000000e2500000, 0x00000000e2600000| 0%| F| |TAMS 0x00000000e2500000, 0x00000000e2500000| Untracked +| 38|0x00000000e2600000, 0x00000000e2600000, 0x00000000e2700000| 0%| F| |TAMS 0x00000000e2600000, 0x00000000e2600000| Untracked +| 39|0x00000000e2700000, 0x00000000e2700000, 0x00000000e2800000| 0%| F| |TAMS 0x00000000e2700000, 0x00000000e2700000| Untracked +| 40|0x00000000e2800000, 0x00000000e2800000, 0x00000000e2900000| 0%| F| |TAMS 0x00000000e2800000, 0x00000000e2800000| Untracked +| 41|0x00000000e2900000, 0x00000000e2900000, 0x00000000e2a00000| 0%| F| |TAMS 0x00000000e2900000, 0x00000000e2900000| Untracked +| 42|0x00000000e2a00000, 0x00000000e2a00000, 0x00000000e2b00000| 0%| F| |TAMS 0x00000000e2a00000, 0x00000000e2a00000| Untracked +| 43|0x00000000e2b00000, 0x00000000e2b00000, 0x00000000e2c00000| 0%| F| |TAMS 0x00000000e2b00000, 0x00000000e2b00000| Untracked +| 44|0x00000000e2c00000, 0x00000000e2c00000, 0x00000000e2d00000| 0%| F| |TAMS 0x00000000e2c00000, 0x00000000e2c00000| Untracked +| 45|0x00000000e2d00000, 0x00000000e2d00000, 0x00000000e2e00000| 0%| F| |TAMS 0x00000000e2d00000, 0x00000000e2d00000| Untracked +| 46|0x00000000e2e00000, 0x00000000e2e00000, 0x00000000e2f00000| 0%| F| |TAMS 0x00000000e2e00000, 0x00000000e2e00000| Untracked +| 47|0x00000000e2f00000, 0x00000000e2f00000, 0x00000000e3000000| 0%| F| |TAMS 0x00000000e2f00000, 0x00000000e2f00000| Untracked +| 48|0x00000000e3000000, 0x00000000e3000000, 0x00000000e3100000| 0%| F| |TAMS 0x00000000e3000000, 0x00000000e3000000| Untracked +| 49|0x00000000e3100000, 0x00000000e3100000, 0x00000000e3200000| 0%| F| |TAMS 0x00000000e3100000, 0x00000000e3100000| Untracked +| 50|0x00000000e3200000, 0x00000000e3200000, 0x00000000e3300000| 0%| F| |TAMS 0x00000000e3200000, 0x00000000e3200000| Untracked +| 51|0x00000000e3300000, 0x00000000e3300000, 0x00000000e3400000| 0%| F| |TAMS 0x00000000e3300000, 0x00000000e3300000| Untracked +| 52|0x00000000e3400000, 0x00000000e3400000, 0x00000000e3500000| 0%| F| |TAMS 0x00000000e3400000, 0x00000000e3400000| Untracked +| 53|0x00000000e3500000, 0x00000000e3500000, 0x00000000e3600000| 0%| F| |TAMS 0x00000000e3500000, 0x00000000e3500000| Untracked +| 54|0x00000000e3600000, 0x00000000e3600000, 0x00000000e3700000| 0%| F| |TAMS 0x00000000e3600000, 0x00000000e3600000| Untracked +| 55|0x00000000e3700000, 0x00000000e3700000, 0x00000000e3800000| 0%| F| |TAMS 0x00000000e3700000, 0x00000000e3700000| Untracked +| 56|0x00000000e3800000, 0x00000000e3800000, 0x00000000e3900000| 0%| F| |TAMS 0x00000000e3800000, 0x00000000e3800000| Untracked +| 57|0x00000000e3900000, 0x00000000e3900000, 0x00000000e3a00000| 0%| F| |TAMS 0x00000000e3900000, 0x00000000e3900000| Untracked +| 58|0x00000000e3a00000, 0x00000000e3a00000, 0x00000000e3b00000| 0%| F| |TAMS 0x00000000e3a00000, 0x00000000e3a00000| Untracked +| 59|0x00000000e3b00000, 0x00000000e3b00000, 0x00000000e3c00000| 0%| F| |TAMS 0x00000000e3b00000, 0x00000000e3b00000| Untracked +| 60|0x00000000e3c00000, 0x00000000e3c00000, 0x00000000e3d00000| 0%| F| |TAMS 0x00000000e3c00000, 0x00000000e3c00000| Untracked +| 61|0x00000000e3d00000, 0x00000000e3d00000, 0x00000000e3e00000| 0%| F| |TAMS 0x00000000e3d00000, 0x00000000e3d00000| Untracked +| 62|0x00000000e3e00000, 0x00000000e3e00000, 0x00000000e3f00000| 0%| F| |TAMS 0x00000000e3e00000, 0x00000000e3e00000| Untracked +| 63|0x00000000e3f00000, 0x00000000e3f00000, 0x00000000e4000000| 0%| F| |TAMS 0x00000000e3f00000, 0x00000000e3f00000| Untracked +| 64|0x00000000e4000000, 0x00000000e4000000, 0x00000000e4100000| 0%| F| |TAMS 0x00000000e4000000, 0x00000000e4000000| Untracked +| 65|0x00000000e4100000, 0x00000000e4100000, 0x00000000e4200000| 0%| F| |TAMS 0x00000000e4100000, 0x00000000e4100000| Untracked +| 66|0x00000000e4200000, 0x00000000e4200000, 0x00000000e4300000| 0%| F| |TAMS 0x00000000e4200000, 0x00000000e4200000| Untracked +| 67|0x00000000e4300000, 0x00000000e4300000, 0x00000000e4400000| 0%| F| |TAMS 0x00000000e4300000, 0x00000000e4300000| Untracked +| 68|0x00000000e4400000, 0x00000000e4400000, 0x00000000e4500000| 0%| F| |TAMS 0x00000000e4400000, 0x00000000e4400000| Untracked +| 69|0x00000000e4500000, 0x00000000e4500000, 0x00000000e4600000| 0%| F| |TAMS 0x00000000e4500000, 0x00000000e4500000| Untracked +| 70|0x00000000e4600000, 0x00000000e4600000, 0x00000000e4700000| 0%| F| |TAMS 0x00000000e4600000, 0x00000000e4600000| Untracked +| 71|0x00000000e4700000, 0x00000000e4700000, 0x00000000e4800000| 0%| F| |TAMS 0x00000000e4700000, 0x00000000e4700000| Untracked +| 72|0x00000000e4800000, 0x00000000e4800000, 0x00000000e4900000| 0%| F| |TAMS 0x00000000e4800000, 0x00000000e4800000| Untracked +| 73|0x00000000e4900000, 0x00000000e4900000, 0x00000000e4a00000| 0%| F| |TAMS 0x00000000e4900000, 0x00000000e4900000| Untracked +| 74|0x00000000e4a00000, 0x00000000e4a00000, 0x00000000e4b00000| 0%| F| |TAMS 0x00000000e4a00000, 0x00000000e4a00000| Untracked +| 75|0x00000000e4b00000, 0x00000000e4b00000, 0x00000000e4c00000| 0%| F| |TAMS 0x00000000e4b00000, 0x00000000e4b00000| Untracked +| 76|0x00000000e4c00000, 0x00000000e4c00000, 0x00000000e4d00000| 0%| F| |TAMS 0x00000000e4c00000, 0x00000000e4c00000| Untracked +| 77|0x00000000e4d00000, 0x00000000e4d00000, 0x00000000e4e00000| 0%| F| |TAMS 0x00000000e4d00000, 0x00000000e4d00000| Untracked +| 78|0x00000000e4e00000, 0x00000000e4e00000, 0x00000000e4f00000| 0%| F| |TAMS 0x00000000e4e00000, 0x00000000e4e00000| Untracked +| 79|0x00000000e4f00000, 0x00000000e4f00000, 0x00000000e5000000| 0%| F| |TAMS 0x00000000e4f00000, 0x00000000e4f00000| Untracked +| 80|0x00000000e5000000, 0x00000000e5000000, 0x00000000e5100000| 0%| F| |TAMS 0x00000000e5000000, 0x00000000e5000000| Untracked +| 81|0x00000000e5100000, 0x00000000e5100000, 0x00000000e5200000| 0%| F| |TAMS 0x00000000e5100000, 0x00000000e5100000| Untracked +| 82|0x00000000e5200000, 0x00000000e5200000, 0x00000000e5300000| 0%| F| |TAMS 0x00000000e5200000, 0x00000000e5200000| Untracked +| 83|0x00000000e5300000, 0x00000000e5300000, 0x00000000e5400000| 0%| F| |TAMS 0x00000000e5300000, 0x00000000e5300000| Untracked +| 84|0x00000000e5400000, 0x00000000e5400000, 0x00000000e5500000| 0%| F| |TAMS 0x00000000e5400000, 0x00000000e5400000| Untracked +| 85|0x00000000e5500000, 0x00000000e5500000, 0x00000000e5600000| 0%| F| |TAMS 0x00000000e5500000, 0x00000000e5500000| Untracked +| 86|0x00000000e5600000, 0x00000000e5600000, 0x00000000e5700000| 0%| F| |TAMS 0x00000000e5600000, 0x00000000e5600000| Untracked +| 87|0x00000000e5700000, 0x00000000e5700000, 0x00000000e5800000| 0%| F| |TAMS 0x00000000e5700000, 0x00000000e5700000| Untracked +| 88|0x00000000e5800000, 0x00000000e58232b8, 0x00000000e5900000| 13%| S|CS|TAMS 0x00000000e5800000, 0x00000000e5800000| Complete +| 89|0x00000000e5900000, 0x00000000e5a00000, 0x00000000e5a00000|100%| S|CS|TAMS 0x00000000e5900000, 0x00000000e5900000| Complete +| 90|0x00000000e5a00000, 0x00000000e5b00000, 0x00000000e5b00000|100%| S|CS|TAMS 0x00000000e5a00000, 0x00000000e5a00000| Complete +| 91|0x00000000e5b00000, 0x00000000e5c00000, 0x00000000e5c00000|100%| S|CS|TAMS 0x00000000e5b00000, 0x00000000e5b00000| Complete +| 92|0x00000000e5c00000, 0x00000000e5d00000, 0x00000000e5d00000|100%| S|CS|TAMS 0x00000000e5c00000, 0x00000000e5c00000| Complete +| 93|0x00000000e5d00000, 0x00000000e5e00000, 0x00000000e5e00000|100%| S|CS|TAMS 0x00000000e5d00000, 0x00000000e5d00000| Complete +| 94|0x00000000e5e00000, 0x00000000e5f00000, 0x00000000e5f00000|100%| S|CS|TAMS 0x00000000e5e00000, 0x00000000e5e00000| Complete +| 95|0x00000000e5f00000, 0x00000000e6000000, 0x00000000e6000000|100%| S|CS|TAMS 0x00000000e5f00000, 0x00000000e5f00000| Complete +| 96|0x00000000e6000000, 0x00000000e6100000, 0x00000000e6100000|100%| S|CS|TAMS 0x00000000e6000000, 0x00000000e6000000| Complete +| 97|0x00000000e6100000, 0x00000000e6200000, 0x00000000e6200000|100%| S|CS|TAMS 0x00000000e6100000, 0x00000000e6100000| Complete +| 98|0x00000000e6200000, 0x00000000e6300000, 0x00000000e6300000|100%| S|CS|TAMS 0x00000000e6200000, 0x00000000e6200000| Complete +| 99|0x00000000e6300000, 0x00000000e6400000, 0x00000000e6400000|100%| S|CS|TAMS 0x00000000e6300000, 0x00000000e6300000| Complete +| 100|0x00000000e6400000, 0x00000000e6500000, 0x00000000e6500000|100%| S|CS|TAMS 0x00000000e6400000, 0x00000000e6400000| Complete +| 101|0x00000000e6500000, 0x00000000e6600000, 0x00000000e6600000|100%| S|CS|TAMS 0x00000000e6500000, 0x00000000e6500000| Complete +| 102|0x00000000e6600000, 0x00000000e6700000, 0x00000000e6700000|100%| S|CS|TAMS 0x00000000e6600000, 0x00000000e6600000| Complete +| 103|0x00000000e6700000, 0x00000000e6800000, 0x00000000e6800000|100%| S|CS|TAMS 0x00000000e6700000, 0x00000000e6700000| Complete +| 104|0x00000000e6800000, 0x00000000e6900000, 0x00000000e6900000|100%| S|CS|TAMS 0x00000000e6800000, 0x00000000e6800000| Complete +| 105|0x00000000e6900000, 0x00000000e6a00000, 0x00000000e6a00000|100%| S|CS|TAMS 0x00000000e6900000, 0x00000000e6900000| Complete +| 106|0x00000000e6a00000, 0x00000000e6b00000, 0x00000000e6b00000|100%| S|CS|TAMS 0x00000000e6a00000, 0x00000000e6a00000| Complete +| 107|0x00000000e6b00000, 0x00000000e6b00000, 0x00000000e6c00000| 0%| F| |TAMS 0x00000000e6b00000, 0x00000000e6b00000| Untracked +| 108|0x00000000e6c00000, 0x00000000e6c00000, 0x00000000e6d00000| 0%| F| |TAMS 0x00000000e6c00000, 0x00000000e6c00000| Untracked +| 109|0x00000000e6d00000, 0x00000000e6d00000, 0x00000000e6e00000| 0%| F| |TAMS 0x00000000e6d00000, 0x00000000e6d00000| Untracked +| 110|0x00000000e6e00000, 0x00000000e6e00000, 0x00000000e6f00000| 0%| F| |TAMS 0x00000000e6e00000, 0x00000000e6e00000| Untracked +| 111|0x00000000e6f00000, 0x00000000e6f00000, 0x00000000e7000000| 0%| F| |TAMS 0x00000000e6f00000, 0x00000000e6f00000| Untracked +| 112|0x00000000e7000000, 0x00000000e7000000, 0x00000000e7100000| 0%| F| |TAMS 0x00000000e7000000, 0x00000000e7000000| Untracked +| 113|0x00000000e7100000, 0x00000000e7100000, 0x00000000e7200000| 0%| F| |TAMS 0x00000000e7100000, 0x00000000e7100000| Untracked +| 114|0x00000000e7200000, 0x00000000e7200000, 0x00000000e7300000| 0%| F| |TAMS 0x00000000e7200000, 0x00000000e7200000| Untracked +| 115|0x00000000e7300000, 0x00000000e7300000, 0x00000000e7400000| 0%| F| |TAMS 0x00000000e7300000, 0x00000000e7300000| Untracked +| 116|0x00000000e7400000, 0x00000000e7400000, 0x00000000e7500000| 0%| F| |TAMS 0x00000000e7400000, 0x00000000e7400000| Untracked +| 117|0x00000000e7500000, 0x00000000e7500000, 0x00000000e7600000| 0%| F| |TAMS 0x00000000e7500000, 0x00000000e7500000| Untracked +| 118|0x00000000e7600000, 0x00000000e7600000, 0x00000000e7700000| 0%| F| |TAMS 0x00000000e7600000, 0x00000000e7600000| Untracked +| 119|0x00000000e7700000, 0x00000000e7700000, 0x00000000e7800000| 0%| F| |TAMS 0x00000000e7700000, 0x00000000e7700000| Untracked +| 120|0x00000000e7800000, 0x00000000e7800000, 0x00000000e7900000| 0%| F| |TAMS 0x00000000e7800000, 0x00000000e7800000| Untracked +| 121|0x00000000e7900000, 0x00000000e7900000, 0x00000000e7a00000| 0%| F| |TAMS 0x00000000e7900000, 0x00000000e7900000| Untracked +| 122|0x00000000e7a00000, 0x00000000e7a00000, 0x00000000e7b00000| 0%| F| |TAMS 0x00000000e7a00000, 0x00000000e7a00000| Untracked +| 123|0x00000000e7b00000, 0x00000000e7b00000, 0x00000000e7c00000| 0%| F| |TAMS 0x00000000e7b00000, 0x00000000e7b00000| Untracked +| 124|0x00000000e7c00000, 0x00000000e7c00000, 0x00000000e7d00000| 0%| F| |TAMS 0x00000000e7c00000, 0x00000000e7c00000| Untracked +| 125|0x00000000e7d00000, 0x00000000e7d00000, 0x00000000e7e00000| 0%| F| |TAMS 0x00000000e7d00000, 0x00000000e7d00000| Untracked +| 126|0x00000000e7e00000, 0x00000000e7e00000, 0x00000000e7f00000| 0%| F| |TAMS 0x00000000e7e00000, 0x00000000e7e00000| Untracked +| 127|0x00000000e7f00000, 0x00000000e7f00000, 0x00000000e8000000| 0%| F| |TAMS 0x00000000e7f00000, 0x00000000e7f00000| Untracked +| 128|0x00000000e8000000, 0x00000000e8000000, 0x00000000e8100000| 0%| F| |TAMS 0x00000000e8000000, 0x00000000e8000000| Untracked +| 129|0x00000000e8100000, 0x00000000e8100000, 0x00000000e8200000| 0%| F| |TAMS 0x00000000e8100000, 0x00000000e8100000| Untracked +| 130|0x00000000e8200000, 0x00000000e8200000, 0x00000000e8300000| 0%| F| |TAMS 0x00000000e8200000, 0x00000000e8200000| Untracked +| 131|0x00000000e8300000, 0x00000000e8300000, 0x00000000e8400000| 0%| F| |TAMS 0x00000000e8300000, 0x00000000e8300000| Untracked +| 132|0x00000000e8400000, 0x00000000e8400000, 0x00000000e8500000| 0%| F| |TAMS 0x00000000e8400000, 0x00000000e8400000| Untracked +| 133|0x00000000e8500000, 0x00000000e8500000, 0x00000000e8600000| 0%| F| |TAMS 0x00000000e8500000, 0x00000000e8500000| Untracked +| 134|0x00000000e8600000, 0x00000000e8600000, 0x00000000e8700000| 0%| F| |TAMS 0x00000000e8600000, 0x00000000e8600000| Untracked +| 135|0x00000000e8700000, 0x00000000e8700000, 0x00000000e8800000| 0%| F| |TAMS 0x00000000e8700000, 0x00000000e8700000| Untracked +| 136|0x00000000e8800000, 0x00000000e8800000, 0x00000000e8900000| 0%| F| |TAMS 0x00000000e8800000, 0x00000000e8800000| Untracked +| 137|0x00000000e8900000, 0x00000000e8900000, 0x00000000e8a00000| 0%| F| |TAMS 0x00000000e8900000, 0x00000000e8900000| Untracked +| 138|0x00000000e8a00000, 0x00000000e8a00000, 0x00000000e8b00000| 0%| F| |TAMS 0x00000000e8a00000, 0x00000000e8a00000| Untracked +| 139|0x00000000e8b00000, 0x00000000e8b00000, 0x00000000e8c00000| 0%| F| |TAMS 0x00000000e8b00000, 0x00000000e8b00000| Untracked +| 140|0x00000000e8c00000, 0x00000000e8c00000, 0x00000000e8d00000| 0%| F| |TAMS 0x00000000e8c00000, 0x00000000e8c00000| Untracked +| 141|0x00000000e8d00000, 0x00000000e8d00000, 0x00000000e8e00000| 0%| F| |TAMS 0x00000000e8d00000, 0x00000000e8d00000| Untracked +| 142|0x00000000e8e00000, 0x00000000e8e00000, 0x00000000e8f00000| 0%| F| |TAMS 0x00000000e8e00000, 0x00000000e8e00000| Untracked +| 143|0x00000000e8f00000, 0x00000000e8f00000, 0x00000000e9000000| 0%| F| |TAMS 0x00000000e8f00000, 0x00000000e8f00000| Untracked +| 144|0x00000000e9000000, 0x00000000e9000000, 0x00000000e9100000| 0%| F| |TAMS 0x00000000e9000000, 0x00000000e9000000| Untracked +| 145|0x00000000e9100000, 0x00000000e9100000, 0x00000000e9200000| 0%| F| |TAMS 0x00000000e9100000, 0x00000000e9100000| Untracked +| 146|0x00000000e9200000, 0x00000000e9200000, 0x00000000e9300000| 0%| F| |TAMS 0x00000000e9200000, 0x00000000e9200000| Untracked +| 147|0x00000000e9300000, 0x00000000e9300000, 0x00000000e9400000| 0%| F| |TAMS 0x00000000e9300000, 0x00000000e9300000| Untracked +| 148|0x00000000e9400000, 0x00000000e9400000, 0x00000000e9500000| 0%| F| |TAMS 0x00000000e9400000, 0x00000000e9400000| Untracked +| 149|0x00000000e9500000, 0x00000000e9500000, 0x00000000e9600000| 0%| F| |TAMS 0x00000000e9500000, 0x00000000e9500000| Untracked +| 150|0x00000000e9600000, 0x00000000e9600000, 0x00000000e9700000| 0%| F| |TAMS 0x00000000e9600000, 0x00000000e9600000| Untracked +| 151|0x00000000e9700000, 0x00000000e9700000, 0x00000000e9800000| 0%| F| |TAMS 0x00000000e9700000, 0x00000000e9700000| Untracked +| 152|0x00000000e9800000, 0x00000000e9800000, 0x00000000e9900000| 0%| F| |TAMS 0x00000000e9800000, 0x00000000e9800000| Untracked +| 153|0x00000000e9900000, 0x00000000e9900000, 0x00000000e9a00000| 0%| F| |TAMS 0x00000000e9900000, 0x00000000e9900000| Untracked +| 154|0x00000000e9a00000, 0x00000000e9a00000, 0x00000000e9b00000| 0%| F| |TAMS 0x00000000e9a00000, 0x00000000e9a00000| Untracked +| 155|0x00000000e9b00000, 0x00000000e9b00000, 0x00000000e9c00000| 0%| F| |TAMS 0x00000000e9b00000, 0x00000000e9b00000| Untracked +| 156|0x00000000e9c00000, 0x00000000e9c00000, 0x00000000e9d00000| 0%| F| |TAMS 0x00000000e9c00000, 0x00000000e9c00000| Untracked +| 157|0x00000000e9d00000, 0x00000000e9d00000, 0x00000000e9e00000| 0%| F| |TAMS 0x00000000e9d00000, 0x00000000e9d00000| Untracked +| 158|0x00000000e9e00000, 0x00000000e9e00000, 0x00000000e9f00000| 0%| F| |TAMS 0x00000000e9e00000, 0x00000000e9e00000| Untracked +| 159|0x00000000e9f00000, 0x00000000e9f00000, 0x00000000ea000000| 0%| F| |TAMS 0x00000000e9f00000, 0x00000000e9f00000| Untracked +| 160|0x00000000ea000000, 0x00000000ea000000, 0x00000000ea100000| 0%| F| |TAMS 0x00000000ea000000, 0x00000000ea000000| Untracked +| 161|0x00000000ea100000, 0x00000000ea100000, 0x00000000ea200000| 0%| F| |TAMS 0x00000000ea100000, 0x00000000ea100000| Untracked +| 162|0x00000000ea200000, 0x00000000ea200000, 0x00000000ea300000| 0%| F| |TAMS 0x00000000ea200000, 0x00000000ea200000| Untracked +| 163|0x00000000ea300000, 0x00000000ea300000, 0x00000000ea400000| 0%| F| |TAMS 0x00000000ea300000, 0x00000000ea300000| Untracked +| 164|0x00000000ea400000, 0x00000000ea400000, 0x00000000ea500000| 0%| F| |TAMS 0x00000000ea400000, 0x00000000ea400000| Untracked +| 165|0x00000000ea500000, 0x00000000ea500000, 0x00000000ea600000| 0%| F| |TAMS 0x00000000ea500000, 0x00000000ea500000| Untracked +| 166|0x00000000ea600000, 0x00000000ea600000, 0x00000000ea700000| 0%| F| |TAMS 0x00000000ea600000, 0x00000000ea600000| Untracked +| 167|0x00000000ea700000, 0x00000000ea700000, 0x00000000ea800000| 0%| F| |TAMS 0x00000000ea700000, 0x00000000ea700000| Untracked +| 168|0x00000000ea800000, 0x00000000ea800000, 0x00000000ea900000| 0%| F| |TAMS 0x00000000ea800000, 0x00000000ea800000| Untracked +| 169|0x00000000ea900000, 0x00000000ea900000, 0x00000000eaa00000| 0%| F| |TAMS 0x00000000ea900000, 0x00000000ea900000| Untracked +| 170|0x00000000eaa00000, 0x00000000eaa00000, 0x00000000eab00000| 0%| F| |TAMS 0x00000000eaa00000, 0x00000000eaa00000| Untracked +| 171|0x00000000eab00000, 0x00000000eab00000, 0x00000000eac00000| 0%| F| |TAMS 0x00000000eab00000, 0x00000000eab00000| Untracked +| 172|0x00000000eac00000, 0x00000000eac00000, 0x00000000ead00000| 0%| F| |TAMS 0x00000000eac00000, 0x00000000eac00000| Untracked +| 173|0x00000000ead00000, 0x00000000ead00000, 0x00000000eae00000| 0%| F| |TAMS 0x00000000ead00000, 0x00000000ead00000| Untracked +| 174|0x00000000eae00000, 0x00000000eae00000, 0x00000000eaf00000| 0%| F| |TAMS 0x00000000eae00000, 0x00000000eae00000| Untracked +| 175|0x00000000eaf00000, 0x00000000eaf00000, 0x00000000eb000000| 0%| F| |TAMS 0x00000000eaf00000, 0x00000000eaf00000| Untracked +| 176|0x00000000eb000000, 0x00000000eb000000, 0x00000000eb100000| 0%| F| |TAMS 0x00000000eb000000, 0x00000000eb000000| Untracked +| 177|0x00000000eb100000, 0x00000000eb100000, 0x00000000eb200000| 0%| F| |TAMS 0x00000000eb100000, 0x00000000eb100000| Untracked +| 178|0x00000000eb200000, 0x00000000eb200000, 0x00000000eb300000| 0%| F| |TAMS 0x00000000eb200000, 0x00000000eb200000| Untracked +| 179|0x00000000eb300000, 0x00000000eb300000, 0x00000000eb400000| 0%| F| |TAMS 0x00000000eb300000, 0x00000000eb300000| Untracked +| 180|0x00000000eb400000, 0x00000000eb400000, 0x00000000eb500000| 0%| F| |TAMS 0x00000000eb400000, 0x00000000eb400000| Untracked +| 181|0x00000000eb500000, 0x00000000eb500000, 0x00000000eb600000| 0%| F| |TAMS 0x00000000eb500000, 0x00000000eb500000| Untracked +| 182|0x00000000eb600000, 0x00000000eb600000, 0x00000000eb700000| 0%| F| |TAMS 0x00000000eb600000, 0x00000000eb600000| Untracked +| 183|0x00000000eb700000, 0x00000000eb700000, 0x00000000eb800000| 0%| F| |TAMS 0x00000000eb700000, 0x00000000eb700000| Untracked +| 184|0x00000000eb800000, 0x00000000eb800000, 0x00000000eb900000| 0%| F| |TAMS 0x00000000eb800000, 0x00000000eb800000| Untracked +| 185|0x00000000eb900000, 0x00000000eb900000, 0x00000000eba00000| 0%| F| |TAMS 0x00000000eb900000, 0x00000000eb900000| Untracked +| 186|0x00000000eba00000, 0x00000000eba00000, 0x00000000ebb00000| 0%| F| |TAMS 0x00000000eba00000, 0x00000000eba00000| Untracked +| 187|0x00000000ebb00000, 0x00000000ebb00000, 0x00000000ebc00000| 0%| F| |TAMS 0x00000000ebb00000, 0x00000000ebb00000| Untracked +| 188|0x00000000ebc00000, 0x00000000ebc00000, 0x00000000ebd00000| 0%| F| |TAMS 0x00000000ebc00000, 0x00000000ebc00000| Untracked +| 189|0x00000000ebd00000, 0x00000000ebd00000, 0x00000000ebe00000| 0%| F| |TAMS 0x00000000ebd00000, 0x00000000ebd00000| Untracked +| 190|0x00000000ebe00000, 0x00000000ebe00000, 0x00000000ebf00000| 0%| F| |TAMS 0x00000000ebe00000, 0x00000000ebe00000| Untracked +| 191|0x00000000ebf00000, 0x00000000ebf00000, 0x00000000ec000000| 0%| F| |TAMS 0x00000000ebf00000, 0x00000000ebf00000| Untracked +| 192|0x00000000ec000000, 0x00000000ec100000, 0x00000000ec100000|100%| E| |TAMS 0x00000000ec000000, 0x00000000ec000000| Complete +| 193|0x00000000ec100000, 0x00000000ec200000, 0x00000000ec200000|100%| E|CS|TAMS 0x00000000ec100000, 0x00000000ec100000| Complete +| 194|0x00000000ec200000, 0x00000000ec300000, 0x00000000ec300000|100%| E|CS|TAMS 0x00000000ec200000, 0x00000000ec200000| Complete +| 195|0x00000000ec300000, 0x00000000ec400000, 0x00000000ec400000|100%| E|CS|TAMS 0x00000000ec300000, 0x00000000ec300000| Complete +| 196|0x00000000ec400000, 0x00000000ec500000, 0x00000000ec500000|100%| E|CS|TAMS 0x00000000ec400000, 0x00000000ec400000| Complete +| 197|0x00000000ec500000, 0x00000000ec600000, 0x00000000ec600000|100%| E|CS|TAMS 0x00000000ec500000, 0x00000000ec500000| Complete +| 198|0x00000000ec600000, 0x00000000ec700000, 0x00000000ec700000|100%| E|CS|TAMS 0x00000000ec600000, 0x00000000ec600000| Complete +| 199|0x00000000ec700000, 0x00000000ec800000, 0x00000000ec800000|100%| E|CS|TAMS 0x00000000ec700000, 0x00000000ec700000| Complete +| 200|0x00000000ec800000, 0x00000000ec900000, 0x00000000ec900000|100%| E|CS|TAMS 0x00000000ec800000, 0x00000000ec800000| Complete +| 201|0x00000000ec900000, 0x00000000eca00000, 0x00000000eca00000|100%| E|CS|TAMS 0x00000000ec900000, 0x00000000ec900000| Complete +| 202|0x00000000eca00000, 0x00000000ecb00000, 0x00000000ecb00000|100%| E|CS|TAMS 0x00000000eca00000, 0x00000000eca00000| Complete +| 203|0x00000000ecb00000, 0x00000000ecc00000, 0x00000000ecc00000|100%| E|CS|TAMS 0x00000000ecb00000, 0x00000000ecb00000| Complete +| 204|0x00000000ecc00000, 0x00000000ecd00000, 0x00000000ecd00000|100%| E|CS|TAMS 0x00000000ecc00000, 0x00000000ecc00000| Complete +| 205|0x00000000ecd00000, 0x00000000ece00000, 0x00000000ece00000|100%| E|CS|TAMS 0x00000000ecd00000, 0x00000000ecd00000| Complete +| 206|0x00000000ece00000, 0x00000000ecf00000, 0x00000000ecf00000|100%| E|CS|TAMS 0x00000000ece00000, 0x00000000ece00000| Complete +| 207|0x00000000ecf00000, 0x00000000ed000000, 0x00000000ed000000|100%| E|CS|TAMS 0x00000000ecf00000, 0x00000000ecf00000| Complete +| 208|0x00000000ed000000, 0x00000000ed100000, 0x00000000ed100000|100%| E|CS|TAMS 0x00000000ed000000, 0x00000000ed000000| Complete +| 209|0x00000000ed100000, 0x00000000ed200000, 0x00000000ed200000|100%| E|CS|TAMS 0x00000000ed100000, 0x00000000ed100000| Complete +| 210|0x00000000ed200000, 0x00000000ed300000, 0x00000000ed300000|100%| E|CS|TAMS 0x00000000ed200000, 0x00000000ed200000| Complete +| 211|0x00000000ed300000, 0x00000000ed400000, 0x00000000ed400000|100%| E|CS|TAMS 0x00000000ed300000, 0x00000000ed300000| Complete +| 212|0x00000000ed400000, 0x00000000ed500000, 0x00000000ed500000|100%| E|CS|TAMS 0x00000000ed400000, 0x00000000ed400000| Complete +| 213|0x00000000ed500000, 0x00000000ed600000, 0x00000000ed600000|100%| E|CS|TAMS 0x00000000ed500000, 0x00000000ed500000| Complete +| 214|0x00000000ed600000, 0x00000000ed700000, 0x00000000ed700000|100%| E|CS|TAMS 0x00000000ed600000, 0x00000000ed600000| Complete +| 215|0x00000000ed700000, 0x00000000ed800000, 0x00000000ed800000|100%| E|CS|TAMS 0x00000000ed700000, 0x00000000ed700000| Complete +| 216|0x00000000ed800000, 0x00000000ed900000, 0x00000000ed900000|100%| E|CS|TAMS 0x00000000ed800000, 0x00000000ed800000| Complete +| 217|0x00000000ed900000, 0x00000000eda00000, 0x00000000eda00000|100%| E|CS|TAMS 0x00000000ed900000, 0x00000000ed900000| Complete +| 218|0x00000000eda00000, 0x00000000edb00000, 0x00000000edb00000|100%| E|CS|TAMS 0x00000000eda00000, 0x00000000eda00000| Complete +| 219|0x00000000edb00000, 0x00000000edc00000, 0x00000000edc00000|100%| E|CS|TAMS 0x00000000edb00000, 0x00000000edb00000| Complete +| 220|0x00000000edc00000, 0x00000000edd00000, 0x00000000edd00000|100%| E|CS|TAMS 0x00000000edc00000, 0x00000000edc00000| Complete +| 221|0x00000000edd00000, 0x00000000ede00000, 0x00000000ede00000|100%| E|CS|TAMS 0x00000000edd00000, 0x00000000edd00000| Complete +| 222|0x00000000ede00000, 0x00000000edf00000, 0x00000000edf00000|100%| E|CS|TAMS 0x00000000ede00000, 0x00000000ede00000| Complete +| 223|0x00000000edf00000, 0x00000000ee000000, 0x00000000ee000000|100%| E|CS|TAMS 0x00000000edf00000, 0x00000000edf00000| Complete +| 224|0x00000000ee000000, 0x00000000ee100000, 0x00000000ee100000|100%| E|CS|TAMS 0x00000000ee000000, 0x00000000ee000000| Complete +| 225|0x00000000ee100000, 0x00000000ee200000, 0x00000000ee200000|100%| E|CS|TAMS 0x00000000ee100000, 0x00000000ee100000| Complete +| 226|0x00000000ee200000, 0x00000000ee300000, 0x00000000ee300000|100%| E|CS|TAMS 0x00000000ee200000, 0x00000000ee200000| Complete +| 227|0x00000000ee300000, 0x00000000ee400000, 0x00000000ee400000|100%| E|CS|TAMS 0x00000000ee300000, 0x00000000ee300000| Complete +| 228|0x00000000ee400000, 0x00000000ee500000, 0x00000000ee500000|100%| E|CS|TAMS 0x00000000ee400000, 0x00000000ee400000| Complete +| 229|0x00000000ee500000, 0x00000000ee600000, 0x00000000ee600000|100%| E|CS|TAMS 0x00000000ee500000, 0x00000000ee500000| Complete +| 230|0x00000000ee600000, 0x00000000ee700000, 0x00000000ee700000|100%| E|CS|TAMS 0x00000000ee600000, 0x00000000ee600000| Complete +| 231|0x00000000ee700000, 0x00000000ee800000, 0x00000000ee800000|100%| E|CS|TAMS 0x00000000ee700000, 0x00000000ee700000| Complete +| 232|0x00000000ee800000, 0x00000000ee900000, 0x00000000ee900000|100%| E|CS|TAMS 0x00000000ee800000, 0x00000000ee800000| Complete +| 233|0x00000000ee900000, 0x00000000eea00000, 0x00000000eea00000|100%| E|CS|TAMS 0x00000000ee900000, 0x00000000ee900000| Complete +| 234|0x00000000eea00000, 0x00000000eeb00000, 0x00000000eeb00000|100%| E|CS|TAMS 0x00000000eea00000, 0x00000000eea00000| Complete +| 235|0x00000000eeb00000, 0x00000000eec00000, 0x00000000eec00000|100%| E|CS|TAMS 0x00000000eeb00000, 0x00000000eeb00000| Complete +| 236|0x00000000eec00000, 0x00000000eed00000, 0x00000000eed00000|100%| E|CS|TAMS 0x00000000eec00000, 0x00000000eec00000| Complete +| 237|0x00000000eed00000, 0x00000000eee00000, 0x00000000eee00000|100%| E|CS|TAMS 0x00000000eed00000, 0x00000000eed00000| Complete +| 238|0x00000000eee00000, 0x00000000eef00000, 0x00000000eef00000|100%| E|CS|TAMS 0x00000000eee00000, 0x00000000eee00000| Complete +| 239|0x00000000eef00000, 0x00000000ef000000, 0x00000000ef000000|100%| E|CS|TAMS 0x00000000eef00000, 0x00000000eef00000| Complete +| 240|0x00000000ef000000, 0x00000000ef100000, 0x00000000ef100000|100%| E|CS|TAMS 0x00000000ef000000, 0x00000000ef000000| Complete +| 241|0x00000000ef100000, 0x00000000ef200000, 0x00000000ef200000|100%| E|CS|TAMS 0x00000000ef100000, 0x00000000ef100000| Complete +| 242|0x00000000ef200000, 0x00000000ef300000, 0x00000000ef300000|100%| E|CS|TAMS 0x00000000ef200000, 0x00000000ef200000| Complete +| 243|0x00000000ef300000, 0x00000000ef400000, 0x00000000ef400000|100%| E|CS|TAMS 0x00000000ef300000, 0x00000000ef300000| Complete +| 244|0x00000000ef400000, 0x00000000ef500000, 0x00000000ef500000|100%| E|CS|TAMS 0x00000000ef400000, 0x00000000ef400000| Complete +| 245|0x00000000ef500000, 0x00000000ef600000, 0x00000000ef600000|100%| E|CS|TAMS 0x00000000ef500000, 0x00000000ef500000| Complete +| 246|0x00000000ef600000, 0x00000000ef700000, 0x00000000ef700000|100%| E|CS|TAMS 0x00000000ef600000, 0x00000000ef600000| Complete +| 247|0x00000000ef700000, 0x00000000ef800000, 0x00000000ef800000|100%| E|CS|TAMS 0x00000000ef700000, 0x00000000ef700000| Complete +| 248|0x00000000ef800000, 0x00000000ef900000, 0x00000000ef900000|100%| E|CS|TAMS 0x00000000ef800000, 0x00000000ef800000| Complete +| 249|0x00000000ef900000, 0x00000000efa00000, 0x00000000efa00000|100%| E|CS|TAMS 0x00000000ef900000, 0x00000000ef900000| Complete +| 250|0x00000000efa00000, 0x00000000efb00000, 0x00000000efb00000|100%| E|CS|TAMS 0x00000000efa00000, 0x00000000efa00000| Complete +| 251|0x00000000efb00000, 0x00000000efc00000, 0x00000000efc00000|100%| E|CS|TAMS 0x00000000efb00000, 0x00000000efb00000| Complete +| 252|0x00000000efc00000, 0x00000000efd00000, 0x00000000efd00000|100%| E|CS|TAMS 0x00000000efc00000, 0x00000000efc00000| Complete +| 253|0x00000000efd00000, 0x00000000efe00000, 0x00000000efe00000|100%| E|CS|TAMS 0x00000000efd00000, 0x00000000efd00000| Complete +| 254|0x00000000efe00000, 0x00000000eff00000, 0x00000000eff00000|100%| E|CS|TAMS 0x00000000efe00000, 0x00000000efe00000| Complete +| 255|0x00000000eff00000, 0x00000000f0000000, 0x00000000f0000000|100%| E|CS|TAMS 0x00000000eff00000, 0x00000000eff00000| Complete + +Card table byte_map: [0x0000019e29a40000,0x0000019e29b40000] _byte_map_base: 0x0000019e29340000 + +Marking Bits (Prev, Next): (CMBitMap*) 0x0000019e12a7d4c8, (CMBitMap*) 0x0000019e12a7d500 + Prev Bits: [0x0000019e29c40000, 0x0000019e2a440000) + Next Bits: [0x0000019e2a440000, 0x0000019e2ac40000) + +Polling page: 0x0000019e121c0000 + +Metaspace: + +Usage: + Non-class: 47.28 MB capacity, 46.19 MB ( 98%) used, 941.83 KB ( 2%) free+waste, 170.63 KB ( <1%) overhead. + Class: 7.73 MB capacity, 7.09 MB ( 92%) used, 566.53 KB ( 7%) free+waste, 86.06 KB ( 1%) overhead. + Both: 55.00 MB capacity, 53.28 MB ( 97%) used, 1.47 MB ( 3%) free+waste, 256.69 KB ( <1%) overhead. + +Virtual space: + Non-class space: 48.00 MB reserved, 47.50 MB ( 99%) committed + Class space: 248.00 MB reserved, 7.75 MB ( 3%) committed + Both: 296.00 MB reserved, 55.25 MB ( 19%) committed + +Chunk freelists: + Non-Class: 4.63 KB + Class: 2.75 KB + Both: 7.38 KB + +CodeHeap 'non-profiled nmethods': size=119168Kb used=3838Kb max_used=3838Kb free=115329Kb + bounds [0x0000019e21c50000, 0x0000019e22010000, 0x0000019e290b0000] +CodeHeap 'profiled nmethods': size=119168Kb used=12395Kb max_used=12395Kb free=106772Kb + bounds [0x0000019e1a7f0000, 0x0000019e1b410000, 0x0000019e21c50000] +CodeHeap 'non-nmethods': size=7424Kb used=3933Kb max_used=3997Kb free=3490Kb + bounds [0x0000019e1a0b0000, 0x0000019e1a4a0000, 0x0000019e1a7f0000] + total_blobs=6362 nmethods=5548 adapters=722 + compilation: enabled + stopped_count=0, restarted_count=0 + full_count=0 + +Compilation events (10 events): +Event: 3.553 Thread 0x0000019e2e663800 5530 3 com.google.common.collect.Iterables::toArray (13 bytes) +Event: 3.553 Thread 0x0000019e2e663800 nmethod 5530 0x0000019e1b3ff390 code [0x0000019e1b3ff5c0, 0x0000019e1b3ffe28] +Event: 3.553 Thread 0x0000019e2e673800 5531 3 java.util.LinkedHashMap::transferLinks (58 bytes) +Event: 3.553 Thread 0x0000019e2e673800 nmethod 5531 0x0000019e1b400090 code [0x0000019e1b400260, 0x0000019e1b400658] +Event: 3.553 Thread 0x0000019e35886800 nmethod 5527 0x0000019e2200d710 code [0x0000019e2200d8e0, 0x0000019e2200e1e8] +Event: 3.553 Thread 0x0000019e35886800 5532 4 java.util.TreeMap::fixAfterInsertion (267 bytes) +Event: 3.554 Thread 0x0000019e2f9bf800 5534 3 java.util.HashMap$TreeNode::getTreeNode (22 bytes) +Event: 3.554 Thread 0x0000019e2f9bf800 nmethod 5534 0x0000019e1b400790 code [0x0000019e1b400940, 0x0000019e1b400be8] +Event: 3.555 Thread 0x0000019e2e4fb000 5536 3 com.google.common.collect.LinkedHashMultimap$ValueSet$1::next (43 bytes) +Event: 3.555 Thread 0x0000019e2e4fb000 nmethod 5536 0x0000019e1b400d10 code [0x0000019e1b400f00, 0x0000019e1b401538] + +GC Heap History (10 events): +Event: 1.264 GC heap before +{Heap before GC invocations=1 (full 0): + garbage-first heap total 262144K, used 112982K [0x00000000e0000000, 0x0000000100000000) + region size 1024K, 104 young (106496K), 3 survivors (3072K) + Metaspace used 20643K, capacity 21093K, committed 21248K, reserved 272384K + class space used 2541K, capacity 2723K, committed 2816K, reserved 253952K +} +Event: 1.269 GC heap after +{Heap after GC invocations=2 (full 0): + garbage-first heap total 262144K, used 17597K [0x00000000e0000000, 0x0000000100000000) + region size 1024K, 11 young (11264K), 11 survivors (11264K) + Metaspace used 20643K, capacity 21093K, committed 21248K, reserved 272384K + class space used 2541K, capacity 2723K, committed 2816K, reserved 253952K +} +Event: 1.614 GC heap before +{Heap before GC invocations=3 (full 0): + garbage-first heap total 262144K, used 85181K [0x00000000e0000000, 0x0000000100000000) + region size 1024K, 77 young (78848K), 11 survivors (11264K) + Metaspace used 27020K, capacity 27605K, committed 27904K, reserved 278528K + class space used 3556K, capacity 3777K, committed 3840K, reserved 253952K +} +Event: 1.619 GC heap after +{Heap after GC invocations=4 (full 0): + garbage-first heap total 262144K, used 20103K [0x00000000e0000000, 0x0000000100000000) + region size 1024K, 3 young (3072K), 3 survivors (3072K) + Metaspace used 27020K, capacity 27605K, committed 27904K, reserved 278528K + class space used 3556K, capacity 3777K, committed 3840K, reserved 253952K +} +Event: 1.975 GC heap before +{Heap before GC invocations=4 (full 0): + garbage-first heap total 262144K, used 70279K [0x00000000e0000000, 0x0000000100000000) + region size 1024K, 53 young (54272K), 3 survivors (3072K) + Metaspace used 34903K, capacity 35685K, committed 35840K, reserved 286720K + class space used 4559K, capacity 4900K, committed 4992K, reserved 253952K +} +Event: 1.979 GC heap after +{Heap after GC invocations=5 (full 0): + garbage-first heap total 262144K, used 22843K [0x00000000e0000000, 0x0000000100000000) + region size 1024K, 6 young (6144K), 6 survivors (6144K) + Metaspace used 34903K, capacity 35685K, committed 35840K, reserved 286720K + class space used 4559K, capacity 4900K, committed 4992K, reserved 253952K +} +Event: 2.576 GC heap before +{Heap before GC invocations=6 (full 0): + garbage-first heap total 262144K, used 135483K [0x00000000e0000000, 0x0000000100000000) + region size 1024K, 113 young (115712K), 6 survivors (6144K) + Metaspace used 44778K, capacity 45862K, committed 46208K, reserved 294912K + class space used 5752K, capacity 6158K, committed 6272K, reserved 253952K +} +Event: 2.581 GC heap after +{Heap after GC invocations=7 (full 0): + garbage-first heap total 262144K, used 29176K [0x00000000e0000000, 0x0000000100000000) + region size 1024K, 12 young (12288K), 12 survivors (12288K) + Metaspace used 44778K, capacity 45862K, committed 46208K, reserved 294912K + class space used 5752K, capacity 6158K, committed 6272K, reserved 253952K +} +Event: 3.226 GC heap before +{Heap before GC invocations=7 (full 0): + garbage-first heap total 262144K, used 169464K [0x00000000e0000000, 0x0000000100000000) + region size 1024K, 149 young (152576K), 12 survivors (12288K) + Metaspace used 51930K, capacity 53460K, committed 53504K, reserved 301056K + class space used 6838K, capacity 7415K, committed 7424K, reserved 253952K +} +Event: 3.234 GC heap after +{Heap after GC invocations=8 (full 0): + garbage-first heap total 262144K, used 38070K [0x00000000e0000000, 0x0000000100000000) + region size 1024K, 19 young (19456K), 19 survivors (19456K) + Metaspace used 51930K, capacity 53460K, committed 53504K, reserved 301056K + class space used 6838K, capacity 7415K, committed 7424K, reserved 253952K +} + +Deoptimization events (10 events): +Event: 3.353 Thread 0x0000019e30a2d800 Uncommon trap: reason=class_check action=maybe_recompile pc=0x0000019e21e3e5e4 method=org.codehaus.groovy.reflection.ParameterTypes.getParametersTypes0()V @ 16 c2 +Event: 3.392 Thread 0x0000019e30a2d800 Uncommon trap: reason=unstable_if action=reinterpret pc=0x0000019e21e7679c method=java.lang.ClassLoader.checkCerts(Ljava/lang/String;Ljava/security/CodeSource;)V @ 29 c2 +Event: 3.392 Thread 0x0000019e30a2d800 Uncommon trap: reason=unstable_if action=reinterpret pc=0x0000019e21ec0bf8 method=java.lang.ClassLoader.loadClass(Ljava/lang/String;Z)Ljava/lang/Class; @ 29 c2 +Event: 3.424 Thread 0x0000019e30a2d800 Uncommon trap: reason=unstable_if action=reinterpret pc=0x0000019e21e1e0e0 method=java.util.StringJoiner.add(Ljava/lang/CharSequence;)Ljava/util/StringJoiner; @ 33 c2 +Event: 3.500 Thread 0x0000019e30a2d800 Uncommon trap: reason=profile_predicate action=maybe_recompile pc=0x0000019e21fbab64 method=java.util.TreeMap.getEntryUsingComparator(Ljava/lang/Object;)Ljava/util/TreeMap$Entry; @ 19 c2 +Event: 3.502 Thread 0x0000019e30a2d800 Uncommon trap: reason=profile_predicate action=maybe_recompile pc=0x0000019e21fbab64 method=java.util.TreeMap.getEntryUsingComparator(Ljava/lang/Object;)Ljava/util/TreeMap$Entry; @ 19 c2 +Event: 3.506 Thread 0x0000019e30a2d800 Uncommon trap: reason=profile_predicate action=maybe_recompile pc=0x0000019e21fbab64 method=java.util.TreeMap.getEntryUsingComparator(Ljava/lang/Object;)Ljava/util/TreeMap$Entry; @ 19 c2 +Event: 3.507 Thread 0x0000019e30a2d800 Uncommon trap: reason=profile_predicate action=maybe_recompile pc=0x0000019e21fbab64 method=java.util.TreeMap.getEntryUsingComparator(Ljava/lang/Object;)Ljava/util/TreeMap$Entry; @ 19 c2 +Event: 3.509 Thread 0x0000019e30a2d800 Uncommon trap: reason=bimorphic_or_optimized_type_check action=maybe_recompile pc=0x0000019e21f3b6fc method=com.google.common.collect.AbstractIndexedListIterator.next()Ljava/lang/Object; @ 27 c2 +Event: 3.526 Thread 0x0000019e30a2d800 Uncommon trap: reason=class_check action=make_not_entrant pc=0x0000019e21ffecbc method=java.util.ArrayList.toArray([Ljava/lang/Object;)[Ljava/lang/Object; @ 21 c2 + +Classes redefined (0 events): +No events + +Internal exceptions (10 events): +Event: 3.429 Thread 0x0000019e30a2d800 Exception (0x00000000ed17eda0) thrown at [./open/src/hotspot/share/classfile/systemDictionary.cpp, line 226] +Event: 3.430 Thread 0x0000019e30a2d800 Exception (0x00000000ed1c1458) thrown at [./open/src/hotspot/share/classfile/systemDictionary.cpp, line 226] +Event: 3.431 Thread 0x0000019e30a2d800 Exception (0x00000000ed00f448) thrown at [./open/src/hotspot/share/classfile/systemDictionary.cpp, line 226] +Event: 3.442 Thread 0x0000019e30a2d800 Exception (0x00000000ece2d4f8) thrown at [./open/src/hotspot/share/classfile/systemDictionary.cpp, line 226] +Event: 3.442 Thread 0x0000019e30a2d800 Exception (0x00000000ece347f8) thrown at [./open/src/hotspot/share/classfile/systemDictionary.cpp, line 226] +Event: 3.444 Thread 0x0000019e30a2d800 Exception (0x00000000ecef9e18) thrown at [./open/src/hotspot/share/classfile/systemDictionary.cpp, line 226] +Event: 3.445 Thread 0x0000019e30a2d800 Exception (0x00000000ecd28ab8) thrown at [./open/src/hotspot/share/classfile/systemDictionary.cpp, line 226] +Event: 3.445 Thread 0x0000019e30a2d800 Exception (0x00000000ecd56f10) thrown at [./open/src/hotspot/share/classfile/systemDictionary.cpp, line 226] +Event: 3.446 Thread 0x0000019e30a2d800 Exception (0x00000000ecddcd00) thrown at [./open/src/hotspot/share/classfile/systemDictionary.cpp, line 226] +Event: 3.505 Thread 0x0000019e30a2d800 Exception (0x00000000ec7ab010) thrown at [./open/src/hotspot/share + +Events (10 events): +Event: 3.551 loading class org/gradle/api/internal/artifacts/configurations/ConfigurationInternal +Event: 3.551 loading class org/gradle/api/internal/artifacts/configurations/ConfigurationInternal done +Event: 3.552 loading class org/gradle/api/internal/artifacts/publish/ArchivePublishArtifact +Event: 3.552 loading class org/gradle/api/internal/artifacts/publish/ArchivePublishArtifact done +Event: 3.552 loading class org/gradle/api/internal/artifacts/publish/ArchivePublishArtifact +Event: 3.552 loading class org/gradle/api/internal/artifacts/publish/ArchivePublishArtifact done +Event: 3.552 loading class org/gradle/api/internal/artifacts/publish/ArchivePublishArtifact +Event: 3.552 loading class org/gradle/api/internal/artifacts/publish/ArchivePublishArtifact done +Event: 3.552 loading class org/gradle/api/internal/artifacts/publish/ArchivePublishArtifact +Event: 3.552 loading class org/gradle/api/internal/artifacts/publish/ArchivePublishArtifact done + + +Dynamic libraries: +0x00007ff6dd4c0000 - 0x00007ff6dd4cf000 C:\Program Files\Java\jdk-11.0.17\bin\java.exe +0x00007ffefe6d0000 - 0x00007ffefe8c8000 C:\Windows\SYSTEM32\ntdll.dll +0x00007ffefce00000 - 0x00007ffefcebf000 C:\Windows\System32\KERNEL32.DLL +0x00007ffefc0a0000 - 0x00007ffefc372000 C:\Windows\System32\KERNELBASE.dll +0x00007ffefc620000 - 0x00007ffefc720000 C:\Windows\System32\ucrtbase.dll +0x00007ffee9e40000 - 0x00007ffee9e55000 C:\Program Files\Java\jdk-11.0.17\bin\VCRUNTIME140.dll +0x00007ffee5260000 - 0x00007ffee5278000 C:\Program Files\Java\jdk-11.0.17\bin\jli.dll +0x00007ffefe5e0000 - 0x00007ffefe68e000 C:\Windows\System32\ADVAPI32.dll +0x00007ffefced0000 - 0x00007ffefcf6e000 C:\Windows\System32\msvcrt.dll +0x00007ffefe1e0000 - 0x00007ffefe27c000 C:\Windows\System32\sechost.dll +0x00007ffefcf90000 - 0x00007ffefd0b4000 C:\Windows\System32\RPCRT4.dll +0x00007ffefd0c0000 - 0x00007ffefd261000 C:\Windows\System32\USER32.dll +0x00007ffefbdd0000 - 0x00007ffefbdf2000 C:\Windows\System32\win32u.dll +0x00007ffefd4d0000 - 0x00007ffefd4fb000 C:\Windows\System32\GDI32.dll +0x00007ffee5a70000 - 0x00007ffee5d0a000 C:\Windows\WinSxS\amd64_microsoft.windows.common-controls_6595b64144ccf1df_6.0.19041.1110_none_60b5254171f9507e\COMCTL32.dll +0x00007ffefc3f0000 - 0x00007ffefc4ff000 C:\Windows\System32\gdi32full.dll +0x00007ffefc550000 - 0x00007ffefc5ed000 C:\Windows\System32\msvcp_win.dll +0x00007ffef2520000 - 0x00007ffef252a000 C:\Windows\SYSTEM32\VERSION.dll +0x00007ffefe070000 - 0x00007ffefe0a0000 C:\Windows\System32\IMM32.DLL +0x00007ffef44c0000 - 0x00007ffef46b6000 C:\Windows\system32\tmumh\20019\AddOn\8.55.0.1053\TmUmEvt64.dll +0x00007ffefdf10000 - 0x00007ffefdf18000 C:\Windows\System32\PSAPI.DLL +0x0000000067a30000 - 0x0000000067ba3000 C:\Windows\system32\tmumh\20019\TmMon\2.9.0.1043\tmmon64.dll +0x00007ffeb1070000 - 0x00007ffeb110b000 C:\Program Files\Java\jdk-11.0.17\bin\msvcp140.dll +0x00007ffe975c0000 - 0x00007ffe980da000 C:\Program Files\Java\jdk-11.0.17\bin\server\jvm.dll +0x00007ffef7570000 - 0x00007ffef7579000 C:\Windows\SYSTEM32\WSOCK32.dll +0x00007ffefe170000 - 0x00007ffefe1db000 C:\Windows\System32\WS2_32.dll +0x00007ffee2920000 - 0x00007ffee2947000 C:\Windows\SYSTEM32\WINMM.dll +0x00007ffefa5e0000 - 0x00007ffefa5f2000 C:\Windows\SYSTEM32\kernel.appcore.dll +0x00007ffef2730000 - 0x00007ffef2740000 C:\Program Files\Java\jdk-11.0.17\bin\verify.dll +0x00007ffef9b30000 - 0x00007ffef9d14000 C:\Windows\SYSTEM32\DBGHELP.DLL +0x00007ffeee600000 - 0x00007ffeee635000 C:\Windows\SYSTEM32\dbgcore.DLL +0x00007ffefbf60000 - 0x00007ffefbfe2000 C:\Windows\System32\bcryptPrimitives.dll +0x00007ffee4df0000 - 0x00007ffee4e18000 C:\Program Files\Java\jdk-11.0.17\bin\java.dll +0x00007ffeeb0d0000 - 0x00007ffeeb0da000 C:\Program Files\Java\jdk-11.0.17\bin\jimage.dll +0x00007ffee4db0000 - 0x00007ffee4dc6000 C:\Program Files\Java\jdk-11.0.17\bin\zip.dll +0x00007ffefd7c0000 - 0x00007ffefdf05000 C:\Windows\System32\SHELL32.dll +0x00007ffef9e30000 - 0x00007ffefa5c2000 C:\Windows\SYSTEM32\windows.storage.dll +0x00007ffefe280000 - 0x00007ffefe5d5000 C:\Windows\System32\combase.dll +0x00007ffefb750000 - 0x00007ffefb780000 C:\Windows\SYSTEM32\Wldp.dll +0x00007ffefd410000 - 0x00007ffefd4bd000 C:\Windows\System32\SHCORE.dll +0x00007ffefc930000 - 0x00007ffefc985000 C:\Windows\System32\shlwapi.dll +0x00007ffefbd10000 - 0x00007ffefbd2f000 C:\Windows\SYSTEM32\profapi.dll +0x00007ffee41f0000 - 0x00007ffee4209000 C:\Program Files\Java\jdk-11.0.17\bin\net.dll +0x00007ffef6360000 - 0x00007ffef646a000 C:\Windows\SYSTEM32\WINHTTP.dll +0x00007ffefb530000 - 0x00007ffefb59a000 C:\Windows\system32\mswsock.dll +0x00007ffee27f0000 - 0x00007ffee2802000 C:\Program Files\Java\jdk-11.0.17\bin\nio.dll +0x00007ffede5f0000 - 0x00007ffede617000 C:\Users\Chen Zi Han\.gradle\native\e1d6ef7f7dcc3fd88c89a11ec53ec762bb8ba0a96d01ffa2cd45eb1d1d8dd5c5\windows-amd64\native-platform.dll +0x00007ffea4190000 - 0x00007ffea42d4000 C:\Users\Chen Zi Han\.gradle\native\0d407fdbe67a94daf76414ababcb853783967236a71b16ec16e742cd7a986fd3\windows-amd64\native-platform-file-events.dll +0x00007ffeea300000 - 0x00007ffeea309000 C:\Program Files\Java\jdk-11.0.17\bin\management.dll +0x00007ffee59e0000 - 0x00007ffee59eb000 C:\Program Files\Java\jdk-11.0.17\bin\management_ext.dll +0x00007ffefb790000 - 0x00007ffefb7a8000 C:\Windows\SYSTEM32\CRYPTSP.dll +0x00007ffefae00000 - 0x00007ffefae34000 C:\Windows\system32\rsaenh.dll +0x00007ffefc5f0000 - 0x00007ffefc617000 C:\Windows\System32\bcrypt.dll +0x00007ffefbcd0000 - 0x00007ffefbcfe000 C:\Windows\SYSTEM32\USERENV.dll +0x00007ffefb6c0000 - 0x00007ffefb6cc000 C:\Windows\SYSTEM32\CRYPTBASE.dll +0x00007ffefb1f0000 - 0x00007ffefb22b000 C:\Windows\SYSTEM32\IPHLPAPI.DLL +0x00007ffefcec0000 - 0x00007ffefcec8000 C:\Windows\System32\NSI.dll +0x00007ffef4870000 - 0x00007ffef4887000 C:\Windows\SYSTEM32\dhcpcsvc6.DLL +0x00007ffef4850000 - 0x00007ffef486d000 C:\Windows\SYSTEM32\dhcpcsvc.DLL +0x00007ffefb230000 - 0x00007ffefb2fb000 C:\Windows\SYSTEM32\DNSAPI.dll + +dbghelp: loaded successfully - version: 4.0.5 - missing functions: none +symbol engine: initialized successfully - sym options: 0x614 - pdb path: .;C:\Program Files\Java\jdk-11.0.17\bin;C:\Windows\SYSTEM32;C:\Windows\WinSxS\amd64_microsoft.windows.common-controls_6595b64144ccf1df_6.0.19041.1110_none_60b5254171f9507e;C:\Windows\system32\tmumh\20019\AddOn\8.55.0.1053;C:\Windows\system32\tmumh\20019\TmMon\2.9.0.1043;C:\Program Files\Java\jdk-11.0.17\bin\server;C:\Users\Chen Zi Han\.gradle\native\e1d6ef7f7dcc3fd88c89a11ec53ec762bb8ba0a96d01ffa2cd45eb1d1d8dd5c5\windows-amd64;C:\Users\Chen Zi Han\.gradle\native\0d407fdbe67a94daf76414ababcb853783967236a71b16ec16e742cd7a986fd3\windows-amd64 + +VM Arguments: +jvm_args: --add-opens=java.base/java.util=ALL-UNNAMED --add-opens=java.base/java.lang=ALL-UNNAMED --add-opens=java.base/java.lang.invoke=ALL-UNNAMED --add-opens=java.base/java.util=ALL-UNNAMED --add-opens=java.prefs/java.util.prefs=ALL-UNNAMED --add-opens=java.prefs/java.util.prefs=ALL-UNNAMED --add-opens=java.base/java.nio.charset=ALL-UNNAMED --add-opens=java.base/java.net=ALL-UNNAMED --add-opens=java.base/java.util.concurrent.atomic=ALL-UNNAMED -XX:MaxMetaspaceSize=256m -XX:+HeapDumpOnOutOfMemoryError -Xms256m -Xmx512m -Dfile.encoding=GBK -Duser.country=SG -Duser.language=en -Duser.variant +java_command: org.gradle.launcher.daemon.bootstrap.GradleDaemon 7.4.2 +java_class_path (initial): C:\Users\Chen Zi Han\.gradle\wrapper\dists\gradle-7.4.2-bin\48ivgl02cpt2ed3fh9dbalvx8\gradle-7.4.2\lib\gradle-launcher-7.4.2.jar +Launcher Type: SUN_STANDARD + +[Global flags] + intx CICompilerCount = 12 {product} {ergonomic} + size_t CompressedClassSpaceSize = 260046848 {product} {ergonomic} + uint ConcGCThreads = 3 {product} {ergonomic} + uint G1ConcRefinementThreads = 13 {product} {ergonomic} + size_t G1HeapRegionSize = 1048576 {product} {ergonomic} + uintx GCDrainStackTargetSize = 64 {product} {ergonomic} + bool HeapDumpOnOutOfMemoryError = true {manageable} {command line} + size_t InitialHeapSize = 268435456 {product} {command line} + size_t MarkStackSize = 4194304 {product} {ergonomic} + size_t MaxHeapSize = 536870912 {product} {command line} + size_t MaxMetaspaceSize = 268435456 {product} {command line} + size_t MaxNewSize = 321912832 {product} {ergonomic} + size_t MinHeapDeltaBytes = 1048576 {product} {ergonomic} + uintx NonNMethodCodeHeapSize = 7594288 {pd product} {ergonomic} + uintx NonProfiledCodeHeapSize = 122031976 {pd product} {ergonomic} + uintx ProfiledCodeHeapSize = 122031976 {pd product} {ergonomic} + uintx ReservedCodeCacheSize = 251658240 {pd product} {ergonomic} + bool SegmentedCodeCache = true {product} {ergonomic} + bool UseCompressedClassPointers = true {lp64_product} {ergonomic} + bool UseCompressedOops = true {lp64_product} {ergonomic} + bool UseG1GC = true {product} {ergonomic} + bool UseLargePagesIndividualAllocation = false {pd product} {ergonomic} + +Logging: +Log output configuration: + #0: stdout all=warning uptime,level,tags + #1: stderr all=off uptime,level,tags + +Environment Variables: +JAVA_HOME=C:\Program Files\Java\jdk-18.0.1.1 +PATH=C:\Program Files\Common Files\Oracle\Java\javapath;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Windows\System32\OpenSSH\;C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common;C:\Program Files\NVIDIA Corporation\NVIDIA NvDLISR;E:\Notepad++;C:\Program Files\Java\jdk-18.0.1.1\bin;C:\Program Files\Azure Data Studio\bin;C:\Program Files\Microsoft SQL Server\150\Tools\Binn\;C:\Program Files\Java\jdk1.7.0_80\bin;E:\С³ÌÐò¿ª·¢\΢ÐÅweb¿ª·¢Õß¹¤¾ß\dll;E:\С³ÌÐò¿ª·¢\¿ª·¢;¾ß°²×°\΢ÐÅweb¿ª·¢Õß¹¤¾ß\dll;C:\Progr;; Files\Git\cmd;C:\Program Files\Git\cmd;C:\Users\Chen Zi Han\AppData\Local\Microsoft\WindowsApps;C:\Users\Chen Zi Han\AppData\Roaming\TinyTeX\bin\win32;C:\Program Files\Azure Data Studio\bin;E:\Microsoft VS Code\bin;C:\Users\Chen Zi Han\AppData\Local\GitHubDesktop\bin +USERNAME=Chen Zi Han +OS=Windows_NT +PROCESSOR_IDENTIFIER=Intel64 Family 6 Model 141 Stepping 1, GenuineIntel + + + +--------------- S Y S T E M --------------- + +OS: Windows 10 , 64 bit Build 19041 (10.0.19041.2546) +Hyper-V role detected + +CPU:total 16 (initial active 16) (8 cores per cpu, 2 threads per core) family 6 model 141 stepping 1 microcode 0x34, cmov, cx8, fxsr, mmx, sse, sse2, sse3, ssse3, sse4.1, sse4.2, popcnt, avx, avx2, aes, clmul, erms, 3dnowpref, lzcnt, ht, tsc, tscinvbit, bmi1, bmi2, adx, evex, sha, fma + +Memory: 4k page, system-wide physical 16122M (2140M free) +TotalPageFile size 26441M (AvailPageFile size 11M) +current process WorkingSet (physical memory assigned to process): 443M, peak: 451M +current process commit charge ("private bytes"): 569M, peak: 576M + +vm_info: Java HotSpot(TM) 64-Bit Server VM (11.0.17+10-LTS-269) for windows-amd64 JRE (11.0.17+10-LTS-269), built on Sep 13 2022 19:26:37 by "mach5one" with MS VC++ 15.9 (VS2017) + +END. diff --git a/hs_err_pid17936.log b/hs_err_pid17936.log new file mode 100644 index 0000000000..243ab9955c --- /dev/null +++ b/hs_err_pid17936.log @@ -0,0 +1,828 @@ +# +# There is insufficient memory for the Java Runtime Environment to continue. +# Native memory allocation (malloc) failed to allocate 2062096 bytes for Chunk::new +# Possible reasons: +# The system is out of physical RAM or swap space +# The process is running with CompressedOops enabled, and the Java Heap may be blocking the growth of the native heap +# Possible solutions: +# Reduce memory load on the system +# Increase physical memory or swap space +# Check if swap backing store is full +# Decrease Java heap size (-Xmx/-Xms) +# Decrease number of Java threads +# Decrease Java thread stack sizes (-Xss) +# Set larger code cache with -XX:ReservedCodeCacheSize= +# JVM is running with Unscaled Compressed Oops mode in which the Java heap is +# placed in the first 4GB address space. The Java Heap base address is the +# maximum limit for the native heap growth. Please use -XX:HeapBaseMinAddress +# to set the Java Heap base and to place the Java Heap above 4GB virtual address. +# This output file may be truncated or incomplete. +# +# Out of Memory Error (./open/src/hotspot/share/memory/arena.cpp:197), pid=17936, tid=17612 +# +# JRE version: Java(TM) SE Runtime Environment 18.9 (11.0.17+10) (build 11.0.17+10-LTS-269) +# Java VM: Java HotSpot(TM) 64-Bit Server VM 18.9 (11.0.17+10-LTS-269, mixed mode, tiered, compressed oops, g1 gc, windows-amd64) +# No core dump will be written. Minidumps are not enabled by default on client versions of Windows +# + +--------------- S U M M A R Y ------------ + +Command Line: --add-opens=java.base/java.util=ALL-UNNAMED --add-opens=java.base/java.lang=ALL-UNNAMED --add-opens=java.base/java.lang.invoke=ALL-UNNAMED --add-opens=java.base/java.util=ALL-UNNAMED --add-opens=java.prefs/java.util.prefs=ALL-UNNAMED --add-opens=java.prefs/java.util.prefs=ALL-UNNAMED --add-opens=java.base/java.nio.charset=ALL-UNNAMED --add-opens=java.base/java.net=ALL-UNNAMED --add-opens=java.base/java.util.concurrent.atomic=ALL-UNNAMED -XX:MaxMetaspaceSize=256m -XX:+HeapDumpOnOutOfMemoryError -Xms256m -Xmx512m -Dfile.encoding=GBK -Duser.country=SG -Duser.language=en -Duser.variant org.gradle.launcher.daemon.bootstrap.GradleDaemon 7.4.2 + +Host: 11th Gen Intel(R) Core(TM) i7-11800H @ 2.30GHz, 16 cores, 15G, Windows 10 , 64 bit Build 19041 (10.0.19041.2546) +Time: Fri Apr 7 00:46:48 2023 China Standard Time elapsed time: 13.967928 seconds (0d 0h 0m 13s) + +--------------- T H R E A D --------------- + +Current thread (0x00000194a928b000): JavaThread "C2 CompilerThread1" daemon [_thread_in_native, id=17612, stack(0x00000053d9500000,0x00000053d9600000)] + + +Current CompileTask: +C2: 13967 8754 4 org.antlr.v4.runtime.atn.PredictionContext::mergeArrays (579 bytes) + +Stack: [0x00000053d9500000,0x00000053d9600000] +Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code) +V [jvm.dll+0x62b5da] +V [jvm.dll+0x7653df] +V [jvm.dll+0x766a89] +V [jvm.dll+0x767113] +V [jvm.dll+0x23dd28] +V [jvm.dll+0xb2a1c] +V [jvm.dll+0xb2fdc] +V [jvm.dll+0x341552] +V [jvm.dll+0x18ce51] +V [jvm.dll+0x1f8815] +V [jvm.dll+0x1f78fd] +V [jvm.dll+0x177c91] +V [jvm.dll+0x207296] +V [jvm.dll+0x20542b] +V [jvm.dll+0x72b2c0] +V [jvm.dll+0x723e64] +V [jvm.dll+0x62a485] +C [ucrtbase.dll+0x21bb2] +C [KERNEL32.DLL+0x17614] +C [ntdll.dll+0x526a1] + + +--------------- P R O C E S S --------------- + +Threads class SMR info: +_java_thread_list=0x00000194b31f9b20, length=131, elements={ +0x000001948b5a6000, 0x00000194a6fb4800, 0x00000194a6fb5000, 0x00000194a702c000, +0x00000194a702d000, 0x00000194a7031800, 0x00000194a7032800, 0x00000194a7033800, +0x00000194a7034800, 0x00000194a674d800, 0x00000194a71cf000, 0x00000194a7332000, +0x00000194a9b8a800, 0x00000194a78ef800, 0x00000194a9165800, 0x00000194aa601800, +0x00000194a77bf000, 0x00000194aa802800, 0x00000194a8b67800, 0x00000194a8b43800, +0x00000194a8b44800, 0x00000194a9fba000, 0x00000194a9fba800, 0x00000194a9fb8000, +0x00000194a9fbb800, 0x00000194a9fb9000, 0x00000194a9fbc800, 0x00000194a9fbd000, +0x00000194a9fb7800, 0x00000194a9fbe000, 0x00000194ada47800, 0x00000194ada4a800, +0x00000194ada49000, 0x00000194ada4b800, 0x00000194ada4d000, 0x00000194ada52000, +0x00000194ada52800, 0x00000194ada53800, 0x00000194ada4e800, 0x00000194ada55000, +0x00000194ada54800, 0x00000194ada4f800, 0x00000194ada51000, 0x00000194ada56000, +0x00000194ada50000, 0x00000194ac203000, 0x00000194ac204000, 0x00000194ac204800, +0x00000194ac201800, 0x00000194ac202800, 0x00000194ac205800, 0x00000194ac206800, +0x00000194ac200800, 0x00000194ac20a800, 0x00000194ac20d000, 0x00000194ac20c000, +0x00000194ac207000, 0x00000194ac20d800, 0x00000194ac209000, 0x00000194ac208000, +0x00000194ac209800, 0x00000194ac20e800, 0x00000194ac20f800, 0x00000194ac20b000, +0x00000194accfe000, 0x00000194accfc000, 0x00000194acd02800, 0x00000194acd01000, +0x00000194acd02000, 0x00000194accfe800, 0x00000194accff800, 0x00000194accfd000, +0x00000194acd05000, 0x00000194acd03800, 0x00000194acd06000, 0x00000194acd00000, +0x00000194acd09000, 0x00000194acd06800, 0x00000194acd0a000, 0x00000194acd07800, +0x00000194acd04800, 0x00000194acd08800, 0x00000194acd0b000, 0x00000194b1f1f000, +0x00000194b1f1b000, 0x00000194b1f1a000, 0x00000194b1f1b800, 0x00000194b1f1c800, +0x00000194b1f19000, 0x00000194b1f1d800, 0x00000194b1f20800, 0x00000194b1f21800, +0x00000194b1f22000, 0x00000194b1f23000, 0x00000194b1f24000, 0x00000194b1f1e000, +0x00000194b1f25800, 0x00000194b1f24800, 0x00000194b1f1f800, 0x00000194b1f26800, +0x00000194b1f27000, 0x00000194a928b000, 0x00000194a928f800, 0x00000194a9290800, +0x00000194b2588000, 0x00000194b2589000, 0x00000194b258a800, 0x00000194b2587800, +0x00000194b258a000, 0x00000194b258b800, 0x00000194b258c800, 0x00000194b2586800, +0x00000194b2592000, 0x00000194b2593000, 0x00000194b258d000, 0x00000194b2590800, +0x00000194b2591000, 0x00000194b2593800, 0x00000194b258e000, 0x00000194b2594800, +0x00000194b258e800, 0x00000194b2595000, 0x00000194b258f800, 0x00000194b3124800, +0x00000194b3125800, 0x00000194a928c000, 0x00000194a928d000, 0x00000194a928e000, +0x00000194a928e800, 0x00000194af6d9800, 0x00000194b3121800 +} + +Java Threads: ( => current thread ) + 0x000001948b5a6000 JavaThread "main" [_thread_blocked, id=21028, stack(0x00000053d1b00000,0x00000053d1c00000)] + 0x00000194a6fb4800 JavaThread "Reference Handler" daemon [_thread_blocked, id=22724, stack(0x00000053d2200000,0x00000053d2300000)] + 0x00000194a6fb5000 JavaThread "Finalizer" daemon [_thread_blocked, id=11636, stack(0x00000053d2300000,0x00000053d2400000)] + 0x00000194a702c000 JavaThread "Signal Dispatcher" daemon [_thread_blocked, id=9072, stack(0x00000053d2400000,0x00000053d2500000)] + 0x00000194a702d000 JavaThread "Attach Listener" daemon [_thread_blocked, id=15828, stack(0x00000053d2500000,0x00000053d2600000)] + 0x00000194a7031800 JavaThread "Service Thread" daemon [_thread_blocked, id=6612, stack(0x00000053d2600000,0x00000053d2700000)] + 0x00000194a7032800 JavaThread "C2 CompilerThread0" daemon [_thread_in_native, id=15304, stack(0x00000053d2700000,0x00000053d2800000)] + 0x00000194a7033800 JavaThread "C1 CompilerThread0" daemon [_thread_blocked, id=14232, stack(0x00000053d2800000,0x00000053d2900000)] + 0x00000194a7034800 JavaThread "Sweeper thread" daemon [_thread_blocked, id=13440, stack(0x00000053d2900000,0x00000053d2a00000)] + 0x00000194a674d800 JavaThread "C1 CompilerThread1" daemon [_thread_blocked, id=13276, stack(0x00000053d2a00000,0x00000053d2b00000)] + 0x00000194a71cf000 JavaThread "Common-Cleaner" daemon [_thread_blocked, id=9908, stack(0x00000053d2b00000,0x00000053d2c00000)] + 0x00000194a7332000 JavaThread "C1 CompilerThread2" daemon [_thread_blocked, id=17564, stack(0x00000053d3300000,0x00000053d3400000)] + 0x00000194a9b8a800 JavaThread "Daemon health stats" [_thread_blocked, id=13128, stack(0x00000053d3700000,0x00000053d3800000)] + 0x00000194a78ef800 JavaThread "Incoming local TCP Connector on port 54211" [_thread_in_native, id=19912, stack(0x00000053d3400000,0x00000053d3500000)] + 0x00000194a9165800 JavaThread "Daemon periodic checks" [_thread_blocked, id=6388, stack(0x00000053d3500000,0x00000053d3600000)] + 0x00000194aa601800 JavaThread "Daemon" [_thread_blocked, id=13160, stack(0x00000053d3800000,0x00000053d3900000)] + 0x00000194a77bf000 JavaThread "Handler for socket connection from /127.0.0.1:54211 to /127.0.0.1:54212" [_thread_in_native, id=6356, stack(0x00000053d3900000,0x00000053d3a00000)] + 0x00000194aa802800 JavaThread "Cancel handler" [_thread_blocked, id=16980, stack(0x00000053d3a00000,0x00000053d3b00000)] + 0x00000194a8b67800 JavaThread "Daemon worker" [_thread_blocked, id=12044, stack(0x00000053d3b00000,0x00000053d3c00000)] + 0x00000194a8b43800 JavaThread "Asynchronous log dispatcher for DefaultDaemonConnection: socket connection from /127.0.0.1:54211 to /127.0.0.1:54212" [_thread_blocked, id=12860, stack(0x00000053d3c00000,0x00000053d3d00000)] + 0x00000194a8b44800 JavaThread "Stdin handler" [_thread_blocked, id=4568, stack(0x00000053d3d00000,0x00000053d3e00000)] + 0x00000194a9fba000 JavaThread "Daemon client event forwarder" [_thread_blocked, id=14148, stack(0x00000053d3e00000,0x00000053d3f00000)] + 0x00000194a9fba800 JavaThread "Cache worker for journal cache (C:\Users\Chen Zi Han\.gradle\caches\journal-1)" [_thread_blocked, id=24492, stack(0x00000053d3f00000,0x00000053d4000000)] + 0x00000194a9fb8000 JavaThread "File lock request listener" [_thread_in_native, id=18756, stack(0x00000053d4000000,0x00000053d4100000)] + 0x00000194a9fbb800 JavaThread "Cache worker for file hash cache (C:\Users\Chen Zi Han\.gradle\caches\7.4.2\fileHashes)" [_thread_blocked, id=4864, stack(0x00000053d4100000,0x00000053d4200000)] + 0x00000194a9fb9000 JavaThread "File watcher server" daemon [_thread_in_native, id=4996, stack(0x00000053d4c00000,0x00000053d4d00000)] + 0x00000194a9fbc800 JavaThread "File watcher consumer" daemon [_thread_blocked, id=580, stack(0x00000053d4d00000,0x00000053d4e00000)] + 0x00000194a9fbd000 JavaThread "Cache worker for checksums cache (D:\NUS_Year2_SEM2\CS2113_NEW\tp\.gradle\7.4.2\checksums)" [_thread_blocked, id=24224, stack(0x00000053d4e00000,0x00000053d4f00000)] + 0x00000194a9fb7800 JavaThread "Cache worker for cache directory md-rule (C:\Users\Chen Zi Han\.gradle\caches\7.4.2\md-rule)" [_thread_blocked, id=9780, stack(0x00000053d4f00000,0x00000053d5000000)] + 0x00000194a9fbe000 JavaThread "Cache worker for file hash cache (D:\NUS_Year2_SEM2\CS2113_NEW\tp\.gradle\7.4.2\fileHashes)" [_thread_blocked, id=12196, stack(0x00000053d5000000,0x00000053d5100000)] + 0x00000194ada47800 JavaThread "Cache worker for cache directory md-supplier (C:\Users\Chen Zi Han\.gradle\caches\7.4.2\md-supplier)" [_thread_blocked, id=12796, stack(0x00000053d5100000,0x00000053d5200000)] + 0x00000194ada4a800 JavaThread "Cache worker for execution history cache (C:\Users\Chen Zi Han\.gradle\caches\7.4.2\executionHistory)" [_thread_blocked, id=14736, stack(0x00000053d5200000,0x00000053d5300000)] + 0x00000194ada49000 JavaThread "jar transforms" [_thread_blocked, id=17544, stack(0x00000053d5300000,0x00000053d5400000)] + 0x00000194ada4b800 JavaThread "jar transforms Thread 2" [_thread_blocked, id=22788, stack(0x00000053d5400000,0x00000053d5500000)] + 0x00000194ada4d000 JavaThread "Cache worker for file content cache (C:\Users\Chen Zi Han\.gradle\caches\7.4.2\fileContent)" [_thread_blocked, id=23188, stack(0x00000053d5700000,0x00000053d5800000)] + 0x00000194ada52000 JavaThread "jar transforms Thread 3" [_thread_blocked, id=3932, stack(0x00000053d5800000,0x00000053d5900000)] + 0x00000194ada52800 JavaThread "jar transforms Thread 4" [_thread_blocked, id=8732, stack(0x00000053d5900000,0x00000053d5a00000)] + 0x00000194ada53800 JavaThread "jar transforms Thread 5" [_thread_blocked, id=13012, stack(0x00000053d5a00000,0x00000053d5b00000)] + 0x00000194ada4e800 JavaThread "jar transforms Thread 6" [_thread_blocked, id=4508, stack(0x00000053d5b00000,0x00000053d5c00000)] + 0x00000194ada55000 JavaThread "Cache worker for dependencies-accessors (D:\NUS_Year2_SEM2\CS2113_NEW\tp\.gradle\7.4.2\dependencies-accessors)" [_thread_blocked, id=12404, stack(0x00000053d5c00000,0x00000053d5d00000)] + 0x00000194ada54800 JavaThread "jar transforms Thread 7" [_thread_blocked, id=22544, stack(0x00000053d5d00000,0x00000053d5e00000)] + 0x00000194ada4f800 JavaThread "Cache worker for Build Output Cleanup Cache (D:\NUS_Year2_SEM2\CS2113_NEW\tp\.gradle\buildOutputCleanup)" [_thread_blocked, id=10656, stack(0x00000053d5e00000,0x00000053d5f00000)] + 0x00000194ada51000 JavaThread "Unconstrained build operations" [_thread_blocked, id=10156, stack(0x00000053d5f00000,0x00000053d6000000)] + 0x00000194ada56000 JavaThread "Unconstrained build operations Thread 2" [_thread_blocked, id=19024, stack(0x00000053d6000000,0x00000053d6100000)] + 0x00000194ada50000 JavaThread "Unconstrained build operations Thread 3" [_thread_blocked, id=10460, stack(0x00000053d6100000,0x00000053d6200000)] + 0x00000194ac203000 JavaThread "Unconstrained build operations Thread 4" [_thread_blocked, id=17000, stack(0x00000053d6200000,0x00000053d6300000)] + 0x00000194ac204000 JavaThread "Unconstrained build operations Thread 5" [_thread_blocked, id=6448, stack(0x00000053d6300000,0x00000053d6400000)] + 0x00000194ac204800 JavaThread "Unconstrained build operations Thread 6" [_thread_blocked, id=7568, stack(0x00000053d6400000,0x00000053d6500000)] + 0x00000194ac201800 JavaThread "Unconstrained build operations Thread 7" [_thread_blocked, id=3672, stack(0x00000053d6500000,0x00000053d6600000)] + 0x00000194ac202800 JavaThread "Unconstrained build operations Thread 8" [_thread_blocked, id=18160, stack(0x00000053d6600000,0x00000053d6700000)] + 0x00000194ac205800 JavaThread "Unconstrained build operations Thread 9" [_thread_blocked, id=22348, stack(0x00000053d6700000,0x00000053d6800000)] + 0x00000194ac206800 JavaThread "Unconstrained build operations Thread 10" [_thread_blocked, id=11076, stack(0x00000053d6800000,0x00000053d6900000)] + 0x00000194ac200800 JavaThread "Unconstrained build operations Thread 11" [_thread_blocked, id=4688, stack(0x00000053d6900000,0x00000053d6a00000)] + 0x00000194ac20a800 JavaThread "Unconstrained build operations Thread 12" [_thread_blocked, id=2944, stack(0x00000053d6a00000,0x00000053d6b00000)] + 0x00000194ac20d000 JavaThread "Unconstrained build operations Thread 13" [_thread_blocked, id=22232, stack(0x00000053d6b00000,0x00000053d6c00000)] + 0x00000194ac20c000 JavaThread "jar transforms Thread 8" [_thread_blocked, id=6580, stack(0x00000053d6c00000,0x00000053d6d00000)] + 0x00000194ac207000 JavaThread "jar transforms Thread 9" [_thread_blocked, id=16724, stack(0x00000053d6d00000,0x00000053d6e00000)] + 0x00000194ac20d800 JavaThread "jar transforms Thread 10" [_thread_blocked, id=15968, stack(0x00000053d6e00000,0x00000053d6f00000)] + 0x00000194ac209000 JavaThread "jar transforms Thread 11" [_thread_blocked, id=1468, stack(0x00000053d6f00000,0x00000053d7000000)] + 0x00000194ac208000 JavaThread "jar transforms Thread 12" [_thread_blocked, id=20856, stack(0x00000053d7000000,0x00000053d7100000)] + 0x00000194ac209800 JavaThread "jar transforms Thread 13" [_thread_blocked, id=2940, stack(0x00000053d7100000,0x00000053d7200000)] + 0x00000194ac20e800 JavaThread "jar transforms Thread 14" [_thread_blocked, id=17560, stack(0x00000053d7200000,0x00000053d7300000)] + 0x00000194ac20f800 JavaThread "jar transforms Thread 15" [_thread_blocked, id=12828, stack(0x00000053d7300000,0x00000053d7400000)] + 0x00000194ac20b000 JavaThread "jar transforms Thread 16" [_thread_blocked, id=3340, stack(0x00000053d7400000,0x00000053d7500000)] + 0x00000194accfe000 JavaThread "Memory manager" [_thread_blocked, id=1828, stack(0x00000053d7500000,0x00000053d7600000)] + 0x00000194accfc000 JavaThread "included builds" [_thread_blocked, id=6584, stack(0x00000053d7800000,0x00000053d7900000)] + 0x00000194acd02800 JavaThread "Execution worker for ':'" [_thread_blocked, id=18148, stack(0x00000053d7900000,0x00000053d7a00000)] + 0x00000194acd01000 JavaThread "Execution worker for ':' Thread 2" [_thread_in_Java, id=14732, stack(0x00000053d7a00000,0x00000053d7b00000)] + 0x00000194acd02000 JavaThread "Execution worker for ':' Thread 3" [_thread_blocked, id=16932, stack(0x00000053d7b00000,0x00000053d7c00000)] + 0x00000194accfe800 JavaThread "Execution worker for ':' Thread 4" [_thread_blocked, id=17520, stack(0x00000053d7c00000,0x00000053d7d00000)] + 0x00000194accff800 JavaThread "Execution worker for ':' Thread 5" [_thread_blocked, id=11880, stack(0x00000053d7d00000,0x00000053d7e00000)] + 0x00000194accfd000 JavaThread "Execution worker for ':' Thread 6" [_thread_blocked, id=13392, stack(0x00000053d7e00000,0x00000053d7f00000)] + 0x00000194acd05000 JavaThread "Execution worker for ':' Thread 7" [_thread_blocked, id=21396, stack(0x00000053d7f00000,0x00000053d8000000)] + 0x00000194acd03800 JavaThread "Execution worker for ':' Thread 8" [_thread_blocked, id=21448, stack(0x00000053d8000000,0x00000053d8100000)] + 0x00000194acd06000 JavaThread "Execution worker for ':' Thread 9" [_thread_blocked, id=23080, stack(0x00000053d8100000,0x00000053d8200000)] + 0x00000194acd00000 JavaThread "Execution worker for ':' Thread 10" [_thread_blocked, id=7372, stack(0x00000053d8200000,0x00000053d8300000)] + 0x00000194acd09000 JavaThread "Execution worker for ':' Thread 11" [_thread_blocked, id=14968, stack(0x00000053d8300000,0x00000053d8400000)] + 0x00000194acd06800 JavaThread "Execution worker for ':' Thread 12" [_thread_blocked, id=20612, stack(0x00000053d8400000,0x00000053d8500000)] + 0x00000194acd0a000 JavaThread "Execution worker for ':' Thread 13" [_thread_blocked, id=19044, stack(0x00000053d8500000,0x00000053d8600000)] + 0x00000194acd07800 JavaThread "Execution worker for ':' Thread 14" [_thread_blocked, id=24148, stack(0x00000053d8600000,0x00000053d8700000)] + 0x00000194acd04800 JavaThread "Execution worker for ':' Thread 15" [_thread_blocked, id=20616, stack(0x00000053d8700000,0x00000053d8800000)] + 0x00000194acd08800 JavaThread "Cache worker for execution history cache (D:\NUS_Year2_SEM2\CS2113_NEW\tp\.gradle\7.4.2\executionHistory)" [_thread_blocked, id=13588, stack(0x00000053d8800000,0x00000053d8900000)] + 0x00000194acd0b000 JavaThread "Unconstrained build operations Thread 14" [_thread_blocked, id=6640, stack(0x00000053d8900000,0x00000053d8a00000)] + 0x00000194b1f1f000 JavaThread "Unconstrained build operations Thread 15" [_thread_blocked, id=21040, stack(0x00000053d8a00000,0x00000053d8b00000)] + 0x00000194b1f1b000 JavaThread "Unconstrained build operations Thread 16" [_thread_blocked, id=13352, stack(0x00000053d8b00000,0x00000053d8c00000)] + 0x00000194b1f1a000 JavaThread "Unconstrained build operations Thread 17" [_thread_blocked, id=4336, stack(0x00000053d8c00000,0x00000053d8d00000)] + 0x00000194b1f1b800 JavaThread "Unconstrained build operations Thread 18" [_thread_blocked, id=18524, stack(0x00000053d8d00000,0x00000053d8e00000)] + 0x00000194b1f1c800 JavaThread "Unconstrained build operations Thread 19" [_thread_blocked, id=8672, stack(0x00000053d8e00000,0x00000053d8f00000)] + 0x00000194b1f19000 JavaThread "Unconstrained build operations Thread 20" [_thread_blocked, id=23360, stack(0x00000053d8f00000,0x00000053d9000000)] + 0x00000194b1f1d800 JavaThread "Unconstrained build operations Thread 21" [_thread_blocked, id=1336, stack(0x00000053d9000000,0x00000053d9100000)] + 0x00000194b1f20800 JavaThread "Unconstrained build operations Thread 22" [_thread_blocked, id=24480, stack(0x00000053d9100000,0x00000053d9200000)] + 0x00000194b1f21800 JavaThread "Cache worker for Java compile cache (C:\Users\Chen Zi Han\.gradle\caches\7.4.2\javaCompile)" [_thread_blocked, id=17820, stack(0x00000053d9200000,0x00000053d9300000)] + 0x00000194b1f22000 JavaThread "Build operations" [_thread_blocked, id=2968, stack(0x00000053d2d00000,0x00000053d2e00000)] + 0x00000194b1f23000 JavaThread "Build operations Thread 2" [_thread_blocked, id=12084, stack(0x00000053d3600000,0x00000053d3700000)] + 0x00000194b1f24000 JavaThread "Build operations Thread 3" [_thread_blocked, id=6796, stack(0x00000053d4b00000,0x00000053d4c00000)] + 0x00000194b1f1e000 JavaThread "Build operations Thread 4" [_thread_blocked, id=6792, stack(0x00000053d5500000,0x00000053d5600000)] + 0x00000194b1f25800 JavaThread "Build operations Thread 5" [_thread_blocked, id=24388, stack(0x00000053d5600000,0x00000053d5700000)] + 0x00000194b1f24800 JavaThread "Build operations Thread 6" [_thread_blocked, id=24416, stack(0x00000053d7600000,0x00000053d7700000)] + 0x00000194b1f1f800 JavaThread "Build operations Thread 7" [_thread_blocked, id=196, stack(0x00000053d7700000,0x00000053d7800000)] + 0x00000194b1f26800 JavaThread "Build operations Thread 8" [_thread_blocked, id=15964, stack(0x00000053d9300000,0x00000053d9400000)] + 0x00000194b1f27000 JavaThread "Build operations Thread 9" [_thread_blocked, id=19000, stack(0x00000053d9400000,0x00000053d9500000)] +=>0x00000194a928b000 JavaThread "C2 CompilerThread1" daemon [_thread_in_native, id=17612, stack(0x00000053d9500000,0x00000053d9600000)] + 0x00000194a928f800 JavaThread "C2 CompilerThread2" daemon [_thread_in_native, id=344, stack(0x00000053d9600000,0x00000053d9700000)] + 0x00000194a9290800 JavaThread "C1 CompilerThread3" daemon [_thread_blocked, id=23800, stack(0x00000053d9b00000,0x00000053d9c00000)] + 0x00000194b2588000 JavaThread "Unconstrained build operations Thread 23" [_thread_blocked, id=13656, stack(0x00000053d9c00000,0x00000053d9d00000)] + 0x00000194b2589000 JavaThread "Unconstrained build operations Thread 24" [_thread_blocked, id=22968, stack(0x00000053d9d00000,0x00000053d9e00000)] + 0x00000194b258a800 JavaThread "Unconstrained build operations Thread 25" [_thread_blocked, id=10444, stack(0x00000053d9e00000,0x00000053d9f00000)] + 0x00000194b2587800 JavaThread "Unconstrained build operations Thread 26" [_thread_blocked, id=17716, stack(0x00000053d9f00000,0x00000053da000000)] + 0x00000194b258a000 JavaThread "Unconstrained build operations Thread 27" [_thread_blocked, id=7656, stack(0x00000053da000000,0x00000053da100000)] + 0x00000194b258b800 JavaThread "Unconstrained build operations Thread 28" [_thread_blocked, id=1696, stack(0x00000053da100000,0x00000053da200000)] + 0x00000194b258c800 JavaThread "Unconstrained build operations Thread 29" [_thread_blocked, id=17256, stack(0x00000053da200000,0x00000053da300000)] + 0x00000194b2586800 JavaThread "Unconstrained build operations Thread 30" [_thread_blocked, id=16692, stack(0x00000053da300000,0x00000053da400000)] + 0x00000194b2592000 JavaThread "Unconstrained build operations Thread 31" [_thread_blocked, id=23796, stack(0x00000053da400000,0x00000053da500000)] + 0x00000194b2593000 JavaThread "Unconstrained build operations Thread 32" [_thread_blocked, id=19356, stack(0x00000053da500000,0x00000053da600000)] + 0x00000194b258d000 JavaThread "Unconstrained build operations Thread 33" [_thread_blocked, id=23256, stack(0x00000053da600000,0x00000053da700000)] + 0x00000194b2590800 JavaThread "Unconstrained build operations Thread 34" [_thread_blocked, id=8776, stack(0x00000053da700000,0x00000053da800000)] + 0x00000194b2591000 JavaThread "Unconstrained build operations Thread 35" [_thread_blocked, id=9804, stack(0x00000053da800000,0x00000053da900000)] + 0x00000194b2593800 JavaThread "Unconstrained build operations Thread 36" [_thread_blocked, id=11456, stack(0x00000053da900000,0x00000053daa00000)] + 0x00000194b258e000 JavaThread "Unconstrained build operations Thread 37" [_thread_blocked, id=16696, stack(0x00000053daa00000,0x00000053dab00000)] + 0x00000194b2594800 JavaThread "Unconstrained build operations Thread 38" [_thread_blocked, id=13424, stack(0x00000053dab00000,0x00000053dac00000)] + 0x00000194b258e800 JavaThread "Unconstrained build operations Thread 39" [_thread_blocked, id=14640, stack(0x00000053dac00000,0x00000053dad00000)] + 0x00000194b2595000 JavaThread "Unconstrained build operations Thread 40" [_thread_blocked, id=3608, stack(0x00000053dad00000,0x00000053dae00000)] + 0x00000194b258f800 JavaThread "Unconstrained build operations Thread 41" [_thread_blocked, id=15536, stack(0x00000053dae00000,0x00000053daf00000)] + 0x00000194b3124800 JavaThread "Unconstrained build operations Thread 42" [_thread_blocked, id=9660, stack(0x00000053daf00000,0x00000053db000000)] + 0x00000194b3125800 JavaThread "Classloader cache reference queue poller" daemon [_thread_blocked, id=17416, stack(0x00000053db000000,0x00000053db100000)] + 0x00000194a928c000 JavaThread "C2 CompilerThread3" daemon [_thread_in_native, id=21904, stack(0x00000053d9700000,0x00000053d9800000)] + 0x00000194a928d000 JavaThread "C2 CompilerThread4" daemon [_thread_in_native, id=18852, stack(0x00000053d9800000,0x00000053d9900000)] + 0x00000194a928e000 JavaThread "C2 CompilerThread5" daemon [_thread_in_native, id=19040, stack(0x00000053d9900000,0x00000053d9a00000)] + 0x00000194a928e800 JavaThread "C2 CompilerThread6" daemon [_thread_in_native, id=2772, stack(0x00000053d9a00000,0x00000053d9b00000)] + 0x00000194af6d9800 JavaThread "C2 CompilerThread7" daemon [_thread_in_native, id=5400, stack(0x00000053db100000,0x00000053db200000)] + 0x00000194b3121800 JavaThread "ForkJoinPool.commonPool-worker-19" daemon [_thread_blocked, id=16652, stack(0x00000053db200000,0x00000053db300000)] + +Other Threads: + 0x00000194a6f91000 VMThread "VM Thread" [stack: 0x00000053d2100000,0x00000053d2200000] [id=4404] + 0x00000194a725d800 WatcherThread [stack: 0x00000053d2c00000,0x00000053d2d00000] [id=15900] + 0x000001948b5bb000 GCTaskThread "GC Thread#0" [stack: 0x00000053d1c00000,0x00000053d1d00000] [id=20584] + 0x00000194a7ede800 GCTaskThread "GC Thread#1" [stack: 0x00000053d2e00000,0x00000053d2f00000] [id=15132] + 0x00000194a7f64000 GCTaskThread "GC Thread#2" [stack: 0x00000053d2f00000,0x00000053d3000000] [id=20456] + 0x00000194a7ee2000 GCTaskThread "GC Thread#3" [stack: 0x00000053d3000000,0x00000053d3100000] [id=10740] + 0x00000194a7ee2800 GCTaskThread "GC Thread#4" [stack: 0x00000053d3100000,0x00000053d3200000] [id=8972] + 0x00000194a838f000 GCTaskThread "GC Thread#5" [stack: 0x00000053d3200000,0x00000053d3300000] [id=15180] + 0x00000194a93a0800 GCTaskThread "GC Thread#6" [stack: 0x00000053d4200000,0x00000053d4300000] [id=23720] + 0x00000194a882a800 GCTaskThread "GC Thread#7" [stack: 0x00000053d4300000,0x00000053d4400000] [id=22884] + 0x00000194a9c34800 GCTaskThread "GC Thread#8" [stack: 0x00000053d4400000,0x00000053d4500000] [id=20600] + 0x00000194aa047000 GCTaskThread "GC Thread#9" [stack: 0x00000053d4500000,0x00000053d4600000] [id=13208] + 0x00000194a8a1b800 GCTaskThread "GC Thread#10" [stack: 0x00000053d4600000,0x00000053d4700000] [id=18072] + 0x00000194aa010800 GCTaskThread "GC Thread#11" [stack: 0x00000053d4700000,0x00000053d4800000] [id=23184] + 0x00000194aa011000 GCTaskThread "GC Thread#12" [stack: 0x00000053d4800000,0x00000053d4900000] [id=23872] + 0x000001948b5d0800 ConcurrentGCThread "G1 Main Marker" [stack: 0x00000053d1d00000,0x00000053d1e00000] [id=21168] + 0x000001948b5d1800 ConcurrentGCThread "G1 Conc#0" [stack: 0x00000053d1e00000,0x00000053d1f00000] [id=21556] + 0x00000194a8874000 ConcurrentGCThread "G1 Conc#1" [stack: 0x00000053d4900000,0x00000053d4a00000] [id=20580] + 0x00000194a750f000 ConcurrentGCThread "G1 Conc#2" [stack: 0x00000053d4a00000,0x00000053d4b00000] [id=6756] + 0x00000194a6626000 ConcurrentGCThread "G1 Refine#0" [stack: 0x00000053d1f00000,0x00000053d2000000] [id=21492] + 0x00000194a6627000 ConcurrentGCThread "G1 Young RemSet Sampling" [stack: 0x00000053d2000000,0x00000053d2100000] [id=8200] + +Threads with active compile tasks: +C2 CompilerThread0 13991 8977 4 org.antlr.v4.runtime.misc.Array2DHashSet::expand (247 bytes) +C2 CompilerThread1 13991 8754 4 org.antlr.v4.runtime.atn.PredictionContext::mergeArrays (579 bytes) +C2 CompilerThread2 13991 9015 4 org.antlr.v4.runtime.atn.PredictionContext::getCachedContext (261 bytes) +C2 CompilerThread3 13991 8755 4 org.antlr.v4.runtime.atn.PredictionContext::mergeSingletons (392 bytes) +C2 CompilerThread4 13991 8547 4 org.antlr.v4.runtime.atn.ParserATNSimulator::closure_ (311 bytes) +C2 CompilerThread5 13991 8546 4 org.antlr.v4.runtime.atn.ParserATNSimulator::closureCheckingStopState (244 bytes) +C2 CompilerThread6 13991 9043 4 org.antlr.v4.runtime.misc.IntervalSet::contains (97 bytes) +C2 CompilerThread7 13991 8962 % 4 org.antlr.v4.runtime.atn.ParserATNSimulator::computeReachSet @ 144 (455 bytes) + +VM state:not at safepoint (normal execution) + +VM Mutex/Monitor currently owned by a thread: ([mutex/lock_event]) +[0x000001948b5a4440] Compile_lock - owner thread: 0x00000194a928e800 +[0x000001948b5a5880] MethodCompileQueue_lock - owner thread: 0x00000194a928e800 + +Heap address: 0x00000000e0000000, size: 512 MB, Compressed Oops mode: 32-bit +Narrow klass base: 0x0000000000000000, Narrow klass shift: 3 +Compressed class space size: 260046848 Address: 0x0000000100000000 + +Heap: + garbage-first heap total 262144K, used 158617K [0x00000000e0000000, 0x0000000100000000) + region size 1024K, 118 young (120832K), 19 survivors (19456K) + Metaspace used 76875K, capacity 79735K, committed 79872K, reserved 323584K + class space used 10133K, capacity 11197K, committed 11264K, reserved 253952K +Heap Regions: E=young(eden), S=young(survivor), O=old, HS=humongous(starts), HC=humongous(continues), CS=collection set, F=free, A=archive, TAMS=top-at-mark-start (previous, next) +| 0|0x00000000e0000000, 0x00000000e0100000, 0x00000000e0100000|100%| O| |TAMS 0x00000000e0100000, 0x00000000e0000000| Untracked +| 1|0x00000000e0100000, 0x00000000e0200000, 0x00000000e0200000|100%| O| |TAMS 0x00000000e0200000, 0x00000000e0100000| Untracked +| 2|0x00000000e0200000, 0x00000000e0300000, 0x00000000e0300000|100%| O| |TAMS 0x00000000e0300000, 0x00000000e0200000| Untracked +| 3|0x00000000e0300000, 0x00000000e0400000, 0x00000000e0400000|100%|HS| |TAMS 0x00000000e0400000, 0x00000000e0300000| Complete +| 4|0x00000000e0400000, 0x00000000e0500000, 0x00000000e0500000|100%|HC| |TAMS 0x00000000e0500000, 0x00000000e0400000| Complete +| 5|0x00000000e0500000, 0x00000000e0600000, 0x00000000e0600000|100%|HC| |TAMS 0x00000000e0600000, 0x00000000e0500000| Complete +| 6|0x00000000e0600000, 0x00000000e0700000, 0x00000000e0700000|100%| O| |TAMS 0x00000000e0700000, 0x00000000e0600000| Untracked +| 7|0x00000000e0700000, 0x00000000e0800000, 0x00000000e0800000|100%| O| |TAMS 0x00000000e0800000, 0x00000000e0700000| Untracked +| 8|0x00000000e0800000, 0x00000000e0900000, 0x00000000e0900000|100%| O| |TAMS 0x00000000e0900000, 0x00000000e0800000| Untracked +| 9|0x00000000e0900000, 0x00000000e0a00000, 0x00000000e0a00000|100%| O| |TAMS 0x00000000e0a00000, 0x00000000e0900000| Untracked +| 10|0x00000000e0a00000, 0x00000000e0b00000, 0x00000000e0b00000|100%| O| |TAMS 0x00000000e0b00000, 0x00000000e0a00000| Untracked +| 11|0x00000000e0b00000, 0x00000000e0c00000, 0x00000000e0c00000|100%| O| |TAMS 0x00000000e0c00000, 0x00000000e0b00000| Untracked +| 12|0x00000000e0c00000, 0x00000000e0d00000, 0x00000000e0d00000|100%| O| |TAMS 0x00000000e0d00000, 0x00000000e0c00000| Untracked +| 13|0x00000000e0d00000, 0x00000000e0e00000, 0x00000000e0e00000|100%| O| |TAMS 0x00000000e0e00000, 0x00000000e0d00000| Untracked +| 14|0x00000000e0e00000, 0x00000000e0f00000, 0x00000000e0f00000|100%| O| |TAMS 0x00000000e0f00000, 0x00000000e0e00000| Untracked +| 15|0x00000000e0f00000, 0x00000000e1000000, 0x00000000e1000000|100%| O| |TAMS 0x00000000e1000000, 0x00000000e0f00000| Untracked +| 16|0x00000000e1000000, 0x00000000e1100000, 0x00000000e1100000|100%| O| |TAMS 0x00000000e1100000, 0x00000000e1000000| Untracked +| 17|0x00000000e1100000, 0x00000000e1200000, 0x00000000e1200000|100%| O| |TAMS 0x00000000e1200000, 0x00000000e1100000| Untracked +| 18|0x00000000e1200000, 0x00000000e1300000, 0x00000000e1300000|100%| O| |TAMS 0x00000000e1300000, 0x00000000e1200000| Untracked +| 19|0x00000000e1300000, 0x00000000e1400000, 0x00000000e1400000|100%| O| |TAMS 0x00000000e1400000, 0x00000000e1300000| Untracked +| 20|0x00000000e1400000, 0x00000000e1500000, 0x00000000e1500000|100%| O| |TAMS 0x00000000e1500000, 0x00000000e1400000| Untracked +| 21|0x00000000e1500000, 0x00000000e1600000, 0x00000000e1600000|100%| O| |TAMS 0x00000000e1600000, 0x00000000e1500000| Untracked +| 22|0x00000000e1600000, 0x00000000e1700000, 0x00000000e1700000|100%| O| |TAMS 0x00000000e1700000, 0x00000000e1600000| Untracked +| 23|0x00000000e1700000, 0x00000000e1800000, 0x00000000e1800000|100%| O| |TAMS 0x00000000e1800000, 0x00000000e1700000| Untracked +| 24|0x00000000e1800000, 0x00000000e1900000, 0x00000000e1900000|100%| O| |TAMS 0x00000000e1900000, 0x00000000e1800000| Untracked +| 25|0x00000000e1900000, 0x00000000e1a00000, 0x00000000e1a00000|100%| O| |TAMS 0x00000000e1a00000, 0x00000000e1900000| Untracked +| 26|0x00000000e1a00000, 0x00000000e1b00000, 0x00000000e1b00000|100%| O| |TAMS 0x00000000e1b00000, 0x00000000e1a00000| Untracked +| 27|0x00000000e1b00000, 0x00000000e1c00000, 0x00000000e1c00000|100%| O| |TAMS 0x00000000e1b8ee00, 0x00000000e1b00000| Untracked +| 28|0x00000000e1c00000, 0x00000000e1d00000, 0x00000000e1d00000|100%| O| |TAMS 0x00000000e1c00000, 0x00000000e1c00000| Untracked +| 29|0x00000000e1d00000, 0x00000000e1e00000, 0x00000000e1e00000|100%| O| |TAMS 0x00000000e1d00000, 0x00000000e1d00000| Untracked +| 30|0x00000000e1e00000, 0x00000000e1f00000, 0x00000000e1f00000|100%| O| |TAMS 0x00000000e1e00000, 0x00000000e1e00000| Untracked +| 31|0x00000000e1f00000, 0x00000000e2000000, 0x00000000e2000000|100%| O| |TAMS 0x00000000e1f00000, 0x00000000e1f00000| Untracked +| 32|0x00000000e2000000, 0x00000000e2100000, 0x00000000e2100000|100%| O| |TAMS 0x00000000e2000000, 0x00000000e2000000| Untracked +| 33|0x00000000e2100000, 0x00000000e2200000, 0x00000000e2200000|100%| O| |TAMS 0x00000000e2100000, 0x00000000e2100000| Untracked +| 34|0x00000000e2200000, 0x00000000e2300000, 0x00000000e2300000|100%| O| |TAMS 0x00000000e2200000, 0x00000000e2200000| Untracked +| 35|0x00000000e2300000, 0x00000000e2400000, 0x00000000e2400000|100%| O| |TAMS 0x00000000e2300000, 0x00000000e2300000| Untracked +| 36|0x00000000e2400000, 0x00000000e2500000, 0x00000000e2500000|100%| O| |TAMS 0x00000000e2400000, 0x00000000e2400000| Untracked +| 37|0x00000000e2500000, 0x00000000e25ed000, 0x00000000e2600000| 92%| O| |TAMS 0x00000000e2500000, 0x00000000e2500000| Untracked +| 38|0x00000000e2600000, 0x00000000e2600000, 0x00000000e2700000| 0%| F| |TAMS 0x00000000e2600000, 0x00000000e2600000| Untracked +| 39|0x00000000e2700000, 0x00000000e2700000, 0x00000000e2800000| 0%| F| |TAMS 0x00000000e2700000, 0x00000000e2700000| Untracked +| 40|0x00000000e2800000, 0x00000000e2800000, 0x00000000e2900000| 0%| F| |TAMS 0x00000000e2800000, 0x00000000e2800000| Untracked +| 41|0x00000000e2900000, 0x00000000e2900000, 0x00000000e2a00000| 0%| F| |TAMS 0x00000000e2900000, 0x00000000e2900000| Untracked +| 42|0x00000000e2a00000, 0x00000000e2a00000, 0x00000000e2b00000| 0%| F| |TAMS 0x00000000e2a00000, 0x00000000e2a00000| Untracked +| 43|0x00000000e2b00000, 0x00000000e2b00000, 0x00000000e2c00000| 0%| F| |TAMS 0x00000000e2b00000, 0x00000000e2b00000| Untracked +| 44|0x00000000e2c00000, 0x00000000e2c00000, 0x00000000e2d00000| 0%| F| |TAMS 0x00000000e2c00000, 0x00000000e2c00000| Untracked +| 45|0x00000000e2d00000, 0x00000000e2d00000, 0x00000000e2e00000| 0%| F| |TAMS 0x00000000e2d00000, 0x00000000e2d00000| Untracked +| 46|0x00000000e2e00000, 0x00000000e2e00000, 0x00000000e2f00000| 0%| F| |TAMS 0x00000000e2e00000, 0x00000000e2e00000| Untracked +| 47|0x00000000e2f00000, 0x00000000e2f00000, 0x00000000e3000000| 0%| F| |TAMS 0x00000000e2f00000, 0x00000000e2f00000| Untracked +| 48|0x00000000e3000000, 0x00000000e3000000, 0x00000000e3100000| 0%| F| |TAMS 0x00000000e3000000, 0x00000000e3000000| Untracked +| 49|0x00000000e3100000, 0x00000000e3100000, 0x00000000e3200000| 0%| F| |TAMS 0x00000000e3100000, 0x00000000e3100000| Untracked +| 50|0x00000000e3200000, 0x00000000e3200000, 0x00000000e3300000| 0%| F| |TAMS 0x00000000e3200000, 0x00000000e3200000| Untracked +| 51|0x00000000e3300000, 0x00000000e3300000, 0x00000000e3400000| 0%| F| |TAMS 0x00000000e3300000, 0x00000000e3300000| Untracked +| 52|0x00000000e3400000, 0x00000000e3400000, 0x00000000e3500000| 0%| F| |TAMS 0x00000000e3400000, 0x00000000e3400000| Untracked +| 53|0x00000000e3500000, 0x00000000e3500000, 0x00000000e3600000| 0%| F| |TAMS 0x00000000e3500000, 0x00000000e3500000| Untracked +| 54|0x00000000e3600000, 0x00000000e3600000, 0x00000000e3700000| 0%| F| |TAMS 0x00000000e3600000, 0x00000000e3600000| Untracked +| 55|0x00000000e3700000, 0x00000000e3700000, 0x00000000e3800000| 0%| F| |TAMS 0x00000000e3700000, 0x00000000e3700000| Untracked +| 56|0x00000000e3800000, 0x00000000e3800000, 0x00000000e3900000| 0%| F| |TAMS 0x00000000e3800000, 0x00000000e3800000| Untracked +| 57|0x00000000e3900000, 0x00000000e3900000, 0x00000000e3a00000| 0%| F| |TAMS 0x00000000e3900000, 0x00000000e3900000| Untracked +| 58|0x00000000e3a00000, 0x00000000e3a00000, 0x00000000e3b00000| 0%| F| |TAMS 0x00000000e3a00000, 0x00000000e3a00000| Untracked +| 59|0x00000000e3b00000, 0x00000000e3b00000, 0x00000000e3c00000| 0%| F| |TAMS 0x00000000e3b00000, 0x00000000e3b00000| Untracked +| 60|0x00000000e3c00000, 0x00000000e3c00000, 0x00000000e3d00000| 0%| F| |TAMS 0x00000000e3c00000, 0x00000000e3c00000| Untracked +| 61|0x00000000e3d00000, 0x00000000e3d00000, 0x00000000e3e00000| 0%| F| |TAMS 0x00000000e3d00000, 0x00000000e3d00000| Untracked +| 62|0x00000000e3e00000, 0x00000000e3e00000, 0x00000000e3f00000| 0%| F| |TAMS 0x00000000e3e00000, 0x00000000e3e00000| Untracked +| 63|0x00000000e3f00000, 0x00000000e3f00000, 0x00000000e4000000| 0%| F| |TAMS 0x00000000e3f00000, 0x00000000e3f00000| Untracked +| 64|0x00000000e4000000, 0x00000000e4000000, 0x00000000e4100000| 0%| F| |TAMS 0x00000000e4000000, 0x00000000e4000000| Untracked +| 65|0x00000000e4100000, 0x00000000e4100000, 0x00000000e4200000| 0%| F| |TAMS 0x00000000e4100000, 0x00000000e4100000| Untracked +| 66|0x00000000e4200000, 0x00000000e4200000, 0x00000000e4300000| 0%| F| |TAMS 0x00000000e4200000, 0x00000000e4200000| Untracked +| 67|0x00000000e4300000, 0x00000000e4300000, 0x00000000e4400000| 0%| F| |TAMS 0x00000000e4300000, 0x00000000e4300000| Untracked +| 68|0x00000000e4400000, 0x00000000e4400000, 0x00000000e4500000| 0%| F| |TAMS 0x00000000e4400000, 0x00000000e4400000| Untracked +| 69|0x00000000e4500000, 0x00000000e4500000, 0x00000000e4600000| 0%| F| |TAMS 0x00000000e4500000, 0x00000000e4500000| Untracked +| 70|0x00000000e4600000, 0x00000000e4600000, 0x00000000e4700000| 0%| F| |TAMS 0x00000000e4600000, 0x00000000e4600000| Untracked +| 71|0x00000000e4700000, 0x00000000e4700000, 0x00000000e4800000| 0%| F| |TAMS 0x00000000e4700000, 0x00000000e4700000| Untracked +| 72|0x00000000e4800000, 0x00000000e4800000, 0x00000000e4900000| 0%| F| |TAMS 0x00000000e4800000, 0x00000000e4800000| Untracked +| 73|0x00000000e4900000, 0x00000000e4900000, 0x00000000e4a00000| 0%| F| |TAMS 0x00000000e4900000, 0x00000000e4900000| Untracked +| 74|0x00000000e4a00000, 0x00000000e4a00000, 0x00000000e4b00000| 0%| F| |TAMS 0x00000000e4a00000, 0x00000000e4a00000| Untracked +| 75|0x00000000e4b00000, 0x00000000e4b00000, 0x00000000e4c00000| 0%| F| |TAMS 0x00000000e4b00000, 0x00000000e4b00000| Untracked +| 76|0x00000000e4c00000, 0x00000000e4c00000, 0x00000000e4d00000| 0%| F| |TAMS 0x00000000e4c00000, 0x00000000e4c00000| Untracked +| 77|0x00000000e4d00000, 0x00000000e4d00000, 0x00000000e4e00000| 0%| F| |TAMS 0x00000000e4d00000, 0x00000000e4d00000| Untracked +| 78|0x00000000e4e00000, 0x00000000e4e00000, 0x00000000e4f00000| 0%| F| |TAMS 0x00000000e4e00000, 0x00000000e4e00000| Untracked +| 79|0x00000000e4f00000, 0x00000000e4f00000, 0x00000000e5000000| 0%| F| |TAMS 0x00000000e4f00000, 0x00000000e4f00000| Untracked +| 80|0x00000000e5000000, 0x00000000e5000000, 0x00000000e5100000| 0%| F| |TAMS 0x00000000e5000000, 0x00000000e5000000| Untracked +| 81|0x00000000e5100000, 0x00000000e5100000, 0x00000000e5200000| 0%| F| |TAMS 0x00000000e5100000, 0x00000000e5100000| Untracked +| 82|0x00000000e5200000, 0x00000000e5200000, 0x00000000e5300000| 0%| F| |TAMS 0x00000000e5200000, 0x00000000e5200000| Untracked +| 83|0x00000000e5300000, 0x00000000e5300000, 0x00000000e5400000| 0%| F| |TAMS 0x00000000e5300000, 0x00000000e5300000| Untracked +| 84|0x00000000e5400000, 0x00000000e54f9468, 0x00000000e5500000| 97%| S|CS|TAMS 0x00000000e5400000, 0x00000000e5400000| Complete +| 85|0x00000000e5500000, 0x00000000e5600000, 0x00000000e5600000|100%| S|CS|TAMS 0x00000000e5500000, 0x00000000e5500000| Complete +| 86|0x00000000e5600000, 0x00000000e5700000, 0x00000000e5700000|100%| S|CS|TAMS 0x00000000e5600000, 0x00000000e5600000| Complete +| 87|0x00000000e5700000, 0x00000000e5800000, 0x00000000e5800000|100%| S|CS|TAMS 0x00000000e5700000, 0x00000000e5700000| Complete +| 88|0x00000000e5800000, 0x00000000e5900000, 0x00000000e5900000|100%| S|CS|TAMS 0x00000000e5800000, 0x00000000e5800000| Complete +| 89|0x00000000e5900000, 0x00000000e5a00000, 0x00000000e5a00000|100%| S|CS|TAMS 0x00000000e5900000, 0x00000000e5900000| Complete +| 90|0x00000000e5a00000, 0x00000000e5b00000, 0x00000000e5b00000|100%| S|CS|TAMS 0x00000000e5a00000, 0x00000000e5a00000| Complete +| 91|0x00000000e5b00000, 0x00000000e5c00000, 0x00000000e5c00000|100%| S|CS|TAMS 0x00000000e5b00000, 0x00000000e5b00000| Complete +| 92|0x00000000e5c00000, 0x00000000e5d00000, 0x00000000e5d00000|100%| S|CS|TAMS 0x00000000e5c00000, 0x00000000e5c00000| Complete +| 93|0x00000000e5d00000, 0x00000000e5e00000, 0x00000000e5e00000|100%| S|CS|TAMS 0x00000000e5d00000, 0x00000000e5d00000| Complete +| 94|0x00000000e5e00000, 0x00000000e5f00000, 0x00000000e5f00000|100%| S|CS|TAMS 0x00000000e5e00000, 0x00000000e5e00000| Complete +| 95|0x00000000e5f00000, 0x00000000e6000000, 0x00000000e6000000|100%| S|CS|TAMS 0x00000000e5f00000, 0x00000000e5f00000| Complete +| 96|0x00000000e6000000, 0x00000000e6100000, 0x00000000e6100000|100%| S|CS|TAMS 0x00000000e6000000, 0x00000000e6000000| Complete +| 97|0x00000000e6100000, 0x00000000e6200000, 0x00000000e6200000|100%| S|CS|TAMS 0x00000000e6100000, 0x00000000e6100000| Complete +| 98|0x00000000e6200000, 0x00000000e6300000, 0x00000000e6300000|100%| S|CS|TAMS 0x00000000e6200000, 0x00000000e6200000| Complete +| 99|0x00000000e6300000, 0x00000000e6400000, 0x00000000e6400000|100%| S|CS|TAMS 0x00000000e6300000, 0x00000000e6300000| Complete +| 100|0x00000000e6400000, 0x00000000e6500000, 0x00000000e6500000|100%| S|CS|TAMS 0x00000000e6400000, 0x00000000e6400000| Complete +| 101|0x00000000e6500000, 0x00000000e6600000, 0x00000000e6600000|100%| S|CS|TAMS 0x00000000e6500000, 0x00000000e6500000| Complete +| 102|0x00000000e6600000, 0x00000000e6700000, 0x00000000e6700000|100%| S|CS|TAMS 0x00000000e6600000, 0x00000000e6600000| Complete +| 103|0x00000000e6700000, 0x00000000e6700000, 0x00000000e6800000| 0%| F| |TAMS 0x00000000e6700000, 0x00000000e6700000| Untracked +| 104|0x00000000e6800000, 0x00000000e6800000, 0x00000000e6900000| 0%| F| |TAMS 0x00000000e6800000, 0x00000000e6800000| Untracked +| 105|0x00000000e6900000, 0x00000000e6900000, 0x00000000e6a00000| 0%| F| |TAMS 0x00000000e6900000, 0x00000000e6900000| Untracked +| 106|0x00000000e6a00000, 0x00000000e6a00000, 0x00000000e6b00000| 0%| F| |TAMS 0x00000000e6a00000, 0x00000000e6a00000| Untracked +| 107|0x00000000e6b00000, 0x00000000e6b00000, 0x00000000e6c00000| 0%| F| |TAMS 0x00000000e6b00000, 0x00000000e6b00000| Untracked +| 108|0x00000000e6c00000, 0x00000000e6c00000, 0x00000000e6d00000| 0%| F| |TAMS 0x00000000e6c00000, 0x00000000e6c00000| Untracked +| 109|0x00000000e6d00000, 0x00000000e6d00000, 0x00000000e6e00000| 0%| F| |TAMS 0x00000000e6d00000, 0x00000000e6d00000| Untracked +| 110|0x00000000e6e00000, 0x00000000e6e00000, 0x00000000e6f00000| 0%| F| |TAMS 0x00000000e6e00000, 0x00000000e6e00000| Untracked +| 111|0x00000000e6f00000, 0x00000000e6f00000, 0x00000000e7000000| 0%| F| |TAMS 0x00000000e6f00000, 0x00000000e6f00000| Untracked +| 112|0x00000000e7000000, 0x00000000e7000000, 0x00000000e7100000| 0%| F| |TAMS 0x00000000e7000000, 0x00000000e7000000| Untracked +| 113|0x00000000e7100000, 0x00000000e7100000, 0x00000000e7200000| 0%| F| |TAMS 0x00000000e7100000, 0x00000000e7100000| Untracked +| 114|0x00000000e7200000, 0x00000000e7200000, 0x00000000e7300000| 0%| F| |TAMS 0x00000000e7200000, 0x00000000e7200000| Untracked +| 115|0x00000000e7300000, 0x00000000e7300000, 0x00000000e7400000| 0%| F| |TAMS 0x00000000e7300000, 0x00000000e7300000| Untracked +| 116|0x00000000e7400000, 0x00000000e7400000, 0x00000000e7500000| 0%| F| |TAMS 0x00000000e7400000, 0x00000000e7400000| Untracked +| 117|0x00000000e7500000, 0x00000000e7500000, 0x00000000e7600000| 0%| F| |TAMS 0x00000000e7500000, 0x00000000e7500000| Untracked +| 118|0x00000000e7600000, 0x00000000e7600000, 0x00000000e7700000| 0%| F| |TAMS 0x00000000e7600000, 0x00000000e7600000| Untracked +| 119|0x00000000e7700000, 0x00000000e7700000, 0x00000000e7800000| 0%| F| |TAMS 0x00000000e7700000, 0x00000000e7700000| Untracked +| 120|0x00000000e7800000, 0x00000000e7800000, 0x00000000e7900000| 0%| F| |TAMS 0x00000000e7800000, 0x00000000e7800000| Untracked +| 121|0x00000000e7900000, 0x00000000e7900000, 0x00000000e7a00000| 0%| F| |TAMS 0x00000000e7900000, 0x00000000e7900000| Untracked +| 122|0x00000000e7a00000, 0x00000000e7a00000, 0x00000000e7b00000| 0%| F| |TAMS 0x00000000e7a00000, 0x00000000e7a00000| Untracked +| 123|0x00000000e7b00000, 0x00000000e7b00000, 0x00000000e7c00000| 0%| F| |TAMS 0x00000000e7b00000, 0x00000000e7b00000| Untracked +| 124|0x00000000e7c00000, 0x00000000e7c00000, 0x00000000e7d00000| 0%| F| |TAMS 0x00000000e7c00000, 0x00000000e7c00000| Untracked +| 125|0x00000000e7d00000, 0x00000000e7d00000, 0x00000000e7e00000| 0%| F| |TAMS 0x00000000e7d00000, 0x00000000e7d00000| Untracked +| 126|0x00000000e7e00000, 0x00000000e7e00000, 0x00000000e7f00000| 0%| F| |TAMS 0x00000000e7e00000, 0x00000000e7e00000| Untracked +| 127|0x00000000e7f00000, 0x00000000e7f00000, 0x00000000e8000000| 0%| F| |TAMS 0x00000000e7f00000, 0x00000000e7f00000| Untracked +| 128|0x00000000e8000000, 0x00000000e8000000, 0x00000000e8100000| 0%| F| |TAMS 0x00000000e8000000, 0x00000000e8000000| Untracked +| 129|0x00000000e8100000, 0x00000000e8100000, 0x00000000e8200000| 0%| F| |TAMS 0x00000000e8100000, 0x00000000e8100000| Untracked +| 130|0x00000000e8200000, 0x00000000e8200000, 0x00000000e8300000| 0%| F| |TAMS 0x00000000e8200000, 0x00000000e8200000| Untracked +| 131|0x00000000e8300000, 0x00000000e8300000, 0x00000000e8400000| 0%| F| |TAMS 0x00000000e8300000, 0x00000000e8300000| Untracked +| 132|0x00000000e8400000, 0x00000000e8400000, 0x00000000e8500000| 0%| F| |TAMS 0x00000000e8400000, 0x00000000e8400000| Untracked +| 133|0x00000000e8500000, 0x00000000e8500000, 0x00000000e8600000| 0%| F| |TAMS 0x00000000e8500000, 0x00000000e8500000| Untracked +| 134|0x00000000e8600000, 0x00000000e8600000, 0x00000000e8700000| 0%| F| |TAMS 0x00000000e8600000, 0x00000000e8600000| Untracked +| 135|0x00000000e8700000, 0x00000000e8700000, 0x00000000e8800000| 0%| F| |TAMS 0x00000000e8700000, 0x00000000e8700000| Untracked +| 136|0x00000000e8800000, 0x00000000e8800000, 0x00000000e8900000| 0%| F| |TAMS 0x00000000e8800000, 0x00000000e8800000| Untracked +| 137|0x00000000e8900000, 0x00000000e8900000, 0x00000000e8a00000| 0%| F| |TAMS 0x00000000e8900000, 0x00000000e8900000| Untracked +| 138|0x00000000e8a00000, 0x00000000e8a00000, 0x00000000e8b00000| 0%| F| |TAMS 0x00000000e8a00000, 0x00000000e8a00000| Untracked +| 139|0x00000000e8b00000, 0x00000000e8b00000, 0x00000000e8c00000| 0%| F| |TAMS 0x00000000e8b00000, 0x00000000e8b00000| Untracked +| 140|0x00000000e8c00000, 0x00000000e8c00000, 0x00000000e8d00000| 0%| F| |TAMS 0x00000000e8c00000, 0x00000000e8c00000| Untracked +| 141|0x00000000e8d00000, 0x00000000e8d00000, 0x00000000e8e00000| 0%| F| |TAMS 0x00000000e8d00000, 0x00000000e8d00000| Untracked +| 142|0x00000000e8e00000, 0x00000000e8e00000, 0x00000000e8f00000| 0%| F| |TAMS 0x00000000e8e00000, 0x00000000e8e00000| Untracked +| 143|0x00000000e8f00000, 0x00000000e8f00000, 0x00000000e9000000| 0%| F| |TAMS 0x00000000e8f00000, 0x00000000e8f00000| Untracked +| 144|0x00000000e9000000, 0x00000000e9000000, 0x00000000e9100000| 0%| F| |TAMS 0x00000000e9000000, 0x00000000e9000000| Untracked +| 145|0x00000000e9100000, 0x00000000e9100000, 0x00000000e9200000| 0%| F| |TAMS 0x00000000e9100000, 0x00000000e9100000| Untracked +| 146|0x00000000e9200000, 0x00000000e9200000, 0x00000000e9300000| 0%| F| |TAMS 0x00000000e9200000, 0x00000000e9200000| Untracked +| 147|0x00000000e9300000, 0x00000000e9300000, 0x00000000e9400000| 0%| F| |TAMS 0x00000000e9300000, 0x00000000e9300000| Untracked +| 148|0x00000000e9400000, 0x00000000e9400000, 0x00000000e9500000| 0%| F| |TAMS 0x00000000e9400000, 0x00000000e9400000| Untracked +| 149|0x00000000e9500000, 0x00000000e9500000, 0x00000000e9600000| 0%| F| |TAMS 0x00000000e9500000, 0x00000000e9500000| Untracked +| 150|0x00000000e9600000, 0x00000000e9600000, 0x00000000e9700000| 0%| F| |TAMS 0x00000000e9600000, 0x00000000e9600000| Untracked +| 151|0x00000000e9700000, 0x00000000e9700000, 0x00000000e9800000| 0%| F| |TAMS 0x00000000e9700000, 0x00000000e9700000| Untracked +| 152|0x00000000e9800000, 0x00000000e9800000, 0x00000000e9900000| 0%| F| |TAMS 0x00000000e9800000, 0x00000000e9800000| Untracked +| 153|0x00000000e9900000, 0x00000000e9900000, 0x00000000e9a00000| 0%| F| |TAMS 0x00000000e9900000, 0x00000000e9900000| Untracked +| 154|0x00000000e9a00000, 0x00000000e9a00000, 0x00000000e9b00000| 0%| F| |TAMS 0x00000000e9a00000, 0x00000000e9a00000| Untracked +| 155|0x00000000e9b00000, 0x00000000e9b00000, 0x00000000e9c00000| 0%| F| |TAMS 0x00000000e9b00000, 0x00000000e9b00000| Untracked +| 156|0x00000000e9c00000, 0x00000000e9c80800, 0x00000000e9d00000| 50%| E| |TAMS 0x00000000e9c00000, 0x00000000e9c00000| Complete +| 157|0x00000000e9d00000, 0x00000000e9e00000, 0x00000000e9e00000|100%| E|CS|TAMS 0x00000000e9d00000, 0x00000000e9d00000| Complete +| 158|0x00000000e9e00000, 0x00000000e9f00000, 0x00000000e9f00000|100%| E|CS|TAMS 0x00000000e9e00000, 0x00000000e9e00000| Complete +| 159|0x00000000e9f00000, 0x00000000ea000000, 0x00000000ea000000|100%| E|CS|TAMS 0x00000000e9f00000, 0x00000000e9f00000| Complete +| 160|0x00000000ea000000, 0x00000000ea100000, 0x00000000ea100000|100%| E|CS|TAMS 0x00000000ea000000, 0x00000000ea000000| Complete +| 161|0x00000000ea100000, 0x00000000ea200000, 0x00000000ea200000|100%| E|CS|TAMS 0x00000000ea100000, 0x00000000ea100000| Complete +| 162|0x00000000ea200000, 0x00000000ea300000, 0x00000000ea300000|100%| E|CS|TAMS 0x00000000ea200000, 0x00000000ea200000| Complete +| 163|0x00000000ea300000, 0x00000000ea400000, 0x00000000ea400000|100%| E|CS|TAMS 0x00000000ea300000, 0x00000000ea300000| Complete +| 164|0x00000000ea400000, 0x00000000ea500000, 0x00000000ea500000|100%| E|CS|TAMS 0x00000000ea400000, 0x00000000ea400000| Complete +| 165|0x00000000ea500000, 0x00000000ea600000, 0x00000000ea600000|100%| E|CS|TAMS 0x00000000ea500000, 0x00000000ea500000| Complete +| 166|0x00000000ea600000, 0x00000000ea700000, 0x00000000ea700000|100%| E|CS|TAMS 0x00000000ea600000, 0x00000000ea600000| Complete +| 167|0x00000000ea700000, 0x00000000ea800000, 0x00000000ea800000|100%| E|CS|TAMS 0x00000000ea700000, 0x00000000ea700000| Complete +| 168|0x00000000ea800000, 0x00000000ea900000, 0x00000000ea900000|100%| E|CS|TAMS 0x00000000ea800000, 0x00000000ea800000| Complete +| 169|0x00000000ea900000, 0x00000000eaa00000, 0x00000000eaa00000|100%| E|CS|TAMS 0x00000000ea900000, 0x00000000ea900000| Complete +| 170|0x00000000eaa00000, 0x00000000eab00000, 0x00000000eab00000|100%| E|CS|TAMS 0x00000000eaa00000, 0x00000000eaa00000| Complete +| 171|0x00000000eab00000, 0x00000000eac00000, 0x00000000eac00000|100%| E|CS|TAMS 0x00000000eab00000, 0x00000000eab00000| Complete +| 172|0x00000000eac00000, 0x00000000ead00000, 0x00000000ead00000|100%| E|CS|TAMS 0x00000000eac00000, 0x00000000eac00000| Complete +| 173|0x00000000ead00000, 0x00000000eae00000, 0x00000000eae00000|100%| E|CS|TAMS 0x00000000ead00000, 0x00000000ead00000| Complete +| 174|0x00000000eae00000, 0x00000000eaf00000, 0x00000000eaf00000|100%| E|CS|TAMS 0x00000000eae00000, 0x00000000eae00000| Complete +| 175|0x00000000eaf00000, 0x00000000eb000000, 0x00000000eb000000|100%| E|CS|TAMS 0x00000000eaf00000, 0x00000000eaf00000| Complete +| 176|0x00000000eb000000, 0x00000000eb100000, 0x00000000eb100000|100%| E|CS|TAMS 0x00000000eb000000, 0x00000000eb000000| Complete +| 177|0x00000000eb100000, 0x00000000eb200000, 0x00000000eb200000|100%| E|CS|TAMS 0x00000000eb100000, 0x00000000eb100000| Complete +| 178|0x00000000eb200000, 0x00000000eb300000, 0x00000000eb300000|100%| E|CS|TAMS 0x00000000eb200000, 0x00000000eb200000| Complete +| 179|0x00000000eb300000, 0x00000000eb400000, 0x00000000eb400000|100%| E|CS|TAMS 0x00000000eb300000, 0x00000000eb300000| Complete +| 180|0x00000000eb400000, 0x00000000eb500000, 0x00000000eb500000|100%| E|CS|TAMS 0x00000000eb400000, 0x00000000eb400000| Complete +| 181|0x00000000eb500000, 0x00000000eb600000, 0x00000000eb600000|100%| E|CS|TAMS 0x00000000eb500000, 0x00000000eb500000| Complete +| 182|0x00000000eb600000, 0x00000000eb700000, 0x00000000eb700000|100%| E|CS|TAMS 0x00000000eb600000, 0x00000000eb600000| Complete +| 183|0x00000000eb700000, 0x00000000eb800000, 0x00000000eb800000|100%| E|CS|TAMS 0x00000000eb700000, 0x00000000eb700000| Complete +| 184|0x00000000eb800000, 0x00000000eb900000, 0x00000000eb900000|100%| E|CS|TAMS 0x00000000eb800000, 0x00000000eb800000| Complete +| 185|0x00000000eb900000, 0x00000000eba00000, 0x00000000eba00000|100%| E|CS|TAMS 0x00000000eb900000, 0x00000000eb900000| Complete +| 186|0x00000000eba00000, 0x00000000ebb00000, 0x00000000ebb00000|100%| E|CS|TAMS 0x00000000eba00000, 0x00000000eba00000| Complete +| 187|0x00000000ebb00000, 0x00000000ebc00000, 0x00000000ebc00000|100%| E|CS|TAMS 0x00000000ebb00000, 0x00000000ebb00000| Complete +| 188|0x00000000ebc00000, 0x00000000ebd00000, 0x00000000ebd00000|100%| E|CS|TAMS 0x00000000ebc00000, 0x00000000ebc00000| Complete +| 189|0x00000000ebd00000, 0x00000000ebe00000, 0x00000000ebe00000|100%| E|CS|TAMS 0x00000000ebd00000, 0x00000000ebd00000| Complete +| 190|0x00000000ebe00000, 0x00000000ebf00000, 0x00000000ebf00000|100%| E|CS|TAMS 0x00000000ebe00000, 0x00000000ebe00000| Complete +| 191|0x00000000ebf00000, 0x00000000ec000000, 0x00000000ec000000|100%| E|CS|TAMS 0x00000000ebf00000, 0x00000000ebf00000| Complete +| 192|0x00000000ec000000, 0x00000000ec100000, 0x00000000ec100000|100%| E|CS|TAMS 0x00000000ec000000, 0x00000000ec000000| Complete +| 193|0x00000000ec100000, 0x00000000ec200000, 0x00000000ec200000|100%| E|CS|TAMS 0x00000000ec100000, 0x00000000ec100000| Complete +| 194|0x00000000ec200000, 0x00000000ec300000, 0x00000000ec300000|100%| E|CS|TAMS 0x00000000ec200000, 0x00000000ec200000| Complete +| 195|0x00000000ec300000, 0x00000000ec400000, 0x00000000ec400000|100%| E|CS|TAMS 0x00000000ec300000, 0x00000000ec300000| Complete +| 196|0x00000000ec400000, 0x00000000ec500000, 0x00000000ec500000|100%| E|CS|TAMS 0x00000000ec400000, 0x00000000ec400000| Complete +| 197|0x00000000ec500000, 0x00000000ec600000, 0x00000000ec600000|100%| E|CS|TAMS 0x00000000ec500000, 0x00000000ec500000| Complete +| 198|0x00000000ec600000, 0x00000000ec700000, 0x00000000ec700000|100%| E|CS|TAMS 0x00000000ec600000, 0x00000000ec600000| Complete +| 199|0x00000000ec700000, 0x00000000ec800000, 0x00000000ec800000|100%| E|CS|TAMS 0x00000000ec700000, 0x00000000ec700000| Complete +| 200|0x00000000ec800000, 0x00000000ec900000, 0x00000000ec900000|100%| E|CS|TAMS 0x00000000ec800000, 0x00000000ec800000| Complete +| 201|0x00000000ec900000, 0x00000000eca00000, 0x00000000eca00000|100%| E|CS|TAMS 0x00000000ec900000, 0x00000000ec900000| Complete +| 202|0x00000000eca00000, 0x00000000ecb00000, 0x00000000ecb00000|100%| E|CS|TAMS 0x00000000eca00000, 0x00000000eca00000| Complete +| 203|0x00000000ecb00000, 0x00000000ecc00000, 0x00000000ecc00000|100%| E|CS|TAMS 0x00000000ecb00000, 0x00000000ecb00000| Complete +| 204|0x00000000ecc00000, 0x00000000ecd00000, 0x00000000ecd00000|100%| E|CS|TAMS 0x00000000ecc00000, 0x00000000ecc00000| Complete +| 205|0x00000000ecd00000, 0x00000000ece00000, 0x00000000ece00000|100%| E|CS|TAMS 0x00000000ecd00000, 0x00000000ecd00000| Complete +| 206|0x00000000ece00000, 0x00000000ecf00000, 0x00000000ecf00000|100%| E|CS|TAMS 0x00000000ece00000, 0x00000000ece00000| Complete +| 207|0x00000000ecf00000, 0x00000000ed000000, 0x00000000ed000000|100%| E|CS|TAMS 0x00000000ecf00000, 0x00000000ecf00000| Complete +| 208|0x00000000ed000000, 0x00000000ed100000, 0x00000000ed100000|100%| E|CS|TAMS 0x00000000ed000000, 0x00000000ed000000| Complete +| 209|0x00000000ed100000, 0x00000000ed200000, 0x00000000ed200000|100%| E|CS|TAMS 0x00000000ed100000, 0x00000000ed100000| Complete +| 210|0x00000000ed200000, 0x00000000ed300000, 0x00000000ed300000|100%| E|CS|TAMS 0x00000000ed200000, 0x00000000ed200000| Complete +| 211|0x00000000ed300000, 0x00000000ed400000, 0x00000000ed400000|100%| E|CS|TAMS 0x00000000ed300000, 0x00000000ed300000| Complete +| 212|0x00000000ed400000, 0x00000000ed500000, 0x00000000ed500000|100%| E|CS|TAMS 0x00000000ed400000, 0x00000000ed400000| Complete +| 213|0x00000000ed500000, 0x00000000ed600000, 0x00000000ed600000|100%| E|CS|TAMS 0x00000000ed500000, 0x00000000ed500000| Complete +| 214|0x00000000ed600000, 0x00000000ed700000, 0x00000000ed700000|100%| E|CS|TAMS 0x00000000ed600000, 0x00000000ed600000| Complete +| 215|0x00000000ed700000, 0x00000000ed800000, 0x00000000ed800000|100%| E|CS|TAMS 0x00000000ed700000, 0x00000000ed700000| Complete +| 216|0x00000000ed800000, 0x00000000ed900000, 0x00000000ed900000|100%| E|CS|TAMS 0x00000000ed800000, 0x00000000ed800000| Complete +| 217|0x00000000ed900000, 0x00000000eda00000, 0x00000000eda00000|100%| E|CS|TAMS 0x00000000ed900000, 0x00000000ed900000| Complete +| 218|0x00000000eda00000, 0x00000000edb00000, 0x00000000edb00000|100%| E|CS|TAMS 0x00000000eda00000, 0x00000000eda00000| Complete +| 219|0x00000000edb00000, 0x00000000edc00000, 0x00000000edc00000|100%| E|CS|TAMS 0x00000000edb00000, 0x00000000edb00000| Complete +| 220|0x00000000edc00000, 0x00000000edd00000, 0x00000000edd00000|100%| E|CS|TAMS 0x00000000edc00000, 0x00000000edc00000| Complete +| 221|0x00000000edd00000, 0x00000000ede00000, 0x00000000ede00000|100%| E|CS|TAMS 0x00000000edd00000, 0x00000000edd00000| Complete +| 222|0x00000000ede00000, 0x00000000edf00000, 0x00000000edf00000|100%| E|CS|TAMS 0x00000000ede00000, 0x00000000ede00000| Complete +| 223|0x00000000edf00000, 0x00000000ee000000, 0x00000000ee000000|100%| E|CS|TAMS 0x00000000edf00000, 0x00000000edf00000| Complete +| 224|0x00000000ee000000, 0x00000000ee100000, 0x00000000ee100000|100%| E|CS|TAMS 0x00000000ee000000, 0x00000000ee000000| Complete +| 225|0x00000000ee100000, 0x00000000ee200000, 0x00000000ee200000|100%| E|CS|TAMS 0x00000000ee100000, 0x00000000ee100000| Complete +| 226|0x00000000ee200000, 0x00000000ee300000, 0x00000000ee300000|100%| E|CS|TAMS 0x00000000ee200000, 0x00000000ee200000| Complete +| 227|0x00000000ee300000, 0x00000000ee400000, 0x00000000ee400000|100%| E|CS|TAMS 0x00000000ee300000, 0x00000000ee300000| Complete +| 228|0x00000000ee400000, 0x00000000ee500000, 0x00000000ee500000|100%| E|CS|TAMS 0x00000000ee400000, 0x00000000ee400000| Complete +| 229|0x00000000ee500000, 0x00000000ee600000, 0x00000000ee600000|100%| E|CS|TAMS 0x00000000ee500000, 0x00000000ee500000| Complete +| 230|0x00000000ee600000, 0x00000000ee700000, 0x00000000ee700000|100%| E|CS|TAMS 0x00000000ee600000, 0x00000000ee600000| Complete +| 231|0x00000000ee700000, 0x00000000ee800000, 0x00000000ee800000|100%| E|CS|TAMS 0x00000000ee700000, 0x00000000ee700000| Complete +| 232|0x00000000ee800000, 0x00000000ee900000, 0x00000000ee900000|100%| E|CS|TAMS 0x00000000ee800000, 0x00000000ee800000| Complete +| 233|0x00000000ee900000, 0x00000000eea00000, 0x00000000eea00000|100%| E|CS|TAMS 0x00000000ee900000, 0x00000000ee900000| Complete +| 234|0x00000000eea00000, 0x00000000eeb00000, 0x00000000eeb00000|100%| E|CS|TAMS 0x00000000eea00000, 0x00000000eea00000| Complete +| 235|0x00000000eeb00000, 0x00000000eec00000, 0x00000000eec00000|100%| E|CS|TAMS 0x00000000eeb00000, 0x00000000eeb00000| Complete +| 236|0x00000000eec00000, 0x00000000eed00000, 0x00000000eed00000|100%| E|CS|TAMS 0x00000000eec00000, 0x00000000eec00000| Complete +| 237|0x00000000eed00000, 0x00000000eee00000, 0x00000000eee00000|100%| E|CS|TAMS 0x00000000eed00000, 0x00000000eed00000| Complete +| 238|0x00000000eee00000, 0x00000000eef00000, 0x00000000eef00000|100%| E|CS|TAMS 0x00000000eee00000, 0x00000000eee00000| Complete +| 239|0x00000000eef00000, 0x00000000ef000000, 0x00000000ef000000|100%| E|CS|TAMS 0x00000000eef00000, 0x00000000eef00000| Complete +| 240|0x00000000ef000000, 0x00000000ef100000, 0x00000000ef100000|100%| E|CS|TAMS 0x00000000ef000000, 0x00000000ef000000| Complete +| 241|0x00000000ef100000, 0x00000000ef200000, 0x00000000ef200000|100%| E|CS|TAMS 0x00000000ef100000, 0x00000000ef100000| Complete +| 242|0x00000000ef200000, 0x00000000ef300000, 0x00000000ef300000|100%| E|CS|TAMS 0x00000000ef200000, 0x00000000ef200000| Complete +| 243|0x00000000ef300000, 0x00000000ef400000, 0x00000000ef400000|100%| E|CS|TAMS 0x00000000ef300000, 0x00000000ef300000| Complete +| 244|0x00000000ef400000, 0x00000000ef500000, 0x00000000ef500000|100%| E|CS|TAMS 0x00000000ef400000, 0x00000000ef400000| Complete +| 245|0x00000000ef500000, 0x00000000ef600000, 0x00000000ef600000|100%| E|CS|TAMS 0x00000000ef500000, 0x00000000ef500000| Complete +| 246|0x00000000ef600000, 0x00000000ef700000, 0x00000000ef700000|100%| E|CS|TAMS 0x00000000ef600000, 0x00000000ef600000| Complete +| 247|0x00000000ef700000, 0x00000000ef800000, 0x00000000ef800000|100%| E|CS|TAMS 0x00000000ef700000, 0x00000000ef700000| Complete +| 248|0x00000000ef800000, 0x00000000ef900000, 0x00000000ef900000|100%| E|CS|TAMS 0x00000000ef800000, 0x00000000ef800000| Complete +| 249|0x00000000ef900000, 0x00000000efa00000, 0x00000000efa00000|100%| E|CS|TAMS 0x00000000ef900000, 0x00000000ef900000| Complete +| 250|0x00000000efa00000, 0x00000000efb00000, 0x00000000efb00000|100%| E|CS|TAMS 0x00000000efa00000, 0x00000000efa00000| Complete +| 251|0x00000000efb00000, 0x00000000efc00000, 0x00000000efc00000|100%| E|CS|TAMS 0x00000000efb00000, 0x00000000efb00000| Complete +| 252|0x00000000efc00000, 0x00000000efd00000, 0x00000000efd00000|100%| E|CS|TAMS 0x00000000efc00000, 0x00000000efc00000| Complete +| 253|0x00000000efd00000, 0x00000000efe00000, 0x00000000efe00000|100%| E|CS|TAMS 0x00000000efd00000, 0x00000000efd00000| Complete +| 254|0x00000000efe00000, 0x00000000eff00000, 0x00000000eff00000|100%| E|CS|TAMS 0x00000000efe00000, 0x00000000efe00000| Complete +| 255|0x00000000eff00000, 0x00000000f0000000, 0x00000000f0000000|100%| E|CS|TAMS 0x00000000eff00000, 0x00000000eff00000| Complete + +Card table byte_map: [0x00000194a2580000,0x00000194a2680000] _byte_map_base: 0x00000194a1e80000 + +Marking Bits (Prev, Next): (CMBitMap*) 0x000001948b5cd930, (CMBitMap*) 0x000001948b5cd8f8 + Prev Bits: [0x00000194a2f80000, 0x00000194a3780000) + Next Bits: [0x00000194a2780000, 0x00000194a2f80000) + +Polling page: 0x000001948ad10000 + +Metaspace: + +Usage: + Non-class: 67.06 MB capacity, 65.21 MB ( 97%) used, 1.58 MB ( 2%) free+waste, 274.44 KB ( <1%) overhead. + Class: 10.93 MB capacity, 9.90 MB ( 91%) used, 925.29 KB ( 8%) free+waste, 136.50 KB ( 1%) overhead. + Both: 77.99 MB capacity, 75.10 MB ( 96%) used, 2.49 MB ( 3%) free+waste, 410.94 KB ( <1%) overhead. + +Virtual space: + Non-class space: 68.00 MB reserved, 67.25 MB ( 99%) committed + Class space: 248.00 MB reserved, 11.00 MB ( 4%) committed + Both: 316.00 MB reserved, 78.25 MB ( 25%) committed + +Chunk freelists: + Non-Class: 768 bytes + Class: 0 bytes + Both: 768 bytes + +CodeHeap 'non-profiled nmethods': size=119168Kb used=6159Kb max_used=6159Kb free=113008Kb + bounds [0x000001949a7a0000, 0x000001949adb0000, 0x00000194a1c00000] +CodeHeap 'profiled nmethods': size=119168Kb used=20255Kb max_used=20255Kb free=98913Kb + bounds [0x0000019493340000, 0x0000019494710000, 0x000001949a7a0000] +CodeHeap 'non-nmethods': size=7424Kb used=3970Kb max_used=4012Kb free=3454Kb + bounds [0x0000019492c00000, 0x0000019493080000, 0x0000019493340000] + total_blobs=9933 nmethods=9063 adapters=778 + compilation: enabled + stopped_count=0, restarted_count=0 + full_count=0 + +Compilation events (10 events): +Event: 13.950 Thread 0x00000194a674d800 nmethod 9065 0x00000194946e3410 code [0x00000194946e35c0, 0x00000194946e37b8] +Event: 13.950 Thread 0x00000194a7033800 9067 3 com.puppycrawl.tools.checkstyle.checks.coding.DeclarationOrderCheck::leaveToken (22 bytes) +Event: 13.950 Thread 0x00000194a7033800 nmethod 9067 0x00000194946e3890 code [0x00000194946e3a40, 0x00000194946e3ca8] +Event: 13.950 Thread 0x00000194a9290800 nmethod 9066 0x00000194946e3d90 code [0x00000194946e4060, 0x00000194946e4f88] +Event: 13.950 Thread 0x00000194a7332000 9069 3 java.util.TreeMap::lastKey (8 bytes) +Event: 13.951 Thread 0x00000194a7332000 nmethod 9069 0x00000194946e5410 code [0x00000194946e55e0, 0x00000194946e5988] +Event: 13.952 Thread 0x00000194a674d800 9070 3 java.lang.StringBuffer:: (7 bytes) +Event: 13.952 Thread 0x00000194a674d800 nmethod 9070 0x00000194946e5b10 code [0x00000194946e5cc0, 0x00000194946e5de8] +Event: 13.954 Thread 0x00000194a7033800 9072 3 sun.nio.cs.UTF_8$Encoder::encodeArrayLoop (489 bytes) +Event: 13.956 Thread 0x00000194a7033800 nmethod 9072 0x00000194946e5e90 code [0x00000194946e6460, 0x00000194946e9828] + +GC Heap History (10 events): +Event: 8.586 GC heap before +{Heap before GC invocations=4 (full 0): + garbage-first heap total 262144K, used 87302K [0x00000000e0000000, 0x0000000100000000) + region size 1024K, 70 young (71680K), 3 survivors (3072K) + Metaspace used 34855K, capacity 35685K, committed 35840K, reserved 286720K + class space used 4559K, capacity 4900K, committed 4992K, reserved 253952K +} +Event: 8.589 GC heap after +{Heap after GC invocations=5 (full 0): + garbage-first heap total 262144K, used 22670K [0x00000000e0000000, 0x0000000100000000) + region size 1024K, 6 young (6144K), 6 survivors (6144K) + Metaspace used 34855K, capacity 35685K, committed 35840K, reserved 286720K + class space used 4559K, capacity 4900K, committed 4992K, reserved 253952K +} +Event: 9.297 GC heap before +{Heap before GC invocations=6 (full 0): + garbage-first heap total 262144K, used 142478K [0x00000000e0000000, 0x0000000100000000) + region size 1024K, 120 young (122880K), 6 survivors (6144K) + Metaspace used 45331K, capacity 46387K, committed 46464K, reserved 294912K + class space used 5822K, capacity 6208K, committed 6272K, reserved 253952K +} +Event: 9.303 GC heap after +{Heap after GC invocations=7 (full 0): + garbage-first heap total 262144K, used 28998K [0x00000000e0000000, 0x0000000100000000) + region size 1024K, 12 young (12288K), 12 survivors (12288K) + Metaspace used 45331K, capacity 46387K, committed 46464K, reserved 294912K + class space used 5822K, capacity 6208K, committed 6272K, reserved 253952K +} +Event: 10.497 GC heap before +{Heap before GC invocations=7 (full 0): + garbage-first heap total 262144K, used 172358K [0x00000000e0000000, 0x0000000100000000) + region size 1024K, 153 young (156672K), 12 survivors (12288K) + Metaspace used 52618K, capacity 54270K, committed 54400K, reserved 301056K + class space used 6946K, capacity 7534K, committed 7552K, reserved 253952K +} +Event: 10.506 GC heap after +{Heap after GC invocations=8 (full 0): + garbage-first heap total 262144K, used 38606K [0x00000000e0000000, 0x0000000100000000) + region size 1024K, 20 young (20480K), 20 survivors (20480K) + Metaspace used 52618K, capacity 54270K, committed 54400K, reserved 301056K + class space used 6946K, capacity 7534K, committed 7552K, reserved 253952K +} +Event: 11.736 GC heap before +{Heap before GC invocations=8 (full 0): + garbage-first heap total 262144K, used 136910K [0x00000000e0000000, 0x0000000100000000) + region size 1024K, 117 young (119808K), 20 survivors (20480K) + Metaspace used 57940K, capacity 60043K, committed 60160K, reserved 307200K + class space used 7806K, capacity 8638K, committed 8704K, reserved 253952K +} +Event: 11.747 GC heap after +{Heap after GC invocations=9 (full 0): + garbage-first heap total 262144K, used 47917K [0x00000000e0000000, 0x0000000100000000) + region size 1024K, 20 young (20480K), 20 survivors (20480K) + Metaspace used 57940K, capacity 60043K, committed 60160K, reserved 307200K + class space used 7806K, capacity 8638K, committed 8704K, reserved 253952K +} +Event: 13.550 GC heap before +{Heap before GC invocations=10 (full 0): + garbage-first heap total 262144K, used 183085K [0x00000000e0000000, 0x0000000100000000) + region size 1024K, 153 young (156672K), 20 survivors (20480K) + Metaspace used 73787K, capacity 76576K, committed 76800K, reserved 321536K + class space used 9653K, capacity 10660K, committed 10752K, reserved 253952K +} +Event: 13.559 GC heap after +{Heap after GC invocations=11 (full 0): + garbage-first heap total 262144K, used 58265K [0x00000000e0000000, 0x0000000100000000) + region size 1024K, 19 young (19456K), 19 survivors (19456K) + Metaspace used 73787K, capacity 76576K, committed 76800K, reserved 321536K + class space used 9653K, capacity 10660K, committed 10752K, reserved 253952K +} + +Deoptimization events (10 events): +Event: 13.804 Thread 0x00000194acd01000 Uncommon trap: reason=array_check action=maybe_recompile pc=0x000001949ad6719c method=org.antlr.v4.runtime.misc.Array2DHashSet.getOrAddImpl(Ljava/lang/Object;)Ljava/lang/Object; @ 128 c2 +Event: 13.805 Thread 0x00000194acd01000 Uncommon trap: reason=bimorphic_or_optimized_type_check action=maybe_recompile pc=0x000001949ad44608 method=org.antlr.v4.runtime.atn.ParserATNSimulator.canDropLoopEntryEdgeInLeftRecursiveRule(Lorg/antlr/v4/runtime/atn/ATNConfig;)Z @ 36 c2 +Event: 13.827 Thread 0x00000194acd01000 Uncommon trap: reason=array_check action=maybe_recompile pc=0x000001949ad6dd70 method=org.antlr.v4.runtime.misc.Array2DHashSet.getOrAddImpl(Ljava/lang/Object;)Ljava/lang/Object; @ 133 c2 +Event: 13.828 Thread 0x00000194acd01000 Uncommon trap: reason=array_check action=maybe_recompile pc=0x000001949ad6dd70 method=org.antlr.v4.runtime.misc.Array2DHashSet.getOrAddImpl(Ljava/lang/Object;)Ljava/lang/Object; @ 133 c2 +Event: 13.861 Thread 0x00000194acd01000 Uncommon trap: reason=unstable_if action=reinterpret pc=0x000001949ad7226c method=org.antlr.v4.runtime.atn.PredictionContext.merge(Lorg/antlr/v4/runtime/atn/PredictionContext;Lorg/antlr/v4/runtime/atn/PredictionContext;ZLorg/antlr/v4/runtime/misc/DoubleKe +Event: 13.864 Thread 0x00000194acd01000 Uncommon trap: reason=unstable_if action=reinterpret pc=0x000001949ad74618 method=org.antlr.v4.runtime.atn.PredictionContext.merge(Lorg/antlr/v4/runtime/atn/PredictionContext;Lorg/antlr/v4/runtime/atn/PredictionContext;ZLorg/antlr/v4/runtime/misc/DoubleKe +Event: 13.889 Thread 0x00000194acd01000 Uncommon trap: reason=profile_predicate action=maybe_recompile pc=0x000001949ad830c0 method=org.antlr.v4.runtime.atn.PredictionContext.getCachedContext(Lorg/antlr/v4/runtime/atn/PredictionContext;Lorg/antlr/v4/runtime/atn/PredictionContextCache;Ljava/util +Event: 13.889 Thread 0x00000194acd01000 Uncommon trap: reason=profile_predicate action=maybe_recompile pc=0x000001949ad830c0 method=org.antlr.v4.runtime.atn.PredictionContext.getCachedContext(Lorg/antlr/v4/runtime/atn/PredictionContext;Lorg/antlr/v4/runtime/atn/PredictionContextCache;Ljava/util +Event: 13.890 Thread 0x00000194acd01000 Uncommon trap: reason=profile_predicate action=maybe_recompile pc=0x000001949ad830c0 method=org.antlr.v4.runtime.atn.PredictionContext.getCachedContext(Lorg/antlr/v4/runtime/atn/PredictionContext;Lorg/antlr/v4/runtime/atn/PredictionContextCache;Ljava/util +Event: 13.890 Thread 0x00000194acd01000 Uncommon trap: reason=profile_predicate action=maybe_recompile pc=0x000001949ad830c0 method=org.antlr.v4.runtime.atn.PredictionContext.getCachedContext(Lorg/antlr/v4/runtime/atn/PredictionContext;Lorg/antlr/v4/runtime/atn/PredictionContextCache;Ljava/util + +Classes redefined (0 events): +No events + +Internal exceptions (10 events): +Event: 13.563 Thread 0x00000194acd01000 Exception (0x00000000efffdb70) thrown at [./open/src/hotspot/share/classfile/systemDictionary.cpp, +Event: 13.565 Thread 0x00000194acd01000 Exception (0x00000000efe72d88) thrown at [./open/src/hotspot/share/classfile/systemDictionary.cpp, line 226] +Event: 13.565 Thread 0x00000194acd01000 Exception (0x00000000efe817f0) thrown at [./open/src/hotspot/share/classfile/systemDictionary.cpp, line 226] +Event: 13.567 Thread 0x00000194acd01000 Exception (0x00000000efd35888) thrown at [./open/src/hotspot/share/classfile/systemDictionary.cpp, line 226] +Event: 13.567 Thread 0x00000194acd01000 Exception (0x00000000efd44208) thrown at [./open/src/hotspot/share/classfile/systemDictionary.cpp, line 226] +Event: 13.569 Thread 0x00000194acd01000 Exception (0x00000000efc996f8) thrown at [./open/src/hotspot/share/classfile/systemDictionary.cpp, line 226] +Event: 13.569 Thread 0x00000194acd01000 Exception (0x00000000efca8330) thrown at [./open/src/hotspot/share/classfile/systemDictionary.cpp, line 226] +Event: 13.576 Thread 0x00000194acd01000 Implicit null exception at 0x000001949acbdacd to 0x000001949acbdaf8 +Event: 13.577 Thread 0x00000194acd01000 Implicit null exception at 0x000001949a96074b to 0x000001949a96076c +Event: 13.586 Thread 0x00000194acd01000 Exception (0x00000000efad1048) thrown at [./open/src/hotspot/share/interpreter/linkResolver.cpp, line 772] + +Events (10 events): +Event: 13.894 Thread 0x00000194acd01000 DEOPT UNPACKING pc=0x0000019492c27c0e sp=0x00000053d7af5460 mode 0 +Event: 13.904 Thread 0x00000194acd01000 DEOPT PACKING pc=0x00000194945e15f3 sp=0x00000053d7af5bd0 +Event: 13.904 Thread 0x00000194acd01000 DEOPT UNPACKING pc=0x0000019492c27c0e sp=0x00000053d7af5070 mode 0 +Event: 13.915 Thread 0x00000194acd01000 DEOPT PACKING pc=0x00000194945e15f3 sp=0x00000053d7af5a40 +Event: 13.915 Thread 0x00000194acd01000 DEOPT UNPACKING pc=0x0000019492c27c0e sp=0x00000053d7af4ee0 mode 0 +Event: 13.925 Thread 0x00000194acd01000 DEOPT PACKING pc=0x00000194945e15f3 sp=0x00000053d7af68e0 +Event: 13.925 Thread 0x00000194acd01000 DEOPT UNPACKING pc=0x0000019492c27c0e sp=0x00000053d7af5d80 mode 0 +Event: 13.945 loading class java/util/concurrent/ForkJoinPool$DefaultForkJoinWorkerThreadFactory$1 +Event: 13.946 loading class java/util/concurrent/ForkJoinPool$DefaultForkJoinWorkerThreadFactory$1 done +Event: 13.947 Thread 0x00000194b3121800 Thread added: 0x00000194b3121800 + + +Dynamic libraries: +0x00007ff6dd4c0000 - 0x00007ff6dd4cf000 C:\Program Files\Java\jdk-11.0.17\bin\java.exe +0x00007ffefe6d0000 - 0x00007ffefe8c8000 C:\Windows\SYSTEM32\ntdll.dll +0x00007ffefce00000 - 0x00007ffefcebf000 C:\Windows\System32\KERNEL32.DLL +0x00007ffefc0a0000 - 0x00007ffefc372000 C:\Windows\System32\KERNELBASE.dll +0x00007ffefc620000 - 0x00007ffefc720000 C:\Windows\System32\ucrtbase.dll +0x00007ffee9e40000 - 0x00007ffee9e55000 C:\Program Files\Java\jdk-11.0.17\bin\VCRUNTIME140.dll +0x00007ffee5260000 - 0x00007ffee5278000 C:\Program Files\Java\jdk-11.0.17\bin\jli.dll +0x00007ffefe5e0000 - 0x00007ffefe68e000 C:\Windows\System32\ADVAPI32.dll +0x00007ffefced0000 - 0x00007ffefcf6e000 C:\Windows\System32\msvcrt.dll +0x00007ffefe1e0000 - 0x00007ffefe27c000 C:\Windows\System32\sechost.dll +0x00007ffefcf90000 - 0x00007ffefd0b4000 C:\Windows\System32\RPCRT4.dll +0x00007ffefd0c0000 - 0x00007ffefd261000 C:\Windows\System32\USER32.dll +0x00007ffefbdd0000 - 0x00007ffefbdf2000 C:\Windows\System32\win32u.dll +0x00007ffefd4d0000 - 0x00007ffefd4fb000 C:\Windows\System32\GDI32.dll +0x00007ffefc3f0000 - 0x00007ffefc4ff000 C:\Windows\System32\gdi32full.dll +0x00007ffefc550000 - 0x00007ffefc5ed000 C:\Windows\System32\msvcp_win.dll +0x00007ffee5a70000 - 0x00007ffee5d0a000 C:\Windows\WinSxS\amd64_microsoft.windows.common-controls_6595b64144ccf1df_6.0.19041.1110_none_60b5254171f9507e\COMCTL32.dll +0x00007ffef2520000 - 0x00007ffef252a000 C:\Windows\SYSTEM32\VERSION.dll +0x00007ffefe070000 - 0x00007ffefe0a0000 C:\Windows\System32\IMM32.DLL +0x00007ffef44c0000 - 0x00007ffef46b6000 C:\Windows\system32\tmumh\20019\AddOn\8.55.0.1053\TmUmEvt64.dll +0x00007ffefdf10000 - 0x00007ffefdf18000 C:\Windows\System32\PSAPI.DLL +0x0000000067a30000 - 0x0000000067ba3000 C:\Windows\system32\tmumh\20019\TmMon\2.9.0.1043\tmmon64.dll +0x00007ffeb1070000 - 0x00007ffeb110b000 C:\Program Files\Java\jdk-11.0.17\bin\msvcp140.dll +0x00007ffe975c0000 - 0x00007ffe980da000 C:\Program Files\Java\jdk-11.0.17\bin\server\jvm.dll +0x00007ffef7570000 - 0x00007ffef7579000 C:\Windows\SYSTEM32\WSOCK32.dll +0x00007ffefe170000 - 0x00007ffefe1db000 C:\Windows\System32\WS2_32.dll +0x00007ffee2920000 - 0x00007ffee2947000 C:\Windows\SYSTEM32\WINMM.dll +0x00007ffefa5e0000 - 0x00007ffefa5f2000 C:\Windows\SYSTEM32\kernel.appcore.dll +0x00007ffef2730000 - 0x00007ffef2740000 C:\Program Files\Java\jdk-11.0.17\bin\verify.dll +0x00007ffef9b30000 - 0x00007ffef9d14000 C:\Windows\SYSTEM32\DBGHELP.DLL +0x00007ffeee600000 - 0x00007ffeee635000 C:\Windows\SYSTEM32\dbgcore.DLL +0x00007ffefbf60000 - 0x00007ffefbfe2000 C:\Windows\System32\bcryptPrimitives.dll +0x00007ffee4df0000 - 0x00007ffee4e18000 C:\Program Files\Java\jdk-11.0.17\bin\java.dll +0x00007ffeeb0d0000 - 0x00007ffeeb0da000 C:\Program Files\Java\jdk-11.0.17\bin\jimage.dll +0x00007ffee4db0000 - 0x00007ffee4dc6000 C:\Program Files\Java\jdk-11.0.17\bin\zip.dll +0x00007ffefd7c0000 - 0x00007ffefdf05000 C:\Windows\System32\SHELL32.dll +0x00007ffef9e30000 - 0x00007ffefa5c2000 C:\Windows\SYSTEM32\windows.storage.dll +0x00007ffefe280000 - 0x00007ffefe5d5000 C:\Windows\System32\combase.dll +0x00007ffefb750000 - 0x00007ffefb780000 C:\Windows\SYSTEM32\Wldp.dll +0x00007ffefd410000 - 0x00007ffefd4bd000 C:\Windows\System32\SHCORE.dll +0x00007ffefc930000 - 0x00007ffefc985000 C:\Windows\System32\shlwapi.dll +0x00007ffefbd10000 - 0x00007ffefbd2f000 C:\Windows\SYSTEM32\profapi.dll +0x00007ffee41f0000 - 0x00007ffee4209000 C:\Program Files\Java\jdk-11.0.17\bin\net.dll +0x00007ffef6360000 - 0x00007ffef646a000 C:\Windows\SYSTEM32\WINHTTP.dll +0x00007ffefb530000 - 0x00007ffefb59a000 C:\Windows\system32\mswsock.dll +0x00007ffee27f0000 - 0x00007ffee2802000 C:\Program Files\Java\jdk-11.0.17\bin\nio.dll +0x00007ffede5f0000 - 0x00007ffede617000 C:\Users\Chen Zi Han\.gradle\native\e1d6ef7f7dcc3fd88c89a11ec53ec762bb8ba0a96d01ffa2cd45eb1d1d8dd5c5\windows-amd64\native-platform.dll +0x00007ffea4190000 - 0x00007ffea42d4000 C:\Users\Chen Zi Han\.gradle\native\0d407fdbe67a94daf76414ababcb853783967236a71b16ec16e742cd7a986fd3\windows-amd64\native-platform-file-events.dll +0x00007ffeea300000 - 0x00007ffeea309000 C:\Program Files\Java\jdk-11.0.17\bin\management.dll +0x00007ffee59e0000 - 0x00007ffee59eb000 C:\Program Files\Java\jdk-11.0.17\bin\management_ext.dll +0x00007ffefb790000 - 0x00007ffefb7a8000 C:\Windows\SYSTEM32\CRYPTSP.dll +0x00007ffefae00000 - 0x00007ffefae34000 C:\Windows\system32\rsaenh.dll +0x00007ffefc5f0000 - 0x00007ffefc617000 C:\Windows\System32\bcrypt.dll +0x00007ffefbcd0000 - 0x00007ffefbcfe000 C:\Windows\SYSTEM32\USERENV.dll +0x00007ffefb6c0000 - 0x00007ffefb6cc000 C:\Windows\SYSTEM32\CRYPTBASE.dll +0x00007ffefb1f0000 - 0x00007ffefb22b000 C:\Windows\SYSTEM32\IPHLPAPI.DLL +0x00007ffefcec0000 - 0x00007ffefcec8000 C:\Windows\System32\NSI.dll +0x00007ffef4870000 - 0x00007ffef4887000 C:\Windows\SYSTEM32\dhcpcsvc6.DLL +0x00007ffef4850000 - 0x00007ffef486d000 C:\Windows\SYSTEM32\dhcpcsvc.DLL +0x00007ffefb230000 - 0x00007ffefb2fb000 C:\Windows\SYSTEM32\DNSAPI.dll + +dbghelp: loaded successfully - version: 4.0.5 - missing functions: none +symbol engine: initialized successfully - sym options: 0x614 - pdb path: .;C:\Program Files\Java\jdk-11.0.17\bin;C:\Windows\SYSTEM32;C:\Windows\WinSxS\amd64_microsoft.windows.common-controls_6595b64144ccf1df_6.0.19041.1110_none_60b5254171f9507e;C:\Windows\system32\tmumh\20019\AddOn\8.55.0.1053;C:\Windows\system32\tmumh\20019\TmMon\2.9.0.1043;C:\Program Files\Java\jdk-11.0.17\bin\server;C:\Users\Chen Zi Han\.gradle\native\e1d6ef7f7dcc3fd88c89a11ec53ec762bb8ba0a96d01ffa2cd45eb1d1d8dd5c5\windows-amd64;C:\Users\Chen Zi Han\.gradle\native\0d407fdbe67a94daf76414ababcb853783967236a71b16ec16e742cd7a986fd3\windows-amd64 + +VM Arguments: +jvm_args: --add-opens=java.base/java.util=ALL-UNNAMED --add-opens=java.base/java.lang=ALL-UNNAMED --add-opens=java.base/java.lang.invoke=ALL-UNNAMED --add-opens=java.base/java.util=ALL-UNNAMED --add-opens=java.prefs/java.util.prefs=ALL-UNNAMED --add-opens=java.prefs/java.util.prefs=ALL-UNNAMED --add-opens=java.base/java.nio.charset=ALL-UNNAMED --add-opens=java.base/java.net=ALL-UNNAMED --add-opens=java.base/java.util.concurrent.atomic=ALL-UNNAMED -XX:MaxMetaspaceSize=256m -XX:+HeapDumpOnOutOfMemoryError -Xms256m -Xmx512m -Dfile.encoding=GBK -Duser.country=SG -Duser.language=en -Duser.variant +java_command: org.gradle.launcher.daemon.bootstrap.GradleDaemon 7.4.2 +java_class_path (initial): C:\Users\Chen Zi Han\.gradle\wrapper\dists\gradle-7.4.2-bin\48ivgl02cpt2ed3fh9dbalvx8\gradle-7.4.2\lib\gradle-launcher-7.4.2.jar +Launcher Type: SUN_STANDARD + +[Global flags] + intx CICompilerCount = 12 {product} {ergonomic} + size_t CompressedClassSpaceSize = 260046848 {product} {ergonomic} + uint ConcGCThreads = 3 {product} {ergonomic} + uint G1ConcRefinementThreads = 13 {product} {ergonomic} + size_t G1HeapRegionSize = 1048576 {product} {ergonomic} + uintx GCDrainStackTargetSize = 64 {product} {ergonomic} + bool HeapDumpOnOutOfMemoryError = true {manageable} {command line} + size_t InitialHeapSize = 268435456 {product} {command line} + size_t MarkStackSize = 4194304 {product} {ergonomic} + size_t MaxHeapSize = 536870912 {product} {command line} + size_t MaxMetaspaceSize = 268435456 {product} {command line} + size_t MaxNewSize = 321912832 {product} {ergonomic} + size_t MinHeapDeltaBytes = 1048576 {product} {ergonomic} + uintx NonNMethodCodeHeapSize = 7594288 {pd product} {ergonomic} + uintx NonProfiledCodeHeapSize = 122031976 {pd product} {ergonomic} + uintx ProfiledCodeHeapSize = 122031976 {pd product} {ergonomic} + uintx ReservedCodeCacheSize = 251658240 {pd product} {ergonomic} + bool SegmentedCodeCache = true {product} {ergonomic} + bool UseCompressedClassPointers = true {lp64_product} {ergonomic} + bool UseCompressedOops = true {lp64_product} {ergonomic} + bool UseG1GC = true {product} {ergonomic} + bool UseLargePagesIndividualAllocation = false {pd product} {ergonomic} + +Logging: +Log output configuration: + #0: stdout all=warning uptime,level,tags + #1: stderr all=off uptime,level,tags + +Environment Variables: +JAVA_HOME=C:\Program Files\Java\jdk-18.0.1.1 +PATH=C:\Program Files\Common Files\Oracle\Java\javapath;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Windows\System32\OpenSSH\;C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common;C:\Program Files\NVIDIA Corporation\NVIDIA NvDLISR;E:\Notepad++;C:\Program Files\Java\jdk-18.0.1.1\bin;C:\Program Files\Azure Data Studio\bin;C:\Program Files\Microsoft SQL Server\150\Tools\Binn\;C:\Program Files\Java\jdk1.7.0_80\bin;E:\С³ÌÐò¿ª·¢\΢ÐÅweb¿ª·¢Õß¹¤¾ß\dll;E:\С³ÌÐò¿ª·¢\¿ª·¢;¾ß°²×°\΢ÐÅweb¿ª·¢Õß¹¤¾ß\dll;C:\Progr;; Files\Git\cmd;C:\Program Files\Git\cmd;C:\Users\Chen Zi Han\AppData\Local\Microsoft\WindowsApps;C:\Users\Chen Zi Han\AppData\Roaming\TinyTeX\bin\win32;C:\Program Files\Azure Data Studio\bin;E:\Microsoft VS Code\bin;C:\Users\Chen Zi Han\AppData\Local\GitHubDesktop\bin +USERNAME=Chen Zi Han +OS=Windows_NT +PROCESSOR_IDENTIFIER=Intel64 Family 6 Model 141 Stepping 1, GenuineIntel + + + +--------------- S Y S T E M --------------- + +OS: Windows 10 , 64 bit Build 19041 (10.0.19041.2546) +Hyper-V role detected + +CPU:total 16 (initial active 16) (8 cores per cpu, 2 threads per core) family 6 model 141 stepping 1 microcode 0x34, cmov, cx8, fxsr, mmx, sse, sse2, sse3, ssse3, sse4.1, sse4.2, popcnt, avx, avx2, aes, clmul, erms, 3dnowpref, lzcnt, ht, tsc, tscinvbit, bmi1, bmi2, adx, evex, sha, fma + +Memory: 4k page, system-wide physical 16122M (2184M free) +TotalPageFile size 26441M (AvailPageFile size 5M) +current process WorkingSet (physical memory assigned to process): 555M, peak: 559M +current process commit charge ("private bytes"): 653M, peak: 656M + +vm_info: Java HotSpot(TM) 64-Bit Server VM (11.0.17+10-LTS-269) for windows-amd64 JRE (11.0.17+10-LTS-269), built on Sep 13 2022 19:26:37 by "mach5one" with MS VC++ 15.9 (VS2017) + +END. diff --git a/hs_err_pid20140.log b/hs_err_pid20140.log new file mode 100644 index 0000000000..d770a0c0f8 --- /dev/null +++ b/hs_err_pid20140.log @@ -0,0 +1,744 @@ +# +# There is insufficient memory for the Java Runtime Environment to continue. +# Native memory allocation (malloc) failed to allocate 1868016 bytes for Chunk::new +# Possible reasons: +# The system is out of physical RAM or swap space +# The process is running with CompressedOops enabled, and the Java Heap may be blocking the growth of the native heap +# Possible solutions: +# Reduce memory load on the system +# Increase physical memory or swap space +# Check if swap backing store is full +# Decrease Java heap size (-Xmx/-Xms) +# Decrease number of Java threads +# Decrease Java thread stack sizes (-Xss) +# Set larger code cache with -XX:ReservedCodeCacheSize= +# JVM is running with Unscaled Compressed Oops mode in which the Java heap is +# placed in the first 4GB address space. The Java Heap base address is the +# maximum limit for the native heap growth. Please use -XX:HeapBaseMinAddress +# to set the Java Heap base and to place the Java Heap above 4GB virtual address. +# This output file may be truncated or incomplete. +# +# Out of Memory Error (./open/src/hotspot/share/memory/arena.cpp:197), pid=20140, tid=7604 +# +# JRE version: Java(TM) SE Runtime Environment 18.9 (11.0.17+10) (build 11.0.17+10-LTS-269) +# Java VM: Java HotSpot(TM) 64-Bit Server VM 18.9 (11.0.17+10-LTS-269, mixed mode, tiered, compressed oops, g1 gc, windows-amd64) +# No core dump will be written. Minidumps are not enabled by default on client versions of Windows +# + +--------------- S U M M A R Y ------------ + +Command Line: --add-opens=java.base/java.util=ALL-UNNAMED --add-opens=java.base/java.lang=ALL-UNNAMED --add-opens=java.base/java.lang.invoke=ALL-UNNAMED --add-opens=java.base/java.util=ALL-UNNAMED --add-opens=java.prefs/java.util.prefs=ALL-UNNAMED --add-opens=java.prefs/java.util.prefs=ALL-UNNAMED --add-opens=java.base/java.nio.charset=ALL-UNNAMED --add-opens=java.base/java.net=ALL-UNNAMED --add-opens=java.base/java.util.concurrent.atomic=ALL-UNNAMED -XX:MaxMetaspaceSize=256m -XX:+HeapDumpOnOutOfMemoryError -Xms256m -Xmx512m -Dfile.encoding=GBK -Duser.country=SG -Duser.language=en -Duser.variant org.gradle.launcher.daemon.bootstrap.GradleDaemon 7.4.2 + +Host: 11th Gen Intel(R) Core(TM) i7-11800H @ 2.30GHz, 16 cores, 15G, Windows 10 , 64 bit Build 19041 (10.0.19041.2546) +Time: Fri Apr 7 00:51:56 2023 China Standard Time elapsed time: 2.905891 seconds (0d 0h 0m 2s) + +--------------- T H R E A D --------------- + +Current thread (0x0000019293398800): JavaThread "C2 CompilerThread2" daemon [_thread_in_native, id=7604, stack(0x0000005fd3300000,0x0000005fd3400000)] + + +Current CompileTask: +C2: 2905 4414 4 java.lang.invoke.MethodType::makeImpl (108 bytes) + +Stack: [0x0000005fd3300000,0x0000005fd3400000] +Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code) +V [jvm.dll+0x62b5da] +V [jvm.dll+0x7653df] +V [jvm.dll+0x766a89] +V [jvm.dll+0x767113] +V [jvm.dll+0x23dd28] +V [jvm.dll+0xb2a1c] +V [jvm.dll+0xb2fdc] +V [jvm.dll+0x341552] +V [jvm.dll+0x30ef13] +V [jvm.dll+0x30e25a] +V [jvm.dll+0x1f8733] +V [jvm.dll+0x1f78fd] +V [jvm.dll+0x177c91] +V [jvm.dll+0x207296] +V [jvm.dll+0x20542b] +V [jvm.dll+0x72b2c0] +V [jvm.dll+0x723e64] +V [jvm.dll+0x62a485] +C [ucrtbase.dll+0x21bb2] +C [KERNEL32.DLL+0x17614] +C [ntdll.dll+0x526a1] + + +--------------- P R O C E S S --------------- + +Threads class SMR info: +_java_thread_list=0x00000192997e2c50, length=68, elements={ +0x00000192f6fb5800, 0x00000192fffc3000, 0x00000192fffc4000, 0x0000019292a7b000, +0x0000019292a7e800, 0x0000019292a80800, 0x0000019292a81800, 0x0000019292a91000, +0x0000019292aa1800, 0x0000019292bfc800, 0x0000019292c0d800, 0x0000019292f47000, +0x0000019293398800, 0x000001929402c000, 0x000001929412f800, 0x0000019294b99800, +0x0000019294989800, 0x0000019295722000, 0x000001929563a000, 0x0000019295454800, +0x00000192941a4800, 0x00000192942ea800, 0x00000192942d8800, 0x0000019294fb5000, +0x0000019295bce800, 0x0000019295bcf800, 0x0000019295bd3000, 0x0000019295bd0800, +0x0000019295bcd000, 0x0000019295bd1000, 0x0000019295bd2000, 0x0000019295bd3800, +0x0000019295bce000, 0x0000019294c77800, 0x0000019294c7b800, 0x0000019294c7a000, +0x0000019294c7c800, 0x0000019297fe0000, 0x0000019294c77000, 0x0000019294c78800, +0x0000019294c79000, 0x000001929860b000, 0x000001929860c000, 0x0000019298609800, +0x000001929860a800, 0x0000019298607000, 0x0000019298609000, 0x0000019298606800, +0x000001929860d000, 0x000001929860d800, 0x0000019298608000, 0x0000019298614000, +0x000001929860e800, 0x0000019298611000, 0x0000019298612000, 0x0000019298612800, +0x0000019298613800, 0x0000019298615000, 0x000001929860f800, 0x0000019298610000, +0x00000192997d6000, 0x00000192997d5800, 0x00000192997d7000, 0x00000192997d7800, +0x00000192997d8800, 0x00000192997d3000, 0x00000192997d3800, 0x00000192997d4800 +} + +Java Threads: ( => current thread ) + 0x00000192f6fb5800 JavaThread "main" [_thread_blocked, id=23852, stack(0x0000005fd2000000,0x0000005fd2100000)] + 0x00000192fffc3000 JavaThread "Reference Handler" daemon [_thread_blocked, id=12192, stack(0x0000005fd2700000,0x0000005fd2800000)] + 0x00000192fffc4000 JavaThread "Finalizer" daemon [_thread_blocked, id=3996, stack(0x0000005fd2800000,0x0000005fd2900000)] + 0x0000019292a7b000 JavaThread "Signal Dispatcher" daemon [_thread_blocked, id=13216, stack(0x0000005fd2900000,0x0000005fd2a00000)] + 0x0000019292a7e800 JavaThread "Attach Listener" daemon [_thread_blocked, id=19800, stack(0x0000005fd2a00000,0x0000005fd2b00000)] + 0x0000019292a80800 JavaThread "Service Thread" daemon [_thread_blocked, id=14664, stack(0x0000005fd2b00000,0x0000005fd2c00000)] + 0x0000019292a81800 JavaThread "C2 CompilerThread0" daemon [_thread_in_native, id=7328, stack(0x0000005fd2c00000,0x0000005fd2d00000)] + 0x0000019292a91000 JavaThread "C1 CompilerThread0" daemon [_thread_blocked, id=20964, stack(0x0000005fd2d00000,0x0000005fd2e00000)] + 0x0000019292aa1800 JavaThread "Sweeper thread" daemon [_thread_blocked, id=15504, stack(0x0000005fd2e00000,0x0000005fd2f00000)] + 0x0000019292bfc800 JavaThread "C1 CompilerThread1" daemon [_thread_blocked, id=18544, stack(0x0000005fd2f00000,0x0000005fd3000000)] + 0x0000019292c0d800 JavaThread "Common-Cleaner" daemon [_thread_blocked, id=7384, stack(0x0000005fd3000000,0x0000005fd3100000)] + 0x0000019292f47000 JavaThread "C2 CompilerThread1" daemon [_thread_in_native, id=23140, stack(0x0000005fd3200000,0x0000005fd3300000)] +=>0x0000019293398800 JavaThread "C2 CompilerThread2" daemon [_thread_in_native, id=7604, stack(0x0000005fd3300000,0x0000005fd3400000)] + 0x000001929402c000 JavaThread "C1 CompilerThread2" daemon [_thread_blocked, id=14260, stack(0x0000005fd3900000,0x0000005fd3a00000)] + 0x000001929412f800 JavaThread "C1 CompilerThread3" daemon [_thread_blocked, id=22264, stack(0x0000005fd3a00000,0x0000005fd3b00000)] + 0x0000019294b99800 JavaThread "Daemon health stats" [_thread_blocked, id=16632, stack(0x0000005fd3b00000,0x0000005fd3c00000)] + 0x0000019294989800 JavaThread "Incoming local TCP Connector on port 54357" [_thread_in_native, id=24148, stack(0x0000005fd3c00000,0x0000005fd3d00000)] + 0x0000019295722000 JavaThread "Daemon periodic checks" [_thread_blocked, id=3808, stack(0x0000005fd3d00000,0x0000005fd3e00000)] + 0x000001929563a000 JavaThread "Daemon" [_thread_blocked, id=11732, stack(0x0000005fd3e00000,0x0000005fd3f00000)] + 0x0000019295454800 JavaThread "Handler for socket connection from /127.0.0.1:54357 to /127.0.0.1:54358" [_thread_in_native, id=12524, stack(0x0000005fd3f00000,0x0000005fd4000000)] + 0x00000192941a4800 JavaThread "Cancel handler" [_thread_blocked, id=22736, stack(0x0000005fd4000000,0x0000005fd4100000)] + 0x00000192942ea800 JavaThread "Daemon worker" [_thread_in_vm, id=6780, stack(0x0000005fd4100000,0x0000005fd4200000)] + 0x00000192942d8800 JavaThread "Asynchronous log dispatcher for DefaultDaemonConnection: socket connection from /127.0.0.1:54357 to /127.0.0.1:54358" [_thread_blocked, id=21156, stack(0x0000005fd4200000,0x0000005fd4300000)] + 0x0000019294fb5000 JavaThread "Stdin handler" [_thread_blocked, id=23832, stack(0x0000005fd4300000,0x0000005fd4400000)] + 0x0000019295bce800 JavaThread "Daemon client event forwarder" [_thread_blocked, id=16100, stack(0x0000005fd4400000,0x0000005fd4500000)] + 0x0000019295bcf800 JavaThread "Cache worker for journal cache (C:\Users\Chen Zi Han\.gradle\caches\journal-1)" [_thread_blocked, id=4000, stack(0x0000005fd4500000,0x0000005fd4600000)] + 0x0000019295bd3000 JavaThread "File lock request listener" [_thread_in_native, id=9480, stack(0x0000005fd4600000,0x0000005fd4700000)] + 0x0000019295bd0800 JavaThread "Cache worker for file hash cache (C:\Users\Chen Zi Han\.gradle\caches\7.4.2\fileHashes)" [_thread_blocked, id=24164, stack(0x0000005fd4700000,0x0000005fd4800000)] + 0x0000019295bcd000 JavaThread "File watcher server" daemon [_thread_in_native, id=21448, stack(0x0000005fd5100000,0x0000005fd5200000)] + 0x0000019295bd1000 JavaThread "File watcher consumer" daemon [_thread_blocked, id=16144, stack(0x0000005fd5200000,0x0000005fd5300000)] + 0x0000019295bd2000 JavaThread "Cache worker for checksums cache (D:\NUS_Year2_SEM2\CS2113_NEW\tp\.gradle\7.4.2\checksums)" [_thread_blocked, id=14020, stack(0x0000005fd5300000,0x0000005fd5400000)] + 0x0000019295bd3800 JavaThread "Cache worker for cache directory md-rule (C:\Users\Chen Zi Han\.gradle\caches\7.4.2\md-rule)" [_thread_blocked, id=23188, stack(0x0000005fd5400000,0x0000005fd5500000)] + 0x0000019295bce000 JavaThread "Cache worker for file hash cache (D:\NUS_Year2_SEM2\CS2113_NEW\tp\.gradle\7.4.2\fileHashes)" [_thread_blocked, id=19224, stack(0x0000005fd5500000,0x0000005fd5600000)] + 0x0000019294c77800 JavaThread "Cache worker for cache directory md-supplier (C:\Users\Chen Zi Han\.gradle\caches\7.4.2\md-supplier)" [_thread_blocked, id=10584, stack(0x0000005fd5600000,0x0000005fd5700000)] + 0x0000019294c7b800 JavaThread "Cache worker for execution history cache (C:\Users\Chen Zi Han\.gradle\caches\7.4.2\executionHistory)" [_thread_blocked, id=18760, stack(0x0000005fd5700000,0x0000005fd5800000)] + 0x0000019294c7a000 JavaThread "jar transforms" [_thread_blocked, id=5444, stack(0x0000005fd5800000,0x0000005fd5900000)] + 0x0000019294c7c800 JavaThread "jar transforms Thread 2" [_thread_blocked, id=8332, stack(0x0000005fd5900000,0x0000005fd5a00000)] + 0x0000019297fe0000 JavaThread "C2 CompilerThread3" daemon [_thread_in_native, id=20536, stack(0x0000005fd5a00000,0x0000005fd5b00000)] + 0x0000019294c77000 JavaThread "Cache worker for file content cache (C:\Users\Chen Zi Han\.gradle\caches\7.4.2\fileContent)" [_thread_blocked, id=13588, stack(0x0000005fd5b00000,0x0000005fd5c00000)] + 0x0000019294c78800 JavaThread "jar transforms Thread 3" [_thread_blocked, id=13564, stack(0x0000005fd5c00000,0x0000005fd5d00000)] + 0x0000019294c79000 JavaThread "jar transforms Thread 4" [_thread_blocked, id=21148, stack(0x0000005fd5d00000,0x0000005fd5e00000)] + 0x000001929860b000 JavaThread "jar transforms Thread 5" [_thread_blocked, id=21720, stack(0x0000005fd5e00000,0x0000005fd5f00000)] + 0x000001929860c000 JavaThread "jar transforms Thread 6" [_thread_blocked, id=22156, stack(0x0000005fd5f00000,0x0000005fd6000000)] + 0x0000019298609800 JavaThread "Cache worker for dependencies-accessors (D:\NUS_Year2_SEM2\CS2113_NEW\tp\.gradle\7.4.2\dependencies-accessors)" [_thread_blocked, id=3584, stack(0x0000005fd6000000,0x0000005fd6100000)] + 0x000001929860a800 JavaThread "jar transforms Thread 7" [_thread_blocked, id=3372, stack(0x0000005fd6100000,0x0000005fd6200000)] + 0x0000019298607000 JavaThread "Cache worker for Build Output Cleanup Cache (D:\NUS_Year2_SEM2\CS2113_NEW\tp\.gradle\buildOutputCleanup)" [_thread_blocked, id=11592, stack(0x0000005fd6200000,0x0000005fd6300000)] + 0x0000019298609000 JavaThread "Unconstrained build operations" [_thread_blocked, id=23296, stack(0x0000005fd6300000,0x0000005fd6400000)] + 0x0000019298606800 JavaThread "Unconstrained build operations Thread 2" [_thread_blocked, id=22000, stack(0x0000005fd6400000,0x0000005fd6500000)] + 0x000001929860d000 JavaThread "Unconstrained build operations Thread 3" [_thread_blocked, id=24452, stack(0x0000005fd6500000,0x0000005fd6600000)] + 0x000001929860d800 JavaThread "Unconstrained build operations Thread 4" [_thread_blocked, id=3936, stack(0x0000005fd6600000,0x0000005fd6700000)] + 0x0000019298608000 JavaThread "Unconstrained build operations Thread 5" [_thread_blocked, id=19040, stack(0x0000005fd6700000,0x0000005fd6800000)] + 0x0000019298614000 JavaThread "Unconstrained build operations Thread 6" [_thread_blocked, id=7560, stack(0x0000005fd6800000,0x0000005fd6900000)] + 0x000001929860e800 JavaThread "Unconstrained build operations Thread 7" [_thread_blocked, id=11560, stack(0x0000005fd6900000,0x0000005fd6a00000)] + 0x0000019298611000 JavaThread "Unconstrained build operations Thread 8" [_thread_blocked, id=20748, stack(0x0000005fd6a00000,0x0000005fd6b00000)] + 0x0000019298612000 JavaThread "Unconstrained build operations Thread 9" [_thread_blocked, id=21248, stack(0x0000005fd6b00000,0x0000005fd6c00000)] + 0x0000019298612800 JavaThread "Unconstrained build operations Thread 10" [_thread_blocked, id=12700, stack(0x0000005fd6c00000,0x0000005fd6d00000)] + 0x0000019298613800 JavaThread "Unconstrained build operations Thread 11" [_thread_blocked, id=13808, stack(0x0000005fd6d00000,0x0000005fd6e00000)] + 0x0000019298615000 JavaThread "Unconstrained build operations Thread 12" [_thread_blocked, id=15708, stack(0x0000005fd6e00000,0x0000005fd6f00000)] + 0x000001929860f800 JavaThread "Unconstrained build operations Thread 13" [_thread_blocked, id=19152, stack(0x0000005fd6f00000,0x0000005fd7000000)] + 0x0000019298610000 JavaThread "jar transforms Thread 8" [_thread_blocked, id=20020, stack(0x0000005fd7000000,0x0000005fd7100000)] + 0x00000192997d6000 JavaThread "jar transforms Thread 9" [_thread_blocked, id=20912, stack(0x0000005fd7100000,0x0000005fd7200000)] + 0x00000192997d5800 JavaThread "jar transforms Thread 10" [_thread_blocked, id=21964, stack(0x0000005fd7200000,0x0000005fd7300000)] + 0x00000192997d7000 JavaThread "jar transforms Thread 11" [_thread_blocked, id=15336, stack(0x0000005fd7300000,0x0000005fd7400000)] + 0x00000192997d7800 JavaThread "jar transforms Thread 12" [_thread_blocked, id=2444, stack(0x0000005fd7400000,0x0000005fd7500000)] + 0x00000192997d8800 JavaThread "jar transforms Thread 13" [_thread_blocked, id=17776, stack(0x0000005fd7500000,0x0000005fd7600000)] + 0x00000192997d3000 JavaThread "jar transforms Thread 14" [_thread_blocked, id=15948, stack(0x0000005fd7600000,0x0000005fd7700000)] + 0x00000192997d3800 JavaThread "jar transforms Thread 15" [_thread_blocked, id=16292, stack(0x0000005fd7700000,0x0000005fd7800000)] + 0x00000192997d4800 JavaThread "jar transforms Thread 16" [_thread_blocked, id=19756, stack(0x0000005fd7800000,0x0000005fd7900000)] + +Other Threads: + 0x00000192fffee000 VMThread "VM Thread" [stack: 0x0000005fd2600000,0x0000005fd2700000] [id=11768] + 0x0000019292c4d000 WatcherThread [stack: 0x0000005fd3100000,0x0000005fd3200000] [id=19244] + 0x00000192f6fc6000 GCTaskThread "GC Thread#0" [stack: 0x0000005fd2100000,0x0000005fd2200000] [id=23652] + 0x00000192944a5800 GCTaskThread "GC Thread#1" [stack: 0x0000005fd3400000,0x0000005fd3500000] [id=17332] + 0x0000019294623000 GCTaskThread "GC Thread#2" [stack: 0x0000005fd3500000,0x0000005fd3600000] [id=23236] + 0x0000019293d11000 GCTaskThread "GC Thread#3" [stack: 0x0000005fd3600000,0x0000005fd3700000] [id=20168] + 0x0000019293b14800 GCTaskThread "GC Thread#4" [stack: 0x0000005fd3700000,0x0000005fd3800000] [id=20036] + 0x0000019293baa000 GCTaskThread "GC Thread#5" [stack: 0x0000005fd3800000,0x0000005fd3900000] [id=16272] + 0x0000019294da3800 GCTaskThread "GC Thread#6" [stack: 0x0000005fd4800000,0x0000005fd4900000] [id=13324] + 0x0000019293ff2000 GCTaskThread "GC Thread#7" [stack: 0x0000005fd4900000,0x0000005fd4a00000] [id=18328] + 0x00000192954ca800 GCTaskThread "GC Thread#8" [stack: 0x0000005fd4a00000,0x0000005fd4b00000] [id=19528] + 0x0000019293d31000 GCTaskThread "GC Thread#9" [stack: 0x0000005fd4b00000,0x0000005fd4c00000] [id=16800] + 0x0000019293cf7000 GCTaskThread "GC Thread#10" [stack: 0x0000005fd4c00000,0x0000005fd4d00000] [id=9040] + 0x0000019294307800 GCTaskThread "GC Thread#11" [stack: 0x0000005fd4d00000,0x0000005fd4e00000] [id=4056] + 0x0000019295269800 GCTaskThread "GC Thread#12" [stack: 0x0000005fd4e00000,0x0000005fd4f00000] [id=4560] + 0x00000192f6fda800 ConcurrentGCThread "G1 Main Marker" [stack: 0x0000005fd2200000,0x0000005fd2300000] [id=24188] + 0x00000192f6fdb800 ConcurrentGCThread "G1 Conc#0" [stack: 0x0000005fd2300000,0x0000005fd2400000] [id=14368] + 0x0000019293ca6800 ConcurrentGCThread "G1 Conc#1" [stack: 0x0000005fd4f00000,0x0000005fd5000000] [id=22928] + 0x0000019294d72800 ConcurrentGCThread "G1 Conc#2" [stack: 0x0000005fd5000000,0x0000005fd5100000] [id=5240] + 0x00000192f701e000 ConcurrentGCThread "G1 Refine#0" [stack: 0x0000005fd2400000,0x0000005fd2500000] [id=22908] + 0x00000192ffee0800 ConcurrentGCThread "G1 Young RemSet Sampling" [stack: 0x0000005fd2500000,0x0000005fd2600000] [id=22636] + +Threads with active compile tasks: +C2 CompilerThread0 2916 4540 4 org.objectweb.asm.SymbolTable::addConstantUtf8Reference (101 bytes) +C2 CompilerThread1 2916 4485 4 org.gradle.internal.reflect.MethodSet::add (50 bytes) +C2 CompilerThread2 2916 4414 4 java.lang.invoke.MethodType::makeImpl (108 bytes) +C2 CompilerThread3 2916 4493 4 org.objectweb.asm.SymbolTable::addConstantMemberReference (147 bytes) + +VM state:not at safepoint (normal execution) + +VM Mutex/Monitor currently owned by a thread: None + +Heap address: 0x00000000e0000000, size: 512 MB, Compressed Oops mode: 32-bit +Narrow klass base: 0x0000000000000000, Narrow klass shift: 3 +Compressed class space size: 260046848 Address: 0x0000000100000000 + +Heap: + garbage-first heap total 262144K, used 61361K [0x00000000e0000000, 0x0000000100000000) + region size 1024K, 45 young (46080K), 12 survivors (12288K) + Metaspace used 47906K, capacity 49085K, committed 49280K, reserved 296960K + class space used 6242K, capacity 6705K, committed 6784K, reserved 253952K +Heap Regions: E=young(eden), S=young(survivor), O=old, HS=humongous(starts), HC=humongous(continues), CS=collection set, F=free, A=archive, TAMS=top-at-mark-start (previous, next) +| 0|0x00000000e0000000, 0x00000000e0100000, 0x00000000e0100000|100%| O| |TAMS 0x00000000e0100000, 0x00000000e0000000| Untracked +| 1|0x00000000e0100000, 0x00000000e0200000, 0x00000000e0200000|100%| O| |TAMS 0x00000000e0200000, 0x00000000e0100000| Untracked +| 2|0x00000000e0200000, 0x00000000e0300000, 0x00000000e0300000|100%| O| |TAMS 0x00000000e0300000, 0x00000000e0200000| Untracked +| 3|0x00000000e0300000, 0x00000000e0400000, 0x00000000e0400000|100%|HS| |TAMS 0x00000000e0400000, 0x00000000e0300000| Complete +| 4|0x00000000e0400000, 0x00000000e0500000, 0x00000000e0500000|100%|HC| |TAMS 0x00000000e0500000, 0x00000000e0400000| Complete +| 5|0x00000000e0500000, 0x00000000e0600000, 0x00000000e0600000|100%|HC| |TAMS 0x00000000e0600000, 0x00000000e0500000| Complete +| 6|0x00000000e0600000, 0x00000000e0700000, 0x00000000e0700000|100%| O| |TAMS 0x00000000e0700000, 0x00000000e0600000| Untracked +| 7|0x00000000e0700000, 0x00000000e0800000, 0x00000000e0800000|100%| O| |TAMS 0x00000000e0800000, 0x00000000e0700000| Untracked +| 8|0x00000000e0800000, 0x00000000e0900000, 0x00000000e0900000|100%| O| |TAMS 0x00000000e0900000, 0x00000000e0800000| Untracked +| 9|0x00000000e0900000, 0x00000000e0a00000, 0x00000000e0a00000|100%| O| |TAMS 0x00000000e0a00000, 0x00000000e0900000| Untracked +| 10|0x00000000e0a00000, 0x00000000e0b00000, 0x00000000e0b00000|100%| O| |TAMS 0x00000000e0b00000, 0x00000000e0a00000| Untracked +| 11|0x00000000e0b00000, 0x00000000e0c00000, 0x00000000e0c00000|100%| O| |TAMS 0x00000000e0c00000, 0x00000000e0b00000| Untracked +| 12|0x00000000e0c00000, 0x00000000e0d00000, 0x00000000e0d00000|100%| O| |TAMS 0x00000000e0d00000, 0x00000000e0c00000| Untracked +| 13|0x00000000e0d00000, 0x00000000e0e00000, 0x00000000e0e00000|100%| O| |TAMS 0x00000000e0e00000, 0x00000000e0d00000| Untracked +| 14|0x00000000e0e00000, 0x00000000e0f00000, 0x00000000e0f00000|100%| O| |TAMS 0x00000000e0f00000, 0x00000000e0e00000| Untracked +| 15|0x00000000e0f00000, 0x00000000e1000000, 0x00000000e1000000|100%| O| |TAMS 0x00000000e1000000, 0x00000000e0f00000| Untracked +| 16|0x00000000e1000000, 0x00000000e1032c00, 0x00000000e1100000| 19%| O| |TAMS 0x00000000e1032c00, 0x00000000e1000000| Untracked +| 17|0x00000000e1100000, 0x00000000e1100000, 0x00000000e1200000| 0%| F| |TAMS 0x00000000e1100000, 0x00000000e1100000| Untracked +| 18|0x00000000e1200000, 0x00000000e1200000, 0x00000000e1300000| 0%| F| |TAMS 0x00000000e1200000, 0x00000000e1200000| Untracked +| 19|0x00000000e1300000, 0x00000000e1300000, 0x00000000e1400000| 0%| F| |TAMS 0x00000000e1300000, 0x00000000e1300000| Untracked +| 20|0x00000000e1400000, 0x00000000e1400000, 0x00000000e1500000| 0%| F| |TAMS 0x00000000e1400000, 0x00000000e1400000| Untracked +| 21|0x00000000e1500000, 0x00000000e1500000, 0x00000000e1600000| 0%| F| |TAMS 0x00000000e1500000, 0x00000000e1500000| Untracked +| 22|0x00000000e1600000, 0x00000000e1600000, 0x00000000e1700000| 0%| F| |TAMS 0x00000000e1600000, 0x00000000e1600000| Untracked +| 23|0x00000000e1700000, 0x00000000e1700000, 0x00000000e1800000| 0%| F| |TAMS 0x00000000e1700000, 0x00000000e1700000| Untracked +| 24|0x00000000e1800000, 0x00000000e1800000, 0x00000000e1900000| 0%| F| |TAMS 0x00000000e1800000, 0x00000000e1800000| Untracked +| 25|0x00000000e1900000, 0x00000000e1900000, 0x00000000e1a00000| 0%| F| |TAMS 0x00000000e1900000, 0x00000000e1900000| Untracked +| 26|0x00000000e1a00000, 0x00000000e1a00000, 0x00000000e1b00000| 0%| F| |TAMS 0x00000000e1a00000, 0x00000000e1a00000| Untracked +| 27|0x00000000e1b00000, 0x00000000e1b00000, 0x00000000e1c00000| 0%| F| |TAMS 0x00000000e1b00000, 0x00000000e1b00000| Untracked +| 28|0x00000000e1c00000, 0x00000000e1c00000, 0x00000000e1d00000| 0%| F| |TAMS 0x00000000e1c00000, 0x00000000e1c00000| Untracked +| 29|0x00000000e1d00000, 0x00000000e1d00000, 0x00000000e1e00000| 0%| F| |TAMS 0x00000000e1d00000, 0x00000000e1d00000| Untracked +| 30|0x00000000e1e00000, 0x00000000e1e00000, 0x00000000e1f00000| 0%| F| |TAMS 0x00000000e1e00000, 0x00000000e1e00000| Untracked +| 31|0x00000000e1f00000, 0x00000000e1f00000, 0x00000000e2000000| 0%| F| |TAMS 0x00000000e1f00000, 0x00000000e1f00000| Untracked +| 32|0x00000000e2000000, 0x00000000e2000000, 0x00000000e2100000| 0%| F| |TAMS 0x00000000e2000000, 0x00000000e2000000| Untracked +| 33|0x00000000e2100000, 0x00000000e2100000, 0x00000000e2200000| 0%| F| |TAMS 0x00000000e2100000, 0x00000000e2100000| Untracked +| 34|0x00000000e2200000, 0x00000000e2200000, 0x00000000e2300000| 0%| F| |TAMS 0x00000000e2200000, 0x00000000e2200000| Untracked +| 35|0x00000000e2300000, 0x00000000e2300000, 0x00000000e2400000| 0%| F| |TAMS 0x00000000e2300000, 0x00000000e2300000| Untracked +| 36|0x00000000e2400000, 0x00000000e2400000, 0x00000000e2500000| 0%| F| |TAMS 0x00000000e2400000, 0x00000000e2400000| Untracked +| 37|0x00000000e2500000, 0x00000000e2500000, 0x00000000e2600000| 0%| F| |TAMS 0x00000000e2500000, 0x00000000e2500000| Untracked +| 38|0x00000000e2600000, 0x00000000e2600000, 0x00000000e2700000| 0%| F| |TAMS 0x00000000e2600000, 0x00000000e2600000| Untracked +| 39|0x00000000e2700000, 0x00000000e2700000, 0x00000000e2800000| 0%| F| |TAMS 0x00000000e2700000, 0x00000000e2700000| Untracked +| 40|0x00000000e2800000, 0x00000000e2800000, 0x00000000e2900000| 0%| F| |TAMS 0x00000000e2800000, 0x00000000e2800000| Untracked +| 41|0x00000000e2900000, 0x00000000e2900000, 0x00000000e2a00000| 0%| F| |TAMS 0x00000000e2900000, 0x00000000e2900000| Untracked +| 42|0x00000000e2a00000, 0x00000000e2a00000, 0x00000000e2b00000| 0%| F| |TAMS 0x00000000e2a00000, 0x00000000e2a00000| Untracked +| 43|0x00000000e2b00000, 0x00000000e2b00000, 0x00000000e2c00000| 0%| F| |TAMS 0x00000000e2b00000, 0x00000000e2b00000| Untracked +| 44|0x00000000e2c00000, 0x00000000e2c00000, 0x00000000e2d00000| 0%| F| |TAMS 0x00000000e2c00000, 0x00000000e2c00000| Untracked +| 45|0x00000000e2d00000, 0x00000000e2d00000, 0x00000000e2e00000| 0%| F| |TAMS 0x00000000e2d00000, 0x00000000e2d00000| Untracked +| 46|0x00000000e2e00000, 0x00000000e2e00000, 0x00000000e2f00000| 0%| F| |TAMS 0x00000000e2e00000, 0x00000000e2e00000| Untracked +| 47|0x00000000e2f00000, 0x00000000e2f00000, 0x00000000e3000000| 0%| F| |TAMS 0x00000000e2f00000, 0x00000000e2f00000| Untracked +| 48|0x00000000e3000000, 0x00000000e3000000, 0x00000000e3100000| 0%| F| |TAMS 0x00000000e3000000, 0x00000000e3000000| Untracked +| 49|0x00000000e3100000, 0x00000000e3100000, 0x00000000e3200000| 0%| F| |TAMS 0x00000000e3100000, 0x00000000e3100000| Untracked +| 50|0x00000000e3200000, 0x00000000e3200000, 0x00000000e3300000| 0%| F| |TAMS 0x00000000e3200000, 0x00000000e3200000| Untracked +| 51|0x00000000e3300000, 0x00000000e3300000, 0x00000000e3400000| 0%| F| |TAMS 0x00000000e3300000, 0x00000000e3300000| Untracked +| 52|0x00000000e3400000, 0x00000000e3400000, 0x00000000e3500000| 0%| F| |TAMS 0x00000000e3400000, 0x00000000e3400000| Untracked +| 53|0x00000000e3500000, 0x00000000e3500000, 0x00000000e3600000| 0%| F| |TAMS 0x00000000e3500000, 0x00000000e3500000| Untracked +| 54|0x00000000e3600000, 0x00000000e3600000, 0x00000000e3700000| 0%| F| |TAMS 0x00000000e3600000, 0x00000000e3600000| Untracked +| 55|0x00000000e3700000, 0x00000000e3700000, 0x00000000e3800000| 0%| F| |TAMS 0x00000000e3700000, 0x00000000e3700000| Untracked +| 56|0x00000000e3800000, 0x00000000e3800000, 0x00000000e3900000| 0%| F| |TAMS 0x00000000e3800000, 0x00000000e3800000| Untracked +| 57|0x00000000e3900000, 0x00000000e3900000, 0x00000000e3a00000| 0%| F| |TAMS 0x00000000e3900000, 0x00000000e3900000| Untracked +| 58|0x00000000e3a00000, 0x00000000e3a00000, 0x00000000e3b00000| 0%| F| |TAMS 0x00000000e3a00000, 0x00000000e3a00000| Untracked +| 59|0x00000000e3b00000, 0x00000000e3b00000, 0x00000000e3c00000| 0%| F| |TAMS 0x00000000e3b00000, 0x00000000e3b00000| Untracked +| 60|0x00000000e3c00000, 0x00000000e3c00000, 0x00000000e3d00000| 0%| F| |TAMS 0x00000000e3c00000, 0x00000000e3c00000| Untracked +| 61|0x00000000e3d00000, 0x00000000e3d00000, 0x00000000e3e00000| 0%| F| |TAMS 0x00000000e3d00000, 0x00000000e3d00000| Untracked +| 62|0x00000000e3e00000, 0x00000000e3e00000, 0x00000000e3f00000| 0%| F| |TAMS 0x00000000e3e00000, 0x00000000e3e00000| Untracked +| 63|0x00000000e3f00000, 0x00000000e3f00000, 0x00000000e4000000| 0%| F| |TAMS 0x00000000e3f00000, 0x00000000e3f00000| Untracked +| 64|0x00000000e4000000, 0x00000000e4000000, 0x00000000e4100000| 0%| F| |TAMS 0x00000000e4000000, 0x00000000e4000000| Untracked +| 65|0x00000000e4100000, 0x00000000e4100000, 0x00000000e4200000| 0%| F| |TAMS 0x00000000e4100000, 0x00000000e4100000| Untracked +| 66|0x00000000e4200000, 0x00000000e4200000, 0x00000000e4300000| 0%| F| |TAMS 0x00000000e4200000, 0x00000000e4200000| Untracked +| 67|0x00000000e4300000, 0x00000000e4300000, 0x00000000e4400000| 0%| F| |TAMS 0x00000000e4300000, 0x00000000e4300000| Untracked +| 68|0x00000000e4400000, 0x00000000e4400000, 0x00000000e4500000| 0%| F| |TAMS 0x00000000e4400000, 0x00000000e4400000| Untracked +| 69|0x00000000e4500000, 0x00000000e4500000, 0x00000000e4600000| 0%| F| |TAMS 0x00000000e4500000, 0x00000000e4500000| Untracked +| 70|0x00000000e4600000, 0x00000000e4600000, 0x00000000e4700000| 0%| F| |TAMS 0x00000000e4600000, 0x00000000e4600000| Untracked +| 71|0x00000000e4700000, 0x00000000e4700000, 0x00000000e4800000| 0%| F| |TAMS 0x00000000e4700000, 0x00000000e4700000| Untracked +| 72|0x00000000e4800000, 0x00000000e4800000, 0x00000000e4900000| 0%| F| |TAMS 0x00000000e4800000, 0x00000000e4800000| Untracked +| 73|0x00000000e4900000, 0x00000000e4900000, 0x00000000e4a00000| 0%| F| |TAMS 0x00000000e4900000, 0x00000000e4900000| Untracked +| 74|0x00000000e4a00000, 0x00000000e4a00000, 0x00000000e4b00000| 0%| F| |TAMS 0x00000000e4a00000, 0x00000000e4a00000| Untracked +| 75|0x00000000e4b00000, 0x00000000e4b00000, 0x00000000e4c00000| 0%| F| |TAMS 0x00000000e4b00000, 0x00000000e4b00000| Untracked +| 76|0x00000000e4c00000, 0x00000000e4c00000, 0x00000000e4d00000| 0%| F| |TAMS 0x00000000e4c00000, 0x00000000e4c00000| Untracked +| 77|0x00000000e4d00000, 0x00000000e4d00000, 0x00000000e4e00000| 0%| F| |TAMS 0x00000000e4d00000, 0x00000000e4d00000| Untracked +| 78|0x00000000e4e00000, 0x00000000e4e00000, 0x00000000e4f00000| 0%| F| |TAMS 0x00000000e4e00000, 0x00000000e4e00000| Untracked +| 79|0x00000000e4f00000, 0x00000000e4f00000, 0x00000000e5000000| 0%| F| |TAMS 0x00000000e4f00000, 0x00000000e4f00000| Untracked +| 80|0x00000000e5000000, 0x00000000e5000000, 0x00000000e5100000| 0%| F| |TAMS 0x00000000e5000000, 0x00000000e5000000| Untracked +| 81|0x00000000e5100000, 0x00000000e5100000, 0x00000000e5200000| 0%| F| |TAMS 0x00000000e5100000, 0x00000000e5100000| Untracked +| 82|0x00000000e5200000, 0x00000000e5200000, 0x00000000e5300000| 0%| F| |TAMS 0x00000000e5200000, 0x00000000e5200000| Untracked +| 83|0x00000000e5300000, 0x00000000e5300000, 0x00000000e5400000| 0%| F| |TAMS 0x00000000e5300000, 0x00000000e5300000| Untracked +| 84|0x00000000e5400000, 0x00000000e5400000, 0x00000000e5500000| 0%| F| |TAMS 0x00000000e5400000, 0x00000000e5400000| Untracked +| 85|0x00000000e5500000, 0x00000000e5500000, 0x00000000e5600000| 0%| F| |TAMS 0x00000000e5500000, 0x00000000e5500000| Untracked +| 86|0x00000000e5600000, 0x00000000e5600000, 0x00000000e5700000| 0%| F| |TAMS 0x00000000e5600000, 0x00000000e5600000| Untracked +| 87|0x00000000e5700000, 0x00000000e5700000, 0x00000000e5800000| 0%| F| |TAMS 0x00000000e5700000, 0x00000000e5700000| Untracked +| 88|0x00000000e5800000, 0x00000000e5800000, 0x00000000e5900000| 0%| F| |TAMS 0x00000000e5800000, 0x00000000e5800000| Untracked +| 89|0x00000000e5900000, 0x00000000e5900000, 0x00000000e5a00000| 0%| F| |TAMS 0x00000000e5900000, 0x00000000e5900000| Untracked +| 90|0x00000000e5a00000, 0x00000000e5a00000, 0x00000000e5b00000| 0%| F| |TAMS 0x00000000e5a00000, 0x00000000e5a00000| Untracked +| 91|0x00000000e5b00000, 0x00000000e5b00000, 0x00000000e5c00000| 0%| F| |TAMS 0x00000000e5b00000, 0x00000000e5b00000| Untracked +| 92|0x00000000e5c00000, 0x00000000e5c00000, 0x00000000e5d00000| 0%| F| |TAMS 0x00000000e5c00000, 0x00000000e5c00000| Untracked +| 93|0x00000000e5d00000, 0x00000000e5d00000, 0x00000000e5e00000| 0%| F| |TAMS 0x00000000e5d00000, 0x00000000e5d00000| Untracked +| 94|0x00000000e5e00000, 0x00000000e5e00000, 0x00000000e5f00000| 0%| F| |TAMS 0x00000000e5e00000, 0x00000000e5e00000| Untracked +| 95|0x00000000e5f00000, 0x00000000e5f00000, 0x00000000e6000000| 0%| F| |TAMS 0x00000000e5f00000, 0x00000000e5f00000| Untracked +| 96|0x00000000e6000000, 0x00000000e6000000, 0x00000000e6100000| 0%| F| |TAMS 0x00000000e6000000, 0x00000000e6000000| Untracked +| 97|0x00000000e6100000, 0x00000000e6100000, 0x00000000e6200000| 0%| F| |TAMS 0x00000000e6100000, 0x00000000e6100000| Untracked +| 98|0x00000000e6200000, 0x00000000e6200000, 0x00000000e6300000| 0%| F| |TAMS 0x00000000e6200000, 0x00000000e6200000| Untracked +| 99|0x00000000e6300000, 0x00000000e6300000, 0x00000000e6400000| 0%| F| |TAMS 0x00000000e6300000, 0x00000000e6300000| Untracked +| 100|0x00000000e6400000, 0x00000000e6400000, 0x00000000e6500000| 0%| F| |TAMS 0x00000000e6400000, 0x00000000e6400000| Untracked +| 101|0x00000000e6500000, 0x00000000e6500000, 0x00000000e6600000| 0%| F| |TAMS 0x00000000e6500000, 0x00000000e6500000| Untracked +| 102|0x00000000e6600000, 0x00000000e6600000, 0x00000000e6700000| 0%| F| |TAMS 0x00000000e6600000, 0x00000000e6600000| Untracked +| 103|0x00000000e6700000, 0x00000000e6700000, 0x00000000e6800000| 0%| F| |TAMS 0x00000000e6700000, 0x00000000e6700000| Untracked +| 104|0x00000000e6800000, 0x00000000e6800000, 0x00000000e6900000| 0%| F| |TAMS 0x00000000e6800000, 0x00000000e6800000| Untracked +| 105|0x00000000e6900000, 0x00000000e6900000, 0x00000000e6a00000| 0%| F| |TAMS 0x00000000e6900000, 0x00000000e6900000| Untracked +| 106|0x00000000e6a00000, 0x00000000e6a00000, 0x00000000e6b00000| 0%| F| |TAMS 0x00000000e6a00000, 0x00000000e6a00000| Untracked +| 107|0x00000000e6b00000, 0x00000000e6b00000, 0x00000000e6c00000| 0%| F| |TAMS 0x00000000e6b00000, 0x00000000e6b00000| Untracked +| 108|0x00000000e6c00000, 0x00000000e6c00000, 0x00000000e6d00000| 0%| F| |TAMS 0x00000000e6c00000, 0x00000000e6c00000| Untracked +| 109|0x00000000e6d00000, 0x00000000e6d00000, 0x00000000e6e00000| 0%| F| |TAMS 0x00000000e6d00000, 0x00000000e6d00000| Untracked +| 110|0x00000000e6e00000, 0x00000000e6e00000, 0x00000000e6f00000| 0%| F| |TAMS 0x00000000e6e00000, 0x00000000e6e00000| Untracked +| 111|0x00000000e6f00000, 0x00000000e6f00000, 0x00000000e7000000| 0%| F| |TAMS 0x00000000e6f00000, 0x00000000e6f00000| Untracked +| 112|0x00000000e7000000, 0x00000000e7000000, 0x00000000e7100000| 0%| F| |TAMS 0x00000000e7000000, 0x00000000e7000000| Untracked +| 113|0x00000000e7100000, 0x00000000e7100000, 0x00000000e7200000| 0%| F| |TAMS 0x00000000e7100000, 0x00000000e7100000| Untracked +| 114|0x00000000e7200000, 0x00000000e7200000, 0x00000000e7300000| 0%| F| |TAMS 0x00000000e7200000, 0x00000000e7200000| Untracked +| 115|0x00000000e7300000, 0x00000000e7300000, 0x00000000e7400000| 0%| F| |TAMS 0x00000000e7300000, 0x00000000e7300000| Untracked +| 116|0x00000000e7400000, 0x00000000e7400000, 0x00000000e7500000| 0%| F| |TAMS 0x00000000e7400000, 0x00000000e7400000| Untracked +| 117|0x00000000e7500000, 0x00000000e7500000, 0x00000000e7600000| 0%| F| |TAMS 0x00000000e7500000, 0x00000000e7500000| Untracked +| 118|0x00000000e7600000, 0x00000000e7600000, 0x00000000e7700000| 0%| F| |TAMS 0x00000000e7600000, 0x00000000e7600000| Untracked +| 119|0x00000000e7700000, 0x00000000e7700000, 0x00000000e7800000| 0%| F| |TAMS 0x00000000e7700000, 0x00000000e7700000| Untracked +| 120|0x00000000e7800000, 0x00000000e7800000, 0x00000000e7900000| 0%| F| |TAMS 0x00000000e7800000, 0x00000000e7800000| Untracked +| 121|0x00000000e7900000, 0x00000000e79b9938, 0x00000000e7a00000| 72%| S|CS|TAMS 0x00000000e7900000, 0x00000000e7900000| Complete +| 122|0x00000000e7a00000, 0x00000000e7b00000, 0x00000000e7b00000|100%| S|CS|TAMS 0x00000000e7a00000, 0x00000000e7a00000| Complete +| 123|0x00000000e7b00000, 0x00000000e7c00000, 0x00000000e7c00000|100%| S|CS|TAMS 0x00000000e7b00000, 0x00000000e7b00000| Complete +| 124|0x00000000e7c00000, 0x00000000e7d00000, 0x00000000e7d00000|100%| S|CS|TAMS 0x00000000e7c00000, 0x00000000e7c00000| Complete +| 125|0x00000000e7d00000, 0x00000000e7e00000, 0x00000000e7e00000|100%| S|CS|TAMS 0x00000000e7d00000, 0x00000000e7d00000| Complete +| 126|0x00000000e7e00000, 0x00000000e7f00000, 0x00000000e7f00000|100%| S|CS|TAMS 0x00000000e7e00000, 0x00000000e7e00000| Complete +| 127|0x00000000e7f00000, 0x00000000e8000000, 0x00000000e8000000|100%| S|CS|TAMS 0x00000000e7f00000, 0x00000000e7f00000| Complete +| 128|0x00000000e8000000, 0x00000000e8100000, 0x00000000e8100000|100%| S|CS|TAMS 0x00000000e8000000, 0x00000000e8000000| Complete +| 129|0x00000000e8100000, 0x00000000e8200000, 0x00000000e8200000|100%| S|CS|TAMS 0x00000000e8100000, 0x00000000e8100000| Complete +| 130|0x00000000e8200000, 0x00000000e8300000, 0x00000000e8300000|100%| S|CS|TAMS 0x00000000e8200000, 0x00000000e8200000| Complete +| 131|0x00000000e8300000, 0x00000000e8400000, 0x00000000e8400000|100%| S|CS|TAMS 0x00000000e8300000, 0x00000000e8300000| Complete +| 132|0x00000000e8400000, 0x00000000e8500000, 0x00000000e8500000|100%| S|CS|TAMS 0x00000000e8400000, 0x00000000e8400000| Complete +| 133|0x00000000e8500000, 0x00000000e8500000, 0x00000000e8600000| 0%| F| |TAMS 0x00000000e8500000, 0x00000000e8500000| Untracked +| 134|0x00000000e8600000, 0x00000000e8600000, 0x00000000e8700000| 0%| F| |TAMS 0x00000000e8600000, 0x00000000e8600000| Untracked +| 135|0x00000000e8700000, 0x00000000e8700000, 0x00000000e8800000| 0%| F| |TAMS 0x00000000e8700000, 0x00000000e8700000| Untracked +| 136|0x00000000e8800000, 0x00000000e8800000, 0x00000000e8900000| 0%| F| |TAMS 0x00000000e8800000, 0x00000000e8800000| Untracked +| 137|0x00000000e8900000, 0x00000000e8900000, 0x00000000e8a00000| 0%| F| |TAMS 0x00000000e8900000, 0x00000000e8900000| Untracked +| 138|0x00000000e8a00000, 0x00000000e8a00000, 0x00000000e8b00000| 0%| F| |TAMS 0x00000000e8a00000, 0x00000000e8a00000| Untracked +| 139|0x00000000e8b00000, 0x00000000e8b00000, 0x00000000e8c00000| 0%| F| |TAMS 0x00000000e8b00000, 0x00000000e8b00000| Untracked +| 140|0x00000000e8c00000, 0x00000000e8c00000, 0x00000000e8d00000| 0%| F| |TAMS 0x00000000e8c00000, 0x00000000e8c00000| Untracked +| 141|0x00000000e8d00000, 0x00000000e8d00000, 0x00000000e8e00000| 0%| F| |TAMS 0x00000000e8d00000, 0x00000000e8d00000| Untracked +| 142|0x00000000e8e00000, 0x00000000e8e00000, 0x00000000e8f00000| 0%| F| |TAMS 0x00000000e8e00000, 0x00000000e8e00000| Untracked +| 143|0x00000000e8f00000, 0x00000000e8f00000, 0x00000000e9000000| 0%| F| |TAMS 0x00000000e8f00000, 0x00000000e8f00000| Untracked +| 144|0x00000000e9000000, 0x00000000e9000000, 0x00000000e9100000| 0%| F| |TAMS 0x00000000e9000000, 0x00000000e9000000| Untracked +| 145|0x00000000e9100000, 0x00000000e9100000, 0x00000000e9200000| 0%| F| |TAMS 0x00000000e9100000, 0x00000000e9100000| Untracked +| 146|0x00000000e9200000, 0x00000000e9200000, 0x00000000e9300000| 0%| F| |TAMS 0x00000000e9200000, 0x00000000e9200000| Untracked +| 147|0x00000000e9300000, 0x00000000e9300000, 0x00000000e9400000| 0%| F| |TAMS 0x00000000e9300000, 0x00000000e9300000| Untracked +| 148|0x00000000e9400000, 0x00000000e9400000, 0x00000000e9500000| 0%| F| |TAMS 0x00000000e9400000, 0x00000000e9400000| Untracked +| 149|0x00000000e9500000, 0x00000000e9500000, 0x00000000e9600000| 0%| F| |TAMS 0x00000000e9500000, 0x00000000e9500000| Untracked +| 150|0x00000000e9600000, 0x00000000e9600000, 0x00000000e9700000| 0%| F| |TAMS 0x00000000e9600000, 0x00000000e9600000| Untracked +| 151|0x00000000e9700000, 0x00000000e9700000, 0x00000000e9800000| 0%| F| |TAMS 0x00000000e9700000, 0x00000000e9700000| Untracked +| 152|0x00000000e9800000, 0x00000000e9800000, 0x00000000e9900000| 0%| F| |TAMS 0x00000000e9800000, 0x00000000e9800000| Untracked +| 153|0x00000000e9900000, 0x00000000e9900000, 0x00000000e9a00000| 0%| F| |TAMS 0x00000000e9900000, 0x00000000e9900000| Untracked +| 154|0x00000000e9a00000, 0x00000000e9a00000, 0x00000000e9b00000| 0%| F| |TAMS 0x00000000e9a00000, 0x00000000e9a00000| Untracked +| 155|0x00000000e9b00000, 0x00000000e9b00000, 0x00000000e9c00000| 0%| F| |TAMS 0x00000000e9b00000, 0x00000000e9b00000| Untracked +| 156|0x00000000e9c00000, 0x00000000e9c00000, 0x00000000e9d00000| 0%| F| |TAMS 0x00000000e9c00000, 0x00000000e9c00000| Untracked +| 157|0x00000000e9d00000, 0x00000000e9d00000, 0x00000000e9e00000| 0%| F| |TAMS 0x00000000e9d00000, 0x00000000e9d00000| Untracked +| 158|0x00000000e9e00000, 0x00000000e9e00000, 0x00000000e9f00000| 0%| F| |TAMS 0x00000000e9e00000, 0x00000000e9e00000| Untracked +| 159|0x00000000e9f00000, 0x00000000e9f00000, 0x00000000ea000000| 0%| F| |TAMS 0x00000000e9f00000, 0x00000000e9f00000| Untracked +| 160|0x00000000ea000000, 0x00000000ea000000, 0x00000000ea100000| 0%| F| |TAMS 0x00000000ea000000, 0x00000000ea000000| Untracked +| 161|0x00000000ea100000, 0x00000000ea100000, 0x00000000ea200000| 0%| F| |TAMS 0x00000000ea100000, 0x00000000ea100000| Untracked +| 162|0x00000000ea200000, 0x00000000ea200000, 0x00000000ea300000| 0%| F| |TAMS 0x00000000ea200000, 0x00000000ea200000| Untracked +| 163|0x00000000ea300000, 0x00000000ea300000, 0x00000000ea400000| 0%| F| |TAMS 0x00000000ea300000, 0x00000000ea300000| Untracked +| 164|0x00000000ea400000, 0x00000000ea400000, 0x00000000ea500000| 0%| F| |TAMS 0x00000000ea400000, 0x00000000ea400000| Untracked +| 165|0x00000000ea500000, 0x00000000ea500000, 0x00000000ea600000| 0%| F| |TAMS 0x00000000ea500000, 0x00000000ea500000| Untracked +| 166|0x00000000ea600000, 0x00000000ea600000, 0x00000000ea700000| 0%| F| |TAMS 0x00000000ea600000, 0x00000000ea600000| Untracked +| 167|0x00000000ea700000, 0x00000000ea700000, 0x00000000ea800000| 0%| F| |TAMS 0x00000000ea700000, 0x00000000ea700000| Untracked +| 168|0x00000000ea800000, 0x00000000ea800000, 0x00000000ea900000| 0%| F| |TAMS 0x00000000ea800000, 0x00000000ea800000| Untracked +| 169|0x00000000ea900000, 0x00000000ea900000, 0x00000000eaa00000| 0%| F| |TAMS 0x00000000ea900000, 0x00000000ea900000| Untracked +| 170|0x00000000eaa00000, 0x00000000eaa00000, 0x00000000eab00000| 0%| F| |TAMS 0x00000000eaa00000, 0x00000000eaa00000| Untracked +| 171|0x00000000eab00000, 0x00000000eab00000, 0x00000000eac00000| 0%| F| |TAMS 0x00000000eab00000, 0x00000000eab00000| Untracked +| 172|0x00000000eac00000, 0x00000000eac00000, 0x00000000ead00000| 0%| F| |TAMS 0x00000000eac00000, 0x00000000eac00000| Untracked +| 173|0x00000000ead00000, 0x00000000ead00000, 0x00000000eae00000| 0%| F| |TAMS 0x00000000ead00000, 0x00000000ead00000| Untracked +| 174|0x00000000eae00000, 0x00000000eae00000, 0x00000000eaf00000| 0%| F| |TAMS 0x00000000eae00000, 0x00000000eae00000| Untracked +| 175|0x00000000eaf00000, 0x00000000eaf00000, 0x00000000eb000000| 0%| F| |TAMS 0x00000000eaf00000, 0x00000000eaf00000| Untracked +| 176|0x00000000eb000000, 0x00000000eb000000, 0x00000000eb100000| 0%| F| |TAMS 0x00000000eb000000, 0x00000000eb000000| Untracked +| 177|0x00000000eb100000, 0x00000000eb100000, 0x00000000eb200000| 0%| F| |TAMS 0x00000000eb100000, 0x00000000eb100000| Untracked +| 178|0x00000000eb200000, 0x00000000eb200000, 0x00000000eb300000| 0%| F| |TAMS 0x00000000eb200000, 0x00000000eb200000| Untracked +| 179|0x00000000eb300000, 0x00000000eb300000, 0x00000000eb400000| 0%| F| |TAMS 0x00000000eb300000, 0x00000000eb300000| Untracked +| 180|0x00000000eb400000, 0x00000000eb400000, 0x00000000eb500000| 0%| F| |TAMS 0x00000000eb400000, 0x00000000eb400000| Untracked +| 181|0x00000000eb500000, 0x00000000eb500000, 0x00000000eb600000| 0%| F| |TAMS 0x00000000eb500000, 0x00000000eb500000| Untracked +| 182|0x00000000eb600000, 0x00000000eb600000, 0x00000000eb700000| 0%| F| |TAMS 0x00000000eb600000, 0x00000000eb600000| Untracked +| 183|0x00000000eb700000, 0x00000000eb700000, 0x00000000eb800000| 0%| F| |TAMS 0x00000000eb700000, 0x00000000eb700000| Untracked +| 184|0x00000000eb800000, 0x00000000eb800000, 0x00000000eb900000| 0%| F| |TAMS 0x00000000eb800000, 0x00000000eb800000| Untracked +| 185|0x00000000eb900000, 0x00000000eb900000, 0x00000000eba00000| 0%| F| |TAMS 0x00000000eb900000, 0x00000000eb900000| Untracked +| 186|0x00000000eba00000, 0x00000000eba00000, 0x00000000ebb00000| 0%| F| |TAMS 0x00000000eba00000, 0x00000000eba00000| Untracked +| 187|0x00000000ebb00000, 0x00000000ebb00000, 0x00000000ebc00000| 0%| F| |TAMS 0x00000000ebb00000, 0x00000000ebb00000| Untracked +| 188|0x00000000ebc00000, 0x00000000ebc00000, 0x00000000ebd00000| 0%| F| |TAMS 0x00000000ebc00000, 0x00000000ebc00000| Untracked +| 189|0x00000000ebd00000, 0x00000000ebd00000, 0x00000000ebe00000| 0%| F| |TAMS 0x00000000ebd00000, 0x00000000ebd00000| Untracked +| 190|0x00000000ebe00000, 0x00000000ebe00000, 0x00000000ebf00000| 0%| F| |TAMS 0x00000000ebe00000, 0x00000000ebe00000| Untracked +| 191|0x00000000ebf00000, 0x00000000ebf00000, 0x00000000ec000000| 0%| F| |TAMS 0x00000000ebf00000, 0x00000000ebf00000| Untracked +| 192|0x00000000ec000000, 0x00000000ec000000, 0x00000000ec100000| 0%| F| |TAMS 0x00000000ec000000, 0x00000000ec000000| Untracked +| 193|0x00000000ec100000, 0x00000000ec100000, 0x00000000ec200000| 0%| F| |TAMS 0x00000000ec100000, 0x00000000ec100000| Untracked +| 194|0x00000000ec200000, 0x00000000ec200000, 0x00000000ec300000| 0%| F| |TAMS 0x00000000ec200000, 0x00000000ec200000| Untracked +| 195|0x00000000ec300000, 0x00000000ec300000, 0x00000000ec400000| 0%| F| |TAMS 0x00000000ec300000, 0x00000000ec300000| Untracked +| 196|0x00000000ec400000, 0x00000000ec400000, 0x00000000ec500000| 0%| F| |TAMS 0x00000000ec400000, 0x00000000ec400000| Untracked +| 197|0x00000000ec500000, 0x00000000ec500000, 0x00000000ec600000| 0%| F| |TAMS 0x00000000ec500000, 0x00000000ec500000| Untracked +| 198|0x00000000ec600000, 0x00000000ec600000, 0x00000000ec700000| 0%| F| |TAMS 0x00000000ec600000, 0x00000000ec600000| Untracked +| 199|0x00000000ec700000, 0x00000000ec700000, 0x00000000ec800000| 0%| F| |TAMS 0x00000000ec700000, 0x00000000ec700000| Untracked +| 200|0x00000000ec800000, 0x00000000ec800000, 0x00000000ec900000| 0%| F| |TAMS 0x00000000ec800000, 0x00000000ec800000| Untracked +| 201|0x00000000ec900000, 0x00000000ec900000, 0x00000000eca00000| 0%| F| |TAMS 0x00000000ec900000, 0x00000000ec900000| Untracked +| 202|0x00000000eca00000, 0x00000000eca00000, 0x00000000ecb00000| 0%| F| |TAMS 0x00000000eca00000, 0x00000000eca00000| Untracked +| 203|0x00000000ecb00000, 0x00000000ecb00000, 0x00000000ecc00000| 0%| F| |TAMS 0x00000000ecb00000, 0x00000000ecb00000| Untracked +| 204|0x00000000ecc00000, 0x00000000ecc00000, 0x00000000ecd00000| 0%| F| |TAMS 0x00000000ecc00000, 0x00000000ecc00000| Untracked +| 205|0x00000000ecd00000, 0x00000000ecd00000, 0x00000000ece00000| 0%| F| |TAMS 0x00000000ecd00000, 0x00000000ecd00000| Untracked +| 206|0x00000000ece00000, 0x00000000ece00000, 0x00000000ecf00000| 0%| F| |TAMS 0x00000000ece00000, 0x00000000ece00000| Untracked +| 207|0x00000000ecf00000, 0x00000000ecf00000, 0x00000000ed000000| 0%| F| |TAMS 0x00000000ecf00000, 0x00000000ecf00000| Untracked +| 208|0x00000000ed000000, 0x00000000ed000000, 0x00000000ed100000| 0%| F| |TAMS 0x00000000ed000000, 0x00000000ed000000| Untracked +| 209|0x00000000ed100000, 0x00000000ed100000, 0x00000000ed200000| 0%| F| |TAMS 0x00000000ed100000, 0x00000000ed100000| Untracked +| 210|0x00000000ed200000, 0x00000000ed200000, 0x00000000ed300000| 0%| F| |TAMS 0x00000000ed200000, 0x00000000ed200000| Untracked +| 211|0x00000000ed300000, 0x00000000ed300000, 0x00000000ed400000| 0%| F| |TAMS 0x00000000ed300000, 0x00000000ed300000| Untracked +| 212|0x00000000ed400000, 0x00000000ed400000, 0x00000000ed500000| 0%| F| |TAMS 0x00000000ed400000, 0x00000000ed400000| Untracked +| 213|0x00000000ed500000, 0x00000000ed500000, 0x00000000ed600000| 0%| F| |TAMS 0x00000000ed500000, 0x00000000ed500000| Untracked +| 214|0x00000000ed600000, 0x00000000ed600000, 0x00000000ed700000| 0%| F| |TAMS 0x00000000ed600000, 0x00000000ed600000| Untracked +| 215|0x00000000ed700000, 0x00000000ed700000, 0x00000000ed800000| 0%| F| |TAMS 0x00000000ed700000, 0x00000000ed700000| Untracked +| 216|0x00000000ed800000, 0x00000000ed800000, 0x00000000ed900000| 0%| F| |TAMS 0x00000000ed800000, 0x00000000ed800000| Untracked +| 217|0x00000000ed900000, 0x00000000ed900000, 0x00000000eda00000| 0%| F| |TAMS 0x00000000ed900000, 0x00000000ed900000| Untracked +| 218|0x00000000eda00000, 0x00000000eda00000, 0x00000000edb00000| 0%| F| |TAMS 0x00000000eda00000, 0x00000000eda00000| Untracked +| 219|0x00000000edb00000, 0x00000000edb00000, 0x00000000edc00000| 0%| F| |TAMS 0x00000000edb00000, 0x00000000edb00000| Untracked +| 220|0x00000000edc00000, 0x00000000edc00000, 0x00000000edd00000| 0%| F| |TAMS 0x00000000edc00000, 0x00000000edc00000| Untracked +| 221|0x00000000edd00000, 0x00000000edd00000, 0x00000000ede00000| 0%| F| |TAMS 0x00000000edd00000, 0x00000000edd00000| Untracked +| 222|0x00000000ede00000, 0x00000000ede80800, 0x00000000edf00000| 50%| E| |TAMS 0x00000000ede00000, 0x00000000ede00000| Complete +| 223|0x00000000edf00000, 0x00000000ee000000, 0x00000000ee000000|100%| E|CS|TAMS 0x00000000edf00000, 0x00000000edf00000| Complete +| 224|0x00000000ee000000, 0x00000000ee100000, 0x00000000ee100000|100%| E|CS|TAMS 0x00000000ee000000, 0x00000000ee000000| Complete +| 225|0x00000000ee100000, 0x00000000ee200000, 0x00000000ee200000|100%| E|CS|TAMS 0x00000000ee100000, 0x00000000ee100000| Complete +| 226|0x00000000ee200000, 0x00000000ee300000, 0x00000000ee300000|100%| E|CS|TAMS 0x00000000ee200000, 0x00000000ee200000| Complete +| 227|0x00000000ee300000, 0x00000000ee400000, 0x00000000ee400000|100%| E|CS|TAMS 0x00000000ee300000, 0x00000000ee300000| Complete +| 228|0x00000000ee400000, 0x00000000ee500000, 0x00000000ee500000|100%| E|CS|TAMS 0x00000000ee400000, 0x00000000ee400000| Complete +| 229|0x00000000ee500000, 0x00000000ee600000, 0x00000000ee600000|100%| E|CS|TAMS 0x00000000ee500000, 0x00000000ee500000| Complete +| 230|0x00000000ee600000, 0x00000000ee700000, 0x00000000ee700000|100%| E|CS|TAMS 0x00000000ee600000, 0x00000000ee600000| Complete +| 231|0x00000000ee700000, 0x00000000ee800000, 0x00000000ee800000|100%| E|CS|TAMS 0x00000000ee700000, 0x00000000ee700000| Complete +| 232|0x00000000ee800000, 0x00000000ee900000, 0x00000000ee900000|100%| E|CS|TAMS 0x00000000ee800000, 0x00000000ee800000| Complete +| 233|0x00000000ee900000, 0x00000000eea00000, 0x00000000eea00000|100%| E|CS|TAMS 0x00000000ee900000, 0x00000000ee900000| Complete +| 234|0x00000000eea00000, 0x00000000eeb00000, 0x00000000eeb00000|100%| E|CS|TAMS 0x00000000eea00000, 0x00000000eea00000| Complete +| 235|0x00000000eeb00000, 0x00000000eec00000, 0x00000000eec00000|100%| E|CS|TAMS 0x00000000eeb00000, 0x00000000eeb00000| Complete +| 236|0x00000000eec00000, 0x00000000eed00000, 0x00000000eed00000|100%| E|CS|TAMS 0x00000000eec00000, 0x00000000eec00000| Complete +| 237|0x00000000eed00000, 0x00000000eee00000, 0x00000000eee00000|100%| E|CS|TAMS 0x00000000eed00000, 0x00000000eed00000| Complete +| 238|0x00000000eee00000, 0x00000000eef00000, 0x00000000eef00000|100%| E|CS|TAMS 0x00000000eee00000, 0x00000000eee00000| Complete +| 239|0x00000000eef00000, 0x00000000ef000000, 0x00000000ef000000|100%| E|CS|TAMS 0x00000000eef00000, 0x00000000eef00000| Complete +| 240|0x00000000ef000000, 0x00000000ef100000, 0x00000000ef100000|100%| E|CS|TAMS 0x00000000ef000000, 0x00000000ef000000| Complete +| 241|0x00000000ef100000, 0x00000000ef200000, 0x00000000ef200000|100%| E|CS|TAMS 0x00000000ef100000, 0x00000000ef100000| Complete +| 242|0x00000000ef200000, 0x00000000ef300000, 0x00000000ef300000|100%| E|CS|TAMS 0x00000000ef200000, 0x00000000ef200000| Complete +| 243|0x00000000ef300000, 0x00000000ef400000, 0x00000000ef400000|100%| E|CS|TAMS 0x00000000ef300000, 0x00000000ef300000| Complete +| 244|0x00000000ef400000, 0x00000000ef500000, 0x00000000ef500000|100%| E|CS|TAMS 0x00000000ef400000, 0x00000000ef400000| Complete +| 245|0x00000000ef500000, 0x00000000ef600000, 0x00000000ef600000|100%| E|CS|TAMS 0x00000000ef500000, 0x00000000ef500000| Complete +| 246|0x00000000ef600000, 0x00000000ef700000, 0x00000000ef700000|100%| E|CS|TAMS 0x00000000ef600000, 0x00000000ef600000| Complete +| 247|0x00000000ef700000, 0x00000000ef800000, 0x00000000ef800000|100%| E|CS|TAMS 0x00000000ef700000, 0x00000000ef700000| Complete +| 248|0x00000000ef800000, 0x00000000ef900000, 0x00000000ef900000|100%| E|CS|TAMS 0x00000000ef800000, 0x00000000ef800000| Complete +| 249|0x00000000ef900000, 0x00000000efa00000, 0x00000000efa00000|100%| E|CS|TAMS 0x00000000ef900000, 0x00000000ef900000| Complete +| 250|0x00000000efa00000, 0x00000000efb00000, 0x00000000efb00000|100%| E|CS|TAMS 0x00000000efa00000, 0x00000000efa00000| Complete +| 251|0x00000000efb00000, 0x00000000efc00000, 0x00000000efc00000|100%| E|CS|TAMS 0x00000000efb00000, 0x00000000efb00000| Complete +| 252|0x00000000efc00000, 0x00000000efd00000, 0x00000000efd00000|100%| E|CS|TAMS 0x00000000efc00000, 0x00000000efc00000| Complete +| 253|0x00000000efd00000, 0x00000000efe00000, 0x00000000efe00000|100%| E|CS|TAMS 0x00000000efd00000, 0x00000000efd00000| Complete +| 254|0x00000000efe00000, 0x00000000eff00000, 0x00000000eff00000|100%| E|CS|TAMS 0x00000000efe00000, 0x00000000efe00000| Complete +| 255|0x00000000eff00000, 0x00000000f0000000, 0x00000000f0000000|100%| E|CS|TAMS 0x00000000eff00000, 0x00000000eff00000| Complete + +Card table byte_map: [0x00000192fefb0000,0x00000192ff0b0000] _byte_map_base: 0x00000192fe8b0000 + +Marking Bits (Prev, Next): (CMBitMap*) 0x00000192f6fd76e8, (CMBitMap*) 0x00000192f6fd7720 + Prev Bits: [0x00000192ff1b0000, 0x00000192ff9b0000) + Next Bits: [0x000001928f000000, 0x000001928f800000) + +Polling page: 0x00000192f5fc0000 + +Metaspace: + +Usage: + Non-class: 41.51 MB capacity, 40.72 MB ( 98%) used, 684.21 KB ( 2%) free+waste, 128.13 KB ( <1%) overhead. + Class: 6.58 MB capacity, 6.10 MB ( 93%) used, 425.82 KB ( 6%) free+waste, 63.63 KB ( <1%) overhead. + Both: 48.10 MB capacity, 46.82 MB ( 97%) used, 1.08 MB ( 2%) free+waste, 191.75 KB ( <1%) overhead. + +Virtual space: + Non-class space: 42.00 MB reserved, 41.75 MB (>99%) committed + Class space: 248.00 MB reserved, 6.63 MB ( 3%) committed + Both: 290.00 MB reserved, 48.38 MB ( 17%) committed + +Chunk freelists: + Non-Class: 6.13 KB + Class: 1.63 KB + Both: 7.75 KB + +CodeHeap 'non-profiled nmethods': size=119168Kb used=2655Kb max_used=2655Kb free=116513Kb + bounds [0x0000019287ba0000, 0x0000019287e40000, 0x000001928f000000] +CodeHeap 'profiled nmethods': size=119168Kb used=9723Kb max_used=9723Kb free=109445Kb + bounds [0x0000019280740000, 0x00000192810c0000, 0x0000019287ba0000] +CodeHeap 'non-nmethods': size=7424Kb used=3921Kb max_used=3960Kb free=3502Kb + bounds [0x0000019280000000, 0x00000192803f0000, 0x0000019280740000] + total_blobs=5337 nmethods=4542 adapters=703 + compilation: enabled + stopped_count=0, restarted_count=0 + full_count=0 + +Compilation events (10 events): +Event: 2.901 Thread 0x0000019292bfc800 4509 3 org.gradle.internal.instantiation.generator.ParamsMatchingConstructorSelector::forParams (481 bytes) +Event: 2.902 Thread 0x000001929412f800 4508 3 org.gradle.internal.instantiation.generator.AsmBackedClassGenerator::getDisplayNameForNext (21 bytes) +Event: 2.902 Thread 0x0000019292a91000 4510 3 org.gradle.internal.instantiation.generator.ParamsMatchingConstructorSelector::vetoParameters (1 bytes) +Event: 2.902 Thread 0x000001929402c000 4507 3 org.gradle.internal.event.AbstractBroadcastDispatch:: (10 bytes) +Event: 2.902 Thread 0x0000019292a91000 nmethod 4510 0x00000192810a7590 code [0x00000192810a7720, 0x00000192810a7818] +Event: 2.902 Thread 0x000001929412f800 nmethod 4508 0x00000192810a7890 code [0x00000192810a7a40, 0x00000192810a7d08] +Event: 2.902 Thread 0x000001929402c000 nmethod 4507 0x00000192810a7e10 code [0x00000192810a7fa0, 0x00000192810a8158] +Event: 2.902 Thread 0x0000019292a81800 4511 4 org.objectweb.asm.ByteVector::put122 (93 bytes) +Event: 2.903 Thread 0x0000019292bfc800 nmethod 4509 0x00000192810a8210 code [0x00000192810a8780, 0x00000192810ab838] +Event: 2.903 Thread 0x0000019292a81800 nmethod 4511 0x0000019287e35410 code [0x0000019287e355a0, 0x0000019287e35768] + +GC Heap History (10 events): +Event: 0.392 GC heap before +{Heap before GC invocations=0 (full 0): + garbage-first heap total 262144K, used 29696K [0x00000000e0000000, 0x0000000100000000) + region size 1024K, 24 young (24576K), 0 survivors (0K) + Metaspace used 9898K, capacity 10102K, committed 10368K, reserved 264192K + class space used 1007K, capacity 1074K, committed 1152K, reserved 253952K +} +Event: 0.395 GC heap after +{Heap after GC invocations=1 (full 0): + garbage-first heap total 262144K, used 9357K [0x00000000e0000000, 0x0000000100000000) + region size 1024K, 3 young (3072K), 3 survivors (3072K) + Metaspace used 9898K, capacity 10102K, committed 10368K, reserved 264192K + class space used 1007K, capacity 1074K, committed 1152K, reserved 253952K +} +Event: 1.318 GC heap before +{Heap before GC invocations=1 (full 0): + garbage-first heap total 262144K, used 111757K [0x00000000e0000000, 0x0000000100000000) + region size 1024K, 104 young (106496K), 3 survivors (3072K) + Metaspace used 20644K, capacity 21059K, committed 21248K, reserved 272384K + class space used 2534K, capacity 2689K, committed 2816K, reserved 253952K +} +Event: 1.323 GC heap after +{Heap after GC invocations=2 (full 0): + garbage-first heap total 262144K, used 16884K [0x00000000e0000000, 0x0000000100000000) + region size 1024K, 11 young (11264K), 11 survivors (11264K) + Metaspace used 20644K, capacity 21059K, committed 21248K, reserved 272384K + class space used 2534K, capacity 2689K, committed 2816K, reserved 253952K +} +Event: 1.603 GC heap before +{Heap before GC invocations=3 (full 0): + garbage-first heap total 262144K, used 68084K [0x00000000e0000000, 0x0000000100000000) + region size 1024K, 61 young (62464K), 11 survivors (11264K) + Metaspace used 25853K, capacity 26420K, committed 26752K, reserved 278528K + class space used 3387K, capacity 3594K, committed 3712K, reserved 253952K +} +Event: 1.608 GC heap after +{Heap after GC invocations=4 (full 0): + garbage-first heap total 262144K, used 18995K [0x00000000e0000000, 0x0000000100000000) + region size 1024K, 3 young (3072K), 3 survivors (3072K) + Metaspace used 25853K, capacity 26420K, committed 26752K, reserved 278528K + class space used 3387K, capacity 3594K, committed 3712K, reserved 253952K +} +Event: 2.075 GC heap before +{Heap before GC invocations=4 (full 0): + garbage-first heap total 262144K, used 85555K [0x00000000e0000000, 0x0000000100000000) + region size 1024K, 69 young (70656K), 3 survivors (3072K) + Metaspace used 34854K, capacity 35685K, committed 35840K, reserved 286720K + class space used 4559K, capacity 4900K, committed 4992K, reserved 253952K +} +Event: 2.078 GC heap after +{Heap after GC invocations=5 (full 0): + garbage-first heap total 262144K, used 21984K [0x00000000e0000000, 0x0000000100000000) + region size 1024K, 6 young (6144K), 6 survivors (6144K) + Metaspace used 34854K, capacity 35685K, committed 35840K, reserved 286720K + class space used 4559K, capacity 4900K, committed 4992K, reserved 253952K +} +Event: 2.740 GC heap before +{Heap before GC invocations=6 (full 0): + garbage-first heap total 262144K, used 144864K [0x00000000e0000000, 0x0000000100000000) + region size 1024K, 123 young (125952K), 6 survivors (6144K) + Metaspace used 45570K, capacity 46578K, committed 46720K, reserved 294912K + class space used 5854K, capacity 6249K, committed 6272K, reserved 253952K +} +Event: 2.745 GC heap after +{Heap after GC invocations=7 (full 0): + garbage-first heap total 262144K, used 28593K [0x00000000e0000000, 0x0000000100000000) + region size 1024K, 12 young (12288K), 12 survivors (12288K) + Metaspace used 45570K, capacity 46578K, committed 46720K, reserved 294912K + class space used 5854K, capacity 6249K, committed 6272K, reserved 253952K +} + +Deoptimization events (10 events): +Event: 2.829 Thread 0x00000192942ea800 Uncommon trap: reason=class_check action=maybe_recompile pc=0x0000019287d56be8 method=java.util.stream.ReferencePipeline.forEachWithCancel(Ljava/util/Spliterator;Ljava/util/stream/Sink;)Z @ 1 c2 +Event: 2.863 Thread 0x0000019298612800 Uncommon trap: reason=unstable_if action=reinterpret pc=0x0000019287d0a6c4 method=java.util.concurrent.ConcurrentHashMap.addCount(JI)V @ 34 c2 +Event: 2.863 Thread 0x0000019298606800 Uncommon trap: reason=unstable_if action=reinterpret pc=0x0000019287d0a6c4 method=java.util.concurrent.ConcurrentHashMap.addCount(JI)V @ 34 c2 +Event: 2.863 Thread 0x0000019298613800 Uncommon trap: reason=unstable_if action=reinterpret pc=0x0000019287d0a6c4 method=java.util.concurrent.ConcurrentHashMap.addCount(JI)V @ 34 c2 +Event: 2.863 Thread 0x0000019298608000 Uncommon trap: reason=speculate_null_assert action=make_not_entrant pc=0x0000019287d76820 method=java.lang.invoke.MethodType$ConcurrentWeakInternSet.add(Ljava/lang/Object;)Ljava/lang/Object; @ 47 c2 +Event: 2.864 Thread 0x0000019298613800 Uncommon trap: reason=unstable_if action=reinterpret pc=0x0000019287c50e0c method=java.util.concurrent.ConcurrentHashMap.addCount(JI)V @ 7 c2 +Event: 2.871 Thread 0x00000192942ea800 Uncommon trap: reason=profile_predicate action=maybe_recompile pc=0x0000019287e1dd14 method=java.util.stream.ReferencePipeline.forEachWithCancel(Ljava/util/Spliterator;Ljava/util/stream/Sink;)Z @ 8 c2 +Event: 2.872 Thread 0x00000192942ea800 Uncommon trap: reason=profile_predicate action=maybe_recompile pc=0x0000019287e1dd14 method=java.util.stream.ReferencePipeline.forEachWithCancel(Ljava/util/Spliterator;Ljava/util/stream/Sink;)Z @ 8 c2 +Event: 2.873 Thread 0x00000192942ea800 Uncommon trap: reason=profile_predicate action=maybe_recompile pc=0x0000019287e1dd14 method=java.util.stream.ReferencePipeline.forEachWithCancel(Ljava/util/Spliterator;Ljava/util/stream/Sink;)Z @ 8 c2 +Event: 2.874 Thread 0x00000192942ea800 Uncommon trap: reason=profile_predicate action=maybe_recompile pc=0x0000019287e1dd14 method=java.util.stream.ReferencePipeline.forEachWithCancel(Ljava/util/Spliterator;Ljava/util/stream/Sink;)Z @ 8 c2 + +Classes redefined (0 events): +No events + +Internal exceptions (10 events): +Event: 2.715 Thread 0x00000192942ea800 Exception (0x00000000e897b210) thrown at [./open/src/hotspot/share/interpreter/linkResolver.cpp, line +Event: 2.715 Thread 0x00000192942ea800 Exception (0x00000000e897ecf0) thrown at [./open/src/hotspot/share/interpreter/linkResolver.cpp, line 838] +Event: 2.762 Thread 0x00000192942ea800 Exception (0x00000000efce1978) thrown at [./open/src/hotspot/share/interpreter/linkResolver.cpp, line 772] +Event: 2.776 Thread 0x00000192942ea800 Exception (0x00000000ef9a2e68) thrown at [./open/src/hotspot/share/i +Event: 2.811 Thread 0x00000192942ea800 Exception current thread ) + 0x000001b8583c0000 JavaThread "main" [_thread_blocked, id=21500, stack(0x0000000a8c000000,0x0000000a8c100000)] + 0x000001b873df4800 JavaThread "Reference Handler" daemon [_thread_blocked, id=5828, stack(0x0000000a8c700000,0x0000000a8c800000)] + 0x000001b873df5800 JavaThread "Finalizer" daemon [_thread_blocked, id=2380, stack(0x0000000a8c800000,0x0000000a8c900000)] + 0x000001b873e63000 JavaThread "Signal Dispatcher" daemon [_thread_blocked, id=16204, stack(0x0000000a8c900000,0x0000000a8ca00000)] + 0x000001b873e64000 JavaThread "Attach Listener" daemon [_thread_blocked, id=15044, stack(0x0000000a8ca00000,0x0000000a8cb00000)] + 0x000001b873e66800 JavaThread "Service Thread" daemon [_thread_blocked, id=21964, stack(0x0000000a8cb00000,0x0000000a8cc00000)] + 0x000001b873e69800 JavaThread "C2 CompilerThread0" daemon [_thread_in_native, id=16040, stack(0x0000000a8cc00000,0x0000000a8cd00000)] + 0x000001b873e6c800 JavaThread "C1 CompilerThread0" daemon [_thread_blocked, id=7560, stack(0x0000000a8cd00000,0x0000000a8ce00000)] + 0x000001b873e7a000 JavaThread "Sweeper thread" daemon [_thread_blocked, id=9016, stack(0x0000000a8ce00000,0x0000000a8cf00000)] + 0x000001b87358e000 JavaThread "C1 CompilerThread1" daemon [_thread_blocked, id=18664, stack(0x0000000a8cf00000,0x0000000a8d000000)] + 0x000001b873ff8000 JavaThread "Common-Cleaner" daemon [_thread_blocked, id=23484, stack(0x0000000a8d000000,0x0000000a8d100000)] + 0x000001b874359800 JavaThread "C2 CompilerThread1" daemon [_thread_in_native, id=9024, stack(0x0000000a8d200000,0x0000000a8d300000)] + 0x000001b874483800 JavaThread "C1 CompilerThread2" daemon [_thread_blocked, id=13604, stack(0x0000000a8d900000,0x0000000a8da00000)] + 0x000001b8742ba000 JavaThread "C1 CompilerThread3" daemon [_thread_blocked, id=21436, stack(0x0000000a8da00000,0x0000000a8db00000)] + 0x000001b873ff8800 JavaThread "Daemon health stats" [_thread_blocked, id=11380, stack(0x0000000a8db00000,0x0000000a8dc00000)] + 0x000001b873ff9800 JavaThread "Incoming local TCP Connector on port 54270" [_thread_in_native, id=11168, stack(0x0000000a8d300000,0x0000000a8d400000)] + 0x000001b873ffc000 JavaThread "Daemon periodic checks" [_thread_blocked, id=16560, stack(0x0000000a8dc00000,0x0000000a8dd00000)] + 0x000001b873ffa800 JavaThread "Daemon" [_thread_blocked, id=18272, stack(0x0000000a8dd00000,0x0000000a8de00000)] + 0x000001b873ffd800 JavaThread "Handler for socket connection from /127.0.0.1:54270 to /127.0.0.1:54271" [_thread_in_native, id=10416, stack(0x0000000a8de00000,0x0000000a8df00000)] + 0x000001b873ffe800 JavaThread "Cancel handler" [_thread_blocked, id=10280, stack(0x0000000a8df00000,0x0000000a8e000000)] + 0x000001b873ffc800 JavaThread "Daemon worker" [_thread_in_vm, id=4460, stack(0x0000000a8e000000,0x0000000a8e100000)] + 0x000001b8761d4800 JavaThread "Asynchronous log dispatcher for DefaultDaemonConnection: socket connection from /127.0.0.1:54270 to /127.0.0.1:54271" [_thread_blocked, id=9328, stack(0x0000000a8e100000,0x0000000a8e200000)] + 0x000001b8761d7000 JavaThread "Stdin handler" [_thread_blocked, id=14936, stack(0x0000000a8e200000,0x0000000a8e300000)] + 0x000001b8761db000 JavaThread "Daemon client event forwarder" [_thread_blocked, id=2916, stack(0x0000000a8e300000,0x0000000a8e400000)] + 0x000001b8761d9800 JavaThread "Cache worker for journal cache (C:\Users\Chen Zi Han\.gradle\caches\journal-1)" [_thread_blocked, id=18136, stack(0x0000000a8e400000,0x0000000a8e500000)] + 0x000001b8761d5800 JavaThread "File lock request listener" [_thread_in_native, id=7840, stack(0x0000000a8e500000,0x0000000a8e600000)] + 0x000001b8761d8000 JavaThread "Cache worker for file hash cache (C:\Users\Chen Zi Han\.gradle\caches\7.4.2\fileHashes)" [_thread_blocked, id=12020, stack(0x0000000a8e600000,0x0000000a8e700000)] + 0x000001b876569000 JavaThread "C2 CompilerThread2" daemon [_thread_in_native, id=22452, stack(0x0000000a8f000000,0x0000000a8f100000)] + 0x000001b8761d8800 JavaThread "File watcher server" daemon [_thread_in_native, id=23296, stack(0x0000000a8f100000,0x0000000a8f200000)] + 0x000001b8761da800 JavaThread "File watcher consumer" daemon [_thread_blocked, id=16196, stack(0x0000000a8f200000,0x0000000a8f300000)] + 0x000001b8761dc000 JavaThread "Cache worker for checksums cache (D:\NUS_Year2_SEM2\CS2113_NEW\tp\.gradle\7.4.2\checksums)" [_thread_blocked, id=19404, stack(0x0000000a8f300000,0x0000000a8f400000)] + 0x000001b8761d6000 JavaThread "Cache worker for cache directory md-rule (C:\Users\Chen Zi Han\.gradle\caches\7.4.2\md-rule)" [_thread_blocked, id=24548, stack(0x0000000a8f400000,0x0000000a8f500000)] + 0x000001b8761e2800 JavaThread "Cache worker for file hash cache (D:\NUS_Year2_SEM2\CS2113_NEW\tp\.gradle\7.4.2\fileHashes)" [_thread_blocked, id=10100, stack(0x0000000a8f500000,0x0000000a8f600000)] + 0x000001b8761dc800 JavaThread "Cache worker for cache directory md-supplier (C:\Users\Chen Zi Han\.gradle\caches\7.4.2\md-supplier)" [_thread_blocked, id=1424, stack(0x0000000a8f600000,0x0000000a8f700000)] + 0x000001b8761e1800 JavaThread "Cache worker for execution history cache (C:\Users\Chen Zi Han\.gradle\caches\7.4.2\executionHistory)" [_thread_blocked, id=1704, stack(0x0000000a8f700000,0x0000000a8f800000)] + 0x000001b8761e1000 JavaThread "jar transforms" [_thread_blocked, id=23176, stack(0x0000000a8f800000,0x0000000a8f900000)] + 0x000001b8761e3000 JavaThread "jar transforms Thread 2" [_thread_blocked, id=2140, stack(0x0000000a8f900000,0x0000000a8fa00000)] + 0x000001b879147800 JavaThread "C2 CompilerThread3" daemon [_thread_in_native, id=20848, stack(0x0000000a8fa00000,0x0000000a8fb00000)] + 0x000001b8761de800 JavaThread "Cache worker for file content cache (C:\Users\Chen Zi Han\.gradle\caches\7.4.2\fileContent)" [_thread_blocked, id=6896, stack(0x0000000a8fb00000,0x0000000a8fc00000)] + 0x000001b8761df000 JavaThread "jar transforms Thread 3" [_thread_blocked, id=10884, stack(0x0000000a8fc00000,0x0000000a8fd00000)] + 0x000001b878dd3800 JavaThread "jar transforms Thread 4" [_thread_blocked, id=22840, stack(0x0000000a8fd00000,0x0000000a8fe00000)] + 0x000001b878dd6000 JavaThread "jar transforms Thread 5" [_thread_blocked, id=14204, stack(0x0000000a8fe00000,0x0000000a8ff00000)] + 0x000001b878dd6800 JavaThread "jar transforms Thread 6" [_thread_blocked, id=12556, stack(0x0000000a8ff00000,0x0000000a90000000)] + 0x000001b878dd7800 JavaThread "Cache worker for dependencies-accessors (D:\NUS_Year2_SEM2\CS2113_NEW\tp\.gradle\7.4.2\dependencies-accessors)" [_thread_blocked, id=24348, stack(0x0000000a90000000,0x0000000a90100000)] + 0x000001b878dd8800 JavaThread "jar transforms Thread 7" [_thread_blocked, id=19516, stack(0x0000000a90100000,0x0000000a90200000)] + 0x000001b878dd2800 JavaThread "Cache worker for Build Output Cleanup Cache (D:\NUS_Year2_SEM2\CS2113_NEW\tp\.gradle\buildOutputCleanup)" [_thread_blocked, id=10172, stack(0x0000000a90200000,0x0000000a90300000)] + 0x000001b878dda000 JavaThread "Unconstrained build operations" [_thread_blocked, id=21300, stack(0x0000000a90300000,0x0000000a90400000)] + 0x000001b878dd9000 JavaThread "Unconstrained build operations Thread 2" [_thread_blocked, id=14364, stack(0x0000000a90400000,0x0000000a90500000)] + 0x000001b878dd4000 JavaThread "Unconstrained build operations Thread 3" [_thread_blocked, id=12524, stack(0x0000000a90500000,0x0000000a90600000)] + 0x000001b878ddb000 JavaThread "Unconstrained build operations Thread 4" [_thread_blocked, id=24284, stack(0x0000000a90600000,0x0000000a90700000)] + 0x000001b878dd5000 JavaThread "Unconstrained build operations Thread 5" [_thread_blocked, id=19444, stack(0x0000000a90700000,0x0000000a90800000)] + 0x000001b878de1800 JavaThread "Unconstrained build operations Thread 6" [_thread_blocked, id=13876, stack(0x0000000a90800000,0x0000000a90900000)] + 0x000001b878ddf000 JavaThread "Unconstrained build operations Thread 7" [_thread_blocked, id=12360, stack(0x0000000a90900000,0x0000000a90a00000)] + 0x000001b878ddb800 JavaThread "Unconstrained build operations Thread 8" [_thread_blocked, id=7376, stack(0x0000000a90a00000,0x0000000a90b00000)] + 0x000001b878ddd000 JavaThread "Unconstrained build operations Thread 9" [_thread_blocked, id=19324, stack(0x0000000a90b00000,0x0000000a90c00000)] + 0x000001b878ddc800 JavaThread "Unconstrained build operations Thread 10" [_thread_blocked, id=18992, stack(0x0000000a90c00000,0x0000000a90d00000)] + 0x000001b878dde000 JavaThread "Unconstrained build operations Thread 11" [_thread_blocked, id=11320, stack(0x0000000a90d00000,0x0000000a90e00000)] + 0x000001b878ddf800 JavaThread "Unconstrained build operations Thread 12" [_thread_blocked, id=21044, stack(0x0000000a90e00000,0x0000000a90f00000)] + 0x000001b878de0800 JavaThread "Unconstrained build operations Thread 13" [_thread_blocked, id=22012, stack(0x0000000a90f00000,0x0000000a91000000)] + 0x000001b8790b3800 JavaThread "jar transforms Thread 8" [_thread_blocked, id=12328, stack(0x0000000a91000000,0x0000000a91100000)] + 0x000001b8790b3000 JavaThread "jar transforms Thread 9" [_thread_blocked, id=18808, stack(0x0000000a91100000,0x0000000a91200000)] + 0x000001b8790b4800 JavaThread "jar transforms Thread 10" [_thread_blocked, id=7852, stack(0x0000000a91200000,0x0000000a91300000)] + 0x000001b8790b5800 JavaThread "jar transforms Thread 11" [_thread_blocked, id=16764, stack(0x0000000a91300000,0x0000000a91400000)] + 0x000001b8790af800 JavaThread "jar transforms Thread 12" [_thread_blocked, id=2596, stack(0x0000000a91400000,0x0000000a91500000)] + 0x000001b8790b2000 JavaThread "jar transforms Thread 13" [_thread_blocked, id=12064, stack(0x0000000a91500000,0x0000000a91600000)] + 0x000001b8790b0800 JavaThread "jar transforms Thread 14" [_thread_blocked, id=13920, stack(0x0000000a91600000,0x0000000a91700000)] + 0x000001b8790b6000 JavaThread "jar transforms Thread 15" [_thread_blocked, id=9896, stack(0x0000000a91700000,0x0000000a91800000)] + 0x000001b8790b7000 JavaThread "jar transforms Thread 16" [_thread_blocked, id=18408, stack(0x0000000a91800000,0x0000000a91900000)] + 0x000001b8790b1000 JavaThread "Memory manager" [_thread_blocked, id=14340, stack(0x0000000a91900000,0x0000000a91a00000)] + 0x000001b87917a000 JavaThread "C2 CompilerThread4" daemon [_thread_in_native, id=15996, stack(0x0000000a91a00000,0x0000000a91b00000)] + 0x000001b87c569800 JavaThread "C2 CompilerThread5" daemon [_thread_in_native, id=1520, stack(0x0000000a91b00000,0x0000000a91c00000)] + 0x000001b87aabd800 JavaThread "C2 CompilerThread6" daemon [_thread_in_native, id=9176, stack(0x0000000a91c00000,0x0000000a91d00000)] +=>0x000001b87cb02000 JavaThread "C2 CompilerThread7" daemon [_thread_in_native, id=1320, stack(0x0000000a91d00000,0x0000000a91e00000)] + +Other Threads: + 0x000001b873dd1800 VMThread "VM Thread" [stack: 0x0000000a8c600000,0x0000000a8c700000] [id=11744] + 0x000001b87405a800 WatcherThread [stack: 0x0000000a8d100000,0x0000000a8d200000] [id=23420] + 0x000001b8583d5000 GCTaskThread "GC Thread#0" [stack: 0x0000000a8c100000,0x0000000a8c200000] [id=11696] + 0x000001b8754db800 GCTaskThread "GC Thread#1" [stack: 0x0000000a8d400000,0x0000000a8d500000] [id=19380] + 0x000001b8754dc800 GCTaskThread "GC Thread#2" [stack: 0x0000000a8d500000,0x0000000a8d600000] [id=22564] + 0x000001b874b08000 GCTaskThread "GC Thread#3" [stack: 0x0000000a8d600000,0x0000000a8d700000] [id=14188] + 0x000001b874b08800 GCTaskThread "GC Thread#4" [stack: 0x0000000a8d700000,0x0000000a8d800000] [id=7544] + 0x000001b874577800 GCTaskThread "GC Thread#5" [stack: 0x0000000a8d800000,0x0000000a8d900000] [id=6200] + 0x000001b87666b800 GCTaskThread "GC Thread#6" [stack: 0x0000000a8e700000,0x0000000a8e800000] [id=16948] + 0x000001b876945800 GCTaskThread "GC Thread#7" [stack: 0x0000000a8e800000,0x0000000a8e900000] [id=10640] + 0x000001b876946800 GCTaskThread "GC Thread#8" [stack: 0x0000000a8e900000,0x0000000a8ea00000] [id=16544] + 0x000001b876e67800 GCTaskThread "GC Thread#9" [stack: 0x0000000a8ea00000,0x0000000a8eb00000] [id=7540] + 0x000001b876e68800 GCTaskThread "GC Thread#10" [stack: 0x0000000a8eb00000,0x0000000a8ec00000] [id=14348] + 0x000001b876e65800 GCTaskThread "GC Thread#11" [stack: 0x0000000a8ec00000,0x0000000a8ed00000] [id=11376] + 0x000001b876e69000 GCTaskThread "GC Thread#12" [stack: 0x0000000a8ed00000,0x0000000a8ee00000] [id=21240] + 0x000001b8583eb000 ConcurrentGCThread "G1 Main Marker" [stack: 0x0000000a8c200000,0x0000000a8c300000] [id=11560] + 0x000001b8583ec800 ConcurrentGCThread "G1 Conc#0" [stack: 0x0000000a8c300000,0x0000000a8c400000] [id=20608] + 0x000001b876e6a800 ConcurrentGCThread "G1 Conc#1" [stack: 0x0000000a8ee00000,0x0000000a8ef00000] [id=22356] + 0x000001b876e66000 ConcurrentGCThread "G1 Conc#2" [stack: 0x0000000a8ef00000,0x0000000a8f000000] [id=21768] + 0x000001b873469000 ConcurrentGCThread "G1 Refine#0" [stack: 0x0000000a8c400000,0x0000000a8c500000] [id=2620] + 0x000001b87346a000 ConcurrentGCThread "G1 Young RemSet Sampling" [stack: 0x0000000a8c500000,0x0000000a8c600000] [id=12704] + +Threads with active compile tasks: +C2 CompilerThread0 3441 5187 % 4 groovy.lang.MetaClassImpl::inheritInterfaceNewMetaMethods @ 100 (195 bytes) +C1 CompilerThread0 3441 5364 3 org.gradle.internal.instantiation.generator.AsmBackedClassGenerator$ClassBuilderImpl::applyConventionMappingToSetter (177 bytes) +C2 CompilerThread1 3441 5342 ! 4 java.util.concurrent.ConcurrentHashMap::computeIfAbsent (576 bytes) +C2 CompilerThread2 3441 5238 4 sun.reflect.generics.parser.SignatureParser::parsePackageNameAndSimpleClassTypeSignature (119 bytes) +C2 CompilerThread3 3441 5192 4 java.beans.Introspector::addMethod (196 bytes) +C2 CompilerThread4 3441 5257 4 com.sun.beans.TypeResolver::resolve (37 bytes) +C2 CompilerThread5 3441 5307 4 java.beans.MethodRef::set (58 bytes) +C2 CompilerThread6 3441 5336 4 groovy.lang.MetaClassImpl$1MOPIter::methodNameAction (325 bytes) +C2 CompilerThread7 3441 5337 ! 4 java.lang.reflect.Executable::sharedToGenericString (321 bytes) + +VM state:not at safepoint (normal execution) + +VM Mutex/Monitor currently owned by a thread: None + +Heap address: 0x00000000e0000000, size: 512 MB, Compressed Oops mode: 32-bit +Narrow klass base: 0x0000000000000000, Narrow klass shift: 3 +Compressed class space size: 260046848 Address: 0x0000000100000000 + +Heap: + garbage-first heap total 262144K, used 75792K [0x00000000e0000000, 0x0000000100000000) + region size 1024K, 56 young (57344K), 19 survivors (19456K) + Metaspace used 53352K, capacity 55061K, committed 55296K, reserved 303104K + class space used 7058K, capacity 7667K, committed 7680K, reserved 253952K +Heap Regions: E=young(eden), S=young(survivor), O=old, HS=humongous(starts), HC=humongous(continues), CS=collection set, F=free, A=archive, TAMS=top-at-mark-start (previous, next) +| 0|0x00000000e0000000, 0x00000000e0100000, 0x00000000e0100000|100%| O| |TAMS 0x00000000e0100000, 0x00000000e0000000| Untracked +| 1|0x00000000e0100000, 0x00000000e0200000, 0x00000000e0200000|100%| O| |TAMS 0x00000000e0200000, 0x00000000e0100000| Untracked +| 2|0x00000000e0200000, 0x00000000e0300000, 0x00000000e0300000|100%| O| |TAMS 0x00000000e0300000, 0x00000000e0200000| Untracked +| 3|0x00000000e0300000, 0x00000000e0400000, 0x00000000e0400000|100%|HS| |TAMS 0x00000000e0400000, 0x00000000e0300000| Complete +| 4|0x00000000e0400000, 0x00000000e0500000, 0x00000000e0500000|100%|HC| |TAMS 0x00000000e0500000, 0x00000000e0400000| Complete +| 5|0x00000000e0500000, 0x00000000e0600000, 0x00000000e0600000|100%|HC| |TAMS 0x00000000e0600000, 0x00000000e0500000| Complete +| 6|0x00000000e0600000, 0x00000000e0700000, 0x00000000e0700000|100%| O| |TAMS 0x00000000e0700000, 0x00000000e0600000| Untracked +| 7|0x00000000e0700000, 0x00000000e0800000, 0x00000000e0800000|100%| O| |TAMS 0x00000000e0800000, 0x00000000e0700000| Untracked +| 8|0x00000000e0800000, 0x00000000e0900000, 0x00000000e0900000|100%| O| |TAMS 0x00000000e0900000, 0x00000000e0800000| Untracked +| 9|0x00000000e0900000, 0x00000000e0a00000, 0x00000000e0a00000|100%| O| |TAMS 0x00000000e0a00000, 0x00000000e0900000| Untracked +| 10|0x00000000e0a00000, 0x00000000e0b00000, 0x00000000e0b00000|100%| O| |TAMS 0x00000000e0b00000, 0x00000000e0a00000| Untracked +| 11|0x00000000e0b00000, 0x00000000e0c00000, 0x00000000e0c00000|100%| O| |TAMS 0x00000000e0c00000, 0x00000000e0b00000| Untracked +| 12|0x00000000e0c00000, 0x00000000e0d00000, 0x00000000e0d00000|100%| O| |TAMS 0x00000000e0d00000, 0x00000000e0c00000| Untracked +| 13|0x00000000e0d00000, 0x00000000e0e00000, 0x00000000e0e00000|100%| O| |TAMS 0x00000000e0e00000, 0x00000000e0d00000| Untracked +| 14|0x00000000e0e00000, 0x00000000e0f00000, 0x00000000e0f00000|100%| O| |TAMS 0x00000000e0f00000, 0x00000000e0e00000| Untracked +| 15|0x00000000e0f00000, 0x00000000e1000000, 0x00000000e1000000|100%| O| |TAMS 0x00000000e1000000, 0x00000000e0f00000| Untracked +| 16|0x00000000e1000000, 0x00000000e1100000, 0x00000000e1100000|100%| O| |TAMS 0x00000000e1100000, 0x00000000e1000000| Untracked +| 17|0x00000000e1100000, 0x00000000e1200000, 0x00000000e1200000|100%| O| |TAMS 0x00000000e1117200, 0x00000000e1100000| Untracked +| 18|0x00000000e1200000, 0x00000000e1300000, 0x00000000e1300000|100%| O| |TAMS 0x00000000e1200000, 0x00000000e1200000| Untracked +| 19|0x00000000e1300000, 0x00000000e130b400, 0x00000000e1400000| 4%| O| |TAMS 0x00000000e1300000, 0x00000000e1300000| Untracked +| 20|0x00000000e1400000, 0x00000000e1400000, 0x00000000e1500000| 0%| F| |TAMS 0x00000000e1400000, 0x00000000e1400000| Untracked +| 21|0x00000000e1500000, 0x00000000e1500000, 0x00000000e1600000| 0%| F| |TAMS 0x00000000e1500000, 0x00000000e1500000| Untracked +| 22|0x00000000e1600000, 0x00000000e1600000, 0x00000000e1700000| 0%| F| |TAMS 0x00000000e1600000, 0x00000000e1600000| Untracked +| 23|0x00000000e1700000, 0x00000000e1700000, 0x00000000e1800000| 0%| F| |TAMS 0x00000000e1700000, 0x00000000e1700000| Untracked +| 24|0x00000000e1800000, 0x00000000e1800000, 0x00000000e1900000| 0%| F| |TAMS 0x00000000e1800000, 0x00000000e1800000| Untracked +| 25|0x00000000e1900000, 0x00000000e1900000, 0x00000000e1a00000| 0%| F| |TAMS 0x00000000e1900000, 0x00000000e1900000| Untracked +| 26|0x00000000e1a00000, 0x00000000e1a00000, 0x00000000e1b00000| 0%| F| |TAMS 0x00000000e1a00000, 0x00000000e1a00000| Untracked +| 27|0x00000000e1b00000, 0x00000000e1b00000, 0x00000000e1c00000| 0%| F| |TAMS 0x00000000e1b00000, 0x00000000e1b00000| Untracked +| 28|0x00000000e1c00000, 0x00000000e1c00000, 0x00000000e1d00000| 0%| F| |TAMS 0x00000000e1c00000, 0x00000000e1c00000| Untracked +| 29|0x00000000e1d00000, 0x00000000e1d00000, 0x00000000e1e00000| 0%| F| |TAMS 0x00000000e1d00000, 0x00000000e1d00000| Untracked +| 30|0x00000000e1e00000, 0x00000000e1e00000, 0x00000000e1f00000| 0%| F| |TAMS 0x00000000e1e00000, 0x00000000e1e00000| Untracked +| 31|0x00000000e1f00000, 0x00000000e1f00000, 0x00000000e2000000| 0%| F| |TAMS 0x00000000e1f00000, 0x00000000e1f00000| Untracked +| 32|0x00000000e2000000, 0x00000000e2000000, 0x00000000e2100000| 0%| F| |TAMS 0x00000000e2000000, 0x00000000e2000000| Untracked +| 33|0x00000000e2100000, 0x00000000e2100000, 0x00000000e2200000| 0%| F| |TAMS 0x00000000e2100000, 0x00000000e2100000| Untracked +| 34|0x00000000e2200000, 0x00000000e2200000, 0x00000000e2300000| 0%| F| |TAMS 0x00000000e2200000, 0x00000000e2200000| Untracked +| 35|0x00000000e2300000, 0x00000000e2300000, 0x00000000e2400000| 0%| F| |TAMS 0x00000000e2300000, 0x00000000e2300000| Untracked +| 36|0x00000000e2400000, 0x00000000e2400000, 0x00000000e2500000| 0%| F| |TAMS 0x00000000e2400000, 0x00000000e2400000| Untracked +| 37|0x00000000e2500000, 0x00000000e2500000, 0x00000000e2600000| 0%| F| |TAMS 0x00000000e2500000, 0x00000000e2500000| Untracked +| 38|0x00000000e2600000, 0x00000000e2600000, 0x00000000e2700000| 0%| F| |TAMS 0x00000000e2600000, 0x00000000e2600000| Untracked +| 39|0x00000000e2700000, 0x00000000e2700000, 0x00000000e2800000| 0%| F| |TAMS 0x00000000e2700000, 0x00000000e2700000| Untracked +| 40|0x00000000e2800000, 0x00000000e2800000, 0x00000000e2900000| 0%| F| |TAMS 0x00000000e2800000, 0x00000000e2800000| Untracked +| 41|0x00000000e2900000, 0x00000000e2900000, 0x00000000e2a00000| 0%| F| |TAMS 0x00000000e2900000, 0x00000000e2900000| Untracked +| 42|0x00000000e2a00000, 0x00000000e2a00000, 0x00000000e2b00000| 0%| F| |TAMS 0x00000000e2a00000, 0x00000000e2a00000| Untracked +| 43|0x00000000e2b00000, 0x00000000e2b00000, 0x00000000e2c00000| 0%| F| |TAMS 0x00000000e2b00000, 0x00000000e2b00000| Untracked +| 44|0x00000000e2c00000, 0x00000000e2c00000, 0x00000000e2d00000| 0%| F| |TAMS 0x00000000e2c00000, 0x00000000e2c00000| Untracked +| 45|0x00000000e2d00000, 0x00000000e2d00000, 0x00000000e2e00000| 0%| F| |TAMS 0x00000000e2d00000, 0x00000000e2d00000| Untracked +| 46|0x00000000e2e00000, 0x00000000e2e00000, 0x00000000e2f00000| 0%| F| |TAMS 0x00000000e2e00000, 0x00000000e2e00000| Untracked +| 47|0x00000000e2f00000, 0x00000000e2f00000, 0x00000000e3000000| 0%| F| |TAMS 0x00000000e2f00000, 0x00000000e2f00000| Untracked +| 48|0x00000000e3000000, 0x00000000e3000000, 0x00000000e3100000| 0%| F| |TAMS 0x00000000e3000000, 0x00000000e3000000| Untracked +| 49|0x00000000e3100000, 0x00000000e3100000, 0x00000000e3200000| 0%| F| |TAMS 0x00000000e3100000, 0x00000000e3100000| Untracked +| 50|0x00000000e3200000, 0x00000000e3200000, 0x00000000e3300000| 0%| F| |TAMS 0x00000000e3200000, 0x00000000e3200000| Untracked +| 51|0x00000000e3300000, 0x00000000e3300000, 0x00000000e3400000| 0%| F| |TAMS 0x00000000e3300000, 0x00000000e3300000| Untracked +| 52|0x00000000e3400000, 0x00000000e3400000, 0x00000000e3500000| 0%| F| |TAMS 0x00000000e3400000, 0x00000000e3400000| Untracked +| 53|0x00000000e3500000, 0x00000000e3500000, 0x00000000e3600000| 0%| F| |TAMS 0x00000000e3500000, 0x00000000e3500000| Untracked +| 54|0x00000000e3600000, 0x00000000e3600000, 0x00000000e3700000| 0%| F| |TAMS 0x00000000e3600000, 0x00000000e3600000| Untracked +| 55|0x00000000e3700000, 0x00000000e3700000, 0x00000000e3800000| 0%| F| |TAMS 0x00000000e3700000, 0x00000000e3700000| Untracked +| 56|0x00000000e3800000, 0x00000000e3800000, 0x00000000e3900000| 0%| F| |TAMS 0x00000000e3800000, 0x00000000e3800000| Untracked +| 57|0x00000000e3900000, 0x00000000e3900000, 0x00000000e3a00000| 0%| F| |TAMS 0x00000000e3900000, 0x00000000e3900000| Untracked +| 58|0x00000000e3a00000, 0x00000000e3a00000, 0x00000000e3b00000| 0%| F| |TAMS 0x00000000e3a00000, 0x00000000e3a00000| Untracked +| 59|0x00000000e3b00000, 0x00000000e3b00000, 0x00000000e3c00000| 0%| F| |TAMS 0x00000000e3b00000, 0x00000000e3b00000| Untracked +| 60|0x00000000e3c00000, 0x00000000e3c00000, 0x00000000e3d00000| 0%| F| |TAMS 0x00000000e3c00000, 0x00000000e3c00000| Untracked +| 61|0x00000000e3d00000, 0x00000000e3d00000, 0x00000000e3e00000| 0%| F| |TAMS 0x00000000e3d00000, 0x00000000e3d00000| Untracked +| 62|0x00000000e3e00000, 0x00000000e3e00000, 0x00000000e3f00000| 0%| F| |TAMS 0x00000000e3e00000, 0x00000000e3e00000| Untracked +| 63|0x00000000e3f00000, 0x00000000e3f00000, 0x00000000e4000000| 0%| F| |TAMS 0x00000000e3f00000, 0x00000000e3f00000| Untracked +| 64|0x00000000e4000000, 0x00000000e4000000, 0x00000000e4100000| 0%| F| |TAMS 0x00000000e4000000, 0x00000000e4000000| Untracked +| 65|0x00000000e4100000, 0x00000000e4100000, 0x00000000e4200000| 0%| F| |TAMS 0x00000000e4100000, 0x00000000e4100000| Untracked +| 66|0x00000000e4200000, 0x00000000e4200000, 0x00000000e4300000| 0%| F| |TAMS 0x00000000e4200000, 0x00000000e4200000| Untracked +| 67|0x00000000e4300000, 0x00000000e4300000, 0x00000000e4400000| 0%| F| |TAMS 0x00000000e4300000, 0x00000000e4300000| Untracked +| 68|0x00000000e4400000, 0x00000000e4400000, 0x00000000e4500000| 0%| F| |TAMS 0x00000000e4400000, 0x00000000e4400000| Untracked +| 69|0x00000000e4500000, 0x00000000e4500000, 0x00000000e4600000| 0%| F| |TAMS 0x00000000e4500000, 0x00000000e4500000| Untracked +| 70|0x00000000e4600000, 0x00000000e4600000, 0x00000000e4700000| 0%| F| |TAMS 0x00000000e4600000, 0x00000000e4600000| Untracked +| 71|0x00000000e4700000, 0x00000000e4700000, 0x00000000e4800000| 0%| F| |TAMS 0x00000000e4700000, 0x00000000e4700000| Untracked +| 72|0x00000000e4800000, 0x00000000e4800000, 0x00000000e4900000| 0%| F| |TAMS 0x00000000e4800000, 0x00000000e4800000| Untracked +| 73|0x00000000e4900000, 0x00000000e4900000, 0x00000000e4a00000| 0%| F| |TAMS 0x00000000e4900000, 0x00000000e4900000| Untracked +| 74|0x00000000e4a00000, 0x00000000e4a00000, 0x00000000e4b00000| 0%| F| |TAMS 0x00000000e4a00000, 0x00000000e4a00000| Untracked +| 75|0x00000000e4b00000, 0x00000000e4b00000, 0x00000000e4c00000| 0%| F| |TAMS 0x00000000e4b00000, 0x00000000e4b00000| Untracked +| 76|0x00000000e4c00000, 0x00000000e4c00000, 0x00000000e4d00000| 0%| F| |TAMS 0x00000000e4c00000, 0x00000000e4c00000| Untracked +| 77|0x00000000e4d00000, 0x00000000e4d00000, 0x00000000e4e00000| 0%| F| |TAMS 0x00000000e4d00000, 0x00000000e4d00000| Untracked +| 78|0x00000000e4e00000, 0x00000000e4e00000, 0x00000000e4f00000| 0%| F| |TAMS 0x00000000e4e00000, 0x00000000e4e00000| Untracked +| 79|0x00000000e4f00000, 0x00000000e4f00000, 0x00000000e5000000| 0%| F| |TAMS 0x00000000e4f00000, 0x00000000e4f00000| Untracked +| 80|0x00000000e5000000, 0x00000000e5000000, 0x00000000e5100000| 0%| F| |TAMS 0x00000000e5000000, 0x00000000e5000000| Untracked +| 81|0x00000000e5100000, 0x00000000e5100000, 0x00000000e5200000| 0%| F| |TAMS 0x00000000e5100000, 0x00000000e5100000| Untracked +| 82|0x00000000e5200000, 0x00000000e5200000, 0x00000000e5300000| 0%| F| |TAMS 0x00000000e5200000, 0x00000000e5200000| Untracked +| 83|0x00000000e5300000, 0x00000000e5300000, 0x00000000e5400000| 0%| F| |TAMS 0x00000000e5300000, 0x00000000e5300000| Untracked +| 84|0x00000000e5400000, 0x00000000e54f8f70, 0x00000000e5500000| 97%| S|CS|TAMS 0x00000000e5400000, 0x00000000e5400000| Complete +| 85|0x00000000e5500000, 0x00000000e5600000, 0x00000000e5600000|100%| S|CS|TAMS 0x00000000e5500000, 0x00000000e5500000| Complete +| 86|0x00000000e5600000, 0x00000000e5700000, 0x00000000e5700000|100%| S|CS|TAMS 0x00000000e5600000, 0x00000000e5600000| Complete +| 87|0x00000000e5700000, 0x00000000e5800000, 0x00000000e5800000|100%| S|CS|TAMS 0x00000000e5700000, 0x00000000e5700000| Complete +| 88|0x00000000e5800000, 0x00000000e5900000, 0x00000000e5900000|100%| S|CS|TAMS 0x00000000e5800000, 0x00000000e5800000| Complete +| 89|0x00000000e5900000, 0x00000000e5a00000, 0x00000000e5a00000|100%| S|CS|TAMS 0x00000000e5900000, 0x00000000e5900000| Complete +| 90|0x00000000e5a00000, 0x00000000e5b00000, 0x00000000e5b00000|100%| S|CS|TAMS 0x00000000e5a00000, 0x00000000e5a00000| Complete +| 91|0x00000000e5b00000, 0x00000000e5c00000, 0x00000000e5c00000|100%| S|CS|TAMS 0x00000000e5b00000, 0x00000000e5b00000| Complete +| 92|0x00000000e5c00000, 0x00000000e5d00000, 0x00000000e5d00000|100%| S|CS|TAMS 0x00000000e5c00000, 0x00000000e5c00000| Complete +| 93|0x00000000e5d00000, 0x00000000e5e00000, 0x00000000e5e00000|100%| S|CS|TAMS 0x00000000e5d00000, 0x00000000e5d00000| Complete +| 94|0x00000000e5e00000, 0x00000000e5f00000, 0x00000000e5f00000|100%| S|CS|TAMS 0x00000000e5e00000, 0x00000000e5e00000| Complete +| 95|0x00000000e5f00000, 0x00000000e6000000, 0x00000000e6000000|100%| S|CS|TAMS 0x00000000e5f00000, 0x00000000e5f00000| Complete +| 96|0x00000000e6000000, 0x00000000e6100000, 0x00000000e6100000|100%| S|CS|TAMS 0x00000000e6000000, 0x00000000e6000000| Complete +| 97|0x00000000e6100000, 0x00000000e6200000, 0x00000000e6200000|100%| S|CS|TAMS 0x00000000e6100000, 0x00000000e6100000| Complete +| 98|0x00000000e6200000, 0x00000000e6300000, 0x00000000e6300000|100%| S|CS|TAMS 0x00000000e6200000, 0x00000000e6200000| Complete +| 99|0x00000000e6300000, 0x00000000e6400000, 0x00000000e6400000|100%| S|CS|TAMS 0x00000000e6300000, 0x00000000e6300000| Complete +| 100|0x00000000e6400000, 0x00000000e6500000, 0x00000000e6500000|100%| S|CS|TAMS 0x00000000e6400000, 0x00000000e6400000| Complete +| 101|0x00000000e6500000, 0x00000000e6600000, 0x00000000e6600000|100%| S|CS|TAMS 0x00000000e6500000, 0x00000000e6500000| Complete +| 102|0x00000000e6600000, 0x00000000e6700000, 0x00000000e6700000|100%| S|CS|TAMS 0x00000000e6600000, 0x00000000e6600000| Complete +| 103|0x00000000e6700000, 0x00000000e6700000, 0x00000000e6800000| 0%| F| |TAMS 0x00000000e6700000, 0x00000000e6700000| Untracked +| 104|0x00000000e6800000, 0x00000000e6800000, 0x00000000e6900000| 0%| F| |TAMS 0x00000000e6800000, 0x00000000e6800000| Untracked +| 105|0x00000000e6900000, 0x00000000e6900000, 0x00000000e6a00000| 0%| F| |TAMS 0x00000000e6900000, 0x00000000e6900000| Untracked +| 106|0x00000000e6a00000, 0x00000000e6a00000, 0x00000000e6b00000| 0%| F| |TAMS 0x00000000e6a00000, 0x00000000e6a00000| Untracked +| 107|0x00000000e6b00000, 0x00000000e6b00000, 0x00000000e6c00000| 0%| F| |TAMS 0x00000000e6b00000, 0x00000000e6b00000| Untracked +| 108|0x00000000e6c00000, 0x00000000e6c00000, 0x00000000e6d00000| 0%| F| |TAMS 0x00000000e6c00000, 0x00000000e6c00000| Untracked +| 109|0x00000000e6d00000, 0x00000000e6d00000, 0x00000000e6e00000| 0%| F| |TAMS 0x00000000e6d00000, 0x00000000e6d00000| Untracked +| 110|0x00000000e6e00000, 0x00000000e6e00000, 0x00000000e6f00000| 0%| F| |TAMS 0x00000000e6e00000, 0x00000000e6e00000| Untracked +| 111|0x00000000e6f00000, 0x00000000e6f00000, 0x00000000e7000000| 0%| F| |TAMS 0x00000000e6f00000, 0x00000000e6f00000| Untracked +| 112|0x00000000e7000000, 0x00000000e7000000, 0x00000000e7100000| 0%| F| |TAMS 0x00000000e7000000, 0x00000000e7000000| Untracked +| 113|0x00000000e7100000, 0x00000000e7100000, 0x00000000e7200000| 0%| F| |TAMS 0x00000000e7100000, 0x00000000e7100000| Untracked +| 114|0x00000000e7200000, 0x00000000e7200000, 0x00000000e7300000| 0%| F| |TAMS 0x00000000e7200000, 0x00000000e7200000| Untracked +| 115|0x00000000e7300000, 0x00000000e7300000, 0x00000000e7400000| 0%| F| |TAMS 0x00000000e7300000, 0x00000000e7300000| Untracked +| 116|0x00000000e7400000, 0x00000000e7400000, 0x00000000e7500000| 0%| F| |TAMS 0x00000000e7400000, 0x00000000e7400000| Untracked +| 117|0x00000000e7500000, 0x00000000e7500000, 0x00000000e7600000| 0%| F| |TAMS 0x00000000e7500000, 0x00000000e7500000| Untracked +| 118|0x00000000e7600000, 0x00000000e7600000, 0x00000000e7700000| 0%| F| |TAMS 0x00000000e7600000, 0x00000000e7600000| Untracked +| 119|0x00000000e7700000, 0x00000000e7700000, 0x00000000e7800000| 0%| F| |TAMS 0x00000000e7700000, 0x00000000e7700000| Untracked +| 120|0x00000000e7800000, 0x00000000e7800000, 0x00000000e7900000| 0%| F| |TAMS 0x00000000e7800000, 0x00000000e7800000| Untracked +| 121|0x00000000e7900000, 0x00000000e7900000, 0x00000000e7a00000| 0%| F| |TAMS 0x00000000e7900000, 0x00000000e7900000| Untracked +| 122|0x00000000e7a00000, 0x00000000e7a00000, 0x00000000e7b00000| 0%| F| |TAMS 0x00000000e7a00000, 0x00000000e7a00000| Untracked +| 123|0x00000000e7b00000, 0x00000000e7b00000, 0x00000000e7c00000| 0%| F| |TAMS 0x00000000e7b00000, 0x00000000e7b00000| Untracked +| 124|0x00000000e7c00000, 0x00000000e7c00000, 0x00000000e7d00000| 0%| F| |TAMS 0x00000000e7c00000, 0x00000000e7c00000| Untracked +| 125|0x00000000e7d00000, 0x00000000e7d00000, 0x00000000e7e00000| 0%| F| |TAMS 0x00000000e7d00000, 0x00000000e7d00000| Untracked +| 126|0x00000000e7e00000, 0x00000000e7e00000, 0x00000000e7f00000| 0%| F| |TAMS 0x00000000e7e00000, 0x00000000e7e00000| Untracked +| 127|0x00000000e7f00000, 0x00000000e7f00000, 0x00000000e8000000| 0%| F| |TAMS 0x00000000e7f00000, 0x00000000e7f00000| Untracked +| 128|0x00000000e8000000, 0x00000000e8000000, 0x00000000e8100000| 0%| F| |TAMS 0x00000000e8000000, 0x00000000e8000000| Untracked +| 129|0x00000000e8100000, 0x00000000e8100000, 0x00000000e8200000| 0%| F| |TAMS 0x00000000e8100000, 0x00000000e8100000| Untracked +| 130|0x00000000e8200000, 0x00000000e8200000, 0x00000000e8300000| 0%| F| |TAMS 0x00000000e8200000, 0x00000000e8200000| Untracked +| 131|0x00000000e8300000, 0x00000000e8300000, 0x00000000e8400000| 0%| F| |TAMS 0x00000000e8300000, 0x00000000e8300000| Untracked +| 132|0x00000000e8400000, 0x00000000e8400000, 0x00000000e8500000| 0%| F| |TAMS 0x00000000e8400000, 0x00000000e8400000| Untracked +| 133|0x00000000e8500000, 0x00000000e8500000, 0x00000000e8600000| 0%| F| |TAMS 0x00000000e8500000, 0x00000000e8500000| Untracked +| 134|0x00000000e8600000, 0x00000000e8600000, 0x00000000e8700000| 0%| F| |TAMS 0x00000000e8600000, 0x00000000e8600000| Untracked +| 135|0x00000000e8700000, 0x00000000e8700000, 0x00000000e8800000| 0%| F| |TAMS 0x00000000e8700000, 0x00000000e8700000| Untracked +| 136|0x00000000e8800000, 0x00000000e8800000, 0x00000000e8900000| 0%| F| |TAMS 0x00000000e8800000, 0x00000000e8800000| Untracked +| 137|0x00000000e8900000, 0x00000000e8900000, 0x00000000e8a00000| 0%| F| |TAMS 0x00000000e8900000, 0x00000000e8900000| Untracked +| 138|0x00000000e8a00000, 0x00000000e8a00000, 0x00000000e8b00000| 0%| F| |TAMS 0x00000000e8a00000, 0x00000000e8a00000| Untracked +| 139|0x00000000e8b00000, 0x00000000e8b00000, 0x00000000e8c00000| 0%| F| |TAMS 0x00000000e8b00000, 0x00000000e8b00000| Untracked +| 140|0x00000000e8c00000, 0x00000000e8c00000, 0x00000000e8d00000| 0%| F| |TAMS 0x00000000e8c00000, 0x00000000e8c00000| Untracked +| 141|0x00000000e8d00000, 0x00000000e8d00000, 0x00000000e8e00000| 0%| F| |TAMS 0x00000000e8d00000, 0x00000000e8d00000| Untracked +| 142|0x00000000e8e00000, 0x00000000e8e00000, 0x00000000e8f00000| 0%| F| |TAMS 0x00000000e8e00000, 0x00000000e8e00000| Untracked +| 143|0x00000000e8f00000, 0x00000000e8f00000, 0x00000000e9000000| 0%| F| |TAMS 0x00000000e8f00000, 0x00000000e8f00000| Untracked +| 144|0x00000000e9000000, 0x00000000e9000000, 0x00000000e9100000| 0%| F| |TAMS 0x00000000e9000000, 0x00000000e9000000| Untracked +| 145|0x00000000e9100000, 0x00000000e9100000, 0x00000000e9200000| 0%| F| |TAMS 0x00000000e9100000, 0x00000000e9100000| Untracked +| 146|0x00000000e9200000, 0x00000000e9200000, 0x00000000e9300000| 0%| F| |TAMS 0x00000000e9200000, 0x00000000e9200000| Untracked +| 147|0x00000000e9300000, 0x00000000e9300000, 0x00000000e9400000| 0%| F| |TAMS 0x00000000e9300000, 0x00000000e9300000| Untracked +| 148|0x00000000e9400000, 0x00000000e9400000, 0x00000000e9500000| 0%| F| |TAMS 0x00000000e9400000, 0x00000000e9400000| Untracked +| 149|0x00000000e9500000, 0x00000000e9500000, 0x00000000e9600000| 0%| F| |TAMS 0x00000000e9500000, 0x00000000e9500000| Untracked +| 150|0x00000000e9600000, 0x00000000e9600000, 0x00000000e9700000| 0%| F| |TAMS 0x00000000e9600000, 0x00000000e9600000| Untracked +| 151|0x00000000e9700000, 0x00000000e9700000, 0x00000000e9800000| 0%| F| |TAMS 0x00000000e9700000, 0x00000000e9700000| Untracked +| 152|0x00000000e9800000, 0x00000000e9800000, 0x00000000e9900000| 0%| F| |TAMS 0x00000000e9800000, 0x00000000e9800000| Untracked +| 153|0x00000000e9900000, 0x00000000e9900000, 0x00000000e9a00000| 0%| F| |TAMS 0x00000000e9900000, 0x00000000e9900000| Untracked +| 154|0x00000000e9a00000, 0x00000000e9a00000, 0x00000000e9b00000| 0%| F| |TAMS 0x00000000e9a00000, 0x00000000e9a00000| Untracked +| 155|0x00000000e9b00000, 0x00000000e9b00000, 0x00000000e9c00000| 0%| F| |TAMS 0x00000000e9b00000, 0x00000000e9b00000| Untracked +| 156|0x00000000e9c00000, 0x00000000e9c00000, 0x00000000e9d00000| 0%| F| |TAMS 0x00000000e9c00000, 0x00000000e9c00000| Untracked +| 157|0x00000000e9d00000, 0x00000000e9d00000, 0x00000000e9e00000| 0%| F| |TAMS 0x00000000e9d00000, 0x00000000e9d00000| Untracked +| 158|0x00000000e9e00000, 0x00000000e9e00000, 0x00000000e9f00000| 0%| F| |TAMS 0x00000000e9e00000, 0x00000000e9e00000| Untracked +| 159|0x00000000e9f00000, 0x00000000e9f00000, 0x00000000ea000000| 0%| F| |TAMS 0x00000000e9f00000, 0x00000000e9f00000| Untracked +| 160|0x00000000ea000000, 0x00000000ea000000, 0x00000000ea100000| 0%| F| |TAMS 0x00000000ea000000, 0x00000000ea000000| Untracked +| 161|0x00000000ea100000, 0x00000000ea100000, 0x00000000ea200000| 0%| F| |TAMS 0x00000000ea100000, 0x00000000ea100000| Untracked +| 162|0x00000000ea200000, 0x00000000ea200000, 0x00000000ea300000| 0%| F| |TAMS 0x00000000ea200000, 0x00000000ea200000| Untracked +| 163|0x00000000ea300000, 0x00000000ea300000, 0x00000000ea400000| 0%| F| |TAMS 0x00000000ea300000, 0x00000000ea300000| Untracked +| 164|0x00000000ea400000, 0x00000000ea400000, 0x00000000ea500000| 0%| F| |TAMS 0x00000000ea400000, 0x00000000ea400000| Untracked +| 165|0x00000000ea500000, 0x00000000ea500000, 0x00000000ea600000| 0%| F| |TAMS 0x00000000ea500000, 0x00000000ea500000| Untracked +| 166|0x00000000ea600000, 0x00000000ea600000, 0x00000000ea700000| 0%| F| |TAMS 0x00000000ea600000, 0x00000000ea600000| Untracked +| 167|0x00000000ea700000, 0x00000000ea700000, 0x00000000ea800000| 0%| F| |TAMS 0x00000000ea700000, 0x00000000ea700000| Untracked +| 168|0x00000000ea800000, 0x00000000ea800000, 0x00000000ea900000| 0%| F| |TAMS 0x00000000ea800000, 0x00000000ea800000| Untracked +| 169|0x00000000ea900000, 0x00000000ea900000, 0x00000000eaa00000| 0%| F| |TAMS 0x00000000ea900000, 0x00000000ea900000| Untracked +| 170|0x00000000eaa00000, 0x00000000eaa00000, 0x00000000eab00000| 0%| F| |TAMS 0x00000000eaa00000, 0x00000000eaa00000| Untracked +| 171|0x00000000eab00000, 0x00000000eab00000, 0x00000000eac00000| 0%| F| |TAMS 0x00000000eab00000, 0x00000000eab00000| Untracked +| 172|0x00000000eac00000, 0x00000000eac00000, 0x00000000ead00000| 0%| F| |TAMS 0x00000000eac00000, 0x00000000eac00000| Untracked +| 173|0x00000000ead00000, 0x00000000ead00000, 0x00000000eae00000| 0%| F| |TAMS 0x00000000ead00000, 0x00000000ead00000| Untracked +| 174|0x00000000eae00000, 0x00000000eae00000, 0x00000000eaf00000| 0%| F| |TAMS 0x00000000eae00000, 0x00000000eae00000| Untracked +| 175|0x00000000eaf00000, 0x00000000eaf00000, 0x00000000eb000000| 0%| F| |TAMS 0x00000000eaf00000, 0x00000000eaf00000| Untracked +| 176|0x00000000eb000000, 0x00000000eb000000, 0x00000000eb100000| 0%| F| |TAMS 0x00000000eb000000, 0x00000000eb000000| Untracked +| 177|0x00000000eb100000, 0x00000000eb100000, 0x00000000eb200000| 0%| F| |TAMS 0x00000000eb100000, 0x00000000eb100000| Untracked +| 178|0x00000000eb200000, 0x00000000eb200000, 0x00000000eb300000| 0%| F| |TAMS 0x00000000eb200000, 0x00000000eb200000| Untracked +| 179|0x00000000eb300000, 0x00000000eb300000, 0x00000000eb400000| 0%| F| |TAMS 0x00000000eb300000, 0x00000000eb300000| Untracked +| 180|0x00000000eb400000, 0x00000000eb400000, 0x00000000eb500000| 0%| F| |TAMS 0x00000000eb400000, 0x00000000eb400000| Untracked +| 181|0x00000000eb500000, 0x00000000eb500000, 0x00000000eb600000| 0%| F| |TAMS 0x00000000eb500000, 0x00000000eb500000| Untracked +| 182|0x00000000eb600000, 0x00000000eb600000, 0x00000000eb700000| 0%| F| |TAMS 0x00000000eb600000, 0x00000000eb600000| Untracked +| 183|0x00000000eb700000, 0x00000000eb700000, 0x00000000eb800000| 0%| F| |TAMS 0x00000000eb700000, 0x00000000eb700000| Untracked +| 184|0x00000000eb800000, 0x00000000eb800000, 0x00000000eb900000| 0%| F| |TAMS 0x00000000eb800000, 0x00000000eb800000| Untracked +| 185|0x00000000eb900000, 0x00000000eb900000, 0x00000000eba00000| 0%| F| |TAMS 0x00000000eb900000, 0x00000000eb900000| Untracked +| 186|0x00000000eba00000, 0x00000000eba00000, 0x00000000ebb00000| 0%| F| |TAMS 0x00000000eba00000, 0x00000000eba00000| Untracked +| 187|0x00000000ebb00000, 0x00000000ebb00000, 0x00000000ebc00000| 0%| F| |TAMS 0x00000000ebb00000, 0x00000000ebb00000| Untracked +| 188|0x00000000ebc00000, 0x00000000ebc00000, 0x00000000ebd00000| 0%| F| |TAMS 0x00000000ebc00000, 0x00000000ebc00000| Untracked +| 189|0x00000000ebd00000, 0x00000000ebd00000, 0x00000000ebe00000| 0%| F| |TAMS 0x00000000ebd00000, 0x00000000ebd00000| Untracked +| 190|0x00000000ebe00000, 0x00000000ebe00000, 0x00000000ebf00000| 0%| F| |TAMS 0x00000000ebe00000, 0x00000000ebe00000| Untracked +| 191|0x00000000ebf00000, 0x00000000ebf00000, 0x00000000ec000000| 0%| F| |TAMS 0x00000000ebf00000, 0x00000000ebf00000| Untracked +| 192|0x00000000ec000000, 0x00000000ec000000, 0x00000000ec100000| 0%| F| |TAMS 0x00000000ec000000, 0x00000000ec000000| Untracked +| 193|0x00000000ec100000, 0x00000000ec100000, 0x00000000ec200000| 0%| F| |TAMS 0x00000000ec100000, 0x00000000ec100000| Untracked +| 194|0x00000000ec200000, 0x00000000ec200000, 0x00000000ec300000| 0%| F| |TAMS 0x00000000ec200000, 0x00000000ec200000| Untracked +| 195|0x00000000ec300000, 0x00000000ec300000, 0x00000000ec400000| 0%| F| |TAMS 0x00000000ec300000, 0x00000000ec300000| Untracked +| 196|0x00000000ec400000, 0x00000000ec400000, 0x00000000ec500000| 0%| F| |TAMS 0x00000000ec400000, 0x00000000ec400000| Untracked +| 197|0x00000000ec500000, 0x00000000ec500000, 0x00000000ec600000| 0%| F| |TAMS 0x00000000ec500000, 0x00000000ec500000| Untracked +| 198|0x00000000ec600000, 0x00000000ec600000, 0x00000000ec700000| 0%| F| |TAMS 0x00000000ec600000, 0x00000000ec600000| Untracked +| 199|0x00000000ec700000, 0x00000000ec700000, 0x00000000ec800000| 0%| F| |TAMS 0x00000000ec700000, 0x00000000ec700000| Untracked +| 200|0x00000000ec800000, 0x00000000ec800000, 0x00000000ec900000| 0%| F| |TAMS 0x00000000ec800000, 0x00000000ec800000| Untracked +| 201|0x00000000ec900000, 0x00000000ec900000, 0x00000000eca00000| 0%| F| |TAMS 0x00000000ec900000, 0x00000000ec900000| Untracked +| 202|0x00000000eca00000, 0x00000000eca00000, 0x00000000ecb00000| 0%| F| |TAMS 0x00000000eca00000, 0x00000000eca00000| Untracked +| 203|0x00000000ecb00000, 0x00000000ecb00000, 0x00000000ecc00000| 0%| F| |TAMS 0x00000000ecb00000, 0x00000000ecb00000| Untracked +| 204|0x00000000ecc00000, 0x00000000ecc00000, 0x00000000ecd00000| 0%| F| |TAMS 0x00000000ecc00000, 0x00000000ecc00000| Untracked +| 205|0x00000000ecd00000, 0x00000000ecd00000, 0x00000000ece00000| 0%| F| |TAMS 0x00000000ecd00000, 0x00000000ecd00000| Untracked +| 206|0x00000000ece00000, 0x00000000ece00000, 0x00000000ecf00000| 0%| F| |TAMS 0x00000000ece00000, 0x00000000ece00000| Untracked +| 207|0x00000000ecf00000, 0x00000000ecf00000, 0x00000000ed000000| 0%| F| |TAMS 0x00000000ecf00000, 0x00000000ecf00000| Untracked +| 208|0x00000000ed000000, 0x00000000ed000000, 0x00000000ed100000| 0%| F| |TAMS 0x00000000ed000000, 0x00000000ed000000| Untracked +| 209|0x00000000ed100000, 0x00000000ed100000, 0x00000000ed200000| 0%| F| |TAMS 0x00000000ed100000, 0x00000000ed100000| Untracked +| 210|0x00000000ed200000, 0x00000000ed200000, 0x00000000ed300000| 0%| F| |TAMS 0x00000000ed200000, 0x00000000ed200000| Untracked +| 211|0x00000000ed300000, 0x00000000ed300000, 0x00000000ed400000| 0%| F| |TAMS 0x00000000ed300000, 0x00000000ed300000| Untracked +| 212|0x00000000ed400000, 0x00000000ed400000, 0x00000000ed500000| 0%| F| |TAMS 0x00000000ed400000, 0x00000000ed400000| Untracked +| 213|0x00000000ed500000, 0x00000000ed500000, 0x00000000ed600000| 0%| F| |TAMS 0x00000000ed500000, 0x00000000ed500000| Untracked +| 214|0x00000000ed600000, 0x00000000ed600000, 0x00000000ed700000| 0%| F| |TAMS 0x00000000ed600000, 0x00000000ed600000| Untracked +| 215|0x00000000ed700000, 0x00000000ed700000, 0x00000000ed800000| 0%| F| |TAMS 0x00000000ed700000, 0x00000000ed700000| Untracked +| 216|0x00000000ed800000, 0x00000000ed800000, 0x00000000ed900000| 0%| F| |TAMS 0x00000000ed800000, 0x00000000ed800000| Untracked +| 217|0x00000000ed900000, 0x00000000ed900000, 0x00000000eda00000| 0%| F| |TAMS 0x00000000ed900000, 0x00000000ed900000| Untracked +| 218|0x00000000eda00000, 0x00000000eda00000, 0x00000000edb00000| 0%| F| |TAMS 0x00000000eda00000, 0x00000000eda00000| Untracked +| 219|0x00000000edb00000, 0x00000000edb83598, 0x00000000edc00000| 51%| E| |TAMS 0x00000000edb00000, 0x00000000edb00000| Complete +| 220|0x00000000edc00000, 0x00000000edd00000, 0x00000000edd00000|100%| E|CS|TAMS 0x00000000edc00000, 0x00000000edc00000| Complete +| 221|0x00000000edd00000, 0x00000000ede00000, 0x00000000ede00000|100%| E|CS|TAMS 0x00000000edd00000, 0x00000000edd00000| Complete +| 222|0x00000000ede00000, 0x00000000edf00000, 0x00000000edf00000|100%| E|CS|TAMS 0x00000000ede00000, 0x00000000ede00000| Complete +| 223|0x00000000edf00000, 0x00000000ee000000, 0x00000000ee000000|100%| E|CS|TAMS 0x00000000edf00000, 0x00000000edf00000| Complete +| 224|0x00000000ee000000, 0x00000000ee100000, 0x00000000ee100000|100%| E|CS|TAMS 0x00000000ee000000, 0x00000000ee000000| Complete +| 225|0x00000000ee100000, 0x00000000ee200000, 0x00000000ee200000|100%| E|CS|TAMS 0x00000000ee100000, 0x00000000ee100000| Complete +| 226|0x00000000ee200000, 0x00000000ee300000, 0x00000000ee300000|100%| E|CS|TAMS 0x00000000ee200000, 0x00000000ee200000| Complete +| 227|0x00000000ee300000, 0x00000000ee400000, 0x00000000ee400000|100%| E|CS|TAMS 0x00000000ee300000, 0x00000000ee300000| Complete +| 228|0x00000000ee400000, 0x00000000ee500000, 0x00000000ee500000|100%| E|CS|TAMS 0x00000000ee400000, 0x00000000ee400000| Complete +| 229|0x00000000ee500000, 0x00000000ee600000, 0x00000000ee600000|100%| E|CS|TAMS 0x00000000ee500000, 0x00000000ee500000| Complete +| 230|0x00000000ee600000, 0x00000000ee700000, 0x00000000ee700000|100%| E|CS|TAMS 0x00000000ee600000, 0x00000000ee600000| Complete +| 231|0x00000000ee700000, 0x00000000ee800000, 0x00000000ee800000|100%| E|CS|TAMS 0x00000000ee700000, 0x00000000ee700000| Complete +| 232|0x00000000ee800000, 0x00000000ee900000, 0x00000000ee900000|100%| E|CS|TAMS 0x00000000ee800000, 0x00000000ee800000| Complete +| 233|0x00000000ee900000, 0x00000000eea00000, 0x00000000eea00000|100%| E|CS|TAMS 0x00000000ee900000, 0x00000000ee900000| Complete +| 234|0x00000000eea00000, 0x00000000eeb00000, 0x00000000eeb00000|100%| E|CS|TAMS 0x00000000eea00000, 0x00000000eea00000| Complete +| 235|0x00000000eeb00000, 0x00000000eec00000, 0x00000000eec00000|100%| E|CS|TAMS 0x00000000eeb00000, 0x00000000eeb00000| Complete +| 236|0x00000000eec00000, 0x00000000eed00000, 0x00000000eed00000|100%| E|CS|TAMS 0x00000000eec00000, 0x00000000eec00000| Complete +| 237|0x00000000eed00000, 0x00000000eee00000, 0x00000000eee00000|100%| E|CS|TAMS 0x00000000eed00000, 0x00000000eed00000| Complete +| 238|0x00000000eee00000, 0x00000000eef00000, 0x00000000eef00000|100%| E|CS|TAMS 0x00000000eee00000, 0x00000000eee00000| Complete +| 239|0x00000000eef00000, 0x00000000ef000000, 0x00000000ef000000|100%| E|CS|TAMS 0x00000000eef00000, 0x00000000eef00000| Complete +| 240|0x00000000ef000000, 0x00000000ef100000, 0x00000000ef100000|100%| E|CS|TAMS 0x00000000ef000000, 0x00000000ef000000| Complete +| 241|0x00000000ef100000, 0x00000000ef200000, 0x00000000ef200000|100%| E|CS|TAMS 0x00000000ef100000, 0x00000000ef100000| Complete +| 242|0x00000000ef200000, 0x00000000ef300000, 0x00000000ef300000|100%| E|CS|TAMS 0x00000000ef200000, 0x00000000ef200000| Complete +| 243|0x00000000ef300000, 0x00000000ef400000, 0x00000000ef400000|100%| E|CS|TAMS 0x00000000ef300000, 0x00000000ef300000| Complete +| 244|0x00000000ef400000, 0x00000000ef500000, 0x00000000ef500000|100%| E|CS|TAMS 0x00000000ef400000, 0x00000000ef400000| Complete +| 245|0x00000000ef500000, 0x00000000ef600000, 0x00000000ef600000|100%| E|CS|TAMS 0x00000000ef500000, 0x00000000ef500000| Complete +| 246|0x00000000ef600000, 0x00000000ef700000, 0x00000000ef700000|100%| E|CS|TAMS 0x00000000ef600000, 0x00000000ef600000| Complete +| 247|0x00000000ef700000, 0x00000000ef800000, 0x00000000ef800000|100%| E|CS|TAMS 0x00000000ef700000, 0x00000000ef700000| Complete +| 248|0x00000000ef800000, 0x00000000ef900000, 0x00000000ef900000|100%| E|CS|TAMS 0x00000000ef800000, 0x00000000ef800000| Complete +| 249|0x00000000ef900000, 0x00000000efa00000, 0x00000000efa00000|100%| E|CS|TAMS 0x00000000ef900000, 0x00000000ef900000| Complete +| 250|0x00000000efa00000, 0x00000000efb00000, 0x00000000efb00000|100%| E|CS|TAMS 0x00000000efa00000, 0x00000000efa00000| Complete +| 251|0x00000000efb00000, 0x00000000efc00000, 0x00000000efc00000|100%| E|CS|TAMS 0x00000000efb00000, 0x00000000efb00000| Complete +| 252|0x00000000efc00000, 0x00000000efd00000, 0x00000000efd00000|100%| E|CS|TAMS 0x00000000efc00000, 0x00000000efc00000| Complete +| 253|0x00000000efd00000, 0x00000000efe00000, 0x00000000efe00000|100%| E|CS|TAMS 0x00000000efd00000, 0x00000000efd00000| Complete +| 254|0x00000000efe00000, 0x00000000eff00000, 0x00000000eff00000|100%| E|CS|TAMS 0x00000000efe00000, 0x00000000efe00000| Complete +| 255|0x00000000eff00000, 0x00000000f0000000, 0x00000000f0000000|100%| E|CS|TAMS 0x00000000eff00000, 0x00000000eff00000| Complete + +Card table byte_map: [0x000001b86f3a0000,0x000001b86f4a0000] _byte_map_base: 0x000001b86eca0000 + +Marking Bits (Prev, Next): (CMBitMap*) 0x000001b8583e85b8, (CMBitMap*) 0x000001b8583e85f0 + Prev Bits: [0x000001b86f5a0000, 0x000001b86fda0000) + Next Bits: [0x000001b86fda0000, 0x000001b8705a0000) + +Polling page: 0x000001b857b30000 + +Metaspace: + +Usage: + Non-class: 46.28 MB capacity, 45.24 MB ( 98%) used, 905.83 KB ( 2%) free+waste, 158.81 KB ( <1%) overhead. + Class: 7.52 MB capacity, 6.90 MB ( 92%) used, 555.60 KB ( 7%) free+waste, 80.38 KB ( 1%) overhead. + Both: 53.80 MB capacity, 52.14 MB ( 97%) used, 1.43 MB ( 3%) free+waste, 239.19 KB ( <1%) overhead. + +Virtual space: + Non-class space: 48.00 MB reserved, 46.50 MB ( 97%) committed + Class space: 248.00 MB reserved, 7.63 MB ( 3%) committed + Both: 296.00 MB reserved, 54.13 MB ( 18%) committed + +Chunk freelists: + Non-Class: 3.75 KB + Class: 1.63 KB + Both: 5.38 KB + +CodeHeap 'non-profiled nmethods': size=119168Kb used=3560Kb max_used=3560Kb free=115607Kb + bounds [0x000001b8675c0000, 0x000001b867940000, 0x000001b86ea20000] +CodeHeap 'profiled nmethods': size=119168Kb used=11940Kb max_used=11940Kb free=107227Kb + bounds [0x000001b860160000, 0x000001b860d10000, 0x000001b8675c0000] +CodeHeap 'non-nmethods': size=7424Kb used=3933Kb max_used=3989Kb free=3490Kb + bounds [0x000001b85fa20000, 0x000001b85fe20000, 0x000001b860160000] + total_blobs=6158 nmethods=5345 adapters=721 + compilation: enabled + stopped_count=0, restarted_count=0 + full_count=0 + +Compilation events (10 events): +Event: 3.417 Thread 0x000001b8742ba000 5344 s! 3 org.codehaus.groovy.runtime.callsite.CallSiteClassLoader::loadClass (44 bytes) +Event: 3.418 Thread 0x000001b873e6c800 nmethod 5343 0x000001b860cf8890 code [0x000001b860cf8a60, 0x000001b860cf8e08] +Event: 3.418 Thread 0x000001b8742ba000 nmethod 5344 0x000001b860cf8f90 code [0x000001b860cf92a0, 0x000001b860cfaa18] +Event: 3.419 Thread 0x000001b8742ba000 5348 3 groovyjarjarasm.asm.Type::appendDescriptor (185 bytes) +Event: 3.419 Thread 0x000001b874483800 5346 3 org.codehaus.groovy.classgen.asm.BytecodeHelper::getTypeDescription (5 bytes) +Event: 3.419 Thread 0x000001b87358e000 5347 3 groovyjarjarasm.asm.Type::getDescriptor (18 bytes) +Event: 3.419 Thread 0x000001b873e6c800 5349 3 groovyjarjarasm.asm.MethodWriter::computeAllFrames (510 bytes) +Event: 3.419 Thread 0x000001b874483800 nmethod 5346 0x000001b860cfb110 code [0x000001b860cfb2e0, 0x000001b860cfb588] +Event: 3.419 Thread 0x000001b87358e000 nmethod 5347 0x000001b860cfb710 code [0x000001b860cfb920, 0x000001b860cfbf38] +Event: 3.420 Thread 0x000001b8742ba000 nmethod 5348 0x000001b860cfc190 code [0x000001b860cfc460, 0x000001b860cfd058] + +GC Heap History (10 events): +Event: 1.284 GC heap before +{Heap before GC invocations=1 (full 0): + garbage-first heap total 262144K, used 113249K [0x00000000e0000000, 0x0000000100000000) + region size 1024K, 104 young (106496K), 3 survivors (3072K) + Metaspace used 20633K, capacity 21093K, committed 21248K, reserved 272384K + class space used 2536K, capacity 2723K, committed 2816K, reserved 253952K +} +Event: 1.289 GC heap after +{Heap after GC invocations=2 (full 0): + garbage-first heap total 262144K, used 17312K [0x00000000e0000000, 0x0000000100000000) + region size 1024K, 11 young (11264K), 11 survivors (11264K) + Metaspace used 20633K, capacity 21093K, committed 21248K, reserved 272384K + class space used 2536K, capacity 2723K, committed 2816K, reserved 253952K +} +Event: 1.581 GC heap before +{Heap before GC invocations=3 (full 0): + garbage-first heap total 262144K, used 74656K [0x00000000e0000000, 0x0000000100000000) + region size 1024K, 67 young (68608K), 11 survivors (11264K) + Metaspace used 26455K, capacity 27066K, committed 27264K, reserved 278528K + class space used 3464K, capacity 3703K, committed 3712K, reserved 253952K +} +Event: 1.585 GC heap after +{Heap after GC invocations=4 (full 0): + garbage-first heap total 262144K, used 20078K [0x00000000e0000000, 0x0000000100000000) + region size 1024K, 3 young (3072K), 3 survivors (3072K) + Metaspace used 26455K, capacity 27066K, committed 27264K, reserved 278528K + class space used 3464K, capacity 3703K, committed 3712K, reserved 253952K +} +Event: 1.975 GC heap before +{Heap before GC invocations=4 (full 0): + garbage-first heap total 262144K, used 79470K [0x00000000e0000000, 0x0000000100000000) + region size 1024K, 62 young (63488K), 3 survivors (3072K) + Metaspace used 34911K, capacity 35685K, committed 35840K, reserved 286720K + class space used 4566K, capacity 4900K, committed 4992K, reserved 253952K +} +Event: 1.979 GC heap after +{Heap after GC invocations=5 (full 0): + garbage-first heap total 262144K, used 22968K [0x00000000e0000000, 0x0000000100000000) + region size 1024K, 6 young (6144K), 6 survivors (6144K) + Metaspace used 34911K, capacity 35685K, committed 35840K, reserved 286720K + class space used 4566K, capacity 4900K, committed 4992K, reserved 253952K +} +Event: 2.597 GC heap before +{Heap before GC invocations=6 (full 0): + garbage-first heap total 262144K, used 144824K [0x00000000e0000000, 0x0000000100000000) + region size 1024K, 121 young (123904K), 6 survivors (6144K) + Metaspace used 45413K, capacity 46498K, committed 46720K, reserved 294912K + class space used 5832K, capacity 6244K, committed 6272K, reserved 253952K +} +Event: 2.602 GC heap after +{Heap after GC invocations=7 (full 0): + garbage-first heap total 262144K, used 29510K [0x00000000e0000000, 0x0000000100000000) + region size 1024K, 12 young (12288K), 12 survivors (12288K) + Metaspace used 45413K, capacity 46498K, committed 46720K, reserved 294912K + class space used 5832K, capacity 6244K, committed 6272K, reserved 253952K +} +Event: 3.288 GC heap before +{Heap before GC invocations=7 (full 0): + garbage-first heap total 262144K, used 173894K [0x00000000e0000000, 0x0000000100000000) + region size 1024K, 153 young (156672K), 12 survivors (12288K) + Metaspace used 52571K, capacity 54165K, committed 54400K, reserved 301056K + class space used 6937K, capacity 7520K, committed 7552K, reserved 253952K +} +Event: 3.298 GC heap after +{Heap after GC invocations=8 (full 0): + garbage-first heap total 262144K, used 38928K [0x00000000e0000000, 0x0000000100000000) + region size 1024K, 19 young (19456K), 19 survivors (19456K) + Metaspace used 52571K, capacity 54165K, committed 54400K, reserved 301056K + class space used 6937K, capacity 7520K, committed 7552K, reserved 253952K +} + +Deoptimization events (10 events): +Event: 3.342 Thread 0x000001b873ffc800 Uncommon trap: reason=bimorphic_or_optimized_type_check action=maybe_recompile pc=0x000001b86786c8a8 method=java.util.Arrays.binarySearch0([Ljava/lang/Object;IILjava/lang/Object;Ljava/util/Comparator;)I @ 48 c2 +Event: 3.342 Thread 0x000001b873ffc800 Uncommon trap: reason=bimorphic_or_optimized_type_check action=maybe_recompile pc=0x000001b867875354 method=java.util.Arrays.binarySearch0([Ljava/lang/Object;IILjava/lang/Object;Ljava/util/Comparator;)I @ 48 c2 +Event: 3.342 Thread 0x000001b873ffc800 Uncommon trap: reason=unstable_if action=reinterpret pc=0x000001b8678f611c method=groovy.lang.MetaClassImpl$1MOPIter.methodNameAction(Ljava/lang/Class;Lorg/codehaus/groovy/runtime/metaclass/MetaMethodIndex$Entry;)V @ 277 c2 +Event: 3.354 Thread 0x000001b873ffc800 Uncommon trap: reason=class_check action=maybe_recompile pc=0x000001b86779ef68 method=org.codehaus.groovy.reflection.ParameterTypes.getParametersTypes0()V @ 16 c2 +Event: 3.354 Thread 0x000001b873ffc800 Uncommon trap: reason=class_check action=maybe_recompile pc=0x000001b86779ef68 method=org.codehaus.groovy.reflection.ParameterTypes.getParametersTypes0()V @ 16 c2 +Event: 3.354 Thread 0x000001b873ffc800 Uncommon trap: reason=class_check action=maybe_recompile pc=0x000001b86779ef68 method=org.codehaus.groovy.reflection.ParameterTypes.getParametersTypes0()V @ 16 c2 +Event: 3.393 Thread 0x000001b873ffc800 Uncommon trap: reason=unstable_if action=reinterpret pc=0x000001b8677cf058 method=java.lang.ClassLoader.checkCerts(Ljava/lang/String;Ljava/security/CodeSource;)V @ 29 c2 +Event: 3.393 Thread 0x000001b873ffc800 Uncommon trap: reason=unstable_if action=reinterpret pc=0x000001b8677df694 method=java.lang.ClassLoader.postDefineClass(Ljava/lang/Class;Ljava/security/ProtectionDomain;)V @ 17 c2 +Event: 3.393 Thread 0x000001b873ffc800 Uncommon trap: reason=unstable_if action=reinterpret pc=0x000001b8678242f4 method=java.lang.ClassLoader.loadClass(Ljava/lang/String;Z)Ljava/lang/Class; @ 29 c2 +Event: 3.397 Thread 0x000001b873ffc800 Uncommon trap: reason=class_check action=make_not_entrant pc=0x000001b867922e3c method=java.util.ArrayList.toArray([Ljava/lang/Object;)[Ljava/lang/Object; @ 21 c2 + +Classes redefined (0 events): +No events + +Internal exceptions (10 events): +Event: 3.402 Thread 0x000001b873ffc800 Exception (0x00000000ee6c2d58) thrown at [./open/src/hotspot/share/classfile/systemDictionary.cpp, line 226] +Event: 3.402 Thread 0x000001b873ffc800 Exception (0x00000000ee6fecc8) thrown at [./open/src/hotspot/share/classfile/systemDictionary.cpp, line 226] +Event: 3.407 Thread 0x000001b873ffc800 Exception (0x00000000ee38eb00) thrown at [./open/src/hotspot/share/classfile/systemDictionary.cpp, line 226] +Event: 3.408 Thread 0x000001b873ffc800 Exception (0x00000000ee3c98f8) thrown at [./open/src/hotspot/share/classfile/systemDictionary.cpp, line 226] +Event: 3.408 Thread 0x000001b873ffc800 Exception (0x00000000ee204570) thrown at [./open/src/hotspot/share/classfile/systemDictionary.cpp, line 226] +Event: 3.409 Thread 0x000001b873ffc800 Exception (0x00000000ee24ee58) thrown at [./open/src/hotspot/share/classfile/systemDictionary.cpp, line 226] +Event: 3.412 Thread 0x000001b873ffc800 Exception (0x00000000ee1029c0) thrown at [./open/src/hotspot/share/classfile/systemDictionary.cpp, line 226] +Event: 3.412 Thread 0x000001b873ffc800 Exception (0x00000000ee13a6c8) thrown at [./open/src/hotspot/share/classfile/systemDictionary.cpp, line 226] +Event: 3.413 Thread 0x000001b873ffc800 Exception (0x00000000ee171da8) thrown at [./open/src/hotspot/share/classfile/systemDictionary.cpp, line 226] +Event: 3.415 Thread 0x000001b873ffc800 Exception (0x00000000ee1cd048) thrown at [./open/src/hotspot/share/classfile/systemDictionary.cpp, line 226] + +Events (10 events): +Event: 3.418 loading class com/github/jengelman/gradle/plugins/shadow/ShadowJavaPlugin$_configureShadowTask_closure3$_closure11 +Event: 3.418 loading class com/github/jengelman/gradle/plugins/shadow/ShadowJavaPlugin$_configureShadowTask_closure3$_closure11 done +Event: 3.418 loading class groovy/runtime/metaclass/com/github/jengelman/gradle/plugins/shadow/ShadowJavaPlugin$_configureShadowTask_closure3$_closure11MetaClass +Event: 3.418 loading class groovy/runtime/metaclass/com/github/jengelman/gradle/plugins/shadow/ShadowJavaPlugin$_configureShadowTask_closure3$_closure11MetaClass done +Event: 3.419 loading class org/gradle/util/internal/ConfigureUtil +Event: 3.419 loading class org/gradle/util/internal/ConfigureUtil done +Event: 3.420 loading class org/gradle/api/internal/notations/DependencyClassPathNotationConverter$1 +Event: 3.420 loading class org/gradle/api/internal/notations/DependencyClassPathNotationConverter$1 done +Event: 3.421 loading class org/gradle/api/internal/notations/DependencyClassPathNotationConverter$GeneratedFileCollection +Event: 3.421 loading class org/gradle/api/internal/notations/DependencyClassPathNotationConverter$GeneratedFileCollection done + + +Dynamic libraries: +0x00007ff6dd4c0000 - 0x00007ff6dd4cf000 C:\Program Files\Java\jdk-11.0.17\bin\java.exe +0x00007ffefe6d0000 - 0x00007ffefe8c8000 C:\Windows\SYSTEM32\ntdll.dll +0x00007ffefce00000 - 0x00007ffefcebf000 C:\Windows\System32\KERNEL32.DLL +0x00007ffefc0a0000 - 0x00007ffefc372000 C:\Windows\System32\KERNELBASE.dll +0x00007ffefc620000 - 0x00007ffefc720000 C:\Windows\System32\ucrtbase.dll +0x00007ffee9e40000 - 0x00007ffee9e55000 C:\Program Files\Java\jdk-11.0.17\bin\VCRUNTIME140.dll +0x00007ffee5260000 - 0x00007ffee5278000 C:\Program Files\Java\jdk-11.0.17\bin\jli.dll +0x00007ffefe5e0000 - 0x00007ffefe68e000 C:\Windows\System32\ADVAPI32.dll +0x00007ffefced0000 - 0x00007ffefcf6e000 C:\Windows\System32\msvcrt.dll +0x00007ffefe1e0000 - 0x00007ffefe27c000 C:\Windows\System32\sechost.dll +0x00007ffefcf90000 - 0x00007ffefd0b4000 C:\Windows\System32\RPCRT4.dll +0x00007ffefd0c0000 - 0x00007ffefd261000 C:\Windows\System32\USER32.dll +0x00007ffefbdd0000 - 0x00007ffefbdf2000 C:\Windows\System32\win32u.dll +0x00007ffefd4d0000 - 0x00007ffefd4fb000 C:\Windows\System32\GDI32.dll +0x00007ffefc3f0000 - 0x00007ffefc4ff000 C:\Windows\System32\gdi32full.dll +0x00007ffee5a70000 - 0x00007ffee5d0a000 C:\Windows\WinSxS\amd64_microsoft.windows.common-controls_6595b64144ccf1df_6.0.19041.1110_none_60b5254171f9507e\COMCTL32.dll +0x00007ffefc550000 - 0x00007ffefc5ed000 C:\Windows\System32\msvcp_win.dll +0x00007ffef2520000 - 0x00007ffef252a000 C:\Windows\SYSTEM32\VERSION.dll +0x00007ffefe070000 - 0x00007ffefe0a0000 C:\Windows\System32\IMM32.DLL +0x00007ffef44c0000 - 0x00007ffef46b6000 C:\Windows\system32\tmumh\20019\AddOn\8.55.0.1053\TmUmEvt64.dll +0x00007ffefdf10000 - 0x00007ffefdf18000 C:\Windows\System32\PSAPI.DLL +0x0000000067a30000 - 0x0000000067ba3000 C:\Windows\system32\tmumh\20019\TmMon\2.9.0.1043\tmmon64.dll +0x00007ffeb1070000 - 0x00007ffeb110b000 C:\Program Files\Java\jdk-11.0.17\bin\msvcp140.dll +0x00007ffe975c0000 - 0x00007ffe980da000 C:\Program Files\Java\jdk-11.0.17\bin\server\jvm.dll +0x00007ffef7570000 - 0x00007ffef7579000 C:\Windows\SYSTEM32\WSOCK32.dll +0x00007ffefe170000 - 0x00007ffefe1db000 C:\Windows\System32\WS2_32.dll +0x00007ffee2920000 - 0x00007ffee2947000 C:\Windows\SYSTEM32\WINMM.dll +0x00007ffefa5e0000 - 0x00007ffefa5f2000 C:\Windows\SYSTEM32\kernel.appcore.dll +0x00007ffef2730000 - 0x00007ffef2740000 C:\Program Files\Java\jdk-11.0.17\bin\verify.dll +0x00007ffef9b30000 - 0x00007ffef9d14000 C:\Windows\SYSTEM32\DBGHELP.DLL +0x00007ffeee600000 - 0x00007ffeee635000 C:\Windows\SYSTEM32\dbgcore.DLL +0x00007ffefbf60000 - 0x00007ffefbfe2000 C:\Windows\System32\bcryptPrimitives.dll +0x00007ffee4df0000 - 0x00007ffee4e18000 C:\Program Files\Java\jdk-11.0.17\bin\java.dll +0x00007ffeeb0d0000 - 0x00007ffeeb0da000 C:\Program Files\Java\jdk-11.0.17\bin\jimage.dll +0x00007ffee4db0000 - 0x00007ffee4dc6000 C:\Program Files\Java\jdk-11.0.17\bin\zip.dll +0x00007ffefd7c0000 - 0x00007ffefdf05000 C:\Windows\System32\SHELL32.dll +0x00007ffef9e30000 - 0x00007ffefa5c2000 C:\Windows\SYSTEM32\windows.storage.dll +0x00007ffefe280000 - 0x00007ffefe5d5000 C:\Windows\System32\combase.dll +0x00007ffefb750000 - 0x00007ffefb780000 C:\Windows\SYSTEM32\Wldp.dll +0x00007ffefd410000 - 0x00007ffefd4bd000 C:\Windows\System32\SHCORE.dll +0x00007ffefc930000 - 0x00007ffefc985000 C:\Windows\System32\shlwapi.dll +0x00007ffefbd10000 - 0x00007ffefbd2f000 C:\Windows\SYSTEM32\profapi.dll +0x00007ffee41f0000 - 0x00007ffee4209000 C:\Program Files\Java\jdk-11.0.17\bin\net.dll +0x00007ffef6360000 - 0x00007ffef646a000 C:\Windows\SYSTEM32\WINHTTP.dll +0x00007ffefb530000 - 0x00007ffefb59a000 C:\Windows\system32\mswsock.dll +0x00007ffee27f0000 - 0x00007ffee2802000 C:\Program Files\Java\jdk-11.0.17\bin\nio.dll +0x00007ffede5f0000 - 0x00007ffede617000 C:\Users\Chen Zi Han\.gradle\native\e1d6ef7f7dcc3fd88c89a11ec53ec762bb8ba0a96d01ffa2cd45eb1d1d8dd5c5\windows-amd64\native-platform.dll +0x00007ffea4190000 - 0x00007ffea42d4000 C:\Users\Chen Zi Han\.gradle\native\0d407fdbe67a94daf76414ababcb853783967236a71b16ec16e742cd7a986fd3\windows-amd64\native-platform-file-events.dll +0x00007ffeea300000 - 0x00007ffeea309000 C:\Program Files\Java\jdk-11.0.17\bin\management.dll +0x00007ffee59e0000 - 0x00007ffee59eb000 C:\Program Files\Java\jdk-11.0.17\bin\management_ext.dll +0x00007ffefb790000 - 0x00007ffefb7a8000 C:\Windows\SYSTEM32\CRYPTSP.dll +0x00007ffefae00000 - 0x00007ffefae34000 C:\Windows\system32\rsaenh.dll +0x00007ffefc5f0000 - 0x00007ffefc617000 C:\Windows\System32\bcrypt.dll +0x00007ffefbcd0000 - 0x00007ffefbcfe000 C:\Windows\SYSTEM32\USERENV.dll +0x00007ffefb6c0000 - 0x00007ffefb6cc000 C:\Windows\SYSTEM32\CRYPTBASE.dll +0x00007ffefb1f0000 - 0x00007ffefb22b000 C:\Windows\SYSTEM32\IPHLPAPI.DLL +0x00007ffefcec0000 - 0x00007ffefcec8000 C:\Windows\System32\NSI.dll +0x00007ffef4870000 - 0x00007ffef4887000 C:\Windows\SYSTEM32\dhcpcsvc6.DLL +0x00007ffef4850000 - 0x00007ffef486d000 C:\Windows\SYSTEM32\dhcpcsvc.DLL +0x00007ffefb230000 - 0x00007ffefb2fb000 C:\Windows\SYSTEM32\DNSAPI.dll + +dbghelp: loaded successfully - version: 4.0.5 - missing functions: none +symbol engine: initialized successfully - sym options: 0x614 - pdb path: .;C:\Program Files\Java\jdk-11.0.17\bin;C:\Windows\SYSTEM32;C:\Windows\WinSxS\amd64_microsoft.windows.common-controls_6595b64144ccf1df_6.0.19041.1110_none_60b5254171f9507e;C:\Windows\system32\tmumh\20019\AddOn\8.55.0.1053;C:\Windows\system32\tmumh\20019\TmMon\2.9.0.1043;C:\Program Files\Java\jdk-11.0.17\bin\server;C:\Users\Chen Zi Han\.gradle\native\e1d6ef7f7dcc3fd88c89a11ec53ec762bb8ba0a96d01ffa2cd45eb1d1d8dd5c5\windows-amd64;C:\Users\Chen Zi Han\.gradle\native\0d407fdbe67a94daf76414ababcb853783967236a71b16ec16e742cd7a986fd3\windows-amd64 + +VM Arguments: +jvm_args: --add-opens=java.base/java.util=ALL-UNNAMED --add-opens=java.base/java.lang=ALL-UNNAMED --add-opens=java.base/java.lang.invoke=ALL-UNNAMED --add-opens=java.base/java.util=ALL-UNNAMED --add-opens=java.prefs/java.util.prefs=ALL-UNNAMED --add-opens=java.prefs/java.util.prefs=ALL-UNNAMED --add-opens=java.base/java.nio.charset=ALL-UNNAMED --add-opens=java.base/java.net=ALL-UNNAMED --add-opens=java.base/java.util.concurrent.atomic=ALL-UNNAMED -XX:MaxMetaspaceSize=256m -XX:+HeapDumpOnOutOfMemoryError -Xms256m -Xmx512m -Dfile.encoding=GBK -Duser.country=SG -Duser.language=en -Duser.variant +java_command: org.gradle.launcher.daemon.bootstrap.GradleDaemon 7.4.2 +java_class_path (initial): C:\Users\Chen Zi Han\.gradle\wrapper\dists\gradle-7.4.2-bin\48ivgl02cpt2ed3fh9dbalvx8\gradle-7.4.2\lib\gradle-launcher-7.4.2.jar +Launcher Type: SUN_STANDARD + +[Global flags] + intx CICompilerCount = 12 {product} {ergonomic} + size_t CompressedClassSpaceSize = 260046848 {product} {ergonomic} + uint ConcGCThreads = 3 {product} {ergonomic} + uint G1ConcRefinementThreads = 13 {product} {ergonomic} + size_t G1HeapRegionSize = 1048576 {product} {ergonomic} + uintx GCDrainStackTargetSize = 64 {product} {ergonomic} + bool HeapDumpOnOutOfMemoryError = true {manageable} {command line} + size_t InitialHeapSize = 268435456 {product} {command line} + size_t MarkStackSize = 4194304 {product} {ergonomic} + size_t MaxHeapSize = 536870912 {product} {command line} + size_t MaxMetaspaceSize = 268435456 {product} {command line} + size_t MaxNewSize = 321912832 {product} {ergonomic} + size_t MinHeapDeltaBytes = 1048576 {product} {ergonomic} + uintx NonNMethodCodeHeapSize = 7594288 {pd product} {ergonomic} + uintx NonProfiledCodeHeapSize = 122031976 {pd product} {ergonomic} + uintx ProfiledCodeHeapSize = 122031976 {pd product} {ergonomic} + uintx ReservedCodeCacheSize = 251658240 {pd product} {ergonomic} + bool SegmentedCodeCache = true {product} {ergonomic} + bool UseCompressedClassPointers = true {lp64_product} {ergonomic} + bool UseCompressedOops = true {lp64_product} {ergonomic} + bool UseG1GC = true {product} {ergonomic} + bool UseLargePagesIndividualAllocation = false {pd product} {ergonomic} + +Logging: +Log output configuration: + #0: stdout all=warning uptime,level,tags + #1: stderr all=off uptime,level,tags + +Environment Variables: +JAVA_HOME=C:\Program Files\Java\jdk-18.0.1.1 +PATH=C:\Program Files\Common Files\Oracle\Java\javapath;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Windows\System32\OpenSSH\;C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common;C:\Program Files\NVIDIA Corporation\NVIDIA NvDLISR;E:\Notepad++;C:\Program Files\Java\jdk-18.0.1.1\bin;C:\Program Files\Azure Data Studio\bin;C:\Program Files\Microsoft SQL Server\150\Tools\Binn\;C:\Program Files\Java\jdk1.7.0_80\bin;E:\С³ÌÐò¿ª·¢\΢ÐÅweb¿ª·¢Õß¹¤¾ß\dll;E:\С³ÌÐò¿ª·¢\¿ª·¢;¾ß°²×°\΢ÐÅweb¿ª·¢Õß¹¤¾ß\dll;C:\Progr;; Files\Git\cmd;C:\Program Files\Git\cmd;C:\Users\Chen Zi Han\AppData\Local\Microsoft\WindowsApps;C:\Users\Chen Zi Han\AppData\Roaming\TinyTeX\bin\win32;C:\Program Files\Azure Data Studio\bin;E:\Microsoft VS Code\bin;C:\Users\Chen Zi Han\AppData\Local\GitHubDesktop\bin +USERNAME=Chen Zi Han +OS=Windows_NT +PROCESSOR_IDENTIFIER=Intel64 Family 6 Model 141 Stepping 1, GenuineIntel + + + +--------------- S Y S T E M --------------- + +OS: Windows 10 , 64 bit Build 19041 (10.0.19041.2546) +Hyper-V role detected + +CPU:total 16 (initial active 16) (8 cores per cpu, 2 threads per core) family 6 model 141 stepping 1 microcode 0x34, cmov, cx8, fxsr, mmx, sse, sse2, sse3, ssse3, sse4.1, sse4.2, popcnt, avx, avx2, aes, clmul, erms, 3dnowpref, lzcnt, ht, tsc, tscinvbit, bmi1, bmi2, adx, evex, sha, fma + +Memory: 4k page, system-wide physical 16122M (2321M free) +TotalPageFile size 26441M (AvailPageFile size 6M) +current process WorkingSet (physical memory assigned to process): 446M, peak: 451M +current process commit charge ("private bytes"): 565M, peak: 567M + +vm_info: Java HotSpot(TM) 64-Bit Server VM (11.0.17+10-LTS-269) for windows-amd64 JRE (11.0.17+10-LTS-269), built on Sep 13 2022 19:26:37 by "mach5one" with MS VC++ 15.9 (VS2017) + +END. diff --git a/replay_pid15356.log b/replay_pid15356.log new file mode 100644 index 0000000000..8f67cd332e --- /dev/null +++ b/replay_pid15356.log @@ -0,0 +1,8238 @@ +JvmtiExport can_access_local_variables 0 +JvmtiExport can_hotswap_or_post_breakpoint 0 +JvmtiExport can_post_on_exceptions 0 +# 230 ciObject found +instanceKlass org/gradle/api/internal/file/copy/DelegatingCopySpecInternal +instanceKlass org/gradle/api/internal/artifacts/ivyservice/moduleconverter/DefaultLocalComponentMetadataBuilder$NestedVariantIdentifier +instanceKlass org/gradle/api/internal/artifacts/dsl/ArtifactFile +instanceKlass org/gradle/api/internal/tasks/TaskDependencyInternal$1 +instanceKlass org/gradle/api/internal/artifacts/dsl/FileSystemPublishArtifact +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfigurationPublications$$Lambda$833 +instanceKlass org/gradle/api/plugins/JavaPlugin$$Lambda$832 +instanceKlass org/gradle/api/internal/artifacts/publish/DecoratingPublishArtifact$$Lambda$831 +instanceKlass org/gradle/api/internal/artifacts/publish/DecoratingPublishArtifact$$Lambda$830 +instanceKlass org/gradle/api/internal/file/collections/FileTreeAdapter$1 +instanceKlass org/gradle/api/internal/file/collections/ReproducibleDirectoryWalker +instanceKlass org/gradle/internal/nativeintegration/services/FileSystems +instanceKlass org/gradle/api/internal/file/collections/DefaultDirectoryWalker +instanceKlass org/gradle/api/internal/file/collections/DirectoryWalker +instanceKlass org/gradle/api/internal/file/collections/DirectoryFileTree +instanceKlass org/gradle/api/internal/file/collections/LocalFileTree +instanceKlass org/gradle/api/internal/file/collections/RandomAccessFileCollection +instanceKlass org/gradle/api/internal/file/collections/PatternFilterableFileTree +instanceKlass org/gradle/api/internal/file/CompositeFileCollection$$Lambda$829 +instanceKlass org/gradle/api/internal/tasks/compile/CompilationSourceDirs$SourceRoots +instanceKlass org/gradle/api/internal/tasks/compile/CompilationSourceDirs +instanceKlass org/gradle/api/internal/artifacts/publish/DecoratingPublishArtifact$$Lambda$828 +instanceKlass org/gradle/api/tasks/bundling/Tar$$Lambda$827 +instanceKlass org/gradle/api/distribution/plugins/DistributionPlugin$$Lambda$826 +instanceKlass org/gradle/api/internal/artifacts/publish/ArchivePublishArtifact$$Lambda$825 +instanceKlass org/gradle/api/internal/artifacts/publish/ArchivePublishArtifact$$Lambda$824 +instanceKlass org/gradle/api/internal/artifacts/publish/ArchivePublishArtifact$$Lambda$823 +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfiguration$$Lambda$822 +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfiguration$$Lambda$821 +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfiguration$$Lambda$820 +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfiguration$$Lambda$819 +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfiguration$$Lambda$818 +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfiguration$$Lambda$817 +instanceKlass org/gradle/internal/component/external/model/ProjectDerivedCapability +instanceKlass org/gradle/api/internal/provider/TransformBackedProvider$$Lambda$816 +instanceKlass org/gradle/jvm/toolchain/internal/DefaultJavaToolchainService$$Lambda$815 +instanceKlass org/gradle/api/plugins/JavaBasePlugin$$Lambda$814 +instanceKlass org/gradle/api/plugins/internal/JvmPluginsHelper$$Lambda$813 +instanceKlass org/gradle/api/plugins/JavaBasePlugin$$Lambda$812 +instanceKlass org/gradle/api/plugins/JavaBasePlugin$$Lambda$811 +instanceKlass org/gradle/api/plugins/JavaBasePlugin$$Lambda$810 +instanceKlass org/gradle/api/plugins/JavaBasePlugin$$Lambda$809 +instanceKlass org/gradle/api/plugins/JavaBasePlugin$$Lambda$808 +instanceKlass org/gradle/api/plugins/JavaBasePlugin$$Lambda$807 +instanceKlass org/gradle/api/tasks/incremental/IncrementalTaskInputs +instanceKlass org/gradle/api/internal/tasks/compile/CompilerForkUtils$$Lambda$806 +instanceKlass org/gradle/api/internal/tasks/compile/CompilerForkUtils +instanceKlass org/gradle/api/tasks/compile/JavaCompile$$Lambda$805 +instanceKlass org/gradle/api/tasks/compile/AbstractCompile$BackwardCompatibilityOutputDirectoryConvention +instanceKlass org/gradle/api/internal/tasks/compile/incremental/recomp/AbstractRecompilationSpecProvider +instanceKlass org/gradle/api/internal/tasks/compile/CleaningJavaCompiler +instanceKlass org/gradle/api/internal/tasks/compile/DefaultJvmLanguageCompileSpec +instanceKlass org/gradle/work/InputChanges +instanceKlass org/gradle/internal/Actions$FilteredAction +instanceKlass org/gradle/api/internal/file/FileCollectionBackedFileTree$$Lambda$804 +instanceKlass org/gradle/api/internal/file/collections/ProviderBackedFileCollection$$Lambda$803 +instanceKlass org/gradle/api/internal/provider/OrElseValueProducer +instanceKlass org/gradle/api/internal/file/collections/UnpackingVisitor +instanceKlass org/gradle/api/internal/file/CompositeFileCollection$$Lambda$802 +instanceKlass org/gradle/api/internal/provider/ValueSupplier$UnknownProducer +instanceKlass org/gradle/api/internal/provider/ValueSupplier$NoProducer +instanceKlass org/gradle/api/internal/tasks/properties/bean/NestedRuntimeBeanNode$ImplementationPropertyValue +instanceKlass org/gradle/api/internal/tasks/properties/bean/AbstractNestedRuntimeBeanNode$BeanPropertyValue$1$1 +instanceKlass org/gradle/api/internal/tasks/properties/bean/AbstractNestedRuntimeBeanNode$1 +instanceKlass org/gradle/api/internal/tasks/properties/bean/AbstractNestedRuntimeBeanNode$BeanPropertyValue$1 +instanceKlass org/gradle/api/internal/tasks/properties/bean/AbstractNestedRuntimeBeanNode$BeanPropertyValue +instanceKlass org/gradle/api/internal/tasks/properties/DefaultTypeMetadataStore$DefaultTypeMetadata +instanceKlass org/gradle/api/internal/tasks/properties/DefaultTypeMetadataStore$DefaultPropertyMetadata +instanceKlass org/gradle/internal/reflect/validation/ReplayingTypeValidationContext$$Lambda$801 +instanceKlass com/google/common/collect/AbstractMapBasedMultimap$Itr +instanceKlass com/google/common/collect/Iterators$ConcatenatedIterator +instanceKlass org/gradle/internal/reflect/annotations/impl/DefaultTypeAnnotationMetadataStore$$Lambda$800 +instanceKlass org/gradle/internal/reflect/annotations/impl/DefaultTypeAnnotationMetadataStore$$Lambda$799 +instanceKlass org/gradle/internal/reflect/annotations/impl/DefaultTypeAnnotationMetadataStore$$Lambda$798 +instanceKlass org/gradle/internal/reflect/annotations/impl/DefaultTypeAnnotationMetadataStore$PropertyAnnotationMetadataBuilder$$Lambda$797 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass com/google/common/collect/SortedIterables +instanceKlass org/gradle/internal/reflect/annotations/impl/DefaultTypeAnnotationMetadata$$Lambda$796 +instanceKlass org/gradle/internal/reflect/annotations/impl/DefaultTypeAnnotationMetadata +instanceKlass com/google/common/collect/AbstractMapBasedMultimap$KeySet$1 +instanceKlass org/gradle/internal/reflect/annotations/impl/DefaultPropertyAnnotationMetadata +instanceKlass org/gradle/internal/reflect/annotations/impl/DefaultTypeAnnotationMetadataStore$$Lambda$795 +instanceKlass org/gradle/internal/reflect/annotations/impl/DefaultTypeAnnotationMetadataStore$$Lambda$794 +instanceKlass org/gradle/internal/reflect/annotations/impl/DefaultTypeAnnotationMetadataStore$PropertyAnnotationMetadataBuilder$$Lambda$793 +instanceKlass com/google/common/collect/MultimapBuilder$LinkedHashSetSupplier +instanceKlass org/gradle/internal/reflect/annotations/impl/DefaultTypeAnnotationMetadataStore$PropertyAnnotationMetadataBuilder$$Lambda$792 +instanceKlass com/google/common/collect/SortedSetMultimap +instanceKlass com/google/common/collect/Multimaps +instanceKlass com/google/common/collect/MultimapBuilder$ArrayListSupplier +instanceKlass com/google/common/collect/MultimapBuilder$MultimapBuilderWithKeys +instanceKlass com/google/common/collect/MultimapBuilder +instanceKlass org/gradle/internal/reflect/annotations/impl/DefaultTypeAnnotationMetadataStore$PropertyAnnotationMetadataBuilder$$Lambda$791 +instanceKlass org/gradle/internal/reflect/annotations/PropertyAnnotationMetadata +instanceKlass org/gradle/internal/reflect/annotations/impl/DefaultTypeAnnotationMetadataStore$$Lambda$790 +instanceKlass org/gradle/internal/reflect/annotations/impl/DefaultTypeAnnotationMetadataStore$PropertyAnnotationMetadataBuilder +instanceKlass org/gradle/internal/reflect/annotations/impl/DefaultTypeAnnotationMetadataStore$$Lambda$789 +instanceKlass org/gradle/internal/reflect/annotations/impl/DefaultTypeAnnotationMetadataStore$$Lambda$788 +instanceKlass org/gradle/internal/reflect/annotations/impl/DefaultTypeAnnotationMetadataStore$$Lambda$787 +instanceKlass org/gradle/internal/reflect/annotations/impl/DefaultTypeAnnotationMetadataStore$TypeAnnotationMetadataVisitor +instanceKlass org/gradle/internal/reflect/annotations/impl/DefaultTypeAnnotationMetadataStore$$Lambda$786 +instanceKlass org/gradle/internal/reflect/annotations/impl/DefaultTypeAnnotationMetadataStore$$Lambda$785 +instanceKlass org/gradle/internal/reflect/validation/ReplayingTypeValidationContext +instanceKlass org/gradle/api/internal/tasks/properties/BeanPropertyContext +instanceKlass org/gradle/internal/reflect/validation/TypeValidationContext$1 +instanceKlass org/gradle/api/internal/tasks/properties/PropertyVisitor$Adapter +instanceKlass org/gradle/execution/plan/DefaultExecutionPlan$$Lambda$784 +instanceKlass org/gradle/execution/plan/MutationInfo +instanceKlass org/gradle/execution/plan/TaskNodeFactory$DefaultTypeOriginInspectorFactory$$Lambda$783 +instanceKlass org/gradle/execution/plan/TaskNodeFactory$DefaultTypeOriginInspectorFactory$ProjectScopedTypeOriginInspector +instanceKlass org/gradle/internal/execution/impl/DefaultWorkValidationContext +instanceKlass org/gradle/execution/TaskSelection +instanceKlass org/gradle/execution/TaskNameResolver$FixedTaskSelectionResult +instanceKlass org/gradle/api/internal/file/DefaultFilePropertyFactory$ResolvingRegularFileTransform +instanceKlass org/gradle/api/plugins/quality/CheckstylePlugin$$Lambda$782 +instanceKlass org/gradle/api/plugins/quality/CheckstylePlugin$$Lambda$781 +instanceKlass org/gradle/api/plugins/quality/CheckstylePlugin$$Lambda$780 +instanceKlass org/gradle/api/plugins/quality/CheckstylePlugin$$Lambda$779 +instanceKlass org/gradle/api/plugins/quality/CheckstylePlugin$$Lambda$778 +instanceKlass org/gradle/api/plugins/quality/CheckstylePlugin$$Lambda$777 +instanceKlass org/gradle/api/plugins/quality/CheckstylePlugin$$Lambda$776 +instanceKlass org/gradle/api/plugins/quality/CheckstylePlugin$$Lambda$775 +instanceKlass org/gradle/api/plugins/quality/CheckstylePlugin$$Lambda$774 +instanceKlass org/gradle/api/internal/file/DefaultProjectLayout$1 +instanceKlass org/gradle/api/reporting/internal/TaskGeneratedSingleFileReport$$Lambda$773 +instanceKlass org/gradle/api/reporting/CustomizableHtmlReport +instanceKlass org/gradle/api/plugins/quality/CheckstyleReports +instanceKlass org/gradle/execution/TaskNameResolver$MultiProjectTaskSelectionResult +instanceKlass org/gradle/execution/taskpath/ResolvedTaskPath +instanceKlass org/gradle/execution/taskpath/ProjectFinderByTaskPath +instanceKlass org/gradle/execution/taskpath/TaskPathResolver +instanceKlass org/gradle/execution/DefaultBuildConfigurationActionExecuter$1 +instanceKlass org/gradle/api/internal/project/DefaultProjectStateRegistry$$Lambda$772 +instanceKlass org/gradle/execution/DefaultBuildConfigurationActionExecuter$$Lambda$771 +instanceKlass org/gradle/initialization/VintageBuildModelController$$Lambda$770 +instanceKlass org/gradle/internal/build/DefaultBuildLifecycleController$DefaultWorkGraphBuilder +instanceKlass org/gradle/internal/build/BuildOperationFiringBuildWorkPreparer$PopulateWorkGraph$2 +instanceKlass org/gradle/internal/taskgraph/CalculateTaskGraphBuildOperationType$Details +instanceKlass org/gradle/internal/build/BuildOperationFiringBuildWorkPreparer$PopulateWorkGraph +instanceKlass org/gradle/internal/build/DefaultBuildLifecycleController$$Lambda$769 +instanceKlass org/gradle/internal/build/DefaultBuildLifecycleController$$Lambda$768 +instanceKlass org/gradle/initialization/VintageBuildModelController$$Lambda$767 +instanceKlass org/gradle/execution/plan/OrdinalNodeAccess +instanceKlass org/gradle/execution/plan/FailureCollector +instanceKlass org/gradle/execution/plan/DefaultExecutionPlan +instanceKlass org/gradle/internal/build/DefaultBuildLifecycleController$$Lambda$766 +instanceKlass org/gradle/internal/build/DefaultBuildLifecycleController$DefaultBuildWorkPlan +instanceKlass org/gradle/execution/plan/BuildWorkPlan +instanceKlass org/gradle/internal/build/DefaultBuildWorkGraphController$DefaultBuildWorkGraph +instanceKlass org/gradle/composite/internal/DefaultBuildController +instanceKlass org/gradle/internal/buildtree/DefaultBuildTreeWorkPreparer$$Lambda$765 +instanceKlass org/gradle/internal/build/BuildLifecycleController$WorkGraphBuilder +instanceKlass org/gradle/composite/internal/DefaultIncludedBuildTaskGraph$DefaultBuildTreeWorkGraphBuilder +instanceKlass org/gradle/composite/internal/DefaultIncludedBuildTaskGraph$DefaultBuildTreeWorkGraph$1$2 +instanceKlass org/gradle/internal/taskgraph/CalculateTreeTaskGraphBuildOperationType$Details +instanceKlass org/gradle/composite/internal/DefaultIncludedBuildTaskGraph$DefaultBuildTreeWorkGraph$1 +instanceKlass org/gradle/internal/buildtree/DefaultBuildTreeWorkPreparer$$Lambda$764 +instanceKlass org/gradle/internal/buildtree/BuildTreeWorkGraph$Builder +instanceKlass org/gradle/api/internal/file/DefaultFilePropertyFactory$ToFileTransformer +instanceKlass org/gradle/initialization/ProjectsEvaluatedNotifier$NotifyProjectsEvaluatedListeners$1 +instanceKlass org/gradle/initialization/NotifyProjectsEvaluatedBuildOperationType$Details +instanceKlass org/gradle/initialization/ProjectsEvaluatedNotifier$NotifyProjectsEvaluatedListeners +instanceKlass org/gradle/initialization/ProjectsEvaluatedNotifier$1 +instanceKlass org/gradle/initialization/NotifyProjectsEvaluatedBuildOperationType$Result +instanceKlass org/gradle/initialization/ProjectsEvaluatedNotifier +instanceKlass org/gradle/api/internal/project/DefaultProjectRegistry$$Lambda$763 +instanceKlass org/gradle/configuration/project/ConfigureProjectBuildOperationType$1 +instanceKlass org/gradle/configuration/project/ConfigureProjectBuildOperationType$Result +instanceKlass org/gradle/configuration/project/ConfigureProjectBuildOperationType +instanceKlass org/gradle/configuration/project/NotifyProjectAfterEvaluatedBuildOperationType$1 +instanceKlass org/gradle/configuration/project/NotifyProjectAfterEvaluatedBuildOperationType$Result +instanceKlass org/gradle/configuration/project/NotifyProjectAfterEvaluatedBuildOperationType +instanceKlass org/gradle/configuration/internal/ExecuteListenerBuildOperationType$1 +instanceKlass org/gradle/configuration/internal/ExecuteListenerBuildOperationType$Result +instanceKlass org/gradle/configuration/internal/ExecuteListenerBuildOperationType +instanceKlass org/gradle/api/distribution/plugins/DistributionPlugin$$Lambda$762 +instanceKlass org/gradle/configuration/internal/DefaultListenerBuildOperationDecorator$ExecuteListenerDetails +instanceKlass org/gradle/configuration/internal/DefaultListenerBuildOperationDecorator$Operation +instanceKlass org/gradle/configuration/project/LifecycleProjectEvaluator$NotifyAfterEvaluate$1 +instanceKlass org/gradle/configuration/project/LifecycleProjectEvaluator$NotifyProjectAfterEvaluatedDetails +instanceKlass org/gradle/configuration/project/NotifyProjectAfterEvaluatedBuildOperationType$Details +instanceKlass org/gradle/configuration/project/LifecycleProjectEvaluator$NotifyAfterEvaluate +instanceKlass java/io/Console +instanceKlass org/gradle/api/plugins/ApplicationPlugin$$Lambda$761 +instanceKlass org/gradle/api/plugins/ApplicationPlugin$$Lambda$760 +instanceKlass org/gradle/api/plugins/ApplicationPlugin$$Lambda$759 +instanceKlass org/gradle/api/tasks/JavaExec$$Lambda$758 +instanceKlass org/gradle/api/internal/provider/Providers$SerializableCallable +instanceKlass org/gradle/process/internal/ProcessArgumentsSpec +instanceKlass org/gradle/process/internal/ProcessStreamsSpec +instanceKlass org/gradle/process/internal/ProcessArgumentsSpec$HasExecutable +instanceKlass org/gradle/api/specs/internal/ClosureSpec +instanceKlass org/codehaus/groovy/runtime/metaclass/ClosureMetaClass$$Lambda$757 +instanceKlass org/gradle/api/artifacts/FileCollectionDependency +instanceKlass org/gradle/api/internal/artifacts/dependencies/SelfResolvingDependencyInternal +instanceKlass org/gradle/api/internal/notations/DependencyClassPathNotationConverter$GeneratedFileCollection +instanceKlass org/gradle/api/internal/AbstractTask$ClosureTaskAction +instanceKlass org/gradle/api/internal/AbstractTask$13 +instanceKlass org/codehaus/groovy/runtime/metaclass/ClosureMetaClass$$Lambda$756 +instanceKlass org/gradle/util/ConfigureUtil +instanceKlass org/gradle/api/java/archives/internal/DefaultManifestMergeDetails +instanceKlass org/gradle/api/java/archives/ManifestMergeDetails +instanceKlass org/gradle/api/java/archives/internal/DefaultManifestMergeSpec +instanceKlass com/github/jengelman/gradle/plugins/shadow/relocation/SimpleRelocator +instanceKlass com/github/jengelman/gradle/plugins/shadow/transformers/ServiceFileTransformer +instanceKlass com/github/jengelman/gradle/plugins/shadow/relocation/RelocatePathContext +instanceKlass com/github/jengelman/gradle/plugins/shadow/relocation/RelocateClassContext +instanceKlass com/github/jengelman/gradle/plugins/shadow/transformers/TransformerContext +instanceKlass org/gradle/api/plugins/BasePlugin$$Lambda$755 +instanceKlass com/github/jengelman/gradle/plugins/shadow/tasks/ShadowJar$3 +instanceKlass com/github/jengelman/gradle/plugins/shadow/tasks/ShadowJar$2 +instanceKlass org/gradle/api/java/archives/ManifestMergeSpec +instanceKlass com/github/jengelman/gradle/plugins/shadow/tasks/DefaultInheritManifest +instanceKlass org/codehaus/groovy/runtime/powerassert/Value +instanceKlass org/codehaus/groovy/runtime/powerassert/ValueRecorder +instanceKlass com/github/jengelman/gradle/plugins/shadow/internal/AbstractDependencyFilter +instanceKlass com/github/jengelman/gradle/plugins/shadow/tasks/ShadowJar$1 +instanceKlass org/slf4j/event/SubstituteLoggingEvent +instanceKlass org/gradle/jvm/tasks/Jar$ExcludeManifestAction +instanceKlass org/gradle/api/file/FileVisitDetails +instanceKlass org/gradle/api/internal/file/collections/GeneratedSingletonFileTree +instanceKlass org/gradle/api/internal/file/collections/GeneratedFiles +instanceKlass org/gradle/api/internal/file/collections/MinimalFileTree$MinimalFileTreeStructureVisitor +instanceKlass org/gradle/jvm/tasks/Jar$$Lambda$754 +instanceKlass org/gradle/jvm/tasks/Jar$$Lambda$753 +instanceKlass org/gradle/api/internal/lambdas/SerializableLambdas$SerializableAction +instanceKlass org/gradle/jvm/tasks/Jar$$Lambda$752 +instanceKlass org/gradle/api/java/archives/internal/DefaultAttributes +instanceKlass org/gradle/api/java/archives/Attributes +instanceKlass org/gradle/api/java/archives/internal/DefaultManifest +instanceKlass org/gradle/api/tasks/bundling/AbstractArchiveTask$$Lambda$751 +instanceKlass org/gradle/api/tasks/AbstractCopyTask$$Lambda$750 +instanceKlass org/gradle/api/tasks/AbstractCopyTask$$Lambda$749 +instanceKlass org/gradle/api/tasks/AbstractCopyTask$$Lambda$748 +instanceKlass org/gradle/api/tasks/AbstractCopyTask$$Lambda$747 +instanceKlass org/gradle/api/tasks/AbstractCopyTask$$Lambda$746 +instanceKlass org/gradle/api/tasks/AbstractCopyTask$$Lambda$745 +instanceKlass org/gradle/api/internal/tasks/DefaultTaskInputPropertyRegistration +instanceKlass org/gradle/api/internal/tasks/TaskInputPropertyRegistration +instanceKlass org/gradle/api/internal/tasks/DefaultTaskInputs$$Lambda$744 +instanceKlass org/gradle/api/tasks/AbstractCopyTask$$Lambda$743 +instanceKlass org/gradle/api/internal/tasks/properties/FileParameterUtils$2 +instanceKlass org/gradle/api/internal/tasks/properties/FileParameterUtils +instanceKlass org/gradle/api/internal/tasks/TaskPropertyUtils +instanceKlass org/gradle/api/internal/tasks/properties/ValidationAction +instanceKlass org/gradle/api/internal/tasks/AbstractTaskFilePropertyRegistration +instanceKlass org/gradle/api/internal/tasks/StaticValue +instanceKlass org/gradle/api/internal/tasks/DefaultTaskInputs$$Lambda$742 +instanceKlass org/gradle/api/tasks/AbstractCopyTask$$Lambda$741 +instanceKlass org/gradle/api/internal/tasks/DefaultTaskOutputs$$Lambda$740 +instanceKlass org/gradle/api/tasks/AbstractCopyTask$$Lambda$739 +instanceKlass org/gradle/api/tasks/AbstractCopyTask$$Lambda$738 +instanceKlass org/gradle/api/internal/file/copy/CopyActionExecuter +instanceKlass com/github/jengelman/gradle/plugins/shadow/internal/GradleVersionUtil +instanceKlass com/github/jengelman/gradle/plugins/shadow/ShadowStats +instanceKlass com/github/jengelman/gradle/plugins/shadow/internal/ZipCompressor +instanceKlass com/github/jengelman/gradle/plugins/shadow/transformers/Transformer +instanceKlass com/github/jengelman/gradle/plugins/shadow/tasks/InheritManifest +instanceKlass com/github/jengelman/gradle/plugins/shadow/relocation/Relocator +instanceKlass com/github/jengelman/gradle/plugins/shadow/internal/DependencyFilter +instanceKlass org/gradle/api/java/archives/internal/ManifestInternal +instanceKlass org/gradle/api/internal/file/copy/ZipCompressor +instanceKlass org/gradle/api/internal/file/archive/compression/ArchiveOutputStreamFactory +instanceKlass org/gradle/util/internal/GUtil$4 +instanceKlass org/gradle/api/internal/tasks/testing/junitplatform/JUnitPlatformTestFramework +instanceKlass org/gradle/api/plugins/JvmTestSuitePlugin$$Lambda$737 +instanceKlass org/gradle/api/plugins/JvmTestSuitePlugin$$Lambda$736 +instanceKlass org/gradle/api/plugins/jvm/internal/DefaultJvmTestSuite$$Lambda$735 +instanceKlass org/gradle/api/plugins/JvmTestSuitePlugin$$Lambda$734 +instanceKlass org/gradle/api/plugins/JvmTestSuitePlugin$$Lambda$733 +instanceKlass org/gradle/jvm/toolchain/internal/JavaToolchainQueryService$$Lambda$732 +instanceKlass org/gradle/jvm/toolchain/internal/DefaultJavaToolchainService$$Lambda$731 +instanceKlass org/gradle/jvm/toolchain/JavaCompiler +instanceKlass org/gradle/jvm/toolchain/internal/JavaToolchain +instanceKlass org/gradle/jvm/toolchain/JavaInstallationMetadata +instanceKlass org/gradle/api/plugins/JavaBasePlugin$$Lambda$730 +instanceKlass org/gradle/api/internal/project/taskfactory/AnnotationProcessingTaskFactory$$Lambda$729 +instanceKlass org/gradle/api/internal/tasks/execution/SelfDescribingSpec +instanceKlass org/gradle/api/internal/tasks/DefaultTaskOutputs$$Lambda$728 +instanceKlass org/gradle/api/internal/project/taskfactory/StandardTaskAction +instanceKlass org/gradle/api/internal/project/taskfactory/DefaultTaskClassInfoStore$StandardTaskActionFactory +instanceKlass org/gradle/api/internal/project/taskfactory/DefaultTaskClassInfoStore$$Lambda$727 +instanceKlass org/gradle/api/internal/AbstractTask$$Lambda$726 +instanceKlass org/gradle/api/internal/lambdas/SerializableLambdas$SerializableFactory +instanceKlass org/gradle/api/internal/AbstractTask$$Lambda$725 +instanceKlass org/gradle/api/internal/tasks/testing/detection/JarFilePackageListener +instanceKlass org/gradle/api/internal/tasks/testing/detection/ClassFileExtractionManager +instanceKlass org/gradle/api/internal/tasks/testing/TestClassRunInfo +instanceKlass org/gradle/api/internal/tasks/testing/detection/AbstractTestFrameworkDetector +instanceKlass org/gradle/api/internal/tasks/testing/detection/TestFrameworkDetector +instanceKlass org/gradle/api/internal/tasks/testing/WorkerTestClassProcessorFactory +instanceKlass org/gradle/api/internal/tasks/testing/junit/JUnitTestFramework +instanceKlass org/gradle/process/internal/JvmOptions +instanceKlass org/gradle/process/internal/DefaultProcessForkOptions +instanceKlass org/gradle/process/internal/DefaultJavaDebugOptions +instanceKlass org/gradle/api/tasks/testing/Test$1 +instanceKlass org/gradle/api/internal/file/DefaultProjectLayout$2 +instanceKlass org/gradle/api/reporting/internal/TaskGeneratedSingleDirectoryReport$$Lambda$724 +instanceKlass org/gradle/api/reporting/internal/TaskGeneratedReport$1 +instanceKlass org/gradle/api/reporting/internal/SimpleReport +instanceKlass org/gradle/api/internal/DefaultCollectionCallbackActionDecorator$1 +instanceKlass org/gradle/api/reporting/internal/DefaultReportContainer$1 +instanceKlass org/gradle/api/reporting/Report$1 +instanceKlass org/gradle/api/tasks/testing/JUnitXmlReport +instanceKlass org/gradle/api/internal/tasks/testing/logging/DefaultTestLogging +instanceKlass org/gradle/api/internal/tasks/testing/logging/DefaultTestLoggingContainer +instanceKlass org/gradle/api/internal/tasks/DefaultTaskLocalState +instanceKlass org/gradle/api/internal/tasks/DefaultTaskDestroyables +instanceKlass org/gradle/api/internal/tasks/TaskDestroyablesInternal +instanceKlass org/gradle/api/internal/tasks/properties/OutputUnpacker$UnpackedOutputConsumer +instanceKlass org/gradle/api/tasks/TaskOutputFilePropertyBuilder +instanceKlass org/gradle/api/internal/tasks/DefaultTaskOutputs +instanceKlass org/gradle/api/internal/tasks/TaskInputsDeprecationSupport +instanceKlass org/gradle/api/internal/FilePropertyContainer +instanceKlass org/gradle/api/tasks/TaskInputPropertyBuilder +instanceKlass org/gradle/api/internal/tasks/TaskInputFilePropertyRegistration +instanceKlass org/gradle/api/internal/tasks/TaskPropertyRegistration +instanceKlass org/gradle/api/internal/tasks/TaskInputFilePropertyBuilderInternal +instanceKlass org/gradle/api/internal/tasks/TaskFilePropertyBuilderInternal +instanceKlass org/gradle/api/tasks/TaskInputFilePropertyBuilder +instanceKlass org/gradle/api/tasks/TaskFilePropertyBuilder +instanceKlass org/gradle/api/tasks/TaskPropertyBuilder +instanceKlass org/gradle/api/internal/tasks/DefaultTaskInputs +instanceKlass org/gradle/internal/logging/slf4j/DefaultContextAwareTaskLogger +instanceKlass org/gradle/api/internal/AbstractTask$8 +instanceKlass org/gradle/api/tasks/TaskAction +instanceKlass org/gradle/api/tasks/options/Option +instanceKlass org/gradle/process/CommandLineArgumentProvider +instanceKlass org/gradle/jvm/toolchain/JavaLauncher +instanceKlass org/gradle/api/internal/tasks/testing/filter/DefaultTestFilter +instanceKlass org/gradle/api/internal/tasks/testing/logging/TestCountLogger +instanceKlass org/gradle/api/tasks/testing/logging/TestLoggingContainer +instanceKlass org/gradle/api/tasks/testing/logging/TestLogging +instanceKlass org/gradle/api/internal/tasks/testing/junit/result/TestOutputStore +instanceKlass org/gradle/api/tasks/testing/TestTaskReports +instanceKlass org/gradle/api/internal/tasks/testing/JvmTestExecutionSpec +instanceKlass org/gradle/api/tasks/testing/TestFrameworkOptions +instanceKlass org/gradle/api/internal/tasks/testing/TestExecutionSpec +instanceKlass org/gradle/api/internal/tasks/testing/TestExecuter +instanceKlass org/gradle/api/internal/project/taskfactory/TaskFactory$1 +instanceKlass org/gradle/api/internal/tasks/DefaultTaskContainer$TaskCreatingProvider$1 +instanceKlass org/gradle/internal/typeconversion/MapKey +instanceKlass org/gradle/api/internal/artifacts/dsl/dependencies/ModuleFactoryHelper +instanceKlass org/gradle/api/internal/artifacts/DependencyResolveContext +instanceKlass org/gradle/api/internal/artifacts/dependencies/DefaultDependencyArtifact +instanceKlass org/gradle/api/artifacts/repositories/ExclusiveContentRepository +instanceKlass org/gradle/api/internal/plugins/DefaultPluginContainer$2 +instanceKlass org/codehaus/groovy/runtime/ConversionHandler +instanceKlass groovy/transform/SelfType +instanceKlass groovy/lang/GeneratedGroovyProxy +instanceKlass groovy/transform/Trait +instanceKlass org/codehaus/groovy/transform/trait/Traits$TraitBridge +instanceKlass org/codehaus/groovy/transform/trait/Traits +instanceKlass org/gradle/api/internal/file/collections/DefaultConfigurableFileCollection$UnresolvedItemsCollector$$Lambda$723 +instanceKlass org/gradle/api/internal/file/copy/CopySpecWrapper +instanceKlass org/gradle/api/internal/file/copy/DefaultCopySpec$DefaultCopySpecResolver +instanceKlass org/gradle/api/file/ExpandDetails +instanceKlass org/gradle/api/file/RelativePath +instanceKlass com/github/jengelman/gradle/plugins/shadow/ShadowApplicationPlugin +instanceKlass org/gradle/api/internal/component/UsageContext +instanceKlass org/gradle/api/component/SoftwareComponentVariant +instanceKlass org/gradle/api/internal/artifacts/dsl/DefaultArtifactHandler$DynamicMethods +instanceKlass org/gradle/api/internal/artifacts/dsl/DefaultArtifactHandler +instanceKlass com/github/jengelman/gradle/plugins/shadow/tasks/ShadowSpec +instanceKlass org/gradle/configuration/project/DefaultProjectConfigurationActionContainer +instanceKlass com/github/jengelman/gradle/plugins/shadow/ShadowJavaPlugin +instanceKlass org/gradle/model/internal/inspect/ExtractedRuleSource +instanceKlass org/gradle/model/internal/core/NodePredicate +instanceKlass org/gradle/model/internal/core/ModelView +instanceKlass org/gradle/api/services/BuildService +instanceKlass org/gradle/api/internal/AbstractTask$TaskInfo +instanceKlass org/gradle/api/internal/tasks/TaskMutator +instanceKlass org/gradle/api/specs/CompositeSpec +instanceKlass org/gradle/api/internal/tasks/TaskStateInternal +instanceKlass org/gradle/api/publish/maven/MavenPublication +instanceKlass org/gradle/api/publish/Publication +instanceKlass org/gradle/api/plugins/ExtensionsSchema +instanceKlass com/github/jengelman/gradle/plugins/shadow/ShadowExtension +instanceKlass org/codehaus/groovy/runtime/callsite/CallSiteArray$$Lambda$722 +instanceKlass sun/reflect/generics/reflectiveObjects/GenericArrayTypeImpl +instanceKlass com/github/jengelman/gradle/plugins/shadow/ShadowBasePlugin +instanceKlass org/xml/sax/Attributes +instanceKlass org/apache/tools/ant/BuildLogger +instanceKlass org/apache/tools/ant/BuildListener +instanceKlass org/xml/sax/Locator +instanceKlass sun/reflect/generics/tree/BooleanSignature +instanceKlass com/github/jengelman/gradle/plugins/shadow/ShadowPlugin +instanceKlass sun/security/util/SignatureFileVerifier +instanceKlass org/gradle/internal/fingerprint/impl/IgnoredPathFileSystemLocationFingerprint$1 +instanceKlass org/gradle/internal/fingerprint/impl/IgnoredPathFileSystemLocationFingerprint +instanceKlass org/gradle/api/internal/changedetection/state/DefaultResourceSnapshotterCacheService$$Lambda$721 +instanceKlass org/gradle/internal/io/IoSupplier +instanceKlass org/gradle/internal/fingerprint/classpath/impl/ClasspathFingerprintingStrategy$ClasspathFingerprintingVisitor$$Lambda$720 +instanceKlass org/gradle/api/internal/changedetection/state/DefaultRegularFileSnapshotContext +instanceKlass org/gradle/internal/fingerprint/classpath/impl/ClasspathFingerprintingStrategy$ClasspathFingerprintingVisitor$1 +instanceKlass org/gradle/internal/fingerprint/hashing/RegularFileSnapshotContext +instanceKlass org/gradle/internal/fingerprint/classpath/impl/ClasspathFingerprintingStrategy$ClasspathFingerprintingVisitor +instanceKlass org/gradle/internal/snapshot/SnapshotUtil$$Lambda$719 +instanceKlass org/gradle/internal/snapshot/FileSystemSnapshot$1 +instanceKlass org/gradle/internal/fingerprint/impl/DefaultCurrentFileCollectionFingerprint +instanceKlass org/gradle/internal/fingerprint/impl/DefaultFileCollectionSnapshotter$1 +instanceKlass org/gradle/internal/snapshot/CompositeFileSystemSnapshot +instanceKlass org/gradle/internal/fingerprint/impl/DefaultFileCollectionSnapshotter$SnapshottingVisitor$$Lambda$718 +instanceKlass org/gradle/internal/fingerprint/impl/DefaultFileCollectionSnapshotter$SnapshottingVisitor +instanceKlass org/gradle/api/internal/initialization/loadercache/DefaultClassLoaderCache$$Lambda$717 +instanceKlass org/gradle/plugin/use/internal/DefaultPluginRequestApplicator$$Lambda$716 +instanceKlass org/gradle/api/plugins/quality/internal/AbstractCodeQualityPlugin$7 +instanceKlass org/gradle/api/plugins/quality/internal/AbstractCodeQualityPlugin$6 +instanceKlass org/gradle/api/plugins/quality/internal/AbstractCodeQualityPlugin$5$1 +instanceKlass org/gradle/api/plugins/quality/internal/AbstractCodeQualityPlugin$5 +instanceKlass org/gradle/api/plugins/quality/internal/AbstractCodeQualityPlugin$4 +instanceKlass org/gradle/api/plugins/quality/internal/AbstractCodeQualityPlugin$3 +instanceKlass org/gradle/api/plugins/quality/internal/AbstractCodeQualityPlugin$2$1 +instanceKlass org/gradle/api/plugins/quality/internal/AbstractCodeQualityPlugin$2 +instanceKlass org/gradle/api/plugins/quality/internal/AbstractCodeQualityPlugin$1 +instanceKlass com/google/common/util/concurrent/Callables$1 +instanceKlass com/google/common/util/concurrent/AsyncCallable +instanceKlass com/google/common/util/concurrent/Callables +instanceKlass org/gradle/api/internal/resources/FileCollectionBackedTextResource +instanceKlass org/gradle/api/resources/internal/TextResourceInternal +instanceKlass org/gradle/api/internal/file/DefaultFilePropertyFactory$PathToFileTransformer +instanceKlass org/gradle/api/internal/project/DefaultCrossProjectModelAccess +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfiguration$$Lambda$715 +instanceKlass org/gradle/api/plugins/quality/CheckstylePlugin$$Lambda$714 +instanceKlass org/gradle/internal/deprecation/DeprecationMessageBuilder$WithDeprecationTimeline +instanceKlass org/gradle/internal/deprecation/DeprecationTimeline +instanceKlass org/gradle/internal/deprecation/Documentation +instanceKlass org/gradle/internal/deprecation/DeprecationMessageBuilder$ConfigurationDeprecationTypeSelector +instanceKlass org/gradle/api/plugins/quality/internal/AbstractCodeQualityPlugin$$Lambda$713 +instanceKlass org/gradle/api/reporting/SingleFileReport +instanceKlass org/gradle/api/plugins/quality/CodeQualityExtension +instanceKlass org/gradle/api/internal/file/copy/DefaultCopySpec$$Lambda$712 +instanceKlass org/gradle/api/internal/file/copy/DefaultCopySpec$DefaultCopySpecAddress +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass org/gradle/api/internal/file/copy/DefaultCopySpec$$Lambda$711 +instanceKlass org/gradle/api/plugins/ApplicationPlugin$$Lambda$710 +instanceKlass org/gradle/api/plugins/ApplicationPlugin$$Lambda$709 +instanceKlass org/gradle/api/plugins/ApplicationPlugin$$Lambda$708 +instanceKlass org/gradle/api/plugins/ApplicationPlugin$$Lambda$707 +instanceKlass org/gradle/api/plugins/ApplicationPlugin$$Lambda$706 +instanceKlass org/gradle/api/plugins/ApplicationPlugin$$Lambda$705 +instanceKlass org/gradle/api/plugins/internal/DefaultJavaApplication$$Lambda$704 +instanceKlass org/gradle/api/plugins/internal/DefaultJavaApplication +instanceKlass org/gradle/configuration/internal/DefaultListenerBuildOperationDecorator$BuildOperationEmittingAction +instanceKlass org/gradle/api/distribution/plugins/DistributionPlugin$$Lambda$703 +instanceKlass org/gradle/api/distribution/plugins/DistributionPlugin$$Lambda$702 +instanceKlass org/gradle/api/distribution/plugins/DistributionPlugin$$Lambda$701 +instanceKlass org/gradle/api/distribution/plugins/DistributionPlugin$$Lambda$700 +instanceKlass org/gradle/api/internal/file/copy/PathNotationConverter +instanceKlass org/gradle/api/file/FileCopyDetails +instanceKlass org/gradle/api/internal/file/copy/CopySpecInternal$CopySpecListener +instanceKlass org/gradle/api/internal/file/copy/CopySpecInternal$CopySpecVisitor +instanceKlass org/gradle/api/internal/file/copy/CopySpecInternal$CopySpecAddress +instanceKlass org/gradle/api/internal/file/copy/CopySpecResolver +instanceKlass org/gradle/api/internal/file/copy/DefaultCopySpec +instanceKlass org/gradle/api/distribution/internal/DefaultDistribution +instanceKlass org/gradle/api/distribution/plugins/DistributionPlugin$$Lambda$699 +instanceKlass org/gradle/api/distribution/DistributionContainer +instanceKlass org/gradle/api/distribution/plugins/DistributionPlugin +instanceKlass org/gradle/api/distribution/Distribution +instanceKlass org/gradle/api/plugins/JavaApplication +instanceKlass org/gradle/api/plugins/ApplicationPluginConvention +instanceKlass org/gradle/api/plugins/JavaPlugin$$Lambda$698 +instanceKlass org/gradle/api/plugins/JavaPlugin$$Lambda$697 +instanceKlass org/gradle/api/internal/java/usagecontext/ConfigurationVariantDetailsInternal +instanceKlass org/gradle/api/component/ConfigurationVariantDetails +instanceKlass org/gradle/api/internal/java/usagecontext/ConfigurationVariantMapping +instanceKlass org/gradle/api/plugins/internal/JavaConfigurationVariantMapping +instanceKlass org/gradle/api/plugins/internal/DefaultAdhocSoftwareComponent +instanceKlass org/gradle/api/plugins/jvm/internal/DefaultJvmPluginServices$1 +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultVariant +instanceKlass org/gradle/api/internal/artifacts/ConfigurationVariantInternal +instanceKlass org/gradle/api/internal/DynamicPropertyNamer +instanceKlass org/gradle/api/plugins/jvm/internal/DefaultJvmPluginServices$$Lambda$696 +instanceKlass org/gradle/api/internal/collections/AbstractIterationOrderRetainingElementSource$$Lambda$695 +instanceKlass org/gradle/api/internal/provider/ChangingValueHandler +instanceKlass org/gradle/api/plugins/JavaPlugin$$Lambda$694 +instanceKlass org/gradle/api/plugins/internal/JvmPluginsHelper$$Lambda$693 +instanceKlass org/gradle/api/internal/provider/Collectors$ElementsFromCollectionProvider +instanceKlass org/gradle/api/internal/provider/AbstractCollectionProperty$CollectingSupplier +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfigurationPublications$$Lambda$692 +instanceKlass org/gradle/api/plugins/JavaPlugin$$Lambda$691 +instanceKlass org/gradle/api/plugins/JavaPlugin$$Lambda$690 +instanceKlass org/gradle/api/internal/file/AbstractFileCollection$FileCollectionElementsFactory +instanceKlass org/gradle/api/plugins/JavaPlugin$$Lambda$689 +instanceKlass org/gradle/api/plugins/JavaPlugin$$Lambda$688 +instanceKlass org/gradle/api/plugins/jvm/internal/DefaultJvmPluginServices$DefaultElementsConfigurationBuilder$$Lambda$687 +instanceKlass org/gradle/api/component/AdhocComponentWithVariants +instanceKlass org/gradle/api/plugins/jvm/internal/ResolvableConfigurationBuilder +instanceKlass org/gradle/api/plugins/jvm/internal/AbstractConfigurationBuilder +instanceKlass org/gradle/api/plugins/JavaPlugin$$Lambda$686 +instanceKlass org/gradle/api/plugins/JavaPlugin$$Lambda$685 +instanceKlass org/gradle/api/plugins/JavaPlugin$$Lambda$684 +instanceKlass org/gradle/api/internal/artifacts/dsl/LazyPublishArtifact +instanceKlass org/gradle/api/internal/artifacts/publish/AbstractPublishArtifact +instanceKlass org/gradle/api/internal/artifacts/PublishArtifactInternal +instanceKlass org/gradle/api/plugins/JvmTestSuitePlugin$$Lambda$683 +instanceKlass org/gradle/api/plugins/JvmTestSuitePlugin$$Lambda$682 +instanceKlass org/gradle/api/attributes/VerificationType$Impl +instanceKlass org/gradle/api/attributes/VerificationType +instanceKlass org/gradle/api/plugins/JvmTestSuitePlugin$$Lambda$681 +instanceKlass org/gradle/api/attributes/TestSuiteTargetName$Impl +instanceKlass org/gradle/api/attributes/TestSuiteTargetName +instanceKlass org/gradle/api/attributes/TestSuiteName$Impl +instanceKlass org/gradle/api/attributes/TestSuiteName +instanceKlass org/gradle/api/plugins/JvmTestSuitePlugin$$Lambda$680 +instanceKlass org/gradle/api/plugins/JvmTestSuitePlugin$$Lambda$679 +instanceKlass org/gradle/api/plugins/JvmTestSuitePlugin$$Lambda$678 +instanceKlass org/gradle/api/plugins/jvm/internal/DefaultJvmTestSuite$$Lambda$677 +instanceKlass org/gradle/api/plugins/jvm/internal/DefaultJvmTestSuiteTarget$$Lambda$676 +instanceKlass org/gradle/internal/reflect/MethodSet$1 +instanceKlass org/gradle/api/plugins/JvmTestSuitePlugin$$Lambda$675 +instanceKlass org/gradle/api/plugins/jvm/internal/DefaultJvmTestSuite$$Lambda$674 +instanceKlass org/gradle/api/plugins/jvm/internal/DefaultJvmComponentDependencies +instanceKlass org/gradle/api/plugins/jvm/internal/DefaultJvmTestSuiteTarget +instanceKlass org/gradle/api/plugins/jvm/internal/DefaultJvmTestSuite$$Lambda$673 +instanceKlass org/gradle/api/plugins/jvm/internal/DefaultJvmTestSuite$VersionedTestingFramework +instanceKlass org/gradle/api/plugins/jvm/JvmComponentDependencies +instanceKlass org/gradle/api/internal/tasks/testing/TestFramework +instanceKlass org/gradle/api/plugins/JavaPlugin$$Lambda$672 +instanceKlass org/gradle/api/internal/provider/TypeSanitizingTransformer +instanceKlass org/gradle/api/internal/file/DefaultSourceDirectorySet$$Lambda$671 +instanceKlass org/gradle/api/internal/file/DefaultSourceDirectorySet$$Lambda$670 +instanceKlass org/gradle/api/plugins/internal/JvmPluginsHelper$$Lambda$669 +instanceKlass org/gradle/api/plugins/internal/JvmPluginsHelper$$Lambda$668 +instanceKlass org/gradle/api/plugins/JavaBasePlugin$$Lambda$667 +instanceKlass org/gradle/api/tasks/compile/AbstractOptions +instanceKlass org/gradle/api/internal/tasks/compile/JavaCompileSpec +instanceKlass org/gradle/api/internal/tasks/compile/JvmLanguageCompileSpec +instanceKlass org/gradle/language/base/internal/compile/CompileSpec +instanceKlass org/gradle/api/internal/tasks/compile/incremental/recomp/RecompilationSpecProvider +instanceKlass org/gradle/internal/Actions$CompositeAction +instanceKlass org/gradle/api/plugins/jvm/internal/DefaultJvmPluginServices$$Lambda$666 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/api/plugins/jvm/internal/DefaultJvmPluginServices$$Lambda$665 +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/api/plugins/internal/JvmPluginsHelper$$Lambda$664 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/api/plugins/internal/JvmPluginsHelper +instanceKlass org/gradle/api/plugins/JavaBasePlugin$$Lambda$663 +instanceKlass org/gradle/api/plugins/JavaBasePlugin$$Lambda$662 +instanceKlass org/gradle/api/plugins/JavaBasePlugin$$Lambda$661 +instanceKlass org/gradle/api/plugins/JavaBasePlugin$$Lambda$660 +instanceKlass org/gradle/api/plugins/jvm/internal/DefaultJvmPluginServices$$Lambda$659 +instanceKlass org/gradle/api/attributes/java/TargetJvmEnvironment$Impl +instanceKlass org/gradle/api/plugins/jvm/internal/DefaultJvmEcosystemAttributesDetails +instanceKlass org/gradle/api/plugins/jvm/internal/DefaultJvmPluginServices$$Lambda$658 +instanceKlass org/gradle/internal/extensibility/ConventionAwareHelper$MappedPropertyImpl +instanceKlass org/gradle/api/internal/ConventionMapping$MappedProperty +instanceKlass org/gradle/api/internal/file/collections/DefaultConfigurableFileCollection$UnresolvedItemsCollector +instanceKlass org/gradle/api/internal/tasks/DefaultSourceSetOutput$$Lambda$657 +instanceKlass org/gradle/api/internal/tasks/DefaultTaskDependency$TaskDependencySet +instanceKlass org/gradle/api/internal/file/collections/DefaultConfigurableFileCollection$EmptyCollector +instanceKlass org/gradle/api/internal/file/collections/DefaultConfigurableFileCollection$ValueCollector +instanceKlass org/gradle/api/internal/lambdas/SerializableLambdas +instanceKlass org/gradle/api/internal/tasks/DefaultSourceSet$$Lambda$656 +instanceKlass org/gradle/api/internal/lambdas/SerializableLambdas$SerializableSpec +instanceKlass org/gradle/api/internal/file/DefaultSourceDirectorySet$SourceDirectories +instanceKlass org/gradle/internal/typeconversion/CharSequenceNotationParser +instanceKlass org/gradle/api/internal/jvm/ClassDirectoryBinaryNamingScheme +instanceKlass org/gradle/api/file/FileTreeElement +instanceKlass org/gradle/api/tasks/SourceSetOutput +instanceKlass org/gradle/api/internal/tasks/DefaultSourceSet +instanceKlass org/gradle/api/plugins/JvmTestSuitePlugin$$Lambda$655 +instanceKlass org/gradle/api/plugins/JvmTestSuitePlugin$$Lambda$654 +instanceKlass org/gradle/api/plugins/JvmTestSuitePlugin$$Lambda$653 +instanceKlass org/gradle/api/plugins/jvm/internal/DefaultJvmTestSuite +instanceKlass org/gradle/testing/base/internal/DefaultTestingExtension +instanceKlass org/gradle/testing/base/plugins/TestSuiteBasePlugin +instanceKlass org/gradle/api/attributes/TestSuiteType +instanceKlass org/gradle/api/plugins/jvm/JvmTestSuiteTarget +instanceKlass org/gradle/testing/base/TestSuiteTarget +instanceKlass org/gradle/api/plugins/JvmTestSuitePlugin +instanceKlass org/gradle/api/plugins/JavaBasePlugin$$Lambda$652 +instanceKlass org/gradle/api/plugins/JavaBasePlugin$$Lambda$651 +instanceKlass org/gradle/api/plugins/JavaBasePlugin$$Lambda$650 +instanceKlass org/gradle/api/plugins/JavaBasePlugin$$Lambda$649 +instanceKlass org/gradle/api/plugins/JavaBasePlugin$$Lambda$648 +instanceKlass org/gradle/api/plugins/JavaBasePlugin$$Lambda$647 +instanceKlass org/gradle/jvm/toolchain/internal/JavaToolchainQueryService$$Lambda$646 +instanceKlass org/gradle/jvm/toolchain/internal/JavaToolchainQueryService$$Lambda$645 +instanceKlass org/gradle/jvm/toolchain/install/internal/DefaultJavaToolchainProvisioningService$$Lambda$644 +instanceKlass org/gradle/language/java/internal/JavaLanguagePluginServiceRegistry$JavaProjectScopeServices$1 +instanceKlass org/gradle/language/base/internal/compile/Compiler +instanceKlass org/gradle/api/internal/tasks/compile/DefaultJavaCompilerFactory +instanceKlass org/gradle/api/internal/tasks/compile/processing/AnnotationProcessorDeclarationSerializer +instanceKlass org/gradle/api/internal/tasks/compile/processing/AnnotationProcessorDetector$ProcessorServiceLocator +instanceKlass org/gradle/process/internal/worker/child/DefaultWorkerDirectoryProvider +instanceKlass org/gradle/workers/internal/WorkerDaemonExpiration +instanceKlass org/gradle/workers/internal/WorkerDaemonClientsManager$LogLevelChangeEventListener +instanceKlass org/gradle/workers/internal/WorkerDaemonClientsManager$StopSessionScopedWorkers +instanceKlass org/gradle/workers/internal/WorkerDaemonClientsManager$WorkerProcessCleanupAction +instanceKlass org/gradle/workers/internal/WorkerDaemonStarter +instanceKlass org/gradle/process/internal/health/memory/MemoryHolder +instanceKlass org/gradle/workers/internal/DefaultActionExecutionSpecFactory +instanceKlass org/gradle/internal/snapshot/impl/AbstractSetSnapshot +instanceKlass org/gradle/internal/snapshot/impl/AbstractListSnapshot +instanceKlass org/gradle/internal/snapshot/impl/EnumValueSnapshot +instanceKlass org/gradle/internal/snapshot/impl/JavaSerializedValueSnapshot +instanceKlass org/gradle/internal/snapshot/impl/NullValueSnapshot +instanceKlass org/gradle/internal/snapshot/impl/AbstractManagedValueSnapshot +instanceKlass org/gradle/workers/internal/IsolatableSerializerRegistry$IsolatedSetSerializer +instanceKlass org/gradle/workers/internal/IsolatableSerializerRegistry$IsolatedListSerializer +instanceKlass org/gradle/workers/internal/IsolatableSerializerRegistry$IsolatedArraySerializer +instanceKlass org/gradle/internal/snapshot/impl/AbstractMapSnapshot +instanceKlass org/gradle/workers/internal/IsolatableSerializerRegistry$AbstractIsolatedMapSerializer +instanceKlass org/gradle/workers/internal/IsolatableSerializerRegistry$IsolatedEnumValueSnapshotSerializer +instanceKlass org/gradle/workers/internal/IsolatableSerializerRegistry$NullValueSnapshotSerializer +instanceKlass org/gradle/workers/internal/IsolatableSerializerRegistry$IsolatedJavaSerializedValueSnapshotSerializer +instanceKlass org/gradle/workers/internal/IsolatableSerializerRegistry$FileValueSnapshotSerializer +instanceKlass org/gradle/workers/internal/IsolatableSerializerRegistry$IsolatedImmutableManagedValueSerializer +instanceKlass org/gradle/workers/internal/IsolatableSerializerRegistry$IsolatedManagedValueSerializer +instanceKlass org/gradle/workers/internal/IsolatableSerializerRegistry$AttributeDefinitionSnapshotSerializer +instanceKlass org/gradle/workers/internal/IsolatableSerializerRegistry$LongValueSnapshotSerializer +instanceKlass org/gradle/workers/internal/IsolatableSerializerRegistry$IntegerValueSnapshotSerializer +instanceKlass org/gradle/workers/internal/IsolatableSerializerRegistry$ShortValueSnapshotSerializer +instanceKlass org/gradle/workers/internal/IsolatableSerializerRegistry$BooleanValueSnapshotSerializer +instanceKlass org/gradle/workers/internal/IsolatableSerializerRegistry$StringValueSnapshotSerializer +instanceKlass org/gradle/workers/internal/IsolatableSerializerRegistry$IsolatableSerializer +instanceKlass org/gradle/process/internal/worker/child/ApplicationClassesInSystemClassLoaderWorkerImplementationFactory +instanceKlass org/gradle/process/internal/worker/child/WorkerImplementationFactory +instanceKlass org/gradle/process/internal/worker/SingleRequestWorkerProcessBuilder +instanceKlass org/gradle/process/internal/worker/MultiRequestWorkerProcessBuilder +instanceKlass org/gradle/process/internal/worker/WorkerProcessBuilder +instanceKlass org/gradle/process/internal/worker/WorkerProcessSettings +instanceKlass org/gradle/process/internal/worker/DefaultWorkerProcessFactory +instanceKlass org/gradle/process/internal/health/memory/DefaultMemoryManager$MemoryCheck +instanceKlass org/gradle/process/internal/health/memory/DefaultMemoryManager$OsMemoryListener +instanceKlass org/gradle/process/internal/health/memory/OsMemoryStatusSnapshot +instanceKlass java/lang/reflect/AccessibleObject$$Lambda$643 +instanceKlass sun/reflect/misc/Trampoline +instanceKlass jdk/internal/module/SystemModuleFinders$SystemModuleReader$$Lambda$642 +instanceKlass sun/reflect/misc/MethodUtil$1 +instanceKlass jdk/management/jfr/FlightRecorderMXBeanImpl$MXBeanListener +instanceKlass jdk/jfr/FlightRecorderListener +instanceKlass jdk/jfr/FlightRecorder +instanceKlass jdk/jfr/Recording +instanceKlass javax/management/NotificationFilter +instanceKlass javax/management/NotificationListener +instanceKlass javax/management/StandardMBean$MBeanInfoSafeAction +instanceKlass jdk/management/jfr/StreamManager +instanceKlass jdk/management/jfr/ConfigurationInfo +instanceKlass jdk/management/jfr/EventTypeInfo +instanceKlass jdk/management/jfr/RecordingInfo +instanceKlass sun/reflect/generics/tree/LongSignature +instanceKlass jdk/management/jfr/SettingDescriptorInfo$1 +instanceKlass jdk/management/jfr/SettingDescriptorInfo +instanceKlass com/sun/management/VMOption +instanceKlass com/sun/management/internal/HotSpotDiagnostic +instanceKlass com/sun/management/HotSpotDiagnosticMXBean +instanceKlass java/lang/management/DefaultPlatformMBeanProvider$10$$Lambda$641 +instanceKlass sun/nio/ch/FileChannelImpl$1 +instanceKlass sun/management/ManagementFactoryHelper$1 +instanceKlass java/lang/management/BufferPoolMXBean +instanceKlass com/sun/management/GcInfo +instanceKlass javax/management/openmbean/CompositeDataView +instanceKlass com/sun/management/internal/DiagnosticCommandImpl$Wrapper +instanceKlass com/sun/management/internal/DiagnosticCommandArgumentInfo +instanceKlass com/sun/management/internal/DiagnosticCommandInfo +instanceKlass com/sun/management/internal/DiagnosticCommandImpl$OperationInfoComparator +instanceKlass sun/management/ClassLoadingImpl +instanceKlass java/lang/management/ClassLoadingMXBean +instanceKlass javax/management/MBeanInfo$ArrayGettersSafeAction +instanceKlass javax/management/openmbean/OpenMBeanOperationInfo +instanceKlass java/util/logging/Logging +instanceKlass java/util/logging/LoggingMXBean +instanceKlass sun/management/ManagementFactoryHelper$PlatformLoggingImpl +instanceKlass java/lang/management/PlatformLoggingMXBean +instanceKlass sun/management/CompilationImpl +instanceKlass java/lang/management/CompilationMXBean +instanceKlass sun/management/VMManagementImpl$1 +instanceKlass java/lang/management/DefaultPlatformMBeanProvider$5$$Lambda$640 +instanceKlass java/lang/management/DefaultPlatformMBeanProvider$5$$Lambda$639 +instanceKlass sun/management/BaseOperatingSystemImpl +instanceKlass com/sun/management/OperatingSystemMXBean +instanceKlass java/lang/management/OperatingSystemMXBean +instanceKlass com/sun/jmx/mbeanserver/PerInterface$MethodAndSig +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/management/LockInfo +instanceKlass java/lang/management/ThreadInfo +instanceKlass sun/management/ThreadImpl +instanceKlass com/sun/management/ThreadMXBean +instanceKlass java/lang/management/ThreadMXBean +instanceKlass com/sun/jmx/mbeanserver/WeakIdentityHashMap +instanceKlass com/sun/jmx/mbeanserver/MXBeanLookup +instanceKlass com/sun/jmx/mbeanserver/PerInterface$InitMaps +instanceKlass com/sun/jmx/mbeanserver/PerInterface +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass javax/management/openmbean/OpenMBeanAttributeInfo +instanceKlass javax/management/openmbean/OpenMBeanParameterInfo +instanceKlass com/sun/jmx/mbeanserver/MBeanIntrospector$MBeanInfoMaker +instanceKlass com/sun/jmx/mbeanserver/MBeanAnalyzer$MBeanVisitor +instanceKlass com/sun/jmx/mbeanserver/MBeanAnalyzer$AttrMethods +instanceKlass com/sun/jmx/mbeanserver/MXBeanMapping +instanceKlass javax/management/openmbean/TabularData +instanceKlass javax/management/openmbean/CompositeData +instanceKlass javax/management/openmbean/OpenType +instanceKlass com/sun/jmx/mbeanserver/MXBeanMappingFactory +instanceKlass com/sun/jmx/mbeanserver/ConvertingMethod +instanceKlass com/sun/jmx/mbeanserver/MBeanAnalyzer$MethodOrder +instanceKlass com/sun/jmx/mbeanserver/MBeanAnalyzer +instanceKlass com/sun/jmx/mbeanserver/MBeanIntrospector +instanceKlass javax/management/MXBean +instanceKlass com/sun/jmx/mbeanserver/MBeanSupport +instanceKlass com/sun/jmx/mbeanserver/DescriptorCache +instanceKlass javax/management/JMX +instanceKlass javax/management/StandardMBean +instanceKlass java/lang/management/ManagementFactory$$Lambda$638 +instanceKlass sun/management/RuntimeImpl +instanceKlass java/lang/management/RuntimeMXBean +instanceKlass java/lang/management/ManagementFactory$$Lambda$637 +instanceKlass java/lang/management/ManagementFactory$$Lambda$636 +instanceKlass java/lang/management/ManagementFactory$$Lambda$635 +instanceKlass com/sun/jmx/mbeanserver/JmxMBeanServer$3 +instanceKlass javax/management/ObjectInstance +instanceKlass com/sun/jmx/mbeanserver/NamedObject +instanceKlass com/sun/jmx/interceptor/DefaultMBeanServerInterceptor$ResourceContext$1 +instanceKlass com/sun/jmx/interceptor/DefaultMBeanServerInterceptor$ResourceContext +instanceKlass com/sun/jmx/mbeanserver/Repository$RegistrationContext +instanceKlass com/sun/jmx/mbeanserver/DynamicMBean2 +instanceKlass com/sun/jmx/defaults/JmxProperties +instanceKlass com/sun/jmx/mbeanserver/Introspector +instanceKlass com/sun/jmx/mbeanserver/JmxMBeanServer$2 +instanceKlass com/sun/jmx/interceptor/DefaultMBeanServerInterceptor +instanceKlass com/sun/jmx/interceptor/MBeanServerInterceptor +instanceKlass com/sun/jmx/mbeanserver/Repository +instanceKlass com/sun/jmx/mbeanserver/JmxMBeanServer$1 +instanceKlass com/sun/jmx/mbeanserver/SecureClassLoaderRepository +instanceKlass com/sun/jmx/mbeanserver/MBeanInstantiator +instanceKlass com/sun/jmx/mbeanserver/ClassLoaderRepositorySupport$LoaderEntry +instanceKlass com/sun/jmx/mbeanserver/ClassLoaderRepositorySupport +instanceKlass com/sun/jmx/mbeanserver/ModifiableClassLoaderRepository +instanceKlass javax/management/loading/ClassLoaderRepository +instanceKlass javax/management/ImmutableDescriptor +instanceKlass javax/management/Descriptor +instanceKlass sun/util/logging/PlatformLogger$ConfigurableBridge$LoggerConfiguration +instanceKlass jdk/internal/logger/LoggerFinderLoader +instanceKlass java/lang/System$LoggerFinder$$Lambda$634 +instanceKlass jdk/internal/logger/LazyLoggers$LazyLoggerFactories +instanceKlass jdk/internal/logger/LazyLoggers$1 +instanceKlass jdk/internal/logger/LazyLoggers +instanceKlass com/sun/jmx/remote/util/ClassLogger +instanceKlass javax/management/NotificationBroadcasterSupport$1 +instanceKlass javax/management/NotificationBroadcasterSupport +instanceKlass javax/management/MBeanInfo +instanceKlass javax/management/MBeanFeatureInfo +instanceKlass javax/management/DescriptorRead +instanceKlass javax/management/MBeanServerDelegate +instanceKlass javax/management/MBeanServerDelegateMBean +instanceKlass javax/management/MBeanRegistration +instanceKlass com/sun/jmx/mbeanserver/JmxMBeanServer +instanceKlass com/sun/jmx/mbeanserver/SunJmxMBeanServer +instanceKlass javax/management/MBeanServer +instanceKlass javax/management/MBeanServerConnection +instanceKlass javax/management/MBeanServerBuilder +instanceKlass javax/management/MBeanServerFactory +instanceKlass org/gradle/process/internal/health/memory/MBeanAttributeProvider +instanceKlass org/gradle/process/internal/health/memory/JvmMemoryStatusListener +instanceKlass org/gradle/process/internal/health/memory/DefaultMemoryManager +instanceKlass org/gradle/process/internal/health/memory/JvmMemoryStatus +instanceKlass org/gradle/process/internal/health/memory/DefaultJvmMemoryInfo +instanceKlass org/gradle/process/internal/health/memory/OsMemoryStatus +instanceKlass org/gradle/process/internal/health/memory/MBeanOsMemoryInfo +instanceKlass org/gradle/process/internal/health/memory/DefaultOsMemoryInfo +instanceKlass org/gradle/internal/jvm/inspection/DefaultJvmVersionDetector +instanceKlass org/gradle/internal/remote/internal/hub/MessageHubBackedServer +instanceKlass org/gradle/internal/jvm/inspection/JvmInstallationMetadata$DefaultJvmInstallationMetadata$$Lambda$633 +instanceKlass org/gradle/internal/jvm/inspection/JvmInstallationMetadata$DefaultJvmInstallationMetadata +instanceKlass org/gradle/internal/jvm/inspection/CachingJvmMetadataDetector$$Lambda$632 +instanceKlass org/gradle/internal/jvm/inspection/JvmInstallationMetadata +instanceKlass org/gradle/internal/jvm/inspection/DefaultJvmMetadataDetector +instanceKlass org/gradle/internal/jvm/inspection/CachingJvmMetadataDetector +instanceKlass org/gradle/jvm/toolchain/internal/JavaInstallationRegistry$$Lambda$631 +instanceKlass net/rubygrapefruit/platform/internal/DefaultWindowsRegistry +instanceKlass org/apache/xerces/jaxp/JAXPConstants +instanceKlass javax/xml/parsers/DocumentBuilder +instanceKlass javax/xml/parsers/FactoryFinder$1 +instanceKlass javax/xml/parsers/FactoryFinder$$Lambda$630 +instanceKlass javax/xml/parsers/FactoryFinder +instanceKlass javax/xml/parsers/DocumentBuilderFactory +instanceKlass javax/xml/xpath/XPathFactoryFinder$$Lambda$629 +instanceKlass jdk/xml/internal/XMLSecurityManager +instanceKlass jdk/xml/internal/SecuritySupport$$Lambda$628 +instanceKlass jdk/xml/internal/JdkXmlFeatures +instanceKlass javax/xml/xpath/XPathFactoryFinder$$Lambda$627 +instanceKlass javax/xml/xpath/XPathFactoryFinder$2 +instanceKlass javax/xml/xpath/XPathFactoryFinder$$Lambda$626 +instanceKlass jdk/xml/internal/SecuritySupport$$Lambda$625 +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$BMH +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass javax/xml/xpath/XPathFactoryFinder$$Lambda$624 +instanceKlass javax/xml/xpath/XPathFactoryFinder$$Lambda$623 +instanceKlass jdk/xml/internal/SecuritySupport$$Lambda$622 +instanceKlass javax/xml/xpath/XPathFactoryFinder +instanceKlass jdk/xml/internal/SecuritySupport$$Lambda$621 +instanceKlass jdk/xml/internal/SecuritySupport +instanceKlass javax/xml/xpath/XPathFactory +instanceKlass org/gradle/jvm/toolchain/internal/AutoInstalledInstallationSupplier$$Lambda$620 +instanceKlass org/gradle/jvm/toolchain/internal/AsdfInstallationSupplier$$Lambda$619 +instanceKlass org/gradle/api/internal/provider/sources/SystemPropertyValueSource$Parameters_Decorated +instanceKlass org/gradle/api/internal/provider/sources/SystemPropertyValueSource$Parameters +instanceKlass org/gradle/api/internal/provider/DefaultProviderFactory$$Lambda$618 +instanceKlass org/gradle/api/internal/provider/sources/EnvironmentVariableValueSource$Parameters_Decorated +instanceKlass org/gradle/api/internal/provider/sources/EnvironmentVariableValueSource$Parameters +instanceKlass org/gradle/api/internal/provider/DefaultProviderFactory$$Lambda$617 +instanceKlass org/gradle/api/internal/provider/sources/EnvironmentVariableValueSource +instanceKlass org/gradle/jvm/toolchain/internal/AutoDetectingInstallationSupplier$$Lambda$616 +instanceKlass org/gradle/api/internal/provider/DefaultValueSourceProviderFactory$LazilyObtainedValue +instanceKlass org/gradle/api/internal/provider/DefaultValueSourceProviderFactory$DefaultObtainedValue +instanceKlass org/gradle/api/internal/provider/DefaultValueSourceProviderFactory$DefaultValueSourceSpec +instanceKlass org/gradle/api/internal/provider/sources/GradlePropertyValueSource$Parameters_Decorated +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/internal/instantiation/generator/AsmBackedClassGenerator$ClassBuilderImpl$$Lambda$615 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/api/internal/provider/sources/GradlePropertyValueSource$Parameters +instanceKlass org/gradle/api/internal/provider/sources/AbstractPropertyValueSource$Parameters +instanceKlass org/gradle/api/internal/provider/DefaultProviderFactory$$Lambda$614 +instanceKlass org/gradle/api/internal/provider/sources/AbstractPropertyValueSource +instanceKlass org/gradle/api/plugins/JavaPluginConvention +instanceKlass org/gradle/internal/jvm/DefaultModularitySpec +instanceKlass org/gradle/api/jvm/ModularitySpec +instanceKlass org/gradle/api/java/archives/Manifest +instanceKlass org/gradle/jvm/toolchain/internal/DefaultJvmVendorSpec$$Lambda$613 +instanceKlass org/gradle/jvm/toolchain/internal/DefaultJvmVendorSpec$$Lambda$612 +instanceKlass org/gradle/internal/jvm/inspection/JvmVendor +instanceKlass org/gradle/jvm/toolchain/JvmVendorSpec +instanceKlass org/gradle/jvm/toolchain/JavaLanguageVersion +instanceKlass org/gradle/jvm/toolchain/JvmImplementation +instanceKlass org/gradle/jvm/toolchain/internal/DefaultToolchainSpec +instanceKlass org/gradle/jvm/toolchain/internal/ToolchainSpecInternal +instanceKlass org/gradle/api/reporting/ReportSpec +instanceKlass org/gradle/api/reporting/ReportingExtension +instanceKlass org/gradle/api/plugins/ReportingBasePlugin +instanceKlass org/gradle/api/internal/artifacts/type/DefaultArtifactTypeContainer$DefaultArtifactTypeDefinition +instanceKlass org/gradle/api/internal/tasks/DefaultSourceSetContainer$1 +instanceKlass org/gradle/api/plugins/JvmEcosystemPlugin +instanceKlass org/gradle/api/plugins/BasePlugin$$Lambda$611 +instanceKlass org/gradle/api/plugins/BasePlugin$$Lambda$610 +instanceKlass org/gradle/api/internal/ExecuteDomainObjectCollectionCallbackBuildOperationType$1 +instanceKlass org/gradle/api/internal/ExecuteDomainObjectCollectionCallbackBuildOperationType$Result +instanceKlass org/gradle/api/internal/ExecuteDomainObjectCollectionCallbackBuildOperationType +instanceKlass org/gradle/api/internal/DefaultCollectionCallbackActionDecorator$OperationDetails +instanceKlass org/gradle/api/internal/DefaultCollectionCallbackActionDecorator$Operation +instanceKlass org/gradle/api/plugins/BasePlugin$$Lambda$609 +instanceKlass org/gradle/api/internal/GeneratedSubclasses +instanceKlass org/gradle/api/internal/plugins/DslObject +instanceKlass org/gradle/api/plugins/BasePlugin$$Lambda$608 +instanceKlass org/gradle/api/internal/plugins/AbstractRule +instanceKlass org/gradle/api/internal/file/DefaultFilePropertyFactory$PathToDirectoryTransformer +instanceKlass org/gradle/api/plugins/BasePluginConvention +instanceKlass org/gradle/api/plugins/internal/DefaultBasePluginExtension +instanceKlass org/gradle/language/base/plugins/LifecycleBasePlugin$$Lambda$607 +instanceKlass org/gradle/language/base/plugins/LifecycleBasePlugin$$Lambda$606 +instanceKlass org/gradle/language/base/plugins/LifecycleBasePlugin$$Lambda$605 +instanceKlass org/gradle/language/base/internal/plugins/CleanRule +instanceKlass org/gradle/language/base/plugins/LifecycleBasePlugin$$Lambda$604 +instanceKlass org/gradle/language/base/plugins/LifecycleBasePlugin$$Lambda$603 +instanceKlass org/gradle/language/base/plugins/LifecycleBasePlugin +instanceKlass org/gradle/api/internal/plugins/DefaultArtifactPublicationSet +instanceKlass org/gradle/api/plugins/BasePluginExtension +instanceKlass org/gradle/api/plugins/BasePlugin +instanceKlass org/gradle/api/internal/tasks/compile/HasCompileOptions +instanceKlass org/gradle/api/plugins/internal/DefaultJavaPluginExtension +instanceKlass org/gradle/api/plugins/JavaBasePlugin +instanceKlass org/gradle/api/plugins/JavaPlatformPlugin +instanceKlass org/gradle/api/internal/plugins/PluginManagerInternal$PluginWithId +instanceKlass org/gradle/api/plugins/jvm/internal/JvmEcosystemAttributesDetails +instanceKlass org/gradle/api/plugins/jvm/internal/DefaultJvmPluginServices +instanceKlass org/gradle/api/internal/component/SoftwareComponentInternal +instanceKlass org/gradle/api/plugins/internal/DefaultSoftwareComponentFactory +instanceKlass org/gradle/api/plugins/jvm/internal/OutgoingElementsBuilder +instanceKlass org/gradle/api/plugins/jvm/JvmTestSuite +instanceKlass org/gradle/testing/base/TestSuite +instanceKlass org/gradle/testing/base/TestingExtension +instanceKlass org/gradle/api/tasks/SourceSet +instanceKlass org/gradle/api/plugins/JavaPluginExtension +instanceKlass org/gradle/plugin/use/internal/DefaultPluginRequestApplicator$$Lambda$602 +instanceKlass org/gradle/plugin/use/internal/DefaultPluginRequestApplicator$$Lambda$601 +instanceKlass org/gradle/internal/snapshot/MetadataSnapshot$1 +instanceKlass org/gradle/internal/classpath/DefaultCachedClasspathTransformer$1 +instanceKlass org/gradle/api/internal/artifacts/DownloadArtifactBuildOperationType$1 +instanceKlass org/gradle/api/internal/artifacts/DownloadArtifactBuildOperationType$Result +instanceKlass org/gradle/api/internal/artifacts/DownloadArtifactBuildOperationType +instanceKlass org/gradle/api/internal/artifacts/DefaultArtifactIdentifier +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/artifacts/DefaultCachedArtifact +instanceKlass org/gradle/internal/resource/cached/AbstractCachedIndex$$Lambda$600 +instanceKlass org/gradle/internal/resource/cached/AbstractCachedIndex$$Lambda$596 +instanceKlass org/gradle/internal/resource/cached/AbstractCachedIndex$$Lambda$597 +instanceKlass org/gradle/internal/resource/cached/AbstractCachedIndex$$Lambda$599 +instanceKlass org/gradle/internal/resource/cached/AbstractCachedIndex$$Lambda$589 +instanceKlass org/gradle/internal/resource/cached/AbstractCachedIndex$$Lambda$598 +instanceKlass org/gradle/internal/resource/cached/AbstractCachedIndex$$Lambda$593 +instanceKlass org/gradle/internal/resource/cached/AbstractCachedIndex$$Lambda$591 +instanceKlass org/gradle/internal/resource/cached/AbstractCachedIndex$$Lambda$590 +instanceKlass org/gradle/internal/resource/cached/AbstractCachedIndex$$Lambda$594 +instanceKlass org/gradle/internal/resource/cached/AbstractCachedIndex$$Lambda$592 +instanceKlass org/gradle/internal/resource/cached/AbstractCachedIndex$$Lambda$595 +instanceKlass org/gradle/internal/resource/cached/AbstractCachedIndex$$Lambda$588 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/artifacts/ArtifactAtRepositoryKey +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$587 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$582 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$585 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$586 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$584 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$583 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$580 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$574 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$578 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$579 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$581 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$577 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$576 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$575 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$573 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$570 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$572 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$562 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$571 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$568 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$569 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$567 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$565 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$566 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$563 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$564 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$550 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$561 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$557 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$558 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$560 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$559 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$555 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$554 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$556 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$549 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$553 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$551 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$552 +instanceKlass org/gradle/internal/model/CalculatedValueContainer$CalculationState$$Lambda$546 +instanceKlass org/gradle/internal/model/CalculatedValueContainer$CalculationState$$Lambda$548 +instanceKlass org/gradle/internal/model/CalculatedValueContainer$CalculationState$$Lambda$545 +instanceKlass org/gradle/internal/model/CalculatedValueContainer$CalculationState$$Lambda$547 +instanceKlass org/gradle/internal/model/CalculatedValueContainer$CalculationState$$Lambda$543 +instanceKlass org/gradle/internal/model/CalculatedValueContainer$CalculationState$$Lambda$544 +instanceKlass org/gradle/internal/model/CalculatedValueContainer$CalculationState$$Lambda$542 +instanceKlass org/gradle/api/internal/artifacts/DownloadArtifactBuildOperationType$DetailsImpl +instanceKlass org/gradle/api/internal/artifacts/DownloadArtifactBuildOperationType$Details +instanceKlass org/gradle/internal/resources/DefaultResourceLockCoordinationService$ReleaseLocks +instanceKlass org/gradle/internal/operations/DefaultBuildOperationQueue$WorkerRunnable$$Lambda$541 +instanceKlass org/gradle/internal/operations/DefaultBuildOperationQueue$WorkerRunnable$$Lambda$540 +instanceKlass org/gradle/internal/operations/DefaultBuildOperationQueue$WorkerRunnable$$Lambda$533 +instanceKlass org/gradle/internal/operations/DefaultBuildOperationQueue$WorkerRunnable$$Lambda$536 +instanceKlass org/gradle/internal/operations/DefaultBuildOperationQueue$WorkerRunnable$$Lambda$537 +instanceKlass org/gradle/internal/operations/DefaultBuildOperationQueue$WorkerRunnable$$Lambda$532 +instanceKlass org/gradle/internal/operations/DefaultBuildOperationQueue$WorkerRunnable$$Lambda$539 +instanceKlass org/gradle/internal/operations/DefaultBuildOperationQueue$$Lambda$538 +instanceKlass org/gradle/internal/operations/DefaultBuildOperationQueue$WorkerRunnable$$Lambda$528 +instanceKlass org/gradle/internal/operations/DefaultBuildOperationQueue$WorkerRunnable$$Lambda$535 +instanceKlass org/gradle/internal/operations/DefaultBuildOperationQueue$WorkerRunnable$$Lambda$534 +instanceKlass org/gradle/internal/operations/DefaultBuildOperationQueue$WorkerRunnable$$Lambda$527 +instanceKlass org/gradle/internal/operations/DefaultBuildOperationQueue$WorkerRunnable$$Lambda$531 +instanceKlass org/gradle/internal/operations/DefaultBuildOperationQueue$WorkerRunnable$$Lambda$530 +instanceKlass org/gradle/internal/operations/DefaultBuildOperationQueue$WorkerRunnable$$Lambda$529 +instanceKlass org/gradle/internal/operations/DefaultBuildOperationQueue$WorkerRunnable +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/ArtifactBackedResolvedVariant$DownloadArtifactFile +instanceKlass org/gradle/internal/operations/DefaultBuildOperationQueue +instanceKlass org/gradle/internal/operations/DefaultBuildOperationExecutor$$Lambda$526 +instanceKlass org/gradle/internal/operations/DefaultBuildOperationExecutor$QueueWorker +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/ParallelResolveArtifactSet$VisitingSet$StartVisitAction +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/ResolvedArtifactSet$Visitor +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/ParallelResolveArtifactSet +instanceKlass org/gradle/api/internal/artifacts/ivyservice/DefaultLenientConfiguration$ResolveArtifactsDetails +instanceKlass org/gradle/api/internal/artifacts/ResolveArtifactsBuildOperationType$Details +instanceKlass org/gradle/api/internal/artifacts/ivyservice/DefaultLenientConfiguration$3 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/DefaultLenientConfiguration$2 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/DefaultVisitedArtifactResults$DefaultSelectedArtifactResults +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/CompositeResolvedArtifactSet +instanceKlass org/gradle/internal/component/local/model/OpaqueComponentIdentifier +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/ArtifactBackedResolvedVariant$SingleArtifactSet +instanceKlass org/gradle/api/internal/artifacts/PreResolvedResolvableArtifact +instanceKlass org/gradle/api/internal/artifacts/DefaultResolvableArtifact$1 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/DefaultArtifactSet$$Lambda$525 +instanceKlass org/gradle/api/artifacts/ResolvedArtifact +instanceKlass org/gradle/api/internal/tasks/FinalizeAction +instanceKlass org/gradle/api/internal/artifacts/DefaultResolvableArtifact +instanceKlass org/gradle/internal/model/CalculatedValueContainer$CalculationState +instanceKlass org/gradle/internal/model/CalculatedValueContainer +instanceKlass org/gradle/api/internal/tasks/WorkNodeAction +instanceKlass org/gradle/internal/resolve/result/BuildableArtifactResolveResult +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/DefaultArtifactSet$LazyArtifactSupplier +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/excludes/specs/ExcludeEverything +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/excludes/simple/DefaultGroupExclude +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/excludes/specs/GroupExclude +instanceKlass org/apache/ivy/plugins/matcher/PatternMatcher +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/excludes/PatternMatchers +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/excludes/ModuleExclusions$$Lambda$524 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/selectors/SelectorStateResolverResults$Registration +instanceKlass com/google/common/primitives/Longs$AsciiDigits +instanceKlass org/gradle/internal/component/external/descriptor/DefaultExclude +instanceKlass org/gradle/internal/component/model/Exclude +instanceKlass org/gradle/internal/component/external/model/ConfigurationBoundExternalDependencyMetadata +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/excludes/factories/Optimizations +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/excludes/factories/OptimizingExcludeFactory$$Lambda$523 +instanceKlass org/gradle/internal/component/model/DefaultCompatibilityCheckResult +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ResolvedFilesCollectingVisitor +instanceKlass org/gradle/api/internal/file/AbstractFileCollection$2 +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfiguration$ConfigurationResolvableDependencies$ConfigurationArtifactView +instanceKlass org/gradle/api/internal/initialization/DefaultScriptClassPathResolver$$Lambda$522 +instanceKlass org/gradle/api/internal/initialization/DefaultScriptClassPathResolver$$Lambda$521 +instanceKlass org/gradle/api/internal/tasks/FailureCollectingTaskDependencyResolveContext +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/BuildDependenciesOnlyVisitedArtifactSet$BuildDependenciesOnlySelectedArtifactSet +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/DefaultVisitedArtifactResults$NoArtifactResults +instanceKlass org/gradle/api/internal/artifacts/transform/AttributeMatchingVariantSelector +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/DefaultResolutionResultBuilder$RootFactory +instanceKlass org/gradle/api/internal/artifacts/result/DefaultResolvedComponentResult +instanceKlass org/gradle/api/internal/artifacts/result/ResolvedComponentResultInternal +instanceKlass org/gradle/internal/service/scopes/ProjectScopeServices$$Lambda$520 +instanceKlass org/gradle/internal/service/scopes/DefaultProjectFinder +instanceKlass org/gradle/internal/execution/steps/CancelExecutionStep +instanceKlass org/gradle/caching/internal/CacheableEntity +instanceKlass org/gradle/internal/execution/steps/BuildCacheStep +instanceKlass org/gradle/internal/execution/steps/RecordOutputsStep +instanceKlass org/gradle/internal/execution/steps/legacy/MarkSnapshottingInputsFinishedStep +instanceKlass org/gradle/internal/execution/caching/CachingState$Disabled +instanceKlass org/gradle/internal/execution/caching/CachingState +instanceKlass org/gradle/internal/execution/caching/CachingStateFactory +instanceKlass org/gradle/internal/execution/steps/ResolveCachingStateStep +instanceKlass org/gradle/internal/execution/steps/SkipEmptyWorkStep +instanceKlass org/gradle/internal/execution/steps/legacy/MarkSnapshottingInputsStartedStep +instanceKlass org/gradle/internal/service/scopes/ExecutionGradleServices$$Lambda$519 +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$BMH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$BMH +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/internal/execution/history/impl/DefaultOutputFilesRepository +instanceKlass org/gradle/internal/cleanup/DefaultBuildOutputCleanupRegistry +instanceKlass org/gradle/caching/internal/controller/BuildCacheLoadCommand +instanceKlass org/gradle/caching/internal/controller/BuildCacheStoreCommand +instanceKlass org/gradle/caching/internal/controller/impl/DefaultBuildCacheCommandFactory +instanceKlass org/gradle/caching/internal/BuildCacheServices$3$$Lambda$518 +instanceKlass org/gradle/caching/internal/origin/OriginMetadataFactory$HostnameLookup +instanceKlass org/gradle/caching/internal/BuildCacheServices$3$$Lambda$517 +instanceKlass org/gradle/caching/internal/origin/OriginMetadataFactory$PropertiesConfigurator +instanceKlass org/gradle/internal/nativeintegration/services/NativeServices$FixedHostname +instanceKlass net/rubygrapefruit/platform/internal/MutableSystemInfo +instanceKlass net/rubygrapefruit/platform/internal/DefaultSystemInfo +instanceKlass org/gradle/caching/internal/BuildCacheServices$FilePermissionsAccessAdapter +instanceKlass org/gradle/caching/internal/packaging/impl/TarBuildCacheEntryPacker$$Lambda$516 +instanceKlass org/apache/commons/compress/archivers/ArchiveEntry +instanceKlass org/gradle/caching/internal/packaging/impl/TarBuildCacheEntryPacker +instanceKlass org/gradle/caching/internal/packaging/impl/GZipBuildCacheEntryPacker +instanceKlass org/gradle/caching/internal/packaging/impl/DefaultTarPackerFileSystemSupport +instanceKlass org/gradle/api/internal/artifacts/dsl/DefaultComponentMetadataHandler$$Lambda$515 +instanceKlass org/gradle/api/internal/artifacts/dsl/DefaultComponentMetadataHandler$$Lambda$514 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/moduleconverter/DefaultRootComponentMetadataBuilder$$Lambda$513 +instanceKlass org/gradle/api/internal/artifacts/ProjectBackedModule +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/NoRepositoriesResolver +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/CachingDependencyResultFactory +instanceKlass org/gradle/api/artifacts/result/DependencyResult +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/DefaultResolutionResultBuilder +instanceKlass org/gradle/api/internal/artifacts/ivyservice/InMemoryResolutionResultBuilder +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfiguration$$Lambda$512 +instanceKlass org/gradle/api/internal/tasks/TaskDependencyContainer$$Lambda$511 +instanceKlass org/gradle/internal/graph/CachingDirectedGraphWalker$NodeDetails +instanceKlass java/util/ArrayDeque$$Lambda$510 +instanceKlass org/gradle/api/internal/tasks/WorkDependencyResolver$1 +instanceKlass org/gradle/plugin/use/tracker/internal/PluginVersionTracker$$Lambda$509 +instanceKlass org/gradle/api/internal/initialization/DefaultScriptHandler$$Lambda$508 +instanceKlass org/gradle/api/internal/catalog/parser/StrictVersionParser$RichVersion +instanceKlass org/gradle/api/internal/artifacts/dsl/ParsedModuleStringNotation +instanceKlass org/gradle/api/internal/initialization/DefaultScriptHandler$$Lambda$507 +instanceKlass org/gradle/api/attributes/plugin/GradlePluginApiVersion$Impl +instanceKlass org/gradle/api/attributes/Bundling$Impl +instanceKlass org/gradle/api/internal/project/DefaultProjectStateRegistry$CalculatedModelValueImpl +instanceKlass org/gradle/api/internal/artifacts/dsl/dependencies/DefaultDependencyHandler$DirectDependencyAdder +instanceKlass org/gradle/api/artifacts/dsl/ExternalModuleDependencyVariantSpec +instanceKlass org/gradle/api/internal/artifacts/dsl/dependencies/DefaultDependencyHandler +instanceKlass org/gradle/api/artifacts/query/ArtifactResolutionQuery +instanceKlass org/gradle/api/internal/artifacts/query/DefaultArtifactResolutionQueryFactory +instanceKlass org/gradle/api/internal/artifacts/dsl/dependencies/DefaultDependencyConstraintHandler$DependencyConstraintAdder +instanceKlass org/gradle/api/internal/artifacts/dsl/dependencies/DefaultDependencyConstraintHandler$1 +instanceKlass org/gradle/api/internal/artifacts/dsl/dependencies/DynamicAddDependencyMethods +instanceKlass org/gradle/api/internal/artifacts/dsl/dependencies/DynamicAddDependencyMethods$DependencyAdder +instanceKlass org/gradle/api/internal/artifacts/dsl/dependencies/DefaultDependencyConstraintHandler +instanceKlass org/gradle/api/internal/notations/ClientModuleNotationParserFactory +instanceKlass org/gradle/api/internal/notations/DependencyConstraintProjectNotationConverter +instanceKlass org/gradle/api/internal/artifacts/dependencies/DefaultDependencyConstraint +instanceKlass org/gradle/api/internal/artifacts/dependencies/DependencyConstraintInternal +instanceKlass org/gradle/api/internal/notations/DependencyConstraintNotationParser$MinimalExternalDependencyNotationConverter +instanceKlass org/gradle/api/internal/notations/DependencyConstraintNotationParser +instanceKlass org/gradle/api/internal/notations/DependencyClassPathNotationConverter +instanceKlass org/gradle/api/internal/notations/DependencyProjectNotationConverter +instanceKlass org/gradle/api/internal/notations/DependencyFilesNotationConverter +instanceKlass org/gradle/internal/typeconversion/TypeFilteringNotationConverter +instanceKlass org/gradle/api/internal/notations/DependencyNotationParser$MinimalExternalDependencyNotationConverter +instanceKlass org/gradle/api/artifacts/MinimalExternalModuleDependency +instanceKlass org/gradle/api/internal/notations/DependencyNotationParser +instanceKlass org/gradle/api/internal/artifacts/DefaultDependencyFactory +instanceKlass org/gradle/api/internal/notations/ProjectDependencyFactory +instanceKlass org/gradle/plugin/use/internal/DefaultPluginRequestApplicator$1$1$$Lambda$506 +instanceKlass org/gradle/plugin/use/internal/DefaultPluginRequestApplicator$1$1$$Lambda$505 +instanceKlass org/gradle/plugin/use/internal/DefaultPluginRequestApplicator$1$1 +instanceKlass org/gradle/plugin/use/resolve/internal/PluginResolveContext +instanceKlass org/gradle/plugin/use/internal/DefaultPluginRequestApplicator$1 +instanceKlass org/gradle/plugin/use/resolve/internal/ArtifactRepositoriesPluginResolver$1 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ErrorHandlingConfigurationResolver$ErrorHandlingResolvedConfiguration +instanceKlass org/gradle/api/internal/artifacts/ivyservice/DefaultResolvedConfiguration +instanceKlass org/gradle/api/internal/artifacts/ivyservice/DefaultLenientConfiguration$1 +instanceKlass org/gradle/api/internal/artifacts/ResolveArtifactsBuildOperationType$Result +instanceKlass org/gradle/api/internal/artifacts/ivyservice/DefaultLenientConfiguration +instanceKlass org/gradle/api/artifacts/LenientConfiguration +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/oldresult/TransientConfigurationResultsLoader +instanceKlass org/gradle/api/internal/artifacts/configurations/ResolveConfigurationResolutionBuildOperationResult$LazyDesugaringAttributeContainer +instanceKlass org/gradle/api/internal/artifacts/configurations/ResolveConfigurationResolutionBuildOperationResult +instanceKlass org/gradle/api/internal/artifacts/configurations/ResolveConfigurationDependenciesBuildOperationType$Result +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ErrorHandlingConfigurationResolver$ErrorHandlingResolutionResult +instanceKlass org/gradle/api/internal/artifacts/ivyservice/DefaultConfigurationResolver$ArtifactResolveState +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfiguration$$Lambda$504 +instanceKlass org/gradle/api/internal/artifacts/transform/FilteredResultFactory +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfiguration$DefaultResolutionResultProvider +instanceKlass org/gradle/api/internal/artifacts/transform/DefaultExtraExecutionGraphDependenciesResolverFactory$$Lambda$503 +instanceKlass org/gradle/api/internal/artifacts/transform/TransformUpstreamDependencies +instanceKlass org/gradle/api/internal/artifacts/transform/TransformationStep +instanceKlass org/gradle/api/internal/artifacts/transform/Transformation +instanceKlass org/gradle/api/internal/artifacts/transform/TransformUpstreamDependenciesResolver +instanceKlass org/gradle/api/internal/artifacts/transform/DefaultExtraExecutionGraphDependenciesResolverFactory +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/SelectedArtifactSet +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/BuildDependenciesOnlyVisitedArtifactSet +instanceKlass org/gradle/api/internal/artifacts/result/DefaultResolutionResult +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/StreamingResolutionResultBuilder$RootFactory +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/oldresult/DefaultResolvedGraphResults +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/DefaultVisitedFileDependencyResults +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/SelectedArtifactResults +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/DefaultVisitedArtifactResults +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/store/DefaultBinaryStore$SimpleBinaryData +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/oldresult/TransientConfigurationResultsBuilder$$Lambda$502 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/StreamingResolutionResultBuilder$$Lambda$501 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/oldresult/TransientConfigurationResultsBuilder$$Lambda$500 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/ResolvedArtifactsGraphVisitor$ArtifactsForNode +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/ResolvedArtifactSet$1 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/ArtifactBackedResolvedVariant +instanceKlass org/gradle/api/artifacts/type/ArtifactTypeDefinition +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/ResolvableArtifact +instanceKlass org/gradle/internal/model/CalculatedValue +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/DefaultArtifactSet +instanceKlass org/gradle/api/internal/artifacts/transform/VariantSelector$Factory +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/ResolvedVariantSet +instanceKlass org/gradle/internal/component/external/model/FixedComponentArtifacts +instanceKlass org/gradle/internal/component/model/ComponentArtifacts +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/CachingModuleComponentRepository$$Lambda$499 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/artifacts/DefaultCachedArtifacts +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/artifacts/AbstractArtifactsCache$ModuleArtifactsCacheEntry +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/artifacts/ArtifactsAtRepositoryKey +instanceKlass org/gradle/internal/component/model/WrappedComponentResolveMetadata +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$498 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$497 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$496 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/StreamingResolutionResultBuilder$$Lambda$495 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/oldresult/TransientConfigurationResultsBuilder$$Lambda$494 +instanceKlass org/gradle/api/internal/attributes/AttributeDesugaring$$Lambda$493 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/conflicts/VersionConflictResolutionDetails +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/oldresult/TransientConfigurationResultsBuilder$$Lambda$492 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/ComponentState$$Lambda$491 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/ComponentState$$Lambda$490 +instanceKlass org/gradle/api/internal/artifacts/result/DefaultResolvedVariantResult +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/ComponentSelectionReasons$DefaultComponentSelectionReason +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/StreamingResolutionResultBuilder$$Lambda$489 +instanceKlass org/gradle/internal/component/local/model/DefaultProjectComponentSelector +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/StreamingResolutionResultBuilder$$Lambda$488 +instanceKlass org/gradle/cache/internal/BinaryStore$WriteAction +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/ResolveState$$Lambda$487 +instanceKlass org/gradle/internal/component/model/DefaultSelectedByVariantMatchingConfigurationMetadata +instanceKlass org/gradle/internal/component/model/DefaultMultipleCandidateResult +instanceKlass org/gradle/internal/component/model/AttributeSelectionUtils +instanceKlass org/gradle/api/internal/attributes/DefaultAttributesSchema$ExtraAttributesEntry +instanceKlass org/gradle/internal/component/model/MultipleCandidateMatcher +instanceKlass org/gradle/internal/component/model/ComponentAttributeMatcher$CachedQuery +instanceKlass org/gradle/internal/component/model/LoggingAttributeMatchingExplanationBuilder +instanceKlass org/gradle/internal/component/model/AttributeMatchingExplanationBuilder$$Lambda$486 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/internal/component/model/AttributeMatchingExplanationBuilder +instanceKlass org/gradle/internal/component/model/AttributeConfigurationSelector +instanceKlass org/gradle/internal/component/external/model/DefaultConfigurationMetadata$1 +instanceKlass org/gradle/internal/component/external/model/DefaultConfigurationMetadata$2 +instanceKlass org/gradle/internal/component/external/model/DefaultConfigurationMetadata$Builder +instanceKlass org/gradle/api/internal/artifacts/repositories/metadata/DefaultMavenImmutableAttributesFactory$ComponentTypeEntry +instanceKlass org/gradle/internal/component/external/model/DefaultShadowedCapability +instanceKlass org/gradle/internal/component/external/model/ShadowedCapability +instanceKlass org/gradle/internal/component/external/model/maven/DefaultMavenModuleResolveMetadata$1 +instanceKlass org/gradle/internal/component/external/model/AbstractConfigurationMetadata +instanceKlass org/gradle/internal/component/model/ModuleConfigurationMetadata +instanceKlass org/gradle/internal/component/model/DefaultIvyArtifactName +instanceKlass org/gradle/api/artifacts/ArtifactIdentifier +instanceKlass org/gradle/internal/component/external/model/DefaultModuleComponentArtifactMetadata +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/RepositoryChainModuleSource +instanceKlass org/gradle/internal/resolve/ResolveExceptionAnalyzer +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/RepositoryChainModuleResolution +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/RepositoryChainComponentMetaDataResolver$1 +instanceKlass org/gradle/api/internal/artifacts/DefaultComponentSelection +instanceKlass org/gradle/api/internal/artifacts/repositories/resolver/ComponentMetadataAdapter +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/CachedMetadataProvider +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$485 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$484 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$483 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$482 +instanceKlass org/gradle/internal/resolve/result/BuildableModuleComponentMetaDataResolveResult +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ComponentMetaDataResolveState +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolutionstrategy/DefaultCachePolicy$AbstractResolutionControl +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/dynamicversions/DefaultResolvedModuleVersion +instanceKlass org/gradle/internal/component/external/model/AbstractModuleComponentResolveMetadata +instanceKlass org/gradle/api/internal/artifacts/repositories/metadata/DefaultMetadataFileSource +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ModuleDescriptorHashModuleSource +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/parser/data/PomDependencyMgt +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/parser/GradlePomModuleDescriptorBuilder +instanceKlass org/gradle/internal/component/model/MutableModuleSources +instanceKlass org/gradle/api/capabilities/MutableCapabilitiesMetadata +instanceKlass org/gradle/internal/component/external/model/VariantMetadataRules +instanceKlass org/gradle/internal/component/external/model/maven/MavenModuleResolveMetadata +instanceKlass org/gradle/internal/component/external/model/MutableComponentVariant +instanceKlass org/gradle/internal/component/external/model/AbstractMutableModuleComponentResolveMetadata +instanceKlass org/gradle/internal/component/external/model/ExternalDependencyDescriptor +instanceKlass org/gradle/api/internal/attributes/DefaultImmutableAttributesFactory$$Lambda$481 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/ModuleMetadataSerializer$Reader +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/StringDeduplicatingDecoder +instanceKlass org/gradle/internal/resource/local/DefaultLocallyAvailableResource$$Lambda$480 +instanceKlass org/gradle/internal/resource/local/AbstractLocallyAvailableResource +instanceKlass org/gradle/api/internal/artifacts/ivyservice/WritableArtifactCacheLockingManager$CacheLockingPersistentCache$$Lambda$479 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/PersistentModuleMetadataCache$$Lambda$478 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/DefaultCachedMetadata +instanceKlass org/gradle/api/internal/artifacts/ivyservice/WritableArtifactCacheLockingManager$CacheLockingPersistentCache +instanceKlass org/gradle/cache/internal/CompositeCleanupAction$ScopedCleanupAction +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/ModuleMetadataCacheEntry +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/ModuleComponentAtRepositoryKey +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/conflicts/PotentialConflictFactory$NoConflict +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/conflicts/PotentialConflictFactory +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/conflicts/DefaultConflictHandler$$Lambda$477 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/selectors/SelectorStateResolverResults +instanceKlass org/gradle/api/artifacts/component/ProjectComponentSelector +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/strategy/AbstractVersionSelector +instanceKlass org/gradle/api/internal/artifacts/dependencies/DefaultResolvedVersionConstraint +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/ResolveState$$Lambda$476 +instanceKlass org/gradle/api/artifacts/ClientModule +instanceKlass org/gradle/internal/component/model/DefaultComponentOverrideMetadata +instanceKlass org/gradle/internal/component/model/ComponentOverrideMetadata +instanceKlass org/gradle/internal/resolve/result/BuildableComponentIdResolveResult +instanceKlass org/gradle/internal/resolve/result/ComponentIdResolveResult +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/ResolveState$$Lambda$475 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/SelectorState +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/ResolveState$SelectorCacheKey +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/LenientPlatformDependencyMetadata +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/DependencyGraphSelector +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/NodeState$$Lambda$474 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/NodeState$$Lambda$473 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/DependencyState +instanceKlass org/gradle/api/internal/attributes/AttributeValue$1 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/strict/StrictVersionConstraints +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/DefaultPendingDependenciesVisitor +instanceKlass org/gradle/internal/component/local/model/DslOriginDependencyMetadataWrapper +instanceKlass org/gradle/internal/component/local/model/DslOriginDependencyMetadata +instanceKlass org/gradle/internal/component/model/LocalComponentDependencyMetadata +instanceKlass org/gradle/api/internal/artifacts/ivyservice/moduleconverter/dependencies/AbstractIvyDependencyDescriptorFactory$$Lambda$472 +instanceKlass org/gradle/internal/component/external/model/DefaultModuleComponentSelector +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/DependencyGraphBuilder$1 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/selectors/SelectorStateResolver +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/ReplaceSelectionWithConflictResultAction +instanceKlass org/gradle/internal/component/model/SelectedByVariantMatchingConfigurationMetadata +instanceKlass org/gradle/api/internal/artifacts/ResolvedConfigurationIdentifier +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/ComponentState +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/DependencyGraphComponent +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/ModuleSelectors$$Lambda$471 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/ModuleSelectors$$Lambda$470 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/ModuleSelectors$$Lambda$469 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/ModuleSelectors$$Lambda$468 +instanceKlass java/util/Comparator$$Lambda$467 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/ModuleSelectors$$Lambda$466 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/ModuleSelectors$$Lambda$465 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass java/util/Collections$ReverseComparator2 +instanceKlass java/util/Collections$ReverseComparator +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/strategy/VersionParser$DefaultVersion +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/strategy/VersionParser$$Lambda$464 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/ModuleSelectors +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/PendingDependencies +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/selectors/ResolvableSelectorState +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/ResolveState$$Lambda$463 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/ModuleResolveState +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/conflicts/CandidateModule +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/ResolveOptimizations +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/DeselectVersionAction +instanceKlass org/gradle/api/internal/artifacts/ResolvedVersionConstraint +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/PendingDependenciesVisitor +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/ComponentResolutionState +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/StringVersioned +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/ResolveState +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/selectors/ComponentStateFactory +instanceKlass org/gradle/api/internal/WithEstimatedSize$Estimates +instanceKlass org/gradle/internal/component/model/DefaultVariantMetadata +instanceKlass org/gradle/internal/component/model/VariantResolveMetadata +instanceKlass org/gradle/api/internal/artifacts/ivyservice/moduleconverter/DefaultLocalComponentMetadataBuilder$1 +instanceKlass org/gradle/internal/component/model/ComponentConfigurationIdentifier +instanceKlass org/gradle/internal/component/model/VariantResolveMetadata$Identifier +instanceKlass org/gradle/internal/component/local/model/RootLocalComponentMetadata$RootLocalConfigurationMetadata$$Lambda$462 +instanceKlass org/gradle/internal/component/external/model/ShadowedCapabilityOnly +instanceKlass org/gradle/internal/component/external/model/ImmutableCapabilities +instanceKlass org/gradle/api/internal/artifacts/configurations/Configurations +instanceKlass org/gradle/internal/component/model/ImmutableModuleSources +instanceKlass org/gradle/internal/component/local/model/RootConfigurationMetadata +instanceKlass org/gradle/internal/component/local/model/DefaultLocalComponentMetadata$DefaultLocalConfigurationMetadata +instanceKlass org/gradle/internal/component/local/model/LocalConfigurationMetadata +instanceKlass org/gradle/internal/component/local/model/BuildableLocalConfigurationMetadata +instanceKlass org/gradle/api/internal/artifacts/DefaultModuleVersionIdentifier +instanceKlass org/gradle/api/internal/artifacts/DefaultImmutableModuleIdentifierFactory$$Lambda$461 +instanceKlass org/gradle/api/internal/artifacts/DefaultImmutableModuleIdentifierFactory$$Lambda$460 +instanceKlass org/gradle/api/internal/artifacts/DefaultModule +instanceKlass org/gradle/internal/resolve/result/DefaultResourceAwareResolveResult +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/ResolvedArtifactsGraphVisitor +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/ResolutionConflictTracker +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/DependencyGraphBuilder$$Lambda$459 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/DependencyGraphBuilder$$Lambda$458 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/EdgeState +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/DependencyGraphEdge +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/RootGraphNode +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/NodeState +instanceKlass org/gradle/internal/resolve/result/BuildableComponentResolveResult +instanceKlass org/gradle/internal/resolve/result/ComponentResolveResult +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/DependencyGraphBuilder +instanceKlass org/gradle/api/internal/artifacts/ivyservice/dependencysubstitution/DependencySubstitutionApplicator$$Lambda$457 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/dependencysubstitution/DependencySubstitutionApplicator$SubstitutionResult +instanceKlass org/gradle/api/internal/artifacts/ivyservice/dependencysubstitution/NoOpSubstitution +instanceKlass org/gradle/api/internal/artifacts/DependencySubstitutionInternal +instanceKlass org/gradle/api/internal/artifacts/DefaultGlobalDependencyResolutionRules$CompositeDependencySubstitutionRules$$Lambda$456 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/conflicts/RejectRemainingCandidates +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/conflicts/LastCandidateCapabilityResolver +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/conflicts/UserConfiguredCapabilityResolver +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/conflicts/PotentialConflict +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/conflicts/CapabilitiesConflictHandler$Candidate +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/conflicts/DefaultCapabilitiesConflictHandler +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/conflicts/ConflictContainer +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/conflicts/CompositeConflictResolver +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/ConflictResolverDetails +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/conflicts/DefaultConflictHandler +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/LatestModuleConflictResolver +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/ModuleConflictResolver +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/ConflictResolverFactory +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/DefaultArtifactDependencyResolver$DefaultResolveContextToComponentResolver +instanceKlass org/gradle/api/internal/artifacts/ivyservice/clientmodule/ClientModuleResolver +instanceKlass org/gradle/internal/resolve/resolver/DefaultArtifactSelector +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/ComponentResolversChain$ArtifactResolverChain +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingArtifactResolver +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/ComponentResolversChain$ComponentMetaDataResolverChain +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/ComponentResolversChain$DependencyToComponentIdResolverChain +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/VirtualComponentMetadataResolver +instanceKlass org/gradle/internal/resolve/resolver/ArtifactSelector +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/ComponentResolversChain +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/FilteredModuleComponentRepository +instanceKlass org/gradle/api/internal/artifacts/repositories/DefaultMavenArtifactRepository$$Lambda$455 +instanceKlass org/gradle/api/internal/artifacts/repositories/DefaultRepositoryContentDescriptor +instanceKlass org/gradle/api/artifacts/repositories/MavenRepositoryContentDescriptor +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/BaseModuleComponentRepository +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/CachingModuleComponentRepository$ResolveAndCacheRepositoryAccess +instanceKlass org/gradle/internal/resolve/result/BuildableArtifactSetResolveResult +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/CachingModuleComponentRepository$LocateInCacheRepositoryAccess +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/CachingModuleComponentRepository +instanceKlass org/gradle/api/internal/artifacts/dsl/DefaultComponentMetadataProcessor$$Lambda$454 +instanceKlass org/gradle/api/internal/artifacts/dsl/WrappingComponentMetadataContext +instanceKlass org/gradle/api/artifacts/ComponentMetadataContext +instanceKlass org/gradle/api/artifacts/ComponentMetadataDetails +instanceKlass org/gradle/api/internal/artifacts/dsl/DefaultComponentMetadataProcessor +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ResolveIvyFactory$DefaultMetadataResolutionContext +instanceKlass org/gradle/api/internal/artifacts/repositories/resolver/ExternalResourceResolver$AbstractRepositoryAccess +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ModuleComponentRepositoryAccess +instanceKlass org/gradle/api/internal/artifacts/repositories/resolver/VersionLister +instanceKlass org/gradle/api/internal/artifacts/repositories/AbstractArtifactRepository$1 +instanceKlass org/gradle/api/internal/artifacts/repositories/metadata/DefaultImmutableMetadataSources +instanceKlass org/gradle/api/internal/artifacts/repositories/metadata/MavenMetadataArtifactProvider +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/parser/DescriptorParseContext +instanceKlass org/gradle/internal/component/model/ModuleDescriptorArtifactMetadata +instanceKlass org/gradle/api/internal/artifacts/repositories/metadata/GradleModuleMetadataCompatibilityConverter +instanceKlass org/gradle/api/internal/artifacts/repositories/DefaultMavenArtifactRepository$MavenSnapshotDecoratingSource +instanceKlass org/gradle/internal/resource/transfer/CacheAwareExternalResourceAccessor$ResourceFileStore +instanceKlass org/gradle/internal/resource/ExternalResource$ContentAndMetadataAction +instanceKlass org/gradle/internal/resource/transfer/DefaultCacheAwareExternalResourceAccessor +instanceKlass org/gradle/internal/resource/transport/DefaultExternalResourceRepository +instanceKlass org/gradle/internal/resource/transfer/ProgressLoggingExternalResourceLister$1 +instanceKlass org/gradle/internal/resource/ExternalResourceListBuildOperationType$Result +instanceKlass org/gradle/internal/resource/transfer/ProgressLoggingExternalResourceAccessor$1 +instanceKlass org/gradle/internal/resource/ExternalResourceReadMetadataBuildOperationType$Result +instanceKlass org/gradle/internal/resource/transfer/AbstractProgressLoggingHandler +instanceKlass org/gradle/internal/resource/transfer/CacheAwareExternalResourceAccessor +instanceKlass org/gradle/internal/resource/transport/AbstractRepositoryTransport +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolutionstrategy/DefaultExternalResourceCachePolicy +instanceKlass org/gradle/internal/resource/transfer/DefaultExternalResourceConnector$NoOpStats +instanceKlass org/gradle/internal/resource/transfer/DefaultExternalResourceConnector$1 +instanceKlass org/gradle/internal/resource/transfer/DefaultExternalResourceConnector$ExternalResourceAccessStats +instanceKlass org/gradle/internal/resource/transfer/DefaultExternalResourceConnector +instanceKlass org/apache/http/HttpEntityEnclosingRequest +instanceKlass org/apache/http/HttpEntity +instanceKlass org/gradle/internal/resource/transport/http/HttpResourceUploader +instanceKlass org/gradle/internal/resource/transport/http/HttpResourceLister +instanceKlass org/gradle/internal/resource/transfer/ExternalResourceReadResponse +instanceKlass org/gradle/internal/resource/transfer/AbstractExternalResourceAccessor +instanceKlass org/apache/http/message/AbstractHttpMessage +instanceKlass org/apache/http/client/methods/AbortableHttpRequest +instanceKlass org/apache/http/client/methods/HttpExecutionAware +instanceKlass org/apache/http/client/methods/Configurable +instanceKlass org/apache/http/client/methods/HttpUriRequest +instanceKlass org/apache/http/protocol/HttpContext +instanceKlass org/slf4j/spi/LocationAwareLogger +instanceKlass org/apache/commons/logging/impl/SLF4JLog +instanceKlass org/apache/commons/logging/impl/SLF4JLocationAwareLog +instanceKlass org/apache/commons/logging/Log +instanceKlass org/apache/commons/logging/LogFactory +instanceKlass org/apache/http/conn/ssl/DefaultHostnameVerifier +instanceKlass org/gradle/internal/resource/transport/http/DefaultHttpSettings$Builder +instanceKlass org/gradle/internal/resource/transport/http/DefaultHttpSettings$2$2 +instanceKlass javax/net/ssl/X509TrustManager +instanceKlass javax/net/ssl/TrustManager +instanceKlass org/gradle/internal/resource/transport/http/DefaultHttpSettings$2$1 +instanceKlass org/gradle/internal/resource/transport/http/DefaultHttpSettings$2 +instanceKlass org/gradle/internal/resource/transport/http/DefaultHttpSettings$1 +instanceKlass org/gradle/internal/resource/transport/http/HttpTimeoutSettings +instanceKlass org/gradle/internal/resource/transport/http/HttpProxySettings +instanceKlass javax/net/ssl/HostnameVerifier +instanceKlass org/gradle/internal/resource/transport/http/DefaultHttpSettings +instanceKlass org/gradle/api/internal/artifacts/repositories/transport/RepositoryTransportFactory$DefaultResourceConnectorSpecification +instanceKlass org/gradle/internal/verifier/HttpRedirectVerifierFactory$$Lambda$453 +instanceKlass org/gradle/internal/verifier/HttpRedirectVerifierFactory +instanceKlass org/gradle/api/internal/artifacts/repositories/DefaultUrlArtifactRepository$$Lambda$452 +instanceKlass org/gradle/api/internal/artifacts/repositories/DefaultUrlArtifactRepository$$Lambda$451 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ResolveIvyFactory$ParentModuleLookupResolver +instanceKlass org/gradle/internal/resolve/result/BuildableComponentArtifactsResolveResult +instanceKlass org/gradle/internal/resolve/result/BuildableTypedResolveResult +instanceKlass org/gradle/internal/resolve/result/ErroringResolveResult +instanceKlass org/gradle/internal/resolve/result/ResolveResult +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/RepositoryChainArtifactResolver +instanceKlass org/gradle/internal/resolve/result/ResourceAwareResolveResult +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/RepositoryChainComponentMetaDataResolver +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/DynamicVersionResolver +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/RepositoryChainDependencyToComponentIdResolver +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/UserResolverChain$ModuleTransformer +instanceKlass org/gradle/api/specs/NotSpec +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ComponentSelectionRulesProcessor$$Lambda$450 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ComponentSelectionRulesProcessor +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/Versioned +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/MetadataProvider +instanceKlass org/gradle/api/internal/artifacts/ComponentSelectionInternal +instanceKlass org/gradle/api/artifacts/ComponentSelection +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/DefaultVersionedComponentChooser +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/VersionedComponentChooser +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/UserResolverChain +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/CompositeDependencyArtifactsVisitor +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/ValidatingArtifactsVisitor +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/CompositeDependencyGraphVisitor +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/oldresult/ResolutionFailureCollector +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/VisitedFileDependencyResults +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/FileDependencyCollectingGraphVisitor +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/ArtifactSet +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/VisitedArtifactsResults +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/DefaultResolvedArtifactsBuilder +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/DefaultComponentSelectionDescriptor +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/ComponentSelectionReasonInternal +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/ComponentSelectionDescriptorInternal +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/ComponentSelectionReasons +instanceKlass org/gradle/api/internal/artifacts/ivyservice/dependencysubstitution/DefaultDependencySubstitutions$ProjectPathConverter +instanceKlass org/gradle/api/artifacts/DependencySubstitutions$Substitution +instanceKlass org/gradle/api/internal/artifacts/ivyservice/dependencysubstitution/DefaultDependencySubstitutions +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolutionstrategy/DefaultCachePolicy$$Lambda$449 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolutionstrategy/DefaultCachePolicy$$Lambda$448 +instanceKlass org/gradle/api/internal/artifacts/cache/ArtifactResolutionControl +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolutionstrategy/DefaultCachePolicy$$Lambda$447 +instanceKlass org/gradle/api/internal/artifacts/cache/ModuleResolutionControl +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolutionstrategy/DefaultCachePolicy$$Lambda$446 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/api/internal/artifacts/cache/DependencyResolutionControl +instanceKlass org/gradle/api/internal/artifacts/cache/ResolutionControl +instanceKlass org/gradle/api/internal/artifacts/configurations/MutationValidator$$Lambda$445 +instanceKlass org/gradle/internal/typeconversion/FlatteningNotationParser +instanceKlass org/gradle/api/artifacts/DependencySubstitution +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolutionstrategy/DefaultComponentSelectionRules +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolutionstrategy/DefaultCachePolicy +instanceKlass org/gradle/api/internal/artifacts/ComponentSelectionRulesInternal +instanceKlass org/gradle/api/artifacts/ComponentSelectionRules +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolutionstrategy/DefaultResolutionStrategy +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/conflicts/UpgradeCapabilityResolver +instanceKlass org/gradle/internal/component/external/model/DefaultComponentVariantIdentifier +instanceKlass org/gradle/api/artifacts/ComponentVariantIdentifier +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/conflicts/CapabilitiesConflictHandler$CandidateDetails +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolutionstrategy/DefaultCapabilitiesResolution$DefaultCapabilityResolutionDetails +instanceKlass org/gradle/api/artifacts/CapabilityResolutionDetails +instanceKlass org/gradle/internal/component/external/model/ImmutableCapability +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/conflicts/CapabilitiesConflictHandler$ResolutionDetails +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/conflicts/ConflictResolutionResult +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolutionstrategy/DefaultCapabilitiesResolution +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolutionstrategy/CapabilitiesResolutionInternal +instanceKlass org/gradle/api/artifacts/CapabilitiesResolution +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/projectresult/ResolvedLocalComponentsResultGraphVisitor +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/ComponentResultSerializer +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/ResolvedGraphDependency +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/DependencyResultSerializer +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/ResolvedGraphComponent +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/StreamingResolutionResultBuilder +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/DependencyGraphNode +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/oldresult/ResolvedConfigurationDependencyGraphVisitor +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/oldresult/ResolvedGraphResults +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/oldresult/DefaultResolvedConfigurationBuilder +instanceKlass org/gradle/api/internal/artifacts/ResolvedConfigurationIdentifierSerializer +instanceKlass org/gradle/api/artifacts/ResolvedDependency +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/oldresult/TransientConfigurationResults +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/oldresult/TransientConfigurationResultsBuilder +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/store/CachedStoreFactory$SimpleStore +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/store/CachedStoreFactory$Stats +instanceKlass org/gradle/cache/internal/Store +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/store/CachedStoreFactory +instanceKlass org/gradle/cache/internal/BinaryStore$BinaryData +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/store/DefaultBinaryStore +instanceKlass java/io/DeleteOnExitHook$1 +instanceKlass java/io/DeleteOnExitHook +instanceKlass org/gradle/cache/internal/BinaryStore +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/store/ResolutionResultsStoreFactory$1 +instanceKlass org/gradle/api/internal/CompositeDomainObjectSet$2 +instanceKlass org/gradle/api/internal/CompositeDomainObjectSet$1 +instanceKlass org/gradle/api/internal/CompositeDomainObjectSet$ItemNotInCompositeSpec +instanceKlass org/gradle/api/internal/CompositeDomainObjectSet$ItemIsUniqueInCompositeSpec +instanceKlass org/gradle/api/internal/CompositeDomainObjectSet$DomainObjectCompositeCollection +instanceKlass org/gradle/api/internal/artifacts/DefaultResolverResults +instanceKlass org/gradle/api/internal/attributes/ImmutableAttributeContainerWithErrorMessage +instanceKlass org/gradle/api/internal/artifacts/repositories/AbstractAuthenticationSupportedRepository$$Lambda$444 +instanceKlass org/gradle/api/internal/artifacts/repositories/descriptor/UrlRepositoryDescriptor$Builder +instanceKlass org/gradle/api/internal/artifacts/configurations/ResolveConfigurationResolutionBuildOperationDetails$RepositoryImpl$$Lambda$443 +instanceKlass org/gradle/api/internal/artifacts/configurations/ResolveConfigurationResolutionBuildOperationDetails$RepositoryImpl +instanceKlass org/gradle/api/internal/artifacts/configurations/ResolveConfigurationDependenciesBuildOperationType$Repository +instanceKlass org/gradle/api/internal/artifacts/DefaultDependencyManagementServices$DependencyResolutionScopeServices$$Lambda$442 +instanceKlass org/gradle/api/internal/artifacts/configurations/ResolveConfigurationResolutionBuildOperationDetails +instanceKlass org/gradle/api/internal/artifacts/configurations/ResolveConfigurationDependenciesBuildOperationType$Details +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfiguration$1 +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfiguration$$Lambda$441 +instanceKlass org/gradle/api/internal/artifacts/dependencies/AbstractExternalModuleDependency$$Lambda$440 +instanceKlass org/gradle/api/internal/initialization/RootScriptDomainObjectContext$CalculatedModelValueImpl +instanceKlass org/gradle/api/artifacts/ConfigurationVariant +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfigurationPublications$ConfigurationVariantFactory +instanceKlass org/gradle/api/internal/artifacts/DefaultPublishArtifactSet$ArtifactsFileCollection +instanceKlass org/gradle/api/internal/tasks/AbstractTaskDependency$1 +instanceKlass org/gradle/api/internal/tasks/AbstractTaskDependency +instanceKlass org/gradle/api/internal/file/collections/MinimalFileSet +instanceKlass org/gradle/api/internal/artifacts/DefaultDependencySet$MutationValidationAction +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfiguration$$Lambda$439 +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfiguration$ConfigurationDescription +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfiguration$ArtifactSetResult +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfiguration$ArtifactCollectionResolvedArtifactsFactory +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfiguration$AllArtifactsProvider +instanceKlass org/gradle/api/internal/artifacts/configurations/PublishArtifactSetProvider +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfiguration$ArtifactViewConfiguration +instanceKlass org/gradle/api/artifacts/ArtifactView$ViewConfiguration +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfiguration$DefaultResolutionHost +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfiguration$SelectedArtifactsProvider +instanceKlass org/gradle/api/internal/attributes/DefaultMutableAttributeContainer +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfiguration$$Lambda$438 +instanceKlass org/gradle/internal/lazy/Lazy$$Lambda$437 +instanceKlass org/gradle/internal/lazy/UnsafeLazy +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfiguration$$Lambda$436 +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfiguration$$Lambda$435 +instanceKlass org/gradle/api/artifacts/DependencyConstraint +instanceKlass org/gradle/api/artifacts/ExcludeRule +instanceKlass org/gradle/api/internal/file/collections/FileSystemMirroringFileTree +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfigurationPublications +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfiguration$ConfigurationResolvableDependencies +instanceKlass org/gradle/api/internal/artifacts/configurations/ResolvableDependenciesInternal +instanceKlass org/gradle/api/internal/DelegatingDomainObjectSet +instanceKlass org/gradle/api/internal/artifacts/configurations/OutgoingVariant +instanceKlass org/gradle/internal/deprecation/DeprecationMessageBuilder$WithDocumentation +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfiguration$ConfigurationArtifactCollection +instanceKlass org/gradle/api/internal/artifacts/configurations/ArtifactCollectionInternal +instanceKlass org/gradle/api/artifacts/ArtifactCollection +instanceKlass org/gradle/internal/logging/text/TreeFormatter +instanceKlass org/gradle/api/artifacts/DependencyConstraintSet +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfiguration$ResolveState +instanceKlass org/gradle/api/internal/artifacts/ResolverResults +instanceKlass org/gradle/api/internal/artifacts/configurations/ResolutionResultProvider +instanceKlass org/gradle/api/internal/artifacts/configurations/ResolutionHost +instanceKlass org/gradle/api/artifacts/ResolvableDependencies +instanceKlass org/gradle/api/artifacts/ArtifactView +instanceKlass org/gradle/api/artifacts/ConfigurationPublications +instanceKlass org/gradle/api/artifacts/DependencySet +instanceKlass org/gradle/api/artifacts/PublishArtifactSet +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/projectresult/ResolvedProjectConfiguration +instanceKlass org/gradle/api/internal/artifacts/configurations/DetachedConfigurationsProvider +instanceKlass org/gradle/internal/locking/NoOpDependencyLockingProvider +instanceKlass org/gradle/api/internal/artifacts/dependencies/AbstractVersionConstraint +instanceKlass org/gradle/api/internal/artifacts/VersionConstraintInternal +instanceKlass org/gradle/api/artifacts/MutableVersionConstraint +instanceKlass org/gradle/api/internal/artifacts/DefaultExcludeRuleContainer +instanceKlass org/gradle/api/artifacts/ExcludeRuleContainer +instanceKlass org/gradle/api/internal/artifacts/dependencies/ModuleDependencyCapabilitiesInternal +instanceKlass org/gradle/api/artifacts/ModuleDependencyCapabilitiesHandler +instanceKlass org/gradle/api/artifacts/DependencyArtifact +instanceKlass org/gradle/api/internal/artifacts/dependencies/AbstractDependency +instanceKlass org/gradle/api/internal/artifacts/ResolvableDependency +instanceKlass org/gradle/api/artifacts/ExternalModuleDependency +instanceKlass org/gradle/api/artifacts/ExternalDependency +instanceKlass org/gradle/internal/composite/DefaultBuildIncluder$$Lambda$434 +instanceKlass org/gradle/plugin/use/internal/DefaultPluginRequestApplicator$NotFound +instanceKlass org/gradle/api/plugins/quality/internal/AbstractCodeQualityPlugin +instanceKlass org/gradle/api/plugins/ApplicationPlugin$PreventDestinationOverwrite +instanceKlass org/gradle/api/plugins/ApplicationPlugin +instanceKlass org/gradle/plugin/use/resolve/internal/SimplePluginResolution +instanceKlass org/gradle/api/plugins/JavaPlugin$BuildableJavaComponentImpl +instanceKlass org/gradle/api/internal/component/BuildableJavaComponent +instanceKlass org/gradle/api/plugins/JavaPlugin +instanceKlass org/gradle/api/internal/artifacts/dsl/ModuleVersionSelectorParsers$StringConverter +instanceKlass org/gradle/api/internal/artifacts/dsl/ModuleVersionSelectorParsers +instanceKlass org/gradle/plugin/management/internal/DefaultPluginResolveDetails +instanceKlass org/gradle/plugin/management/PluginResolveDetails +instanceKlass org/gradle/plugin/use/internal/DefaultPluginRequestApplicator$$Lambda$433 +instanceKlass org/gradle/plugin/use/internal/DefaultPluginRequestApplicator$Result +instanceKlass org/gradle/plugin/use/resolve/internal/AlreadyOnClasspathPluginResolver +instanceKlass org/gradle/plugin/use/resolve/internal/ArtifactRepositoriesPluginResolver +instanceKlass org/gradle/plugin/use/internal/PluginResolverFactory$$Lambda$432 +instanceKlass org/gradle/plugin/use/resolve/internal/CorePluginResolver +instanceKlass org/gradle/plugin/use/resolve/internal/PluginResolution +instanceKlass org/gradle/plugin/use/resolve/internal/NoopPluginResolver +instanceKlass org/gradle/plugin/use/resolve/internal/CompositePluginResolver +instanceKlass org/gradle/api/internal/DefaultNamedDomainObjectCollection$ObjectBackedElementInfo +instanceKlass org/gradle/api/internal/artifacts/repositories/DefaultBaseRepositoryFactory$$Lambda$431 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/api/internal/artifacts/repositories/DefaultMavenArtifactRepository$$Lambda$430 +instanceKlass org/gradle/api/internal/artifacts/repositories/AbstractArtifactRepository$$Lambda$429 +instanceKlass com/google/common/base/Suppliers$MemoizingSupplier +instanceKlass com/google/common/base/Suppliers$NonSerializableMemoizingSupplier +instanceKlass org/gradle/api/internal/artifacts/repositories/AbstractArtifactRepository$$Lambda$428 +instanceKlass org/gradle/api/internal/artifacts/repositories/DefaultMavenArtifactRepository$$Lambda$427 +instanceKlass org/gradle/api/internal/artifacts/repositories/ArtifactResolutionDetails +instanceKlass org/gradle/internal/resolve/caching/ImplicitInputsCapturingInstantiator +instanceKlass org/gradle/api/internal/artifacts/repositories/AuthenticationSupporter +instanceKlass org/gradle/api/artifacts/repositories/PasswordCredentials +instanceKlass org/gradle/api/credentials/PasswordCredentials +instanceKlass org/gradle/api/credentials/Credentials +instanceKlass org/gradle/api/internal/artifacts/repositories/DefaultMavenArtifactRepository$MavenMetadataSources +instanceKlass org/gradle/api/internal/artifacts/repositories/DefaultUrlArtifactRepository +instanceKlass org/gradle/api/internal/artifacts/repositories/metadata/AbstractMetadataSource +instanceKlass org/gradle/api/internal/artifacts/repositories/maven/MavenMetadataLoader +instanceKlass org/gradle/api/internal/artifacts/repositories/metadata/DefaultMavenPomMetadataSource$MavenMetadataValidator +instanceKlass org/gradle/api/internal/artifacts/repositories/resolver/ExternalResourceResolver +instanceKlass org/gradle/api/internal/artifacts/repositories/resolver/ExternalResourceArtifactResolver +instanceKlass org/gradle/api/internal/artifacts/ModuleVersionPublisher +instanceKlass org/gradle/api/internal/artifacts/repositories/metadata/ImmutableMetadataSources +instanceKlass org/gradle/api/internal/artifacts/repositories/metadata/MetadataSource +instanceKlass org/gradle/api/artifacts/repositories/MavenArtifactRepository$MetadataSources +instanceKlass org/gradle/api/internal/artifacts/repositories/descriptor/RepositoryDescriptor +instanceKlass org/gradle/api/internal/artifacts/repositories/metadata/MetadataArtifactProvider +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ConfiguredModuleComponentRepository +instanceKlass org/gradle/api/artifacts/repositories/RepositoryResourceAccessor +instanceKlass org/gradle/api/internal/artifacts/repositories/RepositoryContentDescriptorInternal +instanceKlass org/gradle/api/internal/DefaultPolymorphicDomainObjectContainer$2 +instanceKlass org/gradle/api/internal/DefaultPolymorphicNamedEntityInstantiator +instanceKlass org/gradle/api/internal/PolymorphicNamedEntityInstantiator +instanceKlass org/gradle/api/internal/artifacts/repositories/AbstractArtifactRepository +instanceKlass org/gradle/api/internal/artifacts/repositories/ContentFilteringRepository +instanceKlass org/gradle/api/internal/artifacts/repositories/ArtifactRepositoryInternal +instanceKlass org/gradle/internal/artifacts/repositories/AuthenticationSupportedInternal +instanceKlass org/gradle/api/internal/artifacts/repositories/PublicationAwareRepository +instanceKlass org/gradle/api/internal/artifacts/repositories/ResolutionAwareRepository +instanceKlass org/gradle/api/internal/artifacts/repositories/DefaultBaseRepositoryFactory$NamedMavenRepositoryDescriber +instanceKlass org/gradle/plugin/use/internal/DefaultPluginArtifactRepositories +instanceKlass org/gradle/plugin/management/internal/MultiPluginRequests +instanceKlass org/gradle/plugin/use/internal/PluginRequestCollector$2 +instanceKlass org/gradle/plugin/use/internal/PluginRequestCollector$1 +instanceKlass com/google/common/base/Strings +instanceKlass org/gradle/plugin/use/internal/PluginRequestCollector$PluginDependencySpecImpl +instanceKlass org/gradle/plugin/use/PluginDependency +instanceKlass org/gradle/api/provider/ProviderConvertible +instanceKlass org/gradle/plugin/use/PluginDependencySpec +instanceKlass org/gradle/plugin/use/internal/PluginRequestCollector$PluginDependenciesSpecImpl +instanceKlass org/gradle/plugin/use/PluginDependenciesSpec +instanceKlass org/codehaus/groovy/runtime/metaclass/ClosureMetaClass$StandardClosureChooser +instanceKlass org/gradle/internal/service/scopes/ProjectScopeServices$$Lambda$426 +instanceKlass org/gradle/plugin/use/internal/PluginRequestCollector +instanceKlass org/gradle/api/artifacts/VersionCatalogsExtension +instanceKlass org/gradle/configuration/ProjectScriptTarget +instanceKlass org/gradle/internal/build/event/types/DefaultScriptPluginIdentifier +instanceKlass org/gradle/configuration/project/BuildScriptProcessor$$Lambda$425 +instanceKlass org/gradle/internal/service/scopes/ProjectScopeServices$ScriptScopedContext +instanceKlass org/gradle/internal/service/scopes/ProjectScopeServices$ProjectBackedModuleMetaDataProvider +instanceKlass org/gradle/internal/service/scopes/ProjectBackedPropertyHost +instanceKlass org/gradle/nativeplatform/internal/CompilerOutputFileNamingScheme +instanceKlass org/gradle/api/artifacts/type/ArtifactTypeContainer +instanceKlass org/gradle/buildinit/plugins/WrapperPlugin$$Lambda$424 +instanceKlass org/gradle/buildinit/plugins/WrapperPlugin +instanceKlass org/gradle/buildinit/plugins/BuildInitPlugin$$Lambda$423 +instanceKlass org/gradle/api/internal/collections/AbstractIterationOrderRetainingElementSource$ValuePointer +instanceKlass org/gradle/buildinit/plugins/BuildInitPlugin$InitBuildOnlyIfSpec +instanceKlass org/gradle/buildinit/plugins/BuildInitPlugin$InitBuildDependsOnCallable +instanceKlass org/gradle/buildinit/plugins/BuildInitPlugin$FileDetails +instanceKlass org/gradle/buildinit/plugins/BuildInitPlugin +instanceKlass org/gradle/kotlin/dsl/tooling/builders/KotlinDslScriptsModelBuilder +instanceKlass kotlin/collections/ArraysUtilJVM +instanceKlass kotlin/collections/ArraysKt__ArraysJVMKt +instanceKlass kotlin/collections/CollectionsKt__CollectionsJVMKt +instanceKlass org/gradle/kotlin/dsl/tooling/builders/KotlinBuildScriptTemplateModelBuilder +instanceKlass org/gradle/kotlin/dsl/tooling/builders/KotlinBuildScriptModelBuilder +instanceKlass org/gradle/tooling/internal/protocol/cpp/InternalCppTestSuite +instanceKlass org/gradle/tooling/internal/protocol/cpp/InternalCppLibrary +instanceKlass org/gradle/tooling/internal/protocol/cpp/InternalCppApplication +instanceKlass org/gradle/language/cpp/internal/tooling/DefaultCppComponentModel +instanceKlass org/gradle/language/cpp/CppComponent +instanceKlass org/gradle/language/ComponentWithTargetMachines +instanceKlass org/gradle/language/ComponentWithDependencies +instanceKlass org/gradle/language/ComponentWithBinaries +instanceKlass org/gradle/api/component/SoftwareComponent +instanceKlass org/gradle/language/cpp/internal/tooling/CppModelBuilder +instanceKlass org/gradle/plugins/ide/internal/tooling/BuildEnvironmentBuilder +instanceKlass org/gradle/plugins/ide/internal/tooling/PublicationsBuilder +instanceKlass org/gradle/plugins/ide/internal/tooling/model/TaskNameComparator +instanceKlass org/gradle/plugins/ide/internal/tooling/BuildInvocationsBuilder +instanceKlass org/gradle/plugins/ide/internal/tooling/BasicIdeaModelBuilder +instanceKlass org/gradle/plugins/ide/internal/tooling/model/PartialBasicGradleProject +instanceKlass org/gradle/plugins/ide/internal/tooling/GradleBuildBuilder +instanceKlass org/gradle/tooling/provider/model/internal/BuildScopeModelBuilder +instanceKlass org/gradle/plugins/ide/internal/configurer/HierarchicalElementAdapter +instanceKlass org/gradle/plugins/ide/internal/configurer/EclipseModelAwareUniqueProjectNameProvider +instanceKlass org/gradle/plugins/ide/eclipse/model/AbstractClasspathEntry +instanceKlass org/gradle/plugins/ide/eclipse/model/ClasspathEntry +instanceKlass org/objectweb/asm/Opcodes +instanceKlass org/gradle/plugins/ide/internal/tooling/EclipseModelBuilder +instanceKlass org/gradle/plugins/ide/internal/tooling/RunEclipseTasksBuilder +instanceKlass org/gradle/plugins/ide/internal/tooling/RunBuildDependenciesTaskBuilder +instanceKlass org/gradle/tooling/provider/model/ParameterizedToolingModelBuilder +instanceKlass org/gradle/tooling/model/GradleModuleVersion +instanceKlass org/gradle/tooling/model/idea/IdeaDependencyScope +instanceKlass org/gradle/tooling/model/idea/IdeaCompilerOutput +instanceKlass org/gradle/tooling/model/idea/IdeaLanguageLevel +instanceKlass org/gradle/plugins/ide/internal/tooling/IdeaModelBuilder +instanceKlass org/gradle/plugins/ide/internal/tooling/model/LaunchableGradleTask +instanceKlass org/gradle/tooling/internal/protocol/InternalLaunchable +instanceKlass org/gradle/tooling/internal/gradle/GradleProjectIdentity +instanceKlass org/gradle/tooling/internal/gradle/GradleBuildIdentity +instanceKlass org/gradle/plugins/ide/internal/tooling/GradleProjectBuilder +instanceKlass org/gradle/internal/service/scopes/BuildScopeServices$$Lambda$422 +instanceKlass org/gradle/tooling/provider/model/internal/DefaultToolingModelBuilderRegistry$RegistrationImpl +instanceKlass org/gradle/tooling/provider/model/internal/DefaultToolingModelBuilderRegistry$VoidToolingModelBuilder +instanceKlass org/gradle/tooling/provider/model/internal/ToolingModelBuilderLookup$Builder +instanceKlass org/gradle/tooling/provider/model/internal/ToolingModelBuilderLookup$Registration +instanceKlass org/gradle/plugins/ide/internal/tooling/ToolingModelServices$BuildScopeToolingServices$1 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/projectmodule/DefaultProjectPublicationRegistry +instanceKlass org/gradle/api/internal/project/DefaultProjectTaskLister +instanceKlass org/gradle/jvm/toolchain/internal/task/ShowToolchainsTaskConfigurator$$Lambda$421 +instanceKlass org/gradle/api/internal/provider/Collectors$SingleElement +instanceKlass org/gradle/api/internal/collections/FilteredCollection$FilteringIterator +instanceKlass org/gradle/api/internal/collections/CollectionFilter$1 +instanceKlass org/gradle/api/plugins/HelpTasksPlugin$$Lambda$420 +instanceKlass org/gradle/api/internal/DefaultNamedDomainObjectCollection$FilteredIndex +instanceKlass org/gradle/api/internal/collections/DefaultCollectionEventRegister$FilteredEventRegister +instanceKlass org/gradle/api/internal/collections/FilteredCollection +instanceKlass org/gradle/api/specs/Specs$2 +instanceKlass org/gradle/api/specs/Specs$1 +instanceKlass org/gradle/api/specs/Specs +instanceKlass org/gradle/api/internal/tasks/DefaultRealizableTaskCollection +instanceKlass org/gradle/api/plugins/HelpTasksPlugin$$Lambda$419 +instanceKlass org/apache/commons/lang/text/StrTokenizer +instanceKlass org/apache/commons/lang/text/StrBuilder +instanceKlass org/objectweb/asm/Handle +instanceKlass org/objectweb/asm/Context +instanceKlass org/objectweb/asm/ClassReader +instanceKlass org/gradle/api/internal/DefaultNamedDomainObjectCollection$ProviderBackedElementInfo +instanceKlass org/gradle/api/internal/DefaultNamedDomainObjectCollection$ElementInfo +instanceKlass org/gradle/api/internal/provider/Collectors$ElementFromProvider +instanceKlass org/gradle/api/internal/provider/Collectors$TypedCollector +instanceKlass org/gradle/api/internal/provider/Collectors$ProvidedCollector +instanceKlass org/gradle/api/internal/provider/ChangingValue +instanceKlass org/gradle/configuration/internal/DefaultUserCodeApplicationContext$CurrentApplication$1 +instanceKlass org/gradle/api/internal/DefaultCollectionCallbackActionDecorator$BuildOperationEmittingAction +instanceKlass org/gradle/api/internal/DefaultMutationGuard$2 +instanceKlass org/gradle/api/internal/tasks/DefaultTaskContainer$RealizeDetails +instanceKlass com/google/common/reflect/Reflection +instanceKlass com/google/common/reflect/Types$TypeVariableInvocationHandler +instanceKlass com/google/common/reflect/Types$TypeVariableImpl +instanceKlass com/google/common/reflect/Types$NativeTypeVariableEquals +instanceKlass org/gradle/api/internal/provider/ValueSupplier$ExecutionTimeValue +instanceKlass org/gradle/api/internal/provider/ValueSupplier$ValueProducer +instanceKlass org/gradle/tooling/internal/provider/runner/PluginApplicationTracker$$Lambda$418 +instanceKlass org/gradle/tooling/internal/provider/runner/TaskOriginTracker$$Lambda$417 +instanceKlass org/gradle/api/internal/tasks/DefaultTaskContainer$RegisterDetails +instanceKlass org/gradle/api/internal/tasks/DefaultTaskContainer$3 +instanceKlass org/gradle/model/internal/registry/RuleBindings$ScopeIndex +instanceKlass org/gradle/model/internal/registry/RuleBindings$PredicateMatches +instanceKlass org/gradle/internal/service/scopes/ProjectScopeServices$$Lambda$416 +instanceKlass org/gradle/model/internal/registry/DefaultModelRegistry$$Lambda$415 +instanceKlass org/gradle/model/internal/registry/DefaultModelRegistry$5 +instanceKlass org/gradle/model/internal/registry/NodeAtState +instanceKlass org/gradle/model/internal/registry/DefaultModelRegistry$GoalGraph +instanceKlass org/gradle/model/internal/registry/RuleBindings$NodeAtStateIndex +instanceKlass org/gradle/model/internal/registry/RuleBindings$TypePredicateIndex +instanceKlass org/gradle/model/internal/registry/RuleBindings$PathPredicateIndex +instanceKlass org/gradle/model/internal/registry/RuleBindings +instanceKlass org/gradle/model/internal/registry/ModelGraph +instanceKlass org/gradle/model/internal/core/DefaultModelRegistration +instanceKlass org/gradle/model/internal/core/AbstractModelAction +instanceKlass org/gradle/model/internal/core/EmptyModelProjection +instanceKlass org/gradle/model/internal/core/ModelProjection +instanceKlass org/gradle/model/internal/core/ModelAdapter +instanceKlass org/gradle/model/internal/core/ModelPromise +instanceKlass org/gradle/model/internal/core/ModelRegistrations$Builder$DescriptorReference +instanceKlass org/gradle/model/internal/core/ModelRegistration +instanceKlass org/gradle/model/internal/core/ModelAction +instanceKlass org/gradle/model/internal/core/ModelRegistrations$Builder +instanceKlass org/gradle/model/internal/core/ModelRegistrations +instanceKlass org/gradle/internal/service/scopes/ProjectScopeServices$$Lambda$414 +instanceKlass org/gradle/model/internal/registry/BoringProjectState +instanceKlass org/gradle/model/internal/registry/DefaultModelRegistry$ModelGoal +instanceKlass org/gradle/model/internal/core/ModelPredicate +instanceKlass org/gradle/model/internal/registry/ModelNodeInternal +instanceKlass org/gradle/model/internal/registry/DefaultModelRegistry +instanceKlass org/gradle/model/internal/registry/ModelRegistryInternal +instanceKlass org/gradle/tooling/internal/provider/runner/PluginApplicationTracker$PluginApplication +instanceKlass org/gradle/internal/build/event/types/DefaultBinaryPluginIdentifier +instanceKlass org/gradle/tooling/internal/provider/runner/PluginApplicationTracker$$Lambda$413 +instanceKlass org/gradle/api/internal/plugins/DefaultPluginManager$OperationDetails +instanceKlass org/gradle/api/internal/plugins/DefaultPluginManager$AddPluginBuildOperation +instanceKlass org/gradle/api/internal/plugins/DefaultPluginManager$$Lambda$412 +instanceKlass org/gradle/api/internal/plugins/DefaultPluginManager$1 +instanceKlass org/gradle/api/internal/plugins/DefaultPotentialPluginWithId +instanceKlass org/gradle/api/internal/plugins/PluginInspector$PotentialImperativeClassPlugin +instanceKlass com/google/common/collect/TransformedIterator +instanceKlass com/google/common/base/Predicates +instanceKlass org/gradle/model/internal/inspect/ModelRuleSourceDetector$3 +instanceKlass org/gradle/api/plugins/HelpTasksPlugin$HelpAction +instanceKlass org/gradle/api/plugins/HelpTasksPlugin$ProjectReportTaskAction +instanceKlass org/gradle/api/plugins/HelpTasksPlugin$TaskReportTaskAction +instanceKlass org/gradle/api/plugins/HelpTasksPlugin$PropertyReportTaskAction +instanceKlass org/gradle/api/plugins/HelpTasksPlugin$DependencyInsightReportTaskAction +instanceKlass org/gradle/api/plugins/HelpTasksPlugin$DependencyReportTaskAction +instanceKlass org/gradle/api/plugins/HelpTasksPlugin$BuildEnvironmentReportTaskAction +instanceKlass org/gradle/api/plugins/HelpTasksPlugin$ComponentReportAction +instanceKlass org/gradle/api/plugins/HelpTasksPlugin$ModelReportAction +instanceKlass org/gradle/api/plugins/HelpTasksPlugin$DependentComponentsReportAction +instanceKlass org/gradle/api/plugins/HelpTasksPlugin +instanceKlass org/gradle/api/internal/plugins/PluginDescriptor +instanceKlass org/gradle/api/internal/plugins/ClassloaderBackedPluginDescriptorLocator +instanceKlass org/gradle/api/internal/plugins/DefaultPluginRegistry$PluginIdLookupCacheKey +instanceKlass com/google/common/base/Optional +instanceKlass com/google/common/collect/FluentIterable +instanceKlass org/gradle/model/internal/inspect/ModelRuleExtractor$CachedRuleSource +instanceKlass org/gradle/model/internal/inspect/MethodModelRuleExtractionContext +instanceKlass org/gradle/model/Rules +instanceKlass org/gradle/model/Validate +instanceKlass org/gradle/model/Finalize +instanceKlass org/gradle/model/Mutate +instanceKlass org/gradle/model/Defaults +instanceKlass org/gradle/model/internal/core/NodeInitializerRegistry +instanceKlass org/gradle/model/Model +instanceKlass org/gradle/model/internal/inspect/MethodModelRuleExtractors +instanceKlass org/gradle/model/internal/manage/instance/ManagedInstance +instanceKlass org/gradle/model/internal/manage/schema/extract/ManagedProxyClassGenerator$GeneratedView +instanceKlass org/gradle/model/internal/manage/instance/ModelElementState +instanceKlass org/gradle/model/internal/manage/instance/GeneratedViewState +instanceKlass org/gradle/model/internal/manage/binding/StructMethodBinding +instanceKlass org/gradle/internal/reflect/Types$TypeVisitor +instanceKlass org/gradle/model/internal/manage/binding/StructBindings +instanceKlass org/gradle/model/internal/manage/binding/StructBindingValidationProblemCollector +instanceKlass org/gradle/model/internal/manage/binding/DefaultStructBindingsStore +instanceKlass org/gradle/platform/base/ComponentType +instanceKlass org/gradle/platform/base/SourceComponentSpec +instanceKlass org/gradle/language/base/LanguageSourceSet +instanceKlass org/gradle/model/internal/typeregistration/BaseInstanceFactory +instanceKlass org/gradle/model/internal/typeregistration/InstanceFactory +instanceKlass org/gradle/model/internal/manage/schema/cache/ModelSchemaCache +instanceKlass org/gradle/model/internal/manage/schema/extract/DefaultModelSchemaStore +instanceKlass org/gradle/model/RuleSource +instanceKlass org/gradle/model/internal/manage/schema/extract/StructSchemaExtractionStrategySupport +instanceKlass org/gradle/model/internal/manage/schema/extract/JavaUtilCollectionStrategy +instanceKlass org/gradle/model/internal/manage/schema/extract/ModelMapStrategy +instanceKlass org/gradle/model/internal/manage/schema/extract/AbstractProxyClassGenerator +instanceKlass org/gradle/model/internal/manage/schema/extract/SpecializedMapStrategy +instanceKlass org/gradle/model/internal/type/WildcardTypeWrapper +instanceKlass org/gradle/model/internal/type/WildcardWrapper +instanceKlass org/gradle/model/ModelSet +instanceKlass org/gradle/model/internal/manage/schema/CompositeSchema +instanceKlass org/gradle/model/internal/manage/schema/AbstractModelSchema +instanceKlass org/gradle/model/internal/manage/schema/ManagedImplSchema +instanceKlass org/gradle/model/internal/manage/schema/extract/ModelSetStrategy +instanceKlass org/gradle/model/internal/manage/schema/extract/JdkValueTypeStrategy +instanceKlass org/gradle/model/internal/manage/schema/extract/EnumStrategy +instanceKlass org/gradle/model/internal/manage/schema/ModelSchema +instanceKlass org/gradle/model/internal/manage/schema/extract/PrimitiveStrategy +instanceKlass org/gradle/model/internal/manage/schema/extract/ModelSchemaExtractionContext +instanceKlass org/gradle/model/internal/manage/schema/extract/DefaultModelSchemaExtractor +instanceKlass org/gradle/platform/base/ComponentBinaries +instanceKlass org/gradle/platform/base/VariantComponentSpec +instanceKlass org/gradle/platform/base/VariantComponent +instanceKlass org/gradle/platform/base/BinaryTasks +instanceKlass org/gradle/model/internal/core/ModelPath$Cache +instanceKlass org/gradle/platform/base/BinaryContainer +instanceKlass org/gradle/model/ModelMap +instanceKlass org/gradle/model/internal/type/ParameterizedTypeWrapper +instanceKlass org/gradle/model/internal/inspect/ExtractedModelRule +instanceKlass org/gradle/model/internal/inspect/RuleSourceValidationProblemCollector +instanceKlass org/gradle/model/internal/inspect/AbstractAnnotationDrivenModelRuleExtractor +instanceKlass org/gradle/model/internal/manage/schema/extract/ModelSchemaAspect +instanceKlass org/gradle/platform/base/internal/VariantAspectExtractionStrategy +instanceKlass org/gradle/api/internal/plugins/RuleBasedPluginTarget +instanceKlass org/gradle/configuration/project/NotifyProjectBeforeEvaluatedBuildOperationType$1 +instanceKlass org/gradle/configuration/project/NotifyProjectBeforeEvaluatedBuildOperationType$Result +instanceKlass org/gradle/configuration/project/NotifyProjectBeforeEvaluatedBuildOperationType +instanceKlass org/gradle/internal/operations/BuildOperationType +instanceKlass org/gradle/util/internal/NameValidator +instanceKlass org/gradle/configuration/project/LifecycleProjectEvaluator$NotifyProjectBeforeEvaluatedDetails +instanceKlass org/gradle/configuration/project/NotifyProjectBeforeEvaluatedBuildOperationType$Details +instanceKlass org/gradle/configuration/project/LifecycleProjectEvaluator$NotifyBeforeEvaluate +instanceKlass org/gradle/internal/work/DefaultWorkerLeaseService$2 +instanceKlass org/gradle/api/internal/project/DefaultProjectStateRegistry$ProjectStateImpl$$Lambda$411 +instanceKlass org/gradle/api/internal/project/DefaultProjectStateRegistry$ProjectStateImpl$$Lambda$410 +instanceKlass org/gradle/configuration/project/LifecycleProjectEvaluator$EvaluateProject$$Lambda$409 +instanceKlass org/gradle/configuration/project/LifecycleProjectEvaluator$ConfigureProjectDetails +instanceKlass org/gradle/configuration/project/LifecycleProjectEvaluator$EvaluateProject +instanceKlass org/gradle/configuration/project/LifecycleProjectEvaluator +instanceKlass org/gradle/configuration/project/DelayedConfigurationActions +instanceKlass org/gradle/configuration/project/BuildScriptProcessor +instanceKlass org/gradle/buildinit/plugins/internal/action/WrapperPluginAutoApplyAction +instanceKlass org/gradle/buildinit/plugins/internal/action/BuildInitAutoApplyAction +instanceKlass org/gradle/kotlin/dsl/tooling/builders/KotlinScriptingModelBuildersRegistrationAction +instanceKlass org/gradle/jvm/toolchain/internal/task/ShowToolchainsTaskConfigurator +instanceKlass org/gradle/api/plugins/internal/HelpTasksAutoApplyAction +instanceKlass org/gradle/configuration/project/ConfigureActionsProjectEvaluator +instanceKlass org/gradle/initialization/NotifyingBuildLoader$3$1 +instanceKlass org/gradle/initialization/NotifyProjectsLoadedBuildOperationType$Details +instanceKlass org/gradle/initialization/NotifyingBuildLoader$3 +instanceKlass org/gradle/initialization/NotifyingBuildLoader$BuildStructureOperationResult +instanceKlass org/gradle/initialization/LoadProjectsBuildOperationType$Result +instanceKlass org/gradle/initialization/NotifyingBuildLoader$BuildStructureOperationProject +instanceKlass org/gradle/api/internal/project/DefaultProjectStateRegistry$ProjectStateImpl$$Lambda$408 +instanceKlass org/gradle/initialization/ProjectPropertySettingBuildLoader$CachingPropertyApplicator +instanceKlass org/gradle/api/internal/project/ProjectFactory$$Lambda$407 +instanceKlass org/gradle/api/internal/project/DefaultProject$$Lambda$406 +instanceKlass org/gradle/internal/extensibility/ExtensibleDynamicObject$2 +instanceKlass org/gradle/internal/BiAction +instanceKlass org/gradle/api/internal/tasks/DefaultTaskContainerFactory$1 +instanceKlass org/gradle/api/internal/tasks/DefaultTaskContainer$7 +instanceKlass org/gradle/api/internal/tasks/DefaultTaskContainer$6 +instanceKlass org/gradle/api/Task$Namer +instanceKlass org/gradle/model/internal/core/ModelPath +instanceKlass org/gradle/model/internal/core/MutableModelNode +instanceKlass org/gradle/model/internal/core/ModelNode +instanceKlass org/gradle/api/internal/project/taskfactory/TaskIdentity +instanceKlass org/gradle/api/tasks/TaskProvider +instanceKlass org/gradle/api/internal/tasks/RealizeTaskBuildOperationType$Result +instanceKlass org/gradle/api/internal/tasks/RegisterTaskBuildOperationType$Result +instanceKlass org/gradle/api/internal/project/taskfactory/TaskFactory +instanceKlass org/gradle/api/internal/project/taskfactory/AnnotationProcessingTaskFactory +instanceKlass org/gradle/api/internal/project/taskfactory/DefaultTaskClassInfoStore$$Lambda$405 +instanceKlass org/gradle/api/internal/project/taskfactory/TaskClassInfo +instanceKlass org/gradle/api/internal/project/taskfactory/DefaultTaskClassInfoStore$AbstractIncrementalTaskActionFactory +instanceKlass org/gradle/api/internal/project/taskfactory/TaskActionFactory +instanceKlass org/gradle/api/internal/project/taskfactory/DefaultTaskClassInfoStore +instanceKlass org/gradle/model/internal/core/rule/describe/SimpleModelRuleDescriptor$1 +instanceKlass org/gradle/internal/Factories$2 +instanceKlass org/gradle/model/internal/core/rule/describe/AbstractModelRuleDescriptor +instanceKlass org/gradle/model/internal/core/rule/describe/ModelRuleDescriptor +instanceKlass org/gradle/model/internal/core/ModelReference +instanceKlass org/gradle/api/internal/tasks/DefaultTaskContainerFactory +instanceKlass org/gradle/internal/service/scopes/WorkerSharedProjectScopeServices +instanceKlass org/gradle/nativeplatform/internal/CompilerOutputFileNamingSchemeFactory +instanceKlass org/gradle/nativeplatform/internal/services/NativeBinaryServices$ProjectCompilerServices +instanceKlass org/gradle/language/internal/DefaultNativeComponentFactory +instanceKlass org/gradle/language/internal/NativeComponentFactory +instanceKlass org/gradle/language/nativeplatform/internal/toolchains/ToolChainSelector$Result +instanceKlass org/gradle/language/nativeplatform/internal/toolchains/DefaultToolChainSelector +instanceKlass org/gradle/language/nativeplatform/internal/toolchains/ToolChainSelector +instanceKlass org/gradle/language/nativeplatform/internal/incremental/IncrementalCompilerBuilder$IncrementalCompiler +instanceKlass org/gradle/language/nativeplatform/internal/incremental/DefaultIncrementalCompilerBuilder +instanceKlass org/gradle/language/nativeplatform/internal/incremental/IncrementalCompilerBuilder +instanceKlass org/gradle/plugins/ide/internal/DefaultIdeArtifactRegistry +instanceKlass org/gradle/plugins/ide/internal/IdeArtifactRegistry +instanceKlass org/gradle/internal/snapshot/Snapshot +instanceKlass org/gradle/internal/snapshot/impl/DefaultSnapshottingService +instanceKlass org/gradle/internal/snapshot/SnapshottingService +instanceKlass org/gradle/internal/enterprise/test/TestTaskProperties +instanceKlass org/gradle/internal/enterprise/test/TestTaskFilters +instanceKlass org/gradle/internal/enterprise/test/TestTaskForkOptions +instanceKlass org/gradle/internal/enterprise/test/impl/DefaultTestTaskPropertiesService +instanceKlass org/gradle/internal/enterprise/test/TestTaskPropertiesService +instanceKlass org/gradle/buildinit/plugins/internal/ProjectLayoutSetupRegistry +instanceKlass org/gradle/buildinit/plugins/internal/services/BuildInitServices$ProjectScopeBuildInitServices +instanceKlass org/gradle/api/publish/maven/internal/publisher/MavenDuplicatePublicationTracker +instanceKlass org/gradle/api/tasks/SourceSetContainer +instanceKlass org/gradle/api/plugins/jvm/internal/JvmPluginServices +instanceKlass org/gradle/api/plugins/jvm/internal/JvmModelingServices +instanceKlass org/gradle/api/plugins/jvm/internal/JvmEcosystemUtilities +instanceKlass org/gradle/api/plugins/internal/PluginAuthorServices$ProjectScopeServices +instanceKlass org/gradle/jvm/toolchain/JavaToolchainSpec +instanceKlass org/gradle/jvm/toolchain/internal/DefaultJavaToolchainService +instanceKlass org/gradle/jvm/toolchain/JavaToolchainService +instanceKlass org/gradle/jvm/toolchain/internal/JavaToolchainQueryService +instanceKlass org/gradle/jvm/toolchain/install/internal/AdoptOpenJdkDownloader +instanceKlass org/gradle/jvm/toolchain/install/internal/AdoptOpenJdkRemoteBinary +instanceKlass org/gradle/jvm/toolchain/install/internal/DefaultJavaToolchainProvisioningService +instanceKlass org/gradle/jvm/toolchain/install/internal/JavaToolchainProvisioningService +instanceKlass org/gradle/jvm/toolchain/internal/JavaToolchainFactory +instanceKlass org/gradle/jvm/toolchain/internal/ToolchainToolFactory +instanceKlass org/gradle/language/java/internal/JavaLanguagePluginServiceRegistry$JavaProjectScopeServices +instanceKlass org/gradle/jvm/toolchain/internal/JavaCompilerFactory +instanceKlass org/gradle/language/java/internal/JavaToolChainServiceRegistry$ProjectScopeCompileServices +instanceKlass org/gradle/api/internal/tasks/compile/GroovyCompilerFactory +instanceKlass org/gradle/language/base/internal/compile/CompilerFactory +instanceKlass org/gradle/api/internal/tasks/compile/GroovyServices$ProjectServices +instanceKlass org/gradle/api/publish/ivy/internal/publisher/IvyDuplicatePublicationTracker +instanceKlass org/gradle/workers/internal/BuildOperationAwareWorker +instanceKlass org/gradle/workers/internal/IsolatedClassloaderWorkerFactory +instanceKlass org/gradle/workers/internal/WorkerDaemonFactory +instanceKlass org/gradle/workers/internal/WorkerFactory +instanceKlass org/gradle/workers/WorkerExecutor +instanceKlass org/gradle/workers/internal/WorkersServices$ProjectScopeServices +instanceKlass org/gradle/internal/service/scopes/ProjectScopeServices$$Lambda$404 +instanceKlass org/gradle/api/internal/component/ComponentRegistry +instanceKlass org/gradle/normalization/internal/RuntimeClasspathNormalizationInternal +instanceKlass org/gradle/normalization/RuntimeClasspathNormalization +instanceKlass org/gradle/normalization/InputNormalization +instanceKlass org/gradle/api/internal/project/taskfactory/TaskInstantiator +instanceKlass org/gradle/model/internal/core/NamedEntityInstantiator +instanceKlass org/gradle/internal/typeconversion/TypeConverter +instanceKlass org/gradle/api/internal/file/SourceDirectorySetFactory +instanceKlass org/gradle/api/internal/project/ant/AntLoggingAdapterFactory +instanceKlass org/gradle/api/internal/project/DeferredProjectConfiguration +instanceKlass org/gradle/api/internal/file/DefaultProjectLayout +instanceKlass org/gradle/api/internal/file/TaskFileVarFactory +instanceKlass org/gradle/internal/service/scopes/GradleScopeServices$1 +instanceKlass org/gradle/initialization/NotifyingBuildLoader$2$1 +instanceKlass org/gradle/initialization/LoadProjectsBuildOperationType$Details +instanceKlass org/gradle/initialization/NotifyingBuildLoader$2 +instanceKlass org/gradle/api/internal/catalog/DefaultDependenciesAccessors$$Lambda$403 +instanceKlass org/gradle/api/internal/catalog/DefaultVersionCatalog +instanceKlass org/gradle/api/internal/DefaultDomainObjectCollection$IteratorImpl +instanceKlass org/gradle/internal/serialization/Cached +instanceKlass org/gradle/internal/instantiation/generator/ManagedObjectFactory$$Lambda$402 +instanceKlass org/gradle/internal/instantiation/generator/ManagedObjectFactory$ManagedPropertyName +instanceKlass org/gradle/api/internal/catalog/DefaultDependenciesAccessors +instanceKlass org/gradle/api/artifacts/ProjectDependency +instanceKlass org/gradle/api/artifacts/SelfResolvingDependency +instanceKlass org/gradle/api/artifacts/ModuleDependency +instanceKlass org/gradle/internal/execution/workspace/impl/DefaultImmutableWorkspaceProvider$$Lambda$401 +instanceKlass org/gradle/internal/execution/workspace/impl/DefaultImmutableWorkspaceProvider$$Lambda$400 +instanceKlass org/gradle/api/internal/DependencyClassPathProvider +instanceKlass org/gradle/configuration/BuildOperationFiringProjectsPreparer$ConfigureBuild$1 +instanceKlass org/gradle/initialization/ConfigureBuildBuildOperationType$Details +instanceKlass org/gradle/configuration/BuildOperationFiringProjectsPreparer$ConfigureBuild +instanceKlass org/gradle/initialization/VintageBuildModelController$$Lambda$399 +instanceKlass org/gradle/internal/resources/TaskExecutionLockRegistry$2 +instanceKlass org/gradle/internal/resources/ProjectLockRegistry$1 +instanceKlass org/gradle/api/internal/project/DefaultProjectStateRegistry$ProjectStateImpl +instanceKlass org/gradle/api/internal/artifacts/DefaultProjectComponentIdentifier +instanceKlass org/gradle/api/internal/project/DefaultProjectStateRegistry$DefaultBuildProjectRegistry +instanceKlass org/gradle/internal/build/BuildProjectRegistry +instanceKlass org/gradle/initialization/AbstractProjectSpec +instanceKlass org/gradle/initialization/ProjectSpec +instanceKlass org/gradle/initialization/ProjectSpecs +instanceKlass org/gradle/initialization/DefaultSettingsLoader$$Lambda$398 +instanceKlass org/gradle/caching/internal/controller/RootBuildCacheControllerRef$CloseShieldBuildCacheController +instanceKlass org/gradle/caching/internal/controller/NoOpBuildCacheController +instanceKlass org/gradle/caching/internal/services/BuildCacheControllerFactory$ResultImpl +instanceKlass org/gradle/caching/internal/FinalizeBuildCacheConfigurationBuildOperationType$Result +instanceKlass org/gradle/caching/internal/services/BuildCacheControllerFactory$DetailsImpl +instanceKlass org/gradle/caching/internal/FinalizeBuildCacheConfigurationBuildOperationType$Details +instanceKlass org/gradle/caching/internal/FinalizeBuildCacheConfigurationBuildOperationType$Result$BuildCacheDescription +instanceKlass org/gradle/caching/internal/services/BuildCacheControllerFactory$1 +instanceKlass org/gradle/caching/BuildCacheServiceFactory$Describer +instanceKlass org/gradle/caching/internal/services/BuildCacheControllerFactory +instanceKlass org/gradle/caching/configuration/internal/DefaultBuildCacheConfiguration +instanceKlass org/gradle/caching/local/internal/DirectoryBuildCacheServiceFactory +instanceKlass org/gradle/internal/management/DefaultDependencyResolutionManagement$$Lambda$397 +instanceKlass org/gradle/internal/management/DefaultDependencyResolutionManagement$$Lambda$396 +instanceKlass jdk/internal/math/FDBigInteger +instanceKlass org/gradle/internal/time/TimeFormatting +instanceKlass org/gradle/groovy/scripts/internal/FileCacheBackedScriptClassCompiler$EmptyCompiledScript +instanceKlass org/gradle/internal/event/BroadcastDispatch$ActionInvocationHandler +instanceKlass org/gradle/internal/operations/notify/BuildOperationNotificationBridge$2$$Lambda$395 +instanceKlass org/gradle/vcs/VcsMappings +instanceKlass org/gradle/vcs/internal/services/VersionControlServices$VersionControlSettingsServices +instanceKlass org/gradle/plugin/internal/PluginUsePluginServiceRegistry$SettingsScopeServices +instanceKlass org/gradle/internal/service/scopes/SettingsScopeServices$1 +instanceKlass org/gradle/initialization/IncludedBuildSpec +instanceKlass org/gradle/initialization/BuildOperationSettingsProcessor$2$1 +instanceKlass org/gradle/initialization/EvaluateSettingsBuildOperationType$Details +instanceKlass org/gradle/initialization/BuildOperationSettingsProcessor$2 +instanceKlass org/gradle/internal/logging/sink/ProgressLogEventGenerator$1 +instanceKlass org/gradle/configuration/internal/DefaultListenerBuildOperationDecorator$1 +instanceKlass org/gradle/listener/ClosureBackedMethodInvocationDispatch +instanceKlass org/codehaus/groovy/ast/ClassNode$$Lambda$394 +instanceKlass org/codehaus/groovy/ast/ClassNode$MapOfLists +instanceKlass org/codehaus/groovy/util/AbstractConcurrentMap$Entry +instanceKlass org/codehaus/groovy/util/AbstractConcurrentMapBase$Entry +instanceKlass org/codehaus/groovy/ast/ClassHelper$ClassHelperCache +instanceKlass org/codehaus/groovy/runtime/GeneratedLambda +instanceKlass org/codehaus/groovy/ast/ClassHelper +instanceKlass org/codehaus/groovy/classgen/asm/util/TypeUtil +instanceKlass org/gradle/api/internal/tasks/testing/logging/TestExceptionFormatter +instanceKlass org/gradle/api/internal/tasks/testing/TestResultProcessor +instanceKlass org/gradle/api/tasks/testing/TestOutputListener +instanceKlass org/gradle/api/tasks/testing/TestListener +instanceKlass org/gradle/api/reporting/DirectoryReport +instanceKlass org/gradle/api/reporting/ConfigurableReport +instanceKlass org/gradle/api/reporting/Report +instanceKlass org/gradle/api/internal/tasks/testing/report/TestReporter +instanceKlass org/gradle/api/internal/tasks/testing/junit/result/TestResultsProvider +instanceKlass org/gradle/api/reporting/ReportContainer +instanceKlass org/gradle/api/tasks/testing/TestFilter +instanceKlass org/gradle/api/internal/tasks/TaskDependencyInternal +instanceKlass org/gradle/api/internal/tasks/InputChangesAwareTaskAction +instanceKlass org/gradle/api/internal/tasks/ImplementationAwareTaskAction +instanceKlass groovy/util/ObservableList +instanceKlass org/gradle/api/internal/tasks/TaskLocalStateInternal +instanceKlass org/gradle/api/internal/TaskOutputsInternal +instanceKlass org/gradle/api/internal/TaskInputsInternal +instanceKlass org/gradle/internal/logging/slf4j/ContextAwareTaskLogger +instanceKlass org/gradle/api/reporting/Reporting +instanceKlass org/gradle/api/tasks/VerificationTask +instanceKlass org/gradle/configuration/internal/DefaultListenerBuildOperationDecorator$BuildOperationEmittingInvocationHandler +instanceKlass org/apache/commons/lang/ClassUtils +instanceKlass org/gradle/execution/taskgraph/DefaultTaskExecutionGraph$$Lambda$393 +instanceKlass org/gradle/execution/ProjectExecutionServiceRegistry +instanceKlass org/gradle/api/tasks/TaskDestroyables +instanceKlass org/gradle/api/tasks/TaskLocalState +instanceKlass org/gradle/api/tasks/TaskOutputs +instanceKlass org/gradle/api/tasks/TaskInputs +instanceKlass org/gradle/api/tasks/TaskState +instanceKlass groovy/transform/Generated +instanceKlass SetupUtpTestResultListenerAction +instanceKlass org/gradle/execution/plan/ExecutionPlan$1 +instanceKlass org/gradle/execution/taskgraph/DefaultTaskExecutionGraph +instanceKlass org/gradle/execution/plan/DefaultPlanExecutor +instanceKlass org/gradle/api/internal/tasks/TaskExecutionContext +instanceKlass org/codehaus/groovy/reflection/AccessPermissionChecker +instanceKlass org/codehaus/groovy/reflection/ReflectionUtils$$Lambda$392 +instanceKlass org/gradle/internal/snapshot/SearchUtil +instanceKlass org/gradle/internal/snapshot/AbstractListChildMap$$Lambda$391 +instanceKlass org/codehaus/groovy/runtime/ScriptBytecodeAdapter +instanceKlass org/codehaus/groovy/runtime/metaclass/ClosureMetaClass$$Lambda$390 +instanceKlass org/codehaus/groovy/runtime/metaclass/ClosureMetaClass$MethodChooser +instanceKlass org/codehaus/groovy/runtime/callsite/BooleanClosureWrapper +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass com/sun/beans/finder/FinderUtils +instanceKlass com/sun/beans/finder/AbstractFinder +instanceKlass org/codehaus/groovy/reflection/ClassLoaderForClassArtifacts$$Lambda$389 +instanceKlass groovyjarjarasm/asm/Attribute +instanceKlass groovyjarjarasm/asm/Handler +instanceKlass org/codehaus/groovy/runtime/typehandling/DefaultTypeTransformation +instanceKlass org/codehaus/groovy/classgen/asm/BytecodeHelper +instanceKlass groovyjarjarasm/asm/Edge +instanceKlass groovyjarjarasm/asm/Label +instanceKlass groovyjarjarasm/asm/Type +instanceKlass groovyjarjarasm/asm/Frame +instanceKlass org/codehaus/groovy/reflection/CachedClass$5$$Lambda$388 +instanceKlass groovyjarjarasm/asm/ByteVector +instanceKlass groovyjarjarasm/asm/Symbol +instanceKlass groovyjarjarasm/asm/SymbolTable +instanceKlass groovyjarjarasm/asm/FieldVisitor +instanceKlass groovyjarjarasm/asm/ModuleVisitor +instanceKlass groovyjarjarasm/asm/MethodVisitor +instanceKlass groovyjarjarasm/asm/AnnotationVisitor +instanceKlass groovyjarjarasm/asm/RecordComponentVisitor +instanceKlass org/codehaus/groovy/classgen/GeneratorContext +instanceKlass org/codehaus/groovy/reflection/android/AndroidSupport +instanceKlass org/codehaus/groovy/runtime/callsite/GroovySunClassLoader$$Lambda$387 +instanceKlass org/codehaus/groovy/reflection/SunClassLoader$$Lambda$386 +instanceKlass org/codehaus/groovy/runtime/callsite/CallSiteGenerator +instanceKlass org/codehaus/groovy/runtime/metaclass/MetaMethodIndex$CacheEntry +instanceKlass org/codehaus/groovy/runtime/wrappers/Wrapper +instanceKlass groovy/lang/AdaptingMetaClass +instanceKlass groovy/lang/GroovyInterceptable +instanceKlass org/codehaus/groovy/runtime/ArrayUtil +instanceKlass org/codehaus/groovy/syntax/Types +instanceKlass org/codehaus/groovy/syntax/CSTNode +instanceKlass org/codehaus/groovy/ast/tools/GeneralUtils +instanceKlass org/gradle/api/component/SoftwareComponentContainer +instanceKlass org/gradle/api/NamedDomainObjectFactory +instanceKlass org/gradle/normalization/internal/InputNormalizationHandlerInternal +instanceKlass org/gradle/model/internal/registry/ModelRegistry +instanceKlass org/gradle/api/internal/project/ProjectInternal$DetachedResolver +instanceKlass org/gradle/configuration/project/ProjectConfigurationActionContainer +instanceKlass org/gradle/internal/model/RuleBasedPluginListener +instanceKlass org/gradle/api/internal/tasks/TaskContainerInternal +instanceKlass org/gradle/api/internal/project/ProjectStateInternal +instanceKlass org/gradle/vcs/SourceControl +instanceKlass org/gradle/plugin/management/PluginManagementSpec +instanceKlass org/gradle/initialization/DefaultProjectDescriptor +instanceKlass org/gradle/api/initialization/ProjectDescriptor +instanceKlass org/gradle/internal/metaobject/DynamicInvokeResult +instanceKlass org/gradle/cache/internal/DefaultFileContentCacheFactory$DefaultFileContentCache +instanceKlass org/gradle/internal/jvm/JavaModuleDetector$ModuleInfoLocator +instanceKlass org/gradle/internal/jvm/JavaModuleDetector$$Lambda$385 +instanceKlass org/gradle/internal/jvm/JavaModuleDetector$$Lambda$384 +instanceKlass org/gradle/cache/internal/FileContentCache +instanceKlass org/gradle/cache/internal/DefaultFileContentCacheFactory +instanceKlass org/gradle/api/internal/model/InstantiatorBackedObjectFactory +instanceKlass org/gradle/process/internal/JavaForkOptionsInternal +instanceKlass org/gradle/process/JavaDebugOptions +instanceKlass org/gradle/process/internal/ExecHandleBuilder +instanceKlass org/gradle/process/internal/ExecAction +instanceKlass org/gradle/process/internal/JavaExecAction +instanceKlass org/gradle/process/internal/DefaultExecActionFactory +instanceKlass org/gradle/api/internal/file/copy/CopySpecInternal +instanceKlass org/gradle/api/internal/file/copy/CopyAction +instanceKlass org/gradle/api/internal/file/copy/FileCopier +instanceKlass org/gradle/api/internal/resources/DefaultResourceHandler +instanceKlass org/gradle/api/internal/resources/DefaultTextResourceFactory +instanceKlass org/gradle/api/internal/resources/DefaultResourceResolver +instanceKlass org/gradle/api/internal/resources/ResourceResolver +instanceKlass org/gradle/api/resources/TextResourceFactory +instanceKlass org/gradle/api/internal/resources/DefaultResourceHandler$Factory$FactoryImpl +instanceKlass org/gradle/api/internal/artifacts/DependencyManagementBuildScopeServices$$Lambda$383 +instanceKlass org/gradle/internal/extensibility/ExtensionsStorage$ExtensionHolder +instanceKlass org/gradle/api/plugins/ExtensionsSchema$ExtensionSchema +instanceKlass org/gradle/api/NamedDomainObjectCollectionSchema$NamedDomainObjectSchema +instanceKlass org/gradle/internal/extensibility/ExtensionsStorage +instanceKlass org/gradle/api/plugins/ExtraPropertiesExtension +instanceKlass org/gradle/internal/extensibility/DefaultConvention +instanceKlass org/gradle/api/internal/plugins/ExtensionContainerInternal +instanceKlass org/gradle/internal/metaobject/DynamicObjectUtil +instanceKlass org/gradle/api/internal/coerce/StringToEnumTransformer +instanceKlass org/gradle/internal/metaobject/BeanDynamicObject$MetaClassAdapter +instanceKlass org/gradle/api/internal/coerce/PropertySetTransformer +instanceKlass org/gradle/api/internal/coerce/MethodArgumentsTransformer +instanceKlass org/gradle/process/JavaExecSpec +instanceKlass org/gradle/process/JavaForkOptions +instanceKlass org/gradle/process/ExecSpec +instanceKlass org/gradle/process/BaseExecSpec +instanceKlass org/gradle/process/ProcessForkOptions +instanceKlass org/codehaus/groovy/runtime/memoize/StampedCommonCache$$Lambda$382 +instanceKlass org/codehaus/groovy/runtime/memoize/EvictableCache$Action +instanceKlass java/util/WeakHashMap$HashIterator +instanceKlass java/util/stream/StreamSpliterators$WrappingSpliterator$$Lambda$381 +instanceKlass java/util/function/BooleanSupplier +instanceKlass java/util/stream/StreamSpliterators$WrappingSpliterator$$Lambda$380 +instanceKlass jdk/internal/jrtfs/JrtDirectoryStream$1 +instanceKlass jdk/internal/jrtfs/JrtFileSystem$$Lambda$379 +instanceKlass jdk/internal/jrtfs/JrtFileSystem$$Lambda$378 +instanceKlass jdk/internal/jrtfs/JrtDirectoryStream +instanceKlass jdk/internal/jrtfs/JrtFileAttributes +instanceKlass jdk/internal/jimage/ImageReader$SharedImageReader$$Lambda$377 +instanceKlass jdk/internal/jimage/ImageReader$SharedImageReader$LocationVisitor +instanceKlass jdk/internal/jimage/ImageReader$Node +instanceKlass jdk/internal/jrtfs/SystemImage$2 +instanceKlass jdk/internal/jrtfs/SystemImage$$Lambda$376 +instanceKlass jdk/internal/jrtfs/SystemImage +instanceKlass jdk/internal/jrtfs/JrtPath +instanceKlass groovy/grape/GrapeIvy +instanceKlass groovy/grape/GrapeEngine +instanceKlass org/codehaus/groovy/vmplugin/v9/Java9$$Lambda$375 +instanceKlass org/codehaus/groovy/vmplugin/v9/Java9$$Lambda$374 +instanceKlass org/codehaus/groovy/vmplugin/v9/Java9$$Lambda$373 +instanceKlass java/util/stream/Collectors$$Lambda$372 +instanceKlass java/util/stream/Collectors$$Lambda$371 +instanceKlass java/util/stream/Collectors$$Lambda$370 +instanceKlass org/codehaus/groovy/vmplugin/v9/Java9$$Lambda$369 +instanceKlass org/codehaus/groovy/vmplugin/v9/Java9$$Lambda$368 +instanceKlass org/codehaus/groovy/vmplugin/v9/Java9$$Lambda$367 +instanceKlass jdk/nio/zipfs/ZipFileSystem$$Lambda$366 +instanceKlass org/codehaus/groovy/vmplugin/v9/ClassFinder$1$$Lambda$365 +instanceKlass jdk/nio/zipfs/ZipDirectoryStream$1 +instanceKlass jdk/nio/zipfs/ZipDirectoryStream +instanceKlass java/time/chrono/AbstractChronology +instanceKlass java/time/zone/ZoneOffsetTransition +instanceKlass java/time/zone/ZoneOffsetTransitionRule +instanceKlass java/time/zone/Ser +instanceKlass java/io/Externalizable +instanceKlass java/time/zone/ZoneRulesProvider$1 +instanceKlass java/time/zone/ZoneRulesProvider +instanceKlass jdk/nio/zipfs/ZipUtils +instanceKlass java/nio/file/SimpleFileVisitor +instanceKlass jdk/nio/zipfs/ZipFileSystem$END +instanceKlass jdk/nio/zipfs/ZipConstants +instanceKlass sun/nio/fs/WindowsChannelFactory$2 +instanceKlass sun/nio/fs/WindowsSecurityDescriptor +instanceKlass jdk/nio/zipfs/ZipPath +instanceKlass jdk/nio/zipfs/ZipCoder +instanceKlass sun/nio/fs/WindowsSecurity +instanceKlass sun/nio/fs/AbstractAclFileAttributeView +instanceKlass java/nio/file/attribute/AclFileAttributeView +instanceKlass java/nio/file/attribute/FileOwnerAttributeView +instanceKlass jdk/nio/zipfs/ZipFileSystem$$Lambda$364 +instanceKlass sun/nio/fs/WindowsFileSystemProvider$1 +instanceKlass jdk/nio/zipfs/ZipFileSystem$$Lambda$363 +instanceKlass java/nio/file/PathMatcher +instanceKlass jdk/nio/zipfs/ZipFileAttributes +instanceKlass jdk/nio/zipfs/ZipFileSystem$IndexNode +instanceKlass sun/nio/fs/WindowsLinkSupport +instanceKlass jdk/internal/jimage/ImageBufferCache$2 +instanceKlass jdk/internal/jimage/ImageBufferCache +instanceKlass sun/net/www/protocol/jrt/JavaRuntimeURLConnection$$Lambda$362 +instanceKlass java/nio/file/FileStore +instanceKlass java/nio/channels/AsynchronousFileChannel +instanceKlass java/nio/channels/AsynchronousChannel +instanceKlass java/nio/file/spi/FileSystemProvider$1 +instanceKlass sun/nio/ch/FileChannelImpl$Closer +instanceKlass sun/nio/fs/WindowsChannelFactory$Flags +instanceKlass sun/nio/fs/WindowsChannelFactory$1 +instanceKlass sun/nio/fs/WindowsChannelFactory +instanceKlass sun/nio/fs/WindowsUriSupport +instanceKlass org/codehaus/groovy/vmplugin/v9/ClassFinder +instanceKlass org/apache/groovy/util/Maps +instanceKlass org/codehaus/groovy/GroovyExceptionInterface +instanceKlass org/codehaus/groovy/control/CompilerConfiguration +instanceKlass groovy/lang/GroovyClassLoader$1 +instanceKlass org/codehaus/groovy/runtime/memoize/CommonCache +instanceKlass java/util/concurrent/locks/StampedLock$WNode +instanceKlass java/util/concurrent/locks/StampedLock +instanceKlass org/codehaus/groovy/runtime/memoize/StampedCommonCache +instanceKlass org/codehaus/groovy/runtime/memoize/ValueConvertable +instanceKlass org/codehaus/groovy/control/CompilationUnit$IPrimaryClassNodeOperation +instanceKlass org/codehaus/groovy/control/CompilationUnit$ClassgenCallback +instanceKlass org/codehaus/groovy/runtime/memoize/UnlimitedConcurrentCache +instanceKlass org/codehaus/groovy/runtime/memoize/EvictableCache +instanceKlass org/codehaus/groovy/ast/expr/MethodCall +instanceKlass org/codehaus/groovy/ast/stmt/LoopingStatement +instanceKlass org/codehaus/groovy/control/messages/Message +instanceKlass org/codehaus/groovy/ast/CodeVisitorSupport +instanceKlass org/codehaus/groovy/ast/GroovyClassVisitor +instanceKlass org/codehaus/groovy/transform/ErrorCollecting +instanceKlass org/codehaus/groovy/ast/expr/ExpressionTransformer +instanceKlass java/util/concurrent/locks/ReentrantReadWriteLock$WriteLock +instanceKlass java/util/concurrent/locks/ReentrantReadWriteLock$ReadLock +instanceKlass org/apache/groovy/plugin/GroovyRunnerRegistry +instanceKlass org/codehaus/groovy/runtime/metaclass/MetaClassRegistryImpl$$Lambda$361 +instanceKlass groovy/lang/MetaClassImpl$$Lambda$360 +instanceKlass org/codehaus/groovy/runtime/GroovyCategorySupport +instanceKlass java/util/concurrent/locks/ReentrantReadWriteLock +instanceKlass org/codehaus/groovy/util/ComplexKeyHashMap$1 +instanceKlass org/codehaus/groovy/reflection/CachedClass$1$$Lambda$359 +instanceKlass org/codehaus/groovy/reflection/CachedClass$1$$Lambda$358 +instanceKlass org/codehaus/groovy/reflection/CachedClass$1$$Lambda$357 +instanceKlass org/codehaus/groovy/reflection/CachedClass$1$$Lambda$356 +instanceKlass java/beans/SimpleBeanInfo +instanceKlass java/beans/BeanProperty +instanceKlass com/sun/beans/WildcardTypeImpl +instanceKlass com/sun/beans/introspect/PropertyInfo +instanceKlass com/sun/beans/introspect/EventSetInfo +instanceKlass com/sun/beans/WeakCache +instanceKlass com/sun/beans/TypeResolver +instanceKlass java/beans/MethodRef +instanceKlass com/sun/beans/introspect/MethodInfo$MethodOrder +instanceKlass com/sun/beans/introspect/MethodInfo +instanceKlass com/sun/beans/util/Cache$Ref +instanceKlass com/sun/beans/util/Cache$CacheEntry +instanceKlass com/sun/beans/util/Cache +instanceKlass com/sun/beans/introspect/ClassInfo +instanceKlass javax/swing/SwingContainer +instanceKlass java/beans/JavaBean +instanceKlass java/util/zip/ZipFile$ZipEntryIterator +instanceKlass java/util/jar/JarFile$$Lambda$355 +instanceKlass com/sun/beans/finder/ClassFinder +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass java/lang/invoke/ClassSpecializer$Factory$1Var +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass com/sun/beans/finder/InstanceFinder +instanceKlass java/beans/WeakIdentityMap +instanceKlass java/beans/ThreadGroupContext +instanceKlass groovy/lang/MetaClassImpl$$Lambda$354 +instanceKlass java/beans/BeanInfo +instanceKlass org/codehaus/groovy/reflection/CachedClass$CachedMethodComparatorWithString +instanceKlass org/codehaus/groovy/util/AbstractConcurrentMapBase +instanceKlass java/lang/reflect/AnnotatedType +instanceKlass groovyjarjarasm/asm/ClassVisitor +instanceKlass org/codehaus/groovy/runtime/MetaClassHelper +instanceKlass org/codehaus/groovy/reflection/CachedClass$2$$Lambda$353 +instanceKlass org/codehaus/groovy/reflection/CachedClass$2$$Lambda$352 +instanceKlass org/codehaus/groovy/reflection/CachedClass$2$$Lambda$351 +instanceKlass org/codehaus/groovy/reflection/CachedClass$2$$Lambda$350 +instanceKlass groovy/lang/ClosureInvokingMethod +instanceKlass groovy/lang/ExpandoMetaClass$Callable +instanceKlass org/codehaus/groovy/runtime/MethodKey +instanceKlass org/codehaus/groovy/reflection/CachedClass$2$$Lambda$349 +instanceKlass org/codehaus/groovy/runtime/metaclass/MetaMethodIndex$Header +instanceKlass org/codehaus/groovy/runtime/metaclass/MetaMethodIndex$Entry +instanceKlass org/codehaus/groovy/runtime/metaclass/MetaMethodIndex$EntryIterator +instanceKlass org/codehaus/groovy/runtime/metaclass/MetaMethodIndex +instanceKlass groovy/lang/MetaClassImpl$$Lambda$348 +instanceKlass groovy/lang/MetaClassImpl$$Lambda$347 +instanceKlass org/codehaus/groovy/util/SingleKeyHashMap$Copier +instanceKlass groovy/lang/MetaClassImpl$$Lambda$346 +instanceKlass groovy/lang/MetaClassImpl$MethodIndexAction +instanceKlass org/codehaus/groovy/runtime/GeneratedClosure +instanceKlass groovy/lang/MetaClassImpl +instanceKlass groovy/lang/MutableMetaClass +instanceKlass org/gradle/api/internal/provider/MapPropertyExtensions +instanceKlass org/w3c/dom/Document +instanceKlass org/w3c/dom/UserDataHandler +instanceKlass org/w3c/dom/NamedNodeMap +instanceKlass org/w3c/dom/TypeInfo +instanceKlass org/w3c/dom/Attr +instanceKlass org/w3c/dom/Element +instanceKlass org/w3c/dom/Node +instanceKlass org/w3c/dom/NodeList +instanceKlass org/apache/groovy/xml/extensions/XmlExtensions +instanceKlass java/awt/LayoutManager +instanceKlass javax/swing/ButtonModel +instanceKlass javax/swing/AbstractButton$Handler +instanceKlass javax/swing/event/ChangeListener +instanceKlass javax/swing/Icon +instanceKlass javax/swing/event/TableModelListener +instanceKlass javax/swing/MenuSelectionManager +instanceKlass javax/swing/event/TableColumnModelListener +instanceKlass javax/swing/ListSelectionModel +instanceKlass javax/swing/AncestorNotifier +instanceKlass java/beans/VetoableChangeListener +instanceKlass javax/swing/ArrayTable +instanceKlass javax/swing/TransferHandler$DropLocation +instanceKlass javax/swing/ActionMap +instanceKlass javax/swing/InputMap +instanceKlass javax/swing/InputVerifier +instanceKlass javax/swing/border/Border +instanceKlass javax/swing/event/AncestorListener +instanceKlass java/awt/AWTKeyStroke +instanceKlass javax/swing/plaf/ComponentUI +instanceKlass javax/swing/TransferHandler +instanceKlass java/awt/event/ItemListener +instanceKlass java/awt/peer/ComponentPeer +instanceKlass javax/accessibility/AccessibleStateSet +instanceKlass sun/awt/RequestFocusController +instanceKlass java/awt/im/InputContext +instanceKlass java/awt/im/InputMethodRequests +instanceKlass java/awt/event/InputMethodListener +instanceKlass java/awt/event/MouseWheelListener +instanceKlass java/awt/event/MouseMotionListener +instanceKlass java/awt/event/MouseListener +instanceKlass java/awt/event/KeyListener +instanceKlass java/awt/event/HierarchyBoundsListener +instanceKlass java/awt/event/HierarchyListener +instanceKlass java/awt/event/FocusListener +instanceKlass java/awt/event/ComponentListener +instanceKlass java/awt/image/BufferStrategy +instanceKlass java/awt/BufferCapabilities +instanceKlass java/awt/ImageCapabilities +instanceKlass java/awt/image/ImageProducer +instanceKlass java/awt/Insets +instanceKlass java/awt/Cursor +instanceKlass java/awt/image/ColorModel +instanceKlass sun/awt/ComponentFactory +instanceKlass java/awt/Toolkit +instanceKlass java/awt/dnd/DropTarget +instanceKlass java/awt/dnd/DropTargetListener +instanceKlass java/awt/PointerInfo +instanceKlass sun/java2d/pipe/Region +instanceKlass java/awt/ComponentOrientation +instanceKlass java/awt/GraphicsConfiguration +instanceKlass java/awt/Color +instanceKlass java/awt/Paint +instanceKlass java/awt/Transparency +instanceKlass java/awt/FontMetrics +instanceKlass java/beans/PropertyChangeListener +instanceKlass javax/accessibility/AccessibleContext +instanceKlass java/util/EventObject +instanceKlass java/awt/geom/RectangularShape +instanceKlass java/awt/Shape +instanceKlass java/awt/geom/Dimension2D +instanceKlass java/awt/geom/Point2D +instanceKlass java/awt/Graphics +instanceKlass java/awt/Event +instanceKlass java/awt/Font +instanceKlass java/awt/MenuComponent +instanceKlass java/awt/Image +instanceKlass javax/swing/table/TableColumn +instanceKlass javax/swing/Action +instanceKlass javax/swing/table/AbstractTableModel +instanceKlass javax/swing/ButtonGroup +instanceKlass javax/swing/table/TableModel +instanceKlass javax/swing/MenuElement +instanceKlass javax/swing/tree/TreePath +instanceKlass javax/swing/table/TableColumnModel +instanceKlass javax/swing/tree/DefaultMutableTreeNode +instanceKlass javax/swing/MutableComboBoxModel +instanceKlass javax/swing/ComboBoxModel +instanceKlass javax/swing/AbstractListModel +instanceKlass javax/swing/SwingConstants +instanceKlass java/awt/Component +instanceKlass java/awt/MenuContainer +instanceKlass java/awt/image/ImageObserver +instanceKlass javax/swing/TransferHandler$HasGetTransferHandler +instanceKlass javax/accessibility/Accessible +instanceKlass java/awt/event/ActionListener +instanceKlass javax/swing/event/ListDataListener +instanceKlass java/awt/ItemSelectable +instanceKlass javax/swing/tree/MutableTreeNode +instanceKlass javax/swing/tree/TreeNode +instanceKlass javax/swing/ListModel +instanceKlass org/apache/groovy/swing/extensions/SwingExtensions +instanceKlass java/sql/SQLType +instanceKlass java/sql/NClob +instanceKlass java/sql/Clob +instanceKlass java/sql/RowId +instanceKlass java/sql/Statement +instanceKlass java/sql/Blob +instanceKlass java/sql/SQLXML +instanceKlass java/sql/Array +instanceKlass java/sql/Ref +instanceKlass groovy/sql/GroovyResultSet +instanceKlass java/sql/ResultSet +instanceKlass java/sql/ResultSetMetaData +instanceKlass java/sql/Wrapper +instanceKlass org/apache/groovy/sql/extensions/SqlExtensions +instanceKlass java/nio/file/WatchEvent$Modifier +instanceKlass java/nio/file/WatchKey +instanceKlass java/nio/file/WatchEvent$Kind +instanceKlass java/nio/file/WatchService +instanceKlass org/apache/groovy/dateutil/extensions/DateUtilStaticExtensions +instanceKlass org/apache/groovy/dateutil/extensions/DateUtilExtensions +instanceKlass org/codehaus/groovy/runtime/metaclass/MetaClassRegistryImpl$DefaultModuleListener$$Lambda$345 +instanceKlass org/codehaus/groovy/runtime/metaclass/MethodHelper +instanceKlass java/time/zone/ZoneRules +instanceKlass java/time/chrono/Era +instanceKlass java/time/chrono/Chronology +instanceKlass java/time/format/DateTimeFormatter +instanceKlass java/time/temporal/ValueRange +instanceKlass java/time/temporal/TemporalQuery +instanceKlass java/time/MonthDay +instanceKlass java/time/Period +instanceKlass java/time/LocalDateTime +instanceKlass java/time/chrono/ChronoLocalDateTime +instanceKlass java/time/OffsetDateTime +instanceKlass java/time/ZonedDateTime +instanceKlass java/time/chrono/ChronoZonedDateTime +instanceKlass java/time/Instant +instanceKlass java/time/OffsetTime +instanceKlass java/time/YearMonth +instanceKlass java/time/LocalDate +instanceKlass java/time/chrono/ChronoLocalDate +instanceKlass java/time/LocalTime +instanceKlass java/time/Year +instanceKlass java/time/temporal/TemporalAdjuster +instanceKlass java/time/chrono/ChronoPeriod +instanceKlass java/time/temporal/Temporal +instanceKlass java/time/temporal/TemporalAccessor +instanceKlass java/time/temporal/TemporalField +instanceKlass org/apache/groovy/datetime/extensions/DateTimeStaticExtensions +instanceKlass org/apache/groovy/datetime/extensions/DateTimeExtensions +instanceKlass org/codehaus/groovy/runtime/m12n/ExtensionModule +instanceKlass org/codehaus/groovy/runtime/m12n/PropertiesModuleFactory +instanceKlass org/codehaus/groovy/util/URLStreams +instanceKlass org/codehaus/groovy/runtime/metaclass/MetaClassRegistryImpl$DefaultModuleListener +instanceKlass org/codehaus/groovy/runtime/m12n/ExtensionModuleScanner +instanceKlass java/util/ResourceBundle$CacheKey +instanceKlass java/time/ZoneId +instanceKlass org/codehaus/groovy/runtime/DefaultGroovyStaticMethods +instanceKlass org/codehaus/groovy/runtime/metaclass/MetaClassRegistryImpl$$Lambda$344 +instanceKlass org/codehaus/groovy/runtime/RangeInfo +instanceKlass java/util/function/ToDoubleFunction +instanceKlass java/util/function/ToLongFunction +instanceKlass java/util/function/ToIntFunction +instanceKlass java/util/function/DoubleFunction +instanceKlass java/util/function/LongFunction +instanceKlass java/util/stream/DoubleStream +instanceKlass java/util/stream/LongStream +instanceKlass java/util/function/DoublePredicate +instanceKlass java/util/function/LongPredicate +instanceKlass java/util/function/IntPredicate +instanceKlass java/util/OptionalInt +instanceKlass java/util/OptionalLong +instanceKlass java/util/OptionalDouble +instanceKlass org/codehaus/groovy/runtime/metaclass/MetaClassRegistryImpl$$Lambda$343 +instanceKlass org/codehaus/groovy/runtime/NumberAwareComparator +instanceKlass org/codehaus/groovy/runtime/EncodingGroovyMethods +instanceKlass java/lang/ProcessHandle +instanceKlass java/util/concurrent/CompletableFuture +instanceKlass java/util/concurrent/CompletionStage +instanceKlass java/lang/ProcessHandle$Info +instanceKlass org/codehaus/groovy/reflection/CachedClass$CachedMethodComparatorByName +instanceKlass org/codehaus/groovy/reflection/CachedMethod$MyComparator +instanceKlass java/lang/SecurityManager$$Lambda$342 +instanceKlass java/lang/SecurityManager$$Lambda$341 +instanceKlass java/lang/SecurityManager$$Lambda$340 +instanceKlass java/lang/SecurityManager$$Lambda$339 +instanceKlass java/lang/SecurityManager$$Lambda$338 +instanceKlass java/lang/SecurityManager$$Lambda$337 +instanceKlass java/lang/SecurityManager$$Lambda$336 +instanceKlass java/lang/SecurityManager$$Lambda$335 +instanceKlass java/lang/SecurityManager$$Lambda$334 +instanceKlass java/lang/SecurityManager$$Lambda$333 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass java/lang/SecurityManager$$Lambda$332 +instanceKlass org/codehaus/groovy/vmplugin/v9/Java9$$Lambda$331 +instanceKlass org/codehaus/groovy/vmplugin/v9/Java9$$Lambda$330 +instanceKlass org/codehaus/groovy/vmplugin/v9/Java9$$Lambda$329 +instanceKlass org/codehaus/groovy/vmplugin/v9/Java9$$Lambda$328 +instanceKlass org/codehaus/groovy/vmplugin/v9/Java9$$Lambda$327 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/codehaus/groovy/vmplugin/v9/Java9$$Lambda$326 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/codehaus/groovy/vmplugin/v9/Java9$$Lambda$325 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/codehaus/groovy/vmplugin/v9/Java9$$Lambda$324 +instanceKlass java/util/Spliterators$IteratorSpliterator +instanceKlass jdk/internal/module/SystemModules$all +instanceKlass sun/nio/fs/ExtendedFileSystemProvider +instanceKlass org/codehaus/groovy/runtime/DefaultGroovyMethodsSupport +instanceKlass org/codehaus/groovy/ast/Variable +instanceKlass groovyjarjarasm/asm/Opcodes +instanceKlass org/codehaus/groovy/vmplugin/v8/Java8 +instanceKlass org/codehaus/groovy/vmplugin/VMPluginFactory$$Lambda$323 +instanceKlass org/codehaus/groovy/vmplugin/VMPlugin +instanceKlass org/codehaus/groovy/vmplugin/VMPluginFactory +instanceKlass org/codehaus/groovy/reflection/ReflectionUtils +instanceKlass org/codehaus/groovy/reflection/CachedClass$3$$Lambda$322 +instanceKlass org/codehaus/groovy/reflection/CachedClass$3$$Lambda$321 +instanceKlass org/codehaus/groovy/reflection/CachedClass$3$$Lambda$320 +instanceKlass org/codehaus/groovy/reflection/CachedClass$3$$Lambda$319 +instanceKlass org/codehaus/groovy/runtime/memoize/MemoizeCache +instanceKlass org/codehaus/groovy/reflection/CachedClass$3$$Lambda$318 +instanceKlass org/codehaus/groovy/reflection/stdclasses/CachedSAMClass$$Lambda$317 +instanceKlass org/codehaus/groovy/reflection/stdclasses/CachedSAMClass$$Lambda$316 +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass org/codehaus/groovy/reflection/stdclasses/InjectedInvoker +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/MethodHandleImpl$BindCaller +instanceKlass org/codehaus/groovy/runtime/metaclass/MetaClassRegistryImpl$$Lambda$315 +instanceKlass org/codehaus/groovy/transform/trait/Traits$Implemented +instanceKlass org/codehaus/groovy/util/ReferenceType$HardRef +instanceKlass org/codehaus/groovy/util/ManagedReference +instanceKlass org/codehaus/groovy/reflection/ClassInfo$GlobalClassSet +instanceKlass org/apache/groovy/util/SystemUtil +instanceKlass org/codehaus/groovy/reflection/GroovyClassValue +instanceKlass org/codehaus/groovy/reflection/GroovyClassValueFactory +instanceKlass org/codehaus/groovy/reflection/ClassInfo$1 +instanceKlass org/codehaus/groovy/reflection/CachedClass +instanceKlass org/codehaus/groovy/reflection/GroovyClassValue$ComputeValue +instanceKlass org/codehaus/groovy/util/ComplexKeyHashMap$Entry +instanceKlass org/codehaus/groovy/util/ComplexKeyHashMap$EntryIterator +instanceKlass org/codehaus/groovy/util/ComplexKeyHashMap +instanceKlass org/codehaus/groovy/reflection/ReflectionCache +instanceKlass java/lang/Process +instanceKlass java/util/Timer +instanceKlass java/util/TimerTask +instanceKlass groovy/lang/groovydoc/Groovydoc +instanceKlass groovy/lang/ListWithDefault +instanceKlass groovy/lang/Range +instanceKlass groovy/util/BufferedIterator +instanceKlass java/util/BitSet +instanceKlass org/codehaus/groovy/reflection/GeneratedMetaMethod$DgmMethodRecord +instanceKlass groovy/lang/MetaClassRegistry$MetaClassCreationHandle +instanceKlass org/codehaus/groovy/runtime/m12n/ExtensionModuleRegistry +instanceKlass org/codehaus/groovy/util/Reference +instanceKlass org/codehaus/groovy/util/ReferenceManager +instanceKlass org/codehaus/groovy/util/ReferenceBundle +instanceKlass org/codehaus/groovy/util/ManagedConcurrentLinkedQueue +instanceKlass org/codehaus/groovy/util/FastArray +instanceKlass groovy/lang/MetaClassRegistryChangeEventListener +instanceKlass java/util/EventListener +instanceKlass org/codehaus/groovy/reflection/ParameterTypes +instanceKlass org/codehaus/groovy/runtime/m12n/ExtensionModuleScanner$ExtensionModuleListener +instanceKlass org/codehaus/groovy/runtime/metaclass/MetaClassRegistryImpl +instanceKlass org/codehaus/groovy/runtime/InvokerHelper +instanceKlass org/gradle/internal/classpath/Instrumented$1 +instanceKlass java/util/stream/Sink$ChainedInt +instanceKlass java/util/stream/Sink$OfInt +instanceKlass java/util/function/IntConsumer +instanceKlass java/util/stream/Nodes$ArrayNode +instanceKlass org/codehaus/groovy/runtime/callsite/CallSiteArray$$Lambda$314 +instanceKlass org/codehaus/groovy/runtime/callsite/CallSiteArray$$Lambda$313 +instanceKlass org/codehaus/groovy/runtime/callsite/AbstractCallSite +instanceKlass java/util/stream/Streams$RangeIntSpliterator +instanceKlass java/util/stream/IntStream +instanceKlass org/gradle/internal/instantiation/generator/AsmBackedClassGenerator$NoOpBuilder +instanceKlass groovy/transform/Internal +instanceKlass java/beans/Transient +instanceKlass org/gradle/process/ExecResult +instanceKlass org/gradle/api/resources/ResourceHandler +instanceKlass org/codehaus/groovy/reflection/ClassInfo +instanceKlass org/codehaus/groovy/util/Finalizable +instanceKlass org/codehaus/groovy/runtime/callsite/CallSite +instanceKlass com/google/common/collect/MapMakerInternalMap$AbstractStrongKeyEntry +instanceKlass com/google/common/collect/MapMakerInternalMap$WeakValueEntry +instanceKlass com/google/common/collect/Count +instanceKlass org/gradle/api/internal/initialization/loadercache/DefaultClassLoaderCache$CachedClassLoader +instanceKlass org/gradle/api/internal/initialization/loadercache/DefaultClassLoaderCache$$Lambda$312 +instanceKlass org/gradle/groovy/scripts/internal/DefaultScriptCompilationHandler$ClassesDirCompiledScript$$Lambda$311 +instanceKlass org/gradle/configuration/DefaultScriptPluginFactory$ScriptPluginImpl$$Lambda$310 +instanceKlass org/gradle/groovy/scripts/internal/BuildScriptData +instanceKlass org/gradle/internal/snapshot/AbstractIncompleteFileSystemNode$2$$Lambda$309 +instanceKlass org/gradle/internal/snapshot/AbstractIncompleteFileSystemNode$$Lambda$308 +instanceKlass org/gradle/internal/snapshot/AbstractIncompleteFileSystemNode$2$$Lambda$307 +instanceKlass org/gradle/internal/snapshot/PathUtil$1 +instanceKlass org/gradle/internal/snapshot/AbstractStorePathRelationshipHandler +instanceKlass org/gradle/internal/snapshot/AbstractIncompleteFileSystemNode$2 +instanceKlass org/gradle/internal/snapshot/AbstractListChildMap +instanceKlass org/gradle/api/internal/changedetection/state/CachingFileHasher$FileInfo +instanceKlass org/gradle/cache/internal/DefaultMultiProcessSafePersistentIndexedCache$$Lambda$306 +instanceKlass org/gradle/cache/internal/CacheAccessWorker$1 +instanceKlass org/gradle/cache/internal/AsyncCacheAccessDecoratedCache$$Lambda$305 +instanceKlass org/gradle/cache/internal/InMemoryDecoratedCache$$Lambda$304 +instanceKlass org/gradle/cache/internal/CrossProcessSynchronizingCache$$Lambda$303 +instanceKlass org/gradle/internal/snapshot/SnapshotUtil$1 +instanceKlass org/gradle/cache/internal/btree/BTreePersistentIndexedCache$DataBlockUpdateResult +instanceKlass org/gradle/internal/snapshot/AbstractIncompleteFileSystemNode$$Lambda$302 +instanceKlass org/gradle/internal/io/StreamByteBuffer$StreamByteBufferChunk +instanceKlass org/gradle/internal/io/StreamByteBuffer +instanceKlass org/gradle/cache/internal/btree/BTreePersistentIndexedCache$Lookup +instanceKlass org/gradle/cache/internal/btree/BTreePersistentIndexedCache$IndexEntry +instanceKlass org/gradle/cache/internal/DefaultMultiProcessSafePersistentIndexedCache$$Lambda$301 +instanceKlass org/gradle/api/internal/initialization/ClassLoaderScopeIdentifier$Id +instanceKlass org/gradle/cache/internal/btree/BTreePersistentIndexedCache$IndexRoot +instanceKlass org/gradle/model/dsl/internal/transform/ClosureCreationInterceptingVerifier +instanceKlass org/gradle/groovy/scripts/internal/FactoryBackedCompileOperation +instanceKlass com/google/common/primitives/Longs +instanceKlass org/gradle/groovy/scripts/internal/BuildScriptTransformer$1 +instanceKlass org/gradle/groovy/scripts/internal/BuildScriptTransformer +instanceKlass org/gradle/api/internal/collections/IterationOrderRetainingSetElementSource$1 +instanceKlass org/gradle/cache/internal/btree/FreeListBlockStore$FreeListEntry +instanceKlass org/gradle/cache/internal/btree/BlockPointer +instanceKlass org/gradle/api/internal/plugins/DefaultPluginManager$3 +instanceKlass org/gradle/cache/internal/btree/ByteInput +instanceKlass org/gradle/cache/internal/btree/ByteOutput +instanceKlass org/gradle/cache/internal/btree/FreeListBlockStore$2 +instanceKlass org/gradle/cache/internal/btree/FreeListBlockStore$1 +instanceKlass org/gradle/cache/internal/btree/BTreePersistentIndexedCache$2 +instanceKlass org/gradle/cache/internal/btree/BTreePersistentIndexedCache$1 +instanceKlass org/gradle/api/plugins/AppliedPlugin +instanceKlass org/gradle/cache/internal/btree/FreeListBlockStore +instanceKlass org/gradle/cache/internal/btree/StateCheckBlockStore +instanceKlass org/gradle/api/internal/plugins/ApplyPluginBuildOperationType$Result +instanceKlass org/gradle/api/internal/plugins/DefaultPluginManager +instanceKlass org/gradle/cache/internal/btree/Block +instanceKlass org/gradle/api/internal/plugins/ImperativeOnlyPluginTarget +instanceKlass org/gradle/api/internal/plugins/PluginTarget +instanceKlass org/gradle/cache/internal/btree/FileBackedBlockStore +instanceKlass org/gradle/cache/internal/btree/CachingBlockStore +instanceKlass org/gradle/groovy/scripts/internal/DefaultScriptRunnerFactory$ScriptRunnerImpl +instanceKlass org/gradle/groovy/scripts/internal/CrossBuildInMemoryCachingScriptClassCache$CachedCompiledScript +instanceKlass org/gradle/cache/internal/btree/KeyHasher +instanceKlass org/gradle/cache/internal/btree/BlockStore$Factory +instanceKlass org/gradle/internal/classloader/ImplementationHashAware +instanceKlass org/gradle/groovy/scripts/internal/DefaultScriptCompilationHandler$ClassesDirCompiledScript +instanceKlass org/gradle/cache/internal/btree/BlockPayload +instanceKlass org/gradle/cache/internal/btree/BlockStore +instanceKlass org/gradle/cache/internal/DefaultMultiProcessSafePersistentIndexedCache$$Lambda$300 +instanceKlass org/gradle/cache/internal/CacheAccessWorker$2 +instanceKlass org/gradle/cache/internal/CacheAccessWorker$FlushOperationsCommand +instanceKlass org/gradle/cache/internal/CacheAccessWorker$ShutdownOperationsCommand +instanceKlass org/gradle/internal/classpath/DefaultCachedClasspathTransformer$$Lambda$299 +instanceKlass org/gradle/cache/internal/AsyncCacheAccessDecoratedCache$$Lambda$298 +instanceKlass sun/nio/fs/WindowsPath$1 +instanceKlass org/gradle/internal/classpath/DefaultCachedClasspathTransformer$$Lambda$297 +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/internal/classpath/DefaultCachedClasspathTransformer$$Lambda$296 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/internal/classpath/DefaultCachedClasspathTransformer$$Lambda$295 +instanceKlass org/gradle/internal/classpath/DefaultCachedClasspathTransformer$$Lambda$294 +instanceKlass org/gradle/internal/classpath/DefaultCachedClasspathTransformer$$Lambda$293 +instanceKlass org/gradle/internal/Either +instanceKlass org/gradle/internal/classpath/DefaultCachedClasspathTransformer$$Lambda$292 +instanceKlass org/gradle/internal/snapshot/ReadOnlyFileSystemNode$1 +instanceKlass org/gradle/internal/snapshot/ChildMap$Entry$$Lambda$291 +instanceKlass org/gradle/internal/snapshot/SnapshotUtil$2 +instanceKlass org/gradle/internal/snapshot/SnapshotUtil +instanceKlass org/gradle/internal/watch/registry/impl/HierarchicalFileWatcherUpdater$$Lambda$290 +instanceKlass org/gradle/internal/watch/vfs/impl/WatchingVirtualFileSystem$$Lambda$289 +instanceKlass org/gradle/internal/snapshot/SnapshotHierarchy$SnapshotDiffListener +instanceKlass org/gradle/internal/watch/vfs/impl/WatchingVirtualFileSystem$$Lambda$288 +instanceKlass org/gradle/internal/watch/vfs/impl/WatchingVirtualFileSystem$$Lambda$287 +instanceKlass org/gradle/internal/watch/registry/impl/SnapshotCollectingDiffListener$$Lambda$286 +instanceKlass org/gradle/internal/snapshot/AbstractIncompleteFileSystemNode$$Lambda$285 +instanceKlass org/gradle/internal/snapshot/AbstractIncompleteFileSystemNode$$Lambda$284 +instanceKlass org/gradle/internal/snapshot/AbstractIncompleteFileSystemNode +instanceKlass org/gradle/internal/snapshot/ChildMap$Entry$PathRelationshipHandler +instanceKlass org/gradle/internal/snapshot/SingletonChildMap +instanceKlass org/gradle/internal/snapshot/PathUtil$$Lambda$283 +instanceKlass org/gradle/internal/snapshot/PathUtil$$Lambda$282 +instanceKlass org/gradle/internal/snapshot/VfsRelativePath +instanceKlass org/gradle/internal/watch/registry/impl/SnapshotCollectingDiffListener +instanceKlass org/gradle/internal/vfs/impl/AbstractVirtualFileSystem$$Lambda$281 +instanceKlass org/gradle/internal/vfs/impl/AbstractVirtualFileSystem$UpdateFunction +instanceKlass org/gradle/internal/vfs/impl/AbstractVirtualFileSystem$$Lambda$280 +instanceKlass org/gradle/internal/snapshot/ChildMapFactory +instanceKlass org/gradle/internal/snapshot/DirectorySnapshot$$Lambda$279 +instanceKlass org/gradle/internal/snapshot/ChildMap$Entry +instanceKlass org/gradle/internal/snapshot/ChildMap$InvalidationHandler +instanceKlass java/util/Comparator$$Lambda$278 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/internal/snapshot/FileSystemLocationSnapshot$$Lambda$277 +instanceKlass org/gradle/internal/snapshot/PathUtil +instanceKlass org/gradle/internal/snapshot/FileSystemLocationSnapshot$$Lambda$276 +instanceKlass org/gradle/internal/snapshot/MerkleDirectorySnapshotBuilder$Directory +instanceKlass java/nio/file/Files$3 +instanceKlass java/nio/file/FileTreeWalker$Event +instanceKlass java/nio/file/FileTreeWalker$DirectoryNode +instanceKlass java/nio/file/FileTreeWalker +instanceKlass org/gradle/internal/snapshot/MerkleDirectorySnapshotBuilder +instanceKlass org/gradle/internal/snapshot/RelativePathTracker +instanceKlass org/gradle/internal/RelativePathSupplier +instanceKlass org/gradle/internal/snapshot/impl/DirectorySnapshotterStatistics$CollectingFileVisitor +instanceKlass org/gradle/internal/vfs/impl/DefaultFileSystemAccess$1 +instanceKlass org/gradle/internal/file/impl/DefaultFileMetadata$1 +instanceKlass org/gradle/internal/file/impl/DefaultFileMetadata +instanceKlass org/gradle/internal/file/FileMetadata +instanceKlass org/gradle/internal/nativeintegration/filesystem/services/NativePlatformBackedFileMetadataAccessor$1 +instanceKlass net/rubygrapefruit/platform/internal/WindowsFileTime +instanceKlass net/rubygrapefruit/platform/internal/jni/WindowsFileFunctions +instanceKlass net/rubygrapefruit/platform/internal/WindowsFileStat +instanceKlass org/gradle/internal/snapshot/SnapshottingFilter$1 +instanceKlass org/gradle/internal/snapshot/SnapshottingFilter +instanceKlass org/gradle/internal/vfs/impl/DefaultFileSystemAccess$$Lambda$275 +instanceKlass org/gradle/internal/vfs/impl/DefaultFileSystemAccess$$Lambda$274 +instanceKlass org/gradle/internal/snapshot/SnapshotHierarchy$$Lambda$273 +instanceKlass org/gradle/internal/snapshot/SnapshotHierarchy$$Lambda$272 +instanceKlass org/gradle/internal/vfs/impl/DefaultFileSystemAccess$$Lambda$271 +instanceKlass org/gradle/internal/classpath/DefaultCachedClasspathTransformer$$Lambda$270 +instanceKlass org/gradle/internal/classpath/DefaultCachedClasspathTransformer$$Lambda$269 +instanceKlass org/gradle/internal/classpath/DefaultCachedClasspathTransformer$$Lambda$268 +instanceKlass org/gradle/internal/classpath/DefaultCachedClasspathTransformer$ValueOrTransformProvider +instanceKlass org/gradle/internal/classpath/InstrumentingClasspathFileTransformer +instanceKlass org/codehaus/groovy/runtime/callsite/CallSiteArray +instanceKlass java/lang/invoke/SerializedLambda +instanceKlass org/gradle/internal/classpath/Instrumented +instanceKlass org/gradle/internal/classpath/InstrumentingTransformer +instanceKlass org/gradle/internal/classpath/CompositeTransformer +instanceKlass org/gradle/groovy/scripts/internal/FileCacheBackedScriptClassCompiler$1 +instanceKlass org/gradle/cache/internal/DefaultPersistentDirectoryCache$Initializer +instanceKlass org/gradle/groovy/scripts/internal/FileCacheBackedScriptClassCompiler$CompileToCrossBuildCacheAction +instanceKlass org/gradle/groovy/scripts/internal/FileCacheBackedScriptClassCompiler$ProgressReportingInitializer +instanceKlass com/google/common/io/ByteArrayDataInput +instanceKlass com/google/common/io/ByteArrayDataOutput +instanceKlass com/google/common/io/ByteStreams +instanceKlass java/math/MutableBigInteger +instanceKlass org/gradle/groovy/scripts/internal/ScriptCacheKey +instanceKlass org/gradle/internal/scripts/GradleScript +instanceKlass org/gradle/api/Script +instanceKlass org/gradle/groovy/scripts/internal/NoDataCompileOperation +instanceKlass com/google/common/collect/MapMakerInternalMap$StrongValueEntry +instanceKlass org/codehaus/groovy/control/CompilationUnit$SourceUnitOperation +instanceKlass org/codehaus/groovy/control/CompilationUnit$ISourceUnitOperation +instanceKlass org/codehaus/groovy/control/CompilationUnit$PhaseOperation +instanceKlass org/gradle/groovy/scripts/internal/Permits +instanceKlass org/codehaus/groovy/ast/GroovyCodeVisitor +instanceKlass org/gradle/plugin/use/internal/PluginUseScriptBlockMetadataCompiler +instanceKlass org/codehaus/groovy/ast/ASTNode +instanceKlass org/codehaus/groovy/ast/NodeMetaDataHandler +instanceKlass groovy/lang/groovydoc/GroovydocHolder +instanceKlass org/gradle/groovy/scripts/internal/InitialPassStatementTransformer +instanceKlass org/gradle/internal/resource/CachingTextResource +instanceKlass org/gradle/groovy/scripts/DelegatingScriptSource +instanceKlass org/gradle/groovy/scripts/DefaultScriptCompilerFactory$ScriptCompilerImpl +instanceKlass org/gradle/configuration/DefaultScriptTarget +instanceKlass org/gradle/tooling/internal/provider/runner/PluginApplicationTracker$$Lambda$267 +instanceKlass org/gradle/util/internal/TextUtil$1 +instanceKlass java/util/regex/CharPredicates$$Lambda$266 +instanceKlass java/util/regex/CharPredicates$$Lambda$265 +instanceKlass org/gradle/util/internal/TextUtil +instanceKlass org/gradle/configuration/BuildOperationScriptPlugin$OperationDetails +instanceKlass org/gradle/configuration/BuildOperationScriptPlugin$1 +instanceKlass org/gradle/configuration/internal/DefaultUserCodeApplicationContext$CurrentApplication +instanceKlass org/gradle/configuration/internal/UserCodeApplicationContext$Application +instanceKlass org/gradle/configuration/BuildOperationScriptPlugin$$Lambda$264 +instanceKlass org/gradle/configuration/internal/UserCodeApplicationId +instanceKlass org/gradle/configuration/BuildOperationScriptPlugin$2 +instanceKlass org/gradle/configuration/ApplyScriptPluginBuildOperationType$Result +instanceKlass org/gradle/configuration/BuildOperationScriptPlugin +instanceKlass org/gradle/configuration/ScriptTarget +instanceKlass org/gradle/configuration/DefaultScriptPluginFactory$ScriptPluginImpl +instanceKlass org/gradle/normalization/InputNormalizationHandler +instanceKlass org/gradle/api/ProjectState +instanceKlass org/gradle/api/attributes/DocsType +instanceKlass org/gradle/api/internal/artifacts/JavaEcosystemAttributesDescriber +instanceKlass org/gradle/api/internal/artifacts/JavaEcosystemSupport$TargetJvmEnvironmentDisambiguationRules +instanceKlass org/gradle/api/internal/artifacts/JavaEcosystemSupport$TargetJvmEnvironmentCompatibilityRules +instanceKlass org/gradle/api/attributes/java/TargetJvmEnvironment +instanceKlass org/gradle/api/internal/attributes/DefaultOrderedDisambiguationRule +instanceKlass org/gradle/api/internal/attributes/DefaultOrderedCompatibilityRule +instanceKlass org/gradle/api/internal/attributes/AttributeMatchingRules +instanceKlass org/gradle/api/attributes/java/TargetJvmVersion +instanceKlass org/gradle/api/internal/artifacts/JavaEcosystemSupport$BundlingDisambiguationRules +instanceKlass org/gradle/api/internal/artifacts/JavaEcosystemSupport$BundlingCompatibilityRules +instanceKlass org/gradle/api/attributes/Bundling +instanceKlass org/gradle/api/internal/artifacts/JavaEcosystemSupport$$Lambda$263 +instanceKlass org/gradle/api/internal/artifacts/JavaEcosystemSupport$LibraryElementsDisambiguationRules +instanceKlass org/gradle/api/internal/artifacts/JavaEcosystemSupport$LibraryElementsCompatibilityRules +instanceKlass org/gradle/api/internal/artifacts/JavaEcosystemSupport$1 +instanceKlass org/gradle/api/internal/artifacts/JavaEcosystemSupport$UsageDisambiguationRules +instanceKlass org/gradle/api/internal/artifacts/JavaEcosystemSupport$UsageCompatibilityRules +instanceKlass org/gradle/api/internal/artifacts/JavaEcosystemSupport +instanceKlass org/gradle/internal/locking/DefaultDependencyLockingHandler$$Lambda$262 +instanceKlass org/gradle/internal/locking/DefaultDependencyLockingHandler$$Lambda$261 +instanceKlass org/gradle/api/internal/artifacts/DefaultDependencyManagementServices$DependencyResolutionScopeServices$$Lambda$260 +instanceKlass org/gradle/internal/locking/DefaultDependencyLockingHandler +instanceKlass org/gradle/api/internal/artifacts/ivyservice/moduleconverter/DefaultRootComponentMetadataBuilder$MetadataHolder +instanceKlass org/gradle/internal/component/local/model/DefaultLocalComponentMetadata +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfigurationContainer$$Lambda$259 +instanceKlass org/gradle/api/artifacts/Configuration$Namer +instanceKlass org/gradle/api/internal/artifacts/configurations/MutationValidator +instanceKlass org/gradle/api/internal/artifacts/configurations/ConfigurationInternal +instanceKlass org/gradle/internal/deprecation/DeprecatableConfiguration +instanceKlass org/gradle/api/internal/artifacts/configurations/ConfigurationsProvider +instanceKlass org/gradle/api/internal/file/copy/CopySpecSource +instanceKlass org/gradle/api/file/CopySpec +instanceKlass org/gradle/api/file/CopyProcessingSpec +instanceKlass org/gradle/api/file/ContentFilterable +instanceKlass org/gradle/api/file/CopySourceSpec +instanceKlass org/gradle/api/artifacts/ConfigurablePublishArtifact +instanceKlass org/gradle/api/internal/attributes/AttributeDesugaring +instanceKlass org/gradle/api/internal/artifacts/transform/ConsumerProvidedVariantFinder +instanceKlass org/gradle/api/internal/artifacts/transform/VariantSelector +instanceKlass org/gradle/api/internal/artifacts/transform/DefaultArtifactTransforms +instanceKlass org/gradle/api/internal/artifacts/ivyservice/DefaultConfigurationResolver$$Lambda$258 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/DependencyArtifactsVisitor +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/oldresult/ResolvedConfigurationBuilder +instanceKlass org/gradle/api/internal/artifacts/ivyservice/DefaultConfigurationResolver +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/projectresult/ResolvedLocalComponentsResult +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ShortCircuitEmptyConfigurationResolver +instanceKlass org/gradle/api/artifacts/result/ResolutionResult +instanceKlass org/gradle/api/internal/artifacts/ResolveContext +instanceKlass org/gradle/api/artifacts/ResolvedConfiguration +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/VisitedArtifactSet +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ErrorHandlingConfigurationResolver +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/ResolvedArtifactSet$TransformSourceVisitor +instanceKlass org/gradle/api/internal/artifacts/transform/DefaultTransformationNodeFactory +instanceKlass org/gradle/api/internal/artifacts/transform/DefaultTransformedVariantFactory$$Lambda$257 +instanceKlass org/gradle/api/internal/artifacts/transform/TransformedProjectArtifactSet +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/ResolvedArtifactSet$Artifacts +instanceKlass org/gradle/api/internal/artifacts/transform/DefaultTransformedVariantFactory$$Lambda$256 +instanceKlass org/gradle/api/internal/artifacts/transform/DefaultTransformedVariantFactory$Factory +instanceKlass org/gradle/api/internal/artifacts/transform/AbstractTransformedArtifactSet +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/ResolvedArtifactSet +instanceKlass org/gradle/api/internal/artifacts/transform/ExtraExecutionGraphDependenciesResolverFactory +instanceKlass org/gradle/api/internal/artifacts/transform/VariantDefinition +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/ResolvedVariant +instanceKlass org/gradle/api/internal/artifacts/type/DefaultArtifactTypeRegistry +instanceKlass org/gradle/api/artifacts/transform/TransformParameters$None +instanceKlass org/gradle/api/artifacts/transform/TransformParameters +instanceKlass org/gradle/api/artifacts/transform/TransformAction +instanceKlass org/gradle/api/artifacts/transform/TransformSpec +instanceKlass org/gradle/api/artifacts/transform/VariantTransform +instanceKlass org/gradle/api/internal/artifacts/transform/DefaultVariantTransformRegistry$RecordingRegistration +instanceKlass org/gradle/api/internal/artifacts/transform/DefaultVariantTransformRegistry +instanceKlass org/gradle/api/internal/artifacts/ArtifactTransformRegistration +instanceKlass org/gradle/api/internal/artifacts/transform/Transformer +instanceKlass org/gradle/api/internal/tasks/properties/PropertyVisitor +instanceKlass org/gradle/api/internal/artifacts/transform/DefaultTransformationRegistrationFactory +instanceKlass sun/reflect/annotation/AnnotationParser$$Lambda$255 +instanceKlass org/gradle/api/reflect/InjectionPointQualifier +instanceKlass org/gradle/api/internal/tasks/properties/AbstractPropertyNode +instanceKlass org/gradle/api/internal/tasks/properties/bean/RuntimeBeanNodeFactory +instanceKlass org/gradle/api/internal/tasks/properties/DefaultPropertyWalker +instanceKlass org/gradle/api/internal/tasks/properties/DefaultTypeMetadataStore$$Lambda$254 +instanceKlass org/gradle/api/internal/tasks/properties/DefaultTypeMetadataStore$$Lambda$253 +instanceKlass org/gradle/api/internal/tasks/properties/TypeMetadata +instanceKlass org/gradle/internal/reflect/PropertyMetadata +instanceKlass org/gradle/api/internal/tasks/properties/DefaultTypeMetadataStore +instanceKlass org/gradle/api/internal/tasks/properties/TypeMetadataStore +instanceKlass org/gradle/api/internal/tasks/properties/InspectionSchemeFactory$InspectionSchemeImpl +instanceKlass org/gradle/api/internal/tasks/properties/InspectionScheme +instanceKlass org/apache/commons/lang/builder/HashCodeBuilder +instanceKlass com/google/common/base/Equivalence$Wrapper +instanceKlass org/gradle/internal/reflect/Methods +instanceKlass org/gradle/internal/reflect/annotations/impl/DefaultTypeAnnotationMetadataStore$$Lambda$252 +instanceKlass org/gradle/internal/service/scopes/ExecutionGlobalServices$$Lambda$251 +instanceKlass org/gradle/internal/scripts/ScriptOrigin +instanceKlass org/gradle/api/internal/PolymorphicDomainObjectContainerInternal +instanceKlass org/gradle/api/ExtensiblePolymorphicDomainObjectContainer +instanceKlass org/gradle/api/internal/rules/NamedDomainObjectFactoryRegistry +instanceKlass org/gradle/util/internal/ConfigureUtil$WrappedConfigureAction +instanceKlass org/gradle/util/internal/ClosureBackedAction +instanceKlass org/gradle/internal/reflect/AnnotationCategory$1 +instanceKlass org/gradle/work/NormalizeLineEndings +instanceKlass org/gradle/api/tasks/IgnoreEmptyDirectories +instanceKlass org/gradle/api/tasks/Optional +instanceKlass org/gradle/api/tasks/PathSensitive +instanceKlass org/gradle/api/tasks/CompileClasspath +instanceKlass org/gradle/api/tasks/Classpath +instanceKlass org/gradle/api/tasks/SkipWhenEmpty +instanceKlass org/gradle/work/Incremental +instanceKlass org/gradle/api/tasks/UntrackedTask +instanceKlass org/gradle/work/DisableCachingByDefault +instanceKlass org/gradle/api/artifacts/transform/CacheableTransform +instanceKlass org/gradle/api/tasks/CacheableTask +instanceKlass org/gradle/internal/reflect/annotations/impl/DefaultTypeAnnotationMetadataStore$1 +instanceKlass org/gradle/internal/reflect/validation/TypeValidationContext +instanceKlass org/gradle/internal/reflect/annotations/TypeAnnotationMetadata +instanceKlass org/gradle/internal/reflect/annotations/impl/DefaultTypeAnnotationMetadataStore +instanceKlass org/gradle/internal/service/scopes/ExecutionGlobalServices$$Lambda$250 +instanceKlass org/gradle/api/internal/AbstractTask +instanceKlass org/gradle/api/internal/TaskInternal +instanceKlass org/gradle/internal/service/scopes/ExecutionGlobalServices$$Lambda$249 +instanceKlass org/gradle/internal/execution/caching/CachingDisabledReason +instanceKlass org/gradle/internal/execution/DeferredExecutionHandler +instanceKlass org/gradle/internal/execution/UnitOfWork +instanceKlass org/gradle/api/internal/artifacts/transform/DefaultTransformerInvocationFactory +instanceKlass org/gradle/api/internal/artifacts/DefaultDependencyManagementServices$ArtifactTransformResolutionGradleUserHomeServices$1 +instanceKlass org/gradle/internal/execution/workspace/impl/DefaultImmutableWorkspaceProvider$$Lambda$248 +instanceKlass org/gradle/internal/execution/workspace/impl/DefaultImmutableWorkspaceProvider +instanceKlass org/gradle/cache/ManualEvictionInMemoryCache +instanceKlass org/gradle/cache/internal/DefaultCrossBuildInMemoryCacheFactory$CrossBuildCacheRetainingDataFromPreviousBuild +instanceKlass org/gradle/api/internal/artifacts/DependencyManagementGradleUserHomeScopeServices$$Lambda$247 +instanceKlass org/gradle/internal/Try +instanceKlass org/gradle/internal/snapshot/impl/ImplementationSnapshotSerializer +instanceKlass org/gradle/internal/execution/history/impl/FileSystemSnapshotSerializer +instanceKlass org/gradle/internal/execution/history/impl/FileCollectionFingerprintSerializer +instanceKlass org/gradle/internal/execution/history/PreviousExecutionState +instanceKlass org/gradle/internal/execution/history/impl/DefaultExecutionHistoryStore +instanceKlass org/gradle/api/internal/changedetection/state/DefaultExecutionHistoryCacheAccess +instanceKlass org/gradle/internal/execution/ExecutionResult +instanceKlass org/gradle/internal/execution/UnitOfWork$ExecutionRequest +instanceKlass org/gradle/internal/execution/steps/ExecuteStep +instanceKlass org/gradle/internal/execution/steps/RemovePreviousOutputsStep +instanceKlass org/gradle/internal/execution/steps/ResolveInputChangesStep +instanceKlass org/gradle/internal/execution/steps/TimeoutStep +instanceKlass org/gradle/internal/execution/steps/CreateOutputsStep +instanceKlass org/gradle/internal/execution/steps/StoreExecutionStateStep +instanceKlass org/gradle/internal/execution/steps/BroadcastChangingOutputsStep +instanceKlass org/gradle/internal/execution/history/AfterExecutionState +instanceKlass org/gradle/internal/execution/history/OutputExecutionState +instanceKlass org/gradle/internal/execution/steps/SkipUpToDateStep +instanceKlass org/gradle/internal/execution/steps/IncrementalChangesContext +instanceKlass org/gradle/internal/execution/steps/CachingContext +instanceKlass org/gradle/internal/execution/steps/ValidationFinishedContext +instanceKlass org/gradle/internal/execution/steps/BeforeExecutionContext +instanceKlass org/gradle/internal/execution/steps/PreviousExecutionContext +instanceKlass org/gradle/internal/execution/steps/WorkspaceContext +instanceKlass org/gradle/internal/execution/history/changes/IncrementalInputProperties +instanceKlass org/gradle/internal/execution/fingerprint/InputFingerprinter$InputVisitor +instanceKlass org/gradle/internal/execution/steps/ResolveChangesStep +instanceKlass org/gradle/internal/execution/steps/CachingResult +instanceKlass org/gradle/internal/execution/ExecutionEngine$Result +instanceKlass org/gradle/internal/execution/steps/UpToDateResult +instanceKlass org/gradle/internal/execution/steps/AfterExecutionResult +instanceKlass org/gradle/api/internal/artifacts/DependencyManagementBuildScopeServices$NoOpCachingStateStep +instanceKlass org/gradle/internal/reflect/validation/ValidationProblemBuilder +instanceKlass org/gradle/internal/execution/steps/ValidateStep +instanceKlass org/gradle/internal/execution/history/BeforeExecutionState +instanceKlass org/gradle/internal/execution/history/InputExecutionState +instanceKlass org/gradle/internal/execution/history/ExecutionState +instanceKlass org/gradle/internal/execution/UnitOfWork$ImplementationVisitor +instanceKlass org/gradle/internal/execution/steps/BuildOperationStep +instanceKlass org/gradle/internal/execution/steps/Result +instanceKlass org/gradle/internal/execution/steps/RemoveUntrackedExecutionStateStep +instanceKlass org/gradle/internal/execution/steps/LoadPreviousExecutionStateStep +instanceKlass org/gradle/internal/execution/steps/AssignWorkspaceStep +instanceKlass org/gradle/internal/execution/steps/IdentityCacheStep +instanceKlass org/gradle/internal/execution/steps/IdentityContext +instanceKlass org/gradle/internal/execution/steps/ExecutionRequestContext +instanceKlass org/gradle/internal/execution/steps/Context +instanceKlass org/gradle/internal/execution/steps/IdentifyStep +instanceKlass org/gradle/internal/execution/ExecutionEngine$Request +instanceKlass org/gradle/internal/execution/impl/DefaultExecutionEngine +instanceKlass org/gradle/internal/id/UniqueId$1 +instanceKlass com/google/common/base/Ascii +instanceKlass com/google/common/io/BaseEncoding$Alphabet +instanceKlass com/google/common/io/BaseEncoding +instanceKlass org/gradle/internal/id/UniqueId +instanceKlass org/gradle/internal/execution/timeout/Timeout +instanceKlass org/gradle/internal/execution/timeout/impl/DefaultTimeoutHandler +instanceKlass org/gradle/internal/execution/history/impl/DefaultOverlappingOutputDetector +instanceKlass org/gradle/internal/execution/UnitOfWork$OutputVisitor +instanceKlass org/gradle/internal/execution/impl/DefaultOutputSnapshotter +instanceKlass org/gradle/internal/execution/fingerprint/impl/DefaultInputFingerprinter +instanceKlass org/gradle/internal/execution/fingerprint/impl/DefaultFileCollectionFingerprinterRegistry$$Lambda$246 +instanceKlass org/gradle/internal/execution/fingerprint/impl/DefaultFileCollectionFingerprinterRegistry +instanceKlass org/gradle/api/internal/changedetection/state/CachingFileSystemLocationSnapshotHasher +instanceKlass org/gradle/api/internal/changedetection/state/LineEndingNormalizingInputStreamHasher +instanceKlass org/gradle/api/tasks/CompileClasspathNormalizer +instanceKlass org/gradle/api/tasks/ClasspathNormalizer +instanceKlass org/gradle/internal/fingerprint/IgnoredPathInputNormalizer +instanceKlass org/gradle/internal/fingerprint/NameOnlyInputNormalizer +instanceKlass org/gradle/internal/fingerprint/RelativePathInputNormalizer +instanceKlass org/gradle/internal/execution/fingerprint/impl/DefaultFileNormalizationSpec +instanceKlass org/gradle/internal/execution/fingerprint/FileNormalizationSpec +instanceKlass org/gradle/internal/fingerprint/AbsolutePathInputNormalizer +instanceKlass org/gradle/api/tasks/FileNormalizer +instanceKlass org/gradle/internal/fingerprint/impl/FileCollectionFingerprinterRegistrations$$Lambda$245 +instanceKlass org/gradle/internal/execution/fingerprint/impl/FingerprinterRegistration +instanceKlass org/gradle/internal/fingerprint/impl/FileCollectionFingerprinterRegistrations$$Lambda$244 +instanceKlass org/gradle/internal/fingerprint/FileSystemLocationFingerprint +instanceKlass org/gradle/internal/fingerprint/impl/AbstractDirectorySensitiveFingerprintingStrategy$$Lambda$243 +instanceKlass org/gradle/internal/fingerprint/DirectorySensitivity$$Lambda$242 +instanceKlass org/gradle/internal/fingerprint/DirectorySensitivity$$Lambda$241 +instanceKlass org/gradle/internal/fingerprint/DirectorySensitivity$$Lambda$240 +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass org/gradle/internal/fingerprint/impl/FileCollectionFingerprinterRegistrations$$Lambda$239 +instanceKlass org/gradle/internal/snapshot/FileSystemLocationSnapshot$FileSystemLocationSnapshotVisitor +instanceKlass org/gradle/internal/fingerprint/impl/FileCollectionFingerprinterRegistrations$1 +instanceKlass org/gradle/api/internal/changedetection/state/LineEndingNormalizingFileSystemLocationSnapshotHasher$1 +instanceKlass org/gradle/api/internal/changedetection/state/LineEndingNormalizingFileSystemLocationSnapshotHasher +instanceKlass org/gradle/internal/fingerprint/hashing/FileSystemLocationSnapshotHasher$1 +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass org/gradle/internal/fingerprint/impl/FileCollectionFingerprinterRegistrations$$Lambda$238 +instanceKlass org/gradle/internal/normalization/java/ApiClassExtractor$$Lambda$237 +instanceKlass org/gradle/internal/normalization/java/ApiMemberWriterFactory +instanceKlass org/gradle/internal/normalization/java/impl/ApiMemberWriter +instanceKlass org/gradle/internal/normalization/java/ApiClassExtractor +instanceKlass org/gradle/api/internal/changedetection/state/AbiExtractingClasspathResourceHasher +instanceKlass org/gradle/internal/fingerprint/classpath/CompileClasspathFingerprinter +instanceKlass org/gradle/internal/fingerprint/hashing/FileSystemLocationSnapshotHasher +instanceKlass org/gradle/api/internal/changedetection/state/SplitResourceSnapshotterCacheService +instanceKlass org/gradle/internal/service/scopes/VirtualFileSystemServices$BuildSessionServices$$Lambda$236 +instanceKlass org/gradle/internal/execution/history/changes/ChangeVisitor +instanceKlass org/gradle/internal/execution/history/changes/InputFileChanges +instanceKlass org/gradle/internal/execution/history/changes/ChangeContainer +instanceKlass org/gradle/internal/execution/history/changes/DefaultExecutionStateChangeDetector +instanceKlass org/gradle/api/internal/artifacts/dsl/dependencies/GradlePluginVariantsSupport$TargetGradleVersionDisambiguationRule +instanceKlass org/gradle/api/internal/attributes/DefaultCompatibilityRuleChain$ExceptionHandler +instanceKlass org/gradle/api/internal/artifacts/dsl/dependencies/GradlePluginVariantsSupport$TargetGradleVersionCompatibilityRule +instanceKlass org/gradle/api/attributes/AttributeCompatibilityRule +instanceKlass org/gradle/api/attributes/plugin/GradlePluginApiVersion +instanceKlass org/gradle/api/internal/artifacts/dsl/dependencies/GradlePluginVariantsSupport +instanceKlass org/gradle/api/internal/attributes/DefaultDisambiguationRuleChain$ExceptionHandler +instanceKlass java/util/concurrent/LinkedBlockingDeque$Node +instanceKlass org/gradle/internal/action/DefaultConfigurableRules +instanceKlass java/lang/management/MemoryUsage +instanceKlass org/gradle/internal/action/ConfigurableRules +instanceKlass org/gradle/launcher/daemon/server/health/gc/GarbageCollectionEvent +instanceKlass org/gradle/api/artifacts/CacheableRule +instanceKlass org/gradle/internal/snapshot/impl/AbstractArraySnapshot +instanceKlass org/gradle/internal/snapshot/impl/AbstractScalarValueSnapshot +instanceKlass org/gradle/api/internal/DefaultActionConfiguration +instanceKlass org/gradle/internal/action/DefaultConfigurableRule +instanceKlass org/gradle/internal/action/InstantiatingAction +instanceKlass org/gradle/api/internal/artifacts/dsl/dependencies/PlatformSupport$$Lambda$235 +instanceKlass org/gradle/api/ActionConfiguration +instanceKlass org/gradle/api/internal/artifacts/dsl/dependencies/PlatformSupport$ComponentCategoryDisambiguationRule +instanceKlass org/gradle/api/internal/ReusableAction +instanceKlass org/gradle/api/attributes/AttributeDisambiguationRule +instanceKlass org/gradle/api/internal/attributes/MultipleCandidatesResult +instanceKlass org/gradle/api/attributes/MultipleCandidatesDetails +instanceKlass org/gradle/api/internal/attributes/DefaultDisambiguationRuleChain +instanceKlass org/gradle/internal/action/InstantiatingAction$ExceptionHandler +instanceKlass org/gradle/api/internal/attributes/DefaultCompatibilityRuleChain +instanceKlass org/gradle/api/attributes/CompatibilityRuleChain +instanceKlass org/gradle/api/attributes/DisambiguationRuleChain +instanceKlass org/gradle/api/internal/attributes/DefaultAttributeMatchingStrategy +instanceKlass org/gradle/api/internal/attributes/CompatibilityCheckResult +instanceKlass org/gradle/api/attributes/CompatibilityCheckDetails +instanceKlass org/gradle/api/internal/attributes/DefaultAttributesSchema$MergedSchema +instanceKlass org/gradle/api/internal/attributes/DefaultAttributesSchema$DefaultAttributeMatcher +instanceKlass org/gradle/api/internal/attributes/AttributeDescriber +instanceKlass org/gradle/api/attributes/AttributeMatchingStrategy +instanceKlass org/gradle/internal/component/model/AttributeSelectionSchema +instanceKlass org/gradle/internal/component/model/AttributeMatcher +instanceKlass org/gradle/internal/component/model/ComponentAttributeMatcher +instanceKlass org/gradle/api/internal/attributes/DefaultAttributesSchema +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/store/StoreSet +instanceKlass org/gradle/api/internal/artifacts/DefaultDependencyManagementServices$DependencyResolutionScopeServices$$Lambda$234 +instanceKlass org/gradle/api/internal/artifacts/DefaultArtifactRepositoryContainer$$Lambda$233 +instanceKlass org/gradle/api/internal/artifacts/DefaultArtifactRepositoryContainer$$Lambda$232 +instanceKlass org/gradle/api/internal/collections/AbstractIterationOrderRetainingElementSource$RealizedElementCollectionIterator +instanceKlass org/gradle/api/internal/collections/ListElementSource$1 +instanceKlass org/gradle/api/internal/collections/AbstractIterationOrderRetainingElementSource +instanceKlass org/gradle/api/internal/artifacts/DefaultArtifactRepositoryContainer$RepositoryNamer +instanceKlass org/gradle/api/artifacts/repositories/RepositoryContentDescriptor +instanceKlass org/gradle/api/artifacts/repositories/InclusiveRepositoryContentDescriptor +instanceKlass org/gradle/api/artifacts/repositories/FlatDirectoryArtifactRepository +instanceKlass org/gradle/api/artifacts/repositories/IvyArtifactRepository +instanceKlass org/gradle/api/artifacts/repositories/MavenArtifactRepository +instanceKlass org/gradle/api/artifacts/repositories/MetadataSupplierAware +instanceKlass org/gradle/api/artifacts/repositories/AuthenticationSupported +instanceKlass org/gradle/api/artifacts/repositories/UrlArtifactRepository +instanceKlass org/gradle/api/internal/collections/IndexedElementSource +instanceKlass org/gradle/api/internal/artifacts/dsl/RepositoryHandlerInternal +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/parser/GradleModuleMetadataParser +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/strategy/MavenVersionSelectorScheme +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/parser/PomParent +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/parser/AbstractModuleDescriptorParser +instanceKlass org/gradle/api/artifacts/repositories/AuthenticationContainer +instanceKlass org/gradle/api/internal/artifacts/repositories/DefaultBaseRepositoryFactory +instanceKlass org/apache/ivy/util/MessageLogger +instanceKlass org/gradle/api/internal/artifacts/ivyservice/DefaultIvyContextManager +instanceKlass org/gradle/internal/resource/local/CompositeLocallyAvailableResourceFinder +instanceKlass org/gradle/internal/resource/local/ivy/PatternBasedLocallyAvailableResourceFinder$1 +instanceKlass org/gradle/util/internal/MavenUtil +instanceKlass org/gradle/api/internal/artifacts/repositories/resolver/AbstractResourcePattern +instanceKlass org/gradle/internal/resource/local/LocallyAvailableResourceFinderSearchableFileStoreAdapter$$Lambda$231 +instanceKlass org/gradle/internal/resource/local/ivy/LocallyAvailableResourceFinderFactory$$Lambda$230 +instanceKlass org/gradle/internal/resource/local/LocallyAvailableResourceCandidates +instanceKlass org/gradle/internal/resource/local/AbstractLocallyAvailableResourceFinder +instanceKlass org/gradle/internal/resource/local/ivy/LocallyAvailableResourceFinderFactory$$Lambda$229 +instanceKlass org/gradle/api/internal/artifacts/repositories/resolver/ResourcePattern +instanceKlass org/gradle/internal/resource/local/ivy/LocallyAvailableResourceFinderFactory +instanceKlass org/gradle/api/internal/artifacts/mvnsettings/DefaultLocalMavenRepositoryLocator$CurrentSystemPropertyAccess +instanceKlass org/gradle/api/internal/artifacts/mvnsettings/DefaultLocalMavenRepositoryLocator$SystemPropertyAccess +instanceKlass org/gradle/api/internal/artifacts/mvnsettings/DefaultLocalMavenRepositoryLocator +instanceKlass org/gradle/api/internal/artifacts/mvnsettings/DefaultMavenFileLocations +instanceKlass org/apache/maven/settings/io/SettingsReader +instanceKlass org/apache/maven/settings/building/SettingsBuildingRequest +instanceKlass org/gradle/api/internal/artifacts/mvnsettings/DefaultMavenSettingsProvider +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/conflicts/ModuleConflictHandler +instanceKlass org/gradle/internal/resolve/resolver/ResolveContextToComponentResolver +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/conflicts/CapabilitiesConflictHandler$Resolver +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/conflicts/CapabilitiesConflictHandler +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/conflicts/ConflictHandler +instanceKlass org/gradle/api/internal/artifacts/ivyservice/dependencysubstitution/DependencySubstitutionApplicator +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/DependencyGraphVisitor +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/DefaultArtifactDependencyResolver +instanceKlass org/gradle/internal/resolve/caching/ComponentMetadataSupplierRuleExecutor$$Lambda$228 +instanceKlass org/gradle/internal/resolve/caching/ComponentMetadataSupplierRuleExecutor$$Lambda$227 +instanceKlass org/gradle/api/internal/artifacts/DependencyManagementBuildScopeServices$1 +instanceKlass org/gradle/api/artifacts/ComponentMetadata +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/excludes/simple/DefaultExcludeNothing +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/excludes/specs/ExcludeNothing +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/excludes/factories/Unions +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/excludes/factories/Intersections +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/excludes/specs/ModuleSetExclude +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/excludes/specs/GroupSetExclude +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/excludes/simple/DefaultExcludeFactory +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/excludes/factories/DelegatingExcludeFactory +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/excludes/factories/CachingExcludeFactory$ConcurrentCache +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/excludes/factories/CachingExcludeFactory$MergeCaches +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/excludes/specs/ExcludeSpec +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/excludes/factories/ExcludeFactory +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ChangingValueDependencyResolutionListener$1 +instanceKlass org/gradle/api/artifacts/component/ModuleComponentSelector +instanceKlass org/gradle/api/internal/artifacts/configurations/dynamicversion/Expiry +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ChangingValueDependencyResolutionListener +instanceKlass org/gradle/api/artifacts/result/ResolvedArtifactResult +instanceKlass org/gradle/api/artifacts/result/ArtifactResult +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ConnectionFailureRepositoryDisabler +instanceKlass org/gradle/api/internal/artifacts/DependencyManagementBuildScopeServices$2 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/verification/DependencyVerificationOverride$$Lambda$226 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/api/internal/artifacts/configurations/ResolutionStrategyInternal +instanceKlass org/gradle/api/artifacts/ResolutionStrategy +instanceKlass org/gradle/api/internal/artifacts/DependencyManagementBuildScopeServices$$Lambda$225 +instanceKlass org/gradle/api/internal/artifacts/verification/signatures/SignatureVerificationService +instanceKlass org/gradle/security/internal/PublicKeyService +instanceKlass org/gradle/api/internal/artifacts/verification/signatures/DefaultSignatureVerificationServiceFactory +instanceKlass org/gradle/api/internal/changedetection/state/SplitFileHasher +instanceKlass org/gradle/api/internal/artifacts/repositories/transport/RepositoryTransport +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolutionstrategy/ExternalResourceCachePolicy +instanceKlass org/gradle/internal/resource/connector/ResourceConnectorSpecification +instanceKlass org/gradle/api/internal/artifacts/DependencyManagementBuildScopeServices$$Lambda$224 +instanceKlass org/gradle/internal/resource/local/LocallyAvailableExternalResource +instanceKlass org/gradle/internal/resource/ExternalResource +instanceKlass org/gradle/internal/resource/local/FileResourceConnector +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/ResolvedArtifactCaches +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/artifacts/InMemoryModuleArtifactCache +instanceKlass org/gradle/api/internal/artifacts/DependencyManagementBuildScopeServices$$Lambda$223 +instanceKlass org/gradle/api/internal/artifacts/DependencyManagementBuildScopeServices$$Lambda$222 +instanceKlass org/gradle/api/internal/artifacts/DependencyManagementBuildScopeServices$$Lambda$221 +instanceKlass org/gradle/api/internal/artifacts/DependencyManagementBuildScopeServices$$Lambda$220 +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass org/gradle/api/internal/artifacts/DependencyManagementBuildScopeServices$$Lambda$219 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/artifacts/DefaultModuleArtifactCache$CachedArtifactSerializer +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/artifacts/DefaultModuleArtifactCache$ArtifactAtRepositoryKeySerializer +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/artifacts/CachedArtifact +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/artifacts/CachedArtifacts +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/ModuleMetadataStore +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/ModuleMetadataCache$CachedMetadata +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/dynamicversions/ModuleVersionsCache$CachedModuleVersionList +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/api/internal/artifacts/DependencyManagementBuildScopeServices$$Lambda$218 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/StartParameterResolutionOverride$$Lambda$217 +instanceKlass org/gradle/api/internal/artifacts/verification/signatures/BuildTreeDefinedKeys +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ModuleComponentRepository +instanceKlass org/gradle/api/internal/file/DefaultFileSystemLocation +instanceKlass org/gradle/api/resources/TextResource +instanceKlass org/gradle/internal/locking/LockFileReaderWriter +instanceKlass org/gradle/api/internal/provider/ValidatingValueCollector +instanceKlass org/gradle/api/internal/provider/AbstractCollectionProperty$EmptySupplier +instanceKlass org/gradle/api/internal/provider/DefaultListProperty$1 +instanceKlass org/gradle/api/internal/provider/AbstractCollectionProperty$NoValueSupplier +instanceKlass org/gradle/api/internal/provider/CollectionSupplier +instanceKlass org/gradle/internal/locking/LockEntryFilterFactory$$Lambda$216 +instanceKlass org/gradle/internal/locking/LockEntryFilterFactory$$Lambda$215 +instanceKlass org/gradle/api/internal/artifacts/dsl/dependencies/LockEntryFilter +instanceKlass org/gradle/internal/locking/LockEntryFilterFactory +instanceKlass org/gradle/internal/locking/DependencyLockingNotationConverter +instanceKlass org/gradle/api/internal/artifacts/dsl/dependencies/DependencyLockingState +instanceKlass org/gradle/internal/locking/DefaultDependencyLockingProvider +instanceKlass org/gradle/api/internal/artifacts/DefaultComponentSelectorConverter +instanceKlass org/gradle/api/internal/artifacts/component/DefaultComponentIdentifierFactory +instanceKlass org/gradle/api/internal/artifacts/DefaultGlobalDependencyResolutionRules$CompositeDependencySubstitutionRules +instanceKlass org/gradle/api/internal/artifacts/DefaultGlobalDependencyResolutionRules +instanceKlass org/gradle/api/artifacts/ComponentModuleMetadataDetails +instanceKlass org/gradle/api/artifacts/ComponentModuleMetadata +instanceKlass org/gradle/api/internal/artifacts/dsl/ComponentModuleMetadataContainer +instanceKlass org/gradle/api/internal/artifacts/dsl/ModuleReplacementsData +instanceKlass org/gradle/api/internal/artifacts/DefaultDependencyManagementServices$DependencyResolutionScopeServices$$Lambda$214 +instanceKlass com/google/common/collect/MapMakerInternalMap$StrongKeyDummyValueEntry$Helper +instanceKlass org/gradle/api/internal/DefaultNamedDomainObjectCollection$UnfilteredIndex +instanceKlass org/gradle/api/internal/DefaultDomainObjectCollection$1 +instanceKlass org/gradle/api/internal/collections/DefaultCollectionEventRegister +instanceKlass org/gradle/api/internal/provider/Collector +instanceKlass org/gradle/api/internal/collections/DefaultPendingSource +instanceKlass org/gradle/api/Namer$Comparator +instanceKlass org/gradle/api/internal/collections/SortedSetElementSource +instanceKlass org/gradle/api/Named$Namer +instanceKlass org/gradle/internal/instantiation/generator/InjectUtil +instanceKlass java/lang/SafeVarargs +instanceKlass com/google/common/reflect/Types$WildcardTypeImpl +instanceKlass java/util/StringJoiner +instanceKlass sun/reflect/generics/tree/ArrayTypeSignature +instanceKlass sun/reflect/generics/tree/IntSignature +instanceKlass java/lang/Class$EnclosingMethodInfo +instanceKlass com/google/common/reflect/Types$ClassOwnership$1LocalClass +instanceKlass com/google/common/reflect/Types$ParameterizedTypeImpl +instanceKlass com/google/common/reflect/Types$1 +instanceKlass com/google/common/reflect/Types +instanceKlass com/google/common/reflect/TypeResolver$TypeVariableKey +instanceKlass com/google/common/reflect/TypeResolver$TypeTable +instanceKlass com/google/common/reflect/TypeResolver +instanceKlass com/google/common/reflect/TypeVisitor +instanceKlass org/gradle/api/internal/collections/CollectionFilter +instanceKlass org/gradle/api/reflect/TypeOf +instanceKlass org/gradle/api/Rule +instanceKlass org/gradle/api/NamedDomainObjectCollectionSchema +instanceKlass org/gradle/api/NamedDomainObjectProvider +instanceKlass org/gradle/api/internal/DefaultNamedDomainObjectCollection$Index +instanceKlass org/gradle/api/internal/collections/ElementSource +instanceKlass org/gradle/api/internal/collections/PendingSource +instanceKlass org/gradle/api/internal/collections/CollectionEventRegister +instanceKlass org/gradle/internal/instantiation/generator/Jsr330ConstructorSelector$$Lambda$213 +instanceKlass org/gradle/internal/instantiation/generator/Jsr330ConstructorSelector$CachedConstructor +instanceKlass groovy/lang/Buildable +instanceKlass groovy/lang/Writable +instanceKlass org/gradle/internal/management/DefaultDependencyResolutionManagement$$Lambda$212 +instanceKlass org/gradle/api/internal/provider/ValueSupplier$Present +instanceKlass org/gradle/api/internal/provider/ValueSupplier$Missing +instanceKlass org/gradle/api/internal/provider/ValueSupplier$Value +instanceKlass org/gradle/api/internal/provider/Providers +instanceKlass org/gradle/api/internal/provider/ValueSanitizers$4 +instanceKlass org/gradle/api/internal/provider/ValueSanitizers$3 +instanceKlass org/gradle/api/internal/provider/ValueSanitizers$2 +instanceKlass org/gradle/api/internal/provider/ValueSanitizers$1 +instanceKlass org/gradle/api/internal/provider/ValueCollector +instanceKlass org/gradle/api/internal/provider/ValueSanitizer +instanceKlass org/gradle/api/internal/provider/ValueSanitizers +instanceKlass org/gradle/api/internal/provider/AbstractProperty$FinalizationState +instanceKlass org/gradle/internal/management/DefaultDependencyResolutionManagement$ComponentMetadataRulesRegistar +instanceKlass org/apache/groovy/util/BeanUtils +instanceKlass groovy/lang/MetaProperty +instanceKlass javax/annotation/meta/TypeQualifier +instanceKlass org/gradle/api/initialization/dsl/VersionCatalogBuilder +instanceKlass org/gradle/api/internal/WithEstimatedSize +instanceKlass org/gradle/internal/metaobject/PropertyMixIn +instanceKlass org/gradle/internal/metaobject/MethodMixIn +instanceKlass org/gradle/api/reflect/HasPublicType +instanceKlass org/gradle/api/artifacts/repositories/ArtifactRepository +instanceKlass org/gradle/api/initialization/resolve/MutableVersionCatalogContainer +instanceKlass org/gradle/internal/management/DefaultDependencyResolutionManagement +instanceKlass org/gradle/api/internal/DefaultCollectionCallbackActionDecorator +instanceKlass org/gradle/api/internal/provider/CredentialsProviderFactory +instanceKlass org/gradle/api/provider/ValueSourceSpec +instanceKlass org/gradle/api/file/FileContents +instanceKlass org/gradle/api/internal/provider/DefaultProviderFactory +instanceKlass org/gradle/api/internal/provider/ValueSourceProviderFactory$Listener +instanceKlass org/gradle/api/provider/ValueSourceParameters$None +instanceKlass org/gradle/api/provider/ValueSourceParameters +instanceKlass org/gradle/api/provider/ValueSource +instanceKlass org/gradle/internal/isolated/IsolationScheme +instanceKlass org/gradle/api/internal/provider/ValueSourceProviderFactory$Listener$ObtainedValue +instanceKlass org/gradle/api/internal/provider/DefaultValueSourceProviderFactory +instanceKlass org/gradle/api/capabilities/CapabilitiesMetadata +instanceKlass org/gradle/internal/component/external/model/AbstractStatelessDerivationStrategy +instanceKlass org/gradle/api/internal/artifacts/dsl/MetadataRuleWrapper +instanceKlass org/gradle/api/internal/notations/ComponentIdentifierParserFactory +instanceKlass org/gradle/api/artifacts/DependencyConstraintMetadata +instanceKlass org/gradle/api/internal/catalog/parser/StrictVersionParser +instanceKlass org/gradle/api/internal/notations/DependencyStringNotationConverter +instanceKlass org/gradle/api/internal/notations/DependencyMetadataNotationParser +instanceKlass org/gradle/api/internal/artifacts/repositories/resolver/AbstractDependencyImpl +instanceKlass org/gradle/api/artifacts/DirectDependencyMetadata +instanceKlass org/gradle/api/artifacts/DependencyMetadata +instanceKlass org/gradle/internal/rules/DefaultRuleActionAdapter +instanceKlass org/gradle/api/artifacts/maven/PomModuleDescriptor +instanceKlass org/gradle/api/artifacts/ivy/IvyModuleDescriptor +instanceKlass org/gradle/internal/rules/DefaultRuleActionValidator +instanceKlass org/gradle/api/internal/artifacts/dsl/ComponentMetadataRuleContainer +instanceKlass org/gradle/internal/action/ConfigurableRule +instanceKlass org/gradle/internal/rules/RuleAction +instanceKlass org/gradle/api/internal/artifacts/dsl/SpecConfigurableRule +instanceKlass org/gradle/api/internal/artifacts/MetadataResolutionContext +instanceKlass org/gradle/internal/rules/SpecRuleAction +instanceKlass org/gradle/internal/rules/RuleActionAdapter +instanceKlass org/gradle/internal/rules/RuleActionValidator +instanceKlass org/gradle/api/internal/artifacts/ComponentMetadataProcessor +instanceKlass org/gradle/api/attributes/Category$Impl +instanceKlass org/gradle/api/attributes/Category +instanceKlass org/gradle/internal/resolve/caching/CrossBuildCachingRuleExecutor$AnySerializer +instanceKlass org/gradle/internal/resolve/caching/ComponentMetadataRuleExecutor$$Lambda$211 +instanceKlass org/gradle/internal/resolve/caching/ComponentMetadataRuleExecutor$$Lambda$210 +instanceKlass org/gradle/internal/resolve/caching/CrossBuildCachingRuleExecutor$EntryValidator +instanceKlass org/gradle/internal/resolve/caching/CrossBuildCachingRuleExecutor$CachedEntry +instanceKlass org/gradle/api/internal/artifacts/configurations/dynamicversion/CachePolicy +instanceKlass org/gradle/api/artifacts/ResolvedModuleVersion +instanceKlass org/gradle/internal/resolve/caching/ImplicitInputRecorder +instanceKlass org/gradle/internal/component/external/model/ModuleDependencyMetadata +instanceKlass org/gradle/internal/component/model/ConfigurationMetadata +instanceKlass org/gradle/internal/component/external/model/CapabilityInternal +instanceKlass org/gradle/internal/component/external/model/AbstractRealisedModuleResolveMetadataSerializationHelper +instanceKlass org/gradle/api/internal/artifacts/ModuleComponentSelectorSerializer +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/ModuleMetadataSerializer +instanceKlass org/gradle/internal/component/external/model/VirtualComponentIdentifier +instanceKlass org/gradle/internal/component/external/model/ModuleComponentResolveMetadata +instanceKlass org/gradle/internal/component/model/ModuleSources +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ModuleDescriptorHashCodec +instanceKlass org/gradle/api/internal/artifacts/repositories/metadata/MetadataFileSource +instanceKlass org/gradle/internal/component/model/PersistentModuleSource +instanceKlass org/gradle/internal/component/model/ModuleSource +instanceKlass org/gradle/api/internal/artifacts/repositories/metadata/DefaultMetadataFileSourceCodec +instanceKlass org/gradle/internal/component/model/PersistentModuleSource$Codec +instanceKlass org/gradle/api/internal/artifacts/DependencyManagementBuildScopeServices$$Lambda$209 +instanceKlass org/gradle/api/internal/artifacts/DependencyManagementBuildScopeServices$$Lambda$208 +instanceKlass org/gradle/api/internal/filestore/DefaultArtifactIdentifierFileStore$$Lambda$207 +instanceKlass org/gradle/api/internal/filestore/DefaultArtifactIdentifierFileStore$1 +instanceKlass org/gradle/api/internal/artifacts/DependencyManagementBuildScopeServices$$Lambda$206 +instanceKlass org/gradle/internal/resource/cached/CachedExternalResource +instanceKlass org/gradle/internal/resource/metadata/ExternalResourceMetaData +instanceKlass org/gradle/internal/resource/cached/DefaultCachedExternalResourceIndex$CachedExternalResourceSerializer +instanceKlass org/gradle/internal/resource/cached/CachedItem +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ArtifactCachesProvider$$Lambda$205 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/api/internal/artifacts/DependencyManagementBuildScopeServices$$Lambda$204 +instanceKlass org/gradle/internal/resource/local/LocallyAvailableResource +instanceKlass org/gradle/internal/resource/local/DefaultPathKeyFileStore +instanceKlass org/gradle/internal/resource/cached/DefaultExternalResourceFileStore$$Lambda$203 +instanceKlass org/gradle/api/Namer +instanceKlass org/gradle/internal/resource/cached/DefaultExternalResourceFileStore$1 +instanceKlass org/gradle/internal/resource/local/GroupedAndNamedUniqueFileStore$Grouper +instanceKlass org/gradle/internal/resource/local/PathKeyFileStore +instanceKlass org/gradle/internal/hash/ChecksumHasher +instanceKlass org/gradle/internal/hash/DefaultChecksumService +instanceKlass org/gradle/internal/component/external/descriptor/Configuration +instanceKlass org/gradle/internal/component/model/IvyArtifactName +instanceKlass org/gradle/internal/component/external/model/ivy/MutableIvyModuleResolveMetadata +instanceKlass org/gradle/api/internal/artifacts/repositories/metadata/DefaultMavenImmutableAttributesFactory +instanceKlass org/gradle/internal/component/external/model/maven/MutableMavenModuleResolveMetadata +instanceKlass org/gradle/internal/component/external/model/MutableModuleComponentResolveMetadata +instanceKlass org/gradle/api/internal/artifacts/repositories/metadata/MavenImmutableAttributesFactory +instanceKlass org/gradle/internal/component/external/model/PreferJavaRuntimeVariant$PreferJarVariantUsageDisambiguationRule +instanceKlass org/gradle/internal/component/external/model/PreferJavaRuntimeVariant$PreferRuntimeVariantUsageDisambiguationRule +instanceKlass org/gradle/api/attributes/LibraryElements$Impl +instanceKlass org/gradle/api/attributes/Usage$Impl +instanceKlass org/gradle/model/internal/type/ClassTypeWrapper +instanceKlass org/gradle/model/internal/type/TypeWrapper +instanceKlass org/gradle/model/internal/type/ModelType +instanceKlass org/gradle/model/internal/inspect/FormattingValidationProblemCollector +instanceKlass org/gradle/api/attributes/LibraryElements +instanceKlass org/gradle/api/attributes/Usage +instanceKlass org/gradle/api/internal/attributes/EmptySchema$DoNothingDisambiguationRule +instanceKlass org/gradle/api/internal/attributes/EmptySchema$DoNothingCompatibilityRule +instanceKlass org/gradle/api/internal/attributes/CompatibilityRule +instanceKlass org/gradle/api/internal/attributes/DisambiguationRule +instanceKlass org/gradle/internal/snapshot/ValueSnapshot +instanceKlass org/gradle/internal/snapshot/impl/DefaultValueSnapshotter$ValueSnapshotVisitor +instanceKlass org/gradle/api/internal/tasks/properties/PropertyValue +instanceKlass org/gradle/api/internal/tasks/properties/annotations/NestedBeanAnnotationHandler +instanceKlass org/gradle/api/internal/tasks/properties/annotations/LocalStatePropertyAnnotationHandler +instanceKlass org/gradle/api/internal/tasks/properties/annotations/DestroysPropertyAnnotationHandler +instanceKlass org/gradle/api/internal/tasks/properties/annotations/NoOpPropertyAnnotationHandler +instanceKlass org/gradle/api/internal/tasks/properties/annotations/InputPropertyAnnotationHandler +instanceKlass org/gradle/api/internal/artifacts/transform/CacheableTransformTypeAnnotationHandler +instanceKlass org/gradle/api/internal/tasks/properties/annotations/UntrackedTaskTypeAnnotationHandler +instanceKlass org/gradle/api/internal/tasks/properties/annotations/CacheableTaskTypeAnnotationHandler +instanceKlass org/gradle/api/internal/tasks/properties/annotations/DisableCachingByDefaultTypeAnnotationHandler +instanceKlass org/gradle/vcs/internal/services/VersionControlServices$VcsResolverFactory +instanceKlass org/gradle/vcs/internal/resolver/OncePerBuildInvocationVcsVersionWorkingDirResolver +instanceKlass org/gradle/vcs/internal/resolver/DefaultVcsVersionWorkingDirResolver +instanceKlass org/gradle/vcs/internal/VersionRef +instanceKlass org/gradle/vcs/internal/resolver/PersistentVcsMetadataCache$VersionRefSerializer +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/strategy/CachingVersionSelectorScheme +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/strategy/VersionSelector +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/strategy/DefaultVersionSelectorScheme +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/strategy/Version +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/strategy/StaticVersionComparator +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/strategy/DefaultVersionComparator +instanceKlass org/gradle/cache/internal/CleanupActionFactory$BuildOperationCacheCleanupDecorator +instanceKlass org/gradle/internal/resource/local/ModificationTimeFileAccessTimeJournal +instanceKlass org/gradle/vcs/internal/VersionControlRepositoryConnection +instanceKlass org/gradle/vcs/internal/VersionControlSystem +instanceKlass org/gradle/vcs/internal/services/DefaultVersionControlRepositoryFactory +instanceKlass org/gradle/vcs/internal/DefaultVcsMappingsStore +instanceKlass org/gradle/vcs/internal/DefaultVcsMappingFactory +instanceKlass org/gradle/vcs/internal/services/DefaultVersionControlSpecFactory +instanceKlass org/gradle/internal/typeconversion/CharSequenceNotationConverter +instanceKlass org/gradle/api/internal/notations/ModuleIdentifierNotationConverter +instanceKlass org/gradle/api/internal/artifacts/ivyservice/projectmodule/DefaultLocalComponentRegistry +instanceKlass org/gradle/composite/internal/IncludedBuildDependencyMetadataBuilder +instanceKlass org/gradle/internal/component/local/model/LocalComponentMetadata +instanceKlass org/gradle/internal/component/local/model/BuildableLocalComponentMetadata +instanceKlass org/gradle/api/internal/artifacts/ivyservice/projectmodule/DefaultProjectLocalComponentProvider +instanceKlass org/gradle/api/artifacts/Configuration +instanceKlass org/gradle/api/attributes/HasConfigurableAttributes +instanceKlass org/gradle/api/internal/artifacts/configurations/ConfigurationInternal$VariantVisitor +instanceKlass org/gradle/api/internal/artifacts/ivyservice/moduleconverter/DefaultLocalComponentMetadataBuilder +instanceKlass org/gradle/internal/component/local/model/LocalFileDependencyMetadata +instanceKlass org/gradle/api/internal/artifacts/ivyservice/moduleconverter/dependencies/DefaultLocalConfigurationMetadataBuilder +instanceKlass org/gradle/util/internal/WrapUtil +instanceKlass org/gradle/api/internal/artifacts/ivyservice/moduleconverter/dependencies/DefaultDependencyDescriptorFactory +instanceKlass org/gradle/internal/component/model/LocalOriginDependencyMetadata +instanceKlass org/gradle/internal/component/model/ForcingDependencyMetadata +instanceKlass org/gradle/internal/component/model/DependencyMetadata +instanceKlass org/gradle/api/artifacts/Dependency +instanceKlass org/gradle/internal/component/model/ExcludeMetadata +instanceKlass org/gradle/api/internal/artifacts/ivyservice/moduleconverter/dependencies/DefaultExcludeRuleConverter +instanceKlass org/gradle/internal/model/CalculatedValueContainerFactory$$Lambda$202 +instanceKlass org/gradle/api/internal/tasks/NodeExecutionContext +instanceKlass org/gradle/internal/resource/transport/sftp/SftpConnectorFactory +instanceKlass com/jcraft/jsch/HostKeyRepository +instanceKlass com/jcraft/jsch/Logger +instanceKlass org/gradle/internal/resource/transport/sftp/LockableSftpClient +instanceKlass org/gradle/internal/resource/transport/sftp/SftpClientFactory$SftpClientCreator +instanceKlass org/gradle/internal/resource/transport/aws/s3/S3ConnectorFactory +instanceKlass org/gradle/internal/resource/transport/gcp/gcs/GcsConnectorFactory +instanceKlass org/gradle/internal/resource/transfer/ExternalResourceConnector +instanceKlass org/gradle/internal/resource/transfer/ExternalResourceAccessor +instanceKlass org/gradle/internal/resource/transfer/ExternalResourceLister +instanceKlass org/gradle/internal/resource/transfer/ExternalResourceUploader +instanceKlass org/gradle/internal/resource/transport/http/HttpConnectorFactory +instanceKlass org/gradle/internal/resource/transport/http/HttpClientHelper$Factory$$Lambda$201 +instanceKlass org/gradle/internal/resource/transport/http/HttpClientHelper +instanceKlass org/gradle/internal/resource/transport/http/HttpSettings +instanceKlass org/gradle/internal/resource/transport/http/DefaultSslContextFactory +instanceKlass org/gradle/internal/resource/transport/file/FileConnectorFactory +instanceKlass org/gradle/composite/internal/CompositeProjectComponentArtifactMetadataSerializer +instanceKlass org/gradle/composite/internal/CompositeProjectComponentArtifactMetadata +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/ResolvedComponentResultSerializer +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/ComponentSelectorSerializer$OptimizingAttributeContainerSerializer +instanceKlass org/gradle/api/internal/artifacts/ImmutableVersionConstraint +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/ComponentSelectionReasonSerializer +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/ComponentSelectionDescriptorSerializer +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/ResolvedVariantResultSerializer +instanceKlass org/gradle/internal/component/external/model/DefaultModuleComponentIdentifier +instanceKlass org/gradle/api/artifacts/component/ModuleComponentIdentifier +instanceKlass org/gradle/api/internal/artifacts/metadata/ModuleComponentFileArtifactIdentifierSerializer +instanceKlass org/gradle/api/internal/artifacts/metadata/ComponentArtifactIdentifierSerializer +instanceKlass org/gradle/api/internal/artifacts/DependencyManagementValueSnapshotterSerializerRegistry$OpaqueComponentArtifactIdentifierSerializer +instanceKlass org/gradle/api/artifacts/PublishArtifact +instanceKlass org/gradle/api/internal/artifacts/metadata/PublishArtifactLocalArtifactMetadataSerializer +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/CapabilitySerializer +instanceKlass org/gradle/api/internal/artifacts/ModuleVersionIdentifierSerializer +instanceKlass org/gradle/internal/resolve/caching/DesugaringAttributeContainerSerializer +instanceKlass org/gradle/api/artifacts/result/ResolvedComponentResult +instanceKlass org/gradle/api/artifacts/result/ComponentResult +instanceKlass org/gradle/api/artifacts/result/ComponentSelectionReason +instanceKlass org/gradle/api/artifacts/result/ResolvedVariantResult +instanceKlass org/gradle/internal/component/local/model/ComponentFileArtifactIdentifier +instanceKlass org/gradle/internal/component/external/model/DefaultModuleComponentArtifactIdentifier +instanceKlass org/gradle/internal/component/external/model/ModuleComponentArtifactIdentifier +instanceKlass org/gradle/internal/component/local/model/OpaqueComponentArtifactIdentifier +instanceKlass org/gradle/internal/component/local/model/PublishArtifactLocalArtifactMetadata +instanceKlass org/gradle/api/artifacts/component/ComponentArtifactIdentifier +instanceKlass org/gradle/internal/component/local/model/LocalComponentArtifactMetadata +instanceKlass org/gradle/api/artifacts/ModuleVersionIdentifier +instanceKlass org/gradle/api/artifacts/result/ComponentSelectionDescriptor +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/CachingComponentSelectionDescriptorFactory +instanceKlass org/gradle/api/internal/initialization/DefaultScriptHandler +instanceKlass org/gradle/api/internal/artifacts/DefaultDependencyManagementServices$DefaultDependencyResolutionServices +instanceKlass org/gradle/api/internal/artifacts/ivyservice/moduleconverter/DefaultRootComponentMetadataBuilder +instanceKlass org/gradle/api/internal/artifacts/ivyservice/moduleconverter/RootComponentMetadataBuilder +instanceKlass org/gradle/api/internal/artifacts/transform/DefaultTransformedVariantFactory$VariantKey +instanceKlass org/gradle/api/internal/artifacts/transform/TransformationNodeFactory +instanceKlass org/gradle/api/internal/artifacts/transform/DefaultTransformedVariantFactory +instanceKlass org/gradle/api/internal/artifacts/dsl/DefaultComponentMetadataHandler +instanceKlass org/gradle/api/artifacts/dsl/DependencyLockingHandler +instanceKlass org/gradle/api/artifacts/dsl/ArtifactHandler +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfigurationFactory +instanceKlass org/gradle/api/internal/artifacts/ivyservice/moduleconverter/DefaultRootComponentMetadataBuilder$Factory +instanceKlass org/gradle/api/artifacts/dsl/DependencyHandler +instanceKlass org/gradle/api/artifacts/dsl/ComponentMetadataHandler +instanceKlass org/gradle/api/artifacts/dsl/DependencyConstraintHandler +instanceKlass org/gradle/api/internal/artifacts/transform/TransformedVariantFactory +instanceKlass org/gradle/api/internal/artifacts/repositories/DefaultUrlArtifactRepository$Factory +instanceKlass org/gradle/api/internal/artifacts/dsl/DefaultComponentModuleMetadataHandler +instanceKlass org/gradle/api/internal/artifacts/ComponentModuleMetadataProcessor +instanceKlass org/gradle/api/artifacts/dsl/ComponentModuleMetadataHandler +instanceKlass org/gradle/api/internal/artifacts/ComponentMetadataProcessorFactory +instanceKlass org/gradle/api/internal/artifacts/dsl/ComponentMetadataHandlerInternal +instanceKlass org/gradle/api/internal/artifacts/dsl/PublishArtifactNotationParserFactory +instanceKlass org/gradle/api/internal/artifacts/RepositoriesSupplier +instanceKlass org/gradle/api/internal/artifacts/configurations/ConfigurationContainerInternal +instanceKlass org/gradle/api/artifacts/ConfigurationContainer +instanceKlass org/gradle/api/internal/artifacts/transform/MutableTransformationWorkspaceServices +instanceKlass org/gradle/internal/file/ReservedFileSystemLocation +instanceKlass org/gradle/api/file/ProjectLayout +instanceKlass org/gradle/api/internal/artifacts/ArtifactPublicationServices +instanceKlass org/gradle/api/internal/artifacts/BaseRepositoryFactory +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/parser/MetaDataParser +instanceKlass org/gradle/internal/component/external/model/VariantDerivationStrategy +instanceKlass org/gradle/api/internal/artifacts/VariantTransformRegistry +instanceKlass org/gradle/api/internal/artifacts/type/ArtifactTypeRegistry +instanceKlass org/gradle/api/internal/artifacts/dsl/dependencies/DependencyLockingProvider +instanceKlass org/gradle/api/internal/artifacts/DependencyResolutionServices +instanceKlass org/gradle/api/internal/artifacts/transform/TransformerInvocationFactory +instanceKlass org/gradle/api/internal/artifacts/ConfigurationResolver +instanceKlass org/gradle/api/internal/artifacts/transform/ArtifactTransforms +instanceKlass org/gradle/api/internal/artifacts/GlobalDependencyResolutionRules +instanceKlass org/gradle/api/internal/artifacts/transform/TransformationRegistrationFactory +instanceKlass org/gradle/api/internal/artifacts/query/ArtifactResolutionQueryFactory +instanceKlass org/gradle/api/internal/tasks/TaskResolver +instanceKlass org/gradle/api/internal/artifacts/DefaultDependencyManagementServices$DependencyResolutionScopeServices +instanceKlass org/gradle/api/internal/artifacts/DefaultDependencyManagementServices$ArtifactTransformResolutionGradleUserHomeServices +instanceKlass org/gradle/internal/model/CalculatedModelValue +instanceKlass org/gradle/api/internal/initialization/RootScriptDomainObjectContext +instanceKlass org/gradle/internal/resource/UriTextResource$UriResourceLocation +instanceKlass org/gradle/invocation/DefaultGradle$$Lambda$200 +instanceKlass org/gradle/groovy/scripts/TextResourceScriptSource +instanceKlass org/gradle/internal/resource/ResourceLocation +instanceKlass org/gradle/internal/resource/UriTextResource +instanceKlass org/gradle/initialization/InitScriptHandler$1 +instanceKlass org/gradle/initialization/DirectoryInitScriptFinder +instanceKlass org/gradle/initialization/CompositeInitScriptFinder +instanceKlass org/gradle/initialization/InitScriptFinder +instanceKlass org/gradle/initialization/DefaultGradleProperties +instanceKlass org/gradle/configurationcache/extensions/CastExtensionsKt +instanceKlass kotlin/text/StringsKt__AppendableKt +instanceKlass org/gradle/configurationcache/extensions/MapExtensionsKt +instanceKlass org/gradle/configurationcache/services/DefaultEnvironment$DefaultProperties +instanceKlass org/gradle/initialization/Environment$Properties +instanceKlass org/gradle/initialization/DefaultGradlePropertiesController$Loaded +instanceKlass org/gradle/initialization/DefaultSettingsLoader +instanceKlass org/gradle/initialization/SettingsAttachingSettingsLoader +instanceKlass org/gradle/internal/composite/CommandLineIncludedBuildSettingsLoader +instanceKlass org/gradle/internal/composite/ChildBuildRegisteringSettingsLoader +instanceKlass org/gradle/internal/composite/CompositeBuildSettingsLoader +instanceKlass org/gradle/initialization/InitScriptHandlingSettingsLoader +instanceKlass org/gradle/initialization/GradlePropertiesHandlingSettingsLoader +instanceKlass org/gradle/initialization/BuildOperationFiringSettingsPreparer$LoadBuild$1 +instanceKlass org/gradle/initialization/LoadBuildBuildOperationType$Details +instanceKlass org/gradle/initialization/BuildOperationFiringSettingsPreparer$LoadBuild +instanceKlass org/gradle/internal/model/StateTransitionController$$Lambda$199 +instanceKlass org/gradle/initialization/VintageBuildModelController$$Lambda$198 +instanceKlass org/gradle/internal/model/StateTransitionController$$Lambda$197 +instanceKlass org/gradle/internal/model/StateTransitionController$$Lambda$196 +instanceKlass org/gradle/internal/build/DefaultBuildLifecycleController$$Lambda$195 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/composite/internal/DefaultBuildControllers$$Lambda$194 +instanceKlass org/gradle/composite/internal/BuildController +instanceKlass org/gradle/composite/internal/DefaultBuildControllers +instanceKlass org/gradle/composite/internal/BuildControllers +instanceKlass org/gradle/composite/internal/DefaultIncludedBuildTaskGraph$DefaultBuildTreeWorkGraph +instanceKlass org/gradle/internal/buildtree/DefaultBuildTreeLifecycleController$$Lambda$193 +instanceKlass org/gradle/internal/buildtree/BuildTreeWorkGraph +instanceKlass org/gradle/internal/model/StateTransitionController$$Lambda$192 +instanceKlass org/gradle/internal/model/StateTransitionController$$Lambda$191 +instanceKlass org/gradle/internal/buildtree/DefaultBuildTreeLifecycleController$$Lambda$190 +instanceKlass org/gradle/internal/buildtree/DefaultBuildTreeLifecycleController$$Lambda$189 +instanceKlass org/gradle/internal/build/ExecutionResult +instanceKlass org/gradle/tooling/internal/provider/runner/BuildModelActionRunner$ModelCreateAction +instanceKlass org/gradle/internal/buildtree/ProblemReportingBuildActionRunner$$Lambda$188 +instanceKlass org/gradle/internal/model/StateTransitionController$$Lambda$187 +instanceKlass org/gradle/internal/model/StateTransitionController$$Lambda$186 +instanceKlass org/gradle/internal/buildtree/DefaultBuildTreeLifecycleController$$Lambda$185 +instanceKlass org/gradle/launcher/exec/BuildOutcomeReportingBuildActionRunner$$Lambda$184 +instanceKlass org/gradle/internal/logging/format/TersePrettyDurationFormatter +instanceKlass org/gradle/internal/buildevents/BuildResultLogger +instanceKlass org/gradle/internal/exceptions/FailureResolutionAware$Context +instanceKlass org/gradle/util/internal/TreeVisitor +instanceKlass org/gradle/internal/buildevents/BuildExceptionReporter +instanceKlass org/gradle/internal/logging/format/DurationFormatter +instanceKlass org/gradle/internal/buildevents/BuildLogger +instanceKlass org/gradle/api/internal/tasks/execution/statistics/TaskExecutionStatisticsEventAdapter +instanceKlass org/gradle/tooling/internal/provider/FileSystemWatchingBuildActionRunner$1 +instanceKlass org/gradle/internal/watch/options/FileSystemWatchingSettingsFinalizedProgressDetails +instanceKlass org/gradle/api/internal/tasks/compile/CompileJavaBuildOperationType$Result +instanceKlass org/gradle/internal/operations/notify/BuildOperationNotificationBridge$Finished +instanceKlass org/gradle/internal/operations/OperationFinishEvent +instanceKlass org/gradle/internal/watch/vfs/impl/WatchingVirtualFileSystem$1$1 +instanceKlass org/gradle/internal/watch/vfs/BuildStartedFileSystemWatchingBuildOperationType$Result +instanceKlass com/google/common/collect/CollectCollectors$$Lambda$183 +instanceKlass com/google/common/collect/CollectCollectors$$Lambda$182 +instanceKlass com/google/common/collect/CollectCollectors$$Lambda$181 +instanceKlass com/google/common/collect/RangeGwtSerializationDependencies +instanceKlass com/google/common/collect/CollectCollectors$$Lambda$180 +instanceKlass com/google/common/collect/ImmutableRangeSet$Builder +instanceKlass com/google/common/collect/SortedIterable +instanceKlass com/google/common/collect/AbstractRangeSet +instanceKlass com/google/common/collect/RangeSet +instanceKlass com/google/common/collect/CollectCollectors$$Lambda$179 +instanceKlass com/google/common/collect/CollectCollectors$$Lambda$178 +instanceKlass com/google/common/collect/CollectCollectors$$Lambda$177 +instanceKlass com/google/common/collect/CollectCollectors$$Lambda$176 +instanceKlass com/google/common/collect/CollectCollectors$$Lambda$175 +instanceKlass com/google/common/collect/CollectCollectors$$Lambda$174 +instanceKlass com/google/common/collect/CollectCollectors$$Lambda$173 +instanceKlass com/google/common/collect/CollectCollectors$$Lambda$172 +instanceKlass com/google/common/collect/CollectCollectors +instanceKlass org/gradle/internal/watch/registry/impl/AbstractFileWatcherUpdater$$Lambda$171 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass java/util/stream/MatchOps$$Lambda$170 +instanceKlass java/util/stream/MatchOps$BooleanTerminalSink +instanceKlass java/util/stream/MatchOps$MatchOp +instanceKlass java/util/stream/MatchOps +instanceKlass org/gradle/internal/watch/registry/impl/AbstractFileWatcherUpdater$$Lambda$169 +instanceKlass org/gradle/internal/watch/registry/impl/AbstractFileWatcherUpdater$$Lambda$168 +instanceKlass org/gradle/internal/watch/registry/impl/AbstractFileWatcherUpdater$$Lambda$167 +instanceKlass org/gradle/internal/watch/registry/impl/AbstractFileWatcherUpdater$$Lambda$166 +instanceKlass java/util/ArrayDeque$DeqSpliterator +instanceKlass org/gradle/internal/watch/registry/impl/WatchableHierarchies$$Lambda$165 +instanceKlass org/gradle/internal/watch/registry/impl/WatchableHierarchies$$Lambda$164 +instanceKlass org/gradle/internal/watch/vfs/impl/WatchingVirtualFileSystem$$Lambda$163 +instanceKlass org/gradle/internal/watch/registry/impl/WatchableHierarchies$$Lambda$162 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/internal/watch/registry/impl/Combiners$$Lambda$161 +instanceKlass org/gradle/internal/watch/registry/impl/Combiners +instanceKlass org/gradle/internal/watch/registry/impl/WatchableHierarchies$$Lambda$160 +instanceKlass org/gradle/internal/watch/registry/impl/DefaultFileWatcherProbeRegistry$$Lambda$159 +instanceKlass org/gradle/internal/watch/registry/impl/DefaultFileWatcherProbeRegistry$$Lambda$158 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/internal/watch/registry/impl/DefaultFileWatcherProbeRegistry$WatchProbe +instanceKlass org/gradle/internal/watch/registry/impl/HierarchicalFileWatcherUpdater$$Lambda$157 +instanceKlass org/gradle/internal/watch/registry/impl/WatchableHierarchies$Invalidator +instanceKlass org/gradle/internal/watch/registry/impl/DefaultFileWatcherRegistry$$Lambda$156 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/internal/watch/registry/impl/DefaultFileWatcherRegistry$$Lambda$155 +instanceKlass org/gradle/internal/watch/registry/impl/DefaultFileWatcherRegistry$MutableFileWatchingStatistics +instanceKlass net/rubygrapefruit/platform/file/FileWatchEvent$Handler +instanceKlass org/gradle/internal/watch/registry/FileWatcherRegistry$FileWatchingStatistics +instanceKlass org/gradle/internal/watch/registry/impl/DefaultFileWatcherRegistry +instanceKlass org/gradle/internal/watch/registry/impl/WindowsFileWatcherRegistryFactory$$Lambda$154 +instanceKlass org/gradle/internal/watch/registry/impl/AbstractFileWatcherUpdater$MovedDirectoryHandler +instanceKlass org/gradle/internal/watch/registry/impl/HierarchicalFileWatcherUpdater$FileSystemLocationToWatchValidator$$Lambda$153 +instanceKlass org/gradle/internal/watch/registry/impl/HierarchicalFileWatcherUpdater$FileSystemLocationToWatchValidator +instanceKlass org/gradle/internal/watch/registry/impl/AbstractFileWatcherUpdater +instanceKlass org/gradle/internal/snapshot/FileSystemSnapshotHierarchyVisitor +instanceKlass org/gradle/internal/file/FileHierarchySet$RootVisitor +instanceKlass org/gradle/internal/watch/registry/impl/WatchableHierarchies +instanceKlass net/rubygrapefruit/platform/internal/jni/AbstractFileEventFunctions$NativeFileWatcher +instanceKlass net/rubygrapefruit/platform/file/FileWatchEvent +instanceKlass net/rubygrapefruit/platform/internal/jni/AbstractFileEventFunctions$NativeFileWatcherCallback +instanceKlass org/gradle/internal/watch/registry/impl/AbstractFileWatcherRegistryFactory$$Lambda$152 +instanceKlass org/gradle/internal/watch/registry/impl/DefaultFileWatcherProbeRegistry +instanceKlass org/gradle/internal/watch/vfs/impl/WatchingVirtualFileSystem$3 +instanceKlass java/util/stream/ForEachOps$ForEachOp +instanceKlass java/util/stream/ForEachOps +instanceKlass org/gradle/internal/watch/vfs/impl/WatchingVirtualFileSystem$1$$Lambda$151 +instanceKlass org/gradle/internal/watch/vfs/impl/DefaultWatchableFileSystemDetector$$Lambda$150 +instanceKlass org/gradle/internal/watch/vfs/impl/DefaultWatchableFileSystemDetector$$Lambda$149 +instanceKlass net/rubygrapefruit/platform/internal/FileSystemList$DefaultCaseSensitivity +instanceKlass net/rubygrapefruit/platform/internal/DefaultFileSystemInfo +instanceKlass net/rubygrapefruit/platform/file/FileSystemInfo +instanceKlass net/rubygrapefruit/platform/internal/jni/PosixFileSystemFunctions +instanceKlass net/rubygrapefruit/platform/file/CaseSensitivity +instanceKlass net/rubygrapefruit/platform/internal/FileSystemList +instanceKlass org/gradle/internal/watch/vfs/BuildStartedFileSystemWatchingBuildOperationType$Details$1 +instanceKlass org/gradle/internal/watch/vfs/BuildStartedFileSystemWatchingBuildOperationType$Details +instanceKlass org/gradle/internal/watch/vfs/FileSystemWatchingStatistics +instanceKlass org/gradle/internal/watch/vfs/impl/WatchingVirtualFileSystem$1 +instanceKlass org/gradle/internal/watch/vfs/impl/WatchingVirtualFileSystem$$Lambda$148 +instanceKlass org/slf4j/helpers/NamedLoggerBase +instanceKlass org/gradle/configuration/internal/DefaultListenerBuildOperationDecorator +instanceKlass org/gradle/api/tasks/util/internal/CachingPatternSpecFactory$CachingSpec +instanceKlass org/gradle/api/internal/file/RelativePathSpec +instanceKlass org/gradle/api/internal/file/pattern/AnythingMatcher +instanceKlass org/gradle/api/internal/file/pattern/FixedPatternStep +instanceKlass org/gradle/api/internal/file/pattern/HasSuffixPatternStep +instanceKlass org/gradle/api/internal/file/pattern/HasPrefixPatternStep +instanceKlass org/gradle/api/internal/file/pattern/HasPrefixAndSuffixPatternStep +instanceKlass org/gradle/api/internal/file/pattern/AnyWildcardPatternStep +instanceKlass org/gradle/api/internal/file/pattern/PatternStep +instanceKlass org/gradle/api/internal/file/pattern/PatternStepFactory +instanceKlass org/gradle/api/internal/file/pattern/FixedStepPathMatcher +instanceKlass org/gradle/api/internal/file/pattern/GreedyPathMatcher +instanceKlass org/gradle/api/internal/file/pattern/EndOfPathMatcher +instanceKlass org/gradle/api/internal/file/pattern/PatternMatcher +instanceKlass org/gradle/api/internal/file/pattern/PathMatcher +instanceKlass org/gradle/api/internal/file/pattern/PatternMatcherFactory +instanceKlass org/gradle/api/tasks/util/internal/CachingPatternSpecFactory$1 +instanceKlass org/gradle/api/tasks/util/internal/CachingPatternSpecFactory$SpecKey +instanceKlass org/gradle/cache/internal/BuildScopeCacheDir +instanceKlass org/gradle/launcher/exec/RootBuildLifecycleBuildActionExecutor$$Lambda$147 +instanceKlass org/gradle/initialization/buildsrc/BuildSrcDetector +instanceKlass org/gradle/internal/watch/vfs/impl/WatchingVirtualFileSystem$$Lambda$146 +instanceKlass java/util/function/UnaryOperator +instanceKlass org/gradle/internal/buildtree/DefaultBuildTreeLifecycleController +instanceKlass org/gradle/internal/buildtree/BuildTreeLifecycleController +instanceKlass org/gradle/internal/buildtree/BuildTreeModelController +instanceKlass org/gradle/internal/buildtree/DefaultBuildTreeModelCreator +instanceKlass org/gradle/internal/buildtree/BuildTreeModelCreator +instanceKlass org/gradle/internal/buildtree/DefaultBuildTreeWorkPreparer +instanceKlass org/gradle/internal/buildtree/BuildTreeWorkPreparer +instanceKlass org/gradle/internal/buildtree/DefaultBuildTreeFinishExecutor +instanceKlass org/gradle/internal/buildtree/DefaultBuildTreeWorkExecutor +instanceKlass org/gradle/internal/buildtree/BuildOperationFiringBuildTreeWorkExecutor +instanceKlass org/gradle/execution/SelectedTaskExecutionAction +instanceKlass org/gradle/execution/DryRunBuildExecutionAction +instanceKlass org/gradle/execution/BuildOperationFiringBuildWorkerExecutor +instanceKlass org/gradle/internal/build/DefaultBuildWorkPreparer +instanceKlass org/gradle/internal/taskgraph/CalculateTaskGraphBuildOperationType$TaskIdentity +instanceKlass org/gradle/internal/build/BuildOperationFiringBuildWorkPreparer +instanceKlass org/gradle/execution/plan/DefaultNodeValidator +instanceKlass org/gradle/execution/plan/ExecutionPlan +instanceKlass org/gradle/internal/snapshot/EmptyChildMap +instanceKlass org/gradle/internal/collect/PersistentList +instanceKlass org/gradle/internal/snapshot/ChildMap$StoreHandler +instanceKlass org/gradle/internal/snapshot/ChildMap$NodeHandler +instanceKlass org/gradle/execution/plan/ValuedVfsHierarchy +instanceKlass org/gradle/execution/plan/ExecutionNodeAccessHierarchy$AbstractNodeAccessVisitor +instanceKlass org/gradle/execution/plan/ValuedVfsHierarchy$ValueVisitor +instanceKlass org/gradle/execution/plan/ExecutionNodeAccessHierarchy +instanceKlass org/gradle/internal/graph/CachingDirectedGraphWalker$GraphWithEmptyEdges +instanceKlass org/gradle/api/internal/tasks/CachingTaskDependencyResolveContext$TaskGraphImpl +instanceKlass org/gradle/internal/graph/DirectedGraphWithEdgeValues +instanceKlass org/gradle/internal/graph/CachingDirectedGraphWalker +instanceKlass org/gradle/internal/graph/DirectedGraph +instanceKlass org/gradle/api/internal/tasks/AbstractTaskDependencyResolveContext +instanceKlass org/gradle/api/internal/tasks/TaskDependencyResolveContext +instanceKlass org/gradle/execution/plan/TaskNodeFactory$DefaultTypeOriginInspectorFactory +instanceKlass org/gradle/initialization/internal/InternalBuildFinishedListener +instanceKlass org/gradle/BuildResult +instanceKlass org/gradle/internal/build/DefaultBuildLifecycleController +instanceKlass org/gradle/internal/work/DefaultSynchronizer +instanceKlass org/gradle/internal/model/StateTransitionController$CurrentState +instanceKlass org/gradle/internal/model/StateTransitionController +instanceKlass org/gradle/internal/Describables$AbstractDescribable +instanceKlass org/gradle/internal/Describables +instanceKlass org/gradle/api/internal/artifacts/DefaultBuildIdentifier +instanceKlass org/gradle/internal/model/StateTransitionController$State +instanceKlass org/gradle/initialization/VintageBuildModelController +instanceKlass org/gradle/initialization/DefaultTaskExecutionPreparer +instanceKlass org/gradle/execution/BuildExecutionContext +instanceKlass org/gradle/execution/DefaultBuildConfigurationActionExecuter +instanceKlass org/gradle/execution/TaskNameResolvingBuildConfigurationAction +instanceKlass org/gradle/execution/DefaultTasksBuildExecutionAction +instanceKlass org/gradle/execution/BuildConfigurationAction +instanceKlass org/gradle/execution/commandline/CommandLineTaskConfigurer +instanceKlass org/gradle/api/internal/tasks/options/OptionValueNotationParserFactory +instanceKlass org/gradle/initialization/DefaultSettingsPreparer +instanceKlass org/gradle/initialization/BuildOperationFiringSettingsPreparer$1 +instanceKlass org/gradle/initialization/LoadBuildBuildOperationType$Result +instanceKlass org/gradle/initialization/BuildOperationFiringSettingsPreparer +instanceKlass org/gradle/internal/id/LongIdGenerator +instanceKlass org/gradle/configuration/DefaultInitScriptProcessor +instanceKlass org/gradle/api/internal/project/ProjectState +instanceKlass org/gradle/internal/model/ModelContainer +instanceKlass org/gradle/initialization/SettingsFactory +instanceKlass org/gradle/initialization/ScriptEvaluatingSettingsProcessor +instanceKlass org/gradle/initialization/SettingsEvaluatedCallbackFiringSettingsProcessor +instanceKlass org/gradle/initialization/RootBuildCacheControllerSettingsProcessor +instanceKlass org/gradle/initialization/BuildOperationSettingsProcessor$1 +instanceKlass org/gradle/initialization/EvaluateSettingsBuildOperationType$Result +instanceKlass org/gradle/initialization/BuildOperationSettingsProcessor +instanceKlass org/gradle/internal/resource/TextResource +instanceKlass org/gradle/internal/resource/DefaultTextFileResourceLoader +instanceKlass org/gradle/api/internal/artifacts/dsl/dependencies/UnknownProjectFinder +instanceKlass org/gradle/api/internal/initialization/ScriptHandlerInternal +instanceKlass org/gradle/api/initialization/dsl/ScriptHandler +instanceKlass org/gradle/api/internal/initialization/DefaultScriptHandlerFactory +instanceKlass org/gradle/api/internal/initialization/DefaultScriptClassPathResolver +instanceKlass org/gradle/configuration/ScriptPluginFactorySelector$1 +instanceKlass org/gradle/configuration/ScriptPluginFactorySelector$ProviderInstantiator +instanceKlass org/gradle/configuration/ScriptPluginFactorySelector +instanceKlass org/gradle/groovy/scripts/internal/StatementTransformer +instanceKlass org/gradle/groovy/scripts/internal/CompileOperation +instanceKlass org/gradle/groovy/scripts/Transformer +instanceKlass org/gradle/configuration/project/DefaultCompileOperationFactory +instanceKlass org/gradle/cache/internal/DefaultCrossBuildInMemoryCacheFactory$DefaultClassMap$$Lambda$145 +instanceKlass org/gradle/plugin/management/internal/DefaultPluginResolutionStrategy +instanceKlass org/gradle/plugin/internal/PluginUsePluginServiceRegistry$BuildScopeServices$1 +instanceKlass org/gradle/api/artifacts/dsl/RepositoryHandler +instanceKlass org/gradle/api/artifacts/ArtifactRepositoryContainer +instanceKlass org/gradle/api/NamedDomainObjectList +instanceKlass org/gradle/plugin/use/resolve/internal/PluginArtifactRepositories +instanceKlass org/gradle/api/internal/artifacts/Module +instanceKlass org/gradle/internal/service/scopes/BuildScopeServices$DependencyMetaDataProviderImpl +instanceKlass org/gradle/api/internal/artifacts/DefaultDependencyManagementServices +instanceKlass org/gradle/api/internal/file/AbstractFileResolver$2 +instanceKlass org/apache/commons/io/FilenameUtils +instanceKlass org/gradle/internal/typeconversion/NotationConverterToNotationParserAdapter$ResultImpl +instanceKlass org/gradle/util/internal/DeferredUtil +instanceKlass org/gradle/plugin/use/resolve/service/internal/ClientInjectedClasspathPluginResolver$$Lambda$144 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/api/internal/plugins/PluginImplementation +instanceKlass org/gradle/api/internal/plugins/DefaultPluginRegistry +instanceKlass org/gradle/api/internal/plugins/PotentialPlugin +instanceKlass org/gradle/model/internal/inspect/ModelRuleSourceDetector$1 +instanceKlass com/google/common/collect/MapMakerInternalMap$StrongKeyWeakValueEntry$Helper +instanceKlass org/gradle/api/internal/initialization/ClassLoaderScopeIdentifier +instanceKlass org/gradle/api/internal/initialization/AbstractClassLoaderScope +instanceKlass org/gradle/api/internal/initialization/loadercache/ClassLoaderId +instanceKlass org/gradle/initialization/ClassLoaderScopeId +instanceKlass org/gradle/initialization/DefaultClassLoaderScopeRegistry +instanceKlass org/gradle/api/internal/initialization/loadercache/DefaultClassLoaderCache$ClassLoaderSpec +instanceKlass org/gradle/api/internal/initialization/loadercache/DefaultClassLoaderCache +instanceKlass org/gradle/composite/internal/plugins/CompositeBuildPluginResolverContributor$CompositeBuildPluginResolver +instanceKlass org/gradle/composite/internal/plugins/CompositeBuildPluginResolverContributor +instanceKlass org/gradle/plugin/management/internal/autoapply/DefaultAutoAppliedPluginHandler +instanceKlass org/gradle/plugin/management/internal/SingletonPluginRequests +instanceKlass java/util/DualPivotQuicksort +instanceKlass org/gradle/plugin/use/internal/DefaultPluginId +instanceKlass org/gradle/plugin/use/PluginId +instanceKlass org/gradle/plugin/management/internal/autoapply/AutoAppliedGradleEnterprisePlugin +instanceKlass org/gradle/plugin/management/internal/DefaultPluginRequest +instanceKlass org/gradle/api/internal/artifacts/DefaultModuleVersionSelector +instanceKlass org/gradle/api/artifacts/ModuleVersionSelector +instanceKlass org/gradle/api/internal/artifacts/DefaultModuleIdentifier +instanceKlass org/gradle/plugin/management/internal/PluginRequestInternal +instanceKlass org/gradle/plugin/management/PluginRequest +instanceKlass org/gradle/plugin/management/internal/autoapply/DefaultAutoAppliedPluginRegistry +instanceKlass org/gradle/workers/internal/DefaultWorkResult +instanceKlass org/gradle/api/tasks/WorkResult +instanceKlass org/gradle/internal/work/ConditionalExecutionQueue +instanceKlass org/gradle/groovy/scripts/internal/BuildScopeInMemoryCachingScriptClassCompiler +instanceKlass org/gradle/groovy/scripts/ScriptCompiler +instanceKlass org/gradle/groovy/scripts/DefaultScriptCompilerFactory +instanceKlass org/gradle/groovy/scripts/ScriptRunner +instanceKlass org/gradle/groovy/scripts/internal/DefaultScriptRunnerFactory +instanceKlass org/gradle/groovy/scripts/internal/BuildOperationBackedScriptCompilationHandler$1 +instanceKlass org/gradle/internal/scripts/CompileScriptBuildOperationType$Result +instanceKlass org/gradle/groovy/scripts/internal/BuildOperationBackedScriptCompilationHandler +instanceKlass org/gradle/groovy/scripts/ScriptSource +instanceKlass org/gradle/groovy/scripts/internal/DefaultScriptCompilationHandler$NoOpGroovyResourceLoader +instanceKlass groovy/lang/GroovyResourceLoader +instanceKlass org/gradle/groovy/scripts/internal/CompiledScript +instanceKlass com/google/common/base/AbstractIterator$1 +instanceKlass com/google/common/base/AbstractIterator +instanceKlass com/google/common/base/Splitter$1 +instanceKlass com/google/common/base/CharMatcher +instanceKlass com/google/common/base/Splitter$Strategy +instanceKlass com/google/common/base/Splitter +instanceKlass org/gradle/configuration/DefaultImportsReader$2 +instanceKlass com/google/common/io/Java8Compatibility +instanceKlass com/google/common/io/LineBuffer +instanceKlass com/google/common/io/LineReader +instanceKlass com/google/common/io/CharStreams +instanceKlass org/gradle/configuration/DefaultImportsReader$1 +instanceKlass com/google/common/io/Resources +instanceKlass org/gradle/configuration/DefaultImportsReader +instanceKlass org/gradle/configuration/ScriptPlugin +instanceKlass org/gradle/api/Plugin +instanceKlass org/gradle/configuration/internal/DefaultUserCodeApplicationContext +instanceKlass org/gradle/composite/internal/CompositeBuildClassPathInitializer +instanceKlass org/gradle/api/tasks/TaskContainer +instanceKlass org/gradle/api/PolymorphicDomainObjectContainer +instanceKlass org/gradle/api/tasks/TaskCollection +instanceKlass org/gradle/execution/TaskSelectionResult +instanceKlass org/gradle/execution/TaskNameResolver +instanceKlass org/gradle/execution/ExcludedTaskFilteringProjectsPreparer +instanceKlass org/gradle/execution/DefaultTaskSchedulingPreparer +instanceKlass org/gradle/initialization/TaskSchedulingPreparer +instanceKlass org/gradle/configuration/DefaultProjectsPreparer +instanceKlass org/gradle/configuration/BuildTreePreparingProjectsPreparer +instanceKlass org/gradle/configuration/BuildOperationFiringProjectsPreparer$1 +instanceKlass org/gradle/initialization/ConfigureBuildBuildOperationType$Result +instanceKlass org/gradle/configuration/BuildOperationFiringProjectsPreparer +instanceKlass org/gradle/initialization/ModelConfigurationListener +instanceKlass org/gradle/internal/resource/local/FileResourceListener +instanceKlass org/gradle/initialization/InstantiatingBuildLoader +instanceKlass org/gradle/initialization/ProjectPropertySettingBuildLoader +instanceKlass org/gradle/initialization/NotifyingBuildLoader$$Lambda$143 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/initialization/NotifyingBuildLoader$1 +instanceKlass org/gradle/initialization/LoadProjectsBuildOperationType$Result$Project +instanceKlass org/gradle/initialization/NotifyProjectsLoadedBuildOperationType$Result +instanceKlass org/gradle/initialization/NotifyingBuildLoader +instanceKlass org/gradle/initialization/DefaultGradlePropertiesController$SharedGradleProperties +instanceKlass org/gradle/initialization/DefaultGradlePropertiesController$NotLoaded +instanceKlass org/gradle/initialization/DefaultGradlePropertiesController$State +instanceKlass org/gradle/initialization/DefaultGradlePropertiesController +instanceKlass org/gradle/initialization/DefaultGradlePropertiesLoader +instanceKlass kotlin/UNINITIALIZED_VALUE +instanceKlass kotlin/SafePublicationLazyImpl$Companion +instanceKlass kotlin/SafePublicationLazyImpl +instanceKlass kotlin/Lazy +instanceKlass kotlin/LazyKt$WhenMappings +instanceKlass kotlin/LazyKt__LazyJVMKt +instanceKlass kotlin/reflect/jvm/internal/pcollections/MapEntry +instanceKlass kotlin/reflect/jvm/internal/ReflectProperties$Val$1 +instanceKlass kotlin/reflect/jvm/internal/ReflectProperties$Val +instanceKlass kotlin/reflect/jvm/internal/ReflectProperties +instanceKlass kotlin/jvm/internal/Lambda +instanceKlass kotlin/text/Regex$Companion +instanceKlass kotlin/text/Regex +instanceKlass kotlin/jvm/internal/DefaultConstructorMarker +instanceKlass kotlin/reflect/jvm/internal/KDeclarationContainerImpl$Companion +instanceKlass kotlin/reflect/jvm/internal/KClassifierImpl +instanceKlass kotlin/reflect/jvm/internal/pcollections/ConsPStack +instanceKlass kotlin/reflect/jvm/internal/pcollections/IntTree +instanceKlass kotlin/reflect/jvm/internal/pcollections/IntTreePMap +instanceKlass kotlin/reflect/jvm/internal/pcollections/HashPMap +instanceKlass kotlin/reflect/jvm/internal/KClassCacheKt +instanceKlass kotlin/reflect/jvm/internal/KPropertyImpl$Companion +instanceKlass kotlin/reflect/jvm/internal/KCallableImpl +instanceKlass kotlin/reflect/jvm/internal/KTypeParameterOwnerImpl +instanceKlass kotlin/reflect/jvm/internal/KDeclarationContainerImpl +instanceKlass kotlin/jvm/internal/ClassBasedDeclarationContainer +instanceKlass kotlin/reflect/KMutableProperty1 +instanceKlass kotlin/reflect/KProperty1 +instanceKlass kotlin/jvm/functions/Function1 +instanceKlass kotlin/reflect/KMutableProperty2 +instanceKlass kotlin/reflect/KProperty2 +instanceKlass kotlin/reflect/KMutableProperty0 +instanceKlass kotlin/reflect/KMutableProperty +instanceKlass kotlin/reflect/KTypeParameter +instanceKlass kotlin/reflect/KType +instanceKlass kotlin/jvm/internal/FunctionBase +instanceKlass kotlin/reflect/KClass +instanceKlass kotlin/jvm/internal/ReflectionFactory +instanceKlass kotlin/reflect/KClassifier +instanceKlass kotlin/jvm/internal/Reflection +instanceKlass kotlin/jvm/internal/CallableReference$NoReceiver +instanceKlass kotlin/reflect/KProperty$Getter +instanceKlass kotlin/reflect/KFunction +instanceKlass kotlin/reflect/KProperty$Accessor +instanceKlass kotlin/reflect/KDeclarationContainer +instanceKlass kotlin/jvm/internal/CallableReference +instanceKlass kotlin/reflect/KProperty0 +instanceKlass kotlin/jvm/functions/Function0 +instanceKlass kotlin/reflect/KProperty +instanceKlass kotlin/reflect/KCallable +instanceKlass kotlin/reflect/KAnnotatedElement +instanceKlass org/gradle/kotlin/dsl/tooling/builders/BuildSrcClassPathModeConfigurationAction +instanceKlass org/gradle/initialization/buildsrc/GroovyBuildSrcProjectConfigurationAction +instanceKlass org/gradle/configuration/project/PluginsProjectConfigureActions +instanceKlass org/gradle/api/internal/InternalAction +instanceKlass org/gradle/configuration/project/ProjectConfigureAction +instanceKlass org/gradle/initialization/buildsrc/BuildSrcProjectConfigurationAction +instanceKlass org/gradle/initialization/buildsrc/BuildSrcBuildListenerFactory +instanceKlass org/gradle/initialization/buildsrc/BuildSourceBuilder$1 +instanceKlass org/gradle/initialization/buildsrc/BuildBuildSrcBuildOperationType$Result +instanceKlass org/gradle/util/internal/GUtil$1 +instanceKlass org/gradle/internal/build/DefaultPublicBuildPath +instanceKlass org/gradle/api/internal/AbstractMutationGuard +instanceKlass org/gradle/internal/operations/RunnableBuildOperation +instanceKlass org/gradle/api/internal/project/BuildOperationCrossProjectConfigurator +instanceKlass org/gradle/api/internal/WithMutationGuard +instanceKlass org/gradle/internal/concurrent/CompositeStoppable$2 +instanceKlass org/gradle/configurationcache/serialization/beans/BeanStateWriterLookup +instanceKlass org/gradle/configurationcache/serialization/beans/BeanStateReaderLookup +instanceKlass org/gradle/configurationcache/ConfigurationCacheClassLoaderScopeRegistryListener +instanceKlass org/gradle/configurationcache/serialization/ScopeLookup +instanceKlass org/gradle/initialization/ClassLoaderScopeRegistryListener +instanceKlass org/gradle/configurationcache/problems/ConfigurationCacheProblems +instanceKlass org/gradle/configurationcache/ConfigurationCacheIO +instanceKlass org/gradle/configurationcache/ConfigurationCacheHost +instanceKlass org/gradle/configurationcache/DefaultConfigurationCache$Host +instanceKlass org/gradle/cache/internal/FileContentCacheFactory$Calculator +instanceKlass org/gradle/language/nativeplatform/internal/incremental/sourceparser/CachingCSourceParser +instanceKlass org/gradle/language/nativeplatform/internal/incremental/sourceparser/CSourceParser +instanceKlass org/gradle/language/nativeplatform/internal/incremental/DefaultCompilationStateCacheFactory +instanceKlass org/gradle/language/nativeplatform/internal/incremental/CompilationStateCacheFactory +instanceKlass org/gradle/internal/scan/config/BuildScanConfig +instanceKlass org/gradle/internal/scan/config/BuildScanConfig$Attributes +instanceKlass org/gradle/internal/enterprise/impl/legacy/LegacyGradleEnterprisePluginCheckInService +instanceKlass org/gradle/internal/scan/eob/BuildScanEndOfBuildNotifier +instanceKlass org/gradle/internal/scan/config/BuildScanConfigProvider +instanceKlass org/gradle/internal/enterprise/impl/legacy/DefaultBuildScanScopeIds +instanceKlass org/gradle/internal/scan/scopeids/BuildScanScopeIds +instanceKlass org/gradle/internal/enterprise/GradleEnterprisePluginCheckInResult +instanceKlass org/gradle/internal/enterprise/impl/DefautGradleEnterprisePluginCheckInService +instanceKlass org/gradle/internal/enterprise/GradleEnterprisePluginCheckInService +instanceKlass org/gradle/internal/enterprise/impl/DefaultGradleEnterprisePluginConfig +instanceKlass org/gradle/internal/enterprise/impl/DefaultGradleEnterprisePluginBuildState +instanceKlass org/gradle/internal/enterprise/impl/DefaultGradleEnterprisePluginServiceRef +instanceKlass org/gradle/internal/enterprise/GradleEnterprisePluginBuildState +instanceKlass org/gradle/internal/enterprise/GradleEnterprisePluginConfig +instanceKlass org/gradle/internal/enterprise/GradleEnterprisePluginEndOfBuildListener$BuildResult +instanceKlass org/gradle/internal/enterprise/GradleEnterprisePluginServiceRef +instanceKlass org/gradle/internal/enterprise/impl/DefaultGradleEnterprisePluginAdapter +instanceKlass org/gradle/internal/enterprise/core/GradleEnterprisePluginAdapter +instanceKlass org/gradle/initialization/DefaultJdkToolsInitializer +instanceKlass org/gradle/api/internal/tasks/compile/incremental/analyzer/CachingClassDependenciesAnalyzer +instanceKlass org/gradle/api/internal/tasks/compile/incremental/classpath/CachingClassSetAnalyzer +instanceKlass org/gradle/api/internal/tasks/compile/incremental/IncrementalCompilerFactory +instanceKlass org/gradle/api/internal/tasks/compile/incremental/analyzer/ClassDependenciesAnalyzer +instanceKlass org/gradle/api/internal/tasks/compile/incremental/classpath/ClassSetAnalyzer +instanceKlass org/gradle/api/internal/tasks/CompileServices$GradleScopeCompileServices +instanceKlass org/gradle/language/java/artifact/JavadocArtifact +instanceKlass org/gradle/language/java/internal/JavaLanguagePluginServiceRegistry$JavaGradleScopeServices +instanceKlass org/gradle/api/internal/artifacts/DependencyServices$DependencyManagementGradleServices +instanceKlass org/gradle/kotlin/dsl/accessors/PluginAccessorClassPathGenerator +instanceKlass org/gradle/kotlin/dsl/accessors/ProjectAccessorsClassPathGenerator +instanceKlass org/gradle/kotlin/dsl/accessors/GradleScopeServices +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/internal/execution/history/OutputsCleaner +instanceKlass org/gradle/internal/execution/OutputChangeListener +instanceKlass org/gradle/internal/execution/history/OutputFilesRepository +instanceKlass org/gradle/internal/service/scopes/ExecutionGradleServices +instanceKlass org/gradle/caching/internal/origin/OriginMetadataFactory +instanceKlass org/gradle/caching/internal/controller/BuildCacheController +instanceKlass org/gradle/caching/internal/packaging/BuildCacheEntryPacker +instanceKlass org/gradle/caching/internal/packaging/impl/FilePermissionAccess +instanceKlass org/gradle/caching/internal/controller/BuildCacheCommandFactory +instanceKlass org/gradle/caching/internal/packaging/impl/TarPackerFileSystemSupport +instanceKlass org/gradle/caching/internal/BuildCacheServices$3 +instanceKlass org/gradle/internal/service/scopes/GradleScopeServices$$Lambda$142 +instanceKlass org/gradle/api/execution/TaskExecutionGraphListener +instanceKlass org/gradle/execution/commandline/CommandLineTaskParser +instanceKlass org/gradle/api/internal/tasks/options/OptionReader +instanceKlass org/gradle/execution/plan/PlanExecutor +instanceKlass org/gradle/api/execution/TaskExecutionListener +instanceKlass org/gradle/api/services/internal/BuildServiceRegistryInternal +instanceKlass org/gradle/execution/plan/LocalTaskNodeExecutor +instanceKlass org/gradle/execution/plan/WorkNodeExecutor +instanceKlass org/gradle/execution/plan/NodeExecutor +instanceKlass org/gradle/execution/BuildConfigurationActionExecuter +instanceKlass org/gradle/initialization/TaskExecutionPreparer +instanceKlass org/gradle/internal/execution/BuildOutputCleanupRegistry +instanceKlass org/gradle/execution/BuildWorkExecutor +instanceKlass org/gradle/internal/ImmutableActionSet +instanceKlass org/gradle/internal/instantiation/generator/AsmBackedClassGenerator$ObjectCreationDetails +instanceKlass com/google/common/collect/Ordering +instanceKlass org/gradle/internal/instantiation/generator/ConstructorComparator +instanceKlass org/gradle/internal/instantiation/generator/AsmBackedClassGenerator$InvokeConstructorStrategy +instanceKlass org/gradle/internal/instantiation/generator/AbstractClassGenerator$GeneratedClassImpl$GeneratedConstructorImpl +instanceKlass org/gradle/internal/instantiation/generator/ClassGenerator$GeneratedConstructor +instanceKlass org/gradle/internal/instantiation/generator/ClassGenerator$SerializationConstructor +instanceKlass java/lang/invoke/MethodHandles$Lookup$$Lambda$141 +instanceKlass jdk/internal/org/objectweb/asm/ClassReader +instanceKlass org/objectweb/asm/Handler +instanceKlass org/objectweb/asm/Attribute +instanceKlass org/gradle/internal/instantiation/generator/AsmBackedClassGenerator$ClassBuilderImpl$ReturnTypeEntry +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass org/gradle/internal/instantiation/generator/AsmBackedClassGenerator$ClassBuilderImpl$$Lambda$140 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/internal/instantiation/generator/AsmBackedClassGenerator$ClassBuilderImpl$$Lambda$139 +instanceKlass com/google/common/collect/LinkedHashMultimap$ValueSet$1 +instanceKlass com/google/common/collect/AbstractMapBasedMultimap$WrappedCollection$WrappedIterator +instanceKlass org/gradle/internal/instantiation/generator/AsmBackedClassGenerator$ClassBuilderImpl$$Lambda$138 +instanceKlass org/gradle/internal/instantiation/generator/AsmBackedClassGenerator$ClassBuilderImpl$$Lambda$137 +instanceKlass org/gradle/internal/instantiation/generator/AsmBackedClassGenerator$ClassBuilderImpl$$Lambda$136 +instanceKlass org/gradle/internal/instantiation/generator/AsmBackedClassGenerator$ClassBuilderImpl$$Lambda$135 +instanceKlass org/gradle/internal/instantiation/generator/AsmBackedClassGenerator$ClassBuilderImpl$$Lambda$134 +instanceKlass org/gradle/internal/instantiation/generator/AsmBackedClassGenerator$ClassBuilderImpl$$Lambda$133 +instanceKlass org/gradle/internal/instantiation/generator/AsmBackedClassGenerator$ClassBuilderImpl$$Lambda$132 +instanceKlass org/gradle/internal/reflect/JavaReflectionUtil +instanceKlass org/gradle/model/internal/asm/AsmClassGeneratorUtils +instanceKlass org/gradle/internal/instantiation/generator/AsmBackedClassGenerator$ClassBuilderImpl$$Lambda$131 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/internal/instantiation/generator/AsmBackedClassGenerator$ClassBuilderImpl$$Lambda$130 +instanceKlass org/gradle/internal/instantiation/generator/AsmBackedClassGenerator$ClassBuilderImpl$$Lambda$129 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/internal/instantiation/generator/AsmBackedClassGenerator$MethodCodeBody +instanceKlass org/objectweb/asm/Edge +instanceKlass org/objectweb/asm/Label +instanceKlass org/objectweb/asm/Frame +instanceKlass org/objectweb/asm/ByteVector +instanceKlass org/objectweb/asm/Symbol +instanceKlass org/objectweb/asm/SymbolTable +instanceKlass org/objectweb/asm/FieldVisitor +instanceKlass org/objectweb/asm/ModuleVisitor +instanceKlass org/objectweb/asm/MethodVisitor +instanceKlass org/objectweb/asm/AnnotationVisitor +instanceKlass org/objectweb/asm/RecordComponentVisitor +instanceKlass org/gradle/model/internal/asm/AsmClassGenerator +instanceKlass org/gradle/internal/DisplayName +instanceKlass org/gradle/internal/instantiation/generator/ManagedObjectFactory +instanceKlass org/gradle/util/internal/ConfigureUtil +instanceKlass org/gradle/internal/metaobject/AbstractDynamicObject +instanceKlass org/gradle/api/plugins/Convention +instanceKlass org/gradle/api/plugins/ExtensionContainer +instanceKlass org/gradle/internal/metaobject/DynamicObject +instanceKlass org/gradle/internal/metaobject/PropertyAccess +instanceKlass org/gradle/internal/metaobject/MethodAccess +instanceKlass org/gradle/internal/extensibility/ConventionAwareHelper +instanceKlass org/gradle/api/internal/HasConvention +instanceKlass org/gradle/api/internal/IConventionAware +instanceKlass org/gradle/api/internal/GeneratedSubclass +instanceKlass org/gradle/api/internal/ConventionMapping +instanceKlass org/gradle/internal/instantiation/generator/AsmBackedClassGenerator$ClassBuilderImpl +instanceKlass javax/annotation/Nullable +instanceKlass java/lang/module/ModuleDescriptor$Builder$$Lambda$128 +instanceKlass jdk/internal/module/Checks +instanceKlass java/lang/module/ModuleDescriptor$Builder +instanceKlass java/lang/reflect/Proxy$ProxyBuilder$$Lambda$127 +instanceKlass jdk/internal/HotSpotIntrinsicCandidate +instanceKlass java/lang/Deprecated +instanceKlass org/gradle/api/internal/DynamicObjectAware +instanceKlass org/gradle/internal/extensibility/NoConventionMapping +instanceKlass sun/reflect/annotation/AnnotationParser$$Lambda$126 +instanceKlass sun/reflect/generics/tree/Wildcard +instanceKlass sun/reflect/generics/tree/BottomSignature +instanceKlass org/gradle/internal/instantiation/generator/AbstractClassGenerator$MethodMetadata +instanceKlass org/gradle/internal/reflect/PropertyAccessor +instanceKlass org/gradle/internal/reflect/PropertyMutator +instanceKlass org/gradle/internal/reflect/JavaPropertyReflectionUtil +instanceKlass org/gradle/internal/instantiation/generator/AbstractClassGenerator$PropertyMetadata +instanceKlass org/gradle/internal/instantiation/generator/AbstractClassGenerator$ClassMetadata +instanceKlass org/gradle/configuration/ConfigurationTargetIdentifier +instanceKlass org/gradle/api/plugins/PluginContainer +instanceKlass org/gradle/api/plugins/PluginCollection +instanceKlass org/gradle/internal/reflect/MutablePropertyDetails +instanceKlass java/beans/Introspector$1 +instanceKlass jdk/internal/access/JavaBeansAccess +instanceKlass java/beans/FeatureDescriptor +instanceKlass java/beans/Introspector +instanceKlass org/gradle/internal/reflect/MethodSet$MethodKey +instanceKlass org/gradle/api/internal/plugins/PluginManagerInternal +instanceKlass org/gradle/api/services/BuildServiceRegistry +instanceKlass org/gradle/execution/taskgraph/TaskExecutionGraphInternal +instanceKlass org/gradle/api/internal/plugins/DefaultObjectConfigurationAction +instanceKlass org/gradle/api/plugins/ObjectConfigurationAction +instanceKlass org/gradle/api/internal/initialization/ClassLoaderScope +instanceKlass org/gradle/util/Path +instanceKlass org/gradle/api/internal/SettingsInternal +instanceKlass org/gradle/api/initialization/Settings +instanceKlass groovy/lang/GroovyObjectSupport +instanceKlass groovy/lang/GroovyCallable +instanceKlass org/gradle/internal/MutableActionSet +instanceKlass org/gradle/api/execution/TaskExecutionGraph +instanceKlass org/gradle/api/plugins/PluginManager +instanceKlass org/gradle/internal/reflect/PropertyDetails +instanceKlass org/gradle/internal/reflect/MutableClassDetails +instanceKlass org/gradle/internal/reflect/ClassDetails +instanceKlass org/gradle/internal/reflect/ClassInspector +instanceKlass org/gradle/internal/instantiation/generator/AbstractClassGenerator$ClassGenerationVisitor +instanceKlass org/gradle/internal/instantiation/generator/AsmBackedClassGenerator$ClassInspectionVisitorImpl +instanceKlass org/gradle/internal/instantiation/generator/AbstractClassGenerator$InjectionAnnotationValidator +instanceKlass org/gradle/internal/instantiation/generator/AbstractClassGenerator$DisabledAnnotationValidator +instanceKlass org/gradle/internal/instantiation/generator/AbstractClassGenerator$ClassValidator +instanceKlass com/google/common/collect/LinkedHashMultimap$ValueSetLink +instanceKlass org/gradle/internal/reflect/MethodSet +instanceKlass org/gradle/internal/instantiation/generator/AbstractClassGenerator$ClassGenerationHandler +instanceKlass org/gradle/api/internal/project/AbstractPluginAware +instanceKlass org/gradle/internal/build/DefaultBuildLifecycleControllerFactory$1 +instanceKlass org/gradle/internal/featurelifecycle/ScriptUsageLocationReporter +instanceKlass org/gradle/configurationcache/DeprecatedFeaturesListenerManagerAction$DeprecatedFeaturesListener +instanceKlass org/gradle/profile/BuildProfileServices$1$1 +instanceKlass org/gradle/api/HasImplicitReceiver +instanceKlass org/gradle/api/NonExtensible +instanceKlass org/gradle/internal/build/AbstractBuildState$$Lambda$125 +instanceKlass org/gradle/internal/build/AbstractBuildState$$Lambda$124 +instanceKlass org/gradle/internal/build/AbstractBuildState$$Lambda$123 +instanceKlass org/gradle/internal/lazy/Lazy$$Lambda$122 +instanceKlass org/gradle/internal/lazy/Lazy$Factory +instanceKlass org/gradle/internal/lazy/LockingLazy +instanceKlass org/gradle/internal/lazy/Lazy +instanceKlass org/gradle/configurationcache/RelevantProjectsRegistry +instanceKlass org/gradle/profile/ProfileListener +instanceKlass org/gradle/profile/ProfileEventAdapter +instanceKlass org/gradle/api/internal/artifacts/transform/ArtifactTransformListener +instanceKlass org/gradle/initialization/BuildCompletionListener +instanceKlass org/gradle/api/artifacts/DependencyResolutionListener +instanceKlass org/gradle/execution/taskgraph/TaskListenerInternal +instanceKlass org/gradle/api/ProjectEvaluationListener +instanceKlass org/gradle/profile/BuildProfileServices$1 +instanceKlass org/gradle/vcs/internal/resolver/VcsDependencyResolver +instanceKlass org/gradle/vcs/internal/resolver/VcsVersionWorkingDirResolver +instanceKlass org/gradle/vcs/internal/services/VersionControlServices$VersionControlBuildServices +instanceKlass org/gradle/tooling/provider/model/ToolingModelBuilder +instanceKlass org/gradle/language/cpp/internal/tooling/ToolingNativeServices$ToolingModelRegistration +instanceKlass org/gradle/authentication/aws/AwsImAuthentication +instanceKlass org/gradle/internal/resource/transport/aws/s3/S3ResourcesPluginServiceRegistry$AuthenticationSchemeAction +instanceKlass org/gradle/nativeplatform/toolchain/internal/metadata/CompilerMetaDataProvider +instanceKlass org/gradle/nativeplatform/toolchain/internal/metadata/CompilerMetaDataProviderFactory +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/nativeplatform/internal/resolve/LibraryBinaryLocator +instanceKlass org/gradle/nativeplatform/internal/resolve/NativeDependencyResolver +instanceKlass org/gradle/nativeplatform/internal/resolve/NativeDependencyResolverServices +instanceKlass org/gradle/language/cpp/internal/NativeDependencyCache +instanceKlass org/gradle/ide/xcode/internal/xcodeproj/GidGenerator +instanceKlass org/gradle/ide/xcode/internal/services/XcodeServices$GlobalIdGeneratorServices +instanceKlass org/gradle/plugins/ide/internal/configurer/UniqueProjectNameProvider +instanceKlass org/gradle/plugins/ide/internal/tooling/ToolingModelServices$BuildScopeToolingServices +instanceKlass org/gradle/plugin/use/resolve/internal/PluginResolverContributor +instanceKlass org/gradle/composite/internal/CompositeBuildServices$CompositeBuildBuildScopeServices +instanceKlass org/gradle/caching/http/internal/HttpBuildCacheServiceServices$$Lambda$121 +instanceKlass org/apache/http/HttpRequest +instanceKlass org/apache/http/HttpMessage +instanceKlass org/gradle/caching/http/internal/HttpBuildCacheRequestCustomizer +instanceKlass org/gradle/caching/http/internal/DefaultHttpBuildCacheServiceFactory +instanceKlass org/gradle/caching/BuildCacheServiceFactory +instanceKlass org/gradle/caching/configuration/AbstractBuildCache +instanceKlass org/gradle/caching/configuration/BuildCache +instanceKlass org/gradle/caching/configuration/internal/DefaultBuildCacheServiceRegistration +instanceKlass org/gradle/maven/MavenPomArtifact +instanceKlass org/gradle/maven/MavenModule +instanceKlass org/gradle/api/publish/maven/internal/publisher/MavenPublishers +instanceKlass org/gradle/api/publish/maven/internal/dependencies/VersionRangeMapper +instanceKlass org/gradle/api/publish/maven/internal/MavenPublishServices$ComponentRegistrationAction +instanceKlass org/gradle/api/publish/internal/validation/DuplicatePublicationTracker +instanceKlass org/gradle/api/internal/artifacts/ivyservice/projectmodule/DefaultProjectDependencyPublicationResolver +instanceKlass org/gradle/api/internal/artifacts/ivyservice/projectmodule/ProjectDependencyPublicationResolver +instanceKlass org/gradle/jvm/toolchain/internal/LocationListInstallationSupplier +instanceKlass org/gradle/jvm/toolchain/internal/EnvironmentVariableListInstallationSupplier +instanceKlass org/gradle/jvm/toolchain/internal/AutoDetectingInstallationSupplier +instanceKlass org/gradle/jvm/toolchain/internal/InstallationSupplier +instanceKlass org/gradle/jvm/toolchain/internal/JavaInstallationRegistry +instanceKlass org/gradle/jvm/toolchain/install/internal/JdkCacheDirectory +instanceKlass org/gradle/language/base/artifact/SourcesArtifact +instanceKlass org/gradle/jvm/JvmLibrary +instanceKlass org/gradle/platform/base/Library +instanceKlass org/gradle/language/jvm/internal/JvmPluginServiceRegistry$ComponentRegistrationAction +instanceKlass org/gradle/ivy/IvyDescriptorArtifact +instanceKlass org/gradle/api/component/Artifact +instanceKlass org/gradle/api/internal/component/DefaultComponentTypeRegistry$DefaultComponentTypeRegistration +instanceKlass org/gradle/ivy/IvyModule +instanceKlass org/gradle/api/component/Component +instanceKlass org/gradle/api/internal/component/ComponentTypeRegistration +instanceKlass org/gradle/api/internal/component/DefaultComponentTypeRegistry +instanceKlass org/gradle/api/publish/ivy/internal/publisher/IvyPublisher +instanceKlass org/gradle/api/publish/ivy/internal/IvyServices$BuildServices +instanceKlass org/gradle/api/internal/resolve/ProjectModelResolver +instanceKlass org/gradle/platform/base/internal/registry/ComponentModelBaseServiceRegistry$BuildScopeServices +instanceKlass org/gradle/plugin/use/tracker/internal/PluginVersionTracker +instanceKlass org/gradle/plugin/use/resolve/internal/PluginResolutionResult +instanceKlass org/gradle/api/internal/plugins/PluginDescriptorLocator +instanceKlass org/gradle/plugin/use/internal/DefaultPluginRequestApplicator +instanceKlass org/gradle/plugin/use/resolve/internal/PluginResolver +instanceKlass org/gradle/plugin/use/internal/PluginResolverFactory +instanceKlass org/gradle/plugin/use/internal/PluginDependencyResolutionServices +instanceKlass org/gradle/plugin/use/resolve/internal/PluginArtifactRepositoriesProvider +instanceKlass org/gradle/plugin/use/internal/PluginRepositoryHandlerProvider +instanceKlass org/gradle/plugin/management/internal/PluginResolutionStrategyInternal +instanceKlass org/gradle/plugin/management/PluginResolutionStrategy +instanceKlass org/gradle/plugin/use/resolve/service/internal/ClientInjectedClasspathPluginResolver +instanceKlass org/gradle/api/internal/artifacts/dsl/dependencies/ProjectFinder +instanceKlass org/gradle/plugin/management/internal/autoapply/AutoAppliedPluginRegistry +instanceKlass org/gradle/plugin/internal/PluginUsePluginServiceRegistry$BuildScopeServices +instanceKlass org/gradle/authentication/http/HttpHeaderAuthentication +instanceKlass org/gradle/authentication/http/DigestAuthentication +instanceKlass org/gradle/internal/authentication/AbstractAuthentication +instanceKlass org/gradle/internal/authentication/AuthenticationInternal +instanceKlass org/gradle/authentication/http/BasicAuthentication +instanceKlass org/gradle/authentication/Authentication +instanceKlass org/gradle/internal/authentication/DefaultAuthenticationSchemeRegistry +instanceKlass org/gradle/internal/resource/transport/http/HttpResourcesPluginServiceRegistry$AuthenticationSchemeAction +instanceKlass org/gradle/api/internal/artifacts/transform/TransformationNodeDependencyResolver +instanceKlass org/gradle/internal/component/model/ComponentResolveMetadata +instanceKlass org/gradle/api/internal/artifacts/ivyservice/projectmodule/ProjectArtifactSetResolver +instanceKlass org/gradle/api/internal/artifacts/ivyservice/projectmodule/ProjectArtifactResolver +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ResolverProviderFactory +instanceKlass org/gradle/internal/component/external/model/ModuleComponentArtifactMetadata +instanceKlass org/gradle/internal/component/model/ComponentArtifactMetadata +instanceKlass org/gradle/internal/resource/cached/AbstractCachedIndex +instanceKlass org/gradle/internal/verifier/HttpRedirectVerifier +instanceKlass org/gradle/internal/resource/local/GroupedAndNamedUniqueFileStore +instanceKlass org/gradle/internal/management/DependencyResolutionManagementInternal +instanceKlass org/gradle/api/initialization/resolve/DependencyResolutionManagement +instanceKlass org/gradle/internal/resolve/caching/CrossBuildCachingRuleExecutor +instanceKlass org/gradle/internal/resolve/caching/CachingRuleExecutor +instanceKlass org/gradle/api/internal/artifacts/ivyservice/projectmodule/ProjectDependencyResolver +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ComponentResolvers +instanceKlass org/gradle/internal/resolve/resolver/OriginArtifactSelector +instanceKlass org/gradle/internal/resolve/resolver/ArtifactResolver +instanceKlass org/gradle/internal/resolve/resolver/DependencyToComponentIdResolver +instanceKlass org/gradle/internal/resolve/resolver/ComponentMetaDataResolver +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/ModuleRepositoryCaches +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/excludes/ModuleExclusions +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/ModuleSourcesSerializer +instanceKlass org/gradle/api/internal/artifacts/DefaultProjectDependencyFactory +instanceKlass org/gradle/api/internal/runtimeshaded/RuntimeShadedJarFactory +instanceKlass org/gradle/api/internal/artifacts/repositories/transport/RepositoryTransportFactory +instanceKlass org/gradle/api/internal/filestore/DefaultArtifactIdentifierFileStore$Factory +instanceKlass org/gradle/internal/resource/cached/DefaultExternalResourceFileStore$Factory +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ResolveIvyFactory +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/strategy/VersionParser +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/verification/DependencyVerificationOverride +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/ModuleRepositoryCacheProvider +instanceKlass org/gradle/internal/resource/TextUriResourceLoader$Factory +instanceKlass org/gradle/api/internal/artifacts/repositories/metadata/IvyMutableModuleMetadataFactory +instanceKlass org/gradle/api/internal/artifacts/repositories/metadata/MavenMutableModuleMetadataFactory +instanceKlass org/gradle/api/internal/artifacts/repositories/metadata/MutableModuleMetadataFactory +instanceKlass org/gradle/internal/resource/local/LocallyAvailableResourceFinder +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/FileStoreAndIndexProvider +instanceKlass org/gradle/util/internal/SimpleMapInterner +instanceKlass org/gradle/internal/resource/TextUriResourceLoader +instanceKlass org/gradle/api/internal/artifacts/repositories/resolver/ExternalResourceAccessor +instanceKlass org/gradle/initialization/DependenciesAccessors +instanceKlass org/gradle/api/internal/filestore/ArtifactIdentifierFileStore +instanceKlass org/gradle/api/internal/artifacts/verification/signatures/SignatureVerificationServiceFactory +instanceKlass org/gradle/internal/execution/steps/DeferredExecutionAwareStep +instanceKlass org/gradle/internal/execution/steps/Step +instanceKlass org/gradle/api/internal/artifacts/ivyservice/projectmodule/ProjectPublicationRegistry +instanceKlass org/gradle/api/internal/artifacts/ComponentSelectorConverter +instanceKlass org/gradle/api/internal/artifacts/ArtifactDependencyResolver +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/strategy/VersionSelectorScheme +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/strategy/VersionComparator +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/RepositoryDisabler +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/dynamicversions/AbstractModuleVersionsCache +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/dynamicversions/ModuleVersionsCache +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/AbstractModuleMetadataCache +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/ModuleMetadataCache +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/artifacts/AbstractArtifactsCache +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/artifacts/ModuleArtifactsCache +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/artifacts/ModuleArtifactCache +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/AttributeContainerSerializer +instanceKlass org/gradle/api/internal/artifacts/mvnsettings/MavenSettingsProvider +instanceKlass org/gradle/api/internal/artifacts/mvnsettings/MavenFileLocations +instanceKlass org/gradle/api/internal/artifacts/component/ComponentIdentifierFactory +instanceKlass org/gradle/api/internal/artifacts/mvnsettings/LocalMavenRepositoryLocator +instanceKlass org/gradle/internal/resource/cached/CachedExternalResourceIndex +instanceKlass org/gradle/internal/resource/cached/ExternalResourceFileStore +instanceKlass org/gradle/internal/resource/local/FileStore +instanceKlass org/gradle/internal/resource/local/FileStoreSearcher +instanceKlass org/gradle/api/internal/artifacts/DependencyManagementBuildScopeServices +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/api/internal/artifacts/dsl/dependencies/DependencyFactory +instanceKlass kotlin/jvm/functions/Function2 +instanceKlass kotlin/Function +instanceKlass org/gradle/plugin/management/internal/autoapply/AutoAppliedPluginHandler +instanceKlass org/gradle/kotlin/dsl/provider/KotlinScriptEvaluator +instanceKlass org/gradle/internal/execution/ExecutionEngine +instanceKlass org/gradle/kotlin/dsl/provider/ClassPathModeExceptionCollector +instanceKlass org/gradle/plugin/use/internal/PluginRequestApplicator +instanceKlass org/gradle/kotlin/dsl/provider/PluginRequestsHandler +instanceKlass org/gradle/kotlin/dsl/provider/KotlinScriptClassPathProvider +instanceKlass org/gradle/kotlin/dsl/provider/BuildServices +instanceKlass org/gradle/kotlin/dsl/concurrent/AsyncIOScopeFactory +instanceKlass org/gradle/kotlin/dsl/concurrent/BuildServices +instanceKlass org/gradle/caching/configuration/internal/BuildCacheConfigurationInternal +instanceKlass org/gradle/caching/configuration/BuildCacheConfiguration +instanceKlass org/gradle/caching/configuration/internal/BuildCacheServiceRegistration +instanceKlass org/gradle/caching/local/internal/DirectoryBuildCacheFileStoreFactory +instanceKlass org/gradle/caching/internal/BuildCacheServices$2 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/projectmodule/LocalComponentRegistry +instanceKlass org/gradle/api/internal/artifacts/ivyservice/projectmodule/LocalComponentProvider +instanceKlass org/gradle/configuration/project/ProjectEvaluator +instanceKlass org/gradle/configurationcache/DefaultBuildModelControllerServices$VintageModelProvider +instanceKlass org/gradle/api/internal/project/CrossProjectModelAccess +instanceKlass org/gradle/configurationcache/DefaultBuildModelControllerServices$VintageIsolatedProjectsProvider +instanceKlass org/gradle/configurationcache/services/DefaultEnvironment +instanceKlass org/gradle/internal/build/BuildModelController +instanceKlass org/gradle/configurationcache/DefaultBuildModelControllerServices$VintageBuildControllerProvider +instanceKlass org/gradle/configurationcache/DeprecatedFeaturesListenerManagerAction +instanceKlass org/gradle/internal/service/scopes/BuildScopeListenerManagerAction +instanceKlass org/gradle/configurationcache/DefaultBuildModelControllerServices$ServicesProvider +instanceKlass org/gradle/internal/composite/DefaultBuildIncluder +instanceKlass org/gradle/internal/build/BuildWorkGraph +instanceKlass org/gradle/internal/build/ExportedTaskNode +instanceKlass org/gradle/internal/build/DefaultBuildWorkGraphController +instanceKlass org/gradle/internal/build/BuildWorkGraphController +instanceKlass org/gradle/execution/plan/WorkNodeDependencyResolver +instanceKlass org/gradle/execution/plan/TaskNodeDependencyResolver +instanceKlass org/gradle/execution/plan/DependencyResolver +instanceKlass org/gradle/api/internal/tasks/WorkDependencyResolver +instanceKlass org/gradle/internal/execution/WorkValidationContext +instanceKlass org/gradle/internal/execution/WorkValidationContext$TypeOriginInspector +instanceKlass org/gradle/initialization/layout/ResolvedBuildLayout +instanceKlass org/gradle/internal/build/BuildIncluder +instanceKlass org/gradle/initialization/SettingsLoader +instanceKlass org/gradle/initialization/DefaultSettingsLoaderFactory +instanceKlass org/gradle/api/internal/project/ProjectFactory +instanceKlass org/gradle/api/internal/project/IProjectFactory +instanceKlass org/gradle/execution/TaskPathProjectEvaluator +instanceKlass org/gradle/api/internal/file/DefaultArchiveOperations +instanceKlass org/gradle/api/file/ArchiveOperations +instanceKlass org/gradle/api/internal/file/DefaultFileSystemOperations +instanceKlass org/gradle/api/file/FileSystemOperations +instanceKlass org/gradle/internal/resource/LocalBinaryResource +instanceKlass org/gradle/internal/resource/ReadableContent +instanceKlass org/gradle/api/resources/internal/ReadableResourceInternal +instanceKlass org/gradle/internal/resource/Resource +instanceKlass org/gradle/api/resources/ReadableResource +instanceKlass org/gradle/api/resources/Resource +instanceKlass org/gradle/api/internal/file/delete/DeleteSpecInternal +instanceKlass org/gradle/api/file/DeleteSpec +instanceKlass org/gradle/api/internal/file/DefaultFileOperations +instanceKlass org/gradle/api/internal/file/FileOperations +instanceKlass org/gradle/process/internal/DefaultExecOperations +instanceKlass org/gradle/process/ExecOperations +instanceKlass org/gradle/internal/service/scopes/BuildScopeServices$$Lambda$120 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/tooling/provider/model/internal/BuildScopeToolingModelBuilderRegistryAction +instanceKlass org/gradle/api/internal/initialization/ScriptClassPathInitializer +instanceKlass org/gradle/api/internal/project/ProjectInternal +instanceKlass org/gradle/model/internal/registry/ModelRegistryScope +instanceKlass org/gradle/api/internal/DomainObjectContext +instanceKlass org/gradle/api/internal/file/HasScriptServices +instanceKlass org/gradle/api/internal/project/ProjectIdentifier +instanceKlass org/gradle/api/Project +instanceKlass org/gradle/tooling/provider/model/internal/DefaultToolingModelBuilderRegistry +instanceKlass org/gradle/tooling/provider/model/internal/ToolingModelBuilderLookup +instanceKlass org/gradle/tooling/provider/model/ToolingModelBuilderRegistry +instanceKlass org/gradle/groovy/scripts/internal/DefaultScriptCompilationHandler +instanceKlass org/gradle/internal/service/scopes/BuildScopeServiceRegistryFactory +instanceKlass org/gradle/configuration/DefaultScriptPluginFactory +instanceKlass org/gradle/initialization/SettingsLoaderFactory +instanceKlass org/gradle/groovy/scripts/internal/FileCacheBackedScriptClassCompiler +instanceKlass org/gradle/initialization/buildsrc/BuildSourceBuilder +instanceKlass org/gradle/execution/ProjectConfigurer +instanceKlass org/gradle/api/internal/artifacts/DependencyManagementServices +instanceKlass org/gradle/api/provider/ProviderFactory +instanceKlass org/gradle/api/internal/plugins/PluginInspector +instanceKlass org/gradle/internal/service/scopes/ServiceRegistryFactory +instanceKlass org/gradle/execution/plan/ExecutionPlanFactory +instanceKlass org/gradle/execution/plan/ExecutionNodeAccessHierarchies +instanceKlass org/gradle/execution/plan/TaskDependencyResolver +instanceKlass org/gradle/execution/plan/TaskNodeFactory +instanceKlass org/gradle/api/internal/GradleInternal +instanceKlass org/gradle/api/internal/plugins/PluginAwareInternal +instanceKlass org/gradle/api/invocation/Gradle +instanceKlass org/gradle/api/plugins/PluginAware +instanceKlass org/gradle/initialization/InitScriptHandler +instanceKlass org/gradle/api/internal/project/DefaultProjectRegistry +instanceKlass org/gradle/initialization/Environment +instanceKlass org/gradle/api/internal/properties/GradleProperties +instanceKlass org/gradle/api/internal/resources/DefaultResourceHandler$Factory +instanceKlass org/gradle/api/internal/resources/ApiTextResourceAdapter$Factory +instanceKlass org/gradle/api/internal/tasks/TaskStatistics +instanceKlass org/gradle/initialization/BuildLoader +instanceKlass org/gradle/internal/actor/ActorFactory +instanceKlass org/gradle/api/internal/project/taskfactory/ITaskFactory +instanceKlass org/gradle/execution/TaskSelector +instanceKlass org/gradle/internal/build/BuildWorkPreparer +instanceKlass org/gradle/groovy/scripts/internal/ScriptCompilationHandler +instanceKlass org/gradle/api/invocation/BuildInvocationDetails +instanceKlass org/gradle/internal/operations/logging/BuildOperationLoggerFactory +instanceKlass org/gradle/api/internal/artifacts/configurations/DependencyMetaDataProvider +instanceKlass org/gradle/groovy/scripts/internal/ScriptRunnerFactory +instanceKlass org/gradle/configuration/CompileOperationFactory +instanceKlass org/gradle/api/internal/project/ProjectTaskLister +instanceKlass org/gradle/internal/authentication/AuthenticationSchemeRegistry +instanceKlass org/gradle/api/internal/tasks/userinput/BuildScanUserInputHandler +instanceKlass org/gradle/api/internal/component/ComponentTypeRegistry +instanceKlass org/gradle/initialization/SettingsPreparer +instanceKlass org/gradle/configuration/ScriptPluginFactory +instanceKlass org/gradle/groovy/scripts/ScriptCompilerFactory +instanceKlass org/gradle/groovy/scripts/internal/ScriptClassCompiler +instanceKlass org/gradle/internal/resource/TextFileResourceLoader +instanceKlass org/gradle/api/internal/provider/ValueSourceProviderFactory +instanceKlass org/gradle/configuration/ProjectsPreparer +instanceKlass org/gradle/api/internal/initialization/ScriptHandlerFactory +instanceKlass org/gradle/api/internal/plugins/PluginRegistry +instanceKlass org/gradle/initialization/ProjectDescriptorRegistry +instanceKlass org/gradle/api/internal/project/ProjectRegistry +instanceKlass org/gradle/api/internal/initialization/ScriptClassPathResolver +instanceKlass org/gradle/initialization/SettingsProcessor +instanceKlass org/gradle/api/internal/project/IsolatedAntBuilder +instanceKlass org/gradle/cache/scopes/BuildScopedCache +instanceKlass org/gradle/execution/plan/NodeValidator +instanceKlass org/gradle/configuration/InitScriptProcessor +instanceKlass org/gradle/initialization/GradlePropertiesController +instanceKlass org/gradle/initialization/IGradlePropertiesLoader +instanceKlass org/gradle/internal/build/PublicBuildPath +instanceKlass org/gradle/configurationcache/DefaultBuildModelControllerServices$servicesForBuild$1 +instanceKlass org/gradle/internal/build/BuildModelControllerServices$Supplier +instanceKlass org/gradle/internal/composite/IncludedBuildInternal +instanceKlass org/gradle/api/initialization/IncludedBuild +instanceKlass org/gradle/internal/buildtree/BuildTreeFinishExecutor +instanceKlass org/gradle/internal/buildtree/BuildTreeWorkExecutor +instanceKlass org/gradle/api/artifacts/component/ProjectComponentIdentifier +instanceKlass org/gradle/api/artifacts/component/ComponentIdentifier +instanceKlass org/gradle/internal/build/AbstractBuildState +instanceKlass org/gradle/internal/Actions$NullAction +instanceKlass org/gradle/internal/Actions +instanceKlass org/gradle/plugin/management/internal/PluginRequests$EmptyPluginRequests +instanceKlass org/gradle/plugin/management/internal/PluginRequests +instanceKlass org/gradle/api/internal/BuildDefinition +instanceKlass java/util/TimSort +instanceKlass org/gradle/internal/buildtree/ProblemReportingBuildActionRunner$$Lambda$119 +instanceKlass org/gradle/launcher/exec/ChainingBuildActionRunner +instanceKlass org/gradle/internal/buildtree/ProblemReportingBuildActionRunner +instanceKlass org/gradle/launcher/exec/BuildOutcomeReportingBuildActionRunner +instanceKlass org/gradle/tooling/internal/provider/FileSystemWatchingBuildActionRunner +instanceKlass org/gradle/launcher/exec/BuildCompletionNotifyingBuildActionRunner +instanceKlass org/gradle/launcher/exec/RootBuildLifecycleBuildActionExecutor +instanceKlass org/gradle/initialization/exception/StackTraceSanitizingExceptionAnalyser +instanceKlass org/gradle/initialization/exception/DefaultExceptionAnalyser +instanceKlass org/gradle/internal/scripts/ScriptExecutionListener +instanceKlass org/gradle/initialization/exception/MultipleBuildFailuresExceptionAnalyser +instanceKlass org/gradle/internal/buildtree/DeprecationsReporter +instanceKlass org/gradle/api/artifacts/component/BuildIdentifier +instanceKlass org/gradle/composite/internal/DefaultIncludedBuildRegistry +instanceKlass org/gradle/api/internal/artifacts/ivyservice/dependencysubstitution/DependencySubstitutionsInternal +instanceKlass org/gradle/api/artifacts/DependencySubstitutions +instanceKlass org/gradle/composite/internal/IncludedBuildDependencySubstitutionsBuilder +instanceKlass org/gradle/internal/typeconversion/CompositeNotationConverter +instanceKlass org/gradle/api/capabilities/Capability +instanceKlass org/gradle/api/internal/artifacts/dsl/CapabilityNotationParserFactory +instanceKlass org/gradle/api/internal/attributes/UsageCompatibilityHandler +instanceKlass java/util/Comparator$$Lambda$118 +instanceKlass org/gradle/api/internal/attributes/DefaultImmutableAttributes$$Lambda$117 +instanceKlass org/gradle/api/attributes/Attribute +instanceKlass org/gradle/api/internal/attributes/DefaultImmutableAttributes +instanceKlass org/gradle/api/internal/attributes/AttributeValue +instanceKlass org/gradle/api/internal/attributes/ImmutableAttributes +instanceKlass org/gradle/api/internal/attributes/AttributeContainerInternal +instanceKlass org/gradle/api/attributes/AttributeContainer +instanceKlass org/gradle/api/attributes/HasAttributes +instanceKlass org/gradle/internal/isolation/Isolatable +instanceKlass org/gradle/internal/hash/Hashable +instanceKlass org/gradle/internal/snapshot/impl/DefaultIsolatableFactory$IsolatableVisitor +instanceKlass org/gradle/internal/snapshot/impl/AbstractValueProcessor$ValueVisitor +instanceKlass org/gradle/internal/snapshot/impl/AbstractValueProcessor +instanceKlass com/google/common/cache/LocalCache$StrongValueReference +instanceKlass org/gradle/api/internal/provider/ManagedFactories$ProviderManagedFactory +instanceKlass org/gradle/api/internal/provider/ManagedFactories$PropertyManagedFactory +instanceKlass org/gradle/api/internal/provider/ManagedFactories$MapPropertyManagedFactory +instanceKlass org/gradle/api/internal/provider/ManagedFactories$ListPropertyManagedFactory +instanceKlass org/gradle/api/internal/provider/AbstractMinimalProvider +instanceKlass org/gradle/api/internal/provider/CollectionPropertyInternal +instanceKlass org/gradle/api/internal/provider/CollectionProviderInternal +instanceKlass org/gradle/api/internal/provider/PropertyInternal +instanceKlass org/gradle/internal/state/OwnerAware +instanceKlass org/gradle/api/internal/provider/HasConfigurableValueInternal +instanceKlass org/gradle/api/internal/provider/ProviderInternal +instanceKlass org/gradle/api/internal/provider/ValueSupplier +instanceKlass org/gradle/api/internal/provider/ManagedFactories$SetPropertyManagedFactory +instanceKlass org/gradle/api/internal/file/ManagedFactories$DirectoryPropertyManagedFactory +instanceKlass org/gradle/api/internal/file/ManagedFactories$DirectoryManagedFactory +instanceKlass org/gradle/api/internal/file/ManagedFactories$RegularFilePropertyManagedFactory +instanceKlass org/gradle/api/internal/file/ManagedFactories$RegularFileManagedFactory +instanceKlass org/gradle/api/internal/file/collections/ManagedFactories$ConfigurableFileCollectionManagedFactory +instanceKlass org/gradle/internal/state/DefaultManagedFactoryRegistry +instanceKlass org/gradle/internal/classloader/ConfigurableClassLoaderHierarchyHasher +instanceKlass org/gradle/internal/classloader/DefaultClassLoaderFactory +instanceKlass org/gradle/api/internal/initialization/loadercache/DefaultClasspathHasher +instanceKlass javax/annotation/meta/TypeQualifierDefault +instanceKlass javax/annotation/Nonnull +instanceKlass org/gradle/api/NonNullApi +instanceKlass org/gradle/api/internal/changedetection/state/PropertiesFileAwareClasspathResourceHasher$$Lambda$116 +instanceKlass org/gradle/api/internal/changedetection/state/PropertiesFileAwareClasspathResourceHasher$$Lambda$115 +instanceKlass org/gradle/internal/fingerprint/impl/EmptyCurrentFileCollectionFingerprint +instanceKlass org/gradle/api/internal/changedetection/state/ZipHasher$$Lambda$114 +instanceKlass org/gradle/api/internal/changedetection/state/ZipHasher$HashingExceptionReporter +instanceKlass org/gradle/internal/snapshot/AbstractFileSystemLocationSnapshot +instanceKlass org/gradle/internal/snapshot/FileSystemLeafSnapshot +instanceKlass org/gradle/api/internal/file/archive/ZipInput +instanceKlass org/gradle/internal/fingerprint/hashing/ZipEntryContext +instanceKlass org/gradle/api/internal/changedetection/state/ZipHasher +instanceKlass org/gradle/api/internal/changedetection/state/IgnoringResourceHasher +instanceKlass org/gradle/api/internal/changedetection/state/MetaInfAwareClasspathResourceHasher +instanceKlass org/gradle/api/internal/changedetection/state/PropertiesFileAwareClasspathResourceHasher$$Lambda$113 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/api/internal/changedetection/state/PropertiesFileAwareClasspathResourceHasher +instanceKlass org/gradle/api/internal/changedetection/state/LineEndingNormalizingResourceHasher$1 +instanceKlass org/gradle/api/internal/changedetection/state/LineEndingNormalizingResourceHasher +instanceKlass org/gradle/internal/snapshot/RelativePathTrackingFileSystemSnapshotHierarchyVisitor +instanceKlass org/gradle/internal/fingerprint/CurrentFileCollectionFingerprint +instanceKlass org/gradle/internal/fingerprint/FileCollectionFingerprint +instanceKlass org/gradle/internal/fingerprint/impl/AbstractFingerprintingStrategy +instanceKlass org/gradle/api/internal/changedetection/state/RuntimeClasspathResourceHasher +instanceKlass org/gradle/api/internal/changedetection/state/PropertiesFileFilter +instanceKlass org/gradle/api/internal/changedetection/state/ResourceEntryFilter$1 +instanceKlass org/gradle/api/internal/changedetection/state/ResourceEntryFilter +instanceKlass org/gradle/api/internal/changedetection/state/ResourceFilter$1 +instanceKlass org/gradle/api/internal/changedetection/state/ResourceFilter +instanceKlass org/gradle/internal/fingerprint/FingerprintingStrategy +instanceKlass org/gradle/internal/fingerprint/impl/AbstractFileCollectionFingerprinter +instanceKlass org/gradle/internal/execution/fingerprint/FileCollectionSnapshotter$Result +instanceKlass org/gradle/internal/fingerprint/impl/DefaultFileCollectionSnapshotter +instanceKlass org/gradle/internal/fingerprint/impl/DefaultGenericFileTreeSnapshotter +instanceKlass org/gradle/api/internal/changedetection/state/CachingResourceHasher +instanceKlass org/gradle/internal/fingerprint/hashing/ResourceHasher +instanceKlass org/gradle/internal/fingerprint/hashing/ZipEntryContextHasher +instanceKlass org/gradle/internal/fingerprint/hashing/RegularFileSnapshotContextHasher +instanceKlass org/gradle/internal/fingerprint/hashing/ConfigurableNormalizer +instanceKlass org/gradle/api/internal/changedetection/state/DefaultResourceSnapshotterCacheService +instanceKlass org/gradle/internal/typeconversion/NotationParserBuilder$LazyDisplayName +instanceKlass org/gradle/internal/typeconversion/JustReturningParser +instanceKlass org/gradle/api/artifacts/VersionConstraint +instanceKlass org/gradle/internal/typeconversion/TypedNotationConverter +instanceKlass org/gradle/internal/typeconversion/CrossBuildCachingNotationConverter +instanceKlass org/gradle/api/internal/artifacts/DefaultImmutableModuleIdentifierFactory +instanceKlass org/gradle/composite/internal/DefaultBuildableCompositeBuildContext +instanceKlass org/gradle/tooling/internal/provider/serialization/DefaultPayloadClassLoaderRegistry$DetailsToClassLoaderTransformer +instanceKlass org/gradle/tooling/internal/provider/serialization/DefaultPayloadClassLoaderRegistry$ClassLoaderToDetailsTransformer +instanceKlass org/gradle/tooling/internal/provider/serialization/DefaultPayloadClassLoaderRegistry +instanceKlass org/gradle/tooling/internal/provider/serialization/ClassLoaderDetails +instanceKlass org/gradle/tooling/internal/provider/serialization/DeserializeMap +instanceKlass org/gradle/tooling/internal/provider/serialization/SerializeMap +instanceKlass org/gradle/tooling/internal/provider/serialization/WellKnownClassLoaderRegistry +instanceKlass java/io/ObjectInput +instanceKlass java/io/ObjectStreamConstants +instanceKlass java/io/ObjectOutput +instanceKlass org/gradle/tooling/internal/provider/serialization/ModelClassLoaderFactory +instanceKlass org/gradle/tooling/internal/provider/serialization/DaemonSidePayloadClassLoaderFactory +instanceKlass org/gradle/internal/file/impl/SingleDepthFileAccessTracker +instanceKlass org/gradle/cache/internal/SingleDepthFilesFinder +instanceKlass org/gradle/cache/internal/UnusedVersionsCacheCleanup$1 +instanceKlass org/gradle/cache/internal/AbstractCacheCleanup +instanceKlass org/gradle/cache/internal/CompositeCleanupAction$Builder +instanceKlass org/gradle/cache/internal/CompositeCleanupAction +instanceKlass org/gradle/internal/service/scopes/VirtualFileSystemServices$GradleUserHomeServices$3 +instanceKlass java/util/function/Predicate$$Lambda$112 +instanceKlass org/gradle/internal/snapshot/impl/DirectorySnapshotter$DefaultExcludes$$Lambda$111 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/internal/snapshot/impl/DirectorySnapshotter$DefaultExcludes$$Lambda$110 +instanceKlass org/gradle/internal/snapshot/impl/DirectorySnapshotter$DefaultExcludes$$Lambda$109 +instanceKlass org/gradle/internal/snapshot/impl/DirectorySnapshotter$DefaultExcludes$$Lambda$108 +instanceKlass java/util/function/Predicate$$Lambda$107 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/internal/snapshot/impl/DirectorySnapshotter$DefaultExcludes$EndMatcher +instanceKlass org/gradle/internal/snapshot/impl/DirectorySnapshotter$DefaultExcludes$StartMatcher +instanceKlass org/gradle/internal/snapshot/impl/DirectorySnapshotter$DefaultExcludes +instanceKlass org/gradle/internal/snapshot/impl/DirectorySnapshotter$1 +instanceKlass java/nio/file/FileVisitor +instanceKlass org/gradle/internal/snapshot/impl/DirectorySnapshotter$SymbolicLinkMapping +instanceKlass org/gradle/internal/snapshot/impl/DirectorySnapshotter +instanceKlass com/google/common/util/concurrent/Striped$1 +instanceKlass com/google/common/util/concurrent/Striped$6 +instanceKlass java/util/concurrent/locks/ReadWriteLock +instanceKlass com/google/common/util/concurrent/Striped$5 +instanceKlass com/google/common/util/concurrent/Striped +instanceKlass org/gradle/internal/vfs/impl/DefaultFileSystemAccess$StripedProducerGuard +instanceKlass java/nio/file/attribute/PosixFilePermissions$1 +instanceKlass java/nio/file/attribute/PosixFilePermissions +instanceKlass org/apache/tools/ant/util/FileUtils +instanceKlass org/apache/tools/ant/taskdefs/condition/Os +instanceKlass org/apache/tools/ant/taskdefs/condition/Condition +instanceKlass org/apache/tools/ant/types/resources/Appendable +instanceKlass org/apache/tools/ant/types/resources/FileProvider +instanceKlass org/apache/tools/ant/types/resources/Touchable +instanceKlass org/apache/tools/ant/ProjectComponent +instanceKlass org/apache/tools/ant/types/ResourceCollection +instanceKlass org/apache/tools/ant/DirectoryScanner +instanceKlass org/apache/tools/ant/types/ResourceFactory +instanceKlass org/apache/tools/ant/types/selectors/SelectorScanner +instanceKlass org/apache/tools/ant/FileScanner +instanceKlass org/gradle/internal/snapshot/FileSystemLocationSnapshot +instanceKlass org/gradle/internal/snapshot/FileSystemSnapshot +instanceKlass org/gradle/internal/snapshot/impl/DirectorySnapshotterStatistics +instanceKlass org/gradle/internal/service/scopes/VirtualFileSystemServices$GradleUserHomeServices$$Lambda$106 +instanceKlass org/gradle/internal/build/BuildAddedListener +instanceKlass org/gradle/internal/service/scopes/VirtualFileSystemServices$GradleUserHomeServices$$Lambda$105 +instanceKlass org/gradle/internal/watch/registry/impl/DaemonDocumentationIndex +instanceKlass org/gradle/internal/snapshot/SnapshotHierarchy$NodeDiffListener +instanceKlass org/gradle/internal/watch/registry/FileWatcherRegistry$ChangeHandler +instanceKlass org/gradle/internal/snapshot/MetadataSnapshot +instanceKlass org/gradle/internal/vfs/impl/AbstractVirtualFileSystem +instanceKlass org/gradle/internal/service/scopes/VirtualFileSystemServices$GradleUserHomeServices$$Lambda$104 +instanceKlass net/rubygrapefruit/platform/internal/jni/AbstractFileEventFunctions$AbstractWatcherBuilder +instanceKlass org/gradle/internal/watch/registry/FileWatcherUpdater +instanceKlass net/rubygrapefruit/platform/file/FileWatcher +instanceKlass org/gradle/internal/watch/registry/FileWatcherRegistry +instanceKlass org/gradle/internal/watch/registry/FileWatcherProbeRegistry +instanceKlass org/gradle/internal/watch/registry/impl/AbstractFileWatcherRegistryFactory +instanceKlass org/gradle/internal/service/scopes/VirtualFileSystemServices$GradleUserHomeServices$$Lambda$103 +instanceKlass org/gradle/internal/snapshot/FileSystemNode +instanceKlass org/gradle/internal/snapshot/ChildMap +instanceKlass org/gradle/internal/vfs/impl/DefaultSnapshotHierarchy$1 +instanceKlass org/gradle/internal/snapshot/ReadOnlyFileSystemNode +instanceKlass org/gradle/internal/vfs/impl/DefaultSnapshotHierarchy +instanceKlass org/gradle/internal/snapshot/SnapshotHierarchy +instanceKlass org/apache/commons/io/filefilter/IOFileFilter +instanceKlass java/io/FilenameFilter +instanceKlass org/apache/commons/io/FileUtils +instanceKlass com/google/common/io/CharSource +instanceKlass com/google/common/hash/PrimitiveSink +instanceKlass com/google/common/io/Closer$SuppressingSuppressor +instanceKlass com/google/common/io/Closer$Suppressor +instanceKlass com/google/common/io/Closer +instanceKlass com/google/common/io/CharSink +instanceKlass java/io/File$TempDirectory +instanceKlass org/gradle/api/internal/file/temp/TempFiles +instanceKlass org/gradle/internal/watch/vfs/impl/DefaultWatchableFileSystemDetector +instanceKlass net/rubygrapefruit/platform/internal/PosixFileSystems +instanceKlass org/gradle/internal/file/FilePathUtil +instanceKlass org/gradle/internal/file/FileHierarchySet$Node +instanceKlass org/gradle/internal/file/FileHierarchySet$NodeVisitor +instanceKlass org/gradle/cache/internal/DefaultGlobalCacheLocations +instanceKlass org/gradle/internal/nativeintegration/services/NativeServices$3 +instanceKlass org/gradle/internal/service/scopes/VirtualFileSystemServices$GradleUserHomeServices$1 +instanceKlass org/gradle/internal/file/FileHierarchySet +instanceKlass org/gradle/internal/hash/DefaultFileHasher +instanceKlass org/gradle/api/internal/changedetection/state/CachingFileHasher +instanceKlass com/google/common/collect/MapMakerInternalMap$WeakKeyDummyValueEntry$Helper +instanceKlass com/google/common/collect/MapMakerInternalMap$InternalEntry +instanceKlass com/google/common/collect/MapMakerInternalMap$1 +instanceKlass com/google/common/collect/MapMakerInternalMap$InternalEntryHelper +instanceKlass com/google/common/collect/MapMakerInternalMap$WeakValueReference +instanceKlass com/google/common/collect/Interners$InternerImpl +instanceKlass com/google/common/collect/MapMaker +instanceKlass com/google/common/collect/Interners$InternerBuilder +instanceKlass com/google/common/collect/Interners +instanceKlass org/gradle/internal/hash/HashCode +instanceKlass com/google/common/base/Charsets +instanceKlass org/gradle/internal/hash/Hashing$MessageDigestHasher +instanceKlass org/gradle/internal/hash/Hashing$DefaultHasher +instanceKlass org/gradle/internal/hash/PrimitiveHasher +instanceKlass org/gradle/internal/hash/Hasher +instanceKlass org/gradle/internal/hash/Hashing$MessageDigestHashFunction +instanceKlass org/gradle/internal/hash/HashFunction +instanceKlass org/gradle/internal/hash/Hashing +instanceKlass org/gradle/internal/hash/DefaultStreamHasher +instanceKlass org/gradle/api/internal/changedetection/state/FileTimeStampInspector$$Lambda$102 +instanceKlass org/gradle/api/internal/changedetection/state/FileHasherStatistics +instanceKlass org/apache/commons/lang/StringUtils +instanceKlass org/gradle/api/internal/artifacts/ivyservice/DefaultArtifactCaches$$Lambda$101 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/WritableArtifactCacheLockingManager +instanceKlass org/gradle/api/internal/artifacts/ivyservice/DefaultArtifactCaches$LateInitWritableArtifactCacheLockingManager +instanceKlass com/google/common/primitives/IntsMethodsForWeb +instanceKlass org/apache/commons/lang/ArrayUtils +instanceKlass org/gradle/cache/internal/CacheVersion +instanceKlass java/lang/Character$CharacterCache +instanceKlass org/gradle/util/internal/DefaultGradleVersion$Stage +instanceKlass org/gradle/cache/internal/CacheVersionMapping$Builder +instanceKlass org/gradle/cache/internal/CacheVersionMapping$1 +instanceKlass org/gradle/cache/internal/CacheVersionMapping +instanceKlass org/gradle/api/internal/artifacts/ivyservice/DefaultArtifactCacheMetadata +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ArtifactCacheLockingManager +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ArtifactCacheMetadata +instanceKlass org/gradle/api/internal/artifacts/ivyservice/DefaultArtifactCaches +instanceKlass org/gradle/api/internal/artifacts/DependencyManagementGradleUserHomeScopeServices$1 +instanceKlass org/gradle/api/internal/changedetection/state/DefaultFileAccessTimeJournal$$Lambda$100 +instanceKlass org/gradle/cache/internal/DefaultCacheAccess$IndexedCacheEntry +instanceKlass java/net/DatagramPacket$1 +instanceKlass org/gradle/cache/internal/locklistener/DefaultFileLockContentionHandler$ContendedAction +instanceKlass org/gradle/cache/internal/locklistener/DefaultFileLockContentionHandler$1 +instanceKlass org/gradle/internal/Factories$1 +instanceKlass org/gradle/internal/Factories +instanceKlass org/gradle/cache/internal/CrossProcessSynchronizingCache +instanceKlass org/gradle/cache/internal/InMemoryDecoratedCache +instanceKlass org/gradle/cache/internal/InMemoryCacheController +instanceKlass com/google/common/cache/LongAddables$1 +instanceKlass com/google/common/cache/Striped64$Cell +instanceKlass com/google/common/cache/Striped64$1 +instanceKlass com/google/common/cache/LongAddable +instanceKlass com/google/common/cache/LongAddables +instanceKlass com/google/common/cache/AbstractCache$SimpleStatsCounter +instanceKlass org/gradle/cache/internal/LoggingEvictionListener +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/cache/internal/DefaultInMemoryCacheDecoratorFactory$$Lambda$99 +instanceKlass org/gradle/cache/internal/DefaultInMemoryCacheDecoratorFactory$CacheDetails +instanceKlass org/gradle/cache/internal/AsyncCacheAccessDecoratedCache +instanceKlass org/gradle/cache/internal/CacheAccessWorker +instanceKlass org/gradle/cache/internal/DefaultMultiProcessSafePersistentIndexedCache +instanceKlass org/gradle/cache/internal/DefaultCacheAccess$$Lambda$98 +instanceKlass org/gradle/cache/internal/btree/BTreePersistentIndexedCache +instanceKlass org/gradle/cache/internal/DefaultInMemoryCacheDecoratorFactory$InMemoryCacheDecorator +instanceKlass org/gradle/cache/PersistentIndexedCacheParameters +instanceKlass org/gradle/api/internal/changedetection/state/DefaultFileAccessTimeJournal +instanceKlass org/gradle/cache/internal/MultiProcessSafeAsyncPersistentIndexedCache +instanceKlass org/gradle/cache/CacheDecorator +instanceKlass org/gradle/cache/internal/DefaultInMemoryCacheDecoratorFactory +instanceKlass org/gradle/cache/internal/DefaultCacheFactory$ReferenceTrackingCache +instanceKlass org/gradle/cache/internal/DefaultCacheFactory$DirCacheReference +instanceKlass org/gradle/cache/internal/cacheops/CacheOperationStack +instanceKlass org/gradle/cache/internal/LockOnDemandCrossProcessCacheAccess$ContendedAction +instanceKlass org/gradle/cache/internal/LockOnDemandCrossProcessCacheAccess$UnlockAction +instanceKlass org/gradle/cache/internal/DefaultCacheAccess$1 +instanceKlass org/gradle/cache/internal/DefaultCacheAccess$$Lambda$97 +instanceKlass org/gradle/cache/internal/DefaultCacheAccess$$Lambda$96 +instanceKlass org/gradle/cache/internal/cacheops/CacheAccessOperationsStack +instanceKlass org/gradle/cache/internal/DefaultPersistentDirectoryStore$Cleanup +instanceKlass org/gradle/cache/internal/DefaultPersistentDirectoryStore$1 +instanceKlass org/gradle/cache/internal/DefaultPersistentDirectoryStore$2 +instanceKlass org/gradle/cache/internal/DefaultCacheAccess$$Lambda$95 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/cache/AsyncCacheAccess +instanceKlass org/gradle/cache/MultiProcessSafePersistentIndexedCache +instanceKlass org/gradle/cache/UnitOfWorkParticipant +instanceKlass org/gradle/cache/PersistentIndexedCache +instanceKlass org/gradle/cache/internal/AbstractCrossProcessCacheAccess +instanceKlass org/gradle/cache/CrossProcessCacheAccess +instanceKlass org/gradle/cache/internal/DefaultCacheAccess +instanceKlass org/gradle/cache/internal/CacheCleanupAction +instanceKlass org/gradle/cache/internal/CacheCoordinator +instanceKlass org/gradle/cache/internal/CacheInitializationAction +instanceKlass org/gradle/cache/internal/DefaultPersistentDirectoryStore +instanceKlass org/gradle/cache/internal/DefaultCacheRepository$PersistentCacheBuilder +instanceKlass org/gradle/cache/internal/scopes/DefaultCacheScopeMapping$1 +instanceKlass org/gradle/internal/operations/notify/BuildOperationNotificationBridge$Progress +instanceKlass org/gradle/internal/operations/OperationProgressEvent +instanceKlass org/gradle/initialization/BuildOptionBuildOperationProgressEventsEmitter$1 +instanceKlass org/gradle/internal/configurationcache/options/ConfigurationCacheSettingsFinalizedProgressDetails +instanceKlass org/gradle/launcher/exec/BuildTreeLifecycleBuildActionExecutor$$Lambda$94 +instanceKlass org/gradle/internal/buildtree/DefaultBuildTreeContext +instanceKlass org/gradle/internal/buildtree/BuildTreeContext +instanceKlass org/gradle/configurationcache/VintageBuildTreeLifecycleControllerFactory +instanceKlass org/gradle/internal/buildtree/BuildTreeLifecycleControllerFactory +instanceKlass org/gradle/configurationcache/initialization/AbstractInjectedClasspathInstrumentationStrategy +instanceKlass org/gradle/plugin/use/resolve/service/internal/InjectedClasspathInstrumentationStrategy +instanceKlass org/gradle/internal/buildtree/BuildInclusionCoordinator +instanceKlass org/gradle/initialization/BuildOptionBuildOperationProgressEventsEmitter +instanceKlass org/gradle/internal/buildtree/BuildTreeLifecycleListener +instanceKlass org/gradle/internal/build/BuildLifecycleController +instanceKlass org/gradle/internal/build/DefaultBuildLifecycleControllerFactory +instanceKlass org/gradle/internal/build/BuildLifecycleControllerFactory +instanceKlass org/gradle/tooling/internal/provider/runner/AbstractClientProvidedBuildActionRunner$ClientAction +instanceKlass org/gradle/tooling/internal/provider/runner/AbstractClientProvidedBuildActionRunner +instanceKlass org/gradle/tooling/internal/provider/runner/TestExecutionRequestActionRunner +instanceKlass org/gradle/internal/buildtree/BuildTreeModelAction +instanceKlass org/gradle/tooling/internal/provider/runner/BuildModelActionRunner +instanceKlass org/gradle/tooling/internal/provider/runner/BuildControllerFactory +instanceKlass kotlin/coroutines/Continuation +instanceKlass org/gradle/configurationcache/fingerprint/ConfigurationCacheFingerprintController +instanceKlass org/gradle/configurationcache/InstrumentedInputAccessListener +instanceKlass org/gradle/internal/classpath/Instrumented$Listener +instanceKlass org/gradle/configurationcache/ConfigurationCacheRepository +instanceKlass org/gradle/configurationcache/DefaultBuildToolingModelControllerFactory +instanceKlass org/gradle/internal/build/BuildToolingModelControllerFactory +instanceKlass org/gradle/configurationcache/DefaultBuildModelControllerServices +instanceKlass org/gradle/internal/build/BuildModelControllerServices +instanceKlass org/gradle/configurationcache/problems/ProblemsListener +instanceKlass org/gradle/configurationcache/initialization/DefaultConfigurationCacheProblemsListener +instanceKlass org/gradle/configurationcache/initialization/ConfigurationCacheProblemsListener +instanceKlass org/gradle/api/internal/BuildScopeListenerRegistrationListener +instanceKlass org/gradle/api/internal/tasks/execution/TaskExecutionAccessListener +instanceKlass org/gradle/configurationcache/problems/ConfigurationCacheReport +instanceKlass org/gradle/configurationcache/initialization/ConfigurationCacheStartParameter +instanceKlass org/gradle/configurationcache/ConfigurationCacheKey +instanceKlass org/gradle/vcs/internal/resolver/VcsVersionSelectionCache +instanceKlass org/gradle/vcs/internal/VcsResolver +instanceKlass org/gradle/vcs/internal/VcsMappingFactory +instanceKlass org/gradle/vcs/internal/VersionControlSpecFactory +instanceKlass org/gradle/vcs/internal/VcsMappingsStore +instanceKlass org/gradle/vcs/internal/services/VersionControlServices$VersionControlBuildTreeServices +instanceKlass org/gradle/plugins/ide/internal/IdeArtifactStore +instanceKlass org/gradle/internal/enterprise/impl/legacy/DefaultBuildScanBuildStartedTime +instanceKlass org/gradle/internal/scan/time/BuildScanBuildStartedTime +instanceKlass org/gradle/internal/enterprise/impl/legacy/DefaultBuildScanClock +instanceKlass org/gradle/internal/scan/time/BuildScanClock +instanceKlass org/gradle/internal/enterprise/impl/DefaultGradleEnterprisePluginRequiredServices +instanceKlass org/gradle/internal/enterprise/GradleEnterprisePluginRequiredServices +instanceKlass org/gradle/composite/internal/DefaultIncludedBuildTaskGraph +instanceKlass org/gradle/composite/internal/BuildTreeWorkGraphController +instanceKlass org/gradle/internal/build/IncludedBuildState +instanceKlass org/gradle/composite/internal/DefaultIncludedBuildFactory +instanceKlass org/gradle/internal/buildtree/NestedBuildTree +instanceKlass org/gradle/internal/build/StandAloneNestedBuild +instanceKlass org/gradle/internal/build/NestedBuildState +instanceKlass org/gradle/internal/build/RootBuildState +instanceKlass org/gradle/internal/build/BuildActionTarget +instanceKlass org/gradle/internal/build/CompositeBuildParticipantBuildState +instanceKlass org/gradle/composite/internal/DefaultLocalComponentInAnotherBuildProvider +instanceKlass org/gradle/api/internal/artifacts/ivyservice/projectmodule/LocalComponentInAnotherBuildProvider +instanceKlass org/gradle/internal/build/IncludedBuildFactory +instanceKlass org/gradle/composite/internal/BuildStateFactory +instanceKlass org/gradle/api/internal/composite/CompositeBuildContext +instanceKlass org/gradle/api/internal/artifacts/ivyservice/dependencysubstitution/DependencySubstitutionRules +instanceKlass org/gradle/composite/internal/CompositeBuildServices$CompositeBuildTreeScopeServices +instanceKlass org/gradle/api/internal/tasks/compile/processing/AnnotationProcessorDetector +instanceKlass org/gradle/language/java/internal/JavaLanguagePluginServiceRegistry$1 +instanceKlass org/gradle/util/internal/BuildCommencedTimeProvider +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/StartParameterResolutionOverride +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/store/ResolutionResultsStoreFactory +instanceKlass org/gradle/api/internal/artifacts/DependencyManagementBuildTreeScopeServices +instanceKlass org/gradle/caching/internal/controller/RootBuildCacheControllerRef +instanceKlass org/gradle/caching/internal/BuildCacheServices$1 +instanceKlass org/gradle/internal/enterprise/core/GradleEnterprisePluginManager +instanceKlass org/gradle/internal/build/BuildStateRegistry +instanceKlass org/gradle/internal/buildtree/BuildTreeActionExecutor +instanceKlass org/gradle/tooling/internal/provider/LauncherServices$ToolingBuildTreeScopeServices +instanceKlass org/gradle/api/internal/project/DefaultProjectStateRegistry +instanceKlass org/gradle/api/internal/project/ProjectStateRegistry +instanceKlass org/gradle/problems/buildtree/ProblemReporter +instanceKlass org/gradle/api/internal/provider/ConfigurationTimeBarrier +instanceKlass org/gradle/internal/buildtree/BuildTreeScopeServices +instanceKlass org/gradle/internal/buildtree/BuildTreeState +instanceKlass org/gradle/configurationcache/DefaultBuildTreeModelControllerServices$servicesForBuildTree$1 +instanceKlass org/gradle/internal/buildtree/BuildTreeModelControllerServices$Supplier +instanceKlass org/gradle/internal/buildtree/BuildModelParameters +instanceKlass org/gradle/internal/buildtree/RunTasksRequirements +instanceKlass org/gradle/initialization/layout/BuildLayoutConfiguration +instanceKlass org/gradle/internal/logging/sink/ProgressLogEventGenerator$Operation +instanceKlass org/gradle/internal/logging/progress/DefaultProgressLoggerFactory$ProgressLoggerImpl +instanceKlass org/gradle/internal/operations/notify/BuildOperationNotificationBridge$Started +instanceKlass org/gradle/api/internal/tasks/RegisterTaskBuildOperationType$Details +instanceKlass org/gradle/api/internal/tasks/RealizeTaskBuildOperationType$Details +instanceKlass org/gradle/api/internal/ExecuteDomainObjectCollectionCallbackBuildOperationType$Details +instanceKlass org/gradle/configuration/internal/ExecuteListenerBuildOperationType$Details +instanceKlass org/gradle/configuration/ApplyScriptPluginBuildOperationType$Details +instanceKlass org/gradle/api/internal/plugins/ApplyPluginBuildOperationType$Details +instanceKlass org/gradle/internal/operations/OperationStartEvent +instanceKlass org/gradle/internal/operations/DefaultBuildOperationRunner$DefaultBuildOperationContext +instanceKlass org/gradle/internal/operations/DefaultBuildOperationExecutor$ListenerAdapter +instanceKlass org/gradle/internal/operations/DefaultBuildOperationRunner$BuildOperationTrackingListener +instanceKlass org/gradle/internal/operations/BuildOperationState +instanceKlass org/gradle/internal/operations/OperationIdentifier +instanceKlass org/gradle/internal/operations/DefaultBuildOperationRunner$2 +instanceKlass org/gradle/internal/operations/BuildOperationMetadata$1 +instanceKlass org/gradle/internal/operations/BuildOperationDescriptor$Builder +instanceKlass org/gradle/internal/operations/BuildOperationDescriptor +instanceKlass org/gradle/internal/operations/DefaultBuildOperationRunner$CallableBuildOperationWorker +instanceKlass org/gradle/launcher/exec/RunAsBuildOperationBuildActionExecutor$3 +instanceKlass org/gradle/internal/operations/notify/BuildOperationProgressNotification +instanceKlass org/gradle/internal/operations/notify/BuildOperationFinishedNotification +instanceKlass org/gradle/internal/operations/notify/BuildOperationStartedNotification +instanceKlass org/gradle/internal/operations/notify/BuildOperationNotificationBridge$Adapter +instanceKlass org/gradle/internal/operations/notify/BuildOperationNotificationBridge$RecordingListener +instanceKlass org/gradle/internal/operations/notify/BuildOperationNotificationBridge$ReplayAndAttachListener +instanceKlass org/gradle/internal/operations/notify/BuildOperationNotificationListener +instanceKlass org/gradle/internal/operations/notify/BuildOperationNotificationBridge$State +instanceKlass org/gradle/internal/resources/DefaultResourceLockCoordinationService$AcquireLocks +instanceKlass org/gradle/internal/resources/DefaultResourceLockCoordinationService$2 +instanceKlass org/gradle/internal/resources/DefaultResourceLockCoordinationService$DefaultResourceLockState +instanceKlass org/gradle/internal/resources/ResourceLockState +instanceKlass org/gradle/internal/work/DefaultWorkerLeaseService$3 +instanceKlass com/google/common/collect/Iterables +instanceKlass com/google/common/util/concurrent/AbstractFuture$Failure +instanceKlass com/google/common/util/concurrent/AbstractFuture$Cancellation +instanceKlass com/google/common/util/concurrent/AbstractFuture$SetFuture +instanceKlass com/google/common/util/concurrent/Uninterruptibles +instanceKlass com/google/common/base/CommonPattern +instanceKlass com/google/common/base/Platform$JdkPatternCompiler +instanceKlass com/google/common/base/PatternCompiler +instanceKlass com/google/common/base/Platform +instanceKlass com/google/common/base/Stopwatch +instanceKlass com/google/common/util/concurrent/AbstractFuture$Waiter +instanceKlass com/google/common/util/concurrent/AbstractFuture$Listener +instanceKlass com/google/common/util/concurrent/AbstractFuture$UnsafeAtomicHelper$1 +instanceKlass sun/misc/Unsafe +instanceKlass com/google/common/util/concurrent/AbstractFuture$AtomicHelper +instanceKlass com/google/common/util/concurrent/internal/InternalFutureFailureAccess +instanceKlass com/google/common/util/concurrent/AbstractFuture$Trusted +instanceKlass com/google/common/util/concurrent/ListenableFuture +instanceKlass org/gradle/internal/resources/AbstractResourceLockRegistry$1 +instanceKlass org/gradle/internal/work/DefaultWorkerLeaseService$WorkerLeaseLockRegistry$1 +instanceKlass org/gradle/internal/resources/AbstractResourceLockRegistry$ThreadLockDetails +instanceKlass org/gradle/launcher/exec/RunAsWorkerThreadBuildActionExecutor$$Lambda$93 +instanceKlass org/gradle/internal/buildtree/BuildActionRunner$Result +instanceKlass org/gradle/workers/internal/ExecuteWorkItemBuildOperationType$Details +instanceKlass org/gradle/api/internal/artifacts/transform/ExecuteScheduledTransformationStepBuildOperationDetails +instanceKlass org/gradle/api/internal/artifacts/transform/ExecuteScheduledTransformationStepBuildOperationType$Details +instanceKlass org/gradle/api/internal/tasks/execution/ExecuteTaskBuildOperationDetails +instanceKlass org/gradle/internal/operations/trace/CustomOperationTraceSerialization +instanceKlass org/gradle/api/internal/tasks/execution/ExecuteTaskBuildOperationType$Details +instanceKlass org/gradle/configuration/project/ConfigureProjectBuildOperationType$Details +instanceKlass org/gradle/api/internal/tasks/testing/operations/ExecuteTestBuildOperationType$Details +instanceKlass org/gradle/internal/resource/ExternalResourceReadBuildOperationType$Details +instanceKlass org/gradle/tooling/internal/provider/runner/ClientBuildEventGenerator$Mapper +instanceKlass org/gradle/tooling/internal/provider/runner/ClientBuildEventGenerator$Operation +instanceKlass org/gradle/tooling/internal/provider/runner/ClientBuildEventGenerator +instanceKlass org/gradle/tooling/internal/protocol/events/InternalWorkItemDescriptor +instanceKlass org/gradle/tooling/internal/provider/runner/WorkItemOperationMapper +instanceKlass org/gradle/tooling/internal/protocol/events/InternalProjectConfigurationDescriptor +instanceKlass org/gradle/tooling/internal/protocol/events/InternalProjectConfigurationResult +instanceKlass org/gradle/tooling/internal/provider/runner/ProjectConfigurationOperationMapper +instanceKlass org/gradle/tooling/internal/protocol/events/InternalTestFailureResult +instanceKlass org/gradle/tooling/internal/protocol/events/InternalTestSkippedResult +instanceKlass org/gradle/tooling/internal/protocol/events/InternalTestSuccessResult +instanceKlass org/gradle/tooling/internal/protocol/events/InternalTestResult +instanceKlass org/gradle/tooling/internal/provider/runner/TestOperationMapper +instanceKlass org/gradle/tooling/internal/protocol/events/InternalFileDownloadResult +instanceKlass org/gradle/tooling/internal/protocol/events/InternalFileDownloadDescriptor +instanceKlass org/gradle/tooling/internal/provider/runner/FileDownloadOperationMapper +instanceKlass org/gradle/tooling/internal/provider/runner/TaskOperationMapper$PostProcessors +instanceKlass org/gradle/tooling/internal/protocol/events/InternalTaskFailureResult +instanceKlass org/gradle/tooling/internal/protocol/events/InternalFailureResult +instanceKlass org/gradle/tooling/internal/protocol/events/InternalTaskSkippedResult +instanceKlass org/gradle/tooling/internal/provider/runner/TaskOperationMapper +instanceKlass org/gradle/tooling/internal/protocol/events/InternalJavaCompileTaskOperationResult$InternalAnnotationProcessorResult +instanceKlass org/gradle/tooling/internal/protocol/events/InternalTaskCachedResult +instanceKlass org/gradle/tooling/internal/protocol/events/InternalTaskSuccessResult +instanceKlass org/gradle/tooling/internal/protocol/events/InternalSuccessResult +instanceKlass org/gradle/tooling/internal/protocol/events/InternalJavaCompileTaskOperationResult +instanceKlass org/gradle/internal/build/event/types/AbstractResult +instanceKlass org/gradle/tooling/internal/protocol/events/InternalIncrementalTaskResult +instanceKlass org/gradle/tooling/internal/protocol/events/InternalTaskResult +instanceKlass org/gradle/tooling/internal/protocol/events/InternalOperationResult +instanceKlass org/gradle/api/internal/tasks/compile/tooling/JavaCompileTaskSuccessResultPostProcessor +instanceKlass org/gradle/internal/build/event/OperationResultPostProcessor +instanceKlass org/gradle/tooling/internal/protocol/events/InternalOperationFinishedProgressEvent +instanceKlass org/gradle/tooling/internal/protocol/events/InternalOperationStartedProgressEvent +instanceKlass org/gradle/tooling/internal/protocol/events/InternalProgressEvent +instanceKlass org/gradle/tooling/internal/protocol/events/InternalTransformDescriptor +instanceKlass org/gradle/internal/build/event/types/DefaultOperationDescriptor +instanceKlass org/gradle/execution/plan/SelfExecutingNode +instanceKlass org/gradle/execution/plan/Node +instanceKlass org/gradle/tooling/internal/protocol/events/InternalOperationDescriptor +instanceKlass org/gradle/tooling/internal/provider/runner/TransformOperationMapper +instanceKlass org/gradle/tooling/internal/provider/runner/BuildOperationMapper +instanceKlass org/gradle/tooling/internal/provider/runner/TaskOriginTracker +instanceKlass org/gradle/tooling/internal/provider/runner/ProjectConfigurationTracker +instanceKlass org/gradle/api/Task +instanceKlass org/gradle/api/plugins/ExtensionAware +instanceKlass org/gradle/tooling/internal/provider/runner/TestTaskExecutionTracker +instanceKlass org/gradle/tooling/internal/protocol/events/InternalBinaryPluginIdentifier +instanceKlass org/gradle/tooling/internal/protocol/events/InternalScriptPluginIdentifier +instanceKlass org/gradle/tooling/internal/protocol/events/InternalPluginIdentifier +instanceKlass org/gradle/tooling/internal/provider/runner/PluginApplicationTracker +instanceKlass org/gradle/tooling/internal/provider/runner/BuildOperationTracker +instanceKlass org/gradle/tooling/internal/provider/runner/OperationDependenciesResolver +instanceKlass org/gradle/tooling/internal/provider/runner/ProgressEventConsumer +instanceKlass org/gradle/internal/buildtree/BuildActionModelRequirements +instanceKlass org/gradle/launcher/exec/BuildTreeLifecycleBuildActionExecutor +instanceKlass org/gradle/launcher/exec/RunAsBuildOperationBuildActionExecutor$2 +instanceKlass org/gradle/launcher/exec/RunAsBuildOperationBuildActionExecutor$1 +instanceKlass org/gradle/launcher/exec/RunBuildBuildOperationType$Result +instanceKlass org/gradle/launcher/exec/RunBuildBuildOperationType$Details +instanceKlass org/gradle/launcher/exec/RunAsBuildOperationBuildActionExecutor +instanceKlass org/gradle/launcher/exec/RunAsWorkerThreadBuildActionExecutor +instanceKlass org/gradle/execution/CancellableOperationManager +instanceKlass org/gradle/internal/filewatch/FileWatcherEventListener +instanceKlass org/gradle/tooling/internal/provider/ContinuousBuildActionExecutor +instanceKlass org/gradle/tooling/internal/provider/SubscribableBuildActionExecutor +instanceKlass org/gradle/internal/scripts/ScriptingLanguages$1 +instanceKlass org/gradle/scripts/ScriptingLanguage +instanceKlass org/gradle/internal/scripts/ScriptingLanguages +instanceKlass org/gradle/BuildAdapter +instanceKlass org/gradle/internal/InternalBuildListener +instanceKlass org/gradle/internal/InternalListener +instanceKlass org/gradle/internal/operations/notify/BuildOperationNotificationBridge$1 +instanceKlass org/gradle/BuildListener +instanceKlass org/gradle/deployment/internal/DefaultDeploymentRegistry$PendingChanges +instanceKlass org/gradle/initialization/ContinuousExecutionGate$GateKeeper +instanceKlass org/gradle/initialization/DefaultContinuousExecutionGate +instanceKlass org/gradle/internal/operations/CallableBuildOperation +instanceKlass org/gradle/initialization/ContinuousExecutionGate +instanceKlass org/gradle/api/file/SourceDirectorySet +instanceKlass org/gradle/api/internal/model/DefaultObjectFactory +instanceKlass org/gradle/api/internal/model/NamedObjectInstantiator$$Lambda$92 +instanceKlass org/gradle/internal/state/Managed +instanceKlass com/google/common/base/ExtraObjectsMethodsForWeb +instanceKlass org/gradle/model/internal/inspect/ValidationProblemCollector +instanceKlass org/gradle/api/internal/MutationGuards$1 +instanceKlass org/gradle/api/internal/MutationGuard +instanceKlass org/gradle/api/internal/MutationGuards +instanceKlass org/gradle/api/internal/CollectionCallbackActionDecorator$1 +instanceKlass org/gradle/api/internal/collections/DefaultDomainObjectCollectionFactory +instanceKlass org/gradle/api/file/Directory +instanceKlass org/gradle/api/file/RegularFile +instanceKlass org/gradle/api/file/FileSystemLocation +instanceKlass org/gradle/api/internal/tasks/DefaultTaskDependencyFactory +instanceKlass org/gradle/api/internal/file/FileCollectionInternal$1 +instanceKlass org/gradle/api/file/FileVisitor +instanceKlass org/gradle/api/tasks/TaskDependency +instanceKlass org/gradle/api/internal/file/FileCollectionStructureVisitor +instanceKlass org/gradle/api/internal/file/FileCollectionInternal$Source +instanceKlass org/gradle/api/internal/file/AbstractFileCollection +instanceKlass org/gradle/api/internal/file/FileTreeInternal +instanceKlass org/gradle/api/internal/file/collections/MinimalFileTree +instanceKlass org/gradle/api/internal/file/collections/MinimalFileCollection +instanceKlass org/gradle/api/internal/file/DefaultFileCollectionFactory +instanceKlass org/gradle/internal/exceptions/DiagnosticsVisitor +instanceKlass org/gradle/internal/typeconversion/ErrorHandlingNotationParser +instanceKlass org/gradle/internal/typeconversion/NotationConvertResult +instanceKlass org/gradle/internal/typeconversion/NotationConverterToNotationParserAdapter +instanceKlass org/gradle/internal/typeconversion/TypeInfo +instanceKlass org/gradle/internal/typeconversion/NotationParserBuilder +instanceKlass org/gradle/api/internal/file/FileOrUriNotationConverter +instanceKlass org/gradle/api/internal/file/AbstractFileResolver +instanceKlass org/gradle/api/internal/provider/DefaultPropertyFactory +instanceKlass org/gradle/api/internal/provider/PropertyHost$$Lambda$91 +instanceKlass org/gradle/internal/state/ModelObject +instanceKlass org/gradle/api/internal/file/collections/DefaultDirectoryFileTreeFactory +instanceKlass org/gradle/api/tasks/util/internal/PatternSets$PatternSetFactory +instanceKlass org/gradle/api/tasks/util/internal/PatternSets +instanceKlass com/google/common/cache/LocalCache$AbstractReferenceEntry +instanceKlass org/gradle/cache/internal/HeapProportionalCacheSizer +instanceKlass org/gradle/internal/instantiation/generator/DefaultInstantiationScheme$DefaultDeserializationInstantiator +instanceKlass org/gradle/internal/instantiation/InstanceFactory +instanceKlass org/gradle/internal/instantiation/generator/DependencyInjectingInstantiator +instanceKlass javax/inject/Inject +instanceKlass org/gradle/internal/instantiation/DeserializationInstantiator +instanceKlass org/gradle/internal/instantiation/generator/DefaultInstantiationScheme +instanceKlass org/gradle/internal/instantiation/generator/ParamsMatchingConstructorSelector +instanceKlass org/gradle/internal/instantiation/generator/Jsr330ConstructorSelector +instanceKlass com/google/common/collect/ImmutableMultimap$Builder +instanceKlass com/google/common/collect/Multiset +instanceKlass org/gradle/internal/instantiation/generator/AbstractClassGenerator$$Lambda$90 +instanceKlass org/gradle/internal/instantiation/generator/AbstractClassGenerator$GeneratedClassImpl +instanceKlass org/gradle/internal/instantiation/generator/ClassGenerator$GeneratedClass +instanceKlass org/gradle/cache/internal/DefaultCrossBuildInMemoryCacheFactory$AbstractCrossBuildInMemoryCache +instanceKlass org/gradle/model/internal/asm/ClassGeneratorSuffixRegistry +instanceKlass org/gradle/api/DomainObjectSet +instanceKlass org/gradle/api/NamedDomainObjectContainer +instanceKlass org/gradle/util/Configurable +instanceKlass org/gradle/api/NamedDomainObjectSet +instanceKlass org/gradle/api/NamedDomainObjectCollection +instanceKlass org/gradle/api/DomainObjectCollection +instanceKlass org/gradle/api/file/DirectoryProperty +instanceKlass org/gradle/api/file/RegularFileProperty +instanceKlass org/gradle/api/file/FileSystemLocationProperty +instanceKlass org/gradle/api/provider/Property +instanceKlass org/gradle/api/provider/MapProperty +instanceKlass org/gradle/api/provider/SetProperty +instanceKlass org/gradle/api/provider/ListProperty +instanceKlass org/gradle/api/provider/HasMultipleValues +instanceKlass org/gradle/api/provider/Provider +instanceKlass org/gradle/api/file/ConfigurableFileTree +instanceKlass org/gradle/api/file/DirectoryTree +instanceKlass org/gradle/api/file/FileTree +instanceKlass org/gradle/api/file/ConfigurableFileCollection +instanceKlass org/gradle/api/provider/HasConfigurableValue +instanceKlass org/gradle/internal/instantiation/generator/AbstractClassGenerator$InstantiationStrategy +instanceKlass org/gradle/internal/instantiation/generator/AbstractClassGenerator$ClassInspectionVisitor +instanceKlass com/google/common/reflect/TypeCapture +instanceKlass org/gradle/internal/instantiation/generator/AbstractClassGenerator$UnclaimedPropertyHandler +instanceKlass com/google/common/collect/AbstractMultimap +instanceKlass org/gradle/internal/instantiation/generator/AbstractClassGenerator +instanceKlass org/gradle/internal/instantiation/generator/ClassGenerator +instanceKlass org/gradle/api/internal/tasks/properties/annotations/OutputPropertyRoleAnnotationHandler +instanceKlass org/gradle/internal/instantiation/generator/DefaultInstantiatorFactory$ClassGeneratorBackedManagedFactory +instanceKlass org/gradle/internal/instantiation/InstantiationScheme +instanceKlass org/gradle/internal/instantiation/generator/ConstructorSelector +instanceKlass org/gradle/internal/instantiation/generator/DefaultInstantiatorFactory +instanceKlass org/gradle/cache/internal/CrossBuildInMemoryCache +instanceKlass org/gradle/cache/internal/DefaultCrossBuildInMemoryCacheFactory +instanceKlass org/gradle/internal/filewatch/FileSystemChangeWaiter +instanceKlass org/gradle/internal/filewatch/DefaultFileSystemChangeWaiterFactory +instanceKlass org/gradle/internal/filewatch/DefaultFileWatcherFactory +instanceKlass org/gradle/api/execution/internal/TaskInputsListener +instanceKlass org/gradle/api/execution/internal/DefaultTaskInputsListeners +instanceKlass org/gradle/internal/operations/DefaultBuildOperationExecutor$$Lambda$89 +instanceKlass org/gradle/internal/operations/DefaultBuildOperationRunner$BuildOperationExecutionListenerFactory +instanceKlass org/gradle/internal/operations/DefaultBuildOperationExecutor$$Lambda$88 +instanceKlass org/gradle/internal/operations/DefaultBuildOperationRunner$TimeSupplier +instanceKlass org/gradle/internal/operations/DefaultBuildOperationRunner$1 +instanceKlass org/gradle/internal/operations/DefaultBuildOperationRunner$ReadableBuildOperationContext +instanceKlass org/gradle/internal/operations/BuildOperationContext +instanceKlass org/gradle/internal/operations/DefaultBuildOperationRunner$BuildOperationExecution +instanceKlass org/gradle/internal/operations/BuildOperation +instanceKlass org/gradle/internal/operations/BuildOperationWorker +instanceKlass org/gradle/internal/operations/DefaultBuildOperationRunner +instanceKlass org/gradle/internal/operations/BuildOperationQueue +instanceKlass org/gradle/internal/operations/DefaultBuildOperationQueueFactory +instanceKlass org/gradle/internal/operations/BuildOperationQueue$QueueWorker +instanceKlass org/gradle/internal/operations/BuildOperationRef +instanceKlass org/gradle/internal/operations/DefaultBuildOperationRunner$BuildOperationExecutionListener +instanceKlass org/gradle/internal/operations/DefaultBuildOperationExecutor +instanceKlass org/gradle/internal/resources/AbstractTrackedResourceLock +instanceKlass java/util/concurrent/atomic/AtomicReferenceArray +instanceKlass com/google/common/cache/LocalCache$LoadingValueReference +instanceKlass com/google/common/cache/RemovalListener +instanceKlass com/google/common/cache/Weigher +instanceKlass com/google/common/base/Equivalence +instanceKlass java/util/function/BiPredicate +instanceKlass com/google/common/base/MoreObjects +instanceKlass com/google/common/cache/LocalCache$1 +instanceKlass com/google/common/cache/ReferenceEntry +instanceKlass com/google/common/cache/CacheLoader +instanceKlass com/google/common/cache/LocalCache$LocalManualCache +instanceKlass com/google/common/cache/LocalCache$ValueReference +instanceKlass com/google/common/cache/CacheBuilder$2 +instanceKlass com/google/common/cache/CacheStats +instanceKlass com/google/common/base/Suppliers$SupplierOfInstance +instanceKlass com/google/common/base/Suppliers +instanceKlass com/google/common/cache/CacheBuilder$1 +instanceKlass com/google/common/cache/AbstractCache$StatsCounter +instanceKlass com/google/common/cache/LoadingCache +instanceKlass com/google/common/cache/Cache +instanceKlass com/google/common/base/Ticker +instanceKlass com/google/common/base/Supplier +instanceKlass com/google/common/cache/CacheBuilder +instanceKlass org/gradle/internal/resources/AbstractResourceLockRegistry$ResourceLockProducer +instanceKlass org/gradle/internal/resources/AbstractResourceLockRegistry +instanceKlass org/gradle/internal/resources/ResourceLockContainer +instanceKlass org/gradle/internal/resources/ResourceLockRegistry +instanceKlass org/gradle/internal/work/DefaultWorkerLeaseService$ProjectLockStatisticsImpl +instanceKlass org/gradle/internal/resources/ProjectLockStatistics +instanceKlass org/gradle/internal/work/DefaultWorkerLeaseService$Root +instanceKlass org/gradle/internal/resources/DefaultResourceLockCoordinationService +instanceKlass org/gradle/tooling/internal/provider/runner/ToolingApiBuildEventListenerFactory$1 +instanceKlass org/gradle/internal/operations/DefaultBuildOperationListenerManager$ProgressShieldingBuildOperationListener +instanceKlass org/gradle/internal/operations/DefaultBuildOperationAncestryTracker +instanceKlass org/gradle/internal/reflect/AnnotationCategory +instanceKlass org/gradle/language/java/internal/JavaLanguagePluginServiceRegistry$JavaGlobalScopeServices$$Lambda$87 +instanceKlass sun/invoke/util/VerifyAccess$1 +instanceKlass org/gradle/internal/session/BuildSessionLifecycleListener +instanceKlass org/gradle/internal/session/DefaultBuildSessionContext +instanceKlass org/gradle/internal/session/BuildSessionContext +instanceKlass org/gradle/internal/scopeids/PersistentScopeIdStoreFactory +instanceKlass org/gradle/internal/scopeids/ScopeIdsServices +instanceKlass com/google/common/collect/ListMultimap +instanceKlass org/gradle/internal/work/DefaultAsyncWorkTracker +instanceKlass org/gradle/internal/work/AsyncWorkTracker +instanceKlass org/gradle/internal/exceptions/FailureResolutionAware +instanceKlass org/gradle/internal/model/StateTransitionControllerFactory +instanceKlass org/gradle/internal/model/ValueCalculator +instanceKlass org/gradle/internal/model/CalculatedValueContainerFactory +instanceKlass org/gradle/plugin/use/internal/InjectedPluginClasspath +instanceKlass org/gradle/configurationcache/DefaultBuildTreeModelControllerServices +instanceKlass org/gradle/api/artifacts/ModuleIdentifier +instanceKlass org/gradle/vcs/internal/resolver/PersistentVcsMetadataCache +instanceKlass org/gradle/vcs/internal/VcsDirectoryLayout +instanceKlass org/gradle/vcs/internal/VersionControlRepositoryConnectionFactory +instanceKlass org/gradle/vcs/internal/services/VersionControlServices$VersionControlBuildSessionServices +instanceKlass org/gradle/nativeplatform/toolchain/internal/gcc/metadata/SystemLibraryDiscovery +instanceKlass org/gradle/nativeplatform/toolchain/internal/xcode/AbstractLocator +instanceKlass org/gradle/nativeplatform/toolchain/internal/msvcpp/WindowsKitInstall +instanceKlass org/gradle/platform/base/internal/toolchain/SearchResult +instanceKlass org/gradle/platform/base/internal/toolchain/ToolSearchResult +instanceKlass com/google/common/collect/SetMultimap +instanceKlass com/google/common/collect/Multimap +instanceKlass org/gradle/nativeplatform/toolchain/internal/msvcpp/AbstractWindowsKitComponentLocator +instanceKlass org/gradle/nativeplatform/toolchain/internal/msvcpp/UcrtLocator +instanceKlass org/gradle/nativeplatform/toolchain/internal/msvcpp/version/SystemPathVersionLocator +instanceKlass org/gradle/nativeplatform/toolchain/internal/msvcpp/version/AbstractVisualStudioVersionLocator +instanceKlass org/gradle/nativeplatform/toolchain/internal/msvcpp/VisualStudioLocator +instanceKlass org/gradle/nativeplatform/toolchain/internal/msvcpp/version/VisualCppMetadataProvider +instanceKlass org/gradle/nativeplatform/toolchain/internal/msvcpp/version/VswhereVersionLocator +instanceKlass org/gradle/nativeplatform/toolchain/internal/msvcpp/WindowsSdkLocator +instanceKlass org/gradle/nativeplatform/toolchain/internal/msvcpp/WindowsComponentLocator +instanceKlass org/gradle/nativeplatform/toolchain/internal/msvcpp/version/VisualStudioMetaDataProvider +instanceKlass org/gradle/nativeplatform/toolchain/internal/msvcpp/version/VisualStudioVersionLocator +instanceKlass org/gradle/nativeplatform/internal/services/NativeBinaryServices$BuildSessionScopeServices +instanceKlass org/gradle/composite/internal/CompositeBuildServices$CompositeBuildSessionScopeServices +instanceKlass org/gradle/api/tasks/testing/TestDescriptor +instanceKlass org/gradle/api/internal/tasks/testing/operations/TestListenerBuildOperationAdapter +instanceKlass org/gradle/api/internal/tasks/testing/results/TestListenerInternal +instanceKlass org/gradle/api/internal/tasks/testing/operations/TestExecutionBuildOperationBuildSessionScopeServices +instanceKlass org/gradle/api/internal/catalog/DependenciesAccessorsWorkspaceProvider +instanceKlass org/gradle/internal/execution/workspace/WorkspaceProvider +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/ComponentSelectionDescriptorFactory +instanceKlass org/gradle/api/internal/artifacts/DependencyManagementBuildSessionScopeServices +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/ArtifactVisitor +instanceKlass org/gradle/api/internal/file/FileCollectionInternal +instanceKlass org/gradle/api/internal/tasks/TaskDependencyContainer +instanceKlass org/gradle/api/file/FileCollection +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/ArtifactSetToFileCollectionFactory +instanceKlass org/gradle/workers/internal/WorkerExecutionQueueFactory +instanceKlass org/gradle/process/internal/worker/child/WorkerDirectoryProvider +instanceKlass org/gradle/internal/work/ConditionalExecutionQueueFactory +instanceKlass org/gradle/workers/internal/WorkersServices$BuildSessionScopeServices +instanceKlass org/gradle/internal/vfs/impl/DefaultFileSystemAccess +instanceKlass org/gradle/internal/fingerprint/impl/FileCollectionFingerprinterRegistrations +instanceKlass org/gradle/internal/execution/fingerprint/InputFingerprinter +instanceKlass org/gradle/internal/execution/OutputSnapshotter +instanceKlass org/gradle/internal/execution/fingerprint/FileCollectionFingerprinterRegistry +instanceKlass org/gradle/internal/service/scopes/VirtualFileSystemServices$BuildSessionServices +instanceKlass org/gradle/internal/build/BuildLayoutValidator +instanceKlass org/gradle/internal/buildtree/BuildTreeModelControllerServices +instanceKlass org/gradle/internal/session/BuildSessionActionExecutor +instanceKlass org/gradle/tooling/internal/provider/LauncherServices$ToolingBuildSessionScopeServices +instanceKlass org/gradle/internal/service/DefaultServiceRegistry$CollectionService +instanceKlass org/gradle/internal/service/DefaultServiceRegistry$CollectingVisitor +instanceKlass sun/reflect/generics/tree/VoidDescriptor +instanceKlass org/gradle/internal/snapshot/impl/ValueSnapshotterSerializerRegistry +instanceKlass org/gradle/internal/buildevents/BuildStartedTime +instanceKlass org/gradle/api/internal/FeaturePreviews +instanceKlass org/gradle/api/internal/attributes/DefaultImmutableAttributesFactory +instanceKlass org/gradle/api/internal/attributes/ImmutableAttributesFactory +instanceKlass org/gradle/internal/session/BuildSessionScopeServices$CrossBuildFileHashCacheWrapper +instanceKlass org/gradle/cache/internal/CleanupActionFactory +instanceKlass org/gradle/initialization/layout/ProjectCacheDir +instanceKlass org/gradle/deployment/internal/DefaultDeploymentRegistry +instanceKlass org/gradle/internal/filewatch/PendingChangesListener +instanceKlass org/gradle/deployment/internal/DeploymentRegistryInternal +instanceKlass org/gradle/deployment/internal/DeploymentRegistry +instanceKlass org/gradle/internal/filewatch/PendingChangesManager +instanceKlass org/gradle/initialization/SettingsLocation +instanceKlass org/gradle/internal/scopeids/id/ScopeId +instanceKlass org/gradle/internal/scopeids/PersistentScopeIdLoader +instanceKlass org/gradle/api/internal/tasks/userinput/UserInputReader +instanceKlass org/gradle/api/internal/tasks/userinput/UserInputHandler +instanceKlass org/gradle/internal/hash/ChecksumService +instanceKlass org/gradle/cache/scopes/BuildTreeScopedCache +instanceKlass org/gradle/api/internal/project/CrossProjectConfigurator +instanceKlass org/gradle/internal/snapshot/ValueSnapshotter +instanceKlass org/gradle/internal/service/scopes/WorkerSharedBuildSessionScopeServices +instanceKlass org/gradle/internal/service/scopes/DefaultGradleUserHomeScopeServiceRegistry$Services +instanceKlass org/gradle/api/internal/tasks/compile/incremental/cache/UserHomeScopedCompileCaches +instanceKlass org/gradle/api/internal/tasks/compile/incremental/cache/GeneralCompileCaches +instanceKlass org/gradle/api/internal/tasks/CompileServices$UserHomeScopeServices +instanceKlass org/gradle/kotlin/dsl/provider/plugins/DefaultKotlinScriptBasePluginsApplicator +instanceKlass org/gradle/kotlin/dsl/provider/KotlinScriptBasePluginsApplicator +instanceKlass org/gradle/kotlin/dsl/provider/plugins/precompiled/DefaultPrecompiledScriptPluginsSupport +instanceKlass org/gradle/kotlin/dsl/provider/PrecompiledScriptPluginsSupport +instanceKlass org/gradle/kotlin/dsl/provider/plugins/DefaultProjectSchemaProvider +instanceKlass org/gradle/kotlin/dsl/accessors/ProjectSchemaProvider +instanceKlass org/gradle/kotlin/dsl/provider/plugins/GradleUserHomeServices +instanceKlass org/gradle/api/internal/artifacts/transform/ImmutableTransformationWorkspaceServices +instanceKlass org/gradle/api/internal/artifacts/transform/TransformationWorkspaceServices +instanceKlass org/gradle/api/internal/artifacts/ivyservice/DefaultArtifactCaches$WritableArtifactCacheLockingParameters +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ArtifactCachesProvider +instanceKlass org/gradle/internal/execution/history/ExecutionHistoryStore +instanceKlass org/gradle/internal/execution/history/ExecutionHistoryCacheAccess +instanceKlass org/gradle/api/internal/artifacts/DependencyManagementGradleUserHomeScopeServices +instanceKlass org/gradle/workers/internal/ClassLoaderStructureProvider +instanceKlass org/gradle/workers/internal/WorkerDaemonClientsManager +instanceKlass org/gradle/workers/internal/ActionExecutionSpecFactory +instanceKlass org/gradle/workers/internal/WorkersServices$GradleUserHomeServices +instanceKlass org/gradle/kotlin/dsl/provider/KotlinScriptClassloadingCache +instanceKlass org/gradle/kotlin/dsl/provider/GradleUserHomeServices +instanceKlass org/gradle/kotlin/dsl/support/EmbeddedKotlinProvider +instanceKlass org/gradle/kotlin/dsl/support/GradleUserHomeServices +instanceKlass org/gradle/kotlin/dsl/cache/KotlinDslWorkspaceProvider +instanceKlass org/gradle/kotlin/dsl/cache/GradleUserHomeServices +instanceKlass org/gradle/internal/build/BuildState +instanceKlass org/gradle/internal/watch/registry/FileWatcherRegistryFactory +instanceKlass org/gradle/internal/vfs/impl/VfsRootReference +instanceKlass org/gradle/internal/watch/vfs/impl/LocationsWrittenByCurrentBuild +instanceKlass org/gradle/internal/vfs/FileSystemAccess$WriteListener +instanceKlass org/gradle/api/internal/changedetection/state/CrossBuildFileHashCache +instanceKlass org/gradle/internal/watch/vfs/WatchableFileSystemDetector +instanceKlass org/gradle/internal/fingerprint/GenericFileTreeSnapshotter +instanceKlass org/gradle/internal/hash/FileHasher +instanceKlass org/gradle/internal/fingerprint/classpath/ClasspathFingerprinter +instanceKlass org/gradle/internal/execution/fingerprint/FileCollectionFingerprinter +instanceKlass org/gradle/internal/execution/fingerprint/FileCollectionSnapshotter +instanceKlass org/gradle/internal/watch/vfs/BuildLifecycleAwareVirtualFileSystem +instanceKlass org/gradle/internal/vfs/VirtualFileSystem +instanceKlass org/gradle/api/internal/changedetection/state/ResourceSnapshotterCacheService +instanceKlass org/gradle/internal/service/scopes/VirtualFileSystemServices$GradleUserHomeServices +instanceKlass org/gradle/tooling/internal/provider/serialization/PayloadSerializer +instanceKlass org/gradle/tooling/internal/provider/serialization/PayloadClassLoaderFactory +instanceKlass org/gradle/tooling/internal/provider/serialization/PayloadClassLoaderRegistry +instanceKlass org/gradle/tooling/internal/provider/LauncherServices$ToolingGradleUserHomeScopeServices +instanceKlass org/gradle/internal/service/DefaultServiceRegistry$InstanceUnpackingVisitor +instanceKlass org/gradle/internal/classpath/ClasspathFileTransformer +instanceKlass org/gradle/internal/classpath/CachedClasspathTransformer$Transform +instanceKlass org/gradle/internal/classpath/DefaultCachedClasspathTransformer +instanceKlass org/gradle/internal/classpath/CachedClasspathTransformer +instanceKlass org/gradle/api/internal/changedetection/state/FileTimeStampInspector +instanceKlass org/gradle/initialization/RootBuildLifecycleListener +instanceKlass org/gradle/cache/CleanupAction +instanceKlass org/gradle/cache/internal/FilesFinder +instanceKlass org/gradle/internal/file/FileAccessTracker +instanceKlass org/gradle/internal/classpath/DefaultClasspathTransformerCacheFactory +instanceKlass org/gradle/internal/classpath/ClasspathTransformerCacheFactory +instanceKlass org/gradle/internal/classpath/ClasspathBuilder$EntryBuilder +instanceKlass org/gradle/internal/classpath/ClasspathBuilder +instanceKlass org/gradle/internal/classpath/ClasspathEntryVisitor$Entry +instanceKlass org/gradle/internal/classpath/ClasspathWalker +instanceKlass org/gradle/cache/internal/DirectoryCleanupAction +instanceKlass org/gradle/cache/CleanupProgressMonitor +instanceKlass org/gradle/cache/internal/GradleUserHomeCleanupService +instanceKlass org/gradle/cache/internal/VersionSpecificCacheDirectoryScanner +instanceKlass org/gradle/cache/internal/UsedGradleVersionsFromGradleUserHomeCaches +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$BMH +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/internal/service/scopes/WorkerSharedGlobalScopeServices$$Lambda$86 +instanceKlass org/gradle/internal/service/scopes/WorkerSharedGlobalScopeServices$$Lambda$85 +instanceKlass java/util/function/LongSupplier +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/internal/file/impl/DefaultDeleter +instanceKlass org/gradle/cache/internal/scopes/DefaultCacheScopeMapping +instanceKlass org/gradle/cache/CacheBuilder +instanceKlass org/gradle/cache/internal/DefaultCacheRepository +instanceKlass org/gradle/cache/internal/ReferencablePersistentCache +instanceKlass org/gradle/cache/PersistentCache +instanceKlass org/gradle/cache/CleanableStore +instanceKlass org/gradle/cache/CacheAccess +instanceKlass org/gradle/cache/internal/DefaultCacheFactory +instanceKlass org/gradle/internal/logging/services/ProgressLoggingBridge +instanceKlass org/gradle/internal/logging/progress/ProgressLogger +instanceKlass org/gradle/internal/logging/progress/DefaultProgressLoggerFactory +instanceKlass org/gradle/internal/operations/DefaultBuildOperationIdFactory +instanceKlass org/gradle/internal/service/scopes/DefaultGradleUserHomeScopeServiceRegistry$1$$Lambda$84 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/cache/internal/UsedGradleVersions +instanceKlass org/gradle/cache/internal/GradleUserHomeCleanupServices +instanceKlass org/gradle/cache/internal/DefaultGeneratedGradleJarCache +instanceKlass org/gradle/cache/internal/GeneratedGradleJarCache +instanceKlass org/gradle/internal/vfs/FileSystemAccess +instanceKlass org/gradle/initialization/ClassLoaderScopeRegistryListenerManager +instanceKlass org/gradle/groovy/scripts/internal/CrossBuildInMemoryCachingScriptClassCache +instanceKlass org/gradle/cache/internal/scopes/AbstractScopedCache +instanceKlass org/gradle/cache/scopes/GlobalScopedCache +instanceKlass org/gradle/initialization/layout/GlobalCacheDir +instanceKlass org/gradle/internal/classloader/ClasspathHasher +instanceKlass org/gradle/internal/jvm/JavaModuleDetector +instanceKlass org/gradle/process/internal/worker/child/WorkerProcessClassPathProvider +instanceKlass org/gradle/internal/service/scopes/DefaultGradleUserHomeScopeServiceRegistry$1 +instanceKlass org/gradle/internal/session/BuildSessionState +instanceKlass org/gradle/internal/operations/trace/SerializedOperation +instanceKlass org/gradle/internal/operations/trace/BuildOperationTrace$1 +instanceKlass org/gradle/internal/operations/DefaultBuildOperationListenerManager$1 +instanceKlass org/gradle/internal/operations/DefaultBuildOperationListenerManager +instanceKlass org/gradle/internal/work/WorkerLeaseRegistry$WorkerLeaseCompletion +instanceKlass org/gradle/internal/work/DefaultWorkerLeaseService$LeaseHolder +instanceKlass org/gradle/internal/work/WorkerLeaseRegistry$WorkerLease +instanceKlass org/gradle/internal/resources/ResourceLock +instanceKlass org/gradle/internal/work/Synchronizer +instanceKlass org/gradle/internal/work/DefaultWorkerLeaseService +instanceKlass org/gradle/internal/operations/notify/BuildOperationNotificationValve +instanceKlass org/gradle/internal/operations/notify/BuildOperationNotificationBridge +instanceKlass org/gradle/internal/operations/notify/BuildOperationNotificationListenerRegistrar +instanceKlass org/gradle/internal/operations/logging/LoggingBuildOperationProgressBroadcaster +instanceKlass org/gradle/internal/work/WorkerLeaseService +instanceKlass org/gradle/internal/work/WorkerThreadRegistry +instanceKlass org/gradle/internal/resources/ProjectLeaseRegistry +instanceKlass org/gradle/internal/work/WorkerLeaseRegistry +instanceKlass org/gradle/internal/operations/trace/BuildOperationTrace +instanceKlass org/gradle/configuration/internal/ListenerBuildOperationDecorator +instanceKlass org/gradle/api/internal/CollectionCallbackActionDecorator +instanceKlass org/gradle/internal/operations/BuildOperationExecutor +instanceKlass org/gradle/internal/operations/BuildOperationRunner +instanceKlass org/gradle/internal/operations/BuildOperationQueueFactory +instanceKlass org/gradle/configuration/internal/UserCodeApplicationContext +instanceKlass org/gradle/internal/session/CrossBuildSessionState$Services +instanceKlass org/gradle/internal/service/ServiceRegistryBuilder +instanceKlass org/gradle/internal/session/CrossBuildSessionState +instanceKlass org/gradle/tooling/internal/provider/BuildSessionLifecycleBuildActionExecuter$ActionImpl +instanceKlass org/gradle/tooling/internal/protocol/ModelIdentifier +instanceKlass org/gradle/tooling/internal/protocol/InternalProtocolInterface +instanceKlass org/gradle/internal/logging/sink/OutputEventRenderer$3 +instanceKlass org/gradle/internal/logging/sink/ProgressLogEventGenerator +instanceKlass org/gradle/internal/logging/console/BuildLogLevelFilterRenderer +instanceKlass org/gradle/launcher/daemon/server/exec/ExecuteBuild$1 +instanceKlass org/gradle/initialization/DefaultBuildRequestMetaData +instanceKlass org/gradle/initialization/DefaultBuildRequestContext +instanceKlass org/gradle/launcher/daemon/server/exec/DaemonConnectionBackedEventConsumer +instanceKlass org/gradle/launcher/daemon/server/exec/WatchForDisconnection$1 +instanceKlass org/gradle/internal/featurelifecycle/LoggingIncubatingFeatureHandler +instanceKlass org/gradle/util/internal/IncubationLogger +instanceKlass org/gradle/internal/featurelifecycle/FeatureUsage +instanceKlass org/gradle/internal/featurelifecycle/UsageLocationReporter +instanceKlass org/gradle/internal/featurelifecycle/LoggingDeprecatedFeatureHandler +instanceKlass org/gradle/internal/featurelifecycle/FeatureHandler +instanceKlass org/gradle/internal/deprecation/DeprecationMessageBuilder +instanceKlass org/gradle/internal/deprecation/DeprecationLogger +instanceKlass org/gradle/launcher/daemon/server/exec/ForwardClientInput$2 +instanceKlass org/gradle/util/internal/StdinSwapper$2 +instanceKlass org/gradle/util/internal/StdinSwapper$1 +instanceKlass org/gradle/util/internal/Swapper +instanceKlass org/gradle/launcher/daemon/server/exec/ForwardClientInput$1 +instanceKlass java/math/MathContext +instanceKlass org/gradle/internal/util/NumberUtil +instanceKlass org/gradle/launcher/daemon/server/exec/LogToClient$AsynchronousLogDispatcher$1 +instanceKlass java/util/concurrent/CountDownLatch +instanceKlass jdk/internal/reflect/UnsafeFieldAccessorFactory +instanceKlass java/lang/reflect/AccessibleObject$$Lambda$83 +instanceKlass com/google/common/collect/AbstractIterator$1 +instanceKlass java/util/Collections$UnmodifiableMap$UnmodifiableEntrySet$UnmodifiableEntry +instanceKlass java/util/Collections$UnmodifiableMap$UnmodifiableEntrySet$1 +instanceKlass org/gradle/launcher/daemon/server/DaemonStateCoordinator$1 +instanceKlass org/gradle/launcher/daemon/registry/PersistentDaemonRegistry$5 +instanceKlass org/gradle/launcher/daemon/server/exec/StartBuildOrRespondWithBusy$1 +instanceKlass org/gradle/launcher/daemon/server/DefaultDaemonConnection$CommandQueue$1 +instanceKlass org/gradle/launcher/daemon/server/exec/HandleCancel$1 +instanceKlass com/google/common/collect/Platform +instanceKlass org/gradle/launcher/daemon/server/api/DaemonCommandExecution +instanceKlass java/lang/Long$LongCache +instanceKlass org/gradle/launcher/exec/DefaultBuildActionParameters +instanceKlass org/gradle/configuration/GradleLauncherMetaData +instanceKlass com/google/common/base/Converter +instanceKlass com/google/common/collect/Maps$EntryTransformer +instanceKlass com/google/common/collect/SortedMapDifference +instanceKlass com/google/common/collect/MapDifference +instanceKlass com/google/common/collect/Maps +instanceKlass java/util/AbstractMap$SimpleImmutableEntry +instanceKlass com/google/common/collect/AbstractMapEntry +instanceKlass com/google/common/collect/ImmutableMap$Builder +instanceKlass com/google/common/collect/BiMap +instanceKlass com/google/common/collect/ImmutableMap +instanceKlass org/gradle/internal/DefaultTaskExecutionRequest +instanceKlass org/gradle/TaskExecutionRequest +instanceKlass com/google/common/collect/CollectPreconditions +instanceKlass org/gradle/internal/buildoption/BuildOption$Value +instanceKlass org/gradle/internal/concurrent/DefaultParallelismConfiguration +instanceKlass org/gradle/internal/logging/DefaultLoggingConfiguration +instanceKlass org/gradle/initialization/BuildLayoutParameters +instanceKlass java/nio/channels/spi/AbstractSelector$1 +instanceKlass sun/nio/ch/WindowsSelectorImpl$MapEntry +instanceKlass org/gradle/launcher/daemon/server/DefaultDaemonConnection$1 +instanceKlass org/gradle/launcher/daemon/server/DefaultDaemonConnection$ReceiveQueue +instanceKlass org/gradle/launcher/daemon/server/DefaultDaemonConnection$DisconnectQueue +instanceKlass org/gradle/launcher/daemon/server/DefaultDaemonConnection$CommandQueue +instanceKlass org/gradle/launcher/daemon/server/DefaultDaemonConnection +instanceKlass org/gradle/launcher/daemon/server/api/DaemonConnection +instanceKlass org/gradle/launcher/daemon/server/DefaultIncomingConnectionHandler$ConnectionWorker +instanceKlass org/gradle/launcher/daemon/server/SynchronizedDispatchConnection +instanceKlass org/gradle/internal/serialize/Serializers$StatefulSerializerAdapter$2 +instanceKlass org/gradle/internal/serialize/Serializers$StatefulSerializerAdapter$1 +instanceKlass org/gradle/internal/remote/internal/inet/SocketInetAddress$Serializer +instanceKlass org/gradle/internal/io/BufferCaster +instanceKlass java/lang/invoke/ConstantBootstraps +instanceKlass java/util/concurrent/atomic/AtomicReferenceFieldUpdater$AtomicReferenceFieldUpdaterImpl$1 +instanceKlass java/util/concurrent/atomic/AtomicReferenceFieldUpdater +instanceKlass sun/nio/ch/OptionKey +instanceKlass sun/nio/ch/SocketOptionRegistry$LazyInitialization +instanceKlass sun/nio/ch/SocketOptionRegistry$RegistryKey +instanceKlass sun/nio/ch/SocketOptionRegistry +instanceKlass java/util/stream/Collectors$$Lambda$82 +instanceKlass java/util/stream/Collectors$$Lambda$81 +instanceKlass java/util/stream/Collectors$$Lambda$80 +instanceKlass java/util/stream/Collectors$$Lambda$79 +instanceKlass sun/net/ext/ExtendedSocketOptions$$Lambda$78 +instanceKlass sun/nio/ch/ExtendedSocketOption$1 +instanceKlass sun/nio/ch/ExtendedSocketOption +instanceKlass sun/nio/ch/SocketChannelImpl$DefaultOptionsHolder +instanceKlass java/nio/BufferMismatch +instanceKlass sun/nio/ch/IOStatus +instanceKlass sun/nio/ch/Util$BufferCache +instanceKlass sun/nio/ch/PipeImpl$Initializer$LoopbackConnector +instanceKlass sun/nio/ch/PipeImpl$Initializer +instanceKlass java/nio/channels/Pipe +instanceKlass sun/nio/ch/NativeObject +instanceKlass sun/nio/ch/PollArrayWrapper +instanceKlass sun/nio/ch/WindowsSelectorImpl$FinishLock +instanceKlass sun/nio/ch/WindowsSelectorImpl$StartLock +instanceKlass sun/nio/ch/WindowsSelectorImpl$SubSelector +instanceKlass java/nio/channels/SelectionKey +instanceKlass sun/nio/ch/Util$2 +instanceKlass sun/nio/ch/Util +instanceKlass java/nio/channels/Selector +instanceKlass java/nio/DirectByteBuffer$Deallocator +instanceKlass org/gradle/internal/remote/internal/KryoBackedMessageSerializer +instanceKlass org/gradle/internal/remote/internal/inet/SocketConnection +instanceKlass org/gradle/internal/serialize/ObjectWriter +instanceKlass org/gradle/internal/serialize/ObjectReader +instanceKlass org/gradle/internal/serialize/Serializers$StatefulSerializerAdapter +instanceKlass org/gradle/internal/serialize/StatefulSerializer +instanceKlass org/gradle/internal/serialize/Serializers +instanceKlass org/gradle/internal/remote/internal/RemoteConnection +instanceKlass org/gradle/internal/remote/internal/Connection +instanceKlass org/gradle/internal/dispatch/Receive +instanceKlass org/gradle/internal/remote/internal/MessageSerializer +instanceKlass org/gradle/internal/remote/internal/inet/SocketConnectCompletion +instanceKlass org/gradle/internal/remote/internal/ConnectCompletion +instanceKlass java/net/Socket +instanceKlass org/gradle/launcher/daemon/server/DaemonStateCoordinator$2 +instanceKlass org/gradle/launcher/daemon/server/Daemon$DefaultDaemonExpirationListener +instanceKlass org/gradle/launcher/daemon/server/Daemon$DaemonExpirationPeriodicCheck +instanceKlass org/gradle/launcher/daemon/server/DaemonRegistryUnavailableExpirationStrategy +instanceKlass org/gradle/internal/event/DefaultListenerManager$ListenerDetails +instanceKlass org/gradle/launcher/daemon/server/health/LowMemoryDaemonExpirationStrategy +instanceKlass org/gradle/process/internal/health/memory/OsMemoryStatusListener +instanceKlass org/gradle/launcher/daemon/server/NotMostRecentlyUsedDaemonExpirationStrategy +instanceKlass com/google/common/base/Functions$ConstantFunction +instanceKlass com/google/common/base/Functions +instanceKlass org/gradle/launcher/daemon/server/DaemonIdleTimeoutExpirationStrategy +instanceKlass org/gradle/launcher/daemon/context/DaemonCompatibilitySpec +instanceKlass org/gradle/api/internal/specs/ExplainingSpec +instanceKlass org/gradle/launcher/daemon/server/CompatibleDaemonExpirationStrategy +instanceKlass org/gradle/launcher/daemon/server/expiry/AllDaemonExpirationStrategy +instanceKlass org/gradle/internal/stream/EncodedStream +instanceKlass org/gradle/launcher/daemon/bootstrap/DaemonStartupCommunication +instanceKlass org/gradle/cache/internal/DefaultFileLockManager$DefaultFileLock$3 +instanceKlass org/gradle/cache/internal/DefaultFileLockManager$DefaultFileLock$2 +instanceKlass org/gradle/cache/internal/DefaultFileLockManager$DefaultFileLock$1 +instanceKlass java/io/FileOutputStream$1 +instanceKlass org/gradle/internal/remote/internal/inet/SocketInetAddress +instanceKlass org/gradle/internal/serialize/AbstractEncoder +instanceKlass org/gradle/internal/serialize/FlushableEncoder +instanceKlass org/gradle/launcher/daemon/registry/DaemonRegistryContent$$Lambda$77 +instanceKlass org/gradle/launcher/daemon/registry/DaemonInfo$Serializer +instanceKlass org/gradle/cache/internal/filelock/LockInfo +instanceKlass org/gradle/cache/internal/DefaultFileLockManager$DefaultFileLock$$Lambda$76 +instanceKlass org/gradle/cache/internal/filelock/DefaultLockStateSerializer$SequenceNumberLockState +instanceKlass org/gradle/internal/io/IOQuery$Result +instanceKlass org/gradle/cache/internal/filelock/FileLockOutcome +instanceKlass org/gradle/cache/internal/DefaultFileLockManager$DefaultFileLock$4 +instanceKlass org/gradle/internal/io/ExponentialBackoff +instanceKlass org/gradle/cache/internal/DefaultFileLockManager$AwaitableFileLockReleasedSignal +instanceKlass org/gradle/cache/FileLockReleasedSignal +instanceKlass org/gradle/cache/internal/filelock/LockInfoSerializer +instanceKlass org/gradle/cache/internal/filelock/LockInfoAccess +instanceKlass org/gradle/cache/internal/filelock/LockStateAccess +instanceKlass org/gradle/cache/internal/filelock/LockFileAccess +instanceKlass org/gradle/cache/internal/filelock/LockState +instanceKlass org/gradle/cache/internal/filelock/DefaultLockStateSerializer +instanceKlass org/gradle/internal/io/IOQuery +instanceKlass org/gradle/cache/FileLock$State +instanceKlass org/gradle/cache/internal/filelock/LockStateSerializer +instanceKlass sun/net/ResourceManager +instanceKlass java/net/DatagramPacket +instanceKlass java/net/DatagramSocket$1 +instanceKlass java/net/AbstractPlainDatagramSocketImpl$1 +instanceKlass java/net/DatagramSocketImpl +instanceKlass java/net/DefaultDatagramSocketImplFactory +instanceKlass java/net/DatagramSocket +instanceKlass org/gradle/cache/internal/locklistener/FileLockCommunicator +instanceKlass org/gradle/cache/internal/filelock/LockOptionsBuilder +instanceKlass org/gradle/cache/internal/SimpleStateCache$1Updater +instanceKlass org/gradle/cache/internal/FileIntegrityViolationSuppressingPersistentStateCacheDecorator$1 +instanceKlass org/gradle/launcher/daemon/registry/PersistentDaemonRegistry$8 +instanceKlass org/gradle/launcher/daemon/registry/DaemonInfo +instanceKlass org/gradle/launcher/daemon/context/DaemonConnectDetails +instanceKlass sun/util/resources/provider/NonBaseLocaleDataMetaInfo +instanceKlass sun/util/locale/provider/JRELocaleProviderAdapter$$Lambda$75 +instanceKlass sun/util/locale/provider/BaseLocaleDataMetaInfo +instanceKlass sun/util/locale/provider/JRELocaleProviderAdapter$$Lambda$74 +instanceKlass sun/util/cldr/CLDRLocaleProviderAdapter$$Lambda$73 +instanceKlass sun/util/locale/provider/TimeZoneNameUtility$TimeZoneNameGetter +instanceKlass sun/util/locale/provider/TimeZoneNameUtility +instanceKlass org/gradle/internal/remote/internal/inet/TcpIncomingConnector$1 +instanceKlass org/gradle/internal/remote/internal/inet/TcpIncomingConnector$Receiver +instanceKlass org/gradle/internal/remote/internal/inet/MultiChoiceAddress +instanceKlass org/gradle/internal/remote/internal/inet/InetEndpoint +instanceKlass java/util/UUID$Holder +instanceKlass java/util/UUID +instanceKlass sun/net/NetHooks +instanceKlass java/net/InetSocketAddress$InetSocketAddressHolder +instanceKlass java/net/Inet4AddressImpl +instanceKlass org/gradle/internal/remote/internal/inet/InetAddresses +instanceKlass java/net/AbstractPlainSocketImpl$1 +instanceKlass java/net/StandardSocketOptions$StdSocketOption +instanceKlass java/net/StandardSocketOptions +instanceKlass java/net/SocketImpl +instanceKlass java/net/SocketOptions +instanceKlass java/net/SocksConsts +instanceKlass java/net/ServerSocket$2 +instanceKlass jdk/internal/access/JavaNetSocketAccess +instanceKlass java/net/ServerSocket +instanceKlass jdk/net/ExtendedSocketOptions$PlatformSocketOptions$1 +instanceKlass jdk/net/ExtendedSocketOptions$PlatformSocketOptions +instanceKlass jdk/net/SocketFlow +instanceKlass jdk/net/ExtendedSocketOptions$ExtSocketOption +instanceKlass java/net/SocketOption +instanceKlass jdk/net/ExtendedSocketOptions +instanceKlass sun/net/ext/ExtendedSocketOptions +instanceKlass sun/nio/ch/Net$1 +instanceKlass java/net/ProtocolFamily +instanceKlass sun/nio/ch/Net +instanceKlass sun/nio/ch/SelChImpl +instanceKlass sun/nio/ch/DefaultSelectorProvider +instanceKlass java/nio/channels/spi/SelectorProvider$1 +instanceKlass java/nio/channels/spi/SelectorProvider +instanceKlass java/nio/channels/NetworkChannel +instanceKlass org/gradle/launcher/daemon/server/DaemonTcpServerConnector$1 +instanceKlass org/gradle/launcher/daemon/server/Daemon$5 +instanceKlass org/gradle/launcher/daemon/server/DefaultIncomingConnectionHandler +instanceKlass org/gradle/initialization/DefaultBuildCancellationToken +instanceKlass java/util/concurrent/SynchronousQueue$TransferStack$SNode +instanceKlass java/util/concurrent/SynchronousQueue$Transferer +instanceKlass org/gradle/initialization/BuildCancellationToken +instanceKlass org/gradle/launcher/daemon/server/DaemonStateCoordinator +instanceKlass org/gradle/launcher/daemon/server/Daemon$4 +instanceKlass org/gradle/launcher/daemon/server/Daemon$3 +instanceKlass org/gradle/launcher/daemon/server/Daemon$2 +instanceKlass org/gradle/launcher/daemon/server/Daemon$1 +instanceKlass org/gradle/launcher/daemon/server/DaemonRegistryUpdater +instanceKlass sun/security/provider/AbstractDrbg$NonceProvider +instanceKlass sun/security/provider/AbstractDrbg$SeederHolder$$Lambda$72 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass sun/nio/fs/BasicFileAttributesHolder +instanceKlass sun/nio/fs/WindowsDirectoryStream$WindowsDirectoryIterator +instanceKlass sun/nio/fs/WindowsDirectoryStream +instanceKlass java/nio/file/DirectoryStream +instanceKlass java/nio/file/Files$AcceptAllFilter +instanceKlass java/nio/file/DirectoryStream$Filter +instanceKlass java/net/NetworkInterface$2 +instanceKlass java/net/DefaultInterface +instanceKlass java/net/Inet6Address$Inet6AddressHolder +instanceKlass java/net/InetAddress$PlatformNameService +instanceKlass java/net/InetAddress$NameService +instanceKlass java/net/Inet6AddressImpl +instanceKlass java/net/InetAddressImpl +instanceKlass java/net/InetAddressImplFactory +instanceKlass java/util/concurrent/ConcurrentSkipListMap$Node +instanceKlass java/util/concurrent/ConcurrentSkipListMap$Index +instanceKlass java/util/concurrent/ConcurrentNavigableMap +instanceKlass java/net/InetAddress$InetAddressHolder +instanceKlass java/net/InetAddress$2 +instanceKlass jdk/internal/access/JavaNetInetAddressAccess +instanceKlass java/net/InetAddress$1 +instanceKlass java/net/InetAddress +instanceKlass java/net/InterfaceAddress +instanceKlass java/net/NetworkInterface$1 +instanceKlass java/net/NetworkInterface +instanceKlass sun/nio/cs/StringUTF16 +instanceKlass sun/security/provider/ByteArrayAccess +instanceKlass sun/security/provider/SeedGenerator$1 +instanceKlass sun/security/util/MessageDigestSpi2 +instanceKlass sun/security/jca/GetInstance$Instance +instanceKlass sun/security/jca/GetInstance +instanceKlass java/security/MessageDigestSpi +instanceKlass sun/security/provider/SeedGenerator +instanceKlass sun/security/provider/AbstractDrbg$SeederHolder +instanceKlass java/security/DrbgParameters$NextBytes +instanceKlass sun/security/provider/AbstractDrbg$$Lambda$71 +instanceKlass sun/security/provider/EntropySource +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass sun/security/provider/AbstractDrbg +instanceKlass java/security/DrbgParameters$Instantiation +instanceKlass java/security/DrbgParameters +instanceKlass sun/security/provider/MoreDrbgParameters +instanceKlass sun/security/provider/DRBG$$Lambda$70 +instanceKlass java/security/SecureRandomSpi +instanceKlass java/security/SecureRandomParameters +instanceKlass java/security/Provider$UString +instanceKlass java/security/Provider$Service +instanceKlass sun/security/provider/NativePRNG$NonBlocking +instanceKlass sun/security/provider/NativePRNG$Blocking +instanceKlass sun/security/provider/NativePRNG +instanceKlass sun/security/provider/SunEntries$1 +instanceKlass sun/security/provider/SunEntries +instanceKlass sun/security/jca/ProviderList$2 +instanceKlass jdk/internal/math/FloatingDecimal$ASCIIToBinaryBuffer +instanceKlass jdk/internal/math/FloatingDecimal$PreparedASCIIToBinaryBuffer +instanceKlass jdk/internal/math/FloatingDecimal$ASCIIToBinaryConverter +instanceKlass jdk/internal/math/FloatingDecimal$BinaryToASCIIBuffer +instanceKlass jdk/internal/math/FloatingDecimal$ExceptionalBinaryToASCIIBuffer +instanceKlass jdk/internal/math/FloatingDecimal$BinaryToASCIIConverter +instanceKlass jdk/internal/math/FloatingDecimal +instanceKlass java/security/Provider$EngineDescription +instanceKlass java/security/Provider$ServiceKey +instanceKlass sun/security/jca/ProviderConfig +instanceKlass sun/security/jca/ProviderList +instanceKlass sun/security/jca/Providers +instanceKlass com/google/common/base/Joiner +instanceKlass org/gradle/launcher/daemon/server/exec/DaemonCommandExecuter +instanceKlass org/gradle/internal/remote/internal/inet/MultiChoiceAddressSerializer +instanceKlass org/gradle/launcher/daemon/registry/DaemonRegistryContent$Serializer +instanceKlass org/gradle/launcher/daemon/registry/DaemonRegistryContent +instanceKlass org/gradle/cache/LockOptions +instanceKlass org/gradle/cache/internal/AbstractFileAccess +instanceKlass org/gradle/internal/serialize/Encoder +instanceKlass org/gradle/cache/internal/SimpleStateCache +instanceKlass org/gradle/cache/internal/FileIntegrityViolationSuppressingPersistentStateCacheDecorator +instanceKlass org/gradle/cache/PersistentStateCache$UpdateAction +instanceKlass org/gradle/cache/PersistentStateCache +instanceKlass org/gradle/launcher/daemon/registry/PersistentDaemonRegistry +instanceKlass org/gradle/cache/internal/CacheAccessSerializer$$Lambda$69 +instanceKlass org/gradle/cache/Cache$$Lambda$68 +instanceKlass org/gradle/launcher/daemon/registry/DaemonRegistryServices$$Lambda$67 +instanceKlass org/gradle/internal/nativeintegration/filesystem/services/FallbackStat +instanceKlass org/gradle/internal/nativeintegration/filesystem/services/EmptyChmod +instanceKlass org/gradle/internal/nativeintegration/filesystem/jdk7/Jdk7Symlink +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass net/rubygrapefruit/platform/file/PosixFileInfo +instanceKlass org/gradle/internal/nativeintegration/services/NativeServices$BrokenService +instanceKlass org/gradle/internal/nativeintegration/filesystem/services/UnavailablePosixFiles +instanceKlass net/rubygrapefruit/platform/terminal/Terminals +instanceKlass org/gradle/api/internal/file/temp/GradleUserHomeTemporaryFileProvider$1 +instanceKlass org/gradle/internal/nativeintegration/services/NativeServices$2 +instanceKlass net/rubygrapefruit/platform/file/WindowsFileInfo +instanceKlass net/rubygrapefruit/platform/file/FileInfo +instanceKlass net/rubygrapefruit/platform/internal/DirList +instanceKlass net/rubygrapefruit/platform/internal/AbstractFiles +instanceKlass org/gradle/internal/nativeintegration/filesystem/services/NativePlatformBackedFileMetadataAccessor +instanceKlass java/util/Random +instanceKlass org/gradle/internal/id/RandomLongIdGenerator +instanceKlass org/gradle/cache/internal/DefaultProcessMetaDataProvider +instanceKlass org/gradle/internal/io/ExponentialBackoff$Signal +instanceKlass org/gradle/cache/FileLock +instanceKlass org/gradle/cache/FileAccess +instanceKlass org/gradle/cache/internal/DefaultFileLockManager +instanceKlass org/gradle/internal/remote/ConnectionAcceptor +instanceKlass org/gradle/internal/remote/Address +instanceKlass java/net/SocketAddress +instanceKlass org/gradle/internal/remote/internal/inet/TcpIncomingConnector +instanceKlass org/gradle/launcher/daemon/protocol/DaemonMessageSerializer$OutputMessageSerializer +instanceKlass org/gradle/internal/logging/serializer/LogLevelChangeEventSerializer +instanceKlass org/gradle/internal/logging/serializer/ProgressEventSerializer +instanceKlass org/gradle/internal/logging/serializer/ProgressCompleteEventSerializer +instanceKlass org/gradle/internal/operations/BuildOperationMetadata +instanceKlass org/gradle/internal/logging/serializer/ProgressStartEventSerializer +instanceKlass org/gradle/internal/logging/serializer/SpanSerializer +instanceKlass org/gradle/internal/logging/serializer/StyledTextOutputEventSerializer +instanceKlass org/gradle/internal/logging/serializer/UserInputResumeEventSerializer +instanceKlass org/gradle/internal/logging/serializer/PromptOutputEventSerializer +instanceKlass org/gradle/internal/logging/serializer/UserInputRequestEventSerializer +instanceKlass org/gradle/internal/logging/serializer/LogEventSerializer +instanceKlass org/gradle/launcher/daemon/protocol/DaemonMessageSerializer$CloseInputSerializer +instanceKlass org/gradle/launcher/daemon/protocol/DaemonMessageSerializer$ForwardInputSerializer +instanceKlass org/gradle/launcher/daemon/protocol/DaemonMessageSerializer$BuildEventSerializer +instanceKlass org/gradle/launcher/daemon/protocol/DaemonMessageSerializer$FinishedSerializer +instanceKlass org/gradle/launcher/daemon/protocol/DaemonMessageSerializer$SuccessSerializer +instanceKlass org/gradle/launcher/daemon/protocol/DaemonMessageSerializer$FailureSerializer +instanceKlass org/gradle/launcher/daemon/protocol/DaemonMessageSerializer$BuildStartedSerializer +instanceKlass org/gradle/launcher/daemon/protocol/DaemonMessageSerializer$DaemonUnavailableSerializer +instanceKlass org/gradle/launcher/daemon/protocol/DaemonMessageSerializer$CancelSerializer +instanceKlass org/gradle/launcher/exec/BuildActionParameters +instanceKlass org/gradle/launcher/daemon/protocol/DaemonMessageSerializer$BuildActionParametersSerializer +instanceKlass org/gradle/launcher/daemon/protocol/DaemonMessageSerializer$BuildSerializer +instanceKlass org/gradle/launcher/daemon/protocol/DaemonMessageSerializer +instanceKlass org/gradle/launcher/daemon/server/DaemonTcpServerConnector +instanceKlass org/gradle/launcher/daemon/server/IncomingConnectionHandler +instanceKlass org/gradle/launcher/daemon/server/api/DaemonStateControl +instanceKlass org/gradle/internal/serialize/DefaultSerializerRegistry$TypeInfo +instanceKlass java/util/TreeMap$PrivateEntryIterator +instanceKlass org/gradle/tooling/internal/provider/action/BuildActionSerializer$TestExecutionRequestActionSerializer +instanceKlass org/gradle/tooling/internal/provider/action/BuildActionSerializer$ClientProvidedPhasedActionSerializer +instanceKlass org/gradle/tooling/internal/provider/serialization/SerializedPayloadSerializer +instanceKlass org/gradle/tooling/internal/provider/action/BuildActionSerializer$ClientProvidedBuildActionSerializer +instanceKlass org/gradle/tooling/internal/provider/action/BuildActionSerializer$BuildEventSubscriptionsSerializer +instanceKlass org/gradle/tooling/internal/provider/action/BuildActionSerializer$BuildModelActionSerializer +instanceKlass org/gradle/tooling/internal/provider/action/SubscribableBuildAction +instanceKlass org/gradle/tooling/internal/provider/action/BuildActionSerializer$ValueSerializer +instanceKlass org/gradle/internal/serialize/AbstractSerializer +instanceKlass org/gradle/internal/serialize/BaseSerializerFactory +instanceKlass org/gradle/internal/serialize/AbstractCollectionSerializer +instanceKlass org/gradle/tooling/internal/provider/action/BuildActionSerializer$NullableFileSerializer +instanceKlass org/gradle/tooling/internal/provider/action/BuildActionSerializer$StartParameterSerializer +instanceKlass org/gradle/tooling/internal/provider/action/BuildActionSerializer$ExecuteBuildActionSerializer +instanceKlass org/gradle/tooling/internal/provider/action/ExecuteBuildAction +instanceKlass org/gradle/internal/serialize/DefaultSerializerRegistry$HierarchySerializerMatcher +instanceKlass org/gradle/internal/serialize/DefaultSerializerRegistry$StrictSerializerMatcher +instanceKlass org/gradle/internal/serialize/DefaultSerializerRegistry$SerializerClassMatcherStrategy +instanceKlass org/gradle/internal/serialize/DefaultSerializerRegistry$1 +instanceKlass org/gradle/internal/serialize/DefaultSerializerRegistry +instanceKlass org/gradle/internal/serialize/SerializerRegistry +instanceKlass org/gradle/tooling/internal/provider/action/BuildActionSerializer +instanceKlass org/gradle/initialization/BuildRequestContext +instanceKlass org/gradle/launcher/daemon/server/exec/WatchForDisconnection +instanceKlass org/gradle/launcher/daemon/server/exec/ResetDeprecationLogger +instanceKlass org/gradle/launcher/daemon/server/exec/RequestStopIfSingleUsedDaemon +instanceKlass org/gradle/launcher/daemon/server/api/StdinHandler +instanceKlass org/gradle/launcher/daemon/server/exec/ForwardClientInput +instanceKlass org/gradle/launcher/daemon/server/health/HealthLogger +instanceKlass org/gradle/launcher/daemon/server/exec/LogAndCheckHealth +instanceKlass org/gradle/launcher/daemon/server/exec/BuildCommandOnly +instanceKlass org/gradle/launcher/daemon/server/exec/ReturnResult +instanceKlass org/gradle/launcher/daemon/server/api/HandleReportStatus +instanceKlass org/gradle/launcher/daemon/server/exec/HandleCancel +instanceKlass org/gradle/launcher/daemon/server/api/HandleInvalidateVirtualFileSystem +instanceKlass org/gradle/launcher/daemon/protocol/Message +instanceKlass org/gradle/launcher/daemon/server/api/HandleStop +instanceKlass org/gradle/launcher/daemon/diagnostics/DaemonDiagnostics +instanceKlass org/gradle/tooling/internal/provider/BuildSessionLifecycleBuildActionExecuter +instanceKlass org/gradle/tooling/internal/provider/StartParamsValidatingActionExecuter +instanceKlass org/gradle/initialization/BuildRequestMetaData +instanceKlass org/gradle/initialization/exception/ExceptionAnalyser +instanceKlass org/gradle/initialization/exception/ExceptionCollector +instanceKlass org/gradle/tooling/internal/provider/SessionFailureReportingActionExecuter +instanceKlass org/gradle/StartParameter +instanceKlass org/gradle/concurrent/ParallelismConfiguration +instanceKlass org/gradle/tooling/internal/provider/SetupLoggingActionExecuter +instanceKlass org/gradle/cache/GlobalCacheLocations +instanceKlass org/gradle/process/internal/worker/WorkerProcessFactory +instanceKlass org/gradle/internal/execution/timeout/TimeoutHandler +instanceKlass org/gradle/cache/internal/FileContentCacheFactory +instanceKlass org/gradle/cache/scopes/ScopedCache +instanceKlass org/gradle/initialization/ClassLoaderScopeRegistry +instanceKlass org/gradle/internal/file/FileAccessTimeJournal +instanceKlass org/gradle/internal/classloader/HashingClassLoaderFactory +instanceKlass org/gradle/internal/hash/ClassLoaderHierarchyHasher +instanceKlass org/gradle/groovy/scripts/internal/ScriptSourceHasher +instanceKlass org/gradle/cache/CacheRepository +instanceKlass org/gradle/cache/internal/CacheScopeMapping +instanceKlass org/gradle/api/internal/initialization/loadercache/ClassLoaderCache +instanceKlass org/gradle/internal/isolation/IsolatableFactory +instanceKlass org/gradle/internal/service/scopes/WorkerSharedUserHomeScopeServices +instanceKlass org/gradle/internal/service/scopes/DefaultGradleUserHomeScopeServiceRegistry +instanceKlass org/gradle/internal/logging/text/AbstractStyledTextOutputFactory +instanceKlass org/gradle/launcher/daemon/server/expiry/DaemonExpirationResult +instanceKlass org/gradle/internal/event/DefaultListenerManager$EventBroadcast +instanceKlass org/gradle/launcher/daemon/server/expiry/DaemonExpirationListener +instanceKlass com/google/common/collect/ObjectArrays +instanceKlass org/gradle/launcher/daemon/server/health/LowNonHeapDaemonExpirationStrategy +instanceKlass org/gradle/launcher/daemon/server/health/LowHeapSpaceDaemonExpirationStrategy +instanceKlass org/gradle/launcher/daemon/server/health/GcThrashingDaemonExpirationStrategy +instanceKlass org/gradle/launcher/daemon/server/expiry/AnyDaemonExpirationStrategy +instanceKlass java/lang/FunctionalInterface +instanceKlass org/gradle/internal/service/DefaultServiceRegistry$RegistrationWrapper +instanceKlass org/gradle/internal/service/scopes/Scopes$Build +instanceKlass org/gradle/internal/service/scopes/EventScope +instanceKlass kotlin/annotation/Target +instanceKlass kotlin/annotation/Retention +instanceKlass kotlin/Metadata +instanceKlass java/lang/annotation/Documented +instanceKlass org/gradle/api/Incubating +instanceKlass jdk/internal/reflect/ClassDefiner$1 +instanceKlass jdk/internal/reflect/ClassDefiner +instanceKlass jdk/internal/reflect/MethodAccessorGenerator$1 +instanceKlass jdk/internal/reflect/Label$PatchInfo +instanceKlass jdk/internal/reflect/Label +instanceKlass jdk/internal/reflect/UTF8 +instanceKlass jdk/internal/reflect/ClassFileAssembler +instanceKlass jdk/internal/reflect/ByteVectorImpl +instanceKlass jdk/internal/reflect/ByteVector +instanceKlass jdk/internal/reflect/ByteVectorFactory +instanceKlass jdk/internal/reflect/AccessorGenerator +instanceKlass jdk/internal/reflect/ClassFileConstants +instanceKlass org/gradle/internal/service/scopes/Scopes$BuildTree +instanceKlass org/gradle/internal/service/scopes/Scopes$BuildSession +instanceKlass org/gradle/internal/service/scopes/Scopes$UserHome +instanceKlass java/lang/annotation/Target +instanceKlass sun/reflect/annotation/AnnotationInvocationHandler +instanceKlass sun/reflect/annotation/AnnotationParser$1 +instanceKlass sun/reflect/annotation/ExceptionProxy +instanceKlass java/lang/annotation/Inherited +instanceKlass java/lang/annotation/Retention +instanceKlass sun/reflect/annotation/AnnotationType$1 +instanceKlass sun/reflect/annotation/AnnotationType +instanceKlass java/lang/reflect/GenericArrayType +instanceKlass org/gradle/internal/service/scopes/ServiceScope +instanceKlass java/lang/Class$AnnotationData +instanceKlass org/gradle/internal/service/scopes/StatefulListener +instanceKlass java/time/Duration +instanceKlass java/time/temporal/TemporalAmount +instanceKlass org/gradle/internal/service/scopes/Scope$Global +instanceKlass org/gradle/internal/service/scopes/Scope +instanceKlass java/time/temporal/TemporalUnit +instanceKlass java/util/concurrent/TimeUnit$1 +instanceKlass java/util/concurrent/Executors$RunnableAdapter +instanceKlass java/util/concurrent/Executors +instanceKlass java/util/concurrent/FutureTask$WaitNode +instanceKlass java/util/concurrent/FutureTask +instanceKlass org/gradle/internal/concurrent/ManagedExecutorImpl$1 +instanceKlass org/gradle/launcher/daemon/server/health/gc/GarbageCollectionCheck +instanceKlass org/gradle/launcher/daemon/server/health/gc/DefaultGarbageCollectionMonitor$1 +instanceKlass java/util/concurrent/BlockingDeque +instanceKlass org/gradle/launcher/daemon/server/health/gc/DefaultSlidingWindow +instanceKlass org/gradle/launcher/daemon/server/health/gc/SlidingWindow +instanceKlass org/gradle/launcher/daemon/server/health/gc/DefaultGarbageCollectionMonitor +instanceKlass org/gradle/launcher/daemon/server/health/gc/GarbageCollectionInfo +instanceKlass org/gradle/internal/concurrent/ExecutorPolicy$CatchAndRecordFailures +instanceKlass java/util/concurrent/RunnableScheduledFuture +instanceKlass java/util/concurrent/ScheduledFuture +instanceKlass java/util/concurrent/Delayed +instanceKlass java/util/concurrent/RunnableFuture +instanceKlass java/util/concurrent/Future +instanceKlass org/gradle/internal/concurrent/ThreadFactoryImpl +instanceKlass java/util/concurrent/ThreadPoolExecutor$AbortPolicy +instanceKlass java/util/concurrent/RejectedExecutionHandler +instanceKlass java/util/concurrent/AbstractExecutorService +instanceKlass org/gradle/internal/concurrent/ManagedScheduledExecutor +instanceKlass java/util/concurrent/ScheduledExecutorService +instanceKlass org/gradle/internal/concurrent/ManagedExecutor +instanceKlass java/util/concurrent/ExecutorService +instanceKlass java/util/concurrent/Executor +instanceKlass org/gradle/internal/concurrent/AsyncStoppable +instanceKlass org/gradle/internal/concurrent/ExecutorPolicy +instanceKlass org/gradle/internal/concurrent/DefaultExecutorFactory +instanceKlass org/gradle/launcher/daemon/server/health/gc/GarbageCollectorMonitoringStrategy$3 +instanceKlass sun/management/Sensor +instanceKlass sun/management/MemoryPoolImpl +instanceKlass java/lang/management/MemoryPoolMXBean +instanceKlass org/gradle/launcher/daemon/server/health/gc/GarbageCollectorMonitoringStrategy$2 +instanceKlass org/gradle/util/internal/CollectionUtils +instanceKlass org/gradle/launcher/daemon/server/health/gc/GarbageCollectorMonitoringStrategy$1 +instanceKlass sun/management/spi/PlatformMBeanProvider$PlatformComponent$$Lambda$66 +instanceKlass sun/management/spi/PlatformMBeanProvider$PlatformComponent$$Lambda$65 +instanceKlass com/sun/jmx/mbeanserver/Util +instanceKlass javax/management/ObjectName$Property +instanceKlass com/sun/jmx/mbeanserver/GetPropertyAction +instanceKlass javax/management/ObjectName +instanceKlass javax/management/QueryExp +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass sun/management/Util +instanceKlass com/sun/management/GarbageCollectorMXBean +instanceKlass java/lang/management/MemoryMXBean +instanceKlass java/util/stream/Collectors$$Lambda$64 +instanceKlass java/util/stream/Collectors$$Lambda$63 +instanceKlass java/util/stream/Collectors$$Lambda$62 +instanceKlass java/lang/management/ManagementFactory$$Lambda$61 +instanceKlass java/lang/management/ManagementFactory$PlatformMBeanFinder$$Lambda$60 +instanceKlass java/util/Collections$2 +instanceKlass jdk/management/jfr/internal/FlightRecorderMXBeanProvider$SingleMBeanComponent +instanceKlass jdk/management/jfr/FlightRecorderMXBean +instanceKlass java/util/HashMap$HashMapSpliterator +instanceKlass java/lang/management/ManagementFactory$PlatformMBeanFinder$$Lambda$59 +instanceKlass java/lang/management/ManagementFactory$PlatformMBeanFinder$$Lambda$58 +instanceKlass java/util/stream/Collectors$$Lambda$57 +instanceKlass java/util/stream/Collectors$$Lambda$56 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass java/util/stream/Collectors$$Lambda$55 +instanceKlass java/lang/management/ManagementFactory$PlatformMBeanFinder$$Lambda$54 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass java/util/function/Function$$Lambda$53 +instanceKlass java/lang/management/ManagementFactory$PlatformMBeanFinder$$Lambda$52 +instanceKlass java/lang/management/ManagementFactory$PlatformMBeanFinder$$Lambda$51 +instanceKlass java/lang/management/DefaultPlatformMBeanProvider$11 +instanceKlass java/lang/management/DefaultPlatformMBeanProvider$10 +instanceKlass java/lang/management/DefaultPlatformMBeanProvider$9 +instanceKlass sun/management/ManagementFactoryHelper$LoggingMXBeanAccess$1 +instanceKlass sun/management/ManagementFactoryHelper$LoggingMXBeanAccess +instanceKlass java/lang/management/DefaultPlatformMBeanProvider$8 +instanceKlass java/lang/management/DefaultPlatformMBeanProvider$7 +instanceKlass java/lang/management/DefaultPlatformMBeanProvider$6 +instanceKlass java/lang/management/DefaultPlatformMBeanProvider$5 +instanceKlass java/lang/management/DefaultPlatformMBeanProvider$4 +instanceKlass java/lang/management/DefaultPlatformMBeanProvider$3 +instanceKlass java/lang/management/DefaultPlatformMBeanProvider$2 +instanceKlass java/lang/management/DefaultPlatformMBeanProvider$1 +instanceKlass java/util/concurrent/Callable +instanceKlass com/sun/management/internal/PlatformMBeanProviderImpl$5 +instanceKlass sun/management/VMManagementImpl +instanceKlass sun/management/VMManagement +instanceKlass sun/management/ManagementFactoryHelper +instanceKlass sun/management/NotificationEmitterSupport +instanceKlass javax/management/NotificationEmitter +instanceKlass javax/management/NotificationBroadcaster +instanceKlass com/sun/management/DiagnosticCommandMBean +instanceKlass javax/management/DynamicMBean +instanceKlass com/sun/management/internal/PlatformMBeanProviderImpl$4 +instanceKlass com/sun/management/internal/PlatformMBeanProviderImpl$3 +instanceKlass com/sun/management/internal/PlatformMBeanProviderImpl$2 +instanceKlass java/util/stream/ReduceOps$Box +instanceKlass java/util/stream/ReduceOps$AccumulatingSink +instanceKlass java/util/stream/ReduceOps$ReduceOp +instanceKlass java/util/stream/ReduceOps +instanceKlass java/util/stream/Collectors$$Lambda$50 +instanceKlass java/util/stream/Collectors$$Lambda$49 +instanceKlass java/util/function/BinaryOperator +instanceKlass java/util/stream/Collectors$$Lambda$48 +instanceKlass java/util/function/BiConsumer +instanceKlass java/util/stream/Collectors$$Lambda$47 +instanceKlass java/util/stream/Collectors$CollectorImpl +instanceKlass java/util/stream/Collector +instanceKlass java/util/stream/Collectors +instanceKlass com/sun/management/internal/PlatformMBeanProviderImpl$1 +instanceKlass sun/management/spi/PlatformMBeanProvider$PlatformComponent +instanceKlass com/sun/management/internal/PlatformMBeanProviderImpl$$Lambda$46 +instanceKlass java/lang/management/ManagementFactory$PlatformMBeanFinder$$Lambda$45 +instanceKlass sun/management/spi/PlatformMBeanProvider +instanceKlass java/lang/management/ManagementFactory$PlatformMBeanFinder$$Lambda$44 +instanceKlass java/lang/management/ManagementFactory$PlatformMBeanFinder +instanceKlass java/lang/management/GarbageCollectorMXBean +instanceKlass java/lang/management/MemoryManagerMXBean +instanceKlass java/lang/management/PlatformManagedObject +instanceKlass java/lang/management/ManagementFactory$$Lambda$43 +instanceKlass java/lang/management/ManagementFactory +instanceKlass org/gradle/launcher/daemon/server/health/gc/GarbageCollectionMonitor +instanceKlass org/gradle/internal/time/DefaultTimer +instanceKlass org/gradle/internal/logging/text/AbstractLineChoppingStyledTextOutput$StateContext +instanceKlass java/text/DontCareFieldPosition$1 +instanceKlass java/text/Format$FieldDelegate +instanceKlass java/util/Date +instanceKlass java/text/DigitList +instanceKlass java/text/FieldPosition +instanceKlass sun/util/locale/provider/JRELocaleProviderAdapter$$Lambda$42 +instanceKlass sun/util/locale/provider/JRELocaleProviderAdapter$$Lambda$41 +instanceKlass java/text/DateFormatSymbols +instanceKlass sun/util/calendar/CalendarUtils +instanceKlass sun/util/calendar/CalendarDate +instanceKlass sun/util/cldr/CLDRLocaleProviderAdapter$$Lambda$40 +instanceKlass sun/util/locale/provider/CalendarDataUtility$CalendarWeekParameterGetter +instanceKlass sun/util/locale/provider/LocaleServiceProviderPool$LocalizedObjectGetter +instanceKlass sun/util/locale/provider/LocaleServiceProviderPool +instanceKlass sun/util/calendar/CalendarSystem$GregorianHolder +instanceKlass sun/util/calendar/CalendarSystem +instanceKlass java/util/Calendar$Builder +instanceKlass sun/util/locale/provider/JRELocaleProviderAdapter$$Lambda$39 +instanceKlass sun/util/calendar/ZoneInfoFile$ZoneOffsetTransitionRule +instanceKlass sun/util/calendar/ZoneInfoFile$1 +instanceKlass sun/util/calendar/ZoneInfoFile +instanceKlass java/util/TimeZone +instanceKlass java/util/Calendar +instanceKlass java/text/AttributedCharacterIterator$Attribute +instanceKlass java/text/Format +instanceKlass org/gradle/internal/logging/sink/LogEventDispatcher +instanceKlass org/gradle/internal/logging/text/AbstractLineChoppingStyledTextOutput$SeenFromEol +instanceKlass org/gradle/internal/logging/text/AbstractLineChoppingStyledTextOutput$4 +instanceKlass org/gradle/internal/logging/text/AbstractLineChoppingStyledTextOutput$3 +instanceKlass org/gradle/internal/logging/text/AbstractLineChoppingStyledTextOutput$2 +instanceKlass org/gradle/internal/logging/text/AbstractLineChoppingStyledTextOutput$1 +instanceKlass org/gradle/internal/logging/text/AbstractLineChoppingStyledTextOutput$State +instanceKlass org/gradle/internal/logging/text/StreamBackedStandardOutputListener +instanceKlass org/gradle/internal/logging/text/AbstractStyledTextOutput +instanceKlass org/gradle/internal/logging/console/StyledTextOutputBackedRenderer +instanceKlass org/slf4j/helpers/FormattingTuple +instanceKlass org/slf4j/helpers/MessageFormatter +instanceKlass net/rubygrapefruit/platform/internal/FunctionResult +instanceKlass org/gradle/internal/logging/source/PrintStreamLoggingSystem$PrintStreamDestination +instanceKlass java/util/logging/ErrorManager +instanceKlass org/gradle/internal/logging/source/JavaUtilLoggingSystem$SnapshotImpl +instanceKlass org/gradle/internal/logging/config/LoggingSystemAdapter$SnapshotImpl +instanceKlass org/gradle/internal/dispatch/MethodInvocation +instanceKlass org/gradle/internal/logging/sink/OutputEventRenderer$SnapshotImpl +instanceKlass org/gradle/process/internal/shutdown/ShutdownHooks +instanceKlass org/gradle/launcher/daemon/bootstrap/DaemonMain$1 +instanceKlass com/google/common/io/Files$2 +instanceKlass com/google/common/io/ByteSink +instanceKlass com/google/common/io/ByteSource +instanceKlass com/google/common/io/LineProcessor +instanceKlass com/google/common/base/Predicate +instanceKlass com/google/common/graph/SuccessorsFunction +instanceKlass com/google/common/io/Files +instanceKlass org/gradle/util/internal/GFileUtils +instanceKlass java/util/regex/CharPredicates$$Lambda$38 +instanceKlass org/gradle/util/GradleVersion +instanceKlass org/gradle/launcher/daemon/context/DefaultDaemonContext$Serializer +instanceKlass org/gradle/launcher/daemon/context/DefaultDaemonContext +instanceKlass net/rubygrapefruit/platform/internal/jni/PosixProcessFunctions +instanceKlass org/gradle/internal/FileUtils$1 +instanceKlass org/gradle/internal/FileUtils +instanceKlass com/google/common/collect/Lists +instanceKlass org/gradle/internal/nativeintegration/ReflectiveEnvironment +instanceKlass org/gradle/internal/nativeintegration/processenvironment/AbstractProcessEnvironment +instanceKlass net/rubygrapefruit/platform/internal/DefaultProcess +instanceKlass net/rubygrapefruit/platform/internal/WrapperProcess +instanceKlass net/rubygrapefruit/platform/file/WindowsFiles +instanceKlass org/gradle/launcher/daemon/context/DaemonContextBuilder +instanceKlass org/gradle/internal/id/UUIDGenerator +instanceKlass org/gradle/internal/remote/internal/IncomingConnector +instanceKlass org/gradle/internal/remote/MessagingServer +instanceKlass org/gradle/internal/remote/internal/OutgoingConnector +instanceKlass org/gradle/internal/remote/MessagingClient +instanceKlass org/gradle/internal/id/IdGenerator +instanceKlass org/gradle/internal/remote/services/MessagingServices +instanceKlass org/gradle/api/internal/file/DefaultFileLookup +instanceKlass org/gradle/internal/scripts/DefaultScriptFileResolver +instanceKlass org/gradle/internal/scripts/ScriptFileResolver +instanceKlass org/gradle/initialization/layout/BuildLayoutFactory +instanceKlass org/gradle/tooling/internal/provider/runner/OperationDependencyLookup +instanceKlass org/gradle/tooling/internal/provider/runner/ToolingApiBuildEventListenerFactory +instanceKlass org/gradle/configurationcache/serialization/beans/BeanConstructors +instanceKlass org/gradle/nativeplatform/NativeBinarySpec +instanceKlass org/gradle/platform/base/BinarySpec +instanceKlass org/gradle/platform/base/Binary +instanceKlass org/gradle/api/CheckableComponentSpec +instanceKlass org/gradle/api/BuildableComponentSpec +instanceKlass org/gradle/platform/base/ComponentSpec +instanceKlass org/gradle/model/ModelElement +instanceKlass org/gradle/api/Buildable +instanceKlass org/gradle/internal/resource/transport/sftp/SftpClientFactory +instanceKlass org/gradle/internal/resource/transport/sftp/SftpResourcesPluginServiceRegistry$GlobalScopeServices +instanceKlass org/gradle/internal/resource/transport/aws/s3/S3ResourcesPluginServiceRegistry$GlobalScopeServices +instanceKlass org/gradle/internal/resource/transport/gcp/gcs/GcsResourcesPluginServiceRegistry$GlobalScopeServices +instanceKlass org/gradle/nativeplatform/TargetMachineBuilder +instanceKlass org/gradle/nativeplatform/TargetMachine +instanceKlass org/gradle/nativeplatform/internal/DefaultTargetMachineFactory +instanceKlass org/gradle/nativeplatform/TargetMachineFactory +instanceKlass org/gradle/nativeplatform/internal/NativePlatformResolver +instanceKlass org/gradle/platform/base/internal/PlatformResolver +instanceKlass org/gradle/nativeplatform/platform/internal/OperatingSystemInternal +instanceKlass org/gradle/nativeplatform/platform/OperatingSystem +instanceKlass org/gradle/nativeplatform/platform/internal/NativePlatformInternal +instanceKlass org/gradle/nativeplatform/platform/NativePlatform +instanceKlass org/gradle/platform/base/Platform +instanceKlass org/gradle/api/Named +instanceKlass org/gradle/nativeplatform/platform/internal/NativePlatforms +instanceKlass org/gradle/internal/logging/text/DiagnosticsVisitor +instanceKlass org/gradle/buildinit/plugins/internal/action/InitBuiltInCommand +instanceKlass org/gradle/api/component/SoftwareComponentFactory +instanceKlass org/gradle/api/plugins/internal/PluginAuthorServices$GlobalScopeServices +instanceKlass org/gradle/internal/build/event/OperationResultPostProcessorFactory +instanceKlass org/gradle/internal/build/event/BuildEventSubscriptions +instanceKlass org/gradle/language/java/internal/JavaLanguagePluginServiceRegistry$JavaGlobalScopeServices +instanceKlass org/gradle/platform/base/internal/registry/ComponentModelBaseServiceRegistry$GlobalScopeServices +instanceKlass org/gradle/reporting/ReportRenderer +instanceKlass org/gradle/api/reporting/components/internal/DiagnosticsServices$1 +instanceKlass org/gradle/api/plugins/internal/HelpBuiltInCommand +instanceKlass org/gradle/configuration/project/BuiltInCommand +instanceKlass org/gradle/internal/resource/transport/http/HttpClientHelper$Factory +instanceKlass org/gradle/internal/resource/transport/http/SslContextFactory +instanceKlass org/gradle/internal/resource/transport/http/HttpResourcesPluginServiceRegistry$GlobalScopeServices +instanceKlass org/gradle/api/internal/artifacts/configurations/MarkConfigurationObservedListener +instanceKlass org/gradle/api/internal/artifacts/configurations/ProjectDependencyObservedListener +instanceKlass org/gradle/internal/resource/ExternalResourceName +instanceKlass org/gradle/api/Describable +instanceKlass org/gradle/api/artifacts/component/ComponentSelector +instanceKlass org/gradle/cache/internal/ProducerGuard +instanceKlass org/gradle/api/internal/attributes/EmptySchema +instanceKlass org/gradle/api/internal/attributes/AttributesSchemaInternal +instanceKlass org/gradle/api/internal/attributes/DescribableAttributesSchema +instanceKlass org/gradle/api/attributes/AttributesSchema +instanceKlass org/gradle/internal/typeconversion/NotationParser +instanceKlass org/gradle/api/internal/artifacts/dsl/dependencies/PlatformSupport +instanceKlass org/gradle/api/internal/artifacts/transform/ArtifactTransformParameterScheme +instanceKlass org/gradle/api/internal/artifacts/ivyservice/moduleconverter/dependencies/AbstractIvyDependencyDescriptorFactory +instanceKlass org/gradle/api/internal/artifacts/ivyservice/moduleconverter/dependencies/IvyDependencyDescriptorFactory +instanceKlass org/gradle/api/internal/tasks/properties/annotations/AbstractInputFilePropertyAnnotationHandler +instanceKlass org/gradle/api/internal/artifacts/transform/ArtifactTransformActionScheme +instanceKlass org/gradle/internal/resource/connector/ResourceConnectorFactory +instanceKlass org/gradle/api/internal/artifacts/ivyservice/moduleconverter/dependencies/DependencyDescriptorFactory +instanceKlass org/gradle/api/internal/artifacts/ivyservice/IvyContextManager +instanceKlass org/gradle/api/internal/artifacts/ivyservice/moduleconverter/dependencies/ExcludeRuleConverter +instanceKlass org/gradle/api/internal/artifacts/ImmutableModuleIdentifierFactory +instanceKlass org/gradle/internal/typeconversion/NotationConverter +instanceKlass org/gradle/internal/resource/local/FileResourceRepository +instanceKlass org/gradle/internal/resource/ExternalResourceRepository +instanceKlass org/gradle/api/internal/artifacts/ivyservice/moduleconverter/LocalComponentMetadataBuilder +instanceKlass org/gradle/api/internal/artifacts/ivyservice/moduleconverter/dependencies/LocalConfigurationMetadataBuilder +instanceKlass org/gradle/api/internal/artifacts/DependencyManagementGlobalScopeServices +instanceKlass org/gradle/kotlin/dsl/support/ImplicitImports +instanceKlass org/gradle/kotlin/dsl/support/GlobalServices +instanceKlass org/gradle/internal/build/event/BuildEventServices$1 +instanceKlass org/gradle/internal/build/event/BuildEventListenerFactory +instanceKlass org/gradle/initialization/BuildEventConsumer +instanceKlass org/gradle/internal/operations/BuildOperationListener +instanceKlass org/gradle/internal/build/event/DefaultBuildEventsListenerRegistry +instanceKlass org/gradle/internal/build/event/BuildEventListenerRegistryInternal +instanceKlass org/gradle/build/event/BuildEventsListenerRegistry +instanceKlass org/gradle/internal/snapshot/impl/DirectorySnapshotterStatistics$Collector +instanceKlass org/gradle/api/internal/changedetection/state/FileHasherStatistics$Collector +instanceKlass org/gradle/internal/service/scopes/VirtualFileSystemServices$GlobalScopeServices +instanceKlass org/gradle/internal/service/scopes/ExecutionGlobalServices$AnnotationHandlerRegistration +instanceKlass org/gradle/internal/service/scopes/ExecutionGlobalServices$AnnotationHandlerRegistar +instanceKlass org/gradle/internal/operations/BuildOperationAncestryTracker +instanceKlass org/gradle/api/internal/tasks/properties/InspectionSchemeFactory +instanceKlass org/gradle/api/internal/tasks/properties/PropertyWalker +instanceKlass org/gradle/api/internal/tasks/properties/TaskScheme +instanceKlass org/gradle/api/internal/tasks/properties/TypeScheme +instanceKlass org/gradle/api/model/ReplacedBy +instanceKlass org/gradle/api/tasks/Internal +instanceKlass org/gradle/api/tasks/OutputFiles +instanceKlass org/gradle/api/tasks/OutputFile +instanceKlass org/gradle/api/tasks/OutputDirectory +instanceKlass org/gradle/api/tasks/OutputDirectories +instanceKlass org/gradle/api/tasks/options/OptionValues +instanceKlass org/gradle/api/tasks/Nested +instanceKlass org/gradle/api/tasks/LocalState +instanceKlass org/gradle/api/tasks/InputFiles +instanceKlass org/gradle/api/tasks/InputFile +instanceKlass org/gradle/api/tasks/InputDirectory +instanceKlass org/gradle/api/artifacts/transform/InputArtifactDependencies +instanceKlass org/gradle/api/artifacts/transform/InputArtifact +instanceKlass org/gradle/api/tasks/Input +instanceKlass org/gradle/api/tasks/Destroys +instanceKlass org/gradle/api/tasks/Console +instanceKlass org/gradle/internal/reflect/annotations/TypeAnnotationMetadataStore +instanceKlass org/gradle/internal/execution/TaskExecutionTracker +instanceKlass org/gradle/api/internal/project/taskfactory/TaskClassInfoStore +instanceKlass org/gradle/api/internal/tasks/properties/annotations/TypeAnnotationHandler +instanceKlass org/gradle/internal/service/scopes/ExecutionGlobalServices +instanceKlass org/gradle/tooling/internal/provider/ExecuteBuildActionRunner +instanceKlass org/gradle/internal/buildtree/BuildActionRunner +instanceKlass org/gradle/tooling/internal/provider/serialization/ClassLoaderCache +instanceKlass org/gradle/internal/filewatch/FileSystemChangeWaiterFactory +instanceKlass org/gradle/tooling/internal/provider/LauncherServices$ToolingGlobalScopeServices +instanceKlass org/gradle/internal/service/DefaultServiceLocator$ServiceFactory +instanceKlass org/gradle/internal/service/scopes/AbstractPluginServiceRegistry +instanceKlass org/gradle/internal/service/scopes/PluginServiceRegistry +instanceKlass org/gradle/api/internal/classpath/DefaultModuleRegistry$DefaultModule +instanceKlass org/gradle/internal/IoActions +instanceKlass org/gradle/api/Transformer +instanceKlass org/gradle/util/internal/GUtil +instanceKlass org/gradle/api/internal/classpath/DefaultModuleRegistry$$Lambda$37 +instanceKlass java/util/NavigableSet +instanceKlass java/util/SortedSet +instanceKlass com/google/common/collect/Sets +instanceKlass groovy/lang/MetaClass +instanceKlass groovy/lang/MetaObjectProtocol +instanceKlass groovy/lang/GroovySystem +instanceKlass groovy/lang/MetaClassRegistry +instanceKlass groovy/lang/GroovyObject +instanceKlass org/objectweb/asm/ClassVisitor +instanceKlass java/util/ComparableTimSort +instanceKlass java/util/Arrays$LegacyMergeSort +instanceKlass org/gradle/internal/util/Trie$Builder +instanceKlass org/gradle/internal/util/Trie +instanceKlass org/gradle/internal/classloader/FilteringClassLoader$TrieSet +instanceKlass java/lang/ClassLoader$$Lambda$36 +instanceKlass jdk/internal/loader/BootLoader$PackageHelper$$Lambda$35 +instanceKlass jdk/internal/loader/BootLoader$PackageHelper +instanceKlass java/util/stream/StreamSpliterators$WrappingSpliterator$$Lambda$34 +instanceKlass java/util/stream/AbstractSpinedBuffer +instanceKlass java/util/stream/Node$Builder +instanceKlass java/util/stream/Node$OfDouble +instanceKlass java/util/stream/Node$OfLong +instanceKlass java/util/stream/Node$OfInt +instanceKlass java/util/stream/Node$OfPrimitive +instanceKlass java/util/stream/Nodes$EmptyNode +instanceKlass java/util/stream/Node +instanceKlass java/util/stream/Nodes +instanceKlass java/lang/ClassLoader$$Lambda$33 +instanceKlass java/util/function/IntFunction +instanceKlass jdk/internal/loader/BootLoader$$Lambda$32 +instanceKlass java/util/stream/Streams$2 +instanceKlass java/util/stream/StreamSpliterators$AbstractWrappingSpliterator +instanceKlass java/util/stream/AbstractPipeline$$Lambda$31 +instanceKlass java/util/stream/Streams$ConcatSpliterator +instanceKlass java/lang/ClassLoader$$Lambda$30 +instanceKlass org/gradle/internal/classloader/ClassLoaderUtils$AbstractClassLoaderLookuper +instanceKlass org/gradle/internal/classloader/ClassLoaderUtils$ClassLoaderPackagesFetcher +instanceKlass org/gradle/internal/classloader/ClassLoaderUtils$ClassDefiner +instanceKlass org/gradle/internal/classloader/ClassLoaderUtils +instanceKlass org/gradle/initialization/GradleApiSpecAggregator$DefaultSpec +instanceKlass kotlin/jvm/internal/Intrinsics +instanceKlass kotlin/collections/SetsKt__SetsJVMKt +instanceKlass com/google/common/collect/PeekingIterator +instanceKlass com/google/common/collect/UnmodifiableIterator +instanceKlass com/google/common/collect/Iterators +instanceKlass com/google/common/collect/Hashing +instanceKlass com/google/common/base/Java8Usage$$Lambda$29 +instanceKlass com/google/common/base/Java8Usage +instanceKlass com/google/common/base/Preconditions +instanceKlass org/apache/groovy/json/DefaultFastStringServiceFactory +instanceKlass org/apache/groovy/json/FastStringServiceFactory +instanceKlass org/gradle/internal/reflect/ReflectionCache$CacheEntry +instanceKlass com/google/common/math/IntMath$1 +instanceKlass com/google/common/math/MathPreconditions +instanceKlass com/google/common/math/IntMath +instanceKlass com/google/common/collect/ImmutableCollection$Builder +instanceKlass com/google/common/collect/ImmutableSet$SetBuilderImpl +instanceKlass org/gradle/kotlin/dsl/provider/KotlinGradleApiSpecProvider +instanceKlass org/gradle/initialization/GradleApiSpecProvider$SpecAdapter +instanceKlass org/gradle/initialization/GradleApiSpecProvider +instanceKlass org/gradle/internal/service/DefaultServiceLocator +instanceKlass org/gradle/initialization/GradleApiSpecProvider$Spec +instanceKlass org/gradle/initialization/GradleApiSpecAggregator +instanceKlass com/google/common/base/Function +instanceKlass org/gradle/internal/reflect/CachedInvokable +instanceKlass org/gradle/internal/reflect/ReflectionCache +instanceKlass org/gradle/internal/reflect/DirectInstantiator +instanceKlass org/gradle/initialization/DefaultClassLoaderRegistry +instanceKlass org/gradle/internal/installation/GradleRuntimeShadedJarDetector +instanceKlass sun/net/www/protocol/jar/URLJarFileCallBack +instanceKlass sun/net/www/protocol/jar/JarFileFactory +instanceKlass sun/net/www/protocol/jar/URLJarFile$URLJarFileCloseController +instanceKlass java/net/URLClassLoader$2 +instanceKlass org/objectweb/asm/Type +instanceKlass org/gradle/initialization/DefaultLegacyTypesSupport +instanceKlass org/gradle/api/internal/DynamicModulesClassPathProvider +instanceKlass org/gradle/api/internal/DefaultClassPathProvider +instanceKlass org/gradle/api/internal/ClassPathProvider +instanceKlass org/gradle/api/internal/DefaultClassPathRegistry +instanceKlass org/gradle/api/internal/classpath/DefaultPluginModuleRegistry +instanceKlass org/gradle/api/internal/classpath/ManifestUtil +instanceKlass org/gradle/internal/classloader/ClassLoaderSpec +instanceKlass org/gradle/internal/classloader/ClassLoaderHierarchy +instanceKlass org/gradle/internal/classloader/ClassLoaderVisitor +instanceKlass org/gradle/api/internal/classpath/DefaultModuleRegistry$$Lambda$28 +instanceKlass org/gradle/api/internal/classpath/Module +instanceKlass org/gradle/internal/installation/GradleInstallation$1 +instanceKlass org/gradle/internal/installation/GradleInstallation +instanceKlass org/gradle/internal/classloader/ClasspathUtil +instanceKlass org/gradle/internal/installation/CurrentGradleInstallationLocator +instanceKlass org/gradle/api/tasks/util/PatternSet +instanceKlass org/gradle/api/tasks/util/PatternFilterable +instanceKlass org/gradle/api/tasks/AntBuilderAware +instanceKlass org/gradle/api/internal/tasks/properties/annotations/AbstractOutputPropertyAnnotationHandler +instanceKlass org/gradle/api/internal/tasks/properties/annotations/PropertyAnnotationHandler +instanceKlass org/gradle/internal/instantiation/InjectAnnotationHandler +instanceKlass org/gradle/model/internal/manage/schema/extract/ModelSchemaAspectExtractionStrategy +instanceKlass org/gradle/model/internal/manage/schema/extract/ModelSchemaExtractionStrategy +instanceKlass org/gradle/model/internal/inspect/MethodModelRuleExtractor +instanceKlass org/gradle/api/internal/file/FileLookup +instanceKlass org/gradle/internal/event/DefaultListenerManager +instanceKlass org/gradle/api/internal/DocumentationRegistry +instanceKlass org/gradle/cache/internal/locklistener/DefaultFileLockContentionHandler +instanceKlass org/gradle/internal/remote/internal/inet/InetAddressFactory +instanceKlass org/gradle/cache/internal/locklistener/FileLockContentionHandler +instanceKlass org/gradle/api/internal/file/DefaultFilePropertyFactory +instanceKlass org/gradle/api/internal/file/FileResolver +instanceKlass org/gradle/internal/file/PathToFileResolver +instanceKlass org/gradle/internal/file/RelativeFilePathResolver +instanceKlass org/gradle/api/internal/tasks/TaskDependencyFactory +instanceKlass org/gradle/api/internal/provider/PropertyHost +instanceKlass org/gradle/internal/state/ManagedFactoryRegistry +instanceKlass org/gradle/api/internal/file/FileFactory +instanceKlass org/gradle/internal/instantiation/InstanceGenerator +instanceKlass org/gradle/api/internal/cache/StringInterner +instanceKlass com/google/common/collect/Interner +instanceKlass org/gradle/api/internal/model/NamedObjectInstantiator +instanceKlass org/gradle/internal/state/ManagedFactory +instanceKlass org/gradle/api/internal/file/FilePropertyFactory +instanceKlass org/gradle/execution/DefaultWorkValidationWarningRecorder +instanceKlass org/gradle/execution/WorkValidationWarningReporter +instanceKlass org/gradle/internal/execution/steps/ValidateStep$ValidationWarningRecorder +instanceKlass org/gradle/api/internal/classpath/DefaultModuleRegistry +instanceKlass org/gradle/cache/GlobalCache +instanceKlass org/gradle/api/internal/classpath/ModuleRegistry +instanceKlass org/gradle/internal/installation/CurrentGradleInstallation +instanceKlass org/gradle/model/internal/inspect/ModelRuleSourceDetector +instanceKlass org/gradle/internal/service/CachingServiceLocator +instanceKlass org/gradle/model/internal/manage/schema/extract/ModelSchemaAspectExtractor +instanceKlass org/gradle/model/internal/inspect/ModelRuleExtractor +instanceKlass org/gradle/model/internal/manage/instance/ManagedProxyFactory +instanceKlass org/gradle/internal/operations/BuildOperationProgressEventEmitter +instanceKlass org/gradle/internal/operations/CurrentBuildOperationRef +instanceKlass org/gradle/internal/service/scopes/GlobalScopeServices$$Lambda$27 +instanceKlass org/gradle/internal/environment/GradleBuildEnvironment +instanceKlass org/gradle/process/internal/health/memory/OsMemoryInfo +instanceKlass org/gradle/api/internal/classpath/PluginModuleRegistry +instanceKlass org/gradle/api/execution/internal/TaskInputsListeners +instanceKlass org/gradle/process/internal/health/memory/JvmMemoryInfo +instanceKlass org/gradle/api/internal/ClassPathRegistry +instanceKlass org/gradle/api/model/ObjectFactory +instanceKlass org/gradle/internal/reflect/Instantiator +instanceKlass org/gradle/api/tasks/util/internal/PatternSpecFactory +instanceKlass org/gradle/configuration/ImportsReader +instanceKlass org/gradle/internal/execution/history/changes/ExecutionStateChangeDetector +instanceKlass org/gradle/internal/filewatch/FileWatcherFactory +instanceKlass org/gradle/initialization/ClassLoaderRegistry +instanceKlass org/gradle/internal/execution/history/OverlappingOutputDetector +instanceKlass org/gradle/internal/instantiation/InstantiatorFactory +instanceKlass org/gradle/internal/instantiation/PropertyRoleAnnotationHandler +instanceKlass org/gradle/internal/service/ServiceLocator +instanceKlass org/gradle/model/internal/manage/schema/ModelSchemaStore +instanceKlass org/gradle/cache/internal/InMemoryCacheDecoratorFactory +instanceKlass org/gradle/model/internal/manage/binding/StructBindingsStore +instanceKlass org/gradle/model/internal/manage/schema/extract/ModelSchemaExtractor +instanceKlass org/gradle/initialization/JdkToolsInitializer +instanceKlass org/gradle/internal/classloader/ClassLoaderFactory +instanceKlass org/gradle/internal/service/scopes/GradleUserHomeScopeServiceRegistry +instanceKlass org/gradle/internal/resources/ResourceLockCoordinationService +instanceKlass org/gradle/api/internal/collections/DomainObjectCollectionFactory +instanceKlass org/gradle/internal/operations/BuildOperationListenerManager +instanceKlass org/gradle/process/internal/health/memory/MemoryManager +instanceKlass org/gradle/cache/internal/CacheFactory +instanceKlass org/gradle/internal/file/Deleter +instanceKlass org/gradle/internal/hash/StreamHasher +instanceKlass org/gradle/internal/operations/BuildOperationIdFactory +instanceKlass org/gradle/api/internal/provider/PropertyFactory +instanceKlass org/gradle/initialization/LegacyTypesSupport +instanceKlass org/gradle/internal/logging/progress/ProgressLoggerFactory +instanceKlass org/gradle/internal/logging/progress/ProgressListener +instanceKlass org/gradle/cache/internal/CrossBuildInMemoryCacheFactory +instanceKlass org/gradle/process/internal/ExecFactory +instanceKlass org/gradle/api/internal/ProcessOperations +instanceKlass org/gradle/process/internal/JavaForkOptionsFactory +instanceKlass org/gradle/process/internal/JavaExecHandleFactory +instanceKlass org/gradle/process/internal/ExecHandleFactory +instanceKlass org/gradle/process/internal/ExecActionFactory +instanceKlass org/gradle/api/internal/file/FileCollectionFactory +instanceKlass org/gradle/api/internal/file/collections/DirectoryFileTreeFactory +instanceKlass org/gradle/internal/jvm/inspection/JvmVersionDetector +instanceKlass org/gradle/internal/jvm/inspection/JvmMetadataDetector +instanceKlass org/gradle/cache/internal/ProcessMetaDataProvider +instanceKlass org/gradle/internal/service/scopes/BasicGlobalScopeServices +instanceKlass org/gradle/cache/FileLockManager +instanceKlass org/gradle/launcher/daemon/registry/DaemonDir +instanceKlass org/gradle/internal/concurrent/Synchronizer +instanceKlass org/gradle/cache/internal/CacheSupport +instanceKlass org/gradle/cache/internal/CacheAccessSerializer +instanceKlass org/gradle/launcher/daemon/registry/DaemonRegistry +instanceKlass org/gradle/cache/Cache +instanceKlass org/gradle/launcher/daemon/registry/DaemonRegistryServices +instanceKlass sun/reflect/generics/tree/TypeVariableSignature +instanceKlass org/gradle/launcher/daemon/server/api/DaemonCommandAction +instanceKlass org/gradle/internal/invocation/BuildAction +instanceKlass sun/reflect/generics/tree/MethodTypeSignature +instanceKlass org/gradle/launcher/exec/BuildExecuter +instanceKlass org/gradle/launcher/daemon/server/health/DaemonHealthCheck +instanceKlass org/gradle/launcher/daemon/context/DaemonContext +instanceKlass org/gradle/launcher/daemon/server/MasterExpirationStrategy +instanceKlass org/gradle/internal/event/ListenerManager +instanceKlass org/gradle/launcher/daemon/server/health/HealthExpirationStrategy +instanceKlass org/gradle/launcher/daemon/server/Daemon +instanceKlass org/gradle/internal/concurrent/ExecutorFactory +instanceKlass org/gradle/launcher/daemon/server/stats/DaemonRunningStats +instanceKlass org/gradle/launcher/daemon/server/health/DaemonMemoryStatus +instanceKlass org/gradle/launcher/daemon/server/health/DaemonHealthStats +instanceKlass org/gradle/internal/serialize/Serializer +instanceKlass org/gradle/internal/service/DefaultServiceRegistry$CompositeServiceProvider +instanceKlass org/gradle/internal/service/DefaultServiceRegistry$ParentServices +instanceKlass org/gradle/api/specs/Spec +instanceKlass org/gradle/internal/classpath/DefaultClassPath +instanceKlass org/gradle/internal/classpath/ClassPath +instanceKlass org/gradle/launcher/daemon/server/DaemonServerConnector +instanceKlass org/gradle/launcher/exec/BuildActionExecuter +instanceKlass org/gradle/launcher/daemon/server/expiry/DaemonExpirationStrategy +instanceKlass org/gradle/launcher/daemon/server/scaninfo/DaemonScanInfo +instanceKlass java/lang/reflect/WildcardType +instanceKlass sun/reflect/generics/reflectiveObjects/LazyReflectiveObjectGenerator +instanceKlass java/lang/reflect/TypeVariable +instanceKlass sun/reflect/generics/reflectiveObjects/ParameterizedTypeImpl +instanceKlass sun/reflect/generics/visitor/Reifier +instanceKlass sun/reflect/generics/visitor/TypeTreeVisitor +instanceKlass sun/reflect/generics/tree/ClassSignature +instanceKlass sun/reflect/generics/tree/Signature +instanceKlass sun/reflect/generics/tree/ClassTypeSignature +instanceKlass sun/reflect/generics/tree/SimpleClassTypeSignature +instanceKlass sun/reflect/generics/tree/FieldTypeSignature +instanceKlass sun/reflect/generics/tree/BaseType +instanceKlass sun/reflect/generics/tree/TypeSignature +instanceKlass sun/reflect/generics/tree/ReturnType +instanceKlass sun/reflect/generics/tree/TypeArgument +instanceKlass sun/reflect/generics/tree/FormalTypeParameter +instanceKlass sun/reflect/generics/tree/TypeTree +instanceKlass sun/reflect/generics/tree/Tree +instanceKlass sun/reflect/generics/parser/SignatureParser +instanceKlass sun/reflect/generics/repository/AbstractRepository +instanceKlass sun/reflect/generics/factory/CoreReflectionFactory +instanceKlass sun/reflect/generics/factory/GenericsFactory +instanceKlass sun/reflect/generics/scope/AbstractScope +instanceKlass sun/reflect/generics/scope/Scope +instanceKlass org/gradle/internal/logging/services/DefaultLoggingManager$StartableLoggingSystem +instanceKlass org/gradle/internal/logging/services/DefaultLoggingManager$StartableLoggingRouter +instanceKlass org/gradle/internal/logging/services/DefaultLoggingManager +instanceKlass org/gradle/internal/logging/source/JavaUtilLoggingSystem +instanceKlass org/gradle/internal/logging/slf4j/Slf4jLoggingConfigurer +instanceKlass org/gradle/internal/logging/config/LoggingSystemAdapter +instanceKlass org/gradle/internal/logging/LoggingManagerInternal +instanceKlass org/gradle/internal/logging/StandardOutputCapture +instanceKlass org/gradle/api/logging/LoggingManager +instanceKlass org/gradle/internal/logging/source/StdErrLoggingSystem +instanceKlass org/gradle/internal/logging/source/PrintStreamLoggingSystem$SnapshotImpl +instanceKlass org/gradle/internal/logging/source/PrintStreamLoggingSystem$OutputEventDestination +instanceKlass org/gradle/internal/SystemProperties +instanceKlass org/gradle/internal/logging/source/PrintStreamLoggingSystem$1 +instanceKlass org/gradle/internal/service/AnnotatedServiceLifecycleHandler +instanceKlass org/gradle/internal/logging/events/operations/StyledTextBuildOperationProgressDetails +instanceKlass org/gradle/internal/operations/logging/StyledTextBuildOperationProgressDetails +instanceKlass org/gradle/internal/io/TextStream +instanceKlass org/gradle/internal/logging/source/PrintStreamLoggingSystem +instanceKlass org/gradle/internal/logging/source/StdOutLoggingSystem +instanceKlass java/lang/reflect/ParameterizedType +instanceKlass org/gradle/internal/logging/sink/OutputEventListenerManager$1 +instanceKlass org/gradle/internal/logging/services/TextStreamOutputEventListener +instanceKlass org/gradle/internal/logging/sink/OutputEventListenerManager +instanceKlass org/gradle/internal/logging/services/DefaultLoggingManagerFactory +instanceKlass org/gradle/internal/logging/services/LoggingServiceRegistry$1 +instanceKlass org/gradle/internal/logging/config/LoggingConfigurer +instanceKlass org/gradle/internal/logging/config/LoggingSourceSystem +instanceKlass org/gradle/launcher/daemon/configuration/DefaultDaemonServerConfiguration +instanceKlass org/gradle/internal/nativeintegration/jansi/JansiStorage +instanceKlass org/fusesource/jansi/Ansi +instanceKlass org/gradle/internal/nativeintegration/jansi/JansiLibrary +instanceKlass org/gradle/internal/nativeintegration/jansi/JansiLibraryFactory$1 +instanceKlass net/rubygrapefruit/platform/internal/jni/AbstractFileEventFunctions +instanceKlass jdk/internal/logger/DefaultLoggerFinder$1 +instanceKlass java/util/logging/Logger$SystemLoggerHelper$1 +instanceKlass java/util/logging/Logger$SystemLoggerHelper +instanceKlass java/util/logging/LogManager$4 +instanceKlass jdk/internal/logger/BootstrapLogger$BootstrapExecutors +instanceKlass jdk/internal/logger/BootstrapLogger$RedirectedLoggers +instanceKlass java/lang/ModuleLayer$$Lambda$26 +instanceKlass java/util/Spliterators$1Adapter +instanceKlass java/util/Spliterators$ArraySpliterator +instanceKlass java/util/Spliterator$OfDouble +instanceKlass java/util/Spliterator$OfLong +instanceKlass java/util/Spliterator$OfInt +instanceKlass java/util/Spliterator$OfPrimitive +instanceKlass java/util/Spliterators$EmptySpliterator +instanceKlass java/util/Spliterators +instanceKlass jdk/internal/logger/BootstrapLogger$DetectBackend$1 +instanceKlass jdk/internal/logger/BootstrapLogger$DetectBackend +instanceKlass jdk/internal/logger/BootstrapLogger +instanceKlass sun/util/logging/PlatformLogger$ConfigurableBridge +instanceKlass sun/util/logging/PlatformLogger$Bridge +instanceKlass java/lang/System$Logger +instanceKlass java/util/stream/Streams +instanceKlass java/util/stream/Streams$AbstractStreamBuilderImpl +instanceKlass java/util/stream/Stream$Builder +instanceKlass java/util/stream/Sink$ChainedReference +instanceKlass java/util/stream/FindOps$FindSink$OfRef$$Lambda$25 +instanceKlass java/util/stream/FindOps$FindSink$OfRef$$Lambda$24 +instanceKlass java/util/stream/FindOps$FindSink$OfRef$$Lambda$23 +instanceKlass java/util/stream/FindOps$FindSink$OfRef$$Lambda$22 +instanceKlass java/util/stream/FindOps$FindOp +instanceKlass java/util/stream/TerminalOp +instanceKlass java/util/stream/FindOps$FindSink +instanceKlass java/util/stream/TerminalSink +instanceKlass java/util/stream/Sink +instanceKlass java/util/function/Consumer +instanceKlass java/util/stream/FindOps +instanceKlass java/util/logging/Level$KnownLevel$$Lambda$21 +instanceKlass sun/reflect/annotation/AnnotationParser +instanceKlass java/util/EnumMap$1 +instanceKlass java/util/stream/StreamOpFlag$MaskBuilder +instanceKlass java/util/stream/PipelineHelper +instanceKlass java/util/stream/Stream +instanceKlass java/util/stream/BaseStream +instanceKlass java/util/stream/StreamSupport +instanceKlass java/util/ArrayList$ArrayListSpliterator +instanceKlass java/util/Spliterator +instanceKlass java/util/logging/Level$$Lambda$20 +instanceKlass java/util/Hashtable$Enumerator +instanceKlass java/util/Collections$3 +instanceKlass java/util/logging/LogManager$LoggerContext$1 +instanceKlass java/util/logging/LogManager$VisitedLoggers +instanceKlass java/util/function/Predicate +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass sun/invoke/util/ValueConversions$WrapperCache +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/MethodHandles$1 +instanceKlass java/lang/Byte$ByteCache +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/StringConcatFactory$Stringifiers +instanceKlass java/lang/StringConcatHelper +instanceKlass java/lang/invoke/StringConcatFactory$MethodHandleInlineCopyStrategy$3 +instanceKlass java/lang/invoke/StringConcatFactory$MethodHandleInlineCopyStrategy$2 +instanceKlass java/lang/invoke/StringConcatFactory$MethodHandleInlineCopyStrategy$1 +instanceKlass java/lang/invoke/StringConcatFactory$MethodHandleInlineCopyStrategy +instanceKlass java/lang/invoke/StringConcatFactory$RecipeElement +instanceKlass java/lang/invoke/StringConcatFactory$Recipe +instanceKlass java/lang/invoke/StringConcatFactory$1 +instanceKlass java/lang/invoke/StringConcatFactory +instanceKlass java/util/logging/LogManager$2 +instanceKlass java/lang/System$LoggerFinder +instanceKlass sun/security/util/SecurityConstants +instanceKlass java/security/AccessController$1 +instanceKlass java/util/logging/LogManager$LoggingProviderAccess +instanceKlass sun/util/logging/internal/LoggingProviderImpl$LogManagerAccess +instanceKlass java/lang/Shutdown$Lock +instanceKlass java/lang/Shutdown +instanceKlass java/lang/ApplicationShutdownHooks$1 +instanceKlass java/lang/ApplicationShutdownHooks +instanceKlass java/util/Collections$SynchronizedMap +instanceKlass java/util/logging/LogManager$LogNode +instanceKlass java/util/logging/LogManager$LoggerContext +instanceKlass java/util/logging/LogManager$1 +instanceKlass java/util/logging/LogManager +instanceKlass java/util/logging/Logger$ConfigurationData +instanceKlass java/util/logging/Logger$LoggerBundle +instanceKlass java/util/logging/Level +instanceKlass java/util/logging/Handler +instanceKlass java/util/logging/Logger +instanceKlass net/rubygrapefruit/platform/internal/jni/NativeLogger +instanceKlass net/rubygrapefruit/platform/file/FileEvents +instanceKlass java/util/RegularEnumSet$EnumSetIterator +instanceKlass net/rubygrapefruit/platform/internal/jni/NativeLibraryFunctions +instanceKlass java/lang/ClassLoader$NativeLibrary$Unloader +instanceKlass java/nio/channels/spi/AbstractInterruptibleChannel$1 +instanceKlass sun/nio/ch/Interruptible +instanceKlass sun/nio/ch/FileKey +instanceKlass sun/nio/ch/FileLockTable +instanceKlass sun/nio/ch/NativeThread +instanceKlass java/nio/channels/FileLock +instanceKlass sun/nio/ch/NativeDispatcher +instanceKlass sun/nio/ch/NativeThreadSet +instanceKlass sun/nio/ch/IOUtil$1 +instanceKlass sun/nio/ch/IOUtil +instanceKlass java/nio/file/attribute/FileAttribute +instanceKlass java/nio/channels/spi/AbstractInterruptibleChannel +instanceKlass java/nio/channels/InterruptibleChannel +instanceKlass java/nio/channels/ScatteringByteChannel +instanceKlass java/nio/channels/GatheringByteChannel +instanceKlass java/nio/channels/SeekableByteChannel +instanceKlass java/nio/channels/ByteChannel +instanceKlass java/nio/channels/WritableByteChannel +instanceKlass java/nio/channels/ReadableByteChannel +instanceKlass java/nio/channels/Channel +instanceKlass java/util/Formattable +instanceKlass java/util/Formatter$Conversion +instanceKlass java/util/Formatter$Flags +instanceKlass java/util/Formatter$FormatSpecifier +instanceKlass java/util/Formatter$FixedString +instanceKlass java/util/Formatter$FormatString +instanceKlass sun/util/resources/Bundles$2 +instanceKlass sun/util/resources/Bundles$CacheKeyReference +instanceKlass java/util/ResourceBundle$ResourceBundleProviderHelper$$Lambda$19 +instanceKlass java/util/ResourceBundle$ResourceBundleProviderHelper +instanceKlass java/util/ArrayList$SubList$1 +instanceKlass sun/util/resources/LocaleData$LocaleDataResourceBundleProvider +instanceKlass java/util/spi/ResourceBundleProvider +instanceKlass sun/util/resources/Bundles$CacheKey +instanceKlass java/util/ResourceBundle$1 +instanceKlass jdk/internal/access/JavaUtilResourceBundleAccess +instanceKlass sun/util/resources/Bundles +instanceKlass sun/util/resources/LocaleData$LocaleDataStrategy +instanceKlass sun/util/resources/Bundles$Strategy +instanceKlass sun/util/resources/LocaleData$1 +instanceKlass sun/util/locale/provider/CalendarDataUtility +instanceKlass sun/util/locale/provider/AvailableLanguageTags +instanceKlass sun/util/locale/provider/JRELocaleProviderAdapter$$Lambda$18 +instanceKlass java/util/ServiceLoader$ProviderImpl +instanceKlass java/util/ServiceLoader$Provider +instanceKlass java/util/ServiceLoader$1 +instanceKlass sun/util/resources/cldr/provider/CLDRLocaleDataMetaInfo +instanceKlass jdk/internal/module/ModulePatcher$PatchedModuleReader +instanceKlass java/util/ServiceLoader$3 +instanceKlass java/util/ServiceLoader$2 +instanceKlass java/util/ServiceLoader$LazyClassPathLookupIterator +instanceKlass java/util/concurrent/CopyOnWriteArrayList$COWIterator +instanceKlass java/util/ServiceLoader$ModuleServicesLookupIterator +instanceKlass java/util/ServiceLoader +instanceKlass sun/util/cldr/CLDRLocaleProviderAdapter$1 +instanceKlass sun/util/locale/StringTokenIterator +instanceKlass sun/util/locale/ParseStatus +instanceKlass sun/util/cldr/CLDRBaseLocaleDataMetaInfo +instanceKlass sun/util/locale/provider/LocaleDataMetaInfo +instanceKlass sun/util/locale/provider/LocaleProviderAdapter$1 +instanceKlass java/util/ResourceBundle +instanceKlass java/util/ResourceBundle$Control +instanceKlass sun/util/resources/LocaleData +instanceKlass sun/util/locale/provider/LocaleResources +instanceKlass sun/util/locale/LanguageTag +instanceKlass sun/util/locale/provider/ResourceBundleBasedAdapter +instanceKlass sun/util/locale/provider/LocaleProviderAdapter +instanceKlass java/util/spi/LocaleServiceProvider +instanceKlass java/text/DecimalFormatSymbols +instanceKlass java/util/Locale$1 +instanceKlass java/util/regex/Pattern$$Lambda$17 +instanceKlass java/util/Formatter +instanceKlass net/rubygrapefruit/platform/internal/LibraryDef +instanceKlass net/rubygrapefruit/platform/internal/NativeLibraryLocator +instanceKlass net/rubygrapefruit/platform/internal/NativeLibraryLoader +instanceKlass net/rubygrapefruit/platform/Process +instanceKlass net/rubygrapefruit/platform/internal/Platform +instanceKlass net/rubygrapefruit/platform/Native +instanceKlass java/util/TreeMap$Entry +instanceKlass java/lang/ProcessEnvironment$CheckedEntry +instanceKlass java/lang/ProcessEnvironment$CheckedEntrySet$1 +instanceKlass java/util/NavigableMap +instanceKlass java/util/SortedMap +instanceKlass java/lang/ProcessEnvironment$EntryComparator +instanceKlass java/lang/ProcessEnvironment$NameComparator +instanceKlass org/gradle/api/internal/file/temp/DefaultTemporaryFileProvider +instanceKlass org/gradle/internal/nativeintegration/services/NativeServices$1 +instanceKlass org/gradle/internal/file/StatStatistics +instanceKlass org/gradle/internal/file/StatStatistics$Collector +instanceKlass org/gradle/internal/nativeintegration/filesystem/services/GenericFileSystem +instanceKlass org/gradle/internal/service/InjectUtil +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass java/lang/ClassValue$Version +instanceKlass java/lang/ClassValue$Identity +instanceKlass java/lang/ClassValue +instanceKlass java/lang/invoke/MethodHandleImpl$ArrayAccessor +instanceKlass java/lang/invoke/MethodHandleImpl$2 +instanceKlass java/lang/invoke/MethodHandleImpl$LoopClauses +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/internal/service/DefaultServiceRegistry$1 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/internal/nativeintegration/filesystem/FileCanonicalizer +instanceKlass org/gradle/internal/nativeintegration/filesystem/services/GenericFileSystem$Factory +instanceKlass org/gradle/api/internal/file/temp/TemporaryFileProvider +instanceKlass org/gradle/internal/nativeintegration/filesystem/FileSystem +instanceKlass org/gradle/internal/file/Stat +instanceKlass org/gradle/internal/file/Chmod +instanceKlass org/gradle/internal/nativeintegration/filesystem/FileModeMutator +instanceKlass org/gradle/internal/nativeintegration/filesystem/FileModeAccessor +instanceKlass org/gradle/internal/nativeintegration/filesystem/Symlink +instanceKlass org/gradle/internal/nativeintegration/filesystem/services/FileSystemServices +instanceKlass org/gradle/internal/nativeintegration/jansi/DefaultJansiRuntimeResolver +instanceKlass org/gradle/internal/nativeintegration/jansi/JansiRuntimeResolver +instanceKlass org/gradle/internal/nativeintegration/jansi/JansiLibraryFactory +instanceKlass org/gradle/internal/nativeintegration/jansi/JansiStorageLocator +instanceKlass org/gradle/internal/nativeintegration/jansi/JansiBootPathConfigurer +instanceKlass java/lang/Class$3 +instanceKlass org/gradle/internal/service/DefaultServiceRegistry$ClassInspector$ClassDetails +instanceKlass java/util/concurrent/ConcurrentLinkedQueue$Node +instanceKlass org/gradle/internal/reflect/JavaMethod +instanceKlass org/gradle/internal/service/AbstractServiceMethod +instanceKlass java/util/LinkedList$ListItr +instanceKlass net/rubygrapefruit/platform/file/PosixFiles +instanceKlass net/rubygrapefruit/platform/file/Files +instanceKlass net/rubygrapefruit/platform/SystemInfo +instanceKlass net/rubygrapefruit/platform/file/FileSystems +instanceKlass net/rubygrapefruit/platform/memory/Memory +instanceKlass org/gradle/internal/jvm/Jvm +instanceKlass org/gradle/internal/jvm/JavaInfo +instanceKlass net/rubygrapefruit/platform/WindowsRegistry +instanceKlass org/gradle/internal/os/OperatingSystem +instanceKlass org/gradle/internal/service/RelevantMethodsBuilder +instanceKlass org/gradle/internal/Cast +instanceKlass org/gradle/internal/service/ServiceMethod +instanceKlass org/gradle/internal/service/MethodHandleBasedServiceMethodFactory +instanceKlass org/gradle/internal/service/DefaultServiceMethodFactory +instanceKlass org/gradle/internal/service/ServiceMethodFactory +instanceKlass org/gradle/internal/service/RelevantMethods +instanceKlass org/gradle/internal/service/DefaultServiceRegistry$ClassInspector +instanceKlass org/gradle/internal/service/DefaultServiceRegistry$ThisAsService +instanceKlass org/gradle/internal/concurrent/CompositeStoppable$1 +instanceKlass org/gradle/internal/concurrent/CompositeStoppable +instanceKlass org/gradle/internal/service/AnnotatedServiceLifecycleHandler$Registration +instanceKlass org/gradle/internal/service/DefaultServiceRegistry$OwnServices +instanceKlass org/gradle/internal/nativeintegration/network/HostnameLookup +instanceKlass org/gradle/internal/nativeintegration/console/ConsoleDetector +instanceKlass net/rubygrapefruit/platform/ProcessLauncher +instanceKlass net/rubygrapefruit/platform/NativeIntegration +instanceKlass org/gradle/initialization/GradleUserHomeDirProvider +instanceKlass org/gradle/internal/nativeintegration/filesystem/FileMetadataAccessor +instanceKlass org/gradle/internal/nativeintegration/NativeCapabilities +instanceKlass org/gradle/internal/nativeintegration/ProcessEnvironment +instanceKlass org/gradle/internal/service/ServiceRegistration +instanceKlass org/gradle/internal/service/ServiceProvider$Visitor +instanceKlass org/gradle/internal/service/DefaultServiceRegistry$ManagedObjectServiceProvider +instanceKlass org/gradle/internal/service/Service +instanceKlass org/gradle/internal/service/ServiceProvider +instanceKlass org/gradle/internal/concurrent/Stoppable +instanceKlass org/gradle/internal/service/DefaultServiceRegistry +instanceKlass org/gradle/internal/service/ContainsServices +instanceKlass org/gradle/internal/serialize/AbstractDecoder +instanceKlass org/gradle/internal/serialize/Decoder +instanceKlass org/gradle/launcher/bootstrap/EntryPoint$RecordingExecutionListener +instanceKlass org/gradle/internal/logging/events/operations/LogEventBuildOperationProgressDetails +instanceKlass org/gradle/internal/operations/logging/LogEventBuildOperationProgressDetails +instanceKlass org/gradle/internal/logging/slf4j/BuildOperationAwareLogger +instanceKlass org/gradle/internal/logging/sink/OutputEventRenderer$2 +instanceKlass org/gradle/internal/dispatch/ReflectionDispatch +instanceKlass org/gradle/internal/logging/sink/OutputEventRenderer$1 +instanceKlass org/gradle/internal/logging/sink/OutputEventRenderer$LazyListener +instanceKlass org/gradle/internal/logging/events/OutputEventListener$1 +instanceKlass java/lang/reflect/Proxy$ProxyBuilder$1 +instanceKlass java/lang/reflect/ProxyGenerator$ExceptionTableEntry +instanceKlass java/lang/reflect/ProxyGenerator$PrimitiveTypeInfo +instanceKlass java/lang/reflect/ProxyGenerator$FieldInfo +instanceKlass java/lang/reflect/ProxyGenerator$ConstantPool$Entry +instanceKlass java/lang/reflect/ProxyGenerator$MethodInfo +instanceKlass java/lang/reflect/ProxyGenerator$ProxyMethod +instanceKlass java/lang/reflect/ProxyGenerator$ConstantPool +instanceKlass java/lang/reflect/ProxyGenerator +instanceKlass java/lang/reflect/Proxy$$Lambda$16 +instanceKlass java/lang/PublicMethods +instanceKlass java/lang/reflect/Proxy$ProxyBuilder +instanceKlass jdk/internal/loader/AbstractClassLoaderValue$Memoizer +instanceKlass java/lang/reflect/Proxy$$Lambda$15 +instanceKlass java/lang/reflect/Proxy +instanceKlass org/gradle/internal/dispatch/ProxyDispatchAdapter$DispatchingInvocationHandler +instanceKlass java/lang/reflect/InvocationHandler +instanceKlass org/gradle/internal/dispatch/ProxyDispatchAdapter +instanceKlass org/gradle/internal/logging/events/operations/ProgressStartBuildOperationProgressDetails +instanceKlass org/gradle/internal/operations/logging/ProgressStartBuildOperationProgressDetails +instanceKlass org/gradle/internal/logging/sink/OutputEventTransformer +instanceKlass org/gradle/internal/exceptions/MultiCauseException +instanceKlass org/gradle/internal/event/AbstractBroadcastDispatch +instanceKlass org/gradle/internal/event/ListenerBroadcast +instanceKlass org/gradle/internal/dispatch/Dispatch +instanceKlass org/gradle/internal/nativeintegration/console/ConsoleMetaData +instanceKlass org/gradle/internal/logging/console/ColorMap +instanceKlass org/gradle/internal/logging/text/StyledTextOutput +instanceKlass org/gradle/api/logging/StandardOutputListener +instanceKlass org/gradle/internal/Factory +instanceKlass org/gradle/internal/logging/format/LogHeaderFormatter +instanceKlass org/gradle/internal/logging/config/LoggingSystem$Snapshot +instanceKlass org/gradle/internal/logging/events/OutputEvent +instanceKlass org/gradle/internal/logging/sink/OutputEventRenderer +instanceKlass org/gradle/internal/logging/config/LoggingRouter +instanceKlass org/gradle/internal/logging/LoggingOutputInternal +instanceKlass org/gradle/api/logging/LoggingOutput +instanceKlass org/gradle/internal/logging/config/LoggingSystem +instanceKlass org/gradle/internal/logging/slf4j/OutputEventListenerBackedLoggerContext$NoOpLogger +instanceKlass org/gradle/api/logging/Logger +instanceKlass java/util/concurrent/atomic/AtomicReference +instanceKlass org/gradle/internal/time/TimeSource$1 +instanceKlass org/gradle/internal/time/TimeSource +instanceKlass org/gradle/internal/time/MonotonicClock +instanceKlass org/gradle/internal/time/CountdownTimer +instanceKlass org/gradle/internal/time/Timer +instanceKlass org/gradle/internal/time/Clock +instanceKlass org/gradle/internal/time/Time +instanceKlass org/gradle/internal/logging/events/OutputEventListener +instanceKlass org/gradle/internal/logging/slf4j/OutputEventListenerBackedLoggerContext +instanceKlass org/slf4j/impl/StaticLoggerBinder +instanceKlass org/slf4j/spi/LoggerFactoryBinder +instanceKlass java/net/URLClassLoader$3$1 +instanceKlass java/net/URLClassLoader$3 +instanceKlass jdk/internal/loader/URLClassPath$1 +instanceKlass java/lang/CompoundEnumeration +instanceKlass jdk/internal/loader/BuiltinClassLoader$1 +instanceKlass java/util/Collections$EmptyEnumeration +instanceKlass org/slf4j/helpers/Util +instanceKlass org/slf4j/helpers/NOPLoggerFactory +instanceKlass java/util/concurrent/LinkedBlockingQueue$Node +instanceKlass java/util/concurrent/locks/AbstractQueuedSynchronizer$ConditionObject +instanceKlass java/util/concurrent/locks/Condition +instanceKlass java/util/concurrent/locks/AbstractQueuedSynchronizer$Node +instanceKlass java/util/concurrent/BlockingQueue +instanceKlass org/slf4j/Logger +instanceKlass org/slf4j/helpers/SubstituteLoggerFactory +instanceKlass org/slf4j/ILoggerFactory +instanceKlass org/slf4j/event/LoggingEvent +instanceKlass org/slf4j/LoggerFactory +instanceKlass org/slf4j/helpers/BasicMarker +instanceKlass org/slf4j/Marker +instanceKlass org/slf4j/helpers/BasicMarkerFactory +instanceKlass org/slf4j/IMarkerFactory +instanceKlass org/slf4j/MarkerFactory +instanceKlass org/gradle/api/logging/Logging +instanceKlass org/gradle/launcher/daemon/configuration/DaemonServerConfiguration +instanceKlass org/gradle/internal/service/ServiceRegistry +instanceKlass org/gradle/internal/service/ServiceLookup +instanceKlass org/gradle/api/Action +instanceKlass org/gradle/internal/logging/text/StyledTextOutputFactory +instanceKlass org/gradle/api/logging/configuration/LoggingConfiguration +instanceKlass org/gradle/initialization/BuildClientMetaData +instanceKlass org/gradle/launcher/bootstrap/ExecutionCompleter +instanceKlass org/gradle/launcher/bootstrap/ExecutionListener +instanceKlass org/gradle/launcher/bootstrap/EntryPoint +instanceKlass java/io/FilePermissionCollection$1 +instanceKlass java/io/FileInputStream$1 +instanceKlass java/security/Security$1 +instanceKlass java/security/Security +instanceKlass sun/security/util/SecurityProperties +instanceKlass sun/security/util/FilePermCompat +instanceKlass java/io/FilePermission$1 +instanceKlass jdk/internal/access/JavaIOFilePermissionAccess +instanceKlass sun/net/www/MessageHeader +instanceKlass java/net/URLConnection +instanceKlass java/util/LinkedList$Node +instanceKlass java/net/URLClassLoader$1 +instanceKlass java/net/URLClassLoader$7 +instanceKlass jdk/internal/access/JavaNetURLClassLoaderAccess +instanceKlass jdk/internal/jimage/ImageLocation +instanceKlass jdk/internal/jimage/decompressor/Decompressor +instanceKlass jdk/internal/jimage/ImageStringsReader +instanceKlass jdk/internal/jimage/ImageStrings +instanceKlass jdk/internal/jimage/ImageHeader +instanceKlass jdk/internal/jimage/NativeImageBuffer$1 +instanceKlass jdk/internal/jimage/NativeImageBuffer +instanceKlass jdk/internal/jimage/BasicImageReader$1 +instanceKlass jdk/internal/jimage/BasicImageReader +instanceKlass jdk/internal/jimage/ImageReader +instanceKlass jdk/internal/jimage/ImageReaderFactory$1 +instanceKlass java/nio/file/Paths +instanceKlass jdk/internal/jimage/ImageReaderFactory +instanceKlass jdk/internal/module/SystemModuleFinders$SystemImage +instanceKlass jdk/internal/module/SystemModuleFinders$SystemModuleReader +instanceKlass java/lang/module/ModuleReader +instanceKlass jdk/internal/loader/BuiltinClassLoader$5 +instanceKlass jdk/internal/loader/BuiltinClassLoader$2 +instanceKlass jdk/internal/module/Resources +instanceKlass jdk/internal/util/ArraysSupport +instanceKlass java/io/RandomAccessFile$1 +instanceKlass java/lang/invoke/VarHandle$AccessDescriptor +instanceKlass org/gradle/api/Action +instanceKlass org/gradle/internal/IoActions +instanceKlass java/util/Properties$LineReader +instanceKlass java/util/regex/Pattern$BmpCharPredicate$$Lambda$14 +instanceKlass java/util/regex/Pattern$$Lambda$13 +instanceKlass java/util/regex/Pattern$$Lambda$12 +instanceKlass java/util/regex/Pattern$BitClass$$Lambda$11 +instanceKlass java/util/regex/Pattern$TreeInfo +instanceKlass java/util/regex/Pattern$CharPredicate$$Lambda$10 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass java/util/regex/CharPredicates$$Lambda$9 +instanceKlass org/gradle/api/Transformer +instanceKlass org/gradle/util/internal/GUtil +instanceKlass java/util/zip/ZipFile$$Lambda$8 +instanceKlass org/gradle/api/internal/classpath/DefaultModuleRegistry$$Lambda$7 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass java/util/LinkedHashMap$LinkedHashIterator +instanceKlass java/util/Collections$1 +instanceKlass org/gradle/api/internal/classpath/DefaultModuleRegistry$DefaultModule +instanceKlass java/util/regex/IntHashSet +instanceKlass java/util/regex/Matcher +instanceKlass java/util/regex/MatchResult +instanceKlass java/util/regex/Pattern$$Lambda$6 +instanceKlass java/util/regex/CharPredicates$$Lambda$5 +instanceKlass java/util/regex/Pattern$BmpCharPredicate +instanceKlass java/util/regex/Pattern$CharPredicate +instanceKlass java/util/regex/CharPredicates +instanceKlass java/util/regex/ASCII +instanceKlass java/util/regex/Pattern$Node +instanceKlass java/util/regex/Pattern +instanceKlass org/gradle/internal/service/CachingServiceLocator +instanceKlass java/io/Reader +instanceKlass org/gradle/internal/service/DefaultServiceLocator +instanceKlass org/gradle/internal/service/ServiceLocator +instanceKlass org/gradle/internal/classloader/DefaultClassLoaderFactory +instanceKlass org/gradle/api/internal/classpath/ManifestUtil +instanceKlass org/gradle/internal/Cast +instanceKlass java/util/AbstractList$Itr +instanceKlass org/gradle/internal/classloader/ClassLoaderSpec +instanceKlass org/gradle/internal/classloader/ClassLoaderVisitor +instanceKlass java/util/Collections$EmptyIterator +instanceKlass org/gradle/internal/classpath/DefaultClassPath +instanceKlass org/gradle/internal/classpath/ClassPath +instanceKlass org/gradle/internal/installation/GradleInstallation$1 +instanceKlass java/io/FileFilter +instanceKlass org/gradle/internal/installation/GradleInstallation +instanceKlass org/gradle/internal/classloader/ClasspathUtil +instanceKlass org/gradle/internal/installation/CurrentGradleInstallationLocator +instanceKlass org/gradle/internal/installation/CurrentGradleInstallation +instanceKlass org/gradle/api/internal/classpath/DefaultModuleRegistry$$Lambda$4 +instanceKlass org/gradle/api/specs/Spec +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass sun/reflect/misc/ReflectUtil +instanceKlass org/gradle/api/internal/classpath/Module +instanceKlass org/gradle/api/internal/classpath/DefaultModuleRegistry +instanceKlass org/gradle/cache/GlobalCache +instanceKlass org/gradle/api/internal/DefaultClassPathProvider +instanceKlass org/gradle/api/internal/ClassPathProvider +instanceKlass org/gradle/api/internal/DefaultClassPathRegistry +instanceKlass org/gradle/internal/classloader/ClassLoaderHierarchy +instanceKlass org/gradle/internal/classloader/ClassLoaderFactory +instanceKlass org/gradle/api/internal/ClassPathRegistry +instanceKlass org/gradle/api/internal/classpath/ModuleRegistry +instanceKlass org/gradle/launcher/bootstrap/ProcessBootstrap +instanceKlass java/lang/PublicMethods$Key +instanceKlass java/lang/PublicMethods$MethodList +instanceKlass org/gradle/launcher/daemon/bootstrap/GradleDaemon +instanceKlass java/security/SecureClassLoader$DebugHolder +instanceKlass java/security/Permissions$1 +instanceKlass java/security/PermissionCollection +instanceKlass java/security/SecureClassLoader$1 +instanceKlass java/security/SecureClassLoader$CodeSourceKey +instanceKlass java/util/zip/Checksum$1 +instanceKlass java/util/zip/CRC32 +instanceKlass java/util/zip/Checksum +instanceKlass sun/nio/ByteBuffered +instanceKlass java/lang/Package$VersionInfo +instanceKlass java/lang/NamedPackage +instanceKlass sun/security/util/ManifestEntryVerifier +instanceKlass jdk/internal/loader/Resource +instanceKlass java/util/StringTokenizer +instanceKlass java/util/jar/Attributes$Name +instanceKlass java/util/jar/Attributes +instanceKlass java/security/CodeSigner +instanceKlass sun/security/util/Debug +instanceKlass java/util/jar/JarVerifier +instanceKlass java/util/zip/ZipFile$InflaterCleanupAction +instanceKlass java/util/zip/Inflater$InflaterZStreamRef +instanceKlass java/util/zip/Inflater +instanceKlass java/util/zip/ZipEntry +instanceKlass java/util/jar/JarFile$1 +instanceKlass jdk/internal/util/jar/JarIndex +instanceKlass java/nio/Bits$1 +instanceKlass jdk/internal/access/JavaNioAccess$BufferPool +instanceKlass java/nio/Bits +instanceKlass sun/nio/ch/DirectBuffer +instanceKlass jdk/internal/perf/PerfCounter$CoreCounters +instanceKlass jdk/internal/perf/Perf +instanceKlass jdk/internal/perf/Perf$GetPerfAction +instanceKlass jdk/internal/perf/PerfCounter +instanceKlass java/util/zip/ZipUtils +instanceKlass java/util/zip/ZipFile$Source$End +instanceKlass java/lang/invoke/VarForm +instanceKlass java/lang/invoke/VarHandleGuards +instanceKlass jdk/internal/util/Preconditions$1 +instanceKlass java/lang/invoke/VarHandle$1 +instanceKlass java/lang/invoke/VarHandles +instanceKlass java/util/concurrent/atomic/AtomicBoolean +instanceKlass java/io/RandomAccessFile$2 +instanceKlass jdk/internal/access/JavaIORandomAccessFileAccess +instanceKlass java/io/RandomAccessFile +instanceKlass java/io/DataInput +instanceKlass java/io/DataOutput +instanceKlass java/nio/file/attribute/FileTime +instanceKlass sun/nio/fs/WindowsNativeDispatcher$CompletionStatus +instanceKlass sun/nio/fs/WindowsNativeDispatcher$AclInformation +instanceKlass sun/nio/fs/WindowsNativeDispatcher$Account +instanceKlass sun/nio/fs/WindowsNativeDispatcher$DiskFreeSpace +instanceKlass sun/nio/fs/WindowsNativeDispatcher$VolumeInformation +instanceKlass sun/nio/fs/WindowsNativeDispatcher$FirstStream +instanceKlass sun/nio/fs/WindowsNativeDispatcher$FirstFile +instanceKlass java/util/Enumeration +instanceKlass java/util/ArrayDeque$DeqIterator +instanceKlass java/lang/ClassLoaderHelper +instanceKlass java/lang/ClassLoader$NativeLibrary +instanceKlass java/lang/ClassLoader$2 +instanceKlass sun/nio/fs/WindowsNativeDispatcher$1 +instanceKlass sun/nio/fs/WindowsNativeDispatcher +instanceKlass sun/nio/fs/NativeBuffer$Deallocator +instanceKlass sun/nio/fs/NativeBuffer +instanceKlass sun/nio/fs/NativeBuffers +instanceKlass sun/nio/fs/WindowsFileAttributes +instanceKlass java/nio/file/attribute/DosFileAttributes +instanceKlass sun/nio/fs/AbstractBasicFileAttributeView +instanceKlass sun/nio/fs/DynamicFileAttributeView +instanceKlass sun/nio/fs/WindowsFileAttributeViews +instanceKlass sun/nio/fs/Util +instanceKlass java/nio/file/attribute/BasicFileAttributeView +instanceKlass java/nio/file/attribute/FileAttributeView +instanceKlass java/nio/file/attribute/AttributeView +instanceKlass java/nio/file/Files +instanceKlass java/nio/file/CopyOption +instanceKlass java/nio/file/attribute/BasicFileAttributes +instanceKlass sun/nio/fs/WindowsPath +instanceKlass java/nio/file/Path +instanceKlass java/nio/file/Watchable +instanceKlass java/net/URI$Parser +instanceKlass sun/nio/fs/WindowsPathParser$Result +instanceKlass sun/nio/fs/WindowsPathParser +instanceKlass java/util/Arrays$ArrayItr +instanceKlass java/nio/file/FileSystem +instanceKlass java/nio/file/OpenOption +instanceKlass java/nio/file/spi/FileSystemProvider +instanceKlass sun/nio/fs/DefaultFileSystemProvider +instanceKlass java/nio/file/FileSystems$DefaultFileSystemHolder$1 +instanceKlass java/nio/file/FileSystems$DefaultFileSystemHolder +instanceKlass java/nio/file/FileSystems +instanceKlass java/util/zip/ZipFile$Source$Key +instanceKlass java/util/zip/ZipFile$Source +instanceKlass java/util/zip/ZipFile$CleanableResource +instanceKlass java/util/zip/ZipCoder +instanceKlass java/lang/Runtime$Version +instanceKlass java/util/jar/JavaUtilJarAccessImpl +instanceKlass jdk/internal/access/JavaUtilJarAccess +instanceKlass sun/nio/cs/ThreadLocalCoders$Cache +instanceKlass sun/nio/cs/ThreadLocalCoders +instanceKlass jdk/internal/loader/FileURLMapper +instanceKlass jdk/internal/loader/URLClassPath$JarLoader$1 +instanceKlass java/util/zip/ZipFile$1 +instanceKlass jdk/internal/access/JavaUtilZipFileAccess +instanceKlass java/util/zip/ZipFile +instanceKlass java/util/zip/ZipConstants +instanceKlass jdk/internal/loader/URLClassPath$Loader +instanceKlass jdk/internal/loader/URLClassPath$3 +instanceKlass java/security/PrivilegedExceptionAction +instanceKlass sun/net/util/URLUtil +instanceKlass sun/launcher/LauncherHelper +instanceKlass jdk/internal/vm/PostVMInitHook$1 +instanceKlass java/lang/StringCoding$StringEncoder +instanceKlass jdk/internal/util/EnvUtils +instanceKlass jdk/internal/vm/PostVMInitHook$2 +instanceKlass sun/util/locale/InternalLocaleBuilder$CaseInsensitiveChar +instanceKlass sun/util/locale/InternalLocaleBuilder +instanceKlass sun/util/locale/LocaleUtils +instanceKlass sun/util/locale/BaseLocale$Key +instanceKlass sun/util/locale/BaseLocale +instanceKlass sun/util/locale/LocaleObjectCache +instanceKlass java/util/Locale +instanceKlass jdk/internal/vm/PostVMInitHook +instanceKlass jdk/internal/module/ModuleBootstrap$2 +instanceKlass jdk/internal/module/IllegalAccessLogger$Builder +instanceKlass jdk/internal/module/IllegalAccessLogger +instanceKlass java/lang/WeakPairMap$$Lambda$3 +instanceKlass jdk/internal/org/objectweb/asm/FieldVisitor +instanceKlass java/lang/Module$$Lambda$2 +instanceKlass java/util/function/BiFunction +instanceKlass java/lang/WeakPairMap$Pair$Lookup +instanceKlass java/lang/WeakPairMap$Pair +instanceKlass java/lang/WeakPairMap +instanceKlass java/lang/Module$ReflectionData +instanceKlass jdk/internal/misc/InnocuousThread$2 +instanceKlass jdk/internal/misc/InnocuousThread$3 +instanceKlass jdk/internal/ref/CleanerFactory$1$1 +instanceKlass java/lang/ref/Cleaner$Cleanable +instanceKlass jdk/internal/ref/CleanerImpl +instanceKlass java/lang/ref/Cleaner$1 +instanceKlass java/lang/ref/Cleaner +instanceKlass jdk/internal/ref/CleanerFactory$1 +instanceKlass java/util/concurrent/ThreadFactory +instanceKlass jdk/internal/ref/CleanerFactory +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/InvokerBytecodeGenerator$CpPatch +instanceKlass java/lang/invoke/LambdaFormBuffer +instanceKlass java/lang/invoke/LambdaFormEditor +instanceKlass java/lang/invoke/DelegatingMethodHandle$Holder +instanceKlass sun/invoke/util/Wrapper$1 +instanceKlass java/lang/invoke/DirectMethodHandle$1 +instanceKlass sun/invoke/empty/Empty +instanceKlass sun/invoke/util/VerifyType +instanceKlass java/lang/invoke/ClassSpecializer$Factory +instanceKlass java/lang/invoke/ClassSpecializer$SpeciesData +instanceKlass java/lang/invoke/ClassSpecializer$1 +instanceKlass java/lang/invoke/ClassSpecializer +instanceKlass java/lang/invoke/InnerClassLambdaMetafactory$1 +instanceKlass jdk/internal/module/ModuleBootstrap$$Lambda$1 +instanceKlass jdk/internal/org/objectweb/asm/AnnotationVisitor +instanceKlass jdk/internal/org/objectweb/asm/Frame +instanceKlass jdk/internal/org/objectweb/asm/Label +instanceKlass jdk/internal/org/objectweb/asm/MethodVisitor +instanceKlass jdk/internal/org/objectweb/asm/Item +instanceKlass jdk/internal/org/objectweb/asm/ByteVector +instanceKlass jdk/internal/org/objectweb/asm/ClassVisitor +instanceKlass sun/invoke/util/BytecodeDescriptor +instanceKlass java/lang/invoke/InfoFromMemberName +instanceKlass java/lang/invoke/MethodHandleInfo +instanceKlass sun/security/action/GetBooleanAction +instanceKlass jdk/internal/org/objectweb/asm/Type +instanceKlass java/lang/invoke/AbstractValidatingLambdaMetafactory +instanceKlass java/lang/invoke/MethodHandleImpl$1 +instanceKlass jdk/internal/access/JavaLangInvokeAccess +instanceKlass java/lang/invoke/Invokers$Holder +instanceKlass java/lang/invoke/BootstrapMethodInvoker +instanceKlass java/lang/invoke/InvokerBytecodeGenerator$2 +instanceKlass java/lang/invoke/InvokerBytecodeGenerator +instanceKlass java/lang/invoke/LambdaForm$Holder +instanceKlass java/lang/invoke/LambdaForm$Name +instanceKlass java/lang/invoke/Invokers +instanceKlass java/lang/invoke/MethodHandleImpl +instanceKlass sun/invoke/util/ValueConversions +instanceKlass java/lang/invoke/DirectMethodHandle$Holder +instanceKlass java/lang/invoke/LambdaForm$NamedFunction +instanceKlass sun/invoke/util/Wrapper$Format +instanceKlass sun/invoke/util/VerifyAccess +instanceKlass java/security/Permission +instanceKlass java/security/Guard +instanceKlass java/lang/invoke/MemberName$Factory +instanceKlass java/lang/invoke/MethodHandles +instanceKlass java/lang/invoke/MethodTypeForm +instanceKlass java/lang/Void +instanceKlass java/lang/invoke/MethodType$ConcurrentWeakInternSet +instanceKlass java/lang/invoke/MethodHandles$Lookup +instanceKlass java/lang/invoke/LambdaMetafactory +instanceKlass java/lang/ModuleLayer$Controller +instanceKlass java/util/HashMap$HashIterator +instanceKlass jdk/internal/module/ServicesCatalog$ServiceProvider +instanceKlass java/util/concurrent/CopyOnWriteArrayList +instanceKlass java/util/Collections$UnmodifiableCollection$1 +instanceKlass java/util/Collections$UnmodifiableCollection +instanceKlass java/util/ArrayList$Itr +instanceKlass java/util/ImmutableCollections$ListItr +instanceKlass java/util/ListIterator +instanceKlass java/lang/ModuleLayer +instanceKlass jdk/internal/module/ModuleLoaderMap$Mapper +instanceKlass java/util/function/Function +instanceKlass jdk/internal/module/ModuleLoaderMap +instanceKlass java/util/ImmutableCollections$Set12$1 +instanceKlass java/util/ImmutableCollections$MapN$MapNIterator +instanceKlass java/util/AbstractMap$1$1 +instanceKlass java/lang/module/ResolvedModule +instanceKlass java/lang/module/Configuration +instanceKlass java/util/ImmutableCollections$SetN$SetNIterator +instanceKlass jdk/internal/loader/BuiltinClassLoader$LoadedModule +instanceKlass jdk/internal/util/Preconditions +instanceKlass java/util/Deque +instanceKlass java/util/Queue +instanceKlass sun/net/util/IPAddressUtil +instanceKlass java/net/URLStreamHandler +instanceKlass sun/net/www/ParseUtil +instanceKlass java/io/ExpiringCache$Entry +instanceKlass java/net/URL$3 +instanceKlass jdk/internal/access/JavaNetURLAccess +instanceKlass java/net/URL$DefaultFactory +instanceKlass java/net/URLStreamHandlerFactory +instanceKlass jdk/internal/loader/URLClassPath +instanceKlass java/security/Principal +instanceKlass java/security/ProtectionDomain$Key +instanceKlass java/security/ProtectionDomain$JavaSecurityAccessImpl +instanceKlass jdk/internal/access/JavaSecurityAccess +instanceKlass java/lang/ClassLoader$ParallelLoaders +instanceKlass jdk/internal/loader/AbstractClassLoaderValue +instanceKlass jdk/internal/module/ServicesCatalog +instanceKlass jdk/internal/loader/BootLoader +instanceKlass java/util/Optional +instanceKlass jdk/internal/module/ModuleBootstrap$Counters +instanceKlass jdk/internal/module/SystemModuleFinders$SystemModuleFinder +instanceKlass java/lang/module/ModuleFinder +instanceKlass jdk/internal/module/SystemModuleFinders$3 +instanceKlass jdk/internal/module/ModuleHashes$HashSupplier +instanceKlass java/util/KeyValueHolder +instanceKlass jdk/internal/module/SystemModuleFinders$2 +instanceKlass java/util/function/Supplier +instanceKlass java/lang/module/ModuleReference +instanceKlass jdk/internal/module/ModuleResolution +instanceKlass java/util/Collections$UnmodifiableMap +instanceKlass jdk/internal/module/ModuleHashes$Builder +instanceKlass jdk/internal/module/ModuleHashes +instanceKlass jdk/internal/module/ModuleTarget +instanceKlass java/lang/Enum +instanceKlass java/lang/module/ModuleDescriptor$Version +instanceKlass java/lang/module/ModuleDescriptor$Provides +instanceKlass java/lang/module/ModuleDescriptor$Opens +instanceKlass java/lang/module/ModuleDescriptor$Exports +instanceKlass java/lang/module/ModuleDescriptor$Requires +instanceKlass jdk/internal/module/Builder +instanceKlass jdk/internal/module/SystemModules$default +instanceKlass jdk/internal/module/SystemModules +instanceKlass jdk/internal/module/SystemModulesMap +instanceKlass java/net/URI$1 +instanceKlass jdk/internal/access/JavaNetUriAccess +instanceKlass java/net/URI +instanceKlass jdk/internal/module/SystemModuleFinders +instanceKlass jdk/internal/module/ModulePatcher +instanceKlass java/util/ImmutableCollections +instanceKlass java/io/ExpiringCache +instanceKlass java/io/FileSystem +instanceKlass java/io/DefaultFileSystem +instanceKlass java/io/File +instanceKlass java/lang/module/ModuleDescriptor$1 +instanceKlass jdk/internal/access/JavaLangModuleAccess +instanceKlass java/lang/module/ModuleDescriptor +instanceKlass jdk/internal/module/ModuleBootstrap +instanceKlass java/lang/CharacterData +instanceKlass java/lang/invoke/MethodHandleStatics +instanceKlass java/lang/System$2 +instanceKlass jdk/internal/access/JavaLangAccess +instanceKlass sun/io/Win32ErrorMode +instanceKlass jdk/internal/misc/OSEnvironment +instanceKlass java/lang/Integer$IntegerCache +instanceKlass jdk/internal/misc/Signal$NativeHandler +instanceKlass java/util/Hashtable$Entry +instanceKlass jdk/internal/misc/Signal +instanceKlass java/lang/Terminator$1 +instanceKlass jdk/internal/misc/Signal$Handler +instanceKlass java/lang/Terminator +instanceKlass java/nio/charset/CoderResult +instanceKlass java/lang/Readable +instanceKlass java/nio/ByteOrder +instanceKlass java/nio/Buffer$1 +instanceKlass jdk/internal/access/JavaNioAccess +instanceKlass java/nio/charset/CharsetEncoder +instanceKlass sun/nio/cs/ArrayEncoder +instanceKlass sun/security/action/GetPropertyAction +instanceKlass java/io/Writer +instanceKlass java/io/OutputStream +instanceKlass java/io/Flushable +instanceKlass java/io/FileDescriptor$1 +instanceKlass jdk/internal/access/JavaIOFileDescriptorAccess +instanceKlass java/io/FileDescriptor +instanceKlass jdk/internal/util/StaticProperty +instanceKlass java/util/concurrent/ConcurrentHashMap$MapEntry +instanceKlass java/util/concurrent/ConcurrentHashMap$Traverser +instanceKlass java/util/Iterator +instanceKlass java/lang/reflect/Array +instanceKlass java/util/Collections$SynchronizedCollection +instanceKlass java/util/List +instanceKlass java/util/RandomAccess +instanceKlass java/util/Collections +instanceKlass java/util/concurrent/ConcurrentHashMap$CollectionView +instanceKlass java/util/Properties$EntrySet +instanceKlass java/lang/VersionProps +instanceKlass java/lang/StringCoding$Result +instanceKlass java/nio/charset/CodingErrorAction +instanceKlass java/nio/charset/CharsetDecoder +instanceKlass sun/nio/cs/ArrayDecoder +instanceKlass sun/nio/cs/DelegatableDecoder +instanceKlass java/lang/StringUTF16 +instanceKlass sun/nio/cs/DoubleByte +instanceKlass java/lang/StringCoding$StringDecoder +instanceKlass java/lang/ThreadLocal$ThreadLocalMap +instanceKlass java/lang/StringCoding +instanceKlass java/util/HashMap$Node +instanceKlass jdk/internal/reflect/Reflection +instanceKlass java/lang/Class$1 +instanceKlass java/lang/reflect/ReflectAccess +instanceKlass jdk/internal/reflect/LangReflectAccess +instanceKlass java/lang/reflect/Modifier +instanceKlass java/lang/Class$Atomic +instanceKlass java/lang/Class$ReflectionData +instanceKlass java/nio/charset/StandardCharsets +instanceKlass sun/nio/cs/HistoricallyNamedCharset +instanceKlass java/lang/Math +instanceKlass java/util/Arrays +instanceKlass java/lang/ThreadLocal +instanceKlass java/nio/charset/spi/CharsetProvider +instanceKlass java/nio/charset/Charset +instanceKlass java/lang/StringLatin1 +instanceKlass jdk/internal/misc/VM +instanceKlass jdk/internal/access/SharedSecrets +instanceKlass java/lang/ref/Reference$1 +instanceKlass jdk/internal/access/JavaLangRefAccess +instanceKlass java/lang/ref/ReferenceQueue$Lock +instanceKlass java/lang/ref/ReferenceQueue +instanceKlass jdk/internal/reflect/ReflectionFactory +instanceKlass java/util/concurrent/locks/LockSupport +instanceKlass java/util/concurrent/ConcurrentHashMap$Node +instanceKlass java/util/Map$Entry +instanceKlass java/util/concurrent/ConcurrentHashMap$CounterCell +instanceKlass java/util/concurrent/locks/ReentrantLock +instanceKlass java/util/concurrent/locks/Lock +instanceKlass java/lang/Runtime +instanceKlass java/util/concurrent/ConcurrentMap +instanceKlass java/util/AbstractMap +instanceKlass java/security/cert/Certificate +instanceKlass jdk/internal/reflect/ReflectionFactory$GetReflectionFactoryAction +instanceKlass java/security/PrivilegedAction +instanceKlass java/util/Objects +instanceKlass java/util/AbstractCollection +instanceKlass java/util/Set +instanceKlass java/util/Collection +instanceKlass java/lang/Iterable +instanceKlass java/security/AccessController +instanceKlass java/lang/String$CaseInsensitiveComparator +instanceKlass java/util/Comparator +instanceKlass java/io/ObjectStreamField +instanceKlass java/lang/Number +instanceKlass java/lang/Character +instanceKlass java/lang/Boolean +instanceKlass java/util/concurrent/locks/AbstractOwnableSynchronizer +instanceKlass java/lang/LiveStackFrame +instanceKlass java/lang/StackFrameInfo +instanceKlass java/lang/StackWalker$StackFrame +instanceKlass java/lang/StackStreamFactory$AbstractStackWalker +instanceKlass java/lang/StackWalker +instanceKlass java/nio/Buffer +instanceKlass java/lang/StackTraceElement +instanceKlass java/security/CodeSource +instanceKlass jdk/internal/loader/ClassLoaders +instanceKlass java/util/jar/Manifest +instanceKlass java/net/URL +instanceKlass java/io/InputStream +instanceKlass java/io/Closeable +instanceKlass java/lang/AutoCloseable +instanceKlass jdk/internal/module/Modules +instanceKlass jdk/internal/misc/Unsafe +instanceKlass java/lang/AbstractStringBuilder +instanceKlass java/lang/Appendable +instanceKlass java/lang/AssertionStatusDirectives +instanceKlass java/lang/invoke/MethodHandleNatives$CallSiteContext +instanceKlass java/lang/invoke/CallSite +instanceKlass java/lang/invoke/MethodType +instanceKlass java/lang/invoke/LambdaForm +instanceKlass java/lang/invoke/MethodHandleNatives +instanceKlass java/lang/invoke/ResolvedMethodName +instanceKlass java/lang/invoke/MemberName +instanceKlass java/lang/invoke/VarHandle +instanceKlass java/lang/invoke/MethodHandle +instanceKlass jdk/internal/reflect/CallerSensitive +instanceKlass java/lang/annotation/Annotation +instanceKlass jdk/internal/reflect/FieldAccessor +instanceKlass jdk/internal/reflect/ConstantPool +instanceKlass jdk/internal/reflect/ConstructorAccessor +instanceKlass jdk/internal/reflect/MethodAccessor +instanceKlass jdk/internal/reflect/MagicAccessorImpl +instanceKlass java/lang/reflect/Parameter +instanceKlass java/lang/reflect/Member +instanceKlass java/lang/reflect/AccessibleObject +instanceKlass java/lang/Module +instanceKlass java/util/Dictionary +instanceKlass java/util/Map +instanceKlass java/lang/ThreadGroup +instanceKlass java/lang/Thread$UncaughtExceptionHandler +instanceKlass java/lang/Thread +instanceKlass java/lang/Runnable +instanceKlass java/lang/ref/Reference +instanceKlass java/security/AccessControlContext +instanceKlass java/security/ProtectionDomain +instanceKlass java/lang/SecurityManager +instanceKlass java/lang/Throwable +instanceKlass java/lang/System +instanceKlass java/lang/ClassLoader +instanceKlass java/lang/Cloneable +instanceKlass java/lang/Class +instanceKlass java/lang/reflect/Type +instanceKlass java/lang/reflect/GenericDeclaration +instanceKlass java/lang/reflect/AnnotatedElement +instanceKlass java/lang/String +instanceKlass java/lang/CharSequence +instanceKlass java/lang/Comparable +instanceKlass java/io/Serializable +ciInstanceKlass java/lang/Object 1 1 92 7 10 10 10 10 8 10 10 10 10 100 8 10 3 8 10 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 7 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 12 12 7 12 12 1 12 7 12 12 12 1 1 12 1 12 1 1 1 1 1 1 1 1 1 1 1 1 +ciInstanceKlass java/io/Serializable 1 0 7 100 100 1 1 1 1 +ciInstanceKlass java/lang/String 1 1 878 10 8 9 9 9 10 10 10 9 10 7 10 10 10 10 10 100 8 10 10 9 9 8 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 100 10 10 100 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 100 100 10 10 11 11 10 10 10 10 10 10 9 11 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 11 10 10 10 10 10 10 100 10 7 10 10 10 10 10 8 10 10 100 3 3 7 10 10 10 10 10 11 7 10 10 7 10 10 10 11 11 11 7 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 100 100 10 100 10 10 100 10 10 10 7 10 10 10 10 8 10 10 10 8 8 10 10 10 10 10 10 10 100 10 8 10 10 10 7 3 8 8 8 10 10 10 10 10 10 8 8 10 8 8 8 8 8 10 10 10 8 7 10 10 10 7 9 7 10 100 100 1 1 1 1 1 1 1 1 1 1 1 1 1 5 0 1 1 1 1 1 1 1 1 1 3 1 3 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 7 1 1 1 100 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 100 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 1 12 12 12 12 12 12 12 7 12 1 7 7 12 12 12 12 1 12 7 12 12 12 12 12 12 12 12 12 12 12 12 12 12 1 12 12 1 12 12 12 12 7 12 12 12 12 12 12 12 12 12 12 1 1 12 12 12 12 12 12 12 12 12 7 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 7 12 12 12 12 7 12 12 12 12 7 12 12 7 12 1 1 12 12 12 1 12 1 1 12 12 12 12 7 12 12 12 1 12 12 100 12 12 12 1 12 7 12 12 12 12 12 12 12 12 12 12 12 1 1 1 12 1 100 12 1 1 12 1 12 12 1 12 12 1 1 12 12 12 100 12 100 12 100 12 1 1 12 12 1 1 1 1 12 12 12 12 1 1 1 1 1 1 1 12 12 12 1 1 12 12 12 1 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/lang/String COMPACT_STRINGS Z 1 +staticfield java/lang/String serialPersistentFields [Ljava/io/ObjectStreamField; 0 [Ljava/io/ObjectStreamField; +staticfield java/lang/String CASE_INSENSITIVE_ORDER Ljava/util/Comparator; java/lang/String$CaseInsensitiveComparator +ciInstanceKlass java/lang/Class 1 1 1435 10 9 9 7 10 10 8 10 8 8 10 10 10 10 10 10 10 10 10 10 10 8 10 8 8 10 7 8 8 8 10 11 10 10 8 10 10 10 10 9 10 10 10 18 10 7 10 10 10 100 10 9 7 100 8 10 10 10 10 7 10 7 100 10 10 9 10 10 7 10 100 10 10 10 9 10 10 10 9 10 10 100 10 10 10 10 9 8 10 10 10 10 10 10 9 10 7 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 100 8 10 10 7 10 7 11 10 10 10 10 10 10 8 10 10 8 9 10 10 10 10 100 9 10 9 10 10 10 8 10 10 10 10 100 10 10 10 10 10 10 10 7 10 10 10 10 10 10 10 10 10 7 10 10 11 10 10 10 10 10 10 100 10 10 10 100 100 10 10 10 10 10 10 10 10 11 10 10 9 10 9 7 10 9 10 7 10 9 10 10 10 10 10 10 10 8 10 10 9 9 10 7 9 10 10 7 10 10 10 10 9 10 9 10 10 9 9 10 10 9 100 10 10 7 10 100 11 9 9 7 10 9 9 10 10 9 7 10 10 10 10 10 10 10 9 10 10 10 10 8 7 10 7 8 8 8 8 10 9 9 10 7 9 7 10 7 10 10 9 8 10 7 10 7 10 9 100 8 10 7 4 10 10 11 10 100 10 10 8 8 10 9 11 7 11 9 10 10 10 9 9 10 10 10 10 10 11 11 11 11 7 11 10 10 7 11 10 10 10 11 11 7 10 10 9 9 10 10 10 10 100 10 10 7 9 100 7 100 100 1 1 1 7 1 1 1 1 1 3 1 3 1 3 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 100 100 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 1 12 1 12 1 1 12 12 12 12 12 12 7 12 12 12 12 1 12 1 1 12 1 1 1 1 12 12 12 1 7 12 12 12 7 12 7 12 12 7 12 12 1 15 16 15 16 12 7 12 1 12 12 7 1 12 12 1 1 1 12 12 12 12 1 12 1 1 12 12 12 12 1 100 12 12 12 12 12 12 12 12 12 1 12 12 12 12 1 12 12 12 12 12 12 12 7 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 1 1 12 1 12 1 12 100 12 12 12 12 12 1 12 12 1 12 12 12 12 12 1 12 12 12 12 12 1 12 12 12 12 1 12 12 12 12 12 12 12 1 12 12 12 12 12 12 12 1 7 12 12 12 12 100 12 12 12 1 12 12 1 1 12 12 12 12 12 12 100 12 7 12 12 12 12 12 12 1 12 12 1 12 12 100 12 12 12 100 12 12 12 12 1 12 12 12 12 12 1 12 12 12 1 12 12 7 12 7 12 12 12 12 12 12 12 12 12 12 12 1 12 1 12 100 12 12 1 12 12 12 12 12 12 1 12 12 12 12 12 12 12 12 12 1 7 1 1 1 1 12 12 12 12 1 12 1 1 1 12 7 12 12 1 12 1 12 12 1 1 1 12 12 12 1 12 1 1 12 12 12 1 12 12 100 12 7 12 12 12 12 12 12 12 12 12 12 12 12 1 12 7 12 12 1 12 100 12 12 12 12 1 12 12 12 100 12 12 100 12 12 12 1 12 12 1 12 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 10 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 12 1 1 100 1 1 100 1 1 +staticfield java/lang/Class EMPTY_CLASS_ARRAY [Ljava/lang/Class; 0 [Ljava/lang/Class; +staticfield java/lang/Class serialPersistentFields [Ljava/io/ObjectStreamField; 0 [Ljava/io/ObjectStreamField; +ciInstanceKlass java/lang/Cloneable 1 0 7 100 100 1 1 1 1 +instanceKlass org/codehaus/groovy/reflection/ClassLoaderForClassArtifacts +instanceKlass org/codehaus/groovy/reflection/SunClassLoader +instanceKlass org/gradle/internal/classloader/CachingClassLoader +instanceKlass org/gradle/internal/classloader/MultiParentClassLoader +instanceKlass org/gradle/internal/classloader/FilteringClassLoader$RetrieveSystemPackagesClassLoader +instanceKlass org/gradle/internal/classloader/FilteringClassLoader +instanceKlass org/gradle/internal/classloader/FilteringClassLoader +instanceKlass jdk/internal/reflect/DelegatingClassLoader +instanceKlass java/security/SecureClassLoader +ciInstanceKlass java/lang/ClassLoader 1 1 1189 9 10 9 10 7 10 10 9 10 100 10 10 10 100 8 10 10 10 10 7 10 7 7 7 10 10 9 7 10 9 9 9 9 9 7 10 9 10 10 9 9 7 9 7 10 10 9 10 7 10 8 10 10 10 7 10 10 8 10 10 10 10 10 10 10 10 7 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 100 10 100 10 10 10 10 10 100 8 10 8 10 10 100 8 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 8 11 9 11 10 8 8 10 100 10 10 10 10 10 10 10 10 10 7 10 10 10 7 10 100 18 10 10 10 7 10 10 10 7 10 10 10 10 8 100 10 10 9 10 10 100 8 10 10 8 8 10 10 7 10 10 100 100 10 100 100 10 10 10 10 10 10 9 10 10 10 10 10 8 10 7 18 10 10 10 10 8 10 10 18 11 7 10 10 10 11 10 18 10 11 18 11 10 10 9 7 10 10 8 10 9 8 10 9 8 7 10 10 100 8 10 10 10 8 8 10 10 10 8 8 10 10 10 7 10 10 10 10 10 11 11 11 11 11 7 10 9 9 9 10 10 100 10 100 10 10 10 9 9 9 9 9 9 8 10 10 10 10 10 11 10 100 10 10 10 7 7 10 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 12 12 12 12 1 12 12 12 12 1 12 12 12 1 1 12 7 12 12 1 1 1 12 12 12 1 12 12 12 12 12 1 12 12 12 12 12 12 1 12 1 12 12 12 1 1 12 12 1 12 7 12 1 12 12 12 12 12 12 12 12 1 12 7 12 12 12 12 12 12 12 12 12 100 12 12 12 12 1 12 1 12 7 12 12 12 1 1 1 12 12 1 1 12 12 12 12 12 12 12 12 12 12 12 12 7 12 12 12 12 12 12 12 12 12 12 1 12 12 12 1 1 12 1 12 12 12 12 12 7 12 12 7 1 12 12 1 12 1 1 15 16 15 16 12 100 12 100 12 7 12 1 12 12 12 1 12 12 7 12 12 1 1 12 12 7 12 12 1 1 12 1 1 12 12 1 12 100 12 1 1 12 1 1 12 12 12 12 12 12 100 12 12 12 12 12 12 1 12 1 16 15 16 12 12 12 12 12 1 12 12 16 15 16 12 12 1 12 12 12 15 12 7 12 16 15 16 12 12 12 12 12 1 12 12 1 12 12 1 12 12 1 1 12 1 1 12 12 1 1 12 12 100 12 1 1 100 12 12 1 12 12 12 12 12 12 12 12 1 12 12 12 12 12 12 1 1 12 12 12 12 12 12 12 12 12 12 7 12 12 12 12 12 100 12 1 12 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 10 1 10 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 10 1 1 1 1 1 1 1 1 10 1 1 1 1 1 10 1 1 1 10 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 12 12 12 12 12 12 1 1 100 1 1 100 1 1 +staticfield java/lang/ClassLoader nocerts [Ljava/security/cert/Certificate; 0 [Ljava/security/cert/Certificate; +staticfield java/lang/ClassLoader loadedLibraryNames Ljava/util/Set; java/util/HashSet +staticfield java/lang/ClassLoader $assertionsDisabled Z 1 +ciInstanceKlass java/lang/System 1 1 628 10 10 10 10 10 9 7 10 11 10 10 10 100 8 10 10 9 100 8 10 10 8 10 100 10 8 10 10 100 10 10 10 9 9 7 10 10 10 10 10 10 10 100 100 8 10 10 7 10 100 8 10 8 10 100 8 10 100 10 8 10 10 10 8 10 10 10 100 8 10 10 10 100 18 100 9 10 100 10 10 10 10 10 10 10 10 7 7 10 10 100 10 10 100 8 10 9 9 10 10 10 10 8 10 10 8 10 10 8 10 7 9 10 7 9 10 9 7 10 8 10 8 10 10 10 10 10 10 10 10 9 100 8 10 8 10 10 8 100 10 10 10 10 7 10 10 10 10 10 8 10 10 10 10 8 10 10 10 7 10 10 10 9 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 100 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 100 12 12 12 12 12 12 1 7 12 100 12 100 12 12 12 1 1 12 12 12 1 1 12 100 12 1 12 1 12 12 12 1 12 100 12 12 12 12 1 12 7 12 12 12 12 12 1 1 1 12 12 1 12 1 1 1 12 1 1 1 1 12 12 7 12 1 12 7 12 7 12 1 1 12 7 12 1 1 15 16 15 16 12 1 12 12 1 12 12 7 12 12 12 12 12 12 1 1 12 12 1 12 7 12 1 1 12 12 12 12 12 12 1 12 12 1 12 12 1 7 12 1 7 12 12 1 12 12 1 12 1 12 1 7 12 12 7 12 12 7 12 12 12 7 12 12 1 1 12 1 12 1 1 12 7 12 12 1 12 12 12 100 12 1 12 12 1 12 12 12 1 12 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 10 1 10 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 12 12 1 1 100 1 1 100 1 1 +staticfield java/lang/System in Ljava/io/InputStream; java/io/PipedInputStream +staticfield java/lang/System out Ljava/io/PrintStream; org/gradle/internal/io/LinePerThreadBufferingOutputStream +staticfield java/lang/System err Ljava/io/PrintStream; org/gradle/internal/io/LinePerThreadBufferingOutputStream +instanceKlass java/lang/Exception +instanceKlass java/lang/Error +ciInstanceKlass java/lang/Throwable 1 1 395 10 9 9 9 9 9 10 9 10 10 100 100 10 8 10 8 10 10 10 100 8 10 10 10 10 8 9 10 100 10 10 100 10 10 11 10 10 10 8 10 10 7 8 8 10 10 8 8 9 10 100 10 11 8 8 10 8 10 8 100 10 9 10 10 100 9 10 10 100 8 10 10 10 10 100 10 10 11 11 11 8 8 10 10 10 9 8 7 10 10 100 8 10 11 8 9 10 11 9 11 100 10 7 10 100 1 1 1 100 1 100 1 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 100 100 1 100 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 12 12 12 12 12 12 12 1 1 1 12 1 100 12 12 1 1 12 7 12 12 1 100 12 12 1 12 12 1 7 12 12 12 12 12 1 12 12 1 1 1 12 12 1 1 12 100 12 1 12 1 1 12 1 12 1 1 12 12 12 100 12 12 12 100 1 1 12 12 100 12 1 100 12 12 12 12 12 1 1 100 12 1 1 12 1 1 12 1 12 100 12 12 12 12 1 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/lang/Throwable UNASSIGNED_STACK [Ljava/lang/StackTraceElement; 0 [Ljava/lang/StackTraceElement; +staticfield java/lang/Throwable SUPPRESSED_SENTINEL Ljava/util/List; java/util/Collections$EmptyList +staticfield java/lang/Throwable EMPTY_THROWABLE_ARRAY [Ljava/lang/Throwable; 0 [Ljava/lang/Throwable; +staticfield java/lang/Throwable $assertionsDisabled Z 1 +instanceKlass kotlin/jvm/KotlinReflectionNotSupportedError +instanceKlass java/util/ServiceConfigurationError +instanceKlass com/google/common/util/concurrent/ExecutionError +instanceKlass java/lang/AssertionError +instanceKlass java/lang/VirtualMachineError +instanceKlass java/lang/LinkageError +instanceKlass java/lang/ThreadDeath +ciInstanceKlass java/lang/Error 1 1 40 10 10 10 10 10 100 7 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 12 12 1 1 +ciInstanceKlass java/lang/ThreadDeath 0 0 21 10 100 100 1 1 1 5 0 1 1 1 1 1 1 1 1 1 12 1 1 +instanceKlass javax/management/JMException +instanceKlass javax/naming/NamingException +instanceKlass java/beans/PropertyVetoException +instanceKlass java/awt/AWTException +instanceKlass java/sql/SQLException +instanceKlass org/apache/maven/settings/building/SettingsBuildingException +instanceKlass com/jcraft/jsch/JSchException +instanceKlass javax/xml/xpath/XPathException +instanceKlass org/xml/sax/SAXException +instanceKlass javax/xml/parsers/ParserConfigurationException +instanceKlass org/gradle/api/internal/attributes/AttributeMergingException +instanceKlass java/lang/CloneNotSupportedException +instanceKlass java/security/GeneralSecurityException +instanceKlass java/util/concurrent/TimeoutException +instanceKlass java/util/concurrent/ExecutionException +instanceKlass java/text/ParseException +instanceKlass java/security/PrivilegedActionException +instanceKlass java/lang/InterruptedException +instanceKlass java/net/URISyntaxException +instanceKlass java/io/IOException +instanceKlass java/lang/ReflectiveOperationException +instanceKlass java/lang/RuntimeException +ciInstanceKlass java/lang/Exception 1 1 40 10 10 10 10 10 100 7 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 12 12 1 1 +instanceKlass org/gradle/util/ConfigureUtil$IncompleteInputException +instanceKlass org/gradle/internal/jvm/UnsupportedJavaRuntimeException +instanceKlass org/gradle/api/internal/NullNamingPropertyException +instanceKlass org/gradle/api/internal/NoNamingPropertyException +instanceKlass org/gradle/workers/internal/WorkSerializationException +instanceKlass org/gradle/internal/component/NoMatchingCapabilitiesException +instanceKlass org/gradle/internal/component/model/ConfigurationNotFoundException +instanceKlass org/gradle/internal/resource/transport/http/HttpErrorStatusCodeException +instanceKlass org/gradle/api/internal/NoFactoryRegisteredForTypeException +instanceKlass org/gradle/util/internal/ConfigureUtil$IncompleteInputException +instanceKlass org/gradle/internal/reflect/UnsupportedPropertyValueException +instanceKlass org/gradle/model/internal/manage/schema/extract/InvalidManagedModelElementTypeException +instanceKlass java/time/DateTimeException +instanceKlass java/nio/file/FileSystemNotFoundException +instanceKlass java/nio/file/FileSystemAlreadyExistsException +instanceKlass org/codehaus/groovy/vmplugin/v9/ClassFindFailedException +instanceKlass org/codehaus/groovy/control/ConfigurationException +instanceKlass org/w3c/dom/DOMException +instanceKlass groovy/lang/StringWriterIOException +instanceKlass java/lang/IllegalCallerException +instanceKlass java/lang/reflect/MalformedParameterizedTypeException +instanceKlass org/gradle/cache/internal/btree/CorruptedCacheException +instanceKlass org/gradle/internal/execution/fingerprint/InputFingerprinter$InputFileFingerprintingException +instanceKlass org/gradle/internal/execution/OutputSnapshotter$OutputFileSnapshottingException +instanceKlass org/gradle/api/internal/attributes/AttributeMatchException +instanceKlass org/gradle/internal/locking/MissingLockStateException +instanceKlass org/gradle/internal/locking/InvalidLockFileException +instanceKlass org/gradle/api/internal/provider/AbstractProperty$PropertyQueryException +instanceKlass org/gradle/cli/CommandLineArgumentException +instanceKlass groovy/lang/GroovyRuntimeException +instanceKlass kotlin/NoWhenBranchMatchedException +instanceKlass java/util/ConcurrentModificationException +instanceKlass org/gradle/internal/reflect/NoSuchPropertyException +instanceKlass org/gradle/internal/snapshot/impl/IsolationException +instanceKlass org/gradle/internal/snapshot/ValueSnapshottingException +instanceKlass org/apache/tools/ant/BuildException +instanceKlass java/io/UncheckedIOException +instanceKlass org/gradle/tooling/internal/protocol/InternalBuildActionFailureException +instanceKlass org/gradle/tooling/internal/protocol/test/InternalTestExecutionException +instanceKlass org/gradle/internal/typeconversion/TypeConversionException +instanceKlass com/google/common/util/concurrent/UncheckedExecutionException +instanceKlass com/google/common/cache/CacheLoader$InvalidCacheLoadException +instanceKlass org/gradle/internal/work/NoAvailableWorkerLeaseException +instanceKlass org/gradle/launcher/daemon/server/BadlyFormedRequestException +instanceKlass org/gradle/internal/remote/internal/MessageIOException +instanceKlass org/gradle/cache/InsufficientLockModeException +instanceKlass org/gradle/cache/LockTimeoutException +instanceKlass org/gradle/cache/internal/locklistener/GracefullyStoppedException +instanceKlass org/gradle/launcher/daemon/registry/DaemonRegistry$EmptyRegistryException +instanceKlass org/gradle/cache/FileIntegrityViolationException +instanceKlass org/gradle/internal/file/FileException +instanceKlass org/gradle/launcher/daemon/server/api/DaemonStoppedException +instanceKlass org/gradle/launcher/daemon/server/api/DaemonUnavailableException +instanceKlass java/lang/TypeNotPresentException +instanceKlass java/util/MissingResourceException +instanceKlass org/gradle/util/internal/GFileUtils$TailReadingException +instanceKlass org/gradle/internal/jvm/JavaHomeException +instanceKlass kotlin/UninitializedPropertyAccessException +instanceKlass java/util/NoSuchElementException +instanceKlass org/gradle/api/reflect/ObjectInstantiationException +instanceKlass org/gradle/api/internal/classpath/UnknownModuleException +instanceKlass org/gradle/internal/nativeintegration/NativeIntegrationException +instanceKlass org/gradle/internal/reflect/NoSuchMethodException +instanceKlass net/rubygrapefruit/platform/NativeException +instanceKlass org/gradle/internal/service/ServiceLookupException +instanceKlass com/esotericsoftware/kryo/KryoException +instanceKlass java/lang/reflect/UndeclaredThrowableException +instanceKlass org/gradle/internal/operations/BuildOperationInvocationException +instanceKlass org/gradle/internal/UncheckedException +instanceKlass org/gradle/api/GradleException +instanceKlass java/lang/UnsupportedOperationException +instanceKlass java/lang/SecurityException +instanceKlass org/gradle/api/UncheckedIOException +instanceKlass org/gradle/internal/service/ServiceLookupException +instanceKlass java/lang/IndexOutOfBoundsException +instanceKlass org/gradle/api/GradleException +instanceKlass org/gradle/api/UncheckedIOException +instanceKlass java/lang/IllegalStateException +instanceKlass org/gradle/api/internal/classpath/UnknownModuleException +instanceKlass java/lang/IllegalArgumentException +instanceKlass java/lang/ArithmeticException +instanceKlass java/lang/NullPointerException +instanceKlass java/lang/IllegalMonitorStateException +instanceKlass java/lang/ArrayStoreException +instanceKlass java/lang/ClassCastException +ciInstanceKlass java/lang/RuntimeException 1 1 40 10 10 10 10 10 100 7 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 12 12 1 1 +instanceKlass org/codehaus/groovy/reflection/ReflectionUtils$ClassContextHelper +ciInstanceKlass java/lang/SecurityManager 1 1 572 10 9 7 10 100 8 10 10 10 10 100 10 100 10 9 10 10 10 100 8 10 9 9 8 9 100 10 8 10 10 10 100 10 10 100 100 8 10 8 8 8 8 8 8 10 8 8 8 8 8 10 10 8 100 8 10 8 8 8 8 8 10 8 100 8 8 10 8 8 10 100 8 10 10 100 10 10 10 10 10 10 11 18 11 18 11 18 18 11 18 11 9 9 9 9 7 10 10 10 18 18 10 18 10 18 18 8 10 9 11 8 100 10 10 10 9 10 10 8 100 10 9 8 8 100 10 10 10 9 11 10 11 10 7 7 10 10 10 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 12 12 1 7 12 1 1 12 12 100 12 1 1 12 7 12 12 12 1 1 12 12 1 12 1 1 12 12 12 1 12 1 1 1 12 1 1 1 1 1 1 12 1 1 1 1 1 12 12 1 1 1 1 1 1 1 1 100 12 1 1 1 1 1 1 12 1 1 12 1 12 12 12 7 12 12 7 12 7 12 1 15 16 15 16 12 7 12 16 15 16 12 12 15 16 15 16 12 16 15 16 12 12 12 12 12 12 1 7 12 12 12 15 16 12 15 16 7 12 15 12 12 15 16 15 16 1 12 12 7 12 1 1 12 12 12 12 12 12 1 1 12 1 1 1 12 7 12 12 12 12 12 1 1 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 10 1 10 1 1 1 1 1 1 10 1 1 1 1 1 10 11 1 1 1 10 1 1 1 1 1 1 10 1 10 1 1 1 11 1 1 10 10 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 12 7 12 12 12 7 12 12 12 12 12 1 1 100 1 1 1 1 1 1 1 1 100 1 1 +staticfield java/lang/SecurityManager packageAccessLock Ljava/lang/Object; java/lang/Object +staticfield java/lang/SecurityManager packageDefinitionLock Ljava/lang/Object; java/lang/Object +staticfield java/lang/SecurityManager nonExportedPkgs Ljava/util/Map; java/util/concurrent/ConcurrentHashMap +ciInstanceKlass java/security/ProtectionDomain 1 1 331 10 9 7 10 9 9 9 10 7 9 9 7 9 9 10 100 10 10 10 10 9 9 10 7 10 100 10 9 8 100 8 10 10 10 10 8 11 8 10 8 8 10 10 10 10 8 10 8 8 10 9 10 9 10 100 100 10 10 7 10 100 10 10 11 11 100 11 10 10 11 11 10 10 10 11 10 8 8 10 7 10 10 7 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 7 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 100 100 100 1 1 1 1 1 100 12 12 1 12 12 12 12 12 1 12 12 1 12 12 100 12 100 12 12 12 12 100 12 12 1 1 12 100 12 1 1 1 12 12 12 1 1 12 1 1 12 12 12 12 1 12 1 1 100 12 12 12 12 12 1 1 100 12 1 1 12 12 12 12 1 12 12 12 12 12 12 100 12 12 12 1 1 7 12 1 7 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/security/ProtectionDomain filePermCompatInPD Z 0 +ciInstanceKlass java/security/AccessControlContext 1 1 367 9 9 10 8 10 10 9 9 9 10 7 100 10 11 11 11 11 7 11 10 10 9 10 11 10 7 100 8 10 10 7 10 9 9 9 9 9 9 9 10 9 10 10 8 10 10 10 100 10 10 10 10 8 10 8 10 8 8 10 8 10 8 10 10 10 8 8 100 10 10 100 10 8 10 10 10 8 10 10 10 7 10 10 10 10 10 10 10 10 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 100 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 100 12 1 100 12 12 12 12 12 7 12 1 12 12 12 12 12 1 12 12 7 12 100 12 12 12 1 1 1 12 12 1 7 12 12 12 12 12 12 12 12 7 12 12 12 12 1 12 12 100 12 1 12 100 12 1 12 1 100 12 1 1 12 1 12 1 12 12 12 1 1 1 12 12 1 12 1 12 12 1 12 12 12 1 12 12 12 12 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +instanceKlass sun/reflect/misc/MethodUtil +instanceKlass java/net/URLClassLoader +instanceKlass jdk/internal/loader/BuiltinClassLoader +ciInstanceKlass java/security/SecureClassLoader 1 1 127 10 7 10 9 10 10 9 10 10 10 10 10 10 7 10 7 10 7 10 11 7 100 8 10 10 7 7 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 1 12 12 7 12 12 12 12 12 12 12 12 12 1 1 12 1 12 7 12 1 1 1 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +instanceKlass java/lang/InstantiationException +instanceKlass java/lang/IllegalAccessException +instanceKlass java/lang/reflect/InvocationTargetException +instanceKlass java/lang/NoSuchFieldException +instanceKlass java/lang/NoSuchMethodException +instanceKlass java/lang/ClassNotFoundException +ciInstanceKlass java/lang/ReflectiveOperationException 1 1 34 10 10 10 10 100 7 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 12 1 1 +ciInstanceKlass java/lang/ClassNotFoundException 1 1 37 100 10 10 9 100 7 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 1 1 1 +instanceKlass java/lang/ClassFormatError +instanceKlass java/lang/UnsatisfiedLinkError +instanceKlass java/lang/IncompatibleClassChangeError +instanceKlass java/lang/BootstrapMethodError +instanceKlass java/lang/NoClassDefFoundError +ciInstanceKlass java/lang/LinkageError 1 1 31 10 10 10 100 7 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 1 1 +ciInstanceKlass java/lang/NoClassDefFoundError 1 1 26 10 10 100 7 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 12 12 1 1 +instanceKlass org/codehaus/groovy/runtime/typehandling/GroovyCastException +ciInstanceKlass java/lang/ClassCastException 1 1 26 10 10 100 100 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 12 12 1 1 +ciInstanceKlass java/lang/ArrayStoreException 1 1 26 10 10 100 100 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 12 12 1 1 +instanceKlass java/lang/InternalError +instanceKlass java/lang/StackOverflowError +instanceKlass java/lang/OutOfMemoryError +ciInstanceKlass java/lang/VirtualMachineError 1 1 34 10 10 10 10 100 100 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 12 1 1 +ciInstanceKlass java/lang/OutOfMemoryError 1 1 26 10 10 100 100 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 12 12 1 1 +ciInstanceKlass java/lang/StackOverflowError 1 1 26 10 10 100 100 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 12 12 1 1 +ciInstanceKlass java/lang/IllegalMonitorStateException 1 1 26 10 10 100 100 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 12 12 1 1 +instanceKlass java/lang/ref/PhantomReference +instanceKlass java/lang/ref/FinalReference +instanceKlass java/lang/ref/WeakReference +instanceKlass java/lang/ref/SoftReference +ciInstanceKlass java/lang/ref/Reference 1 1 159 10 9 10 9 9 7 10 10 9 9 10 10 10 9 9 100 10 10 10 7 10 10 10 7 8 10 7 10 10 10 7 10 10 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 7 1 1 1 1 12 12 12 12 12 1 12 12 12 12 12 12 12 12 12 1 12 12 1 12 12 12 1 1 12 1 12 12 12 1 7 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/lang/ref/Reference processPendingLock Ljava/lang/Object; java/lang/Object +instanceKlass com/sun/beans/util/Cache$Kind$Soft +instanceKlass org/codehaus/groovy/util/ReferenceType$SoftRef +instanceKlass sun/util/locale/provider/LocaleResources$ResourceReference +instanceKlass sun/util/resources/Bundles$BundleReference +instanceKlass sun/util/locale/LocaleObjectCache$CacheEntry +instanceKlass jdk/internal/ref/SoftCleanable +instanceKlass java/lang/invoke/LambdaFormEditor$Transform +ciInstanceKlass java/lang/ref/SoftReference 1 1 47 10 9 9 10 10 7 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 12 12 12 12 12 1 1 1 +instanceKlass com/sun/jmx/mbeanserver/WeakIdentityHashMap$IdentityWeakReference +instanceKlass com/google/common/cache/LocalCache$WeakEntry +instanceKlass jdk/internal/jimage/ImageBufferCache$BufferReference +instanceKlass java/beans/WeakIdentityMap$Entry +instanceKlass org/codehaus/groovy/util/ReferenceType$WeakRef +instanceKlass com/google/common/collect/MapMakerInternalMap$WeakValueReferenceImpl +instanceKlass com/google/common/collect/MapMakerInternalMap$AbstractWeakKeyEntry +instanceKlass com/google/common/cache/LocalCache$WeakValueReference +instanceKlass java/util/logging/LogManager$LoggerWeakRef +instanceKlass java/util/logging/Level$KnownLevel +instanceKlass sun/nio/ch/FileLockTable$FileLockReference +instanceKlass java/lang/ClassValue$Entry +instanceKlass java/lang/WeakPairMap$WeakRefPeer +instanceKlass jdk/internal/ref/WeakCleanable +instanceKlass java/lang/invoke/MethodType$ConcurrentWeakInternSet$WeakEntry +instanceKlass java/util/WeakHashMap$Entry +instanceKlass java/lang/ThreadLocal$ThreadLocalMap$Entry +ciInstanceKlass java/lang/ref/WeakReference 1 1 31 10 10 100 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 1 1 +instanceKlass java/lang/ref/Finalizer +ciInstanceKlass java/lang/ref/FinalReference 1 1 36 10 100 8 10 100 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 1 1 12 1 1 1 +instanceKlass jdk/internal/ref/PhantomCleanable +instanceKlass jdk/internal/ref/Cleaner +ciInstanceKlass java/lang/ref/PhantomReference 1 1 30 10 100 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 1 1 +ciInstanceKlass java/lang/ref/Finalizer 1 1 139 9 10 9 9 9 9 7 10 10 7 11 100 10 100 10 10 10 100 10 10 7 10 7 10 10 10 10 7 10 7 10 10 10 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 12 12 12 12 12 12 1 12 12 1 7 12 1 12 1 12 100 12 100 12 1 12 12 1 1 12 12 12 1 12 1 12 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/lang/ref/Finalizer lock Ljava/lang/Object; java/lang/Object +instanceKlass net/rubygrapefruit/platform/internal/jni/AbstractFileEventFunctions$NativeFileWatcher$1 +instanceKlass org/gradle/launcher/daemon/server/exec/DaemonConnectionBackedEventConsumer$ForwardEvents +instanceKlass org/gradle/launcher/daemon/server/exec/LogToClient$AsynchronousLogDispatcher +instanceKlass java/util/logging/LogManager$Cleaner +instanceKlass jdk/internal/misc/InnocuousThread +instanceKlass java/lang/ref/Finalizer$FinalizerThread +instanceKlass java/lang/ref/Reference$ReferenceHandler +ciInstanceKlass java/lang/Thread 1 1 592 9 9 10 9 9 100 8 10 3 8 3 10 10 9 9 9 9 7 100 8 10 9 10 10 10 10 10 10 9 10 10 9 10 10 9 10 9 10 9 9 10 10 9 10 9 100 10 7 10 8 10 10 10 10 10 10 9 100 10 10 10 10 100 11 9 10 10 10 9 10 9 10 100 10 10 10 11 10 10 10 7 10 10 10 10 10 10 10 10 10 10 100 8 10 10 10 8 10 8 10 8 8 10 10 100 8 10 9 9 10 10 10 9 10 100 10 11 9 9 10 100 10 11 100 10 10 11 10 100 10 10 10 8 9 10 11 10 11 10 7 7 1 1 100 1 100 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 3 1 3 1 3 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 7 100 100 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 100 1 1 1 1 1 1 1 1 1 100 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 12 12 1 1 12 1 12 12 12 12 12 12 1 1 1 12 7 12 12 12 12 12 100 12 12 12 12 12 12 12 12 12 7 12 12 12 12 100 12 12 12 12 1 1 1 12 12 12 12 12 12 12 1 12 12 12 1 12 100 12 12 12 12 12 12 12 1 12 12 12 12 12 12 1 12 12 12 12 12 12 12 12 12 1 1 12 12 1 12 1 1 1 100 12 100 12 1 12 12 12 12 12 12 1 12 12 12 12 12 1 12 100 12 1 12 12 12 12 1 12 12 7 12 12 12 12 100 12 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/lang/Thread EMPTY_STACK_TRACE [Ljava/lang/StackTraceElement; 0 [Ljava/lang/StackTraceElement; +ciInstanceKlass java/lang/ThreadGroup 1 1 289 10 9 8 9 7 9 9 10 10 10 10 10 9 10 10 9 10 9 9 10 100 10 10 10 9 10 10 9 10 10 10 10 10 10 10 10 10 10 10 100 10 10 10 7 10 7 10 9 10 8 10 10 10 10 11 100 9 100 10 8 10 10 8 10 10 10 10 8 10 8 10 8 7 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 1 12 1 12 12 12 12 12 12 12 12 12 12 12 100 12 12 12 7 12 12 7 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 1 12 12 1 12 12 12 12 1 12 12 12 12 1 12 1 1 12 12 1 12 12 12 100 1 1 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +ciInstanceKlass java/util/Map 1 1 258 11 11 10 11 11 11 11 7 11 11 100 100 10 11 11 11 11 10 11 11 10 100 10 7 7 10 7 10 100 11 100 11 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 100 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 7 12 12 100 12 12 12 1 12 12 1 1 12 12 12 12 12 12 12 7 12 7 12 1 1 12 1 1 1 12 1 1 1 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +instanceKlass java/util/Hashtable +ciInstanceKlass java/util/Dictionary 1 1 36 10 100 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 1 1 +instanceKlass java/util/Properties +ciInstanceKlass java/util/Hashtable 1 1 512 100 10 9 100 100 10 8 10 10 10 10 10 8 10 9 7 9 7 4 10 9 4 10 11 10 10 9 10 100 10 9 10 9 10 10 3 9 9 3 10 10 10 11 11 11 11 7 11 11 10 10 10 9 9 9 10 100 100 10 10 8 10 10 8 10 8 10 7 10 10 100 10 10 7 10 100 10 10 7 11 11 100 10 10 10 11 100 10 11 11 10 10 10 10 10 10 10 8 10 100 8 10 4 10 4 10 8 10 10 100 11 10 10 10 10 7 100 100 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 3 1 3 1 3 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 100 100 1 1 1 1 1 1 100 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 12 12 1 1 1 12 12 12 12 7 12 1 12 12 1 12 1 7 12 12 12 12 12 12 12 12 1 12 12 12 12 12 12 12 12 12 12 12 7 12 12 12 1 12 12 12 12 12 12 12 12 1 1 12 1 12 1 1 7 12 1 12 12 1 12 12 1 1 12 1 12 12 1 100 12 12 1 12 12 12 12 12 12 12 12 100 12 12 1 1 12 12 1 12 100 12 1 100 12 12 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +instanceKlass org/gradle/internal/classpath/AccessTrackingProperties +instanceKlass java/security/Provider +ciInstanceKlass java/util/Properties 1 1 645 10 100 10 7 10 9 9 9 10 10 8 10 7 10 10 8 10 7 10 10 9 10 7 10 10 10 100 8 10 10 10 10 100 3 10 10 10 8 10 10 10 10 10 100 100 10 10 100 9 10 10 10 100 10 10 10 11 11 11 7 11 11 10 8 10 10 100 10 10 10 9 10 10 100 100 100 10 8 8 10 10 10 7 10 10 10 7 10 10 11 10 8 10 11 8 10 11 9 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 7 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 7 10 100 10 11 4 11 10 10 11 10 10 10 100 8 10 10 10 100 6 0 10 11 10 10 1 1 1 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 100 7 100 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 100 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 100 1 1 1 1 100 1 1 1 1 1 12 1 12 1 12 12 12 12 7 12 12 1 7 12 1 12 12 1 12 1 12 12 12 12 1 12 12 12 1 1 12 12 12 12 1 12 12 1 12 12 12 12 12 1 1 12 12 1 100 12 12 12 12 1 12 7 12 12 12 1 12 12 12 1 12 12 1 12 100 12 100 12 12 100 12 1 1 1 1 1 12 12 12 1 12 12 1 12 12 7 12 1 12 1 12 12 12 12 12 12 12 12 12 12 12 12 12 12 1 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 1 12 1 12 12 12 12 12 100 12 12 1 1 12 100 12 1 12 100 12 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/util/Properties UNSAFE Ljdk/internal/misc/Unsafe; jdk/internal/misc/Unsafe +staticfield java/util/Properties hexDigit [C 16 +ciInstanceKlass java/lang/Module 1 1 907 10 9 10 9 9 9 10 10 10 10 7 10 10 7 11 7 10 10 9 10 10 8 10 10 10 9 11 9 10 9 10 10 100 100 10 10 8 10 10 10 10 10 10 9 10 10 9 10 10 9 11 7 10 9 9 10 7 7 10 100 8 10 10 10 8 10 10 10 10 8 8 10 10 10 18 10 11 9 11 10 100 8 10 7 10 10 11 11 9 11 10 10 9 10 10 10 10 18 11 10 11 10 11 4 10 7 10 11 7 10 11 7 10 7 8 10 10 7 10 10 7 7 10 9 100 10 11 10 10 10 11 7 10 11 10 11 10 10 10 10 10 10 10 10 18 11 11 18 10 10 10 7 10 10 10 9 7 10 10 10 10 10 10 10 10 10 9 18 10 7 100 8 10 10 10 100 10 100 8 100 10 100 100 3 10 100 10 10 10 100 10 10 100 100 10 8 10 10 10 10 10 10 10 100 10 10 10 100 8 10 10 8 10 8 10 10 10 8 10 7 10 10 10 11 100 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 7 7 7 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 100 100 1 100 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 12 12 12 12 12 12 12 12 12 12 1 7 12 12 1 12 12 7 12 100 12 12 12 1 12 12 12 12 12 12 7 12 12 100 12 12 1 1 12 1 12 12 12 12 12 12 12 12 12 12 12 12 12 12 1 12 12 12 12 1 1 12 1 1 12 12 1 12 12 12 12 1 1 12 12 12 1 15 16 15 16 12 12 12 12 12 7 12 1 1 1 12 12 12 12 12 12 12 12 12 12 7 12 16 15 16 12 12 100 12 12 12 12 12 1 12 1 12 1 7 12 100 1 1 1 12 12 1 12 12 1 1 12 12 1 12 12 12 12 1 12 12 12 12 12 12 12 12 12 12 12 16 15 16 12 12 12 15 16 12 12 12 12 1 12 12 12 12 1 12 12 12 12 12 12 12 16 15 16 12 100 12 1 1 1 12 12 12 1 12 1 1 1 1 1 12 1 12 12 12 1 12 12 1 1 12 1 12 12 7 12 12 12 12 12 1 12 12 1 1 12 100 12 1 12 1 12 12 12 1 1 12 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 10 10 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 10 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 10 1 1 1 1 1 1 10 1 1 1 1 1 1 10 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 12 12 100 12 12 12 1 1 100 1 1 1 100 1 1 +staticfield java/lang/Module ALL_UNNAMED_MODULE Ljava/lang/Module; java/lang/Module +staticfield java/lang/Module ALL_UNNAMED_MODULE_SET Ljava/util/Set; java/util/ImmutableCollections$Set12 +staticfield java/lang/Module EVERYONE_MODULE Ljava/lang/Module; java/lang/Module +staticfield java/lang/Module EVERYONE_SET Ljava/util/Set; java/util/ImmutableCollections$Set12 +staticfield java/lang/Module $assertionsDisabled Z 1 +instanceKlass com/google/common/reflect/Element +instanceKlass java/lang/reflect/Executable +instanceKlass java/lang/reflect/Field +ciInstanceKlass java/lang/reflect/AccessibleObject 1 1 405 10 9 10 10 10 10 100 10 10 9 7 10 11 7 100 10 7 100 10 10 7 10 10 100 10 100 10 10 10 10 10 10 10 10 10 10 8 100 10 10 8 10 10 8 8 8 8 8 8 100 10 10 9 10 10 10 18 10 10 10 11 100 100 8 10 10 10 8 10 8 10 10 100 8 10 11 10 10 10 10 10 9 100 10 10 9 10 8 10 8 10 9 100 10 7 10 10 7 9 7 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 12 100 12 12 12 7 12 100 12 12 12 12 1 12 12 1 1 12 1 1 12 12 1 12 12 1 12 1 7 12 12 12 12 12 12 12 12 1 1 12 1 12 12 1 1 1 1 1 1 1 12 12 12 12 12 7 12 1 15 16 15 16 12 12 12 1 1 1 12 12 1 12 1 12 1 1 12 12 12 12 12 12 12 12 12 12 100 12 1 100 12 1 12 12 1 1 1 1 7 12 1 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 10 10 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 12 12 1 1 100 1 1 100 1 1 +staticfield java/lang/reflect/AccessibleObject reflectionFactory Ljdk/internal/reflect/ReflectionFactory; jdk/internal/reflect/ReflectionFactory +ciInstanceKlass java/lang/reflect/Field 1 1 433 9 10 10 10 9 10 10 10 10 9 9 9 9 9 9 9 100 8 10 7 10 9 9 10 10 10 10 10 10 7 10 10 10 10 10 10 10 100 10 8 10 10 8 10 10 8 8 10 11 9 10 10 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 10 10 10 10 10 9 10 10 10 10 11 10 100 10 10 9 10 11 10 10 9 10 10 7 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 100 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 100 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 100 1 1 1 1 1 1 1 1 12 12 100 12 100 12 12 12 12 100 12 12 12 12 12 12 12 12 12 1 1 12 1 12 12 12 12 7 12 12 12 12 12 1 12 12 12 12 12 12 1 1 12 12 1 12 12 1 1 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 7 12 12 7 12 12 12 1 100 12 7 12 12 7 12 7 12 12 12 100 12 100 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 +ciInstanceKlass java/lang/reflect/Parameter 0 0 226 10 9 9 9 9 100 10 10 10 100 10 10 11 10 10 10 10 10 8 8 10 10 10 8 10 8 10 9 10 9 10 10 10 10 10 10 10 10 11 10 100 10 10 10 10 10 9 100 10 11 11 100 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 100 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 12 12 12 12 12 1 12 12 100 12 1 12 12 12 100 12 12 12 12 1 1 12 12 12 1 1 12 12 12 12 12 12 12 12 12 100 12 12 100 12 12 1 100 12 12 12 12 12 12 1 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +instanceKlass java/lang/reflect/Constructor +instanceKlass java/lang/reflect/Method +ciInstanceKlass java/lang/reflect/Executable 1 1 458 10 10 10 11 10 10 10 10 10 7 8 7 10 10 10 7 8 10 10 10 10 8 8 10 10 100 8 10 8 10 8 11 10 10 11 10 8 8 10 10 100 10 10 10 10 10 10 7 10 10 10 10 10 100 10 100 8 10 10 3 100 8 10 10 10 10 10 8 8 8 9 10 100 8 9 10 10 10 10 10 10 7 10 10 100 10 7 10 10 11 10 10 10 9 10 7 10 10 9 10 10 9 10 9 10 9 7 100 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 100 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 100 100 1 1 1 1 1 1 1 1 1 1 1 1 12 7 12 12 7 12 7 12 12 12 12 12 1 1 1 12 12 1 1 12 7 12 12 12 1 1 12 1 1 12 1 12 1 7 12 12 12 1 1 12 12 1 12 12 7 12 12 12 1 12 12 12 12 100 12 12 1 1 12 12 1 1 12 12 12 12 1 1 1 12 12 1 1 12 12 12 12 12 12 12 12 12 1 100 12 1 7 12 12 12 12 100 12 12 12 12 1 12 12 100 12 100 12 12 12 12 12 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +ciInstanceKlass java/lang/reflect/Method 1 1 441 9 10 10 9 10 10 10 10 9 9 9 9 9 9 9 9 9 9 9 100 8 10 7 10 9 8 10 10 10 10 10 10 10 7 10 10 10 7 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 7 8 10 100 8 10 10 10 10 10 10 10 11 9 10 10 10 10 11 10 7 10 10 10 10 9 10 10 10 10 10 11 10 7 100 100 10 10 10 100 10 8 10 10 10 10 10 8 10 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 100 7 7 1 100 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 7 12 7 12 12 12 12 7 12 12 12 12 12 12 12 12 12 12 12 12 12 1 1 12 1 12 12 1 7 12 7 12 12 12 12 12 12 1 12 12 7 12 12 7 12 12 12 12 12 7 12 12 12 12 12 12 12 1 1 1 1 12 12 12 12 12 12 12 7 12 12 12 12 12 12 12 1 12 12 12 12 12 7 12 12 7 12 7 12 7 12 7 12 7 12 1 1 1 12 12 12 1 1 12 12 12 12 1 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +ciInstanceKlass java/lang/reflect/Constructor 1 1 415 10 10 9 10 10 10 9 10 9 9 9 9 9 9 9 9 100 8 10 7 10 9 10 10 10 10 10 7 100 8 10 10 10 10 10 7 10 7 10 10 10 10 10 10 10 10 10 100 8 10 10 100 8 10 10 10 10 10 10 10 9 10 10 100 8 10 11 10 10 10 9 10 10 10 10 10 10 10 10 10 100 8 10 10 10 10 10 10 10 11 9 10 10 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 100 100 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 12 7 12 12 12 12 7 12 12 12 12 12 12 12 12 12 12 12 1 1 12 1 12 12 7 12 7 12 12 12 12 1 1 1 12 12 12 12 1 7 12 12 7 12 12 100 12 12 12 12 12 1 1 12 1 1 12 12 12 12 12 12 12 12 12 12 1 1 12 12 12 12 12 12 7 12 12 12 12 12 12 12 12 12 1 1 12 12 12 12 100 12 100 12 100 12 100 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 +instanceKlass jdk/internal/reflect/FieldAccessorImpl +instanceKlass jdk/internal/reflect/ConstructorAccessorImpl +instanceKlass jdk/internal/reflect/MethodAccessorImpl +ciInstanceKlass jdk/internal/reflect/MagicAccessorImpl 1 1 16 10 100 7 1 1 1 1 1 1 1 1 1 12 1 1 +instanceKlass jdk/internal/reflect/GeneratedMethodAccessor2 +instanceKlass jdk/internal/reflect/GeneratedMethodAccessor1 +instanceKlass jdk/internal/reflect/DelegatingMethodAccessorImpl +instanceKlass jdk/internal/reflect/NativeMethodAccessorImpl +ciInstanceKlass jdk/internal/reflect/MethodAccessorImpl 1 1 25 10 100 7 100 1 1 1 1 1 1 1 1 1 1 100 100 1 1 12 1 1 1 1 1 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor32 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor31 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor30 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor29 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor28 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor27 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor26 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor25 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor24 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor23 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor22 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor21 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor20 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor19 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor18 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor17 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor16 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor15 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor14 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor13 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor12 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor11 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor10 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor9 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor8 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor7 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor6 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor5 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor4 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor3 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor2 +instanceKlass jdk/internal/reflect/BootstrapConstructorAccessorImpl +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor1 +instanceKlass jdk/internal/reflect/DelegatingConstructorAccessorImpl +instanceKlass jdk/internal/reflect/NativeConstructorAccessorImpl +ciInstanceKlass jdk/internal/reflect/ConstructorAccessorImpl 1 1 27 10 100 7 100 1 1 1 1 1 1 1 1 1 1 100 100 100 1 1 12 1 1 1 1 1 1 +ciInstanceKlass jdk/internal/reflect/DelegatingClassLoader 1 1 18 10 100 7 1 1 1 1 1 1 1 1 1 1 1 12 1 1 +ciInstanceKlass jdk/internal/reflect/ConstantPool 1 1 138 10 9 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 7 7 8 10 100 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 1 1 7 12 1 1 1 1 1 1 1 +instanceKlass jdk/internal/reflect/UnsafeFieldAccessorImpl +ciInstanceKlass jdk/internal/reflect/FieldAccessorImpl 1 1 59 10 100 7 100 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 1 1 1 1 1 +instanceKlass jdk/internal/reflect/UnsafeObjectFieldAccessorImpl +instanceKlass jdk/internal/reflect/UnsafeQualifiedFieldAccessorImpl +instanceKlass jdk/internal/reflect/UnsafeStaticFieldAccessorImpl +ciInstanceKlass jdk/internal/reflect/UnsafeFieldAccessorImpl 1 1 254 10 9 10 10 9 10 9 10 10 9 10 10 10 10 100 10 10 10 8 10 10 100 8 10 8 10 8 10 100 10 10 8 10 8 10 8 10 8 10 8 10 8 10 8 10 8 10 8 10 10 8 8 8 8 8 8 10 8 8 8 10 10 7 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 7 12 12 7 12 12 12 12 12 12 12 7 12 12 1 12 12 1 12 1 1 12 1 12 1 12 1 12 1 12 1 100 12 1 100 12 1 100 12 1 100 12 1 100 12 1 100 12 1 100 12 1 100 12 12 1 1 1 1 1 1 12 1 1 1 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield jdk/internal/reflect/UnsafeFieldAccessorImpl unsafe Ljdk/internal/misc/Unsafe; jdk/internal/misc/Unsafe +instanceKlass jdk/internal/reflect/UnsafeStaticIntegerFieldAccessorImpl +instanceKlass jdk/internal/reflect/UnsafeQualifiedStaticFieldAccessorImpl +ciInstanceKlass jdk/internal/reflect/UnsafeStaticFieldAccessorImpl 1 1 43 10 9 10 9 7 7 8 10 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 7 12 12 1 1 7 12 1 1 1 1 1 1 1 1 1 +ciInstanceKlass jdk/internal/reflect/CallerSensitive 0 0 17 100 100 100 1 1 1 1 1 1 1 1 1 1 1 1 1 +instanceKlass java/lang/invoke/DelegatingMethodHandle +instanceKlass java/lang/invoke/BoundMethodHandle +instanceKlass java/lang/invoke/DirectMethodHandle +ciInstanceKlass java/lang/invoke/MethodHandle 1 1 489 9 10 10 7 7 10 9 10 10 10 10 10 10 11 10 10 10 9 10 100 100 10 8 10 10 8 10 10 10 10 10 10 10 10 10 10 7 10 10 10 8 10 8 10 10 10 10 8 10 8 10 8 10 9 100 10 9 9 8 10 10 10 10 10 10 10 10 10 10 10 8 10 8 10 10 10 10 10 9 8 10 10 8 10 10 10 10 10 100 8 10 10 9 10 7 10 10 9 10 10 8 9 9 9 10 10 10 10 7 10 8 10 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 7 12 1 1 12 12 12 12 12 7 12 12 12 100 12 12 12 12 12 12 1 1 1 12 12 1 12 12 7 12 12 12 12 12 12 12 7 12 1 12 12 12 1 7 12 1 12 12 12 12 1 12 1 12 1 100 12 12 1 100 12 100 1 12 12 12 12 12 12 12 12 12 12 12 1 12 1 12 12 12 12 12 12 1 12 12 1 12 12 7 12 12 1 1 12 12 12 1 100 12 12 12 12 12 1 12 12 12 7 12 12 12 12 1 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/lang/invoke/MethodHandle FORM_OFFSET J 20 +staticfield java/lang/invoke/MethodHandle $assertionsDisabled Z 1 +instanceKlass java/lang/invoke/DirectMethodHandle$Interface +instanceKlass java/lang/invoke/DirectMethodHandle$Constructor +instanceKlass java/lang/invoke/DirectMethodHandle$Special +instanceKlass java/lang/invoke/DirectMethodHandle$Accessor +ciInstanceKlass java/lang/invoke/DirectMethodHandle 1 1 922 7 7 100 7 7 10 10 100 10 10 10 10 10 10 7 7 10 10 10 10 10 10 9 100 10 9 10 10 10 10 10 10 7 10 10 10 8 10 7 10 7 10 10 10 10 10 10 100 10 10 7 10 10 10 10 8 10 10 10 10 10 9 7 10 10 10 100 10 8 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 8 9 8 9 9 8 9 9 8 9 9 8 10 10 7 9 7 10 100 10 10 10 10 7 10 10 10 7 10 10 10 10 10 9 10 9 9 10 10 7 7 7 9 10 10 10 10 9 10 100 10 100 10 10 8 9 9 10 9 10 9 9 10 10 10 10 10 10 10 9 10 10 10 10 10 9 10 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 8 9 9 10 100 10 9 10 7 9 10 10 10 10 10 8 8 8 8 10 9 10 7 10 8 9 10 8 8 8 9 8 8 8 8 8 8 7 8 10 10 8 8 10 10 10 10 7 7 1 1 1 1 1 1 1 100 1 1 1 1 7 1 1 1 1 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 1 3 1 1 3 1 3 1 1 1 1 1 1 1 1 1 1 1 1 1 1 3 1 3 1 1 1 1 3 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 12 12 1 12 12 12 12 12 12 1 1 12 12 12 12 12 12 12 1 12 12 12 12 12 12 12 1 12 12 12 1 12 1 12 1 12 12 12 12 12 1 12 12 1 12 12 12 12 12 12 12 12 12 7 12 1 12 7 12 12 1 1 12 12 12 12 12 12 12 12 12 12 12 12 7 12 12 12 12 12 1 12 1 12 12 1 12 12 1 12 12 1 12 12 1 12 1 12 1 12 12 12 12 1 12 12 12 12 7 12 12 12 12 12 12 12 7 12 12 1 1 1 12 12 12 12 12 12 12 1 12 1 12 12 1 12 12 12 12 100 12 12 12 12 12 12 12 12 12 7 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 1 12 12 12 1 12 7 12 1 12 12 12 12 12 1 1 1 1 12 12 12 1 100 12 12 12 12 1 1 12 12 1 12 12 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/lang/invoke/DirectMethodHandle IMPL_NAMES Ljava/lang/invoke/MemberName$Factory; java/lang/invoke/MemberName$Factory +staticfield java/lang/invoke/DirectMethodHandle FT_UNCHECKED_REF I 8 +staticfield java/lang/invoke/DirectMethodHandle ACCESSOR_FORMS [Ljava/lang/invoke/LambdaForm; 132 [Ljava/lang/invoke/LambdaForm; +staticfield java/lang/invoke/DirectMethodHandle ALL_WRAPPERS [Lsun/invoke/util/Wrapper; 10 [Lsun/invoke/util/Wrapper; +staticfield java/lang/invoke/DirectMethodHandle NFS [Ljava/lang/invoke/LambdaForm$NamedFunction; 12 [Ljava/lang/invoke/LambdaForm$NamedFunction; +staticfield java/lang/invoke/DirectMethodHandle OBJ_OBJ_TYPE Ljava/lang/invoke/MethodType; java/lang/invoke/MethodType +staticfield java/lang/invoke/DirectMethodHandle LONG_OBJ_TYPE Ljava/lang/invoke/MethodType; java/lang/invoke/MethodType +staticfield java/lang/invoke/DirectMethodHandle $assertionsDisabled Z 1 +instanceKlass java/lang/invoke/VarHandleLongs$FieldInstanceReadOnly +instanceKlass java/lang/invoke/VarHandleObjects$Array +instanceKlass java/lang/invoke/VarHandleObjects$FieldInstanceReadOnly +instanceKlass java/lang/invoke/VarHandleInts$FieldInstanceReadOnly +ciInstanceKlass java/lang/invoke/VarHandle 1 1 298 10 9 100 10 9 10 10 10 9 10 10 9 9 10 10 10 10 10 10 10 9 100 10 9 10 10 7 7 10 10 10 9 10 9 10 10 10 100 10 9 9 10 10 10 10 10 10 10 7 10 10 9 8 10 7 10 7 100 1 1 100 1 100 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 100 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 12 12 1 12 12 12 12 12 12 12 12 12 12 12 12 12 12 100 12 12 1 12 12 12 1 1 12 100 12 12 12 12 12 12 12 12 1 7 12 12 7 12 12 12 12 12 12 12 1 7 12 12 12 1 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/lang/invoke/VarHandle AIOOBE_SUPPLIER Ljava/util/function/BiFunction; jdk/internal/util/Preconditions$1 +staticfield java/lang/invoke/VarHandle VFORM_OFFSET J 12 +staticfield java/lang/invoke/VarHandle $assertionsDisabled Z 1 +ciInstanceKlass java/lang/invoke/MemberName 1 1 747 7 7 100 9 10 9 10 10 10 10 10 10 10 9 10 100 100 10 8 10 10 10 10 9 8 10 7 7 10 10 7 7 7 10 9 100 8 10 10 10 10 10 10 10 10 10 10 8 8 8 10 10 9 3 10 10 10 10 10 10 10 10 10 7 8 10 10 8 9 8 9 10 8 10 10 10 10 10 100 10 10 8 10 10 8 10 10 7 10 10 8 8 100 10 10 100 10 10 10 10 10 10 10 10 10 3 10 3 10 3 3 3 3 3 3 100 10 10 10 3 9 10 3 10 10 10 10 10 10 10 10 10 10 10 10 10 10 100 10 10 10 100 10 10 10 10 10 10 8 10 10 10 10 10 10 10 10 10 10 10 10 10 100 10 100 8 10 7 10 10 10 10 10 8 8 8 8 10 10 10 8 8 10 8 10 10 10 8 8 10 10 8 10 8 10 10 10 8 8 8 100 10 8 8 8 8 10 100 100 100 10 100 10 100 10 9 10 100 100 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 3 1 3 1 3 1 3 1 3 1 3 1 1 1 1 1 1 1 1 3 1 1 1 1 3 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 100 1 1 1 1 1 1 1 1 1 7 1 1 12 12 12 12 12 12 12 12 12 12 100 12 12 1 1 12 1 12 12 12 12 12 1 100 12 1 1 12 1 12 12 1 1 12 12 12 12 12 12 12 12 12 12 1 1 1 100 12 12 12 12 12 12 12 12 12 12 12 1 12 12 100 100 12 1 12 12 12 12 12 1 12 12 1 12 12 1 12 12 1 12 12 1 1 1 12 100 12 1 12 12 12 12 12 12 12 12 12 12 100 1 12 7 12 12 12 12 12 7 12 12 12 12 12 12 12 12 12 1 12 1 12 12 12 12 12 12 12 12 12 12 12 12 12 1 12 1 1 1 12 12 12 12 12 1 1 1 1 12 12 12 1 1 12 1 12 12 1 1 12 1 12 1 12 12 12 1 1 1 1 1 1 1 1 12 1 1 1 1 1 12 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/lang/invoke/MemberName $assertionsDisabled Z 1 +ciInstanceKlass java/lang/invoke/ResolvedMethodName 1 1 16 10 100 100 1 1 1 1 1 1 1 1 1 12 1 1 +ciInstanceKlass java/lang/invoke/MethodHandleNatives 1 1 660 100 10 9 10 100 10 10 10 10 8 8 8 8 8 8 8 8 8 8 7 10 7 10 10 7 10 10 8 10 8 10 8 10 9 8 10 100 10 100 100 8 7 7 10 10 7 9 10 10 10 7 10 10 10 10 10 9 8 10 8 10 8 8 8 100 10 8 10 10 10 100 8 10 7 8 10 8 8 8 8 8 10 10 10 10 10 7 10 100 100 10 10 8 8 10 10 10 8 10 8 8 10 10 100 10 7 9 10 10 10 9 10 9 9 10 10 10 7 7 10 10 10 10 10 8 10 10 10 10 10 10 100 8 10 9 10 10 100 10 10 100 100 10 10 100 100 10 100 10 10 10 10 10 10 10 10 10 10 10 10 8 100 10 10 10 10 10 10 7 10 10 10 10 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 1 12 12 12 1 1 1 1 1 1 1 1 1 1 1 12 1 12 12 1 12 1 12 1 12 1 12 100 12 1 100 12 1 12 1 1 1 1 1 12 1 7 12 12 12 12 1 12 7 12 12 12 12 12 1 12 1 12 1 1 1 1 12 1 12 12 100 12 1 100 12 1 1 12 1 1 1 1 1 12 12 12 12 12 1 12 1 1 12 12 1 1 12 12 1 100 12 1 1 12 12 1 12 1 12 7 12 12 12 12 12 12 12 12 12 1 1 12 12 12 7 12 12 1 12 12 12 12 7 12 12 1 1 12 12 12 1 12 12 1 1 1 1 1 12 12 12 12 12 12 12 12 12 1 1 12 12 12 12 12 12 1 12 12 12 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/lang/invoke/MethodHandleNatives $assertionsDisabled Z 1 +ciInstanceKlass java/lang/invoke/LambdaForm 1 1 1075 100 9 10 10 9 9 10 100 10 9 10 9 10 7 9 9 9 9 10 7 10 7 10 10 10 10 10 10 9 100 10 9 10 10 10 10 10 7 10 10 8 10 10 10 7 10 10 7 10 10 9 9 9 10 9 10 10 100 10 9 10 10 100 10 10 10 10 10 10 10 8 10 10 8 8 9 9 9 10 10 10 9 10 10 10 10 10 10 9 10 8 8 8 8 8 8 8 8 10 9 7 10 9 10 10 10 10 10 10 10 10 10 10 10 10 10 10 100 8 10 10 10 10 8 10 8 8 10 9 10 10 100 10 10 10 10 9 8 10 10 10 10 10 9 8 10 100 10 10 9 9 8 10 10 100 100 10 10 8 8 100 8 10 10 10 8 8 9 10 10 8 8 8 100 8 100 8 100 8 10 8 9 10 10 9 10 10 10 10 10 10 10 10 10 10 8 100 10 10 9 10 8 8 100 8 8 8 8 8 8 8 8 10 10 10 10 8 8 8 10 8 10 8 8 8 8 8 10 10 10 10 10 10 10 10 10 10 10 9 8 10 9 10 9 9 9 9 7 10 9 10 10 7 8 10 9 7 10 8 100 10 9 9 10 7 10 10 10 9 10 10 10 9 10 10 10 9 10 9 7 9 10 9 10 100 10 7 9 100 1 1 100 1 100 1 1 1 7 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 3 1 3 1 1 1 1 1 3 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 100 1 1 12 12 12 12 12 12 1 12 12 12 7 12 12 12 12 12 12 1 12 1 12 12 100 12 100 12 12 12 12 1 12 12 12 12 12 12 12 1 12 1 12 12 12 1 12 12 1 12 12 12 12 12 12 12 12 12 1 12 12 12 12 1 12 12 12 12 12 12 12 1 12 12 1 1 12 12 12 12 7 12 12 12 7 12 12 12 12 12 12 12 1 1 1 1 1 1 1 1 12 12 1 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 1 1 12 12 12 1 12 1 1 12 12 12 12 1 12 12 7 12 12 12 1 100 12 12 12 12 12 12 1 12 12 7 12 12 1 12 12 1 1 12 1 1 1 1 12 12 12 1 1 12 12 12 1 1 1 1 1 1 1 1 1 12 1 12 12 12 12 12 12 12 12 12 12 12 12 1 12 12 12 12 1 1 1 1 1 1 1 1 1 1 1 12 12 12 12 1 1 1 12 1 12 1 1 1 1 1 12 12 12 7 12 12 12 12 12 12 12 12 12 1 12 12 12 12 12 12 12 1 7 12 12 12 12 1 1 12 12 1 12 1 1 12 12 12 12 1 12 7 12 12 7 12 12 12 12 12 12 12 12 12 12 12 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/lang/invoke/LambdaForm COMPILE_THRESHOLD I 0 +staticfield java/lang/invoke/LambdaForm INTERNED_ARGUMENTS [[Ljava/lang/invoke/LambdaForm$Name; 5 [[Ljava/lang/invoke/LambdaForm$Name; +staticfield java/lang/invoke/LambdaForm IMPL_NAMES Ljava/lang/invoke/MemberName$Factory; java/lang/invoke/MemberName$Factory +staticfield java/lang/invoke/LambdaForm LF_identity [Ljava/lang/invoke/LambdaForm; 6 [Ljava/lang/invoke/LambdaForm; +staticfield java/lang/invoke/LambdaForm LF_zero [Ljava/lang/invoke/LambdaForm; 6 [Ljava/lang/invoke/LambdaForm; +staticfield java/lang/invoke/LambdaForm NF_identity [Ljava/lang/invoke/LambdaForm$NamedFunction; 6 [Ljava/lang/invoke/LambdaForm$NamedFunction; +staticfield java/lang/invoke/LambdaForm NF_zero [Ljava/lang/invoke/LambdaForm$NamedFunction; 6 [Ljava/lang/invoke/LambdaForm$NamedFunction; +staticfield java/lang/invoke/LambdaForm createFormsLock Ljava/lang/Object; java/lang/Object +staticfield java/lang/invoke/LambdaForm DEBUG_NAME_COUNTERS Ljava/util/HashMap; null +staticfield java/lang/invoke/LambdaForm DEBUG_NAMES Ljava/util/HashMap; null +staticfield java/lang/invoke/LambdaForm TRACE_INTERPRETER Z 0 +staticfield java/lang/invoke/LambdaForm $assertionsDisabled Z 1 +ciInstanceKlass java/lang/invoke/MethodType 1 1 674 7 10 9 9 9 10 9 8 10 10 9 9 10 100 10 8 10 10 10 100 8 10 100 10 10 10 10 11 9 11 7 7 10 10 9 10 10 10 10 10 10 9 7 10 7 10 10 10 10 10 10 10 10 10 8 8 10 9 100 10 10 10 10 10 10 10 10 10 8 10 10 10 10 10 10 10 10 10 9 10 10 10 10 9 7 10 10 10 10 10 10 10 10 100 8 8 8 10 10 10 10 11 11 10 9 10 10 10 10 10 10 10 10 10 10 10 10 9 7 10 10 10 10 10 10 10 8 10 11 9 10 10 10 10 10 9 9 10 9 10 10 100 10 7 10 7 7 9 100 1 1 100 1 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 3 1 3 1 3 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 100 100 1 100 100 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 100 1 1 1 1 1 1 1 100 1 12 12 12 12 7 12 7 12 1 100 12 12 7 7 12 1 1 12 12 12 1 1 12 1 12 12 12 12 12 12 1 7 12 12 12 12 12 12 7 12 12 12 12 1 12 1 12 12 7 12 12 12 12 12 12 12 1 1 12 12 1 12 12 12 12 100 12 12 12 1 12 7 12 12 12 12 12 12 12 12 12 12 12 12 12 1 12 7 12 12 7 12 12 12 1 1 1 1 12 12 12 12 12 100 12 12 12 12 12 12 12 12 12 12 12 12 12 12 1 12 12 12 12 12 12 12 1 7 12 12 12 12 12 100 12 12 12 12 12 100 12 12 100 12 12 12 1 1 1 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/lang/invoke/MethodType internTable Ljava/lang/invoke/MethodType$ConcurrentWeakInternSet; java/lang/invoke/MethodType$ConcurrentWeakInternSet +staticfield java/lang/invoke/MethodType NO_PTYPES [Ljava/lang/Class; 0 [Ljava/lang/Class; +staticfield java/lang/invoke/MethodType objectOnlyTypes [Ljava/lang/invoke/MethodType; 20 [Ljava/lang/invoke/MethodType; +staticfield java/lang/invoke/MethodType METHOD_HANDLE_ARRAY [Ljava/lang/Class; 1 [Ljava/lang/Class; +staticfield java/lang/invoke/MethodType serialPersistentFields [Ljava/io/ObjectStreamField; 0 [Ljava/io/ObjectStreamField; +staticfield java/lang/invoke/MethodType $assertionsDisabled Z 1 +ciInstanceKlass java/lang/BootstrapMethodError 0 0 45 10 10 10 10 10 100 100 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 100 1 1 12 12 12 12 12 1 1 1 1 1 1 1 1 +instanceKlass java/lang/invoke/VolatileCallSite +instanceKlass java/lang/invoke/MutableCallSite +instanceKlass java/lang/invoke/ConstantCallSite +ciInstanceKlass java/lang/invoke/CallSite 1 1 299 10 10 9 10 9 10 10 100 7 10 7 10 10 10 100 100 10 10 10 8 10 10 10 10 10 10 10 10 9 9 7 8 10 10 100 10 9 8 100 10 10 100 8 10 10 10 100 10 10 10 10 10 9 9 8 10 9 100 10 10 10 10 10 10 100 8 10 10 100 100 100 8 10 10 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 7 1 1 1 1 1 1 12 12 12 12 12 12 12 1 1 12 1 12 12 12 1 1 12 12 1 12 12 12 12 12 100 12 12 12 100 12 1 12 12 1 100 12 12 12 12 1 1 12 12 1 12 12 12 12 12 12 12 100 12 12 1 100 12 12 12 12 7 12 1 1 12 1 1 1 1 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/lang/invoke/CallSite $assertionsDisabled Z 1 +ciInstanceKlass java/lang/invoke/MethodHandleNatives$CallSiteContext 1 1 49 10 7 10 10 10 10 7 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 12 1 7 12 7 12 12 1 1 1 1 1 1 1 1 100 1 1 1 1 1 +ciInstanceKlass java/lang/invoke/ConstantCallSite 1 1 49 10 9 10 100 10 9 100 10 10 7 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 12 12 12 1 12 12 1 12 1 1 1 1 +ciInstanceKlass java/lang/invoke/MutableCallSite 0 0 67 10 10 9 10 10 10 9 10 10 100 10 100 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 12 12 12 12 12 12 12 12 100 12 1 12 1 1 1 1 1 1 1 1 1 1 1 +ciInstanceKlass java/lang/invoke/VolatileCallSite 0 0 41 10 10 10 10 10 10 100 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 12 12 12 1 1 1 1 1 1 1 +ciInstanceKlass java/lang/AssertionStatusDirectives 0 0 24 10 100 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 1 1 +instanceKlass java/lang/StringBuilder +instanceKlass java/lang/StringBuffer +ciInstanceKlass java/lang/AbstractStringBuilder 1 1 522 7 7 10 9 9 9 9 10 9 10 10 10 10 10 10 10 10 7 3 10 3 100 10 10 100 10 10 10 10 10 10 10 100 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 11 10 10 8 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 18 100 10 18 10 10 10 11 10 10 10 100 10 8 10 10 8 8 10 10 10 10 100 10 100 10 100 10 7 100 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 7 1 1 1 100 1 1 1 1 1 1 1 1 1 12 12 12 12 12 7 12 12 12 7 12 12 12 12 12 7 12 1 12 1 12 1 12 12 12 12 12 12 1 12 100 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 1 12 12 12 12 12 12 7 12 12 12 7 12 12 12 12 12 12 12 12 12 7 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 1 15 16 15 16 12 1 100 12 15 12 12 12 12 12 12 1 1 12 12 1 1 12 12 12 1 1 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 10 1 10 1 1 1 1 1 10 1 1 1 1 1 1 1 1 1 1 100 12 12 12 1 1 100 1 1 100 1 1 +staticfield java/lang/AbstractStringBuilder EMPTYVALUE [B 0 +ciInstanceKlass java/lang/StringBuffer 1 1 471 10 10 10 11 10 10 10 9 10 10 10 9 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 9 10 10 100 10 10 10 10 10 8 10 8 10 8 10 10 10 10 7 10 100 8 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 7 10 7 10 9 9 9 7 100 100 100 1 1 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 100 1 1 1 100 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 7 12 100 1 12 100 12 12 1 12 1 12 1 12 12 100 12 12 12 1 1 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 1 12 1 12 7 12 7 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/lang/StringBuffer serialPersistentFields [Ljava/io/ObjectStreamField; 3 [Ljava/io/ObjectStreamField; +ciInstanceKlass java/lang/StringBuilder 1 1 409 10 10 10 11 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 9 9 10 10 10 10 10 10 10 10 10 10 10 100 100 8 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 7 10 7 100 100 100 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 100 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 7 12 100 100 12 12 12 12 12 100 12 12 12 1 1 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 1 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +ciInstanceKlass jdk/internal/misc/Unsafe 1 1 1196 10 9 9 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 100 10 10 10 5 0 10 10 10 10 10 10 10 10 10 100 10 10 10 10 10 10 10 10 10 10 10 10 10 10 5 0 5 0 5 0 10 10 10 100 10 10 10 10 10 10 10 10 10 100 10 10 10 10 8 10 8 8 10 9 9 9 9 9 9 9 9 10 10 10 10 5 0 5 0 9 10 10 10 10 10 8 3 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 100 10 100 10 9 5 0 10 5 0 10 5 0 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 5 0 5 0 5 0 10 10 10 10 10 8 100 11 8 11 10 10 7 10 7 10 9 7 9 7 9 7 9 7 9 7 9 7 9 7 9 7 9 10 9 9 9 9 9 9 9 9 9 10 10 10 7 1 1 1 1 1 3 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 12 12 12 12 7 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 1 12 12 12 12 12 12 12 12 12 12 12 1 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 1 12 12 12 12 12 12 12 12 1 12 12 12 1 12 1 1 12 7 12 100 7 100 100 7 100 12 12 12 12 12 12 12 12 12 12 1 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 1 1 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 100 12 1 1 12 1 12 12 12 1 1 12 12 12 1 12 1 12 1 12 1 12 1 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield jdk/internal/misc/Unsafe theUnsafe Ljdk/internal/misc/Unsafe; jdk/internal/misc/Unsafe +staticfield jdk/internal/misc/Unsafe ARRAY_BOOLEAN_BASE_OFFSET I 16 +staticfield jdk/internal/misc/Unsafe ARRAY_BYTE_BASE_OFFSET I 16 +staticfield jdk/internal/misc/Unsafe ARRAY_SHORT_BASE_OFFSET I 16 +staticfield jdk/internal/misc/Unsafe ARRAY_CHAR_BASE_OFFSET I 16 +staticfield jdk/internal/misc/Unsafe ARRAY_INT_BASE_OFFSET I 16 +staticfield jdk/internal/misc/Unsafe ARRAY_LONG_BASE_OFFSET I 16 +staticfield jdk/internal/misc/Unsafe ARRAY_FLOAT_BASE_OFFSET I 16 +staticfield jdk/internal/misc/Unsafe ARRAY_DOUBLE_BASE_OFFSET I 16 +staticfield jdk/internal/misc/Unsafe ARRAY_OBJECT_BASE_OFFSET I 16 +staticfield jdk/internal/misc/Unsafe ARRAY_BOOLEAN_INDEX_SCALE I 1 +staticfield jdk/internal/misc/Unsafe ARRAY_BYTE_INDEX_SCALE I 1 +staticfield jdk/internal/misc/Unsafe ARRAY_SHORT_INDEX_SCALE I 2 +staticfield jdk/internal/misc/Unsafe ARRAY_CHAR_INDEX_SCALE I 2 +staticfield jdk/internal/misc/Unsafe ARRAY_INT_INDEX_SCALE I 4 +staticfield jdk/internal/misc/Unsafe ARRAY_LONG_INDEX_SCALE I 8 +staticfield jdk/internal/misc/Unsafe ARRAY_FLOAT_INDEX_SCALE I 4 +staticfield jdk/internal/misc/Unsafe ARRAY_DOUBLE_INDEX_SCALE I 8 +staticfield jdk/internal/misc/Unsafe ARRAY_OBJECT_INDEX_SCALE I 4 +staticfield jdk/internal/misc/Unsafe ADDRESS_SIZE I 8 +staticfield jdk/internal/misc/Unsafe BE Z 0 +staticfield jdk/internal/misc/Unsafe unalignedAccess Z 1 +ciInstanceKlass jdk/internal/module/Modules 1 1 483 10 9 11 11 11 11 11 11 11 11 10 10 18 10 100 10 10 10 10 11 10 10 10 10 9 10 10 10 100 100 11 10 11 10 10 10 10 10 11 18 11 10 11 100 11 11 11 10 10 18 11 18 11 10 18 18 10 9 11 100 10 11 11 7 11 10 100 10 10 10 11 10 100 10 18 10 100 8 10 10 18 11 11 10 10 10 18 10 10 7 10 10 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 100 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 100 100 100 100 100 100 100 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 12 12 7 12 12 12 12 12 12 12 12 12 100 12 1 15 16 15 16 12 100 12 1 100 12 100 12 12 12 12 12 12 12 12 12 100 12 1 1 12 100 12 12 12 12 100 12 12 12 12 16 15 16 12 12 100 12 100 12 1 12 12 12 12 100 12 16 15 16 12 12 16 15 16 12 12 12 15 16 15 16 12 12 12 1 12 12 1 12 1 12 12 12 12 12 1 15 16 12 12 1 1 12 12 15 16 12 12 12 15 12 1 12 7 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 10 1 10 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 10 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 10 1 1 1 1 1 1 10 1 1 1 1 1 1 10 1 10 1 1 1 1 1 1 1 1 1 1 1 1 1 10 1 1 1 1 1 10 1 1 10 1 1 1 1 1 100 12 12 12 12 12 12 12 12 12 1 1 100 1 1 1 1 1 100 1 1 +staticfield jdk/internal/module/Modules JLA Ljdk/internal/access/JavaLangAccess; java/lang/System$2 +staticfield jdk/internal/module/Modules $assertionsDisabled Z 1 +instanceKlass org/apache/tools/ant/DemuxInputStream +instanceKlass org/apache/commons/compress/archivers/ArchiveInputStream +instanceKlass jdk/nio/zipfs/ZipFileSystem$EntryInputStream +instanceKlass org/gradle/internal/io/StreamByteBuffer$StreamByteBufferInputStream +instanceKlass com/google/common/io/BaseEncoding$StandardBaseEncoding$2 +instanceKlass java/io/ObjectInputStream +instanceKlass org/apache/tools/ant/util/FileUtils$1 +instanceKlass org/gradle/util/internal/BulkReadInputStream +instanceKlass java/io/PipedInputStream +instanceKlass org/gradle/internal/remote/internal/inet/SocketConnection$SocketInputStream +instanceKlass org/gradle/internal/io/RandomAccessFileInputStream +instanceKlass com/esotericsoftware/kryo/io/Input +instanceKlass org/gradle/internal/serialize/kryo/KryoBackedDecoder$1 +instanceKlass org/gradle/internal/serialize/AbstractDecoder$DecoderStream +instanceKlass org/gradle/internal/stream/EncodedStream$EncodedInput +instanceKlass java/util/zip/ZipFile$ZipFileInputStream +instanceKlass java/io/FilterInputStream +instanceKlass java/io/FileInputStream +instanceKlass java/io/ByteArrayInputStream +ciInstanceKlass java/io/InputStream 1 1 170 100 10 100 10 10 10 10 7 3 10 100 8 10 7 10 3 100 8 10 7 10 11 10 11 11 11 7 10 5 0 10 8 10 8 10 10 7 100 1 1 1 1 3 1 3 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 1 12 7 12 12 1 12 1 1 12 1 7 12 1 1 1 12 100 12 12 12 12 7 12 12 1 12 100 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +ciInstanceKlass java/io/ByteArrayInputStream 1 1 96 10 9 9 9 9 10 10 10 10 10 10 7 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 12 12 7 12 7 12 7 12 7 12 12 100 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +ciInstanceKlass java/net/URL 1 1 744 10 10 10 9 9 10 10 10 9 10 8 10 100 10 10 8 10 9 100 8 10 10 8 9 10 9 10 10 9 9 8 9 10 8 9 10 10 8 10 7 10 10 10 10 10 8 10 10 8 9 8 10 10 100 10 10 10 100 8 10 10 8 10 10 10 10 10 10 8 10 7 10 10 10 9 10 9 10 10 100 100 10 10 10 10 10 10 7 10 10 10 100 10 10 8 9 10 10 9 10 100 10 10 10 10 10 10 10 10 10 10 10 9 9 100 8 10 10 9 10 8 10 8 10 10 8 8 10 100 10 10 10 7 100 10 9 10 8 10 100 10 10 8 9 10 10 10 10 10 11 10 10 9 10 10 10 8 10 7 100 10 8 8 10 8 8 8 100 10 9 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 100 8 10 10 10 10 10 8 7 10 7 10 7 10 7 7 10 9 9 7 10 10 100 1 1 1 1 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 100 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 12 12 100 12 12 12 12 12 1 12 1 12 1 12 12 1 1 12 12 1 12 12 12 12 12 12 12 1 12 12 1 12 12 7 12 1 12 1 12 12 12 12 12 1 12 12 1 12 1 12 12 1 12 12 12 1 1 12 1 12 12 12 12 12 12 1 12 1 7 12 12 100 12 12 12 12 100 12 1 1 12 12 12 12 12 12 1 12 1 12 12 1 12 100 12 12 100 12 12 1 12 12 12 12 12 12 12 7 12 12 12 12 12 1 1 12 12 12 1 7 12 1 12 12 1 1 12 1 100 12 12 12 1 1 12 12 1 12 1 100 12 100 12 12 12 12 12 7 12 12 12 12 12 12 100 12 12 12 1 1 12 1 12 12 12 12 12 12 12 12 12 12 12 12 12 12 1 1 12 12 12 1 1 1 1 1 1 12 7 12 12 1 7 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/net/URL defaultFactory Ljava/net/URLStreamHandlerFactory; java/net/URL$DefaultFactory +staticfield java/net/URL streamHandlerLock Ljava/lang/Object; java/lang/Object +staticfield java/net/URL serialPersistentFields [Ljava/io/ObjectStreamField; 7 [Ljava/io/ObjectStreamField; +ciInstanceKlass java/util/jar/Manifest 1 1 301 10 7 10 9 7 10 9 9 10 10 10 10 10 11 11 10 10 100 100 10 8 10 10 10 10 11 100 10 10 11 11 11 11 100 100 8 10 11 7 9 10 10 10 10 8 10 10 11 10 10 10 8 10 7 10 10 10 100 8 10 10 8 10 10 10 10 11 10 10 10 7 10 11 10 11 10 7 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 1 12 1 12 12 12 12 12 12 12 7 12 12 100 12 1 1 1 12 12 12 12 1 12 12 12 100 12 12 12 1 1 1 12 1 7 12 12 12 12 12 1 12 12 12 12 12 1 12 1 12 12 12 1 1 12 1 12 100 12 12 12 12 12 7 12 12 1 12 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +ciInstanceKlass jdk/internal/loader/ClassLoaders 1 1 143 10 9 9 9 7 11 100 11 11 10 10 100 100 10 9 8 10 7 10 7 10 10 7 10 8 10 8 8 7 10 7 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 12 1 100 12 1 12 12 100 12 100 12 1 1 7 12 12 1 7 12 1 12 1 12 12 1 12 1 7 12 1 1 1 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield jdk/internal/loader/ClassLoaders JLA Ljdk/internal/access/JavaLangAccess; java/lang/System$2 +staticfield jdk/internal/loader/ClassLoaders BOOT_LOADER Ljdk/internal/loader/ClassLoaders$BootClassLoader; jdk/internal/loader/ClassLoaders$BootClassLoader +staticfield jdk/internal/loader/ClassLoaders PLATFORM_LOADER Ljdk/internal/loader/ClassLoaders$PlatformClassLoader; jdk/internal/loader/ClassLoaders$PlatformClassLoader +staticfield jdk/internal/loader/ClassLoaders APP_LOADER Ljdk/internal/loader/ClassLoaders$AppClassLoader; jdk/internal/loader/ClassLoaders$AppClassLoader +instanceKlass jdk/internal/loader/ClassLoaders$BootClassLoader +instanceKlass jdk/internal/loader/ClassLoaders$PlatformClassLoader +instanceKlass jdk/internal/loader/ClassLoaders$AppClassLoader +ciInstanceKlass jdk/internal/loader/BuiltinClassLoader 1 1 717 10 10 9 9 7 10 9 9 10 10 11 100 100 10 10 8 10 10 7 10 10 11 11 11 7 9 8 8 10 10 9 11 7 10 10 10 10 10 10 10 11 10 7 10 10 10 100 8 10 10 8 10 10 11 11 7 7 10 11 11 10 7 10 10 7 7 10 7 7 10 10 100 10 11 100 100 10 10 100 100 10 10 18 10 10 18 100 10 7 10 10 10 10 10 9 100 10 10 10 10 10 10 10 10 10 10 18 7 10 10 10 10 100 10 7 10 10 10 11 7 10 7 100 10 10 11 10 10 10 10 10 10 10 10 8 10 10 10 100 8 8 10 10 8 8 10 11 9 10 9 9 9 9 9 9 10 8 10 7 10 10 7 7 10 11 10 10 10 100 10 10 10 7 10 10 8 10 7 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 7 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 100 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 7 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 7 12 12 12 12 1 12 12 12 12 12 12 1 1 12 1 12 12 1 12 12 7 12 12 12 1 12 1 1 12 7 12 12 12 1 12 12 12 7 12 12 12 12 12 7 12 1 7 12 12 1 1 12 1 12 12 12 12 1 1 12 12 1 12 12 1 1 12 1 1 12 7 12 1 12 12 1 1 12 12 1 1 12 12 1 15 16 15 16 12 12 12 15 16 1 7 12 1 12 12 12 12 12 1 12 12 12 12 12 12 12 12 12 15 16 12 1 12 12 12 12 1 12 100 1 1 12 12 12 12 1 12 1 12 12 12 12 12 12 12 12 12 12 12 1 12 12 12 1 1 1 12 1 1 7 12 7 12 7 12 12 12 12 12 12 12 12 12 1 12 1 12 12 1 1 12 12 12 12 1 12 12 1 12 12 1 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 10 10 1 1 1 1 10 1 1 1 1 1 1 1 1 1 1 1 1 1 10 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 12 12 12 12 1 1 100 1 1 100 1 1 +staticfield jdk/internal/loader/BuiltinClassLoader packageToModule Ljava/util/Map; java/util/concurrent/ConcurrentHashMap +staticfield jdk/internal/loader/BuiltinClassLoader $assertionsDisabled Z 1 +ciInstanceKlass jdk/internal/loader/ClassLoaders$AppClassLoader 1 1 134 8 10 9 10 10 10 10 10 10 7 8 10 10 10 9 11 10 10 100 10 7 7 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 12 12 7 12 100 12 12 12 12 12 1 1 12 7 12 100 12 12 100 12 12 7 12 1 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +ciInstanceKlass jdk/internal/loader/ClassLoaders$PlatformClassLoader 1 1 57 8 10 9 11 10 100 10 100 7 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 12 12 100 12 7 12 1 12 1 1 1 1 1 1 1 1 1 1 1 1 +ciInstanceKlass java/security/CodeSource 1 1 402 10 9 9 9 9 10 9 10 100 10 100 10 7 10 10 10 100 10 10 10 10 10 100 10 10 10 10 10 10 10 10 10 10 10 10 10 8 10 10 10 10 8 10 10 100 10 10 8 10 10 10 8 8 9 100 8 10 10 8 10 8 8 8 10 10 10 10 10 10 100 100 10 10 10 10 10 100 10 10 8 10 10 10 100 10 100 100 8 8 10 10 10 100 10 10 11 10 10 11 10 10 8 100 10 10 100 10 11 11 7 100 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 100 100 1 1 1 1 1 1 1 1 1 12 12 12 12 12 7 12 12 100 12 100 12 1 12 12 100 1 12 100 12 12 12 1 12 100 100 12 100 12 12 12 12 12 12 1 12 12 12 12 1 12 1 12 1 12 12 12 1 1 12 1 1 12 12 1 12 1 1 1 12 12 12 12 12 12 1 1 12 12 12 12 12 1 12 1 12 12 12 1 12 1 1 1 1 12 100 12 1 12 12 12 12 12 100 1 1 12 12 1 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +ciInstanceKlass java/lang/StackTraceElement 1 0 224 10 10 9 9 9 9 8 10 100 9 8 9 9 9 8 10 10 100 10 10 8 10 10 8 8 8 10 8 8 10 8 8 100 10 10 10 10 9 10 10 100 10 10 10 10 10 10 10 10 10 100 100 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 3 1 3 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 100 100 100 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 12 12 12 12 12 12 1 100 12 1 12 1 12 12 12 1 12 12 1 12 1 12 12 1 1 1 12 1 1 12 1 1 1 12 12 12 12 12 12 12 1 12 100 12 100 12 12 12 12 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +instanceKlass java/nio/IntBuffer +instanceKlass java/nio/LongBuffer +instanceKlass java/nio/CharBuffer +instanceKlass java/nio/ByteBuffer +ciInstanceKlass java/nio/Buffer 1 1 195 100 10 9 9 10 9 10 10 100 100 10 8 10 10 8 8 10 10 8 9 100 8 10 8 8 9 10 8 8 8 10 8 8 8 100 10 100 10 100 10 100 10 7 10 10 9 7 10 10 7 1 1 1 1 1 1 3 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 12 12 12 12 1 1 1 12 12 1 1 12 12 1 12 1 1 12 1 1 12 12 1 1 1 12 1 1 1 1 1 1 1 1 7 12 7 12 12 1 7 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/nio/Buffer UNSAFE Ljdk/internal/misc/Unsafe; jdk/internal/misc/Unsafe +staticfield java/nio/Buffer $assertionsDisabled Z 1 +ciInstanceKlass java/lang/StackWalker 0 0 235 9 10 100 10 10 11 10 10 100 10 100 8 10 10 10 10 9 9 9 9 10 9 10 11 100 8 10 10 9 10 10 10 18 100 8 10 10 10 9 11 10 100 100 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 100 12 1 100 12 12 100 12 12 12 1 12 1 1 12 12 12 12 12 12 12 12 12 12 100 12 12 1 1 12 12 12 100 12 100 12 1 15 16 15 16 12 1 1 12 100 12 12 100 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 10 10 1 1 1 1 1 1 1 1 1 1 1 1 100 12 12 1 1 100 1 1 100 1 1 +ciInstanceKlass java/lang/StackStreamFactory$AbstractStackWalker 1 0 306 100 100 3 10 10 10 9 10 9 9 9 9 9 10 10 9 10 10 9 9 100 10 8 10 10 8 10 10 100 8 10 8 10 9 10 9 8 5 0 8 8 9 10 10 10 9 10 10 10 10 10 10 8 10 10 10 10 8 100 10 10 10 10 10 10 9 8 10 10 10 10 10 10 10 10 10 10 8 100 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 100 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 100 12 12 12 12 12 12 12 100 12 100 12 12 12 12 12 12 100 12 1 1 12 12 1 12 100 12 1 1 12 1 12 100 12 12 12 1 1 1 12 12 12 12 12 12 12 12 12 12 12 1 12 12 12 12 1 1 12 12 12 12 12 100 12 12 1 12 12 12 12 12 12 12 12 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +instanceKlass java/lang/LiveStackFrameInfo +ciInstanceKlass java/lang/StackFrameInfo 0 0 132 10 9 9 9 11 9 11 10 10 10 11 11 11 10 9 10 10 10 11 10 9 10 100 8 10 10 100 100 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 100 1 1 1 1 1 12 100 12 12 100 12 12 12 12 100 12 12 12 12 12 12 12 12 12 12 12 12 12 12 1 1 12 100 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +ciInstanceKlass java/lang/LiveStackFrameInfo 0 0 97 10 9 9 9 9 9 100 10 10 8 10 100 8 8 8 10 100 10 100 10 100 100 100 1 1 1 1 1 1 1 1 3 1 3 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 12 12 12 12 12 12 1 12 12 1 12 1 1 1 1 1 12 1 12 1 1 1 1 1 1 1 1 1 +instanceKlass java/util/concurrent/locks/AbstractQueuedSynchronizer +ciInstanceKlass java/util/concurrent/locks/AbstractOwnableSynchronizer 1 1 32 10 9 7 7 100 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 1 1 1 +ciInstanceKlass java/lang/Boolean 1 1 128 10 9 10 10 8 10 9 9 8 10 7 10 10 100 100 10 10 8 10 9 7 100 100 1 1 1 1 1 1 1 1 1 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 12 1 12 12 12 1 12 1 12 7 12 1 1 12 12 1 7 12 12 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/lang/Boolean TRUE Ljava/lang/Boolean; java/lang/Boolean +staticfield java/lang/Boolean FALSE Ljava/lang/Boolean; java/lang/Boolean +staticfield java/lang/Boolean TYPE Ljava/lang/Class; java/lang/Class +ciInstanceKlass java/lang/Character 1 1 551 7 100 10 9 9 10 10 10 10 10 10 3 3 3 3 3 10 10 3 11 11 10 10 100 10 10 3 10 10 10 100 8 7 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 5 0 10 10 10 10 10 10 10 10 10 10 9 100 10 10 10 3 10 10 10 100 10 10 10 10 8 10 9 10 10 10 10 10 10 10 10 10 100 8 10 10 8 10 9 100 100 7 1 1 100 1 100 1 100 1 1 1 1 3 1 3 1 1 3 1 3 1 1 1 1 1 1 1 3 1 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 3 1 1 1 1 1 1 1 3 1 1 3 1 1 1 1 1 3 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 12 12 12 12 12 12 12 12 7 12 12 12 12 1 12 12 12 12 1 1 1 100 12 12 12 12 12 12 12 12 12 7 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 1 12 12 100 12 12 12 1 12 12 12 1 12 100 12 12 12 12 12 12 12 1 1 12 7 12 1 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/lang/Character TYPE Ljava/lang/Class; java/lang/Class +staticfield java/lang/Character $assertionsDisabled Z 1 +instanceKlass com/google/common/cache/Striped64 +instanceKlass java/math/BigDecimal +instanceKlass java/util/concurrent/atomic/Striped64 +instanceKlass java/math/BigInteger +instanceKlass java/util/concurrent/atomic/AtomicLong +instanceKlass java/util/concurrent/atomic/AtomicInteger +instanceKlass java/lang/Long +instanceKlass java/lang/Integer +instanceKlass java/lang/Short +instanceKlass java/lang/Byte +instanceKlass java/lang/Double +instanceKlass java/lang/Float +ciInstanceKlass java/lang/Number 1 1 37 10 10 100 7 100 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 1 1 1 +ciInstanceKlass java/lang/Float 1 1 192 7 100 10 10 4 100 10 10 8 8 10 10 10 10 4 4 4 10 9 10 10 10 10 10 10 3 10 10 10 10 8 10 9 7 100 1 1 1 1 1 4 1 1 1 4 1 1 3 1 3 1 3 1 3 1 1 1 1 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 12 100 12 1 12 12 1 1 100 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 1 7 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/lang/Float TYPE Ljava/lang/Class; java/lang/Class +ciInstanceKlass java/lang/Double 1 1 254 7 100 10 10 10 100 10 10 6 0 8 10 8 10 8 6 0 10 100 5 0 5 0 8 8 10 10 8 10 8 8 8 10 10 10 10 10 10 10 10 6 0 6 0 6 0 10 9 10 10 10 10 5 0 10 10 10 10 8 10 9 7 100 1 1 1 1 1 6 0 1 1 1 6 0 1 1 3 1 3 1 3 1 3 1 1 1 1 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 12 12 12 1 12 100 12 1 12 1 12 1 12 1 1 1 100 12 12 1 12 1 1 1 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 1 7 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/lang/Double TYPE Ljava/lang/Class; java/lang/Class +ciInstanceKlass java/lang/Byte 1 1 178 7 10 9 10 100 100 10 8 10 8 10 10 10 10 10 10 10 10 8 8 10 9 10 10 10 10 10 5 0 10 8 10 9 7 100 7 1 1 1 1 1 3 1 3 1 1 1 1 1 1 1 3 1 3 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 12 12 12 1 1 12 1 12 1 12 12 12 12 12 12 12 12 1 1 12 12 12 12 12 12 12 1 7 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/lang/Byte TYPE Ljava/lang/Class; java/lang/Class +ciInstanceKlass java/lang/Short 1 1 186 7 100 10 10 100 100 10 8 10 8 10 10 10 10 10 10 9 10 10 10 8 8 10 9 10 10 10 10 10 3 3 5 0 10 8 10 9 100 100 100 1 1 1 1 1 3 1 3 1 1 1 1 1 1 1 3 1 3 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 12 12 1 1 12 1 12 1 12 12 12 12 12 12 12 12 12 12 1 1 12 12 12 12 12 12 12 1 7 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/lang/Short TYPE Ljava/lang/Class; java/lang/Class +ciInstanceKlass java/lang/Integer 1 1 417 7 100 7 7 10 9 9 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 9 9 100 8 10 100 10 8 10 10 8 10 8 10 3 10 3 10 10 10 7 11 100 10 11 10 8 10 8 100 10 10 5 0 8 10 10 10 10 7 9 9 10 10 9 10 10 10 10 100 100 10 10 8 8 10 8 8 8 8 8 8 10 10 10 5 0 3 3 3 3 10 3 10 10 8 10 9 3 3 3 3 3 3 9 7 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 3 1 3 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 100 12 12 100 12 12 100 12 12 12 7 12 12 12 12 12 12 12 12 12 1 1 12 1 12 1 12 12 1 12 1 12 12 12 12 7 12 1 1 12 1 12 1 1 12 12 1 12 12 12 12 1 12 12 12 12 12 12 12 7 12 1 1 12 12 1 1 12 1 1 1 1 1 1 12 12 12 12 12 12 1 7 12 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/lang/Integer TYPE Ljava/lang/Class; java/lang/Class +staticfield java/lang/Integer digits [C 36 +staticfield java/lang/Integer DigitTens [B 100 +staticfield java/lang/Integer DigitOnes [B 100 +staticfield java/lang/Integer sizeTable [I 10 +ciInstanceKlass java/lang/Long 1 1 482 7 100 7 7 10 9 9 10 10 10 10 10 10 10 10 5 0 5 0 7 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 7 5 0 5 0 9 9 5 0 100 8 10 8 10 8 8 10 5 0 10 5 0 10 10 10 100 11 100 10 11 10 8 10 8 100 10 10 8 8 11 10 10 10 5 0 5 0 9 10 10 8 8 10 8 8 8 8 8 8 10 10 10 10 9 10 10 10 100 100 10 10 10 10 10 10 10 5 0 5 0 5 0 10 5 0 5 0 10 10 10 8 10 9 7 100 7 1 1 1 1 1 1 5 0 1 1 1 1 1 1 1 3 1 3 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 7 12 12 100 12 12 12 12 12 1 12 12 12 12 12 12 100 12 12 12 12 12 12 100 12 12 12 12 12 12 12 1 12 12 1 1 12 1 12 1 1 12 12 12 12 100 12 1 1 12 1 12 1 1 12 12 1 1 12 12 12 12 12 12 12 1 1 12 1 1 1 1 1 1 12 12 12 12 12 12 7 12 1 1 12 12 12 12 12 12 12 12 12 12 1 7 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/lang/Long TYPE Ljava/lang/Class; java/lang/Class +instanceKlass kotlin/KotlinNullPointerException +ciInstanceKlass java/lang/NullPointerException 1 1 26 10 10 100 100 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 12 12 1 1 +ciInstanceKlass java/lang/ArithmeticException 1 1 26 10 10 100 100 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 12 12 1 1 +ciInstanceKlass java/util/Objects 1 1 140 10 100 8 10 10 10 10 10 10 10 11 100 10 10 8 10 8 100 11 8 100 10 10 10 7 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 1 1 12 12 7 12 12 12 12 12 100 12 1 12 12 1 12 1 1 7 12 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +instanceKlass java/util/Collections$SingletonMap +instanceKlass com/google/common/collect/MapMakerInternalMap +instanceKlass com/google/common/cache/LocalCache +instanceKlass java/util/concurrent/ConcurrentSkipListMap +instanceKlass java/util/EnumMap +instanceKlass java/util/TreeMap +instanceKlass java/util/IdentityHashMap +instanceKlass java/util/WeakHashMap +instanceKlass java/util/ImmutableCollections$AbstractImmutableMap +instanceKlass java/util/Collections$EmptyMap +instanceKlass sun/util/PreHashedMap +instanceKlass java/util/concurrent/ConcurrentHashMap +instanceKlass java/util/HashMap +ciInstanceKlass java/util/AbstractMap 1 1 192 10 10 11 10 11 11 11 7 11 10 11 100 10 11 11 10 11 9 7 10 9 100 10 7 11 11 11 100 100 11 8 100 10 10 8 10 10 10 7 7 100 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 100 100 12 12 12 12 12 12 1 12 12 12 1 12 12 12 12 1 12 12 1 1 12 12 1 1 12 1 1 12 1 12 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +instanceKlass groovy/lang/SpreadMap +instanceKlass sun/nio/ch/WindowsSelectorImpl$FdMap +instanceKlass java/lang/ProcessEnvironment +instanceKlass java/util/LinkedHashMap +ciInstanceKlass java/util/HashMap 1 1 590 10 7 10 100 10 100 11 11 11 10 7 3 10 100 100 10 8 10 10 10 10 10 8 10 9 10 9 4 10 10 11 9 4 10 11 11 11 11 7 11 11 10 10 9 10 9 9 9 10 9 7 10 10 10 10 10 9 10 7 3 7 10 10 9 9 10 10 10 10 9 7 10 9 7 10 9 7 10 100 10 11 100 10 11 11 10 100 100 10 10 10 10 10 10 10 8 10 100 10 4 10 4 10 10 10 8 4 10 100 11 10 10 10 10 7 7 100 100 1 1 100 1 100 1 100 1 100 1 100 1 100 1 100 1 100 1 100 1 1 1 1 1 1 1 1 5 0 1 1 3 1 1 1 1 3 1 3 1 3 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 7 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 100 1 1 1 1 100 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 12 1 12 1 12 1 12 12 12 12 1 12 1 1 1 12 12 12 12 7 12 1 12 12 12 12 12 12 12 12 12 12 12 12 12 1 12 12 12 12 12 12 12 12 12 12 12 1 12 12 12 12 12 12 12 1 1 12 12 12 12 12 12 12 12 1 12 12 1 12 1 1 12 1 12 12 12 1 1 12 12 12 12 12 12 12 12 1 100 12 12 12 12 1 100 12 1 100 12 12 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +ciInstanceKlass java/util/Map$Entry 1 0 167 18 100 100 18 10 18 18 10 10 8 10 8 8 8 10 10 8 10 10 8 10 8 10 8 10 8 10 8 100 8 10 11 11 11 100 11 7 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 15 16 15 16 3 3 12 1 1 15 100 12 15 12 15 100 12 12 12 12 12 12 1 12 1 12 1 12 12 1 1 12 12 12 12 1 12 1 1 1 10 11 11 1 1 11 11 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 12 12 12 12 12 1 1 100 1 1 100 1 1 +ciInstanceKlass java/lang/StringLatin1 1 1 314 7 10 100 10 10 10 10 10 10 10 10 10 10 10 10 10 9 10 10 10 10 10 10 10 100 10 10 10 8 8 8 10 10 10 7 10 10 10 10 10 10 10 10 10 10 10 8 10 100 10 10 10 10 10 7 100 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 1 12 12 7 12 12 7 12 12 7 12 12 12 12 12 7 12 12 12 12 12 12 12 12 1 12 12 1 1 1 12 100 12 12 1 12 12 12 12 12 12 12 12 12 12 1 12 1 12 100 12 7 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +ciInstanceKlass java/util/Arrays 1 1 1057 10 100 7 10 8 10 10 8 8 10 10 100 10 10 10 10 10 10 10 10 10 7 10 100 10 10 100 10 10 100 10 10 100 10 10 100 10 10 100 10 10 100 10 10 9 10 100 10 10 10 100 10 10 7 9 10 10 10 10 10 10 7 11 10 10 10 10 10 10 10 10 11 10 100 10 10 100 10 10 100 10 10 100 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 7 10 10 8 7 10 10 10 10 9 100 10 9 100 10 9 100 10 9 100 10 9 100 10 9 100 10 9 100 10 100 10 10 9 100 10 10 10 10 10 10 10 10 10 10 10 8 8 10 10 8 10 10 10 10 100 3 10 100 10 10 11 10 10 10 10 10 10 10 10 10 11 8 10 11 11 11 11 18 11 11 18 11 18 11 18 100 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 100 1 1 1 7 1 100 1 1 1 1 3 1 3 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 100 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 1 1 1 12 12 1 1 12 12 1 12 7 12 12 12 12 12 12 12 12 1 100 12 100 1 1 1 12 12 100 1 1 12 100 1 1 12 100 1 1 12 100 1 1 12 100 1 1 12 100 1 1 12 12 7 12 100 1 1 12 12 7 12 12 12 12 7 12 100 12 12 12 12 1 12 12 7 12 12 12 100 12 12 12 12 7 12 100 1 1 12 1 1 12 1 1 12 1 1 12 12 12 12 12 12 12 100 12 12 100 12 12 12 7 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 1 7 12 12 1 1 12 12 12 12 100 12 12 12 100 12 100 12 100 12 100 12 12 12 12 12 1 12 12 12 12 12 12 12 12 12 12 1 1 12 12 1 12 12 12 7 12 1 1 12 100 12 12 12 12 12 12 12 12 12 12 12 1 12 100 12 100 12 12 1 15 16 15 12 12 100 12 15 12 100 12 15 12 100 12 15 12 1 7 12 12 12 12 12 12 12 12 12 12 7 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 10 10 1 1 1 1 1 1 1 10 1 1 1 1 10 1 1 1 1 10 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 12 12 12 12 12 1 1 100 1 1 100 1 1 +staticfield java/util/Arrays $assertionsDisabled Z 1 +ciInstanceKlass java/lang/reflect/Modifier 1 1 153 100 10 7 8 10 8 10 8 8 8 8 8 8 8 8 8 8 8 10 3 7 10 10 7 7 10 10 100 1 1 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 1 1 3 1 3 1 3 1 1 3 1 3 1 3 1 3 1 3 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 1 1 12 1 12 1 1 1 1 1 1 1 1 1 1 1 12 1 1 1 7 12 1 1 12 1 1 1 1 1 1 1 1 1 1 +instanceKlass java/util/LinkedHashMap$Entry +ciInstanceKlass java/util/HashMap$Node 1 1 95 10 9 9 9 9 100 10 10 8 10 10 10 100 11 10 11 7 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 12 12 12 12 12 1 12 1 12 12 100 12 100 1 12 12 12 1 1 1 1 1 1 1 1 1 1 1 +ciInstanceKlass java/lang/StringUTF16 1 1 532 100 7 10 100 10 7 3 100 100 10 8 10 10 8 10 10 9 10 100 8 10 9 9 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 100 10 10 10 10 10 10 10 10 10 10 10 10 100 3 10 10 10 10 10 10 10 9 10 10 10 10 100 10 10 10 10 10 8 8 8 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 8 10 100 10 10 10 10 11 10 10 10 9 9 5 0 5 0 10 10 10 10 10 100 100 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 1 1 1 1 1 12 12 1 12 12 12 12 1 1 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 1 12 12 12 12 12 100 12 100 12 12 12 12 12 1 12 12 12 12 12 12 12 12 12 12 12 12 1 12 12 100 12 12 1 1 1 12 12 12 12 100 12 12 12 12 12 12 12 12 7 12 12 12 12 1 12 1 12 100 12 12 12 100 12 12 12 12 12 12 12 12 12 7 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/lang/StringUTF16 HI_BYTE_SHIFT I 0 +staticfield java/lang/StringUTF16 LO_BYTE_SHIFT I 8 +staticfield java/lang/StringUTF16 $assertionsDisabled Z 1 +ciInstanceKlass java/lang/Integer$IntegerCache 1 1 82 10 7 10 9 8 10 10 10 7 3 10 100 9 9 10 100 10 100 1 1 1 3 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 12 1 7 12 12 1 7 12 12 100 12 1 12 1 12 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/lang/Integer$IntegerCache high I 127 +staticfield java/lang/Integer$IntegerCache cache [Ljava/lang/Integer; 256 [Ljava/lang/Integer; +staticfield java/lang/Integer$IntegerCache $assertionsDisabled Z 1 +ciInstanceKlass java/lang/module/ModuleDescriptor 1 1 482 10 9 100 10 9 9 9 11 9 9 11 9 9 9 11 18 11 11 11 11 9 9 9 9 9 9 9 9 10 10 10 100 10 10 10 8 10 10 10 10 10 10 10 10 7 10 11 10 10 10 11 10 8 8 10 11 8 8 8 8 8 8 7 10 100 8 10 7 10 11 11 10 100 10 10 10 10 8 10 18 11 11 8 10 11 7 100 11 11 10 10 11 11 11 100 10 10 10 9 10 10 7 10 10 7 1 1 100 1 7 1 7 1 7 1 7 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 100 100 100 12 12 1 12 12 12 12 12 12 12 12 12 12 12 1 15 16 15 16 12 100 12 12 12 12 12 12 12 12 12 12 12 12 7 12 12 12 1 12 12 1 12 12 12 12 12 100 12 12 1 12 100 12 12 12 12 1 1 12 12 1 1 1 1 1 1 1 12 1 1 12 1 12 12 12 12 1 100 12 100 12 12 12 1 12 15 16 12 12 1 100 12 12 1 1 12 12 100 12 12 12 12 12 1 12 12 100 12 12 7 12 1 7 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 10 1 10 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 10 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 12 12 1 1 100 1 1 100 1 1 +staticfield java/lang/module/ModuleDescriptor $assertionsDisabled Z 1 +ciInstanceKlass java/io/File 1 1 639 9 9 10 9 9 9 10 9 9 100 10 8 10 10 100 10 10 10 10 10 100 8 10 10 8 10 8 10 8 10 8 10 8 10 8 10 8 10 9 10 10 10 10 10 10 10 7 10 10 10 10 10 100 8 10 10 10 8 10 7 10 10 10 10 100 10 100 10 10 10 10 10 8 7 10 100 100 10 10 10 7 10 10 10 10 10 10 10 10 10 10 10 7 7 10 11 11 11 11 100 10 10 10 10 7 11 10 10 10 10 10 10 10 8 10 10 10 10 10 10 10 10 100 8 10 10 10 8 8 8 10 10 100 8 10 10 10 10 10 10 10 10 8 10 10 9 9 10 9 10 9 10 10 10 10 10 10 9 10 9 9 10 10 8 7 100 100 7 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 100 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 100 1 1 1 100 100 1 1 1 1 1 1 1 12 12 12 12 12 12 12 12 12 1 1 12 12 1 12 12 12 12 1 1 12 12 1 12 1 12 1 12 1 12 1 12 1 12 1 12 12 12 12 12 12 12 12 12 1 12 12 12 12 12 1 1 12 12 1 12 1 12 12 12 1 1 12 12 12 12 1 1 12 1 1 12 7 12 12 1 12 12 12 12 12 12 12 12 7 12 12 12 1 1 12 12 12 12 12 12 12 12 12 12 12 12 12 1 12 12 12 12 12 12 12 12 1 1 12 12 1 1 1 12 12 1 1 12 12 12 12 100 12 12 100 12 12 12 12 12 7 12 12 12 12 7 12 7 12 7 12 7 12 12 12 12 12 12 12 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/io/File fs Ljava/io/FileSystem; java/io/WinNTFileSystem +staticfield java/io/File separatorChar C 92 +staticfield java/io/File separator Ljava/lang/String; "\"staticfield java/io/File pathSeparatorChar C 59 +staticfield java/io/File pathSeparator Ljava/lang/String; ";"staticfield java/io/File UNSAFE Ljdk/internal/misc/Unsafe; jdk/internal/misc/Unsafe +staticfield java/io/File PATH_OFFSET J 16 +staticfield java/io/File PREFIX_LENGTH_OFFSET J 12 +staticfield java/io/File $assertionsDisabled Z 1 +instanceKlass java/io/ExpiringCache$1 +ciInstanceKlass java/util/LinkedHashMap 1 1 280 9 9 9 9 10 7 10 10 9 9 9 10 7 10 10 10 10 9 9 10 10 10 10 10 10 10 10 9 10 9 7 10 9 7 10 9 7 10 100 10 11 100 10 11 7 7 100 100 1 1 100 1 100 1 100 1 1 1 1 1 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 12 12 1 12 12 12 12 12 12 1 12 12 12 12 12 100 12 12 12 12 12 12 12 12 12 12 1 12 12 1 12 1 1 7 12 1 100 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +ciInstanceKlass java/io/ExpiringCache$1 1 1 53 9 10 10 9 7 7 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 100 1 1 1 1 1 1 1 1 7 12 1 12 12 12 12 1 1 100 1 1 1 1 1 1 1 1 1 1 +instanceKlass java/util/HashMap$TreeNode +ciInstanceKlass java/util/LinkedHashMap$Entry 1 1 41 10 100 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 12 1 100 1 1 1 +ciInstanceKlass java/util/HashMap$TreeNode 1 1 250 7 10 9 9 7 9 9 9 10 100 10 9 9 9 10 10 10 10 10 10 10 10 10 9 10 10 10 10 9 10 10 10 10 10 10 10 7 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 1 12 12 12 12 1 12 12 12 12 12 12 12 12 12 12 12 7 12 7 12 12 12 12 12 12 12 12 12 12 12 12 12 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/util/HashMap$TreeNode $assertionsDisabled Z 1 +ciInstanceKlass java/util/zip/ZipFile$Source$Key 1 1 68 10 9 9 11 10 10 7 10 11 10 10 7 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 12 12 12 7 12 7 12 7 12 1 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 +ciInstanceKlass org/gradle/internal/reflect/MethodSet 1 1 105 10 10 9 7 10 11 7 10 11 10 10 10 10 11 11 10 11 7 7 100 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 7 12 12 1 12 7 12 1 12 12 12 7 12 12 12 7 12 12 7 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +ciInstanceKlass org/gradle/internal/reflect/MethodSet$MethodKey 1 1 84 10 10 9 10 9 10 7 10 10 10 10 7 10 10 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 12 12 12 7 12 12 12 100 1 12 7 12 12 7 12 1 7 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +ciInstanceKlass org/gradle/internal/reflect/MethodSet$1 0 0 11 100 100 1 1 1 100 1 1 1 1 +ciMethod java/lang/Object ()V 4097 1 981315 0 96 +ciMethod java/lang/Object getClass ()Ljava/lang/Class; 2049 1 256 0 -1 +ciMethod java/lang/Object hashCode ()I 2049 1 256 0 -1 +ciMethod java/lang/Object equals (Ljava/lang/Object;)Z 2113 1 42147 0 64 +ciMethod java/lang/Object clone ()Ljava/lang/Object; 2049 1 256 0 -1 +ciMethod java/lang/String equals (Ljava/lang/Object;)Z 2121 1 9296 0 448 +ciMethod java/lang/String coder ()B 2297 1 565111 0 32 +ciMethod java/lang/String isLatin1 ()Z 4097 1 1507883 0 64 +ciMethod java/util/Map get (Ljava/lang/Object;)Ljava/lang/Object; 0 0 1 0 -1 +ciMethod java/util/Map put (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; 0 0 1 0 -1 +ciMethod java/lang/reflect/Method getName ()Ljava/lang/String; 1169 1 146 0 0 +ciMethod java/lang/reflect/Method getModifiers ()I 1065 1 133 0 0 +ciMethod java/lang/reflect/Method getReturnType ()Ljava/lang/Class; 1073 1 134 0 0 +ciMethod java/lang/reflect/Method getParameterTypes ()[Ljava/lang/Class; 2441 1 48777 0 256 +ciMethod java/lang/reflect/Method isBridge ()Z 1905 1 15103 0 0 +ciMethod java/lang/Number ()V 3193 1 6009 0 0 +ciMethod java/lang/Integer valueOf (I)Ljava/lang/Integer; 401 1 13051 0 192 +ciMethod java/lang/Integer (I)V 3113 1 2092 0 0 +ciMethod java/util/Objects equals (Ljava/lang/Object;Ljava/lang/Object;)Z 2121 1 39345 0 0 +ciMethod java/util/Objects hash ([Ljava/lang/Object;)I 2049 1 6993 0 0 +ciMethod java/util/HashMap hash (Ljava/lang/Object;)I 2697 1 82120 0 160 +ciMethod java/util/HashMap comparableClassFor (Ljava/lang/Object;)Ljava/lang/Class; 2305 1 1288 0 -1 +ciMethod java/util/HashMap compareComparables (Ljava/lang/Class;Ljava/lang/Object;Ljava/lang/Object;)I 0 0 1 0 -1 +ciMethod java/util/HashMap getNode (ILjava/lang/Object;)Ljava/util/HashMap$Node; 3193 81 31376 0 416 +ciMethod java/util/HashMap put (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; 4097 1 24148 0 0 +ciMethod java/util/HashMap putVal (ILjava/lang/Object;Ljava/lang/Object;ZZ)Ljava/lang/Object; 3217 121 27153 0 1856 +ciMethod java/util/HashMap resize ()[Ljava/util/HashMap$Node; 585 793 4349 0 -1 +ciMethod java/util/HashMap treeifyBin ([Ljava/util/HashMap$Node;I)V 1 1 27 0 0 +ciMethod java/util/HashMap removeNode (ILjava/lang/Object;Ljava/lang/Object;ZZ)Ljava/util/HashMap$Node; 129 9 764 0 -1 +ciMethod java/util/HashMap newNode (ILjava/lang/Object;Ljava/lang/Object;Ljava/util/HashMap$Node;)Ljava/util/HashMap$Node; 4097 1 5791 0 -1 +ciMethod java/util/HashMap newTreeNode (ILjava/lang/Object;Ljava/lang/Object;Ljava/util/HashMap$Node;)Ljava/util/HashMap$TreeNode; 0 0 1 0 -1 +ciMethod java/util/HashMap replacementTreeNode (Ljava/util/HashMap$Node;Ljava/util/HashMap$Node;)Ljava/util/HashMap$TreeNode; 0 0 1 0 -1 +ciMethod java/util/HashMap afterNodeAccess (Ljava/util/HashMap$Node;)V 2257 1 1381 0 -1 +ciMethod java/util/HashMap afterNodeInsertion (Z)V 4097 1 2411 0 -1 +ciMethod java/lang/StringLatin1 equals ([B[B)Z 1505 3969 2940 0 -1 +ciMethod java/util/Arrays equals ([Ljava/lang/Object;[Ljava/lang/Object;)Z 2025 4281 5383 0 352 +ciMethod java/util/Arrays hashCode ([Ljava/lang/Object;)I 2057 4385 10638 0 288 +ciMethod java/lang/reflect/Modifier isAbstract (I)Z 817 1 31533 0 0 +ciMethod java/util/HashMap$Node (ILjava/lang/Object;Ljava/lang/Object;Ljava/util/HashMap$Node;)V 4097 1 11455 0 0 +ciMethod java/lang/StringUTF16 equals ([B[B)Z 0 0 1 0 -1 +ciMethodData java/lang/String isLatin1 ()Z 2 1507883 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 158 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 18 0x30007 0x0 0x58 0x17002c 0xa0007 0x10c 0x38 0x16ff1f 0xe0003 0x16ff1f 0x18 0x0 0x0 0x0 0x0 0x9 0x1 0x0 oops 0 methods 0 +ciMethodData java/lang/Object ()V 2 981337 orig 80 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 4 0x0 0x9 0x1 0x0 oops 0 methods 0 +ciMethod java/util/LinkedHashMap linkNodeLast (Ljava/util/LinkedHashMap$Entry;)V 2121 1 5430 0 0 +ciMethod java/util/LinkedHashMap newNode (ILjava/lang/Object;Ljava/lang/Object;Ljava/util/HashMap$Node;)Ljava/util/HashMap$Node; 2049 1 5389 0 1504 +ciMethod java/util/LinkedHashMap afterNodeInsertion (Z)V 2129 1 11636 0 128 +ciMethod java/util/LinkedHashMap afterNodeAccess (Ljava/util/HashMap$Node;)V 1 1 1100 0 0 +ciMethod java/util/LinkedHashMap get (Ljava/lang/Object;)Ljava/lang/Object; 2049 1 18839 0 672 +ciMethod java/util/LinkedHashMap removeEldestEntry (Ljava/util/Map$Entry;)Z 1065 1 133 0 0 +ciMethodData java/lang/String coder ()B 2 565111 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 14 0x30007 0x0 0x38 0x89e5a 0xa0003 0x89e5a 0x18 0x0 0x0 0x0 0x0 0x9 0x1 0x0 oops 0 methods 0 +ciMethodData java/lang/String equals (Ljava/lang/Object;)Z 2 9296 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 68 0x20007 0x1f7e 0x20 0x3c9 0x80104 0x0 0x0 0x19e2e508e90 0x1f7b 0x0 0x0 0xb0007 0x3 0x178 0x1f7b 0xf0004 0x0 0x0 0x19e2e508e90 0x1f7b 0x0 0x0 0x140005 0x1f7b 0x0 0x0 0x0 0x0 0x0 0x180005 0x1f7b 0x0 0x0 0x0 0x0 0x0 0x1b0007 0x0 0xb0 0x1f7b 0x1f0005 0x1f7b 0x0 0x0 0x0 0x0 0x0 0x220007 0x0 0x48 0x1f7b 0x2d0002 0x1f7b 0x300003 0x1f7b 0x28 0x3b0002 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x2 0x0 0x0 oops 2 7 java/lang/String 18 java/lang/String methods 0 +ciMethodData java/util/Objects equals (Ljava/lang/Object;Ljava/lang/Object;)Z 2 39345 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 32 0x20007 0x739b 0x98 0x250e 0x60007 0x0 0x90 0x250e 0xb0005 0x211d 0x0 0x19e2e508e90 0x36d 0x19e2ff3ec90 0x84 0xe0007 0xd7c 0x38 0x1792 0x120003 0x8b2c 0x18 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x2 0x0 0x0 oops 2 11 java/lang/String 13 java/lang/module/ModuleDescriptor methods 0 +ciMethod java/util/HashMap$TreeNode root ()Ljava/util/HashMap$TreeNode; 0 0 1 0 -1 +ciMethod java/util/HashMap$TreeNode moveRootToFront ([Ljava/util/HashMap$Node;Ljava/util/HashMap$TreeNode;)V 1265 1 68 0 -1 +ciMethod java/util/HashMap$TreeNode find (ILjava/lang/Object;Ljava/lang/Class;)Ljava/util/HashMap$TreeNode; 257 153 1021 0 -1 +ciMethod java/util/HashMap$TreeNode getTreeNode (ILjava/lang/Object;)Ljava/util/HashMap$TreeNode; 89 1 237 0 0 +ciMethod java/util/HashMap$TreeNode tieBreakOrder (Ljava/lang/Object;Ljava/lang/Object;)I 2089 1 575 0 -1 +ciMethod java/util/HashMap$TreeNode treeify ([Ljava/util/HashMap$Node;)V 457 9481 27 0 -1 +ciMethod java/util/HashMap$TreeNode putTreeVal (Ljava/util/HashMap;[Ljava/util/HashMap$Node;ILjava/lang/Object;Ljava/lang/Object;)Ljava/util/HashMap$TreeNode; 809 2105 41 0 0 +ciMethod java/util/HashMap$TreeNode split (Ljava/util/HashMap;[Ljava/util/HashMap$Node;II)V 17 145 17 0 -1 +ciMethod java/util/HashMap$TreeNode balanceInsertion (Ljava/util/HashMap$TreeNode;Ljava/util/HashMap$TreeNode;)Ljava/util/HashMap$TreeNode; 2105 1449 255 0 -1 +ciMethod java/util/LinkedHashMap$Entry (ILjava/lang/Object;Ljava/lang/Object;Ljava/util/HashMap$Node;)V 2073 1 5664 0 0 +ciMethodData java/util/HashMap hash (Ljava/lang/Object;)I 2 82138 orig 80 1 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 23 0x8000000600010007 0x13ec0 0x38 0xcb 0x50003 0xcb 0x50 0x90005 0xbc8e 0x0 0x19e2e508e90 0x7f4a 0x19e2e50bec0 0x11 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x1 0xffffffffffffffff oops 2 10 java/lang/String 12 jdk/internal/loader/ClassLoaders$AppClassLoader methods 0 +ciMethodData java/util/HashMap getNode (ILjava/lang/Object;)Ljava/util/HashMap$Node; 2 31376 orig 80 4 0 0 0 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 7 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 102 0x60007 0x6bf 0x2d8 0x7242 0xe0007 0x0 0x2b8 0x7242 0x1c0007 0x2e84 0x298 0x43be 0x250007 0x1ba2 0xb8 0x281c 0x310007 0xfe8 0x98 0x1834 0x8000000600350007 0x1 0x78 0x1834 0x3b0005 0xf24 0x0 0x19e2e508e90 0x860 0x19e358e1370 0xb0 0x80000006003e0007 0x216 0x20 0x161f 0x4c0007 0xf44 0x1c0 0xe75 0x510004 0xfffffffffffff193 0x0 0x19e3a3ca7f0 0xa7 0x19e358e1420 0x2c 0x8000000600540007 0xe6d 0x90 0xb 0x590004 0x0 0x0 0x19e35514750 0xb 0x0 0x0 0x5e0005 0xb 0x0 0x0 0x0 0x0 0x0 0x680007 0x692 0xb8 0xb8a 0x740007 0x2b9 0x98 0x8d1 0x780007 0x0 0x78 0x8d1 0x7e0005 0x5f9 0x0 0x19e2e508e90 0x2a9 0x19e358e1370 0x2f 0x8000000600810007 0x1c0 0x20 0x713 0x8f0007 0x3af 0xffffffffffffff48 0x4a3 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x3 0x0 0x0 0xffffffffffffffff oops 7 27 java/lang/String 29 java/util/zip/ZipFile$Source$Key 42 java/util/HashMap$Node 44 java/util/LinkedHashMap$Entry 53 java/util/HashMap$TreeNode 79 java/lang/String 81 java/util/zip/ZipFile$Source$Key methods 0 +ciMethodData java/util/HashMap putVal (ILjava/lang/Object;Ljava/lang/Object;ZZ)Ljava/lang/Object; 2 27153 orig 80 3 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 0 0 8 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 198 0x70007 0xd4f 0x40 0x5b30 0x100007 0x5b30 0x58 0x0 0x140005 0xd4f 0x0 0x0 0x0 0x0 0x0 0x2c0007 0x2434 0xa8 0x444b 0x380005 0x2034 0x0 0x19e3a3ca460 0x2410 0x19e3a4ba440 0x7 0x3b0004 0x0 0x0 0x19e3a3ca7f0 0x242f 0x19e358e1420 0x201c 0x3c0003 0x444b 0x410 0x450007 0x1d04 0xd0 0x730 0x510007 0x2b9 0x98 0x477 0x8000000600550007 0x1 0x90 0x477 0xffffffff005b0005 0x317 0x0 0x19e3a4ba4f0 0xad 0x19e2e508e90 0xba 0x5e0007 0x2fb 0x38 0x183 0x650003 0x43c 0x2a8 0x6a0004 0xffffffffffffe028 0x0 0x19e3a3ca7f0 0xa8 0x19e358e1420 0x10 0x80000006006d0007 0x1fd8 0xa8 0x29 0x720004 0x0 0x0 0x19e35514750 0x29 0x0 0x0 0x7b0005 0x1 0x0 0x19e35514750 0x28 0x0 0x0 0x800003 0x29 0x1c8 0x8e0007 0xe17 0xc8 0x1e7e 0x980005 0x17 0x0 0x19e3a3ca460 0xfa8 0x19e31f23970 0xebf 0x8000000600a20007 0x1e6a 0x158 0x15 0xa90005 0x15 0x0 0x0 0x0 0x0 0x0 0xac0003 0x15 0x100 0xb50007 0x884 0xd0 0x593 0xc10007 0xda 0xc8 0x4b9 0xc50007 0x0 0x90 0x4b9 0xffffffff00cb0005 0x466 0x0 0x19e3a4ba4f0 0x1b 0x19e2e508e90 0x3b 0xce0007 0x439 0x38 0x83 0xd10003 0x83 0x30 0xdb0003 0xcbd 0xfffffffffffffe68 0xe00007 0x1ea8 0x98 0x599 0xec0007 0x596 0x40 0x3 0xf10007 0x3 0x20 0x0 0x8000000700fd0005 0x60 0x0 0x19e3a3ca460 0x259 0x19e31f23970 0x2e2 0x11c0007 0x606a 0x58 0x289 0x1200005 0x289 0x0 0x0 0x0 0x0 0x0 0x1270005 0x2f2e 0x0 0x19e3a3ca460 0x33b8 0x19e3a4ba440 0xd 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x6 0x0 0x0 0x0 0x0 0x0 0x0 oops 18 22 java/util/HashMap 24 java/io/ExpiringCache$1 29 java/util/HashMap$Node 31 java/util/LinkedHashMap$Entry 51 java/io/File 53 java/lang/String 65 java/util/HashMap$Node 67 java/util/LinkedHashMap$Entry 76 java/util/HashMap$TreeNode 83 java/util/HashMap$TreeNode 97 java/util/HashMap 99 java/util/LinkedHashMap 130 java/io/File 132 java/lang/String 159 java/util/HashMap 161 java/util/LinkedHashMap 177 java/util/HashMap 179 java/io/ExpiringCache$1 methods 0 +ciMethodData java/util/HashMap resize ()[Ljava/util/HashMap$Node; 2 39344 orig 80 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 171 0x60007 0x40a 0x38 0xcaa 0xa0003 0xcaa 0x18 0x190007 0xcaa 0x98 0x40a 0x1f0007 0x40a 0x20 0x0 0x320007 0x0 0x90 0x40a 0x380007 0x154 0x70 0x2b6 0x400003 0x2b6 0x50 0x440007 0x848 0x38 0x462 0x4a0003 0x462 0x18 0x570007 0xafe 0x78 0x5b6 0x680007 0x0 0x58 0x5b6 0x700007 0x0 0x38 0x5b6 0x760003 0x5b6 0x18 0x910007 0xcaa 0x378 0x40a 0x9a0007 0x40b 0x358 0x7b46 0xa40007 0x3a4d 0x320 0x40f9 0xab0104 0x0 0x0 0x0 0x0 0x0 0x0 0xb10007 0x1708 0x70 0x29f1 0xc20004 0x0 0x0 0x19e3a3ca7f0 0x1585 0x19e358e1420 0x146c 0xc30003 0x29f1 0x270 0xc80004 0xffffffffffffe907 0x0 0x19e3a3ca7f0 0xe4 0x19e358e1420 0x52 0x8000000600cb0007 0x16f9 0xa8 0x10 0xd00004 0x0 0x0 0x19e35514750 0x10 0x0 0x0 0xd90005 0x10 0x0 0x0 0x0 0x0 0x0 0xdc0003 0x10 0x190 0xf90007 0x1928 0x70 0x1bd7 0xfe0007 0x974 0x38 0x1263 0x1050003 0x1263 0x18 0x1130003 0x1bd7 0x50 0x1180007 0x81b 0x38 0x110d 0x11f0003 0x110d 0x18 0x1320007 0x1e06 0xffffffffffffff58 0x16f9 0x1370007 0x496 0x58 0x1263 0x1460004 0x0 0x0 0x19e3a3ca7f0 0x931 0x19e358e1420 0x932 0x1490007 0x5ec 0x58 0x110d 0x15a0004 0x0 0x0 0x19e3a3ca7f0 0x7fa 0x19e358e1420 0x913 0x15e0003 0x7b47 0xfffffffffffffcc0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x1 0x0 oops 9 74 java/util/HashMap$Node 76 java/util/LinkedHashMap$Entry 84 java/util/HashMap$Node 86 java/util/LinkedHashMap$Entry 95 java/util/HashMap$TreeNode 141 java/util/HashMap$Node 143 java/util/LinkedHashMap$Entry 152 java/util/HashMap$Node 154 java/util/LinkedHashMap$Entry methods 0 +ciMethodData java/util/HashMap treeifyBin ([Ljava/util/HashMap$Node;I)V 1 184 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 69 0x10007 0x0 0x40 0x1b 0xa0007 0x17 0x70 0x4 0xe0005 0x4 0x0 0x0 0x0 0x0 0x0 0x120003 0x4 0x158 0x220007 0x0 0x140 0x17 0x2f0005 0x0 0x0 0x19e31f23970 0xcf 0x0 0x0 0x360007 0xb8 0x38 0x17 0x3d0003 0x17 0x18 0x5a0007 0xb8 0xffffffffffffff90 0x17 0x630004 0x0 0x0 0x19e35514750 0x17 0x0 0x0 0x640007 0x0 0x58 0x17 0x6a0005 0x17 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x3 0xffffffffffffffff 0xffffffffffffffff 0x0 oops 2 25 java/util/LinkedHashMap 43 java/util/HashMap$TreeNode methods 0 +ciMethodData java/util/HashMap put (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; 2 24149 orig 80 4 0 0 0 0 0 0 0 0 0 0 0 254 127 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 20 0x20002 0x5c55 0x90005 0x5c55 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x3 0xffffffffffffffff 0xffffffffffffffff 0xffffffffffffffff oops 0 methods 0 +ciMethodData java/util/HashMap$Node (ILjava/lang/Object;Ljava/lang/Object;Ljava/util/HashMap$Node;)V 2 11455 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 158 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 13 0x10002 0x2abf 0x0 0x0 0x0 0x0 0x9 0x5 0xe 0x0 0x0 0x0 0x0 oops 0 methods 0 +ciMethodData java/util/LinkedHashMap newNode (ILjava/lang/Object;Ljava/lang/Object;Ljava/util/HashMap$Node;)Ljava/util/HashMap$Node; 2 5389 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 22 0x90002 0x140d 0x110005 0x140d 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x5 0x0 0x0 0x0 0x0 0x0 oops 0 methods 0 +ciMethodData java/util/LinkedHashMap$Entry (ILjava/lang/Object;Ljava/lang/Object;Ljava/util/HashMap$Node;)V 2 5664 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 11 0x60002 0x151d 0x0 0x0 0x9 0x5 0x0 0x0 0x0 0x0 0x0 oops 0 methods 0 +ciMethodData java/util/LinkedHashMap linkNodeLast (Ljava/util/LinkedHashMap$Entry;)V 2 5430 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 17 0xb0007 0x12dd 0x38 0x150 0x130003 0x150 0x18 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x2 0x0 0x0 oops 0 methods 0 +ciMethodData java/util/LinkedHashMap afterNodeInsertion (Z)V 2 11636 orig 80 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 38 0x8000000600010007 0x128 0xe0 0x2b43 0xa0007 0x0 0xc0 0x2b43 0xf0005 0x0 0x0 0x19e31f23970 0x2b24 0x19e3a4ba440 0x1f 0x120007 0x2b43 0x68 0x0 0x1c0002 0x0 0x230005 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x2 0x0 0x0 oops 2 11 java/util/LinkedHashMap 13 java/io/ExpiringCache$1 methods 0 +ciMethodData java/util/LinkedHashMap get (Ljava/lang/Object;)Ljava/lang/Object; 2 18839 orig 80 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 34 0x20002 0x4897 0x60005 0x4898 0x0 0x0 0x0 0x0 0x0 0xb0007 0x1793 0x20 0x3107 0x140007 0x1793 0x58 0x0 0x190005 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x2 0x0 0x0 oops 0 methods 0 +ciMethodData java/util/LinkedHashMap afterNodeAccess (Ljava/util/HashMap$Node;)V 2 1102 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 158 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 46 0x40007 0x44e 0x120 0x0 0xe0007 0x0 0x100 0x0 0x120004 0x0 0x0 0x0 0x0 0x0 0x0 0x290007 0x0 0x38 0x0 0x320003 0x0 0x18 0x3e0007 0x0 0x38 0x0 0x480003 0x0 0x18 0x4f0007 0x0 0x38 0x0 0x570003 0x0 0x18 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x2 0x0 0x0 oops 0 methods 0 +ciMethodData java/lang/Integer valueOf (I)Ljava/lang/Integer; 2 13051 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 17 0x30007 0x26 0x40 0x32a3 0xa0007 0x6fb 0x20 0x2ba8 0x1c0002 0x721 0x0 0x0 0x0 0x0 0x9 0x1 0x0 oops 0 methods 0 +ciMethodData java/lang/Number ()V 2 6009 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 7 0x10002 0x15ea 0x0 0x0 0x9 0x1 0x0 oops 0 methods 0 +ciMethodData java/lang/Integer (I)V 2 2092 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 10 0x10002 0x6a7 0x0 0x0 0x0 0x0 0x9 0x2 0x6 0x0 oops 0 methods 0 +ciMethodData java/lang/Object equals (Ljava/lang/Object;)Z 2 42147 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 17 0x20007 0x7903 0x38 0x2a9d 0x60003 0x2a9d 0x18 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x2 0x0 0x0 oops 0 methods 0 +ciMethodData java/util/Arrays equals ([Ljava/lang/Object;[Ljava/lang/Object;)Z 2 7872 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 39 0x20007 0x10b0 0x20 0x35a 0x80007 0x2 0x40 0x10ae 0xc0007 0x10ae 0x20 0x0 0x170007 0x105e 0x20 0x50 0x200007 0xf0a 0x68 0x1dfd 0x290002 0x1dfd 0x2c0007 0x1ca9 0x20 0x154 0x340003 0x1ca9 0xffffffffffffffb0 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x2 0x0 0x0 oops 0 methods 0 +ciMethodData java/lang/reflect/Method getParameterTypes ()[Ljava/lang/Class; 2 48878 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 23 0x40005 0x0 0x0 0x19e31f27f50 0xbdbd 0x0 0x0 0x70004 0x0 0x0 0x19e31f27f50 0xbdbd 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x1 0x0 oops 2 3 [Ljava/lang/Class; 10 [Ljava/lang/Class; methods 0 +ciMethodData java/lang/reflect/Modifier isAbstract (I)Z 2 31533 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 11 0x50007 0x57ef 0x38 0x22d8 0x90003 0x22d8 0x18 0x0 0x9 0x1 0x0 oops 0 methods 0 +ciMethodData java/util/Arrays hashCode ([Ljava/lang/Object;)I 2 21018 orig 80 1 0 0 0 0 0 0 0 0 0 0 0 158 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 34 0x10007 0x288d 0x20 0x0 0x130007 0x288e 0xa8 0x4ff5 0x8000000600220007 0x4ff2 0x38 0x4 0x260003 0x4 0x50 0x2b0005 0x3c92 0x0 0x19e2e508f20 0x11c0 0x19e2e50c800 0x1a0 0x330003 0x4ff6 0xffffffffffffff70 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x1 0x0 oops 2 18 java/lang/Class 20 java/lang/Byte methods 0 +ciMethodData java/util/Objects hash ([Ljava/lang/Object;)I 2 6993 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 11 0x10002 0x1a51 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x1 0x0 oops 0 methods 0 +ciMethod org/gradle/internal/reflect/MethodSet add (Ljava/lang/reflect/Method;)V 2145 1 14672 0 -1 +ciMethod org/gradle/internal/reflect/MethodSet shouldReplace (Ljava/lang/reflect/Method;Ljava/lang/reflect/Method;)Z 833 1 6746 0 0 +ciMethod org/gradle/internal/reflect/MethodSet$MethodKey (Ljava/lang/reflect/Method;)V 2145 1 15358 0 0 +ciMethod org/gradle/internal/reflect/MethodSet$MethodKey equals (Ljava/lang/Object;)Z 2265 1 5682 0 928 +ciMethod org/gradle/internal/reflect/MethodSet$MethodKey hashCode ()I 2105 1 5515 0 896 +ciMethod org/gradle/internal/reflect/MethodSet$MethodKey (Ljava/lang/reflect/Method;Lorg/gradle/internal/reflect/MethodSet$1;)V 2145 1 15343 0 672 +ciMethodData org/gradle/internal/reflect/MethodSet$MethodKey hashCode ()I 2 5515 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 34 0xa0005 0x1484 0x0 0x0 0x0 0x0 0x0 0xd0004 0x0 0x0 0x19e2e508e90 0x1484 0x0 0x0 0x150002 0x1484 0x180004 0x0 0x0 0x19e2e50c920 0x1484 0x0 0x0 0x190002 0x1484 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x1 0x0 oops 2 10 java/lang/String 19 java/lang/Integer methods 0 +ciMethodData java/lang/reflect/Method isBridge ()Z 2 15103 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 23 0x10005 0x3a11 0x0 0x0 0x0 0x0 0x0 0x70007 0x3399 0x38 0x678 0xb0003 0x678 0x18 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x1 0x0 oops 0 methods 0 +ciMethodData org/gradle/internal/reflect/MethodSet add (Ljava/lang/reflect/Method;)V 2 14697 orig 80 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 43 0x60002 0x3859 0xf0005 0x0 0x0 0x19e31f23970 0x3859 0x0 0x0 0x140104 0x0 0x0 0x19e2e50a550 0x19c3 0x0 0x0 0x190007 0x1e97 0x50 0x19c3 0x1f0002 0x19c3 0x220007 0x191c 0x58 0xa7 0x2b0005 0x0 0x0 0x19e31f23970 0x1f3e 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x2 0x0 0x0 oops 3 5 java/util/LinkedHashMap 12 java/lang/reflect/Method 29 java/util/LinkedHashMap methods 0 +ciMethodData org/gradle/internal/reflect/MethodSet$MethodKey (Ljava/lang/reflect/Method;Lorg/gradle/internal/reflect/MethodSet$1;)V 2 15358 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 158 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 9 0x20002 0x3af2 0x0 0x0 0x9 0x3 0x6 0x0 0x0 oops 0 methods 0 +ciMethodData org/gradle/internal/reflect/MethodSet$MethodKey (Ljava/lang/reflect/Method;)V 2 15369 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 19 0x10002 0x3afd 0xb0005 0x3afd 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x2 0x6 0x0 oops 0 methods 0 +ciMethodData org/gradle/internal/reflect/MethodSet shouldReplace (Ljava/lang/reflect/Method;Ljava/lang/reflect/Method;)Z 2 6842 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 58 0x10005 0x1a52 0x0 0x0 0x0 0x0 0x0 0x40002 0x1a52 0x90005 0x1a52 0x0 0x0 0x0 0x0 0x0 0xc0002 0x1a52 0x140007 0x90c 0x20 0x1146 0x1a0005 0x90c 0x0 0x0 0x0 0x0 0x0 0x1d0007 0x6b3 0x90 0x259 0x210005 0x259 0x0 0x0 0x0 0x0 0x0 0x240007 0x1b2 0x38 0xa7 0x280003 0xa7 0x18 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x3 0x0 0x0 0x0 oops 0 methods 0 +ciMethodData org/gradle/internal/reflect/MethodSet$MethodKey equals (Ljava/lang/Object;)Z 2 5682 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 92 0x20007 0x1517 0x20 0x0 0x80007 0x0 0xb0 0x1517 0xc0005 0x1517 0x0 0x0 0x0 0x0 0x0 0x100005 0x1517 0x0 0x0 0x0 0x0 0x0 0x130007 0x1517 0x20 0x0 0x190004 0x0 0x0 0x19e31f25010 0x1517 0x0 0x0 0x210005 0x1517 0x0 0x0 0x0 0x0 0x0 0x280005 0x1517 0x0 0x0 0x0 0x0 0x0 0x2b0002 0x1517 0x2e0007 0x0 0x108 0x1517 0x350005 0x1517 0x0 0x0 0x0 0x0 0x0 0x3c0005 0x1517 0x0 0x0 0x0 0x0 0x0 0x3f0002 0x1517 0x420007 0x77e 0x68 0xd99 0x4d0002 0xd99 0x500007 0x366 0x38 0xa33 0x540003 0xa33 0x18 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x2 0x0 0x0 oops 1 29 org/gradle/internal/reflect/MethodSet$MethodKey methods 0 +ciMethodData java/util/HashMap$TreeNode getTreeNode (ILjava/lang/Object;)Ljava/util/HashMap$TreeNode; 1 237 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 32 0x40007 0xe2 0x70 0x0 0x80005 0x0 0x0 0x0 0x0 0x0 0x0 0xb0003 0x0 0x18 0x120005 0xe2 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x3 0xffffffffffffffff 0x0 0xffffffffffffffff oops 0 methods 0 +compile org/gradle/internal/reflect/MethodSet add (Ljava/lang/reflect/Method;)V -1 4 inline 109 0 -1 org/gradle/internal/reflect/MethodSet add (Ljava/lang/reflect/Method;)V 1 6 org/gradle/internal/reflect/MethodSet$MethodKey (Ljava/lang/reflect/Method;Lorg/gradle/internal/reflect/MethodSet$1;)V 2 2 org/gradle/internal/reflect/MethodSet$MethodKey (Ljava/lang/reflect/Method;)V 3 1 java/lang/Object ()V 3 11 java/lang/reflect/Method getParameterTypes ()[Ljava/lang/Class; 1 15 java/util/LinkedHashMap get (Ljava/lang/Object;)Ljava/lang/Object; 2 2 java/util/HashMap hash (Ljava/lang/Object;)I 3 9 org/gradle/internal/reflect/MethodSet$MethodKey hashCode ()I 4 10 java/lang/reflect/Method getName ()Ljava/lang/String; 4 21 java/lang/Integer valueOf (I)Ljava/lang/Integer; 5 28 java/lang/Integer (I)V 6 1 java/lang/Number ()V 7 1 java/lang/Object ()V 4 25 java/util/Objects hash ([Ljava/lang/Object;)I 5 1 java/util/Arrays hashCode ([Ljava/lang/Object;)I 2 6 java/util/HashMap getNode (ILjava/lang/Object;)Ljava/util/HashMap$Node; 3 59 org/gradle/internal/reflect/MethodSet$MethodKey equals (Ljava/lang/Object;)Z 4 33 java/lang/reflect/Method getName ()Ljava/lang/String; 4 40 java/lang/reflect/Method getName ()Ljava/lang/String; 4 43 java/util/Objects equals (Ljava/lang/Object;Ljava/lang/Object;)Z 5 11 java/lang/String equals (Ljava/lang/Object;)Z 6 20 java/lang/String coder ()B 6 24 java/lang/String coder ()B 6 31 java/lang/String isLatin1 ()Z 4 53 java/lang/reflect/Method getReturnType ()Ljava/lang/Class; 4 60 java/lang/reflect/Method getReturnType ()Ljava/lang/Class; 4 63 java/util/Objects equals (Ljava/lang/Object;Ljava/lang/Object;)Z 5 11 java/lang/Object equals (Ljava/lang/Object;)Z 4 77 java/util/Arrays equals ([Ljava/lang/Object;[Ljava/lang/Object;)Z 5 41 java/util/Objects equals (Ljava/lang/Object;Ljava/lang/Object;)Z 6 11 java/lang/Object equals (Ljava/lang/Object;)Z 3 126 org/gradle/internal/reflect/MethodSet$MethodKey equals (Ljava/lang/Object;)Z 4 33 java/lang/reflect/Method getName ()Ljava/lang/String; 4 40 java/lang/reflect/Method getName ()Ljava/lang/String; 4 43 java/util/Objects equals (Ljava/lang/Object;Ljava/lang/Object;)Z 5 11 java/lang/String equals (Ljava/lang/Object;)Z 6 20 java/lang/String coder ()B 6 24 java/lang/String coder ()B 6 31 java/lang/String isLatin1 ()Z 4 53 java/lang/reflect/Method getReturnType ()Ljava/lang/Class; 4 60 java/lang/reflect/Method getReturnType ()Ljava/lang/Class; 4 63 java/util/Objects equals (Ljava/lang/Object;Ljava/lang/Object;)Z 5 11 java/lang/Object equals (Ljava/lang/Object;)Z 4 77 java/util/Arrays equals ([Ljava/lang/Object;[Ljava/lang/Object;)Z 5 41 java/util/Objects equals (Ljava/lang/Object;Ljava/lang/Object;)Z 6 11 java/lang/Object equals (Ljava/lang/Object;)Z 1 31 org/gradle/internal/reflect/MethodSet shouldReplace (Ljava/lang/reflect/Method;Ljava/lang/reflect/Method;)Z 2 1 java/lang/reflect/Method getModifiers ()I 2 4 java/lang/reflect/Modifier isAbstract (I)Z 2 9 java/lang/reflect/Method getModifiers ()I 2 12 java/lang/reflect/Modifier isAbstract (I)Z 2 26 java/lang/reflect/Method isBridge ()Z 3 1 java/lang/reflect/Method getModifiers ()I 2 33 java/lang/reflect/Method isBridge ()Z 3 1 java/lang/reflect/Method getModifiers ()I 1 43 java/util/HashMap put (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; 2 2 java/util/HashMap hash (Ljava/lang/Object;)I 3 9 org/gradle/internal/reflect/MethodSet$MethodKey hashCode ()I 4 10 java/lang/reflect/Method getName ()Ljava/lang/String; 4 21 java/lang/Integer valueOf (I)Ljava/lang/Integer; 5 28 java/lang/Integer (I)V 6 1 java/lang/Number ()V 7 1 java/lang/Object ()V 4 25 java/util/Objects hash ([Ljava/lang/Object;)I 5 1 java/util/Arrays hashCode ([Ljava/lang/Object;)I 2 9 java/util/HashMap putVal (ILjava/lang/Object;Ljava/lang/Object;ZZ)Ljava/lang/Object; 3 56 java/util/LinkedHashMap newNode (ILjava/lang/Object;Ljava/lang/Object;Ljava/util/HashMap$Node;)Ljava/util/HashMap$Node; 4 9 java/util/LinkedHashMap$Entry (ILjava/lang/Object;Ljava/lang/Object;Ljava/util/HashMap$Node;)V 5 6 java/util/HashMap$Node (ILjava/lang/Object;Ljava/lang/Object;Ljava/util/HashMap$Node;)V 6 1 java/lang/Object ()V 4 17 java/util/LinkedHashMap linkNodeLast (Ljava/util/LinkedHashMap$Entry;)V 3 91 org/gradle/internal/reflect/MethodSet$MethodKey equals (Ljava/lang/Object;)Z 4 33 java/lang/reflect/Method getName ()Ljava/lang/String; 4 40 java/lang/reflect/Method getName ()Ljava/lang/String; 4 43 java/util/Objects equals (Ljava/lang/Object;Ljava/lang/Object;)Z 5 11 java/lang/String equals (Ljava/lang/Object;)Z 6 20 java/lang/String coder ()B 6 24 java/lang/String coder ()B 6 31 java/lang/String isLatin1 ()Z 4 53 java/lang/reflect/Method getReturnType ()Ljava/lang/Class; 4 60 java/lang/reflect/Method getReturnType ()Ljava/lang/Class; 4 63 java/util/Objects equals (Ljava/lang/Object;Ljava/lang/Object;)Z 5 11 java/lang/Object equals (Ljava/lang/Object;)Z 4 77 java/util/Arrays equals ([Ljava/lang/Object;[Ljava/lang/Object;)Z 5 41 java/util/Objects equals (Ljava/lang/Object;Ljava/lang/Object;)Z 6 11 java/lang/Object equals (Ljava/lang/Object;)Z 3 203 org/gradle/internal/reflect/MethodSet$MethodKey equals (Ljava/lang/Object;)Z 4 33 java/lang/reflect/Method getName ()Ljava/lang/String; 4 40 java/lang/reflect/Method getName ()Ljava/lang/String; 4 43 java/util/Objects equals (Ljava/lang/Object;Ljava/lang/Object;)Z 5 11 java/lang/String equals (Ljava/lang/Object;)Z 6 20 java/lang/String coder ()B 6 24 java/lang/String coder ()B 6 31 java/lang/String isLatin1 ()Z 4 53 java/lang/reflect/Method getReturnType ()Ljava/lang/Class; 4 60 java/lang/reflect/Method getReturnType ()Ljava/lang/Class; 4 63 java/util/Objects equals (Ljava/lang/Object;Ljava/lang/Object;)Z 5 11 java/lang/Object equals (Ljava/lang/Object;)Z 4 77 java/util/Arrays equals ([Ljava/lang/Object;[Ljava/lang/Object;)Z 5 41 java/util/Objects equals (Ljava/lang/Object;Ljava/lang/Object;)Z 6 11 java/lang/Object equals (Ljava/lang/Object;)Z 3 152 java/util/LinkedHashMap newNode (ILjava/lang/Object;Ljava/lang/Object;Ljava/util/HashMap$Node;)Ljava/util/HashMap$Node; 4 9 java/util/LinkedHashMap$Entry (ILjava/lang/Object;Ljava/lang/Object;Ljava/util/HashMap$Node;)V 5 6 java/util/HashMap$Node (ILjava/lang/Object;Ljava/lang/Object;Ljava/util/HashMap$Node;)V 6 1 java/lang/Object ()V 4 17 java/util/LinkedHashMap linkNodeLast (Ljava/util/LinkedHashMap$Entry;)V 3 253 java/util/LinkedHashMap afterNodeAccess (Ljava/util/HashMap$Node;)V 3 295 java/util/LinkedHashMap afterNodeInsertion (Z)V 4 15 java/util/LinkedHashMap removeEldestEntry (Ljava/util/Map$Entry;)Z diff --git a/replay_pid17936.log b/replay_pid17936.log new file mode 100644 index 0000000000..f0d2583785 --- /dev/null +++ b/replay_pid17936.log @@ -0,0 +1,10515 @@ +JvmtiExport can_access_local_variables 0 +JvmtiExport can_hotswap_or_post_breakpoint 0 +JvmtiExport can_post_on_exceptions 0 +# 248 ciObject found +instanceKlass com/puppycrawl/tools/checkstyle/checks/imports/UnusedImportsCheck$$Lambda$1411 +instanceKlass com/puppycrawl/tools/checkstyle/checks/imports/UnusedImportsCheck$$Lambda$1410 +instanceKlass com/puppycrawl/tools/checkstyle/checks/javadoc/JavadocTag +instanceKlass com/puppycrawl/tools/checkstyle/checks/javadoc/utils/BlockTagUtil +instanceKlass com/puppycrawl/tools/checkstyle/checks/javadoc/JavadocTags +instanceKlass com/puppycrawl/tools/checkstyle/checks/javadoc/utils/InlineTagUtil +instanceKlass com/puppycrawl/tools/checkstyle/api/JavadocTokenTypes +instanceKlass com/puppycrawl/tools/checkstyle/utils/JavadocUtil +instanceKlass java/util/concurrent/ForkJoinPool$DefaultForkJoinWorkerThreadFactory$1 +instanceKlass java/text/FieldPosition$Delegate +instanceKlass com/puppycrawl/tools/checkstyle/JavaAstVisitor$$Lambda$1409 +instanceKlass com/puppycrawl/tools/checkstyle/JavaAstVisitor$$Lambda$1408 +instanceKlass com/puppycrawl/tools/checkstyle/JavaAstVisitor$$Lambda$1407 +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass com/puppycrawl/tools/checkstyle/filters/SuppressionCommentFilter$$Lambda$1406 +instanceKlass com/puppycrawl/tools/checkstyle/api/Violation$$Lambda$1405 +instanceKlass com/puppycrawl/tools/checkstyle/checks/blocks/RightCurlyCheck$Details +instanceKlass java/util/concurrent/ConcurrentLinkedQueue$Itr +instanceKlass java/util/concurrent/ForkJoinPool$WorkQueue +instanceKlass java/util/concurrent/ForkJoinPool$1 +instanceKlass java/util/concurrent/ForkJoinPool$DefaultForkJoinWorkerThreadFactory +instanceKlass java/util/concurrent/ForkJoinPool$ForkJoinWorkerThreadFactory +instanceKlass com/puppycrawl/tools/checkstyle/JavaAstVisitor$$Lambda$1404 +instanceKlass com/puppycrawl/tools/checkstyle/JavaAstVisitor$$Lambda$1403 +instanceKlass java/util/Collections$UnmodifiableList$1 +instanceKlass com/puppycrawl/tools/checkstyle/checks/javadoc/JavadocMethodCheck$$Lambda$1402 +instanceKlass com/puppycrawl/tools/checkstyle/checks/javadoc/JavadocMethodCheck$$Lambda$1401 +instanceKlass com/puppycrawl/tools/checkstyle/checks/naming/ParameterNameCheck$$Lambda$1400 +instanceKlass com/puppycrawl/tools/checkstyle/checks/indentation/DetailAstSet +instanceKlass com/puppycrawl/tools/checkstyle/utils/ScopeUtil$$Lambda$1399 +instanceKlass com/puppycrawl/tools/checkstyle/utils/CheckUtil +instanceKlass com/puppycrawl/tools/checkstyle/checks/coding/DeclarationOrderCheck$ScopeState +instanceKlass com/puppycrawl/tools/checkstyle/utils/AnnotationUtil$$Lambda$1398 +instanceKlass com/puppycrawl/tools/checkstyle/utils/AnnotationUtil +instanceKlass com/puppycrawl/tools/checkstyle/utils/ScopeUtil$$Lambda$1397 +instanceKlass com/puppycrawl/tools/checkstyle/utils/ScopeUtil$$Lambda$1396 +instanceKlass com/puppycrawl/tools/checkstyle/utils/ScopeUtil +instanceKlass com/puppycrawl/tools/checkstyle/checks/imports/RedundantImportCheck$$Lambda$1395 +instanceKlass com/puppycrawl/tools/checkstyle/checks/imports/RedundantImportCheck$$Lambda$1394 +instanceKlass com/puppycrawl/tools/checkstyle/checks/indentation/IndentLevel +instanceKlass com/puppycrawl/tools/checkstyle/JavaAstVisitor$$Lambda$1393 +instanceKlass com/puppycrawl/tools/checkstyle/JavaAstVisitor$$Lambda$1392 +instanceKlass com/puppycrawl/tools/checkstyle/JavaAstVisitor$$Lambda$1391 +instanceKlass com/puppycrawl/tools/checkstyle/JavaAstVisitor$$Lambda$1390 +instanceKlass com/puppycrawl/tools/checkstyle/JavaAstVisitor$$Lambda$1389 +instanceKlass com/puppycrawl/tools/checkstyle/JavaAstVisitor$$Lambda$1388 +instanceKlass com/puppycrawl/tools/checkstyle/JavaAstVisitor$DetailAstPair +instanceKlass com/puppycrawl/tools/checkstyle/JavaAstVisitor$$Lambda$1387 +instanceKlass com/puppycrawl/tools/checkstyle/DetailAstImpl +instanceKlass org/antlr/v4/runtime/dfa/DFAState$PredPrediction +instanceKlass org/antlr/v4/runtime/ProxyErrorListener +instanceKlass org/antlr/v4/runtime/misc/FlexibleHashMap$Entry +instanceKlass org/antlr/v4/runtime/misc/FlexibleHashMap +instanceKlass com/puppycrawl/tools/checkstyle/checks/imports/UnusedImportsCheck$$Lambda$1386 +instanceKlass com/puppycrawl/tools/checkstyle/checks/imports/UnusedImportsCheck$$Lambda$1385 +instanceKlass com/puppycrawl/tools/checkstyle/api/FullIdent +instanceKlass com/puppycrawl/tools/checkstyle/checks/imports/UnusedImportsCheck$Frame +instanceKlass org/antlr/v4/runtime/tree/AbstractParseTreeVisitor +instanceKlass com/puppycrawl/tools/checkstyle/grammar/java/JavaLanguageParserVisitor +instanceKlass org/antlr/v4/runtime/tree/ParseTreeVisitor +instanceKlass org/antlr/v4/runtime/tree/TerminalNodeImpl +instanceKlass org/antlr/v4/runtime/misc/DoubleKeyMap +instanceKlass org/antlr/v4/runtime/CommonToken +instanceKlass org/antlr/v4/runtime/WritableToken +instanceKlass com/puppycrawl/tools/checkstyle/api/FileContents$$Lambda$1384 +instanceKlass com/puppycrawl/tools/checkstyle/api/Comment +instanceKlass com/puppycrawl/tools/checkstyle/api/TextBlock +instanceKlass org/antlr/v4/runtime/atn/LexerIndexedCustomAction +instanceKlass org/antlr/v4/runtime/atn/LexerActionExecutor +instanceKlass org/antlr/v4/runtime/misc/MurmurHash +instanceKlass org/antlr/v4/runtime/atn/SemanticContext +instanceKlass org/antlr/v4/runtime/DefaultErrorStrategy +instanceKlass org/antlr/v4/runtime/tree/ErrorNode +instanceKlass org/antlr/v4/runtime/tree/TerminalNode +instanceKlass org/antlr/v4/runtime/tree/ParseTreeListener +instanceKlass org/antlr/v4/runtime/RuleContext +instanceKlass org/antlr/v4/runtime/tree/RuleNode +instanceKlass org/antlr/v4/runtime/BufferedTokenStream +instanceKlass org/antlr/v4/runtime/atn/LexerATNSimulator$SimState +instanceKlass org/antlr/v4/runtime/misc/AbstractEqualityComparator +instanceKlass org/antlr/v4/runtime/misc/EqualityComparator +instanceKlass org/antlr/v4/runtime/misc/Array2DHashSet +instanceKlass org/antlr/v4/runtime/dfa/DFAState +instanceKlass org/antlr/v4/runtime/atn/ATNConfigSet +instanceKlass org/antlr/v4/runtime/atn/ATNConfig +instanceKlass org/antlr/v4/runtime/misc/IntegerList +instanceKlass org/antlr/v4/runtime/Token +instanceKlass org/antlr/v4/runtime/CommonTokenFactory +instanceKlass org/antlr/v4/runtime/TokenFactory +instanceKlass org/antlr/v4/runtime/BaseErrorListener +instanceKlass org/antlr/v4/runtime/dfa/DFASerializer +instanceKlass org/antlr/v4/runtime/dfa/DFA +instanceKlass org/antlr/v4/runtime/atn/LexerPopModeAction +instanceKlass org/antlr/v4/runtime/atn/LexerChannelAction +instanceKlass org/antlr/v4/runtime/atn/LexerCustomAction +instanceKlass org/antlr/v4/runtime/atn/LexerSkipAction +instanceKlass org/antlr/v4/runtime/atn/LexerPushModeAction +instanceKlass org/antlr/v4/runtime/atn/ATNDeserializer$1 +instanceKlass org/antlr/v4/runtime/misc/Interval +instanceKlass org/antlr/v4/runtime/misc/IntervalSet +instanceKlass org/antlr/v4/runtime/misc/Pair +instanceKlass org/antlr/v4/runtime/misc/IntSet +instanceKlass org/antlr/v4/runtime/atn/ATN +instanceKlass org/antlr/v4/runtime/atn/ATNDeserializationOptions +instanceKlass org/antlr/v4/runtime/atn/LexerAction +instanceKlass org/antlr/v4/runtime/atn/ATNState +instanceKlass org/antlr/v4/runtime/atn/Transition +instanceKlass org/antlr/v4/runtime/atn/ATNDeserializer +instanceKlass org/antlr/v4/runtime/VocabularyImpl +instanceKlass org/antlr/v4/runtime/atn/PredictionContext +instanceKlass org/antlr/v4/runtime/atn/PredictionContextCache +instanceKlass org/antlr/v4/runtime/RuntimeMetaData +instanceKlass org/antlr/v4/runtime/Vocabulary +instanceKlass org/antlr/v4/runtime/atn/ATNSimulator +instanceKlass org/antlr/v4/runtime/Recognizer +instanceKlass org/antlr/v4/runtime/CodePointCharStream$1 +instanceKlass org/antlr/v4/runtime/CodePointCharStream +instanceKlass org/antlr/v4/runtime/CodePointBuffer$1 +instanceKlass org/antlr/v4/runtime/CodePointBuffer$Builder +instanceKlass org/antlr/v4/runtime/CodePointBuffer +instanceKlass org/antlr/v4/runtime/CharStreams +instanceKlass org/antlr/v4/runtime/tree/ParseTree +instanceKlass org/antlr/v4/runtime/tree/SyntaxTree +instanceKlass org/antlr/v4/runtime/tree/Tree +instanceKlass org/antlr/v4/runtime/ANTLRErrorListener +instanceKlass org/antlr/v4/runtime/ANTLRErrorStrategy +instanceKlass org/antlr/v4/runtime/TokenStream +instanceKlass org/antlr/v4/runtime/TokenSource +instanceKlass org/antlr/v4/runtime/CharStream +instanceKlass org/antlr/v4/runtime/IntStream +instanceKlass com/puppycrawl/tools/checkstyle/JavaParser +instanceKlass com/puppycrawl/tools/checkstyle/XMLLogger$FileMessages +instanceKlass com/puppycrawl/tools/checkstyle/Checker$$Lambda$1383 +instanceKlass com/puppycrawl/tools/checkstyle/checks/regexp/SinglelineDetector +instanceKlass com/puppycrawl/tools/checkstyle/checks/regexp/DetectorOptions$Builder$$Lambda$1382 +instanceKlass com/puppycrawl/tools/checkstyle/checks/regexp/NeverSuppress +instanceKlass com/puppycrawl/tools/checkstyle/checks/regexp/MatchSuppressor +instanceKlass com/puppycrawl/tools/checkstyle/checks/regexp/DetectorOptions$Builder +instanceKlass com/puppycrawl/tools/checkstyle/checks/regexp/DetectorOptions +instanceKlass com/puppycrawl/tools/checkstyle/DefaultLogger$LocalizedMessage$$Lambda$1381 +instanceKlass com/puppycrawl/tools/checkstyle/DefaultLogger$LocalizedMessage +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass com/puppycrawl/tools/checkstyle/ant/CheckstyleAntTask$$Lambda$1380 +instanceKlass com/puppycrawl/tools/checkstyle/ant/CheckstyleAntTask$$Lambda$1379 +instanceKlass org/apache/tools/ant/DirectoryScanner$$Lambda$1378 +instanceKlass org/apache/tools/ant/DirectoryScanner$$Lambda$1377 +instanceKlass org/apache/tools/ant/DirectoryScanner$$Lambda$1376 +instanceKlass java/util/function/Predicate$$Lambda$1375 +instanceKlass org/apache/tools/ant/DirectoryScanner$$Lambda$1374 +instanceKlass org/apache/tools/ant/DirectoryScanner$$Lambda$1373 +instanceKlass org/apache/tools/ant/DirectoryScanner$$Lambda$1372 +instanceKlass org/apache/tools/ant/types/selectors/OrSelector$$Lambda$1371 +instanceKlass org/apache/tools/ant/types/selectors/AndSelector$$Lambda$1370 +instanceKlass org/apache/tools/ant/types/selectors/BaseSelectorContainer$$Lambda$1369 +instanceKlass org/apache/tools/ant/types/selectors/BaseSelectorContainer$$Lambda$1368 +instanceKlass org/apache/tools/ant/types/selectors/BaseSelectorContainer$$Lambda$1367 +instanceKlass org/apache/tools/ant/DirectoryScanner$$Lambda$1366 +instanceKlass org/apache/tools/ant/DirectoryScanner$$Lambda$1365 +instanceKlass org/apache/tools/ant/DirectoryScanner$$Lambda$1364 +instanceKlass org/apache/tools/ant/types/selectors/TokenizedPattern +instanceKlass org/apache/tools/ant/types/selectors/SelectorUtils +instanceKlass org/apache/tools/ant/types/selectors/TokenizedPath +instanceKlass org/apache/tools/ant/DirectoryScanner$$Lambda$1363 +instanceKlass org/apache/tools/ant/DirectoryScanner$$Lambda$1362 +instanceKlass org/apache/tools/ant/types/AbstractFileSet$$Lambda$1361 +instanceKlass com/puppycrawl/tools/checkstyle/AuditEventDefaultFormatter +instanceKlass com/puppycrawl/tools/checkstyle/AuditEventFormatter +instanceKlass com/puppycrawl/tools/checkstyle/checks/indentation/AbstractExpressionHandler +instanceKlass com/puppycrawl/tools/checkstyle/checks/indentation/HandlerFactory +instanceKlass com/puppycrawl/tools/checkstyle/checks/indentation/LineWrappingHandler +instanceKlass java/util/stream/IntPipeline$$Lambda$1360 +instanceKlass com/puppycrawl/tools/checkstyle/api/DetailNode +instanceKlass com/puppycrawl/tools/checkstyle/checks/javadoc/AbstractJavadocCheck$$Lambda$1359 +instanceKlass com/puppycrawl/tools/checkstyle/checks/javadoc/AbstractJavadocCheck$FileContext +instanceKlass com/puppycrawl/tools/checkstyle/checks/javadoc/AbstractJavadocCheck$$Lambda$1358 +instanceKlass com/puppycrawl/tools/checkstyle/TreeWalker$$Lambda$1357 +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/util/regex/Pattern$CharPredicate$$Lambda$1356 +instanceKlass java/util/regex/CharPredicates$$Lambda$1355 +instanceKlass com/puppycrawl/tools/checkstyle/TreeWalker$$Lambda$1354 +instanceKlass java/util/stream/Nodes$IntArrayNode +instanceKlass java/util/stream/Node$Builder$OfInt +instanceKlass java/util/stream/IntPipeline$$Lambda$1353 +instanceKlass com/puppycrawl/tools/checkstyle/utils/TokenUtil$$Lambda$1352 +instanceKlass com/puppycrawl/tools/checkstyle/utils/TokenUtil$$Lambda$1351 +instanceKlass com/puppycrawl/tools/checkstyle/utils/TokenUtil$$Lambda$1350 +instanceKlass java/util/stream/Collectors$$Lambda$1349 +instanceKlass com/puppycrawl/tools/checkstyle/utils/TokenUtil$$Lambda$1348 +instanceKlass com/puppycrawl/tools/checkstyle/utils/TokenUtil$$Lambda$1347 +instanceKlass com/puppycrawl/tools/checkstyle/utils/TokenUtil$$Lambda$1346 +instanceKlass com/puppycrawl/tools/checkstyle/api/TokenTypes +instanceKlass com/puppycrawl/tools/checkstyle/utils/TokenUtil +instanceKlass com/puppycrawl/tools/checkstyle/api/AbstractCheck$$Lambda$1345 +instanceKlass com/puppycrawl/tools/checkstyle/api/AbstractCheck$FileContext +instanceKlass com/puppycrawl/tools/checkstyle/filters/SuppressionCommentFilter$Tag +instanceKlass com/puppycrawl/tools/checkstyle/TreeWalkerAuditEvent +instanceKlass com/puppycrawl/tools/checkstyle/TreeWalkerFilter +instanceKlass com/puppycrawl/tools/checkstyle/api/DetailAST +instanceKlass com/puppycrawl/tools/checkstyle/FileStatefulCheck +instanceKlass com/puppycrawl/tools/checkstyle/TreeWalker$$Lambda$1344 +instanceKlass java/util/Comparators$NullComparator +instanceKlass com/puppycrawl/tools/checkstyle/TreeWalker$$Lambda$1343 +instanceKlass com/puppycrawl/tools/checkstyle/TreeWalker$$Lambda$1342 +instanceKlass com/sun/org/apache/xerces/internal/impl/dtd/models/SimpleContentModel +instanceKlass com/puppycrawl/tools/checkstyle/filters/SuppressFilterElement +instanceKlass org/apache/commons/beanutils/MethodUtils$MethodDescriptor +instanceKlass org/apache/commons/beanutils/MethodUtils +instanceKlass org/apache/commons/beanutils/BeanIntrospectionData +instanceKlass com/puppycrawl/tools/checkstyle/StatelessCheck +instanceKlass com/puppycrawl/tools/checkstyle/api/FileContents +instanceKlass com/puppycrawl/tools/checkstyle/grammar/CommentListener +instanceKlass com/puppycrawl/tools/checkstyle/api/FileText +instanceKlass org/apache/commons/beanutils/DefaultIntrospectionContext +instanceKlass org/apache/commons/beanutils/DynaBean +instanceKlass org/apache/commons/beanutils/BeanUtils +instanceKlass org/apache/commons/beanutils/SuppressPropertiesBeanIntrospector +instanceKlass org/apache/commons/beanutils/DefaultBeanIntrospector +instanceKlass org/apache/commons/beanutils/BeanIntrospector +instanceKlass org/apache/commons/beanutils/PropertyUtils +instanceKlass org/apache/commons/beanutils/expression/DefaultResolver +instanceKlass org/apache/commons/beanutils/IntrospectionContext +instanceKlass org/apache/commons/beanutils/expression/Resolver +instanceKlass org/apache/commons/beanutils/PropertyUtilsBean +instanceKlass org/apache/commons/beanutils/ContextClassLoaderLocal +instanceKlass org/apache/commons/beanutils/BeanUtilsBean +instanceKlass com/puppycrawl/tools/checkstyle/api/AutomaticBean$RelaxedAccessModifierArrayConverter +instanceKlass com/puppycrawl/tools/checkstyle/api/AutomaticBean$UriConverter +instanceKlass com/puppycrawl/tools/checkstyle/api/AutomaticBean$ScopeConverter +instanceKlass com/puppycrawl/tools/checkstyle/api/AutomaticBean$SeverityLevelConverter +instanceKlass com/puppycrawl/tools/checkstyle/api/AutomaticBean$PatternConverter +instanceKlass com/puppycrawl/tools/checkstyle/api/AutomaticBean$RelaxedStringArrayConverter +instanceKlass org/apache/commons/beanutils/converters/ConverterFacade +instanceKlass org/apache/commons/beanutils/converters/AbstractConverter +instanceKlass org/apache/commons/beanutils/ConvertUtils +instanceKlass org/apache/commons/beanutils/ConvertUtilsBean +instanceKlass com/puppycrawl/tools/checkstyle/api/AbstractFileSetCheck$$Lambda$1341 +instanceKlass com/puppycrawl/tools/checkstyle/api/AbstractFileSetCheck$FileContext +instanceKlass com/puppycrawl/tools/checkstyle/DefaultContext +instanceKlass com/puppycrawl/tools/checkstyle/api/Violation +instanceKlass com/puppycrawl/tools/checkstyle/api/FilterSet +instanceKlass com/puppycrawl/tools/checkstyle/api/Filter +instanceKlass com/puppycrawl/tools/checkstyle/api/BeforeExecutionFileFilterSet +instanceKlass com/puppycrawl/tools/checkstyle/api/BeforeExecutionFileFilter +instanceKlass com/puppycrawl/tools/checkstyle/api/SeverityLevelCounter +instanceKlass com/puppycrawl/tools/checkstyle/api/Context +instanceKlass org/apache/commons/beanutils/Converter +instanceKlass com/puppycrawl/tools/checkstyle/PackageObjectFactory +instanceKlass com/puppycrawl/tools/checkstyle/ConfigurationLoader$InternalLoader$$Lambda$1340 +instanceKlass com/sun/org/apache/xerces/internal/impl/dtd/models/CMStateSet +instanceKlass com/sun/org/apache/xerces/internal/impl/dtd/models/DFAContentModel +instanceKlass com/sun/org/apache/xerces/internal/impl/dtd/models/CMNode +instanceKlass com/puppycrawl/tools/checkstyle/DefaultConfiguration +instanceKlass com/sun/xml/internal/stream/StaxXMLInputSource +instanceKlass com/sun/org/apache/xerces/internal/impl/XMLDocumentScannerImpl$DTDDriver +instanceKlass com/sun/org/apache/xerces/internal/impl/dtd/XMLContentSpec +instanceKlass com/sun/org/apache/xerces/internal/impl/dtd/models/ContentModelValidator +instanceKlass com/sun/org/apache/xerces/internal/impl/dtd/DTDGrammar +instanceKlass com/sun/org/apache/xerces/internal/xni/grammars/Grammar +instanceKlass com/sun/org/apache/xerces/internal/impl/validation/EntityState +instanceKlass sun/net/DefaultProgressMeteringPolicy +instanceKlass sun/net/ProgressMeteringPolicy +instanceKlass sun/net/ProgressMonitor +instanceKlass com/puppycrawl/tools/checkstyle/XmlLoader$LoadExternalDtdFeatureProvider +instanceKlass com/puppycrawl/tools/checkstyle/api/Configuration +instanceKlass java/net/spi/URLStreamHandlerProvider +instanceKlass java/net/URL$1 +instanceKlass java/net/URL$2 +instanceKlass com/puppycrawl/tools/checkstyle/utils/CommonUtil +instanceKlass com/puppycrawl/tools/checkstyle/ConfigurationLoader +instanceKlass com/puppycrawl/tools/checkstyle/PropertiesExpander +instanceKlass com/puppycrawl/tools/checkstyle/api/FileSetCheck +instanceKlass com/puppycrawl/tools/checkstyle/api/ExternalResourceHolder +instanceKlass com/puppycrawl/tools/checkstyle/api/AutomaticBean +instanceKlass com/puppycrawl/tools/checkstyle/api/Contextualizable +instanceKlass com/puppycrawl/tools/checkstyle/api/RootModule +instanceKlass com/puppycrawl/tools/checkstyle/api/Configurable +instanceKlass com/puppycrawl/tools/checkstyle/api/MessageDispatcher +instanceKlass com/puppycrawl/tools/checkstyle/ThreadModeSettings +instanceKlass org/apache/tools/ant/dispatch/Dispatchable +instanceKlass org/apache/tools/ant/dispatch/DispatchUtils +instanceKlass org/apache/tools/ant/IntrospectionHelper$MethodAndObject +instanceKlass org/apache/tools/ant/PathTokenizer +instanceKlass org/apache/tools/ant/types/resources/FailFast +instanceKlass org/apache/tools/ant/types/Path$PathElement +instanceKlass org/apache/tools/ant/types/Parameter +instanceKlass org/apache/tools/ant/util/FileNameMapper +instanceKlass org/apache/tools/ant/types/selectors/modifiedselector/Algorithm +instanceKlass org/apache/tools/ant/types/selectors/modifiedselector/Cache +instanceKlass org/apache/tools/ant/types/selectors/PosixPermissionsSelector +instanceKlass org/apache/tools/ant/types/selectors/OwnedBySelector +instanceKlass org/apache/tools/ant/types/selectors/SymlinkSelector +instanceKlass org/apache/tools/ant/types/selectors/ReadableSelector +instanceKlass org/apache/tools/ant/types/selectors/ExecutableSelector +instanceKlass org/apache/tools/ant/types/selectors/PosixGroupSelector +instanceKlass org/apache/tools/ant/types/selectors/WritableSelector +instanceKlass org/apache/tools/ant/DirectoryScanner +instanceKlass org/apache/tools/ant/types/selectors/SelectorScanner +instanceKlass org/apache/tools/ant/types/selectors/ExtendFileSelector +instanceKlass org/apache/tools/ant/types/Parameterizable +instanceKlass org/apache/tools/ant/types/PatternSet$NameEntry +instanceKlass org/apache/tools/ant/IntrospectionHelper$Creator +instanceKlass org/apache/tools/ant/FileScanner +instanceKlass com/puppycrawl/tools/checkstyle/ant/CheckstyleAntTask$Formatter +instanceKlass org/apache/tools/ant/types/selectors/SelectorContainer +instanceKlass com/puppycrawl/tools/checkstyle/ant/CheckstyleAntTask$Property +instanceKlass org/apache/tools/ant/DynamicAttribute +instanceKlass org/apache/tools/ant/Evaluable +instanceKlass org/apache/tools/ant/RuntimeConfigurable$AttributeComponentInformation +instanceKlass org/apache/tools/ant/types/resources/AppendableResourceCollection +instanceKlass org/apache/tools/ant/DynamicElementNS +instanceKlass org/apache/tools/ant/DynamicElement +instanceKlass org/apache/tools/ant/IntrospectionHelper$AttributeSetter +instanceKlass org/apache/tools/ant/IntrospectionHelper$NestedCreator +instanceKlass org/apache/tools/ant/IntrospectionHelper +instanceKlass com/sun/org/apache/xerces/internal/impl/Constants$ArrayEnumeration +instanceKlass com/sun/org/apache/xerces/internal/impl/Constants +instanceKlass com/sun/org/apache/xerces/internal/parsers/AbstractSAXParser$LocatorProxy +instanceKlass org/xml/sax/ext/Locator2 +instanceKlass com/sun/org/apache/xerces/internal/util/XMLSymbols +instanceKlass com/sun/org/apache/xerces/internal/util/XMLChar +instanceKlass com/sun/xml/internal/stream/Entity +instanceKlass com/sun/xml/internal/stream/util/BufferAllocator +instanceKlass com/sun/xml/internal/stream/util/ThreadLocalBufferAllocator +instanceKlass com/sun/org/apache/xerces/internal/impl/XMLEntityManager$EncodingInfo +instanceKlass com/sun/org/apache/xerces/internal/util/URI +instanceKlass com/sun/org/apache/xerces/internal/utils/XMLLimitAnalyzer +instanceKlass com/sun/org/apache/xerces/internal/xni/parser/XMLInputSource +instanceKlass com/sun/org/apache/xerces/internal/util/ErrorHandlerWrapper +instanceKlass com/sun/org/apache/xerces/internal/xni/parser/XMLErrorHandler +instanceKlass com/sun/org/apache/xerces/internal/impl/ExternalSubsetResolver +instanceKlass com/sun/org/apache/xerces/internal/util/EntityResolverWrapper +instanceKlass org/xml/sax/ext/EntityResolver2 +instanceKlass org/xml/sax/InputSource +instanceKlass org/apache/tools/zip/ZipFile$$Lambda$1339 +instanceKlass org/apache/tools/zip/UnparseableExtraFieldData +instanceKlass org/apache/tools/zip/ZipEightByteInteger +instanceKlass org/apache/tools/zip/Zip64ExtendedInformationExtraField +instanceKlass org/apache/tools/zip/CentralDirectoryParsingZipExtraField +instanceKlass org/apache/tools/zip/JarMarker +instanceKlass org/apache/tools/zip/AsiExtraField +instanceKlass org/apache/tools/zip/UnixStat +instanceKlass org/apache/tools/zip/ExtraFieldUtils +instanceKlass org/apache/tools/zip/ExtraFieldUtils$UnparseableExtraField +instanceKlass org/apache/tools/zip/AbstractUnicodeExtraField +instanceKlass org/apache/tools/zip/ZipUtil +instanceKlass org/apache/tools/zip/ZipShort +instanceKlass org/apache/tools/zip/GeneralPurposeBit +instanceKlass org/apache/tools/zip/ZipFile$OffsetEntry +instanceKlass org/apache/tools/zip/FallbackZipEncoding +instanceKlass org/apache/tools/zip/ZipEncodingHelper$SimpleEncodingHolder +instanceKlass org/apache/tools/zip/ZipEncoding +instanceKlass org/apache/tools/zip/ZipEncodingHelper +instanceKlass org/apache/tools/zip/ZipFile$$Lambda$1338 +instanceKlass org/apache/tools/zip/ZipExtraField +instanceKlass org/apache/tools/zip/ZipFile +instanceKlass com/sun/org/apache/xerces/internal/parsers/AbstractSAXParser$AttributesProxy +instanceKlass org/xml/sax/ext/Attributes2 +instanceKlass com/sun/org/apache/xerces/internal/util/FeatureState +instanceKlass com/sun/org/apache/xerces/internal/util/PropertyState +instanceKlass com/sun/org/apache/xerces/internal/impl/msg/XMLMessageFormatter +instanceKlass com/sun/org/apache/xerces/internal/util/MessageFormatter +instanceKlass com/sun/org/apache/xerces/internal/impl/XMLVersionDetector +instanceKlass com/sun/org/apache/xerces/internal/impl/validation/ValidationManager +instanceKlass com/sun/org/apache/xerces/internal/impl/dv/dtd/NMTOKENDatatypeValidator +instanceKlass com/sun/org/apache/xerces/internal/impl/dv/dtd/NOTATIONDatatypeValidator +instanceKlass com/sun/org/apache/xerces/internal/impl/dv/dtd/ENTITYDatatypeValidator +instanceKlass com/sun/org/apache/xerces/internal/impl/dv/dtd/ListDatatypeValidator +instanceKlass com/sun/org/apache/xerces/internal/impl/dv/dtd/IDREFDatatypeValidator +instanceKlass com/sun/org/apache/xerces/internal/impl/dv/dtd/IDDatatypeValidator +instanceKlass com/sun/org/apache/xerces/internal/impl/dv/dtd/StringDatatypeValidator +instanceKlass com/sun/org/apache/xerces/internal/impl/dv/DatatypeValidator +instanceKlass com/sun/org/apache/xerces/internal/impl/dv/DTDDVFactory +instanceKlass com/sun/org/apache/xerces/internal/impl/dtd/DTDGrammarBucket +instanceKlass com/sun/org/apache/xerces/internal/impl/dtd/XMLAttributeDecl +instanceKlass com/sun/org/apache/xerces/internal/impl/dtd/XMLSimpleType +instanceKlass com/sun/org/apache/xerces/internal/impl/dtd/XMLElementDecl +instanceKlass com/sun/org/apache/xerces/internal/impl/validation/ValidationState +instanceKlass com/sun/org/apache/xerces/internal/impl/dv/ValidationContext +instanceKlass com/sun/org/apache/xerces/internal/impl/dtd/XMLDTDValidator +instanceKlass com/sun/org/apache/xerces/internal/impl/RevalidationHandler +instanceKlass com/sun/org/apache/xerces/internal/impl/dtd/XMLDTDValidatorFilter +instanceKlass com/sun/org/apache/xerces/internal/xni/parser/XMLDocumentFilter +instanceKlass com/sun/org/apache/xerces/internal/impl/dtd/XMLEntityDecl +instanceKlass com/sun/org/apache/xerces/internal/impl/dtd/XMLDTDProcessor +instanceKlass com/sun/org/apache/xerces/internal/xni/parser/XMLDTDContentModelFilter +instanceKlass com/sun/org/apache/xerces/internal/xni/parser/XMLDTDFilter +instanceKlass com/sun/org/apache/xerces/internal/xni/parser/XMLDTDScanner +instanceKlass com/sun/org/apache/xerces/internal/xni/parser/XMLDTDContentModelSource +instanceKlass com/sun/org/apache/xerces/internal/xni/parser/XMLDTDSource +instanceKlass com/sun/org/apache/xerces/internal/xni/grammars/XMLDTDDescription +instanceKlass com/sun/org/apache/xerces/internal/xni/grammars/XMLGrammarDescription +instanceKlass com/sun/org/apache/xerces/internal/impl/XMLDocumentScannerImpl$TrailingMiscDriver +instanceKlass com/sun/org/apache/xerces/internal/impl/XMLDocumentScannerImpl$PrologDriver +instanceKlass com/sun/org/apache/xerces/internal/impl/XMLDocumentScannerImpl$XMLDeclDriver +instanceKlass com/sun/org/apache/xerces/internal/util/NamespaceSupport +instanceKlass com/sun/org/apache/xerces/internal/xni/NamespaceContext +instanceKlass com/sun/org/apache/xerces/internal/util/XMLAttributesImpl$Attribute +instanceKlass com/sun/org/apache/xerces/internal/util/XMLAttributesImpl +instanceKlass com/sun/org/apache/xerces/internal/xni/XMLAttributes +instanceKlass com/sun/org/apache/xerces/internal/impl/XMLDocumentFragmentScannerImpl$FragmentContentDriver +instanceKlass com/sun/org/apache/xerces/internal/impl/XMLDocumentFragmentScannerImpl$Driver +instanceKlass com/sun/org/apache/xerces/internal/impl/XMLDocumentFragmentScannerImpl$ElementStack2 +instanceKlass com/sun/org/apache/xerces/internal/xni/QName +instanceKlass com/sun/org/apache/xerces/internal/impl/XMLDocumentFragmentScannerImpl$ElementStack +instanceKlass com/sun/org/apache/xerces/internal/xni/XMLString +instanceKlass com/sun/org/apache/xerces/internal/impl/XMLScanner +instanceKlass com/sun/xml/internal/stream/XMLBufferListener +instanceKlass com/sun/org/apache/xerces/internal/impl/XMLEntityHandler +instanceKlass com/sun/org/apache/xerces/internal/xni/parser/XMLDocumentScanner +instanceKlass com/sun/org/apache/xerces/internal/xni/parser/XMLDocumentSource +instanceKlass com/sun/org/apache/xerces/internal/impl/XMLErrorReporter +instanceKlass com/sun/org/apache/xerces/internal/impl/XMLEntityScanner +instanceKlass com/sun/org/apache/xerces/internal/xni/XMLLocator +instanceKlass com/sun/xml/internal/stream/XMLEntityStorage +instanceKlass com/sun/org/apache/xerces/internal/util/AugmentationsImpl$AugmentationsItemsContainer +instanceKlass com/sun/org/apache/xerces/internal/util/AugmentationsImpl +instanceKlass com/sun/org/apache/xerces/internal/xni/Augmentations +instanceKlass com/sun/org/apache/xerces/internal/util/XMLResourceIdentifierImpl +instanceKlass com/sun/org/apache/xerces/internal/xni/XMLResourceIdentifier +instanceKlass com/sun/org/apache/xerces/internal/impl/XMLEntityManager +instanceKlass com/sun/org/apache/xerces/internal/xni/parser/XMLEntityResolver +instanceKlass com/sun/org/apache/xerces/internal/xni/parser/XMLComponent +instanceKlass com/sun/org/apache/xerces/internal/util/SymbolTable$Entry +instanceKlass com/sun/org/apache/xerces/internal/util/SymbolTable +instanceKlass jdk/xml/internal/JdkXmlUtils +instanceKlass com/sun/org/apache/xerces/internal/util/ParserConfigurationSettings +instanceKlass com/sun/org/apache/xerces/internal/parsers/XML11Configurable +instanceKlass com/sun/org/apache/xerces/internal/xni/parser/XMLPullParserConfiguration +instanceKlass com/sun/org/apache/xerces/internal/xni/parser/XMLParserConfiguration +instanceKlass com/sun/org/apache/xerces/internal/xni/parser/XMLComponentManager +instanceKlass com/sun/org/apache/xerces/internal/parsers/XMLParser +instanceKlass com/sun/org/apache/xerces/internal/xni/XMLDTDContentModelHandler +instanceKlass com/sun/org/apache/xerces/internal/xni/XMLDTDHandler +instanceKlass com/sun/org/apache/xerces/internal/xni/XMLDocumentHandler +instanceKlass org/xml/sax/XMLReader +instanceKlass org/xml/sax/Parser +instanceKlass com/sun/org/apache/xerces/internal/utils/XMLSecurityPropertyManager +instanceKlass com/sun/org/apache/xerces/internal/utils/XMLSecurityManager +instanceKlass javax/xml/parsers/SAXParser +instanceKlass com/sun/org/apache/xerces/internal/xs/PSVIProvider +instanceKlass com/sun/org/apache/xerces/internal/jaxp/JAXPConstants +instanceKlass javax/xml/parsers/FactoryFinder$$Lambda$1337 +instanceKlass javax/xml/parsers/FactoryFinder$$Lambda$1336 +instanceKlass javax/xml/parsers/SAXParserFactory +instanceKlass org/apache/tools/ant/util/JAXPUtils +instanceKlass org/xml/sax/helpers/DefaultHandler +instanceKlass org/apache/tools/ant/types/resources/URLProvider +instanceKlass java/util/function/Function$$Lambda$1335 +instanceKlass org/apache/tools/ant/AntClassLoader$$Lambda$1334 +instanceKlass org/apache/tools/ant/AntClassLoader$$Lambda$1333 +instanceKlass org/apache/tools/ant/AntClassLoader$$Lambda$1332 +instanceKlass java/util/Vector$VectorSpliterator +instanceKlass org/apache/tools/ant/AntClassLoader$ResourceEnumeration +instanceKlass org/apache/tools/ant/AntClassLoader$$Lambda$1331 +instanceKlass org/apache/tools/zip/ZipLong +instanceKlass org/apache/tools/ant/util/ClasspathUtils$Delegate +instanceKlass org/apache/tools/ant/util/ClasspathUtils +instanceKlass org/apache/tools/ant/taskdefs/Definer$$Lambda$1330 +instanceKlass org/codehaus/groovy/runtime/metaclass/ClosureMetaClass$$Lambda$1329 +instanceKlass org/gradle/api/internal/file/AntFileCollectionBuilder +instanceKlass org/gradle/api/tasks/util/internal/PatternSetAntBuilderDelegate$2$1 +instanceKlass org/gradle/api/tasks/util/internal/PatternSetAntBuilderDelegate$2 +instanceKlass org/gradle/api/tasks/util/internal/PatternSetAntBuilderDelegate +instanceKlass org/gradle/api/tasks/util/internal/IntersectionPatternSet$1 +instanceKlass org/gradle/util/internal/AntUtil +instanceKlass org/gradle/api/internal/file/AbstractFileCollection$3$1 +instanceKlass org/gradle/api/internal/file/AbstractFileCollection$3 +instanceKlass org/gradle/api/internal/file/AntFileSetBuilder +instanceKlass org/xml/sax/AttributeList +instanceKlass groovy/xml/QName +instanceKlass org/xml/sax/helpers/AttributesImpl +instanceKlass org/gradle/internal/logging/LogLevelMapping +instanceKlass com/puppycrawl/tools/checkstyle/ModuleFactory +instanceKlass com/puppycrawl/tools/checkstyle/PropertyResolver +instanceKlass com/puppycrawl/tools/checkstyle/api/AuditListener +instanceKlass org/apache/tools/ant/input/InputRequest +instanceKlass jdk/internal/loader/URLClassPath$JarLoader$3 +instanceKlass org/apache/tools/ant/types/Reference +instanceKlass org/apache/tools/ant/RuntimeConfigurable +instanceKlass org/apache/tools/ant/Executor +instanceKlass org/apache/tools/ant/SubBuildListener +instanceKlass org/gradle/api/logging/Logging +instanceKlass org/gradle/api/internal/project/ant/AntLoggingAdapter +instanceKlass org/gradle/api/internal/file/ant/BaseDirSelector +instanceKlass org/apache/tools/ant/types/selectors/FileSelector +instanceKlass org/apache/tools/ant/types/resources/selectors/ResourceSelector +instanceKlass groovy/util/AntBuilderLocator +instanceKlass org/codehaus/groovy/syntax/Types +instanceKlass org/codehaus/groovy/syntax/CSTNode +instanceKlass org/codehaus/groovy/ast/tools/GeneralUtils +instanceKlass org/apache/tools/ant/helper/AntXMLContext +instanceKlass org/gradle/api/Transformer +instanceKlass org/codehaus/groovy/runtime/memoize/StampedCommonCache$$Lambda$1328 +instanceKlass org/codehaus/groovy/runtime/memoize/EvictableCache$Action +instanceKlass groovy/grape/GrapeIvy +instanceKlass groovy/grape/GrapeEngine +instanceKlass org/codehaus/groovy/vmplugin/v9/Java9$$Lambda$1327 +instanceKlass org/codehaus/groovy/vmplugin/v9/Java9$$Lambda$1326 +instanceKlass org/codehaus/groovy/vmplugin/v9/Java9$$Lambda$1325 +instanceKlass org/codehaus/groovy/vmplugin/v9/Java9$$Lambda$1324 +instanceKlass org/codehaus/groovy/vmplugin/v9/Java9$$Lambda$1323 +instanceKlass org/codehaus/groovy/vmplugin/v9/Java9$$Lambda$1322 +instanceKlass org/codehaus/groovy/vmplugin/v9/ClassFinder$1$$Lambda$1321 +instanceKlass org/codehaus/groovy/vmplugin/v9/ClassFinder +instanceKlass org/apache/groovy/util/Maps +instanceKlass org/codehaus/groovy/GroovyExceptionInterface +instanceKlass org/codehaus/groovy/control/CompilerConfiguration +instanceKlass groovy/lang/GroovyClassLoader$1 +instanceKlass org/codehaus/groovy/runtime/memoize/CommonCache +instanceKlass org/codehaus/groovy/runtime/memoize/StampedCommonCache +instanceKlass org/codehaus/groovy/runtime/memoize/ValueConvertable +instanceKlass org/codehaus/groovy/control/CompilationUnit$IPrimaryClassNodeOperation +instanceKlass org/codehaus/groovy/control/CompilationUnit$PhaseOperation +instanceKlass org/codehaus/groovy/control/CompilationUnit$ClassgenCallback +instanceKlass groovy/lang/GroovyResourceLoader +instanceKlass org/codehaus/groovy/runtime/memoize/UnlimitedConcurrentCache +instanceKlass org/codehaus/groovy/runtime/memoize/EvictableCache +instanceKlass org/codehaus/groovy/ast/expr/MethodCall +instanceKlass org/codehaus/groovy/ast/stmt/LoopingStatement +instanceKlass org/codehaus/groovy/control/messages/Message +instanceKlass org/codehaus/groovy/ast/CodeVisitorSupport +instanceKlass org/codehaus/groovy/ast/GroovyCodeVisitor +instanceKlass org/codehaus/groovy/ast/GroovyClassVisitor +instanceKlass org/codehaus/groovy/transform/ErrorCollecting +instanceKlass org/codehaus/groovy/ast/expr/ExpressionTransformer +instanceKlass org/codehaus/groovy/runtime/InvokerHelper +instanceKlass org/apache/tools/ant/ComponentHelper$$Lambda$1320 +instanceKlass org/apache/tools/ant/DefaultDefinitions +instanceKlass org/apache/tools/ant/TypeAdapter +instanceKlass org/apache/tools/ant/AntTypeDefinition +instanceKlass org/apache/tools/ant/property/ParseProperties$$Lambda$1319 +instanceKlass org/apache/tools/ant/property/ParseProperties$$Lambda$1318 +instanceKlass org/apache/tools/ant/property/ParseProperties +instanceKlass org/apache/tools/ant/ComponentHelper +instanceKlass java/text/StringCharacterIterator +instanceKlass java/text/CharacterIterator +instanceKlass org/apache/tools/ant/launch/Locator +instanceKlass org/apache/tools/ant/Main$$Lambda$1317 +instanceKlass org/apache/tools/ant/Main +instanceKlass org/apache/tools/ant/launch/AntMain +instanceKlass org/apache/tools/ant/PropertyHelper$PropertySetter +instanceKlass org/apache/tools/ant/PropertyHelper$2 +instanceKlass org/apache/tools/ant/PropertyHelper$$Lambda$1316 +instanceKlass org/apache/tools/ant/PropertyHelper$$Lambda$1315 +instanceKlass org/apache/tools/ant/property/PropertyExpander +instanceKlass org/apache/tools/ant/property/ParseNextProperty +instanceKlass java/text/ParsePosition +instanceKlass org/apache/tools/ant/PropertyHelper$1 +instanceKlass org/apache/tools/ant/PropertyHelper$PropertyEvaluator +instanceKlass org/apache/tools/ant/PropertyHelper$Delegate +instanceKlass org/apache/tools/ant/PropertyHelper +instanceKlass org/apache/tools/ant/property/GetProperty +instanceKlass org/apache/tools/ant/util/DeweyDecimal$$Lambda$1314 +instanceKlass java/util/Spliterators$IntArraySpliterator +instanceKlass org/apache/tools/ant/util/DeweyDecimal +instanceKlass org/apache/tools/ant/util/JavaEnvUtils +instanceKlass org/apache/tools/ant/util/StringUtils +instanceKlass org/apache/tools/ant/DefaultLogger +instanceKlass org/apache/tools/ant/Target +instanceKlass org/apache/tools/ant/TaskContainer +instanceKlass org/apache/tools/ant/ProjectHelperRepository$$Lambda$1313 +instanceKlass org/apache/tools/ant/ProjectHelperRepository$$Lambda$1312 +instanceKlass org/apache/tools/ant/ProjectHelperRepository$$Lambda$1311 +instanceKlass org/xml/sax/DTDHandler +instanceKlass org/xml/sax/ErrorHandler +instanceKlass org/xml/sax/EntityResolver +instanceKlass org/xml/sax/ContentHandler +instanceKlass org/apache/tools/ant/helper/ProjectHelper2$AntHandler +instanceKlass org/apache/tools/ant/util/LoaderUtils +instanceKlass org/apache/tools/ant/ProjectHelperRepository +instanceKlass org/apache/tools/ant/ProjectHelper$$Lambda$1310 +instanceKlass org/apache/tools/ant/ProjectHelper$$Lambda$1309 +instanceKlass org/apache/tools/ant/ProjectHelper +instanceKlass org/apache/tools/ant/input/DefaultInputHandler +instanceKlass org/apache/tools/ant/Project$$Lambda$1308 +instanceKlass org/apache/tools/ant/types/FilterSetCollection +instanceKlass org/apache/tools/ant/types/EnumeratedAttribute +instanceKlass org/apache/tools/ant/Location +instanceKlass org/apache/tools/ant/taskdefs/condition/Os +instanceKlass org/apache/tools/ant/taskdefs/condition/Condition +instanceKlass org/apache/tools/ant/util/FileUtils +instanceKlass org/apache/tools/ant/types/resources/Appendable +instanceKlass org/apache/tools/ant/types/resources/FileProvider +instanceKlass org/apache/tools/ant/types/resources/Touchable +instanceKlass org/apache/tools/ant/ProjectComponent +instanceKlass org/apache/tools/ant/types/ResourceCollection +instanceKlass org/apache/tools/ant/input/InputHandler +instanceKlass org/apache/tools/ant/Project +instanceKlass org/apache/tools/ant/types/ResourceFactory +instanceKlass org/apache/tools/ant/BuildLogger +instanceKlass org/apache/tools/ant/BuildListener +instanceKlass org/gradle/api/internal/project/antbuilder/CachedClassLoader +instanceKlass org/gradle/api/internal/project/antbuilder/DefaultIsolatedAntBuilder$2 +instanceKlass org/gradle/api/internal/project/antbuilder/DefaultIsolatedAntBuilder$1 +instanceKlass groovy/util/Node +instanceKlass org/gradle/api/internal/file/DefaultFilePropertyFactory$ResolvingDirectoryTransformer +instanceKlass org/codehaus/groovy/util/ReleaseInfo +instanceKlass org/apache/groovy/plugin/GroovyRunnerRegistry +instanceKlass org/codehaus/groovy/runtime/metaclass/MetaClassRegistryImpl$$Lambda$1307 +instanceKlass org/apache/groovy/util/BeanUtils +instanceKlass groovy/lang/MetaClassImpl$$Lambda$1306 +instanceKlass org/codehaus/groovy/runtime/GroovyCategorySupport +instanceKlass org/codehaus/groovy/util/ComplexKeyHashMap$1 +instanceKlass org/codehaus/groovy/reflection/CachedClass$1$$Lambda$1305 +instanceKlass org/codehaus/groovy/reflection/CachedClass$1$$Lambda$1304 +instanceKlass org/codehaus/groovy/reflection/CachedClass$1$$Lambda$1303 +instanceKlass org/codehaus/groovy/reflection/CachedClass$1$$Lambda$1302 +instanceKlass groovy/lang/MetaClassImpl$$Lambda$1301 +instanceKlass org/codehaus/groovy/reflection/CachedClass$CachedMethodComparatorWithString +instanceKlass org/codehaus/groovy/runtime/callsite/CallSiteArray +instanceKlass org/codehaus/groovy/util/AbstractConcurrentMapBase +instanceKlass groovyjarjarasm/asm/ClassVisitor +instanceKlass org/codehaus/groovy/runtime/MetaClassHelper +instanceKlass org/codehaus/groovy/reflection/CachedClass$2$$Lambda$1300 +instanceKlass org/codehaus/groovy/reflection/CachedClass$2$$Lambda$1299 +instanceKlass org/codehaus/groovy/reflection/CachedClass$2$$Lambda$1298 +instanceKlass org/codehaus/groovy/reflection/CachedClass$2$$Lambda$1297 +instanceKlass org/codehaus/groovy/runtime/MethodKey +instanceKlass groovy/lang/ClosureInvokingMethod +instanceKlass groovy/lang/ExpandoMetaClass$Callable +instanceKlass org/codehaus/groovy/reflection/CachedClass$2$$Lambda$1296 +instanceKlass org/codehaus/groovy/runtime/metaclass/MetaMethodIndex$Header +instanceKlass org/codehaus/groovy/runtime/metaclass/MetaMethodIndex$Entry +instanceKlass org/codehaus/groovy/runtime/metaclass/MetaMethodIndex$EntryIterator +instanceKlass org/codehaus/groovy/runtime/metaclass/MetaMethodIndex +instanceKlass groovy/lang/MetaClassImpl$$Lambda$1295 +instanceKlass groovy/lang/MetaClassImpl$$Lambda$1294 +instanceKlass org/codehaus/groovy/util/SingleKeyHashMap$Copier +instanceKlass groovy/lang/MetaClassImpl$$Lambda$1293 +instanceKlass groovy/lang/MetaClassImpl$MethodIndexAction +instanceKlass org/codehaus/groovy/runtime/GeneratedClosure +instanceKlass groovy/lang/MetaClassImpl +instanceKlass groovy/lang/MutableMetaClass +instanceKlass org/apache/groovy/xml/extensions/XmlExtensions +instanceKlass org/codehaus/groovy/runtime/metaclass/MetaClassRegistryImpl$DefaultModuleListener$$Lambda$1292 +instanceKlass org/codehaus/groovy/runtime/metaclass/MethodHelper +instanceKlass org/apache/groovy/datetime/extensions/DateTimeStaticExtensions +instanceKlass org/apache/groovy/datetime/extensions/DateTimeExtensions +instanceKlass org/codehaus/groovy/runtime/m12n/ExtensionModule +instanceKlass org/codehaus/groovy/runtime/m12n/PropertiesModuleFactory +instanceKlass org/codehaus/groovy/util/URLStreams +instanceKlass org/codehaus/groovy/runtime/metaclass/MetaClassRegistryImpl$DefaultModuleListener +instanceKlass org/codehaus/groovy/runtime/m12n/ExtensionModuleScanner +instanceKlass org/codehaus/groovy/runtime/DefaultGroovyStaticMethods +instanceKlass org/codehaus/groovy/runtime/metaclass/MetaClassRegistryImpl$$Lambda$1291 +instanceKlass org/codehaus/groovy/runtime/RangeInfo +instanceKlass org/codehaus/groovy/runtime/metaclass/MetaClassRegistryImpl$$Lambda$1290 +instanceKlass org/codehaus/groovy/runtime/NumberAwareComparator +instanceKlass org/codehaus/groovy/runtime/EncodingGroovyMethods +instanceKlass org/codehaus/groovy/reflection/CachedClass$CachedMethodComparatorByName +instanceKlass org/codehaus/groovy/reflection/CachedMethod$MyComparator +instanceKlass org/codehaus/groovy/runtime/callsite/CallSite +instanceKlass org/codehaus/groovy/vmplugin/v9/Java9$$Lambda$1289 +instanceKlass org/codehaus/groovy/vmplugin/v9/Java9$$Lambda$1288 +instanceKlass org/codehaus/groovy/vmplugin/v9/Java9$$Lambda$1287 +instanceKlass org/codehaus/groovy/vmplugin/v9/Java9$$Lambda$1286 +instanceKlass org/codehaus/groovy/vmplugin/v9/Java9$$Lambda$1285 +instanceKlass org/codehaus/groovy/vmplugin/v9/Java9$$Lambda$1284 +instanceKlass org/codehaus/groovy/vmplugin/v9/Java9$$Lambda$1283 +instanceKlass org/codehaus/groovy/vmplugin/v9/Java9$$Lambda$1282 +instanceKlass org/codehaus/groovy/runtime/DefaultGroovyMethodsSupport +instanceKlass groovyjarjarasm/asm/Opcodes +instanceKlass org/codehaus/groovy/ast/Variable +instanceKlass org/codehaus/groovy/ast/ASTNode +instanceKlass org/codehaus/groovy/ast/NodeMetaDataHandler +instanceKlass groovy/lang/groovydoc/GroovydocHolder +instanceKlass org/codehaus/groovy/vmplugin/v8/Java8 +instanceKlass org/codehaus/groovy/vmplugin/VMPluginFactory$$Lambda$1281 +instanceKlass org/codehaus/groovy/vmplugin/VMPlugin +instanceKlass org/codehaus/groovy/vmplugin/VMPluginFactory +instanceKlass org/codehaus/groovy/reflection/ReflectionUtils +instanceKlass org/codehaus/groovy/reflection/CachedClass$3$$Lambda$1280 +instanceKlass org/codehaus/groovy/reflection/CachedClass$3$$Lambda$1279 +instanceKlass org/codehaus/groovy/reflection/CachedClass$3$$Lambda$1278 +instanceKlass org/codehaus/groovy/reflection/CachedClass$3$$Lambda$1277 +instanceKlass org/codehaus/groovy/runtime/memoize/MemoizeCache +instanceKlass org/codehaus/groovy/reflection/CachedClass$3$$Lambda$1276 +instanceKlass org/codehaus/groovy/reflection/stdclasses/CachedSAMClass$$Lambda$1275 +instanceKlass org/codehaus/groovy/reflection/stdclasses/CachedSAMClass$$Lambda$1274 +instanceKlass org/codehaus/groovy/reflection/stdclasses/InjectedInvoker +instanceKlass org/codehaus/groovy/runtime/metaclass/MetaClassRegistryImpl$$Lambda$1273 +instanceKlass org/codehaus/groovy/transform/trait/Traits$Implemented +instanceKlass org/codehaus/groovy/util/ReferenceType$HardRef +instanceKlass org/codehaus/groovy/util/ManagedReference +instanceKlass org/codehaus/groovy/reflection/ClassInfo$GlobalClassSet +instanceKlass org/apache/groovy/util/SystemUtil +instanceKlass org/codehaus/groovy/reflection/GroovyClassValue +instanceKlass org/codehaus/groovy/reflection/GroovyClassValueFactory +instanceKlass org/codehaus/groovy/reflection/ClassInfo$1 +instanceKlass org/codehaus/groovy/reflection/CachedClass +instanceKlass org/codehaus/groovy/reflection/GroovyClassValue$ComputeValue +instanceKlass org/codehaus/groovy/reflection/ClassInfo +instanceKlass org/codehaus/groovy/util/Finalizable +instanceKlass org/codehaus/groovy/util/ComplexKeyHashMap$Entry +instanceKlass org/codehaus/groovy/util/ComplexKeyHashMap$EntryIterator +instanceKlass org/codehaus/groovy/util/ComplexKeyHashMap +instanceKlass org/codehaus/groovy/reflection/ReflectionCache +instanceKlass groovy/lang/Buildable +instanceKlass groovy/lang/Writable +instanceKlass groovy/lang/MetaProperty +instanceKlass groovy/lang/groovydoc/Groovydoc +instanceKlass groovy/lang/ListWithDefault +instanceKlass groovy/lang/Range +instanceKlass groovy/util/BufferedIterator +instanceKlass groovy/lang/GroovyObjectSupport +instanceKlass groovy/lang/GroovyObject +instanceKlass groovy/lang/GroovyCallable +instanceKlass org/codehaus/groovy/reflection/GeneratedMetaMethod$DgmMethodRecord +instanceKlass groovy/lang/MetaClassRegistry$MetaClassCreationHandle +instanceKlass org/codehaus/groovy/runtime/m12n/ExtensionModuleRegistry +instanceKlass org/codehaus/groovy/util/Reference +instanceKlass org/codehaus/groovy/util/ReferenceManager +instanceKlass org/codehaus/groovy/util/ReferenceBundle +instanceKlass org/codehaus/groovy/util/ManagedConcurrentLinkedQueue +instanceKlass org/codehaus/groovy/util/FastArray +instanceKlass groovy/lang/MetaClassRegistryChangeEventListener +instanceKlass groovy/lang/MetaClass +instanceKlass groovy/lang/MetaObjectProtocol +instanceKlass org/codehaus/groovy/reflection/ParameterTypes +instanceKlass org/codehaus/groovy/runtime/m12n/ExtensionModuleScanner$ExtensionModuleListener +instanceKlass org/codehaus/groovy/runtime/metaclass/MetaClassRegistryImpl +instanceKlass groovy/lang/MetaClassRegistry +instanceKlass groovy/lang/GroovySystem +instanceKlass org/gradle/api/internal/classloading/CompositeGroovySystemLoader +instanceKlass java/util/prefs/NodeChangeListener +instanceKlass java/util/prefs/PreferenceChangeListener +instanceKlass java/util/prefs/Preferences +instanceKlass org/gradle/api/internal/classloading/PreferenceCleaningGroovySystemLoader +instanceKlass org/gradle/api/internal/classloading/ClassInfoCleaningGroovySystemLoader +instanceKlass org/codehaus/groovy/util/ReleaseInfo +instanceKlass org/gradle/api/internal/project/antbuilder/ClassPathToClassLoaderCache +instanceKlass org/gradle/api/internal/classloading/NoOpGroovySystemLoader +instanceKlass org/gradle/api/internal/classloading/GroovySystemLoader +instanceKlass org/gradle/api/internal/classloading/GroovySystemLoaderFactory +instanceKlass org/gradle/api/internal/project/antbuilder/DefaultIsolatedAntBuilder +instanceKlass org/gradle/api/plugins/quality/internal/CheckstyleInvoker +instanceKlass org/gradle/internal/execution/history/changes/ExecutionStateChanges$2 +instanceKlass org/gradle/internal/execution/history/changes/ClasspathCompareStrategy$ChangeState +instanceKlass org/gradle/internal/execution/history/changes/ClasspathCompareStrategy$TrackingVisitor +instanceKlass org/gradle/internal/execution/history/changes/IncrementalInputProperties$2 +instanceKlass org/gradle/internal/execution/history/changes/IncrementalInputProperties$1 +instanceKlass org/gradle/execution/plan/LocalTaskNodeExecutor$$Lambda$1272 +instanceKlass org/gradle/execution/plan/ValuedVfsHierarchy$$Lambda$1271 +instanceKlass org/gradle/execution/plan/ValuedVfsHierarchy$$Lambda$1270 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/execution/plan/ValuedVfsHierarchy$$Lambda$1269 +instanceKlass org/gradle/api/internal/changedetection/state/PropertiesFileAwareClasspathResourceHasher$$Lambda$1268 +instanceKlass org/gradle/api/internal/changedetection/state/PropertiesFileAwareClasspathResourceHasher$$Lambda$1267 +instanceKlass org/gradle/internal/component/external/model/MetadataSourcedComponentArtifacts +instanceKlass org/gradle/internal/component/external/model/UrlBackedArtifactMetadata +instanceKlass org/gradle/internal/component/external/model/GradleDependencyMetadata +instanceKlass org/gradle/internal/component/external/model/AbstractMutableModuleComponentResolveMetadata$DependencyImpl$$Lambda$1266 +instanceKlass org/gradle/internal/component/external/model/AbstractMutableModuleComponentResolveMetadata$DependencyImpl +instanceKlass org/gradle/internal/component/external/model/ComponentVariant$Dependency +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/excludes/factories/NormalizingExcludeFactory$$Lambda$1265 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/excludes/factories/NormalizingExcludeFactory$$Lambda$1264 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/excludes/factories/CachingExcludeFactory$$Lambda$1263 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/excludes/factories/CachingExcludeFactory$ExcludePair +instanceKlass org/gradle/internal/component/external/model/LazyVariantBackedConfigurationMetadata$RuleAwareVariant +instanceKlass org/gradle/internal/component/external/model/AbstractVariantBackedConfigurationMetadata +instanceKlass org/gradle/internal/component/external/model/AbstractMutableModuleComponentResolveMetadata$ImmutableVariantImpl +instanceKlass org/gradle/internal/component/external/model/ComponentVariant +instanceKlass org/gradle/internal/component/external/model/AbstractMutableModuleComponentResolveMetadata$FileImpl +instanceKlass org/gradle/internal/component/external/model/ComponentVariant$File +instanceKlass org/gradle/internal/component/external/model/AbstractMutableModuleComponentResolveMetadata$MutableVariantImpl +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/excludes/factories/NormalizingExcludeFactory$$Lambda$1262 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/excludes/simple/DefaultModuleIdSetExclude +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/excludes/factories/NormalizingExcludeFactory$$Lambda$1261 +instanceKlass java/util/stream/Collectors$$Lambda$1260 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/excludes/specs/ModuleIdSetExclude +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/excludes/specs/ModuleExclude +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/excludes/factories/NormalizingExcludeFactory$$Lambda$1259 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/excludes/factories/NormalizingExcludeFactory$FlattenOperationResult +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/excludes/factories/NormalizingExcludeFactory$$Lambda$1258 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/excludes/factories/NormalizingExcludeFactory$$Lambda$1257 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/excludes/specs/ExcludeAnyOf +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/excludes/factories/NormalizingExcludeFactory$$Lambda$1256 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/excludes/specs/ExcludeAllOf +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/excludes/specs/CompositeExclude +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/excludes/factories/CachingExcludeFactory$$Lambda$1255 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/excludes/factories/CachingExcludeFactory$ExcludesKey +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/excludes/factories/OptimizingExcludeFactory$$Lambda$1254 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/excludes/simple/DefaultModuleIdExclude +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/excludes/specs/ModuleIdExclude +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/excludes/ModuleExclusions$$Lambda$1253 +instanceKlass org/gradle/api/internal/artifacts/DefaultExcludeRule +instanceKlass org/gradle/execution/plan/TaskNodeFactory$DefaultTypeOriginInspectorFactory$ProjectScopedTypeOriginInspector$$Lambda$1252 +instanceKlass org/gradle/api/internal/tasks/TaskExecuterResult$1 +instanceKlass org/gradle/tooling/internal/provider/runner/OperationDependenciesResolver$$Lambda$1251 +instanceKlass org/gradle/tooling/internal/provider/runner/OperationDependenciesResolver$$Lambda$1250 +instanceKlass org/gradle/cache/internal/DefaultMultiProcessSafePersistentIndexedCache$$Lambda$1249 +instanceKlass org/gradle/internal/execution/steps/SkipEmptyWorkStep$2$1 +instanceKlass org/gradle/cache/internal/AsyncCacheAccessDecoratedCache$$Lambda$1248 +instanceKlass org/gradle/internal/execution/steps/SkipEmptyWorkStep$2 +instanceKlass org/gradle/internal/execution/steps/SkipEmptyWorkStep$$Lambda$1247 +instanceKlass org/gradle/api/internal/file/collections/DirectoryTrees +instanceKlass org/gradle/internal/fingerprint/impl/PatternSetSnapshottingFilter$LogicalFileTreeElement +instanceKlass org/gradle/internal/snapshot/impl/FileSystemSnapshotFilter$FilteringVisitor$1 +instanceKlass org/gradle/internal/snapshot/FileSystemLocationSnapshot$FileSystemLocationSnapshotTransformer +instanceKlass org/gradle/internal/snapshot/impl/FileSystemSnapshotFilter$FilteringVisitor +instanceKlass org/gradle/internal/snapshot/impl/FileSystemSnapshotFilter +instanceKlass org/gradle/internal/fingerprint/impl/PatternSetSnapshottingFilter$$Lambda$1246 +instanceKlass org/gradle/internal/snapshot/SnapshottingFilter$FileSystemSnapshotPredicate +instanceKlass java/io/ObjectStreamClass$ExceptionInfo +instanceKlass com/google/common/collect/ImmutableList$SerializedForm +instanceKlass org/gradle/execution/plan/DefaultExecutionPlan$$Lambda$1245 +instanceKlass org/gradle/execution/plan/DefaultExecutionPlan$$Lambda$1244 +instanceKlass org/gradle/execution/plan/DefaultPlanExecutor$ExecutorWorker$$Lambda$1243 +instanceKlass org/gradle/internal/logging/events/StyledTextOutputEvent$Span +instanceKlass org/gradle/internal/logging/events/operations/StyledTextBuildOperationProgressDetails$Span +instanceKlass org/gradle/internal/operations/logging/StyledTextBuildOperationProgressDetails$Span +instanceKlass org/gradle/api/internal/tasks/execution/statistics/TaskExecutionStatisticsEventAdapter$1 +instanceKlass org/gradle/api/internal/tasks/execution/ExecuteActionsTaskExecuter$1$$Lambda$1242 +instanceKlass org/gradle/api/internal/tasks/execution/ExecuteActionsTaskExecuter$1$$Lambda$1241 +instanceKlass org/gradle/internal/execution/steps/SkipUpToDateStep$2$$Lambda$1240 +instanceKlass org/gradle/internal/execution/steps/SkipUpToDateStep$2$$Lambda$1239 +instanceKlass org/gradle/api/internal/tasks/execution/ExecuteTaskBuildOperationResult +instanceKlass org/gradle/api/internal/tasks/execution/ExecuteTaskBuildOperationType$Result +instanceKlass org/gradle/api/internal/tasks/execution/ExecuteActionsTaskExecuter$1 +instanceKlass org/gradle/api/internal/tasks/TaskExecutionOutcome$1 +instanceKlass org/gradle/api/internal/tasks/execution/ExecuteActionsTaskExecuter$$Lambda$1238 +instanceKlass org/gradle/api/internal/tasks/execution/ExecuteActionsTaskExecuter$$Lambda$1237 +instanceKlass org/gradle/api/internal/tasks/execution/TaskExecution$$Lambda$1236 +instanceKlass org/gradle/internal/snapshot/DirectorySnapshot$$Lambda$1235 +instanceKlass org/gradle/internal/execution/steps/RemoveUntrackedExecutionStateStep$$Lambda$1234 +instanceKlass org/gradle/internal/snapshot/DirectorySnapshot$$Lambda$1233 +instanceKlass org/gradle/internal/execution/steps/ResolveCachingStateStep$2 +instanceKlass org/gradle/internal/execution/history/impl/FileSystemSnapshotSerializer$1$1 +instanceKlass org/gradle/internal/execution/steps/SkipUpToDateStep$2 +instanceKlass org/gradle/internal/snapshot/RootTrackingFileSystemSnapshotHierarchyVisitor +instanceKlass org/gradle/internal/execution/history/impl/DefaultOutputFilesRepository$1 +instanceKlass org/gradle/internal/execution/history/impl/DefaultOutputFilesRepository$$Lambda$1232 +instanceKlass org/gradle/internal/execution/steps/RecordOutputsStep$$Lambda$1231 +instanceKlass org/gradle/internal/execution/history/impl/DefaultExecutionHistoryStore$$Lambda$1230 +instanceKlass org/gradle/internal/fingerprint/CurrentFileCollectionFingerprint$ArchivedFileCollectionFingerprintFactory +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass com/google/common/collect/Maps$13 +instanceKlass com/google/common/collect/Maps$9 +instanceKlass org/gradle/internal/execution/history/impl/DefaultExecutionHistoryStore$$Lambda$1229 +instanceKlass org/gradle/internal/execution/steps/StoreExecutionStateStep$$Lambda$1228 +instanceKlass org/gradle/internal/execution/steps/StoreExecutionStateStep$$Lambda$1227 +instanceKlass org/gradle/internal/execution/steps/CaptureStateAfterExecutionStep$1 +instanceKlass org/gradle/internal/execution/steps/CaptureStateAfterExecutionStep$Operation$Result$1 +instanceKlass org/gradle/internal/execution/steps/CaptureStateAfterExecutionStep$Operation$Result +instanceKlass org/gradle/internal/execution/history/impl/DefaultAfterExecutionState +instanceKlass org/gradle/internal/execution/steps/CaptureStateAfterExecutionStep$Operation$Details$1 +instanceKlass org/gradle/internal/execution/steps/CaptureStateAfterExecutionStep$Operation$Details +instanceKlass org/gradle/internal/execution/steps/CaptureStateAfterExecutionStep$$Lambda$1226 +instanceKlass org/gradle/internal/execution/steps/CaptureStateAfterExecutionStep$$Lambda$1225 +instanceKlass org/gradle/internal/execution/steps/ExecuteStep$Operation$Result$1 +instanceKlass org/gradle/internal/execution/steps/ExecuteStep$Operation$Result +instanceKlass org/gradle/internal/execution/steps/ExecuteStep$ResultImpl +instanceKlass org/gradle/internal/execution/steps/ExecuteStep$ExecutionResultImpl +instanceKlass org/gradle/internal/execution/steps/ExecuteStep$$Lambda$1224 +instanceKlass org/gradle/internal/execution/steps/ExecuteStep$3 +instanceKlass org/gradle/api/internal/tasks/execution/TaskExecution$2 +instanceKlass org/gradle/api/internal/tasks/compile/CompileJavaBuildOperationReportingCompiler$Result +instanceKlass it/unimi/dsi/fastutil/ints/IntOpenHashSet$SetIterator +instanceKlass org/gradle/api/internal/tasks/compile/incremental/deps/ClassSetAnalysisData$Serializer$$Lambda$1223 +instanceKlass org/gradle/api/internal/tasks/compile/incremental/recomp/PreviousCompilationData$Serializer$$Lambda$1222 +instanceKlass org/gradle/api/internal/tasks/compile/incremental/compilerapi/constants/ConstantToDependentsMappingMerger$$Lambda$1221 +instanceKlass org/gradle/api/internal/tasks/compile/incremental/compilerapi/constants/ConstantToDependentsMappingBuilder$$Lambda$1220 +instanceKlass org/gradle/api/internal/tasks/compile/incremental/compilerapi/constants/ConstantToDependentsMappingMerger$$Lambda$1219 +instanceKlass org/gradle/api/internal/tasks/compile/incremental/compilerapi/constants/ConstantToDependentsMappingBuilder$$Lambda$1218 +instanceKlass org/gradle/api/internal/tasks/compile/incremental/compilerapi/constants/ConstantToDependentsMappingMerger$$Lambda$1217 +instanceKlass org/gradle/api/internal/tasks/compile/incremental/compilerapi/constants/ConstantToDependentsMappingMerger$$Lambda$1216 +instanceKlass org/gradle/api/internal/tasks/compile/incremental/compilerapi/constants/ConstantToDependentsMappingMerger$$Lambda$1215 +instanceKlass org/gradle/api/internal/tasks/compile/incremental/compilerapi/constants/ConstantToDependentsMappingMerger +instanceKlass org/gradle/api/internal/tasks/compile/incremental/IncrementalResultStoringCompiler$$Lambda$1214 +instanceKlass org/gradle/api/internal/tasks/compile/incremental/IncrementalResultStoringCompiler$$Lambda$1213 +instanceKlass it/unimi/dsi/fastutil/ints/IntIterators$EmptyIterator +instanceKlass it/unimi/dsi/fastutil/ints/IntList +instanceKlass it/unimi/dsi/fastutil/ints/IntListIterator +instanceKlass it/unimi/dsi/fastutil/ints/IntIterators +instanceKlass org/gradle/api/internal/tasks/compile/incremental/asm/ClassRelevancyFilter +instanceKlass org/gradle/api/internal/tasks/compile/incremental/analyzer/CachingClassDependenciesAnalyzer$$Lambda$1212 +instanceKlass org/gradle/api/internal/tasks/compile/incremental/deps/ClassAnalysis +instanceKlass org/gradle/api/internal/file/CompositeFileCollection$$Lambda$1211 +instanceKlass org/gradle/api/internal/tasks/compile/incremental/classpath/DefaultClassSetAnalyzer$EntryVisitor +instanceKlass org/gradle/api/internal/tasks/compile/incremental/deps/ClassDependentsAccumulator +instanceKlass org/gradle/api/internal/tasks/compile/incremental/RecompilationNotNecessary +instanceKlass org/gradle/api/tasks/WorkResults$$Lambda$1210 +instanceKlass org/gradle/api/tasks/WorkResults$$Lambda$1209 +instanceKlass org/gradle/api/tasks/WorkResults +instanceKlass org/gradle/api/internal/tasks/compile/incremental/recomp/IncrementalCompilationResult +instanceKlass com/sun/tools/javac/file/Locations$$Lambda$1208 +instanceKlass java/util/EnumMap$EnumMapIterator +instanceKlass com/sun/tools/javac/jvm/Pool$DynamicMethod$BootstrapMethodsValue +instanceKlass com/sun/tools/javac/jvm/Pool$MethodHandle$$Lambda$1207 +instanceKlass com/sun/tools/javac/jvm/Pool$MethodHandle$$Lambda$1206 +instanceKlass com/sun/tools/javac/jvm/Pool$MethodHandle +instanceKlass com/sun/tools/javac/tree/TreeMaker$2 +instanceKlass org/gradle/api/internal/tasks/compile/incremental/compilerapi/constants/ConstantToDependentsMappingBuilder$$Lambda$1205 +instanceKlass org/gradle/api/internal/tasks/compile/incremental/compilerapi/constants/ConstantToDependentsMappingBuilder$$Lambda$1204 +instanceKlass com/sun/tools/javac/util/Constants$1 +instanceKlass com/sun/tools/javac/comp/Flow$1 +instanceKlass com/sun/tools/javac/code/TypeAnnotationPosition$TypePathEntry +instanceKlass com/sun/tools/javac/comp/DeferredAttr$$Lambda$1203 +instanceKlass com/sun/tools/javac/comp/ArgumentAttr$LocalCacheContext +instanceKlass com/sun/tools/javac/comp/Operators$1 +instanceKlass com/sun/tools/javac/comp/Operators$UnaryOperatorHelper$$Lambda$1202 +instanceKlass com/sun/tools/javac/comp/Operators$$Lambda$1201 +instanceKlass com/sun/tools/javac/comp/Operators$$Lambda$1200 +instanceKlass com/sun/tools/javac/comp/Operators$$Lambda$1199 +instanceKlass com/sun/tools/javac/util/List$$Lambda$1198 +instanceKlass com/sun/tools/javac/util/List$$Lambda$1197 +instanceKlass com/sun/tools/javac/util/List$$Lambda$1196 +instanceKlass com/sun/tools/javac/util/List$$Lambda$1195 +instanceKlass com/sun/tools/javac/comp/Operators$$Lambda$1194 +instanceKlass com/sun/tools/javac/comp/Operators$OperatorHelper$$Lambda$1193 +instanceKlass com/sun/tools/javac/comp/Operators$OperatorHelper$$Lambda$1192 +instanceKlass com/sun/tools/javac/comp/Operators$OperatorHelper$$Lambda$1191 +instanceKlass com/sun/tools/javac/comp/Operators$BinaryOperatorHelper$$Lambda$1190 +instanceKlass com/sun/tools/javac/comp/Operators$$Lambda$1189 +instanceKlass com/sun/tools/javac/comp/Operators$$Lambda$1188 +instanceKlass com/sun/tools/javac/comp/Operators$$Lambda$1187 +instanceKlass com/sun/tools/javac/code/Types$MembersClosureCache$MembersScope$$Lambda$1186 +instanceKlass org/gradle/internal/compiler/java/listeners/classnames/ClassNameCollector$$Lambda$1185 +instanceKlass org/gradle/util/internal/RelativePathUtil +instanceKlass org/gradle/api/internal/tasks/compile/CompilationSourceDirs$$Lambda$1184 +instanceKlass org/gradle/api/internal/tasks/compile/CompilationSourceDirs$$Lambda$1183 +instanceKlass org/gradle/api/internal/tasks/compile/CompilationSourceDirs$$Lambda$1182 +instanceKlass com/sun/tools/javac/jvm/ClassFile$NameAndType +instanceKlass com/sun/tools/javac/jvm/ClassWriter$1 +instanceKlass com/sun/tools/javac/jvm/ClassWriter$StackMapTableFrame +instanceKlass com/sun/tools/javac/jvm/Code$StackMapFrame +instanceKlass com/sun/tools/javac/jvm/Code$Chain +instanceKlass com/sun/tools/javac/code/Types$UniqueType +instanceKlass com/sun/tools/javac/model/FilteredMemberList$$Lambda$1181 +instanceKlass com/sun/tools/javac/jvm/Code$LocalVar$Range +instanceKlass com/sun/tools/javac/jvm/Items +instanceKlass com/sun/tools/javac/jvm/Code$LocalVar +instanceKlass com/sun/tools/javac/jvm/Code$State +instanceKlass com/sun/tools/javac/jvm/Gen$GenContext +instanceKlass com/sun/tools/javac/jvm/Gen$3 +instanceKlass com/sun/tools/javac/comp/Lower$2 +instanceKlass com/sun/tools/javac/util/Constants +instanceKlass org/gradle/internal/compiler/java/listeners/constants/ConstantsTreeVisitor$$Lambda$1180 +instanceKlass org/gradle/internal/compiler/java/listeners/constants/ConstantsVisitorContext +instanceKlass java/text/BreakIterator +instanceKlass com/sun/tools/javac/api/JavacScope +instanceKlass com/sun/source/util/DocTreePath +instanceKlass javax/annotation/processing/ProcessingEnvironment +instanceKlass com/sun/source/util/TreePath +instanceKlass com/sun/tools/javac/resources/CompilerProperties$Errors +instanceKlass com/sun/tools/javac/util/Bits$1 +instanceKlass com/sun/tools/javac/util/Bits +instanceKlass com/sun/tools/javac/comp/Flow$BaseAnalyzer$PendingExit +instanceKlass com/sun/tools/javac/comp/DeferredAttr$6 +instanceKlass com/sun/tools/javac/comp/DeferredAttr$FilterScanner$$Lambda$1179 +instanceKlass com/sun/tools/javac/comp/Infer$FreeTypeListener +instanceKlass com/sun/tools/javac/code/Kinds$1 +instanceKlass com/sun/tools/javac/code/Kinds +instanceKlass com/sun/tools/javac/code/Types$MethodFilter +instanceKlass com/sun/tools/javac/code/Types$CandidatesCache$Entry +instanceKlass com/sun/tools/javac/code/Types$DescriptorFilter +instanceKlass com/sun/tools/javac/comp/Resolve$MostSpecificCheck +instanceKlass com/sun/tools/javac/comp/DeferredAttr$DeferredType$SpeculativeCache +instanceKlass com/sun/tools/javac/code/DeferredCompletionFailureHandler$2$$Lambda$1178 +instanceKlass com/sun/tools/javac/comp/DeferredAttr$$Lambda$1177 +instanceKlass com/sun/tools/javac/comp/ArgumentAttr$$Lambda$1176 +instanceKlass com/sun/tools/javac/comp/ArgumentAttr$UniquePos +instanceKlass com/sun/tools/javac/comp/ArgumentAttr$$Lambda$1175 +instanceKlass com/sun/tools/javac/comp/Resolve$MethodCheckContext +instanceKlass com/sun/tools/javac/comp/Resolve$17 +instanceKlass com/sun/tools/javac/code/Types$ImplementationCache$Entry +instanceKlass com/sun/tools/javac/code/Types$TypeMapping$$Lambda$1174 +instanceKlass com/sun/tools/javac/resources/CompilerProperties$Warnings +instanceKlass com/sun/tools/javac/code/Flags +instanceKlass com/sun/tools/javac/comp/Resolve$MethodResolutionContext$Candidate +instanceKlass com/sun/tools/javac/comp/Resolve$LookupFilter +instanceKlass com/sun/tools/javac/comp/Resolve$5 +instanceKlass com/sun/tools/javac/comp/Resolve$$Lambda$1173 +instanceKlass com/sun/tools/javac/comp/Resolve$MethodResolutionContext +instanceKlass com/sun/tools/javac/comp/Check$ClashFilter +instanceKlass com/sun/tools/javac/code/Symbol$1 +instanceKlass com/sun/tools/javac/code/Scope$CompoundScope$$Lambda$1172 +instanceKlass com/sun/tools/javac/code/Scope$CompoundScope$$Lambda$1171 +instanceKlass com/sun/tools/javac/code/Types$$Lambda$1170 +instanceKlass com/sun/tools/javac/comp/Check$DefaultMethodClashFilter +instanceKlass com/sun/tools/javac/main/JavaCompiler$2 +instanceKlass com/sun/tools/javac/code/TypeAnnotations$$Lambda$1169 +instanceKlass com/sun/tools/javac/code/TypeAnnotations$$Lambda$1168 +instanceKlass com/sun/tools/javac/code/TypeAnnotations$$Lambda$1167 +instanceKlass com/sun/tools/javac/code/TypeAnnotations$1 +instanceKlass com/sun/tools/javac/code/TypeAnnotationPosition +instanceKlass com/sun/tools/javac/code/Types$25 +instanceKlass com/sun/tools/javac/jvm/ClassReader$CompleterDeproxy +instanceKlass com/sun/tools/javac/comp/Check$$Lambda$1166 +instanceKlass com/sun/tools/javac/comp/Check$$Lambda$1165 +instanceKlass com/sun/tools/javac/comp/TypeEnter$$Lambda$1164 +instanceKlass com/sun/tools/javac/code/TypeAnnotations$$Lambda$1163 +instanceKlass com/sun/tools/javac/code/TypeAnnotations$$Lambda$1162 +instanceKlass com/sun/tools/javac/comp/Annotate$$Lambda$1161 +instanceKlass com/sun/tools/javac/comp/Annotate$$Lambda$1160 +instanceKlass com/sun/tools/javac/code/SymbolMetadata +instanceKlass com/sun/tools/javac/code/Symbol$VarSymbol$$Lambda$1159 +instanceKlass com/sun/tools/javac/code/TypeTag$1 +instanceKlass com/sun/tools/javac/code/Scope$ScopeImpl$$Lambda$1158 +instanceKlass com/sun/tools/javac/util/Iterators$2 +instanceKlass com/sun/tools/javac/code/Scope$FilterImportScope$$Lambda$1157 +instanceKlass com/sun/tools/javac/code/Scope$FilterImportScope$$Lambda$1156 +instanceKlass com/sun/tools/javac/code/Scope$FilterImportScope$$Lambda$1155 +instanceKlass com/sun/tools/javac/code/Scope$CompoundScope$$Lambda$1154 +instanceKlass com/sun/tools/javac/code/Scope$CompoundScope$$Lambda$1153 +instanceKlass com/sun/tools/javac/comp/Annotate$$Lambda$1152 +instanceKlass com/sun/tools/javac/util/Iterators$CompoundIterator +instanceKlass com/sun/tools/javac/util/Iterators$1 +instanceKlass com/sun/tools/javac/util/Iterators +instanceKlass com/sun/tools/javac/code/Scope$NamedImportScope$$Lambda$1151 +instanceKlass com/sun/tools/javac/code/Scope$NamedImportScope$$Lambda$1150 +instanceKlass com/sun/tools/javac/code/Scope$ScopeImpl$2 +instanceKlass com/sun/tools/javac/code/Scope$ScopeImpl$$Lambda$1149 +instanceKlass com/sun/tools/javac/comp/TypeEnter$1 +instanceKlass com/sun/tools/javac/jvm/ClassReader$26 +instanceKlass com/sun/tools/javac/jvm/Code$1 +instanceKlass com/sun/tools/javac/code/Symtab$$Lambda$1148 +instanceKlass com/sun/tools/javac/code/Symtab$$Lambda$1147 +instanceKlass com/sun/tools/javac/util/JCDiagnostic$1 +instanceKlass java/util/stream/ReferencePipeline$$Lambda$1146 +instanceKlass com/sun/tools/javac/util/JCDiagnostic$Factory$$Lambda$1145 +instanceKlass com/sun/tools/javac/code/ClassFinder$$Lambda$1144 +instanceKlass com/sun/tools/javac/comp/Attr$10 +instanceKlass com/sun/tools/javac/code/Scope$FilterImportScope$SymbolImporter +instanceKlass com/sun/tools/javac/comp/TypeEnter$ImportsPhase$$Lambda$1143 +instanceKlass com/sun/tools/javac/comp/TypeEnter$ImportsPhase$$Lambda$1142 +instanceKlass com/sun/tools/javac/code/Scope$ImportFilter +instanceKlass com/sun/tools/javac/comp/Check$5 +instanceKlass com/sun/tools/javac/comp/AttrContext +instanceKlass com/sun/tools/javac/comp/Enter$$Lambda$1141 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass com/sun/tools/javac/comp/Enter$$Lambda$1140 +instanceKlass com/sun/tools/javac/code/Scope$ScopeImpl$1 +instanceKlass com/sun/tools/javac/code/Scope$ScopeImpl$$Lambda$1139 +instanceKlass com/sun/tools/javac/api/ClientCodeWrapper$WrappedFileObject +instanceKlass com/sun/tools/javac/code/ClassFinder$2 +instanceKlass com/sun/tools/javac/code/ClassFinder$1 +instanceKlass com/sun/tools/javac/code/ClassFinder$$Lambda$1138 +instanceKlass java/nio/file/Files$$Lambda$1137 +instanceKlass java/nio/file/Files$2 +instanceKlass jdk/nio/zipfs/JarFileSystem$$Lambda$1136 +instanceKlass com/sun/tools/javac/file/JavacFileManager$ArchiveContainer +instanceKlass com/sun/tools/javac/code/ClassFinder$$Lambda$1135 +instanceKlass com/sun/tools/javac/comp/Modules$$Lambda$1134 +instanceKlass com/sun/tools/javac/comp/Modules$$Lambda$1133 +instanceKlass java/util/stream/Collectors$$Lambda$1132 +instanceKlass java/util/stream/Collectors$$Lambda$1131 +instanceKlass java/util/stream/Collectors$$Lambda$1130 +instanceKlass java/util/stream/Collectors$$Lambda$1129 +instanceKlass com/sun/tools/javac/comp/Modules$$Lambda$1128 +instanceKlass com/sun/tools/javac/comp/Modules$$Lambda$1127 +instanceKlass com/sun/tools/javac/jvm/ClassReader$AnnotationDeproxy +instanceKlass com/sun/tools/javac/jvm/ClassReader$ProxyVisitor +instanceKlass com/sun/tools/javac/util/Pair +instanceKlass javax/lang/model/element/ModuleElement$OpensDirective +instanceKlass com/sun/tools/javac/jvm/ClassReader$InterimUsesDirective +instanceKlass com/sun/tools/javac/jvm/ClassReader$UsesProvidesCompleter +instanceKlass com/sun/tools/javac/jvm/ClassReader$InterimProvidesDirective +instanceKlass com/sun/tools/javac/comp/Modules$$Lambda$1126 +instanceKlass com/sun/tools/javac/comp/Modules$$Lambda$1125 +instanceKlass javax/lang/model/element/ModuleElement$ExportsDirective +instanceKlass com/sun/tools/javac/jvm/ClassReader$SourceFileObject +instanceKlass com/sun/tools/javac/comp/Modules$$Lambda$1124 +instanceKlass com/sun/tools/javac/comp/Modules$$Lambda$1123 +instanceKlass com/sun/tools/javac/comp/Modules$$Lambda$1122 +instanceKlass com/sun/tools/javac/comp/Modules$$Lambda$1121 +instanceKlass com/sun/tools/javac/comp/Modules$3 +instanceKlass com/sun/tools/javac/code/ModuleFinder$1 +instanceKlass com/sun/tools/javac/file/Locations$SystemModulesLocationHandler$$Lambda$1120 +instanceKlass com/sun/tools/javac/file/JavacFileManager$DirectoryContainer +instanceKlass javax/tools/StandardLocation$2 +instanceKlass com/sun/tools/javac/comp/Modules$$Lambda$1119 +instanceKlass com/sun/tools/javac/parser/LazyDocCommentTable$Entry +instanceKlass com/sun/tools/javac/util/Position$LineMapImpl +instanceKlass com/sun/tools/javac/util/Position$LineMap +instanceKlass com/sun/tools/javac/util/Position +instanceKlass com/sun/tools/javac/tree/TreeMaker$$Lambda$1118 +instanceKlass com/sun/tools/javac/tree/TreeInfo$2 +instanceKlass com/sun/tools/javac/tree/TreeInfo +instanceKlass com/sun/tools/javac/parser/JavacParser$1 +instanceKlass java/util/regex/Pattern$$Lambda$1117 +instanceKlass com/sun/tools/javac/parser/JavaTokenizer$BasicComment +instanceKlass com/sun/tools/javac/util/IntHashTable +instanceKlass com/sun/tools/javac/parser/LazyDocCommentTable +instanceKlass com/sun/tools/javac/parser/JavaTokenizer$1 +instanceKlass com/sun/tools/javac/util/ArrayUtils +instanceKlass com/sun/tools/javac/parser/JavacParser$$Lambda$1116 +instanceKlass com/sun/tools/javac/parser/JavacParser$AbstractEndPosTable +instanceKlass com/sun/tools/javac/parser/JavacParser$ErrorRecoveryAction +instanceKlass com/sun/tools/javac/tree/EndPosTable +instanceKlass com/sun/tools/javac/parser/JavacParser +instanceKlass com/sun/tools/javac/parser/UnicodeReader +instanceKlass java/util/regex/Pattern$2 +instanceKlass jdk/internal/math/FloatingDecimal$HexFloatPattern +instanceKlass com/sun/tools/javac/parser/Scanner +instanceKlass com/sun/source/tree/LineMap +instanceKlass com/sun/tools/javac/file/BaseFileManager$ContentCacheEntry +instanceKlass com/sun/tools/javac/util/DiagnosticSource +instanceKlass com/sun/source/util/TaskEvent +instanceKlass com/sun/tools/javac/code/Source$1 +instanceKlass com/sun/tools/javac/main/Arguments$$Lambda$1115 +instanceKlass com/sun/tools/javac/main/Arguments$$Lambda$1114 +instanceKlass com/sun/tools/javac/main/Arguments$$Lambda$1113 +instanceKlass com/sun/tools/javac/main/Arguments$$Lambda$1112 +instanceKlass com/sun/tools/javac/code/DeferredCompletionFailureHandler$1$$Lambda$1111 +instanceKlass com/sun/tools/javac/api/JavacTaskImpl$$Lambda$1110 +instanceKlass com/sun/tools/javac/api/ClientCodeWrapper$WrappedTaskListener +instanceKlass org/gradle/internal/compiler/java/listeners/constants/ConstantsCollector +instanceKlass com/sun/tools/javac/platform/PlatformDescription +instanceKlass com/sun/tools/javac/util/ForwardingDiagnosticFormatter$ForwardingConfiguration +instanceKlass com/sun/tools/javac/code/Types$DefaultSymbolVisitor +instanceKlass com/sun/tools/javac/util/ForwardingDiagnosticFormatter +instanceKlass com/sun/tools/javac/main/JavaCompiler$$Lambda$1109 +instanceKlass com/sun/tools/javac/code/ModuleFinder$ModuleNameFromSourceReader +instanceKlass com/sun/tools/javac/main/JavaCompiler$$Lambda$1108 +instanceKlass com/sun/tools/javac/comp/Modules$PackageNameFinder +instanceKlass com/sun/tools/javac/api/MultiTaskListener +instanceKlass com/sun/tools/javac/jvm/Code +instanceKlass com/sun/tools/javac/jvm/Pool +instanceKlass com/sun/tools/javac/jvm/StringConcat +instanceKlass com/sun/tools/javac/jvm/Gen$GenFinalizer +instanceKlass com/sun/tools/javac/jvm/Items$Item +instanceKlass com/sun/tools/javac/parser/JavaTokenizer +instanceKlass com/sun/tools/javac/parser/ScannerFactory +instanceKlass com/sun/tools/javac/parser/Tokens$Token +instanceKlass com/sun/tools/javac/parser/Tokens +instanceKlass com/sun/tools/javac/parser/ReferenceParser +instanceKlass com/sun/source/doctree/DocTreeVisitor +instanceKlass com/sun/tools/javac/tree/DocCommentTable +instanceKlass com/sun/source/util/DocSourcePositions +instanceKlass com/sun/source/tree/Scope +instanceKlass com/sun/source/util/SourcePositions +instanceKlass com/sun/source/util/Trees +instanceKlass com/sun/source/doctree/DeprecatedTree +instanceKlass com/sun/tools/javac/parser/Tokens$Comment +instanceKlass com/sun/source/doctree/DocCommentTree +instanceKlass com/sun/source/doctree/IndexTree +instanceKlass com/sun/source/doctree/LinkTree +instanceKlass com/sun/source/doctree/AttributeTree +instanceKlass com/sun/source/doctree/DocTypeTree +instanceKlass com/sun/source/doctree/SeeTree +instanceKlass com/sun/source/doctree/ReturnTree +instanceKlass com/sun/source/doctree/EndElementTree +instanceKlass com/sun/source/doctree/DocRootTree +instanceKlass com/sun/source/doctree/AuthorTree +instanceKlass com/sun/source/doctree/CommentTree +instanceKlass com/sun/source/doctree/LiteralTree +instanceKlass com/sun/source/doctree/ReferenceTree +instanceKlass com/sun/source/doctree/HiddenTree +instanceKlass com/sun/source/doctree/ProvidesTree +instanceKlass com/sun/source/doctree/ParamTree +instanceKlass com/sun/source/doctree/InheritDocTree +instanceKlass com/sun/source/doctree/IdentifierTree +instanceKlass com/sun/source/doctree/ErroneousTree +instanceKlass com/sun/source/doctree/EntityTree +instanceKlass com/sun/source/doctree/UsesTree +instanceKlass com/sun/source/doctree/SinceTree +instanceKlass com/sun/source/doctree/TextTree +instanceKlass com/sun/source/doctree/SerialFieldTree +instanceKlass com/sun/source/doctree/SummaryTree +instanceKlass com/sun/source/doctree/ValueTree +instanceKlass com/sun/source/doctree/SerialTree +instanceKlass com/sun/source/doctree/SerialDataTree +instanceKlass com/sun/source/doctree/VersionTree +instanceKlass com/sun/source/doctree/ThrowsTree +instanceKlass com/sun/source/doctree/UnknownInlineTagTree +instanceKlass com/sun/source/doctree/InlineTagTree +instanceKlass com/sun/source/doctree/UnknownBlockTagTree +instanceKlass com/sun/source/doctree/BlockTagTree +instanceKlass com/sun/source/doctree/StartElementTree +instanceKlass com/sun/source/doctree/DocTree +instanceKlass com/sun/tools/javac/tree/DocTreeMaker +instanceKlass com/sun/source/util/DocTreeFactory +instanceKlass com/sun/tools/javac/parser/Lexer +instanceKlass com/sun/tools/javac/parser/ParserFactory +instanceKlass com/sun/tools/javac/main/DelegatingJavaFileManager +instanceKlass com/sun/tools/javac/jvm/ClassReader$AttributeReader +instanceKlass com/sun/tools/javac/comp/ConstFold +instanceKlass com/sun/tools/javac/comp/Analyzer$2 +instanceKlass com/sun/tools/javac/comp/Analyzer$1 +instanceKlass com/sun/tools/javac/comp/Analyzer$StatementAnalyzer +instanceKlass com/sun/tools/javac/comp/Analyzer$DeferredAnalysisHelper +instanceKlass com/sun/tools/javac/comp/Analyzer +instanceKlass com/sun/tools/javac/comp/Operators$$Lambda$1107 +instanceKlass com/sun/tools/javac/comp/Operators$$Lambda$1106 +instanceKlass com/sun/tools/javac/comp/Operators$$Lambda$1105 +instanceKlass com/sun/tools/javac/comp/Operators$BinaryNumericOperator$$Lambda$1104 +instanceKlass com/sun/tools/javac/comp/Operators$BinaryOperatorHelper$$Lambda$1103 +instanceKlass com/sun/tools/javac/comp/Operators$$Lambda$1102 +instanceKlass com/sun/tools/javac/comp/Operators$UnaryOperatorHelper$$Lambda$1101 +instanceKlass com/sun/tools/javac/comp/Operators$OperatorType$$Lambda$1100 +instanceKlass com/sun/tools/javac/comp/Operators$OperatorType$$Lambda$1099 +instanceKlass com/sun/tools/javac/comp/Operators$OperatorType$$Lambda$1098 +instanceKlass com/sun/tools/javac/comp/Operators$OperatorType$$Lambda$1097 +instanceKlass com/sun/tools/javac/comp/Operators$OperatorType$$Lambda$1096 +instanceKlass com/sun/tools/javac/comp/Operators$OperatorType$$Lambda$1095 +instanceKlass com/sun/tools/javac/comp/Operators$OperatorType$$Lambda$1094 +instanceKlass com/sun/tools/javac/comp/Operators$OperatorType$$Lambda$1093 +instanceKlass com/sun/tools/javac/comp/Operators$OperatorType$$Lambda$1092 +instanceKlass com/sun/tools/javac/comp/Operators$OperatorType$$Lambda$1091 +instanceKlass com/sun/tools/javac/comp/Operators$OperatorType$$Lambda$1090 +instanceKlass com/sun/tools/javac/comp/Operators$UnaryNumericOperator$$Lambda$1089 +instanceKlass com/sun/tools/javac/comp/Operators$OperatorHelper +instanceKlass com/sun/tools/javac/comp/Operators +instanceKlass com/sun/tools/javac/code/Symtab$$Lambda$1088 +instanceKlass com/sun/tools/javac/code/Symtab$2 +instanceKlass com/sun/tools/javac/code/Symtab$1 +instanceKlass com/sun/tools/javac/code/Symbol$MethodSymbol$$Lambda$1087 +instanceKlass com/sun/tools/javac/code/Symtab$$Lambda$1086 +instanceKlass com/sun/tools/javac/code/Symtab$$Lambda$1085 +instanceKlass com/sun/tools/javac/code/Symtab$$Lambda$1084 +instanceKlass com/sun/tools/javac/jvm/JNIWriter +instanceKlass com/sun/tools/javac/code/Types$SignatureGenerator +instanceKlass com/sun/tools/javac/code/Preview +instanceKlass com/sun/tools/javac/jvm/ClassWriter$AttributeWriter +instanceKlass com/sun/tools/javac/util/ByteBuffer +instanceKlass com/sun/tools/javac/jvm/ClassFile +instanceKlass com/sun/tools/javac/util/MandatoryWarningHandler +instanceKlass com/sun/tools/javac/code/ModuleFinder$ModuleLocationIterator +instanceKlass com/sun/tools/javac/code/ModuleFinder +instanceKlass com/sun/tools/javac/comp/Flow +instanceKlass com/sun/tools/javac/comp/Infer$GraphStrategy +instanceKlass com/sun/tools/javac/comp/InferenceContext +instanceKlass javax/lang/model/element/TypeParameterElement +instanceKlass com/sun/tools/javac/comp/Infer$AbstractIncorporationEngine +instanceKlass com/sun/tools/javac/code/Type$UndetVar$UndetVarListener +instanceKlass com/sun/tools/javac/comp/Infer +instanceKlass com/sun/tools/javac/util/Dependencies +instanceKlass com/sun/tools/javac/comp/TypeEnvs +instanceKlass com/sun/tools/javac/code/Lint$AugmentVisitor +instanceKlass com/sun/tools/javac/code/TypeAnnotations +instanceKlass com/sun/tools/javac/code/DeferredLintHandler$1 +instanceKlass com/sun/tools/javac/code/DeferredLintHandler +instanceKlass com/sun/tools/javac/comp/TypeEnter$ImportsPhase$$Lambda$1083 +instanceKlass com/sun/tools/javac/util/GraphUtils$DependencyKind +instanceKlass com/sun/tools/javac/comp/TypeEnter$Phase +instanceKlass com/sun/tools/javac/comp/TypeEnter +instanceKlass com/sun/tools/javac/code/Types$$Lambda$1082 +instanceKlass com/sun/tools/javac/code/Types$CandidatesCache +instanceKlass com/sun/tools/javac/code/Types$ImplementationCache +instanceKlass com/sun/tools/javac/code/Types$3 +instanceKlass com/sun/tools/javac/code/Types$DescriptorCache +instanceKlass com/sun/tools/javac/code/Types +instanceKlass com/sun/tools/javac/tree/TreeMaker$AnnotationBuilder +instanceKlass com/sun/tools/javac/tree/TreeMaker +instanceKlass com/sun/tools/javac/tree/JCTree$Factory +instanceKlass com/sun/tools/javac/comp/DeferredAttr$5 +instanceKlass com/sun/tools/javac/comp/DeferredAttr$4 +instanceKlass com/sun/tools/javac/tree/TreeCopier +instanceKlass com/sun/tools/javac/comp/DeferredAttr$DeferredAttrContext +instanceKlass com/sun/tools/javac/comp/DeferredAttr$DeferredStuckPolicy +instanceKlass com/sun/tools/javac/comp/DeferredAttr$DeferredTypeCompleter +instanceKlass com/sun/tools/javac/comp/Resolve$ReferenceLookupResult +instanceKlass com/sun/tools/javac/api/Formattable$LocalizedString +instanceKlass com/sun/tools/javac/comp/Resolve$8 +instanceKlass com/sun/tools/javac/comp/Resolve$7 +instanceKlass com/sun/tools/javac/comp/Resolve$$Lambda$1081 +instanceKlass com/sun/tools/javac/comp/Resolve$$Lambda$1080 +instanceKlass com/sun/tools/javac/comp/Resolve$6 +instanceKlass com/sun/tools/javac/comp/Resolve$$Lambda$1079 +instanceKlass com/sun/tools/javac/comp/Env +instanceKlass com/sun/tools/javac/comp/Resolve$AbstractMethodCheck +instanceKlass com/sun/tools/javac/comp/Resolve$2 +instanceKlass com/sun/tools/javac/comp/Resolve$LookupHelper +instanceKlass com/sun/tools/javac/code/Scope$ScopeListener +instanceKlass com/sun/tools/javac/comp/Resolve$ReferenceChooser +instanceKlass com/sun/tools/javac/comp/Resolve$LogResolveHelper +instanceKlass com/sun/tools/javac/comp/Resolve$RecoveryLoadClass +instanceKlass com/sun/tools/javac/comp/Resolve +instanceKlass com/sun/tools/javac/comp/Check$$Lambda$1078 +instanceKlass com/sun/tools/javac/comp/Check$1 +instanceKlass com/sun/tools/javac/util/Warner +instanceKlass com/sun/tools/javac/util/Filter +instanceKlass com/sun/tools/javac/comp/Check +instanceKlass com/sun/tools/javac/comp/Modules$1 +instanceKlass com/sun/tools/javac/comp/Modules$$Lambda$1077 +instanceKlass com/sun/tools/javac/util/JCDiagnostic +instanceKlass com/sun/tools/javac/resources/CompilerProperties$Fragments +instanceKlass com/sun/tools/javac/code/Directive +instanceKlass javax/lang/model/element/ModuleElement$RequiresDirective +instanceKlass javax/lang/model/element/ModuleElement$Directive +instanceKlass com/sun/tools/javac/code/Symtab$$Lambda$1076 +instanceKlass com/sun/tools/javac/code/Symtab$$Lambda$1075 +instanceKlass com/sun/tools/javac/code/Symtab$$Lambda$1074 +instanceKlass com/sun/tools/javac/code/Scope$ScopeListenerList +instanceKlass com/sun/tools/javac/code/Scope$Entry +instanceKlass com/sun/tools/javac/comp/Annotate$AnnotationTypeMetadata +instanceKlass com/sun/tools/javac/api/Formattable +instanceKlass com/sun/tools/javac/code/Kinds$KindSelector +instanceKlass com/sun/tools/javac/code/TypeMetadata +instanceKlass javax/lang/model/type/NullType +instanceKlass com/sun/tools/javac/code/Symtab +instanceKlass com/sun/source/util/SimpleTreeVisitor +instanceKlass javax/lang/model/type/IntersectionType +instanceKlass com/sun/tools/javac/comp/Check$NestedCheckContext +instanceKlass javax/lang/model/type/UnionType +instanceKlass com/sun/tools/javac/comp/Resolve$MethodCheck +instanceKlass com/sun/tools/javac/comp/Attr$ResultInfo +instanceKlass com/sun/tools/javac/code/Types$DefaultTypeVisitor +instanceKlass com/sun/source/tree/RequiresTree +instanceKlass com/sun/source/tree/TypeCastTree +instanceKlass com/sun/source/tree/OpensTree +instanceKlass com/sun/source/tree/ErroneousTree +instanceKlass com/sun/source/tree/ThrowTree +instanceKlass com/sun/source/tree/NewClassTree +instanceKlass com/sun/source/tree/BinaryTree +instanceKlass com/sun/source/tree/AnnotatedTypeTree +instanceKlass com/sun/source/tree/UnaryTree +instanceKlass com/sun/source/tree/ModifiersTree +instanceKlass com/sun/source/tree/LiteralTree +instanceKlass com/sun/source/tree/ExportsTree +instanceKlass com/sun/source/tree/UsesTree +instanceKlass com/sun/source/tree/ReturnTree +instanceKlass com/sun/source/tree/ProvidesTree +instanceKlass com/sun/source/tree/DirectiveTree +instanceKlass com/sun/source/tree/TypeParameterTree +instanceKlass com/sun/source/tree/AssertTree +instanceKlass com/sun/source/tree/TryTree +instanceKlass com/sun/source/tree/CaseTree +instanceKlass com/sun/source/tree/ContinueTree +instanceKlass com/sun/source/tree/BreakTree +instanceKlass com/sun/source/tree/IfTree +instanceKlass com/sun/source/tree/CatchTree +instanceKlass com/sun/source/tree/SynchronizedTree +instanceKlass com/sun/source/tree/ImportTree +instanceKlass com/sun/source/tree/BlockTree +instanceKlass com/sun/source/tree/IntersectionTypeTree +instanceKlass com/sun/source/tree/ModuleTree +instanceKlass com/sun/source/tree/ParameterizedTypeTree +instanceKlass com/sun/source/tree/UnionTypeTree +instanceKlass com/sun/source/tree/PrimitiveTypeTree +instanceKlass com/sun/source/tree/ArrayTypeTree +instanceKlass com/sun/source/tree/ParenthesizedTree +instanceKlass com/sun/source/tree/MethodInvocationTree +instanceKlass com/sun/source/tree/ConditionalExpressionTree +instanceKlass com/sun/source/tree/DoWhileLoopTree +instanceKlass com/sun/source/tree/EmptyStatementTree +instanceKlass com/sun/source/tree/PackageTree +instanceKlass com/sun/source/tree/ExpressionStatementTree +instanceKlass com/sun/source/tree/LabeledStatementTree +instanceKlass com/sun/source/tree/MethodTree +instanceKlass com/sun/source/tree/MemberReferenceTree +instanceKlass com/sun/source/tree/ArrayAccessTree +instanceKlass com/sun/source/tree/EnhancedForLoopTree +instanceKlass com/sun/source/tree/InstanceOfTree +instanceKlass com/sun/source/tree/CompoundAssignmentTree +instanceKlass com/sun/source/tree/AssignmentTree +instanceKlass com/sun/source/tree/LambdaExpressionTree +instanceKlass com/sun/source/tree/VariableTree +instanceKlass com/sun/source/tree/SwitchTree +instanceKlass com/sun/source/tree/WhileLoopTree +instanceKlass com/sun/source/tree/ForLoopTree +instanceKlass com/sun/source/tree/WildcardTree +instanceKlass com/sun/tools/javac/comp/Annotate$2 +instanceKlass com/sun/tools/javac/code/TypeMetadata$Entry +instanceKlass com/sun/tools/javac/comp/Check$CheckContext +instanceKlass com/sun/source/tree/NewArrayTree +instanceKlass com/sun/tools/javac/comp/Annotate +instanceKlass com/sun/tools/javac/comp/Annotate$AnnotationTypeCompleter +instanceKlass javax/lang/model/type/PrimitiveType +instanceKlass com/sun/tools/javac/jvm/ClassReader +instanceKlass com/sun/tools/javac/code/ClassFinder$$Lambda$1073 +instanceKlass com/sun/tools/javac/code/ClassFinder +instanceKlass com/sun/tools/javac/util/Convert +instanceKlass com/sun/tools/javac/util/Name +instanceKlass com/sun/tools/javac/util/Name$Table +instanceKlass com/sun/tools/javac/util/Names +instanceKlass com/sun/tools/javac/code/Symbol$Completer$1 +instanceKlass com/sun/tools/javac/main/JavaCompiler$$Lambda$1072 +instanceKlass com/sun/source/tree/ClassTree +instanceKlass com/sun/source/tree/StatementTree +instanceKlass com/sun/source/tree/MemberSelectTree +instanceKlass com/sun/source/tree/IdentifierTree +instanceKlass com/sun/source/tree/CompilationUnitTree +instanceKlass com/sun/tools/javac/main/JavaCompiler +instanceKlass com/sun/tools/javac/code/Attribute$Visitor +instanceKlass javax/lang/model/element/ModuleElement +instanceKlass com/sun/tools/javac/tree/JCTree$Visitor +instanceKlass javax/lang/model/element/AnnotationMirror +instanceKlass com/sun/tools/javac/code/Attribute +instanceKlass javax/lang/model/element/AnnotationValue +instanceKlass com/sun/source/tree/AnnotationTree +instanceKlass javax/lang/model/element/PackageElement +instanceKlass javax/lang/model/element/TypeElement +instanceKlass javax/lang/model/element/QualifiedNameable +instanceKlass com/sun/tools/javac/code/Scope +instanceKlass javax/lang/model/element/Name +instanceKlass com/sun/tools/javac/model/JavacElements +instanceKlass org/gradle/internal/compiler/java/listeners/classnames/ClassNameCollector +instanceKlass org/gradle/api/internal/tasks/compile/filter/AnnotationProcessorFilter +instanceKlass org/gradle/api/internal/tasks/compile/ResourceCleaningCompilationTask +instanceKlass javax/annotation/processing/Processor +instanceKlass org/gradle/api/internal/tasks/compile/AnnotationProcessingCompileTask +instanceKlass org/gradle/internal/compiler/java/listeners/constants/ConstantDependentsConsumer +instanceKlass org/gradle/api/internal/tasks/compile/JdkTools$DefaultIncrementalAwareCompiler$$Lambda$1071 +instanceKlass org/gradle/api/internal/tasks/compile/JdkTools$DefaultIncrementalAwareCompiler$$Lambda$1070 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/api/internal/tasks/compile/JdkTools$DefaultIncrementalAwareCompiler$$Lambda$1069 +instanceKlass org/gradle/api/internal/tasks/compile/JdkTools$DefaultIncrementalAwareCompiler$$Lambda$1068 +instanceKlass org/gradle/internal/compiler/java/IncrementalCompileTask +instanceKlass com/sun/tools/javac/code/DeferredCompletionFailureHandler$1$$Lambda$1067 +instanceKlass com/sun/tools/javac/code/DeferredCompletionFailureHandler$FlipSymbolDescription +instanceKlass com/sun/tools/javac/code/DeferredCompletionFailureHandler$3 +instanceKlass com/sun/tools/javac/code/DeferredCompletionFailureHandler$2 +instanceKlass com/sun/tools/javac/code/Symbol$Completer +instanceKlass com/sun/tools/javac/code/DeferredCompletionFailureHandler$1 +instanceKlass com/sun/tools/javac/code/DeferredCompletionFailureHandler$Handler +instanceKlass com/sun/tools/javac/code/DeferredCompletionFailureHandler +instanceKlass com/sun/tools/javac/parser/Parser +instanceKlass com/sun/tools/javac/api/JavacTaskImpl$Filter +instanceKlass javax/lang/model/util/Types +instanceKlass javax/lang/model/util/Elements +instanceKlass com/sun/tools/javac/main/Arguments$$Lambda$1066 +instanceKlass com/sun/tools/javac/main/Arguments$ErrorReporter +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass com/sun/tools/javac/main/Arguments$$Lambda$1065 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass java/nio/channels/Channels +instanceKlass com/sun/tools/javac/util/StringUtils +instanceKlass com/sun/tools/javac/file/BaseFileManager$3 +instanceKlass com/sun/source/util/TreeScanner +instanceKlass com/sun/source/tree/TreeVisitor +instanceKlass com/sun/tools/doclint/DocLint +instanceKlass com/sun/source/util/Plugin +instanceKlass com/sun/tools/javac/util/ListBuffer$1 +instanceKlass com/sun/tools/javac/main/Arguments +instanceKlass com/sun/tools/javac/api/ClientCodeWrapper$WrappedJavaFileManager +instanceKlass com/sun/tools/javac/api/ClientCodeWrapper$Trusted +instanceKlass com/sun/source/util/TaskListener +instanceKlass com/sun/tools/javac/api/ClientCodeWrapper +instanceKlass javax/tools/ForwardingJavaFileManager +instanceKlass com/sun/tools/javac/file/PathFileObject +instanceKlass com/sun/tools/javac/file/CacheFSInfo$Entry +instanceKlass com/sun/tools/javac/util/Log$$Lambda$1064 +instanceKlass com/sun/tools/javac/util/JCDiagnostic$Factory$$Lambda$1063 +instanceKlass javax/lang/model/element/VariableElement +instanceKlass javax/lang/model/type/NoType +instanceKlass javax/lang/model/type/TypeVariable +instanceKlass javax/lang/model/type/ArrayType +instanceKlass javax/lang/model/type/ErrorType +instanceKlass javax/lang/model/type/DeclaredType +instanceKlass javax/lang/model/type/ReferenceType +instanceKlass javax/lang/model/type/ExecutableType +instanceKlass javax/lang/model/element/ExecutableElement +instanceKlass javax/lang/model/element/Parameterizable +instanceKlass javax/lang/model/type/WildcardType +instanceKlass javax/lang/model/type/TypeMirror +instanceKlass com/sun/tools/javac/code/AnnoConstruct +instanceKlass javax/lang/model/element/Element +instanceKlass javax/lang/model/AnnotatedConstruct +instanceKlass com/sun/tools/javac/util/AbstractDiagnosticFormatter$SimpleConfiguration +instanceKlass com/sun/source/tree/ExpressionTree +instanceKlass com/sun/tools/javac/tree/JCTree +instanceKlass com/sun/source/tree/Tree +instanceKlass com/sun/tools/javac/api/DiagnosticFormatter$Configuration +instanceKlass com/sun/tools/javac/code/Printer +instanceKlass com/sun/tools/javac/code/Symbol$Visitor +instanceKlass com/sun/tools/javac/code/Type$Visitor +instanceKlass com/sun/tools/javac/util/AbstractDiagnosticFormatter +instanceKlass com/sun/tools/javac/util/Options +instanceKlass java/util/ResourceBundle$ResourceBundleProviderHelper$$Lambda$1062 +instanceKlass java/util/ResourceBundle$ResourceBundleProviderHelper$$Lambda$1061 +instanceKlass java/util/ResourceBundle$3 +instanceKlass java/util/ResourceBundle$CacheKeyReference +instanceKlass java/util/ResourceBundle$$Lambda$1060 +instanceKlass com/sun/tools/javac/util/List$3 +instanceKlass com/sun/tools/javac/util/JavacMessages$$Lambda$1059 +instanceKlass com/sun/tools/javac/util/JavacMessages$ResourceBundleHelper +instanceKlass com/sun/tools/javac/util/List$2 +instanceKlass com/sun/tools/javac/util/JavacMessages +instanceKlass com/sun/tools/javac/api/Messages +instanceKlass com/sun/tools/javac/util/JCDiagnostic$DiagnosticInfo +instanceKlass com/sun/tools/javac/util/JCDiagnostic$Factory +instanceKlass com/sun/tools/javac/file/JavacFileManager$$Lambda$1058 +instanceKlass java/util/JumboEnumSet$EnumSetIterator +instanceKlass com/sun/tools/javac/file/Locations$ModuleTable +instanceKlass com/sun/tools/javac/file/Locations$ModuleSourcePathLocationHandler$$Lambda$1057 +instanceKlass com/sun/tools/javac/file/Locations$$Lambda$1056 +instanceKlass javax/tools/StandardJavaFileManager$PathFactory +instanceKlass com/sun/tools/javac/file/Locations$LocationHandler +instanceKlass com/sun/tools/javac/file/Locations +instanceKlass com/sun/tools/javac/file/BaseFileManager$ByteBufferCache +instanceKlass com/sun/tools/javac/file/JavacFileManager$1 +instanceKlass com/sun/tools/javac/main/Option$$Lambda$1055 +instanceKlass com/sun/tools/javac/main/Option$$Lambda$1054 +instanceKlass com/sun/tools/javac/code/Lint +instanceKlass com/sun/tools/javac/util/Assert +instanceKlass com/sun/tools/javac/file/RelativePath +instanceKlass javax/tools/JavaFileObject +instanceKlass javax/tools/FileObject +instanceKlass com/sun/tools/javac/file/JavacFileManager$Container +instanceKlass com/sun/tools/javac/main/OptionHelper +instanceKlass com/sun/tools/javac/file/CacheFSInfo$$Lambda$1053 +instanceKlass com/sun/tools/javac/file/FSInfo +instanceKlass com/sun/tools/javac/util/Context$Factory +instanceKlass javax/tools/Diagnostic +instanceKlass com/sun/tools/javac/api/DiagnosticFormatter +instanceKlass com/sun/tools/javac/util/Log$DiagnosticHandler +instanceKlass com/sun/tools/javac/util/JCDiagnostic$DiagnosticPosition +instanceKlass com/sun/tools/javac/util/AbstractLog +instanceKlass com/sun/tools/javac/util/Context$Key +instanceKlass javax/tools/ToolProvider$$Lambda$1052 +instanceKlass com/sun/tools/javac/file/BaseFileManager +instanceKlass com/sun/tools/javac/util/Context +instanceKlass javax/tools/DiagnosticListener +instanceKlass javax/tools/StandardJavaFileManager +instanceKlass com/sun/source/util/JavacTask +instanceKlass javax/tools/JavaFileManager +instanceKlass com/sun/tools/javac/api/JavacTool +instanceKlass javax/tools/DocumentationTool +instanceKlass javax/tools/ToolProvider +instanceKlass org/gradle/api/internal/tasks/compile/JdkTools$DefaultIncrementalAwareCompiler +instanceKlass org/gradle/api/internal/tasks/compile/IncrementalCompilationAwareJavaCompiler +instanceKlass javax/tools/JavaCompiler +instanceKlass javax/tools/OptionChecker +instanceKlass javax/tools/Tool +instanceKlass org/gradle/api/internal/tasks/compile/JavaHomeBasedJavaCompilerFactory$$Lambda$1051 +instanceKlass org/gradle/api/internal/tasks/compile/JdkTools +instanceKlass org/gradle/api/internal/tasks/compile/JavaCompilerArgumentsBuilder$$Lambda$1050 +instanceKlass org/gradle/api/internal/tasks/compile/JavaCompilerArgumentsBuilder +instanceKlass org/gradle/api/internal/tasks/compile/incremental/compilerapi/constants/ConstantToDependentsMappingBuilder +instanceKlass org/gradle/api/internal/tasks/compile/incremental/compilerapi/constants/ConstantsAnalysisResult +instanceKlass org/gradle/api/internal/tasks/compile/incremental/processing/AnnotationProcessingResult +instanceKlass org/gradle/api/internal/tasks/compile/NormalizingJavaCompiler$$Lambda$1049 +instanceKlass org/gradle/api/internal/tasks/compile/NormalizingJavaCompiler +instanceKlass org/gradle/api/internal/tasks/compile/AnnotationProcessorDiscoveringCompiler +instanceKlass org/gradle/api/internal/tasks/compile/ModuleApplicationNameWritingCompiler +instanceKlass org/gradle/api/internal/tasks/compile/JavaHomeBasedJavaCompilerFactory +instanceKlass javax/tools/JavaCompiler$CompilationTask +instanceKlass org/gradle/api/internal/tasks/compile/JdkJavaCompiler +instanceKlass javax/tools/JavaFileManager$Location +instanceKlass org/gradle/language/base/internal/tasks/StaleOutputCleaner$$Lambda$1048 +instanceKlass org/gradle/internal/execution/history/OutputsCleaner$1 +instanceKlass org/gradle/language/base/internal/tasks/StaleOutputCleaner$$Lambda$1047 +instanceKlass org/gradle/language/base/internal/tasks/StaleOutputCleaner$$Lambda$1046 +instanceKlass org/gradle/language/base/internal/tasks/StaleOutputCleaner$$Lambda$1045 +instanceKlass org/gradle/language/base/internal/tasks/StaleOutputCleaner +instanceKlass org/gradle/api/internal/file/AbstractFileTreeElement +instanceKlass java/nio/file/FileTreeWalker$1 +instanceKlass org/gradle/api/internal/file/collections/DefaultDirectoryWalker$PathVisitor +instanceKlass org/gradle/api/file/ReproducibleFileVisitor +instanceKlass org/gradle/api/file/EmptyFileVisitor +instanceKlass org/gradle/api/internal/file/CompositeFileTree$$Lambda$1044 +instanceKlass org/gradle/api/internal/file/CompositeFileTree$$Lambda$1043 +instanceKlass org/gradle/api/internal/tasks/compile/incremental/recomp/RecompilationSpec$$Lambda$1042 +instanceKlass it/unimi/dsi/fastutil/ints/IntCollections$UnmodifiableCollection +instanceKlass it/unimi/dsi/fastutil/ints/IntArrays$ArrayHashStrategy +instanceKlass it/unimi/dsi/fastutil/ints/IntArrays$Segment +instanceKlass java/util/concurrent/ForkJoinTask +instanceKlass it/unimi/dsi/fastutil/Hash$Strategy +instanceKlass it/unimi/dsi/fastutil/ints/IntArrays +instanceKlass it/unimi/dsi/fastutil/ints/IntBidirectionalIterator +instanceKlass it/unimi/dsi/fastutil/objects/ObjectBidirectionalIterator +instanceKlass it/unimi/dsi/fastutil/BidirectionalIterator +instanceKlass it/unimi/dsi/fastutil/objects/ObjectIterator +instanceKlass it/unimi/dsi/fastutil/ints/IntSets +instanceKlass org/gradle/api/internal/tasks/compile/incremental/recomp/PreviousCompilation$$Lambda$1041 +instanceKlass org/gradle/internal/execution/history/changes/DefaultFileChange$1 +instanceKlass org/gradle/internal/execution/history/changes/CollectingChangeVisitor +instanceKlass org/gradle/api/internal/tasks/compile/incremental/recomp/SourceFileChangeProcessor +instanceKlass org/gradle/api/internal/tasks/compile/incremental/deps/ClassSetAnalysis$ClassSetDiff +instanceKlass com/google/common/collect/AbstractMapBasedMultimap$AsMap$AsMapIterator +instanceKlass org/gradle/api/internal/tasks/compile/incremental/deps/ClassSetAnalysisData$$Lambda$1040 +instanceKlass com/google/common/collect/Lists$ReverseList$1 +instanceKlass org/gradle/api/internal/tasks/compile/incremental/recomp/CurrentCompilationAccess$$Lambda$1039 +instanceKlass org/gradle/api/internal/tasks/compile/incremental/recomp/CurrentCompilationAccess$$Lambda$1038 +instanceKlass org/gradle/api/internal/tasks/compile/incremental/classpath/CachingClassSetAnalyzer$$Lambda$1037 +instanceKlass org/gradle/api/internal/tasks/compile/incremental/classpath/CachingClassSetAnalyzer$$Lambda$1036 +instanceKlass org/gradle/api/internal/tasks/compile/incremental/classpath/CachingClassSetAnalyzer$$Lambda$1034 +instanceKlass org/gradle/api/internal/tasks/compile/incremental/classpath/CachingClassSetAnalyzer$$Lambda$1035 +instanceKlass org/gradle/api/internal/tasks/compile/incremental/classpath/CachingClassSetAnalyzer$$Lambda$1033 +instanceKlass org/gradle/api/internal/tasks/compile/incremental/classpath/CachingClassSetAnalyzer$$Lambda$1031 +instanceKlass org/gradle/api/internal/tasks/compile/incremental/classpath/CachingClassSetAnalyzer$$Lambda$1032 +instanceKlass org/gradle/api/internal/tasks/compile/incremental/classpath/CachingClassSetAnalyzer$$Lambda$1030 +instanceKlass org/gradle/api/internal/tasks/compile/incremental/classpath/CachingClassSetAnalyzer$$Lambda$1029 +instanceKlass org/gradle/api/internal/tasks/compile/incremental/classpath/CachingClassSetAnalyzer$$Lambda$1028 +instanceKlass org/gradle/api/internal/tasks/compile/incremental/recomp/CurrentCompilationAccess$CreateSnapshot +instanceKlass org/gradle/api/internal/tasks/compile/incremental/recomp/CurrentCompilationAccess$$Lambda$1027 +instanceKlass org/gradle/api/internal/tasks/compile/incremental/recomp/DefaultSourceFileClassNameConverter$$Lambda$1026 +instanceKlass org/gradle/api/internal/tasks/compile/incremental/recomp/DefaultSourceFileClassNameConverter +instanceKlass org/gradle/api/internal/tasks/compile/incremental/recomp/FileNameDerivingClassNameConverter +instanceKlass org/gradle/api/internal/tasks/compile/incremental/recomp/RecompilationSpec +instanceKlass org/gradle/api/internal/tasks/compile/incremental/deps/ClassSetAnalysis +instanceKlass org/gradle/api/internal/tasks/compile/incremental/recomp/PreviousCompilation +instanceKlass org/gradle/api/internal/tasks/compile/incremental/recomp/PreviousCompilationData +instanceKlass org/gradle/api/internal/tasks/compile/incremental/compilerapi/CompilerApiData +instanceKlass org/gradle/api/internal/tasks/compile/incremental/compilerapi/constants/ConstantToDependentsMapping +instanceKlass org/gradle/api/internal/tasks/compile/incremental/processing/AnnotationProcessingData +instanceKlass org/gradle/api/internal/tasks/compile/incremental/deps/ClassSetAnalysisData +instanceKlass java/lang/StrictMath +instanceKlass it/unimi/dsi/fastutil/HashCommon +instanceKlass it/unimi/dsi/fastutil/ints/IntSpliterator +instanceKlass it/unimi/dsi/fastutil/ints/IntIterator +instanceKlass java/util/PrimitiveIterator$OfInt +instanceKlass java/util/PrimitiveIterator +instanceKlass it/unimi/dsi/fastutil/Hash +instanceKlass it/unimi/dsi/fastutil/ints/IntSet +instanceKlass it/unimi/dsi/fastutil/ints/IntCollection +instanceKlass it/unimi/dsi/fastutil/ints/IntIterable +instanceKlass org/gradle/internal/serialize/IntSetSerializer +instanceKlass org/gradle/api/internal/tasks/compile/incremental/compilerapi/deps/DependentsSet +instanceKlass org/gradle/api/internal/tasks/compile/incremental/deps/ClassSetAnalysisData$Serializer$$Lambda$1025 +instanceKlass org/gradle/api/internal/tasks/compile/incremental/recomp/PreviousCompilationData$Serializer$$Lambda$1024 +instanceKlass org/gradle/api/internal/tasks/compile/incremental/recomp/CurrentCompilation +instanceKlass org/gradle/api/internal/tasks/compile/CompileJavaBuildOperationReportingCompiler$2 +instanceKlass org/gradle/api/internal/tasks/compile/CompileJavaBuildOperationReportingCompiler$1 +instanceKlass org/gradle/api/internal/tasks/compile/CompileJavaBuildOperationType$Details +instanceKlass org/gradle/api/internal/tasks/compile/CompileJavaBuildOperationReportingCompiler +instanceKlass org/gradle/api/internal/tasks/compile/incremental/IncrementalResultStoringCompiler +instanceKlass org/gradle/api/internal/tasks/compile/incremental/SelectiveCompiler +instanceKlass org/gradle/api/internal/tasks/compile/incremental/recomp/PreviousCompilationAccess +instanceKlass org/gradle/api/internal/tasks/compile/incremental/recomp/CurrentCompilationAccess +instanceKlass org/gradle/api/internal/tasks/compile/incremental/IncrementalCompilerFactory$$Lambda$1023 +instanceKlass org/gradle/api/tasks/compile/JavaCompile$$Lambda$1022 +instanceKlass org/gradle/api/internal/tasks/compile/incremental/recomp/SourceFileClassNameConverter +instanceKlass org/gradle/api/internal/tasks/compile/incremental/classpath/DefaultClassSetAnalyzer +instanceKlass org/gradle/api/internal/tasks/compile/incremental/analyzer/DefaultClassDependenciesAnalyzer +instanceKlass org/gradle/cache/internal/MinimalPersistentCache +instanceKlass org/gradle/api/internal/tasks/compile/incremental/cache/UserHomeScopedCompileCaches$$Lambda$1021 +instanceKlass org/gradle/api/tasks/compile/JavaCompile$$Lambda$1020 +instanceKlass org/gradle/api/tasks/compile/BaseForkOptions$$Lambda$1019 +instanceKlass org/gradle/api/tasks/compile/BaseForkOptions$$Lambda$1018 +instanceKlass org/gradle/api/tasks/compile/BaseForkOptions$$Lambda$1017 +instanceKlass org/gradle/internal/Transformers$ToStringTransformer +instanceKlass org/gradle/internal/Transformers +instanceKlass org/gradle/api/tasks/compile/JavaCompile$$Lambda$1016 +instanceKlass org/gradle/api/internal/tasks/compile/CommandLineJavaCompileSpec +instanceKlass org/gradle/api/internal/tasks/compile/ForkingJavaCompileSpec +instanceKlass org/gradle/api/internal/tasks/compile/AbstractJavaCompileSpecFactory +instanceKlass org/gradle/api/internal/tasks/execution/ExecuteTaskActionBuildOperationType$2 +instanceKlass org/gradle/api/internal/tasks/execution/ExecuteTaskActionBuildOperationType$1 +instanceKlass org/gradle/api/internal/tasks/execution/ExecuteTaskActionBuildOperationType$Result +instanceKlass org/gradle/api/internal/tasks/execution/ExecuteTaskActionBuildOperationType$Details +instanceKlass org/gradle/api/internal/tasks/execution/ExecuteTaskActionBuildOperationType +instanceKlass org/gradle/api/internal/tasks/execution/TaskExecution$3 +instanceKlass org/gradle/api/internal/tasks/execution/TaskExecution$$Lambda$1015 +instanceKlass org/gradle/api/internal/tasks/execution/TaskExecution$$Lambda$1014 +instanceKlass org/gradle/internal/execution/steps/ExecuteStep$2$$Lambda$1013 +instanceKlass org/gradle/internal/execution/steps/ExecuteStep$2 +instanceKlass org/gradle/internal/execution/steps/ExecuteStep$Operation$Details$1 +instanceKlass org/gradle/internal/execution/steps/ExecuteStep$Operation$Details +instanceKlass org/gradle/internal/execution/steps/ExecuteStep$1 +instanceKlass org/gradle/internal/execution/steps/ResolveInputChangesStep$1$$Lambda$1012 +instanceKlass org/gradle/internal/execution/steps/ResolveInputChangesStep$1 +instanceKlass org/gradle/internal/execution/steps/InputChangesContext +instanceKlass org/gradle/internal/execution/history/changes/IncrementalInputChanges +instanceKlass org/gradle/internal/execution/steps/ResolveInputChangesStep$$Lambda$1011 +instanceKlass org/gradle/internal/execution/steps/CancelExecutionStep$$Lambda$1010 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/internal/execution/steps/CreateOutputsStep$2 +instanceKlass org/gradle/internal/execution/steps/CreateOutputsStep$1 +instanceKlass org/gradle/internal/snapshot/AbstractInvalidateChildHandler$$Lambda$1009 +instanceKlass org/gradle/internal/snapshot/AbstractInvalidateChildHandler$$Lambda$1008 +instanceKlass org/gradle/internal/watch/registry/impl/SnapshotCollectingDiffListener$$Lambda$1007 +instanceKlass org/gradle/internal/vfs/impl/AbstractVirtualFileSystem$$Lambda$1006 +instanceKlass org/gradle/internal/vfs/impl/AbstractVirtualFileSystem$$Lambda$1005 +instanceKlass org/gradle/internal/watch/vfs/impl/LocationsWrittenByCurrentBuild$$Lambda$1004 +instanceKlass org/gradle/internal/service/scopes/VirtualFileSystemServices$BuildSessionServices$$Lambda$1003 +instanceKlass org/gradle/internal/execution/steps/BroadcastChangingOutputsStep$1 +instanceKlass org/gradle/internal/execution/steps/BuildCacheStep$$Lambda$1002 +instanceKlass org/gradle/internal/execution/steps/BuildCacheStep$$Lambda$1001 +instanceKlass org/gradle/internal/execution/steps/SkipUpToDateStep$$Lambda$1000 +instanceKlass org/gradle/internal/execution/steps/SkipUpToDateStep$$Lambda$999 +instanceKlass org/gradle/internal/execution/steps/SkipUpToDateStep$$Lambda$998 +instanceKlass org/gradle/internal/execution/steps/ResolveChangesStep$$Lambda$997 +instanceKlass org/gradle/internal/execution/steps/ResolveChangesStep$2 +instanceKlass org/gradle/internal/execution/steps/ResolveChangesStep$$Lambda$996 +instanceKlass org/gradle/internal/execution/steps/ResolveChangesStep$$Lambda$995 +instanceKlass org/gradle/internal/execution/history/changes/InputChangesInternal +instanceKlass org/gradle/internal/execution/history/changes/ExecutionStateChanges$1 +instanceKlass org/gradle/internal/execution/history/changes/NormalizedPathFingerprintCompareStrategy$$Lambda$994 +instanceKlass org/gradle/internal/execution/history/changes/DefaultFileChange +instanceKlass org/gradle/api/tasks/incremental/InputFileDetails +instanceKlass org/gradle/work/FileChange +instanceKlass org/gradle/internal/execution/history/changes/NormalizedPathFingerprintCompareStrategy$$Lambda$993 +instanceKlass org/gradle/internal/execution/history/changes/NormalizedPathFingerprintCompareStrategy$$Lambda$992 +instanceKlass com/google/common/collect/CollectSpliterators$1$$Lambda$991 +instanceKlass com/google/common/collect/CollectSpliterators$1 +instanceKlass com/google/common/collect/AbstractMapBasedMultimap$$Lambda$990 +instanceKlass java/util/LinkedList$LLSpliterator +instanceKlass com/google/common/collect/CollectSpliterators$FlatMapSpliterator$$Lambda$989 +instanceKlass java/util/stream/SortedOps +instanceKlass com/google/common/collect/AbstractMapBasedMultimap$$Lambda$988 +instanceKlass org/gradle/internal/execution/history/changes/FilePathWithType +instanceKlass org/gradle/internal/execution/history/changes/CachingChangeContainer$CachingVisitor +instanceKlass org/gradle/internal/execution/history/changes/DefaultExecutionStateChangeDetector$InputFileChangesWrapper +instanceKlass org/gradle/internal/execution/history/changes/CachingChangeContainer +instanceKlass org/gradle/internal/execution/history/changes/DefaultIncrementalInputProperties$$Lambda$987 +instanceKlass org/gradle/internal/execution/history/changes/DefaultIncrementalInputProperties$$Lambda$986 +instanceKlass com/google/common/collect/ForwardingObject +instanceKlass org/gradle/internal/execution/history/changes/AbstractFingerprintChanges$1 +instanceKlass org/gradle/internal/execution/history/changes/SortedMapDiffUtil +instanceKlass org/gradle/internal/execution/history/changes/OutputFileChanges$3 +instanceKlass org/gradle/internal/execution/history/changes/SummarizingChangeContainer$ChangeDetectingVisitor +instanceKlass org/gradle/internal/execution/history/changes/DefaultExecutionStateChangeDetector$MessageCollectingChangeVisitor +instanceKlass org/gradle/internal/execution/history/changes/ErrorHandlingChangeContainer +instanceKlass org/gradle/internal/execution/history/changes/SummarizingChangeContainer +instanceKlass org/gradle/internal/execution/history/changes/OutputFileChanges$$Lambda$985 +instanceKlass org/gradle/internal/execution/history/changes/OutputFileChanges$$Lambda$984 +instanceKlass org/gradle/internal/execution/history/changes/OutputFileChanges$$Lambda$983 +instanceKlass org/gradle/internal/execution/history/changes/OutputFileChanges$2 +instanceKlass org/gradle/internal/execution/history/changes/OutputFileChanges$1 +instanceKlass org/gradle/internal/execution/history/changes/OutputFileChanges +instanceKlass org/gradle/internal/execution/history/changes/DefaultIncrementalInputProperties$$Lambda$982 +instanceKlass com/google/common/base/Predicates$CompositionPredicate +instanceKlass org/gradle/internal/execution/history/changes/DefaultIncrementalInputProperties$$Lambda$981 +instanceKlass org/gradle/internal/execution/history/changes/ClasspathCompareStrategy$$Lambda$980 +instanceKlass java/util/Map$Entry$$Lambda$979 +instanceKlass org/gradle/internal/execution/history/changes/IgnoredPathCompareStrategy$$Lambda$978 +instanceKlass org/gradle/internal/execution/history/changes/NormalizedPathFingerprintCompareStrategy$$Lambda$977 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/internal/execution/history/changes/TrivialChangeDetector +instanceKlass org/gradle/internal/execution/history/changes/AbstractFingerprintCompareStrategy$$Lambda$976 +instanceKlass org/gradle/internal/execution/history/changes/AbstractFingerprintCompareStrategy$$Lambda$975 +instanceKlass org/gradle/internal/execution/history/changes/AbsolutePathFingerprintCompareStrategy$$Lambda$974 +instanceKlass org/gradle/internal/execution/history/changes/AbsolutePathChangeDetector$ItemComparator +instanceKlass org/gradle/internal/execution/history/changes/AbsolutePathChangeDetector +instanceKlass org/gradle/internal/execution/history/changes/AbstractFingerprintCompareStrategy$2 +instanceKlass org/gradle/internal/execution/history/changes/AbstractFingerprintCompareStrategy$1 +instanceKlass org/gradle/internal/execution/history/changes/TrivialChangeDetector$ItemComparator +instanceKlass org/gradle/internal/execution/history/changes/CompareStrategy$ChangeFactory +instanceKlass org/gradle/internal/execution/history/changes/CompareStrategy$ChangeDetector +instanceKlass org/gradle/internal/execution/history/changes/CompareStrategy +instanceKlass org/gradle/internal/execution/history/changes/FingerprintCompareStrategy +instanceKlass org/gradle/internal/execution/history/changes/PropertyDiffListener +instanceKlass org/gradle/internal/execution/history/changes/AbstractFingerprintChanges +instanceKlass org/gradle/internal/execution/history/changes/InputValueChanges +instanceKlass org/gradle/internal/execution/history/changes/PropertyChanges +instanceKlass org/gradle/internal/execution/history/changes/ImplementationChanges +instanceKlass org/gradle/internal/execution/history/changes/DescriptiveChange +instanceKlass org/gradle/internal/execution/history/changes/Change +instanceKlass org/gradle/internal/execution/history/changes/PreviousSuccessChanges +instanceKlass org/gradle/internal/execution/steps/ResolveChangesStep$$Lambda$973 +instanceKlass org/gradle/internal/execution/steps/ResolveChangesStep$$Lambda$972 +instanceKlass org/gradle/internal/execution/steps/ValidationFinishedContext$ValidationResult +instanceKlass org/gradle/internal/execution/steps/ResolveChangesStep$$Lambda$971 +instanceKlass org/gradle/internal/execution/steps/ResolveChangesStep$$Lambda$970 +instanceKlass org/gradle/internal/execution/steps/ResolveChangesStep$$Lambda$969 +instanceKlass org/gradle/internal/execution/steps/ResolveChangesStep$$Lambda$968 +instanceKlass org/gradle/internal/execution/history/changes/DefaultIncrementalInputProperties +instanceKlass org/gradle/internal/execution/steps/ResolveChangesStep$1 +instanceKlass org/gradle/internal/execution/steps/ResolveChangesStep$3 +instanceKlass org/gradle/internal/execution/steps/ResolveChangesStep$$Lambda$967 +instanceKlass org/gradle/internal/execution/history/changes/ExecutionStateChanges +instanceKlass org/gradle/api/internal/tasks/execution/TaskExecution$$Lambda$966 +instanceKlass org/gradle/internal/execution/steps/ResolveCachingStateStep$1 +instanceKlass org/gradle/internal/execution/steps/ResolveCachingStateStep$$Lambda$965 +instanceKlass org/gradle/internal/execution/steps/ResolveCachingStateStep$$Lambda$964 +instanceKlass org/gradle/internal/execution/caching/CachingState$Enabled +instanceKlass org/gradle/internal/execution/steps/ValidateStep$1 +instanceKlass java/util/stream/Collectors$$Lambda$963 +instanceKlass java/util/stream/Collectors$$Lambda$962 +instanceKlass java/util/stream/Collectors$$Lambda$961 +instanceKlass org/gradle/internal/execution/steps/ValidateStep$$Lambda$960 +instanceKlass org/gradle/internal/execution/steps/ValidateStep$$Lambda$959 +instanceKlass org/gradle/internal/execution/steps/ValidateStep$$Lambda$958 +instanceKlass org/gradle/internal/execution/steps/ValidateStep$$Lambda$957 +instanceKlass org/gradle/internal/execution/steps/ValidateStep$2 +instanceKlass org/gradle/internal/execution/steps/ValidateStep$$Lambda$956 +instanceKlass org/gradle/execution/plan/ExecutionNodeAccessHierarchy$FilteredNodeAccess +instanceKlass org/gradle/execution/plan/LocalTaskNodeExecutor$$Lambda$955 +instanceKlass org/gradle/execution/plan/LocalTaskNodeExecutor$$Lambda$954 +instanceKlass org/gradle/execution/plan/LocalTaskNodeExecutor$$Lambda$953 +instanceKlass org/gradle/execution/plan/LocalTaskNodeExecutor$FilteredTree +instanceKlass org/gradle/execution/plan/LocalTaskNodeExecutor$1$$Lambda$952 +instanceKlass org/gradle/execution/plan/LocalTaskNodeExecutor$1 +instanceKlass org/gradle/execution/plan/LocalTaskNodeExecutor$$Lambda$951 +instanceKlass org/gradle/execution/plan/LocalTaskNodeExecutor$$Lambda$950 +instanceKlass org/gradle/execution/plan/LocalTaskNodeExecutor$$Lambda$949 +instanceKlass org/gradle/execution/plan/LocalTaskNodeExecutor$$Lambda$948 +instanceKlass org/gradle/execution/plan/ValuedVfsHierarchy$1 +instanceKlass org/gradle/execution/plan/ValuedVfsHierarchy$$Lambda$947 +instanceKlass org/gradle/api/internal/tasks/DefaultTaskValidationContext +instanceKlass org/gradle/internal/execution/steps/CaptureStateBeforeExecutionStep$1 +instanceKlass org/gradle/internal/execution/steps/CaptureStateBeforeExecutionStep$Operation$Result$1 +instanceKlass org/gradle/internal/execution/steps/CaptureStateBeforeExecutionStep$Operation$Result +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ShortCircuitEmptyConfigurationResolver$EmptyResolvedConfiguration +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/DefaultArtifactSet$SingleArtifactVariantIdentifier +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/EdgeState$$Lambda$946 +instanceKlass org/gradle/jvm/toolchain/internal/DefaultToolchainJavaCompiler +instanceKlass org/gradle/util/internal/VersionNumber$AbstractScheme$Scanner +instanceKlass org/gradle/util/internal/VersionNumber$AbstractScheme +instanceKlass org/gradle/util/internal/VersionNumber$Scheme +instanceKlass org/gradle/util/internal/VersionNumber +instanceKlass org/gradle/jvm/toolchain/internal/JavaToolchainInput +instanceKlass org/gradle/jvm/toolchain/internal/JavaToolchainQueryService$$Lambda$945 +instanceKlass org/gradle/jvm/toolchain/internal/DefaultJavaLanguageVersion +instanceKlass org/gradle/api/internal/tasks/properties/InputParameterUtils +instanceKlass org/gradle/internal/execution/steps/CaptureStateBeforeExecutionStep$$Lambda$944 +instanceKlass org/gradle/internal/execution/steps/CaptureStateBeforeExecutionStep$2 +instanceKlass org/gradle/internal/execution/steps/CaptureStateBeforeExecutionStep$$Lambda$943 +instanceKlass org/gradle/internal/execution/steps/CaptureStateBeforeExecutionStep$$Lambda$942 +instanceKlass org/gradle/internal/execution/steps/CaptureStateBeforeExecutionStep$$Lambda$941 +instanceKlass org/gradle/internal/execution/steps/CaptureStateBeforeExecutionStep$ImplementationsBuilder +instanceKlass org/gradle/internal/snapshot/AbstractIncompleteFileSystemNode$$Lambda$940 +instanceKlass org/gradle/internal/execution/impl/DefaultOutputSnapshotter$1 +instanceKlass org/gradle/internal/execution/steps/BuildOperationStep$1 +instanceKlass org/gradle/internal/execution/steps/CaptureStateBeforeExecutionStep$Operation$Details$1 +instanceKlass org/gradle/internal/execution/steps/CaptureStateBeforeExecutionStep$Operation$Details +instanceKlass org/gradle/internal/execution/steps/CaptureStateBeforeExecutionStep$$Lambda$939 +instanceKlass org/gradle/internal/execution/steps/CaptureStateBeforeExecutionStep$$Lambda$938 +instanceKlass org/gradle/internal/execution/steps/SkipEmptyWorkStep$3 +instanceKlass org/gradle/internal/execution/steps/SkipEmptyWorkStep$$Lambda$937 +instanceKlass org/gradle/internal/io/IoSupplier$$Lambda$936 +instanceKlass org/gradle/api/internal/changedetection/state/LineEndingNormalizingFileSystemLocationSnapshotHasher$$Lambda$935 +instanceKlass org/gradle/internal/vfs/impl/DefaultSnapshotHierarchy$$Lambda$934 +instanceKlass org/gradle/internal/vfs/impl/DefaultSnapshotHierarchy$$Lambda$933 +instanceKlass org/gradle/internal/snapshot/AbstractInvalidateChildHandler +instanceKlass org/gradle/internal/snapshot/AbstractIncompleteFileSystemNode$1 +instanceKlass org/gradle/internal/watch/vfs/impl/WatchingVirtualFileSystem$VfsChangeLoggingNodeDiffListener +instanceKlass org/gradle/internal/watch/vfs/impl/WatchingVirtualFileSystem$3$$Lambda$932 +instanceKlass org/gradle/internal/watch/vfs/impl/WatchingVirtualFileSystem$3$$Lambda$931 +instanceKlass org/gradle/api/internal/changedetection/state/DefaultResourceSnapshotterCacheService$$Lambda$930 +instanceKlass org/gradle/internal/snapshot/DirectorySnapshot$$Lambda$929 +instanceKlass org/gradle/internal/watch/registry/impl/DefaultFileWatcherRegistry$3 +instanceKlass org/gradle/internal/snapshot/DirectorySnapshot$$Lambda$928 +instanceKlass org/gradle/internal/fingerprint/impl/RelativePathFingerprintingStrategy$$Lambda$927 +instanceKlass org/gradle/internal/watch/registry/impl/DefaultFileWatcherRegistry$1 +instanceKlass org/gradle/internal/snapshot/DirectorySnapshot$2 +instanceKlass net/rubygrapefruit/platform/internal/jni/AbstractFileEventFunctions$ChangeEvent +instanceKlass org/gradle/internal/watch/registry/impl/DefaultFileWatcherProbeRegistry$1 +instanceKlass org/gradle/internal/watch/registry/impl/AbstractFileWatcherUpdater$$Lambda$926 +instanceKlass org/gradle/internal/watch/registry/impl/AbstractFileWatcherUpdater$$Lambda$925 +instanceKlass org/gradle/internal/watch/registry/impl/AbstractFileWatcherUpdater$$Lambda$924 +instanceKlass org/gradle/internal/watch/registry/impl/AbstractFileWatcherUpdater$$Lambda$923 +instanceKlass org/gradle/internal/watch/registry/impl/HierarchicalFileWatcherUpdater$$Lambda$922 +instanceKlass org/gradle/internal/watch/registry/impl/HierarchicalFileWatcherUpdater$$Lambda$921 +instanceKlass org/gradle/internal/watch/registry/impl/HierarchicalFileWatcherUpdater$$Lambda$920 +instanceKlass org/gradle/internal/file/FileHierarchySet$PrefixFileSet$2 +instanceKlass org/gradle/internal/watch/registry/impl/HierarchicalFileWatcherUpdater$$Lambda$919 +instanceKlass org/gradle/api/tasks/util/internal/CachingPatternSpecFactory$CachingSpec$1 +instanceKlass org/gradle/internal/fingerprint/impl/PatternSetSnapshottingFilter$PathBackedFileTreeElement +instanceKlass org/gradle/internal/fingerprint/impl/PatternSetSnapshottingFilter$$Lambda$918 +instanceKlass org/gradle/internal/snapshot/SnapshottingFilter$DirectoryWalkerPredicate +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/internal/vfs/impl/DefaultFileSystemAccess$$Lambda$917 +instanceKlass org/gradle/internal/vfs/impl/DefaultFileSystemAccess$$Lambda$916 +instanceKlass org/gradle/internal/fingerprint/impl/DefaultFileCollectionSnapshotter$SnapshottingVisitor$$Lambda$915 +instanceKlass org/gradle/internal/fingerprint/impl/PatternSetSnapshottingFilter +instanceKlass org/gradle/api/internal/file/FileCollectionBackedFileTree$2 +instanceKlass org/gradle/api/internal/file/FileCollectionBackedFileTree$1 +instanceKlass org/gradle/api/internal/file/FilteredFileTree$$Lambda$914 +instanceKlass org/gradle/api/internal/tasks/execution/TaskExecution$$Lambda$913 +instanceKlass org/gradle/internal/execution/fingerprint/InputFingerprinter$FileValueSupplier +instanceKlass org/gradle/api/internal/tasks/execution/TaskExecution$$Lambda$912 +instanceKlass org/gradle/internal/execution/fingerprint/InputFingerprinter$ValueSupplier +instanceKlass org/gradle/internal/execution/steps/SkipEmptyWorkStep$1 +instanceKlass org/gradle/internal/execution/steps/SkipEmptyWorkStep$$Lambda$911 +instanceKlass org/gradle/internal/execution/steps/SkipEmptyWorkStep$$Lambda$910 +instanceKlass org/gradle/internal/execution/steps/SkipEmptyWorkStep$$Lambda$909 +instanceKlass org/gradle/internal/execution/steps/LoadPreviousExecutionStateStep$1 +instanceKlass org/gradle/internal/execution/history/impl/AbstractInputExecutionState +instanceKlass org/gradle/internal/execution/history/impl/FileSystemSnapshotSerializer$2 +instanceKlass java/util/stream/ReduceOps$5ReducingSink +instanceKlass java/util/stream/IntPipeline$$Lambda$908 +instanceKlass java/util/function/IntBinaryOperator +instanceKlass org/gradle/internal/execution/history/impl/FileSystemSnapshotSerializer$$Lambda$907 +instanceKlass org/gradle/internal/execution/history/impl/FileSystemSnapshotSerializer$SnapshotStack +instanceKlass org/gradle/internal/fingerprint/impl/DefaultFileSystemLocationFingerprint$1 +instanceKlass org/gradle/internal/fingerprint/impl/DefaultFileSystemLocationFingerprint +instanceKlass org/gradle/internal/fingerprint/FileCollectionFingerprint$1 +instanceKlass org/gradle/internal/execution/history/impl/SerializableFileCollectionFingerprint +instanceKlass org/gradle/internal/execution/history/impl/FingerprintMapSerializer$1 +instanceKlass com/google/common/collect/ImmutableSortedMap$1 +instanceKlass org/gradle/internal/snapshot/impl/ImplementationSnapshot +instanceKlass org/gradle/caching/internal/origin/OriginMetadata +instanceKlass org/gradle/internal/execution/steps/LoadPreviousExecutionStateStep$$Lambda$906 +instanceKlass org/gradle/internal/execution/steps/AssignWorkspaceStep$1 +instanceKlass java/io/SerialCallbackContext +instanceKlass org/gradle/internal/execution/steps/AssignWorkspaceStep$$Lambda$905 +instanceKlass org/gradle/internal/execution/workspace/WorkspaceProvider$WorkspaceAction +instanceKlass org/gradle/api/internal/tasks/execution/TaskExecution$4 +instanceKlass org/gradle/internal/execution/steps/IdentifyStep$1 +instanceKlass org/gradle/api/internal/tasks/execution/TaskExecution$$Lambda$904 +instanceKlass org/gradle/internal/execution/UnitOfWork$Identity +instanceKlass org/gradle/internal/execution/fingerprint/impl/DefaultInputFingerprinter$InputFingerprints +instanceKlass org/gradle/internal/execution/fingerprint/InputFingerprinter$Result +instanceKlass org/gradle/internal/execution/fingerprint/impl/DefaultInputFingerprinter$InputCollectingVisitor +instanceKlass java/io/ObjectStreamClass$ClassDataSlot +instanceKlass java/io/ObjectStreamClass$5 +instanceKlass java/io/ObjectStreamClass$4 +instanceKlass org/gradle/internal/execution/steps/IdentifyStep$$Lambda$903 +instanceKlass java/io/ObjectStreamClass$3 +instanceKlass java/io/ObjectStreamClass$MemberSignature +instanceKlass java/io/ObjectStreamClass$1 +instanceKlass org/gradle/internal/execution/impl/DefaultExecutionEngine$1$1 +instanceKlass org/gradle/api/internal/tasks/execution/ExecuteActionsTaskExecuter$$Lambda$902 +instanceKlass java/io/ObjectStreamClass$FieldReflector +instanceKlass org/gradle/internal/execution/ExecutionEngine$CachedRequest +instanceKlass org/gradle/internal/execution/impl/DefaultExecutionEngine$1 +instanceKlass org/gradle/api/internal/tasks/execution/TaskExecution$1 +instanceKlass org/gradle/internal/execution/UnitOfWork$WorkOutput +instanceKlass org/gradle/api/internal/tasks/TaskValidationContext +instanceKlass org/gradle/api/internal/tasks/SnapshotTaskInputsBuildOperationType$Details +instanceKlass java/io/ObjectStreamClass$2 +instanceKlass org/gradle/api/internal/tasks/execution/TaskExecution +instanceKlass java/io/ObjectStreamClass$EntryFuture +instanceKlass java/io/ObjectStreamClass$Caches +instanceKlass java/io/ObjectStreamClass +instanceKlass java/io/Bits +instanceKlass java/io/ObjectOutputStream$ReplaceTable +instanceKlass java/io/ObjectOutputStream$HandleTable +instanceKlass org/gradle/internal/build/event/types/AbstractProgressEvent +instanceKlass org/gradle/internal/build/event/types/DefaultTaskDescriptor +instanceKlass org/gradle/tooling/internal/protocol/events/InternalTaskWithExtraInfoDescriptor +instanceKlass org/gradle/tooling/internal/protocol/events/InternalTaskDescriptor +instanceKlass java/util/stream/Collectors$$Lambda$901 +instanceKlass java/util/stream/Collectors$$Lambda$900 +instanceKlass org/gradle/tooling/internal/provider/runner/OperationDependenciesResolver$$Lambda$899 +instanceKlass org/gradle/tooling/internal/provider/runner/OperationDependenciesResolver$$Lambda$898 +instanceKlass org/gradle/tooling/internal/provider/runner/OperationDependenciesResolver$$Lambda$897 +instanceKlass org/gradle/tooling/internal/provider/runner/ProgressEventConsumer$$Lambda$896 +instanceKlass org/gradle/api/internal/tasks/execution/EventFiringTaskExecuter$1 +instanceKlass org/gradle/api/internal/tasks/execution/EventFiringTaskExecuter +instanceKlass org/gradle/api/internal/tasks/execution/CatchExceptionTaskExecuter +instanceKlass org/gradle/api/internal/tasks/execution/SkipOnlyIfTaskExecuter +instanceKlass org/gradle/api/internal/tasks/execution/SkipTaskWithNoActionsExecuter +instanceKlass org/gradle/api/internal/tasks/execution/ResolveTaskExecutionModeExecuter +instanceKlass org/gradle/api/internal/tasks/execution/FinalizePropertiesTaskExecuter +instanceKlass org/gradle/api/internal/tasks/execution/CleanupStaleOutputsExecuter +instanceKlass org/gradle/api/internal/tasks/TaskExecuterResult +instanceKlass org/gradle/api/internal/tasks/execution/ExecuteActionsTaskExecuter +instanceKlass org/gradle/normalization/internal/DefaultRuntimeClasspathNormalization$DefaultPropertiesFileFilter$$Lambda$895 +instanceKlass org/gradle/normalization/internal/DefaultRuntimeClasspathNormalization$EvaluatableFilter$$Lambda$894 +instanceKlass org/gradle/normalization/internal/InputNormalizationHandlerInternal$CachedState +instanceKlass org/gradle/normalization/internal/DefaultInputNormalizationHandler +instanceKlass org/gradle/normalization/internal/DefaultRuntimeClasspathNormalization$DefaultPropertiesFileFilter$$Lambda$893 +instanceKlass org/gradle/normalization/internal/DefaultRuntimeClasspathNormalization$$Lambda$892 +instanceKlass org/gradle/api/internal/changedetection/state/IgnoringResourceEntryFilter +instanceKlass org/gradle/normalization/internal/DefaultRuntimeClasspathNormalization$EvaluatableFilter$$Lambda$891 +instanceKlass org/gradle/normalization/internal/DefaultRuntimeClasspathNormalization$$Lambda$890 +instanceKlass org/gradle/api/internal/changedetection/state/IgnoringResourceFilter +instanceKlass org/gradle/normalization/internal/DefaultRuntimeClasspathNormalization$RuntimeMetaInfNormalization +instanceKlass org/gradle/normalization/PropertiesFileNormalization +instanceKlass org/gradle/normalization/internal/DefaultRuntimeClasspathNormalization$DefaultPropertiesFileFilter +instanceKlass org/gradle/normalization/internal/DefaultRuntimeClasspathNormalization$EvaluatableFilter +instanceKlass org/gradle/normalization/internal/RuntimeClasspathNormalizationInternal$CachedState +instanceKlass org/gradle/normalization/MetaInfNormalization +instanceKlass org/gradle/normalization/internal/DefaultRuntimeClasspathNormalization +instanceKlass org/gradle/api/internal/changedetection/changes/DefaultTaskExecutionModeResolver +instanceKlass org/gradle/api/internal/tasks/execution/DefaultTaskCacheabilityResolver +instanceKlass org/gradle/internal/file/DefaultReservedFileSystemLocationRegistry$$Lambda$889 +instanceKlass org/gradle/internal/file/DefaultReservedFileSystemLocationRegistry$$Lambda$888 +instanceKlass org/gradle/internal/file/DefaultReservedFileSystemLocationRegistry +instanceKlass org/gradle/api/internal/artifacts/transform/MutableTransformationWorkspaceServices$MutableTransformationWorkspaceProvider +instanceKlass org/gradle/execution/plan/LocalTaskNodeExecutor$$Lambda$887 +instanceKlass org/gradle/api/internal/tasks/TaskExecutionContext$ValidationAction +instanceKlass org/gradle/api/internal/tasks/execution/DefaultTaskExecutionContext +instanceKlass org/gradle/api/execution/TaskActionListener +instanceKlass org/gradle/internal/file/ReservedFileSystemLocationRegistry +instanceKlass org/gradle/api/internal/changedetection/TaskExecutionModeResolver +instanceKlass org/gradle/api/internal/tasks/execution/TaskCacheabilityResolver +instanceKlass org/gradle/api/internal/tasks/TaskExecuter +instanceKlass org/gradle/execution/ProjectExecutionServiceRegistry$DefaultNodeExecutionContext +instanceKlass org/gradle/execution/plan/DefaultExecutionPlan$$Lambda$886 +instanceKlass org/gradle/execution/plan/Node$$Lambda$885 +instanceKlass org/gradle/execution/plan/ValuedVfsHierarchy$2 +instanceKlass org/gradle/execution/plan/ExecutionNodeAccessHierarchy$DefaultNodeAccess +instanceKlass org/gradle/execution/plan/ExecutionNodeAccessHierarchy$NodeAccess +instanceKlass org/gradle/execution/plan/DefaultNodeValidator$$Lambda$884 +instanceKlass org/gradle/execution/plan/DefaultNodeValidator$$Lambda$883 +instanceKlass org/gradle/problems/BaseProblem +instanceKlass org/gradle/problems/Problem +instanceKlass org/gradle/problems/WithDocumentationLink +instanceKlass org/gradle/problems/WithDescription +instanceKlass org/gradle/problems/WithId +instanceKlass org/gradle/internal/reflect/ProblemRecordingTypeValidationContext +instanceKlass org/gradle/execution/plan/TaskNodeFactory$DefaultTypeOriginInspectorFactory$ProjectScopedTypeOriginInspector$$Lambda$882 +instanceKlass org/gradle/execution/plan/TaskNodeFactory$DefaultTypeOriginInspectorFactory$ProjectScopedTypeOriginInspector$$Lambda$881 +instanceKlass org/gradle/execution/plan/TaskNodeFactory$DefaultTypeOriginInspectorFactory$ProjectScopedTypeOriginInspector$$Lambda$880 +instanceKlass org/gradle/execution/plan/TaskNodeFactory$DefaultTypeOriginInspectorFactory$$Lambda$879 +instanceKlass org/gradle/execution/plan/TaskNodeFactory$DefaultTypeOriginInspectorFactory$ProjectScopedTypeOriginInspector$$Lambda$878 +instanceKlass org/gradle/execution/plan/LocalTaskNode$$Lambda$877 +instanceKlass org/gradle/execution/plan/LocalTaskNode$$Lambda$876 +instanceKlass org/gradle/execution/plan/LocalTaskNode$$Lambda$875 +instanceKlass org/gradle/api/internal/tasks/properties/InputPropertySpec +instanceKlass org/gradle/api/internal/tasks/properties/ValidationActions$7 +instanceKlass org/gradle/internal/fingerprint/OutputNormalizer +instanceKlass org/gradle/api/internal/tasks/properties/CacheableOutputFilePropertySpec +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/api/internal/tasks/properties/OutputUnpacker$$Lambda$874 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/api/internal/tasks/properties/OutputFilePropertySpec +instanceKlass org/gradle/api/internal/tasks/properties/AbstractValidatingProperty +instanceKlass org/gradle/api/internal/tasks/properties/ValidatingProperty +instanceKlass org/gradle/api/internal/tasks/properties/LifecycleAwareValue +instanceKlass org/gradle/api/internal/tasks/properties/AbstractPropertySpec +instanceKlass org/gradle/api/internal/tasks/properties/InputFilePropertySpec +instanceKlass org/gradle/api/internal/tasks/properties/FilePropertySpec +instanceKlass org/gradle/api/internal/tasks/properties/PropertySpec +instanceKlass org/gradle/api/internal/tasks/properties/CompositePropertyVisitor +instanceKlass org/gradle/api/internal/tasks/properties/OutputUnpacker$UnpackedOutputConsumer$1 +instanceKlass org/gradle/api/internal/tasks/properties/OutputFilesCollector +instanceKlass org/gradle/api/internal/tasks/properties/DefaultTaskProperties +instanceKlass org/gradle/api/internal/tasks/properties/TaskProperties +instanceKlass org/gradle/execution/plan/DefaultExecutionPlan$$Lambda$873 +instanceKlass org/gradle/execution/plan/DefaultPlanExecutor$ExecutorWorker$$Lambda$872 +instanceKlass org/gradle/execution/plan/DefaultPlanExecutor$ExecutorWorker$$Lambda$870 +instanceKlass org/gradle/execution/plan/DefaultPlanExecutor$ExecutorWorker$$Lambda$871 +instanceKlass org/gradle/execution/plan/DefaultPlanExecutor$ExecutorWorker$$Lambda$869 +instanceKlass org/gradle/internal/MutableBoolean +instanceKlass org/gradle/internal/MutableReference +instanceKlass org/gradle/execution/plan/DefaultPlanExecutor$ExecutorWorker$$Lambda$868 +instanceKlass org/gradle/execution/plan/DefaultPlanExecutor$ExecutorWorker$$Lambda$867 +instanceKlass org/gradle/execution/plan/DefaultPlanExecutor$ExecutorWorker +instanceKlass org/gradle/execution/taskgraph/DefaultTaskExecutionGraph$InvokeNodeExecutorsAction +instanceKlass org/gradle/execution/taskgraph/DefaultTaskExecutionGraph$BuildOperationAwareExecutionAction +instanceKlass org/gradle/execution/ProjectExecutionServiceRegistry$$Lambda$866 +instanceKlass org/gradle/execution/RunRootBuildWorkBuildOperationType$Details +instanceKlass org/gradle/execution/BuildOperationFiringBuildWorkerExecutor$ExecuteTasks +instanceKlass org/gradle/internal/model/StateTransitionController$$Lambda$865 +instanceKlass org/gradle/internal/build/DefaultBuildLifecycleController$$Lambda$864 +instanceKlass org/gradle/composite/internal/DefaultBuildController$$Lambda$862 +instanceKlass org/gradle/composite/internal/DefaultBuildController$$Lambda$863 +instanceKlass org/gradle/composite/internal/DefaultBuildController$BuildOpRunnable +instanceKlass org/gradle/internal/buildtree/BuildOperationFiringBuildTreeWorkExecutor$1 +instanceKlass org/gradle/composite/internal/DefaultIncludedBuildTaskGraph$DefaultBuildTreeWorkGraph$1$1 +instanceKlass org/gradle/internal/taskgraph/CalculateTreeTaskGraphBuildOperationType$Result +instanceKlass org/gradle/execution/taskgraph/NotifyTaskGraphWhenReadyBuildOperationType$1 +instanceKlass org/gradle/execution/taskgraph/NotifyTaskGraphWhenReadyBuildOperationType$Result +instanceKlass org/gradle/execution/taskgraph/NotifyTaskGraphWhenReadyBuildOperationType +instanceKlass jdk/internal/vm/annotation/ForceInline +instanceKlass org/gradle/configuration/internal/DefaultListenerBuildOperationDecorator$BuildOperationEmittingClosure$1$$Lambda$861 +instanceKlass org/gradle/api/internal/tasks/compile/MinimalJavaCompileOptions +instanceKlass org/codehaus/groovy/runtime/metaclass/DefaultMetaClassInfo$ConstantMetaClassVersioning +instanceKlass org/codehaus/groovy/runtime/metaclass/DefaultMetaClassInfo +instanceKlass org/codehaus/groovy/runtime/BytecodeInterface8 +instanceKlass org/gradle/configuration/internal/DefaultListenerBuildOperationDecorator$BuildOperationEmittingInvocationHandler$1$$Lambda$860 +instanceKlass org/gradle/execution/taskgraph/DefaultTaskExecutionGraph$NotifyTaskGraphWhenReadyDetails +instanceKlass org/gradle/execution/taskgraph/NotifyTaskGraphWhenReadyBuildOperationType$Details +instanceKlass org/gradle/execution/taskgraph/DefaultTaskExecutionGraph$NotifyTaskGraphWhenReady +instanceKlass org/gradle/execution/taskgraph/DefaultTaskExecutionGraph$$Lambda$859 +instanceKlass org/gradle/internal/model/StateTransitionController$$Lambda$858 +instanceKlass org/gradle/internal/build/DefaultBuildLifecycleController$$Lambda$857 +instanceKlass org/gradle/internal/taskgraph/CalculateTaskGraphBuildOperationType$PlannedTask +instanceKlass org/gradle/internal/build/BuildOperationFiringBuildWorkPreparer$PopulateWorkGraph$1 +instanceKlass org/gradle/internal/taskgraph/CalculateTaskGraphBuildOperationType$Result +instanceKlass java/util/IdentityHashMap$IdentityHashMapIterator +instanceKlass org/gradle/execution/plan/DefaultExecutionPlan$$Lambda$856 +instanceKlass com/google/common/collect/CollectSpliterators$FlatMapSpliterator$$Lambda$855 +instanceKlass com/google/common/collect/Streams$$Lambda$854 +instanceKlass com/google/common/collect/CollectSpliterators$FlatMapSpliteratorOfObject$$Lambda$853 +instanceKlass com/google/common/collect/CollectSpliterators$FlatMapSpliterator$Factory +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass com/google/common/collect/CollectSpliterators$FlatMapSpliterator +instanceKlass com/google/common/collect/CollectSpliterators +instanceKlass com/google/common/collect/Streams$$Lambda$852 +instanceKlass com/google/common/math/LongMath +instanceKlass com/google/common/collect/Streams +instanceKlass java/util/TreeMap$TreeMapSpliterator +instanceKlass java/util/AbstractMap$2$1 +instanceKlass org/gradle/execution/plan/OrdinalNodeAccess$$Lambda$851 +instanceKlass org/gradle/execution/plan/OrdinalNodeAccess$$Lambda$850 +instanceKlass org/gradle/execution/plan/OrdinalNodeAccess$$Lambda$849 +instanceKlass org/gradle/execution/plan/OrdinalNode$$Lambda$848 +instanceKlass org/gradle/execution/plan/OrdinalNode$$Lambda$847 +instanceKlass org/gradle/execution/plan/OrdinalNodeAccess$$Lambda$846 +instanceKlass java/util/TreeMap$NavigableSubMap$SubMapIterator +instanceKlass org/gradle/execution/plan/DefaultExecutionPlan$$Lambda$845 +instanceKlass org/gradle/execution/plan/DefaultExecutionPlan$NodeInVisitingSegment +instanceKlass org/gradle/execution/plan/DefaultExecutionPlan$1 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ShortCircuitEmptyConfigurationResolver$EmptyResults +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/DetachedComponentResult +instanceKlass org/gradle/execution/plan/TaskNodeDependencyResolver$$Lambda$844 +instanceKlass org/gradle/api/internal/tasks/CachingTaskDependencyResolveContext$TaskGraphImpl$$Lambda$843 +instanceKlass org/gradle/api/internal/provider/ValueSupplier$TaskProducer +instanceKlass org/gradle/api/internal/AbstractTask$10 +instanceKlass org/gradle/api/attributes/TestSuiteType$Impl +instanceKlass org/gradle/api/internal/attributes/DefaultMutableAttributeContainer$$Lambda$842 +instanceKlass org/gradle/api/plugins/JavaBasePlugin$$Lambda$841 +instanceKlass org/gradle/api/internal/file/copy/DelegatingCopySpecInternal +instanceKlass org/gradle/api/internal/artifacts/ivyservice/moduleconverter/DefaultLocalComponentMetadataBuilder$NestedVariantIdentifier +instanceKlass org/gradle/api/internal/artifacts/dsl/ArtifactFile +instanceKlass org/gradle/api/internal/tasks/TaskDependencyInternal$1 +instanceKlass org/gradle/api/internal/artifacts/dsl/FileSystemPublishArtifact +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfigurationPublications$$Lambda$840 +instanceKlass org/gradle/api/plugins/JavaPlugin$$Lambda$839 +instanceKlass org/gradle/api/internal/artifacts/publish/DecoratingPublishArtifact$$Lambda$838 +instanceKlass org/gradle/api/internal/artifacts/publish/DecoratingPublishArtifact$$Lambda$837 +instanceKlass org/gradle/api/internal/file/collections/FileTreeAdapter$1 +instanceKlass org/gradle/api/internal/file/collections/ReproducibleDirectoryWalker +instanceKlass org/gradle/internal/nativeintegration/services/FileSystems +instanceKlass org/gradle/api/internal/file/collections/DefaultDirectoryWalker +instanceKlass org/gradle/api/internal/file/collections/DirectoryWalker +instanceKlass org/gradle/api/internal/file/collections/DirectoryFileTree +instanceKlass org/gradle/api/internal/file/collections/LocalFileTree +instanceKlass org/gradle/api/internal/file/collections/RandomAccessFileCollection +instanceKlass org/gradle/api/internal/file/collections/PatternFilterableFileTree +instanceKlass org/gradle/api/internal/file/CompositeFileCollection$$Lambda$836 +instanceKlass org/gradle/api/internal/tasks/compile/CompilationSourceDirs$SourceRoots +instanceKlass org/gradle/api/internal/tasks/compile/CompilationSourceDirs +instanceKlass org/gradle/api/internal/artifacts/publish/DecoratingPublishArtifact$$Lambda$835 +instanceKlass org/gradle/api/tasks/bundling/Tar$$Lambda$834 +instanceKlass org/gradle/api/distribution/plugins/DistributionPlugin$$Lambda$833 +instanceKlass org/gradle/api/internal/artifacts/publish/ArchivePublishArtifact$$Lambda$832 +instanceKlass org/gradle/api/internal/artifacts/publish/ArchivePublishArtifact$$Lambda$831 +instanceKlass org/gradle/api/internal/artifacts/publish/ArchivePublishArtifact$$Lambda$830 +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfiguration$$Lambda$829 +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfiguration$$Lambda$828 +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfiguration$$Lambda$827 +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfiguration$$Lambda$826 +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfiguration$$Lambda$825 +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfiguration$$Lambda$824 +instanceKlass org/gradle/internal/component/external/model/ProjectDerivedCapability +instanceKlass org/gradle/api/internal/provider/TransformBackedProvider$$Lambda$823 +instanceKlass org/gradle/jvm/toolchain/internal/DefaultJavaToolchainService$$Lambda$822 +instanceKlass org/gradle/api/plugins/JavaBasePlugin$$Lambda$821 +instanceKlass org/gradle/api/plugins/internal/JvmPluginsHelper$$Lambda$820 +instanceKlass org/gradle/api/plugins/JavaBasePlugin$$Lambda$819 +instanceKlass org/gradle/api/plugins/JavaBasePlugin$$Lambda$818 +instanceKlass org/gradle/api/plugins/JavaBasePlugin$$Lambda$817 +instanceKlass org/gradle/api/plugins/JavaBasePlugin$$Lambda$816 +instanceKlass org/gradle/api/plugins/JavaBasePlugin$$Lambda$815 +instanceKlass org/gradle/api/plugins/JavaBasePlugin$$Lambda$814 +instanceKlass org/gradle/api/tasks/incremental/IncrementalTaskInputs +instanceKlass org/gradle/api/internal/tasks/compile/CompilerForkUtils$$Lambda$813 +instanceKlass org/gradle/api/internal/tasks/compile/CompilerForkUtils +instanceKlass org/gradle/api/tasks/compile/JavaCompile$$Lambda$812 +instanceKlass org/gradle/api/tasks/compile/AbstractCompile$BackwardCompatibilityOutputDirectoryConvention +instanceKlass org/gradle/api/internal/tasks/compile/incremental/recomp/AbstractRecompilationSpecProvider +instanceKlass org/gradle/api/internal/tasks/compile/CleaningJavaCompiler +instanceKlass org/gradle/api/internal/tasks/compile/DefaultJvmLanguageCompileSpec +instanceKlass org/gradle/work/InputChanges +instanceKlass org/gradle/internal/Actions$FilteredAction +instanceKlass org/gradle/api/internal/file/FileCollectionBackedFileTree$$Lambda$811 +instanceKlass org/gradle/api/internal/file/collections/ProviderBackedFileCollection$$Lambda$810 +instanceKlass org/gradle/api/internal/provider/OrElseValueProducer +instanceKlass org/gradle/api/internal/file/collections/UnpackingVisitor +instanceKlass org/gradle/api/internal/file/CompositeFileCollection$$Lambda$809 +instanceKlass org/gradle/api/internal/provider/ValueSupplier$UnknownProducer +instanceKlass org/gradle/api/internal/provider/ValueSupplier$NoProducer +instanceKlass org/gradle/api/internal/tasks/properties/bean/NestedRuntimeBeanNode$ImplementationPropertyValue +instanceKlass org/gradle/api/internal/tasks/properties/bean/AbstractNestedRuntimeBeanNode$BeanPropertyValue$1$1 +instanceKlass org/gradle/api/internal/tasks/properties/bean/AbstractNestedRuntimeBeanNode$1 +instanceKlass org/gradle/api/internal/tasks/properties/bean/AbstractNestedRuntimeBeanNode$BeanPropertyValue$1 +instanceKlass org/gradle/api/internal/tasks/properties/bean/AbstractNestedRuntimeBeanNode$BeanPropertyValue +instanceKlass org/gradle/api/internal/tasks/properties/DefaultTypeMetadataStore$DefaultTypeMetadata +instanceKlass org/gradle/api/internal/tasks/properties/DefaultTypeMetadataStore$DefaultPropertyMetadata +instanceKlass org/gradle/internal/reflect/validation/ReplayingTypeValidationContext$$Lambda$808 +instanceKlass com/google/common/collect/AbstractMapBasedMultimap$Itr +instanceKlass com/google/common/collect/Iterators$ConcatenatedIterator +instanceKlass org/gradle/internal/reflect/annotations/impl/DefaultTypeAnnotationMetadataStore$$Lambda$807 +instanceKlass org/gradle/internal/reflect/annotations/impl/DefaultTypeAnnotationMetadataStore$$Lambda$806 +instanceKlass org/gradle/internal/reflect/annotations/impl/DefaultTypeAnnotationMetadataStore$$Lambda$805 +instanceKlass org/gradle/internal/reflect/annotations/impl/DefaultTypeAnnotationMetadataStore$PropertyAnnotationMetadataBuilder$$Lambda$804 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass com/google/common/collect/SortedIterables +instanceKlass org/gradle/internal/reflect/annotations/impl/DefaultTypeAnnotationMetadata$$Lambda$803 +instanceKlass org/gradle/internal/reflect/annotations/impl/DefaultTypeAnnotationMetadata +instanceKlass com/google/common/collect/AbstractMapBasedMultimap$KeySet$1 +instanceKlass org/gradle/internal/reflect/annotations/impl/DefaultPropertyAnnotationMetadata +instanceKlass org/gradle/internal/reflect/annotations/impl/DefaultTypeAnnotationMetadataStore$$Lambda$802 +instanceKlass org/gradle/internal/reflect/annotations/impl/DefaultTypeAnnotationMetadataStore$$Lambda$801 +instanceKlass org/gradle/internal/reflect/annotations/impl/DefaultTypeAnnotationMetadataStore$PropertyAnnotationMetadataBuilder$$Lambda$800 +instanceKlass com/google/common/collect/MultimapBuilder$LinkedHashSetSupplier +instanceKlass org/gradle/internal/reflect/annotations/impl/DefaultTypeAnnotationMetadataStore$PropertyAnnotationMetadataBuilder$$Lambda$799 +instanceKlass com/google/common/collect/SortedSetMultimap +instanceKlass com/google/common/collect/Multimaps +instanceKlass com/google/common/collect/MultimapBuilder$ArrayListSupplier +instanceKlass com/google/common/collect/MultimapBuilder$MultimapBuilderWithKeys +instanceKlass com/google/common/collect/MultimapBuilder +instanceKlass org/gradle/internal/reflect/annotations/impl/DefaultTypeAnnotationMetadataStore$PropertyAnnotationMetadataBuilder$$Lambda$798 +instanceKlass org/gradle/internal/reflect/annotations/PropertyAnnotationMetadata +instanceKlass org/gradle/internal/reflect/annotations/impl/DefaultTypeAnnotationMetadataStore$$Lambda$797 +instanceKlass org/gradle/internal/reflect/annotations/impl/DefaultTypeAnnotationMetadataStore$PropertyAnnotationMetadataBuilder +instanceKlass org/gradle/internal/reflect/annotations/impl/DefaultTypeAnnotationMetadataStore$$Lambda$796 +instanceKlass org/gradle/internal/reflect/annotations/impl/DefaultTypeAnnotationMetadataStore$$Lambda$795 +instanceKlass org/gradle/internal/reflect/annotations/impl/DefaultTypeAnnotationMetadataStore$$Lambda$794 +instanceKlass org/gradle/internal/reflect/annotations/impl/DefaultTypeAnnotationMetadataStore$TypeAnnotationMetadataVisitor +instanceKlass org/gradle/internal/reflect/annotations/impl/DefaultTypeAnnotationMetadataStore$$Lambda$793 +instanceKlass org/gradle/internal/reflect/annotations/impl/DefaultTypeAnnotationMetadataStore$$Lambda$792 +instanceKlass org/gradle/internal/reflect/validation/ReplayingTypeValidationContext +instanceKlass org/gradle/api/internal/tasks/properties/BeanPropertyContext +instanceKlass org/gradle/internal/reflect/validation/TypeValidationContext$1 +instanceKlass org/gradle/api/internal/tasks/properties/PropertyVisitor$Adapter +instanceKlass org/gradle/execution/plan/DefaultExecutionPlan$$Lambda$791 +instanceKlass org/gradle/execution/plan/MutationInfo +instanceKlass org/gradle/execution/plan/TaskNodeFactory$DefaultTypeOriginInspectorFactory$$Lambda$790 +instanceKlass org/gradle/execution/plan/TaskNodeFactory$DefaultTypeOriginInspectorFactory$ProjectScopedTypeOriginInspector +instanceKlass org/gradle/internal/execution/impl/DefaultWorkValidationContext +instanceKlass org/gradle/execution/TaskSelection +instanceKlass org/gradle/execution/TaskNameResolver$FixedTaskSelectionResult +instanceKlass org/gradle/api/internal/file/DefaultFilePropertyFactory$ResolvingRegularFileTransform +instanceKlass org/gradle/api/plugins/quality/CheckstylePlugin$$Lambda$789 +instanceKlass org/gradle/api/plugins/quality/CheckstylePlugin$$Lambda$788 +instanceKlass org/gradle/api/plugins/quality/CheckstylePlugin$$Lambda$787 +instanceKlass org/gradle/api/plugins/quality/CheckstylePlugin$$Lambda$786 +instanceKlass org/gradle/api/plugins/quality/CheckstylePlugin$$Lambda$785 +instanceKlass org/gradle/api/plugins/quality/CheckstylePlugin$$Lambda$784 +instanceKlass org/gradle/api/plugins/quality/CheckstylePlugin$$Lambda$783 +instanceKlass org/gradle/api/plugins/quality/CheckstylePlugin$$Lambda$782 +instanceKlass org/gradle/api/plugins/quality/CheckstylePlugin$$Lambda$781 +instanceKlass org/gradle/api/internal/file/DefaultProjectLayout$1 +instanceKlass org/gradle/api/reporting/internal/TaskGeneratedSingleFileReport$$Lambda$780 +instanceKlass org/gradle/api/reporting/CustomizableHtmlReport +instanceKlass org/gradle/api/plugins/quality/CheckstyleReports +instanceKlass org/gradle/execution/TaskNameResolver$MultiProjectTaskSelectionResult +instanceKlass org/gradle/execution/taskpath/ResolvedTaskPath +instanceKlass org/gradle/execution/taskpath/ProjectFinderByTaskPath +instanceKlass org/gradle/execution/taskpath/TaskPathResolver +instanceKlass org/gradle/execution/DefaultBuildConfigurationActionExecuter$1 +instanceKlass org/gradle/api/internal/project/DefaultProjectStateRegistry$$Lambda$779 +instanceKlass org/gradle/execution/DefaultBuildConfigurationActionExecuter$$Lambda$778 +instanceKlass org/gradle/initialization/VintageBuildModelController$$Lambda$777 +instanceKlass org/gradle/internal/build/DefaultBuildLifecycleController$DefaultWorkGraphBuilder +instanceKlass org/gradle/internal/build/BuildOperationFiringBuildWorkPreparer$PopulateWorkGraph$2 +instanceKlass org/gradle/internal/taskgraph/CalculateTaskGraphBuildOperationType$Details +instanceKlass org/gradle/internal/build/BuildOperationFiringBuildWorkPreparer$PopulateWorkGraph +instanceKlass org/gradle/internal/build/DefaultBuildLifecycleController$$Lambda$776 +instanceKlass org/gradle/internal/build/DefaultBuildLifecycleController$$Lambda$775 +instanceKlass org/gradle/initialization/VintageBuildModelController$$Lambda$774 +instanceKlass org/gradle/execution/plan/OrdinalNodeAccess +instanceKlass org/gradle/execution/plan/FailureCollector +instanceKlass org/gradle/execution/plan/DefaultExecutionPlan +instanceKlass org/gradle/internal/build/DefaultBuildLifecycleController$$Lambda$773 +instanceKlass org/gradle/internal/build/DefaultBuildLifecycleController$DefaultBuildWorkPlan +instanceKlass org/gradle/execution/plan/BuildWorkPlan +instanceKlass org/gradle/internal/build/DefaultBuildWorkGraphController$DefaultBuildWorkGraph +instanceKlass org/gradle/composite/internal/DefaultBuildController +instanceKlass org/gradle/internal/buildtree/DefaultBuildTreeWorkPreparer$$Lambda$772 +instanceKlass org/gradle/internal/build/BuildLifecycleController$WorkGraphBuilder +instanceKlass org/gradle/composite/internal/DefaultIncludedBuildTaskGraph$DefaultBuildTreeWorkGraphBuilder +instanceKlass org/gradle/composite/internal/DefaultIncludedBuildTaskGraph$DefaultBuildTreeWorkGraph$1$2 +instanceKlass org/gradle/internal/taskgraph/CalculateTreeTaskGraphBuildOperationType$Details +instanceKlass org/gradle/composite/internal/DefaultIncludedBuildTaskGraph$DefaultBuildTreeWorkGraph$1 +instanceKlass org/gradle/internal/buildtree/DefaultBuildTreeWorkPreparer$$Lambda$771 +instanceKlass org/gradle/internal/buildtree/BuildTreeWorkGraph$Builder +instanceKlass org/gradle/api/internal/file/DefaultFilePropertyFactory$ToFileTransformer +instanceKlass org/gradle/initialization/ProjectsEvaluatedNotifier$NotifyProjectsEvaluatedListeners$1 +instanceKlass org/gradle/initialization/NotifyProjectsEvaluatedBuildOperationType$Details +instanceKlass org/gradle/initialization/ProjectsEvaluatedNotifier$NotifyProjectsEvaluatedListeners +instanceKlass org/gradle/initialization/ProjectsEvaluatedNotifier$1 +instanceKlass org/gradle/initialization/NotifyProjectsEvaluatedBuildOperationType$Result +instanceKlass org/gradle/initialization/ProjectsEvaluatedNotifier +instanceKlass org/gradle/api/internal/project/DefaultProjectRegistry$$Lambda$770 +instanceKlass org/gradle/configuration/project/ConfigureProjectBuildOperationType$1 +instanceKlass org/gradle/configuration/project/ConfigureProjectBuildOperationType$Result +instanceKlass org/gradle/configuration/project/ConfigureProjectBuildOperationType +instanceKlass org/gradle/configuration/project/NotifyProjectAfterEvaluatedBuildOperationType$1 +instanceKlass org/gradle/configuration/project/NotifyProjectAfterEvaluatedBuildOperationType$Result +instanceKlass org/gradle/configuration/project/NotifyProjectAfterEvaluatedBuildOperationType +instanceKlass org/gradle/configuration/internal/ExecuteListenerBuildOperationType$1 +instanceKlass org/gradle/configuration/internal/ExecuteListenerBuildOperationType$Result +instanceKlass org/gradle/configuration/internal/ExecuteListenerBuildOperationType +instanceKlass org/gradle/api/distribution/plugins/DistributionPlugin$$Lambda$769 +instanceKlass org/gradle/configuration/internal/DefaultListenerBuildOperationDecorator$ExecuteListenerDetails +instanceKlass org/gradle/configuration/internal/DefaultListenerBuildOperationDecorator$Operation +instanceKlass org/gradle/configuration/project/LifecycleProjectEvaluator$NotifyAfterEvaluate$1 +instanceKlass org/gradle/configuration/project/LifecycleProjectEvaluator$NotifyProjectAfterEvaluatedDetails +instanceKlass org/gradle/configuration/project/NotifyProjectAfterEvaluatedBuildOperationType$Details +instanceKlass org/gradle/configuration/project/LifecycleProjectEvaluator$NotifyAfterEvaluate +instanceKlass java/io/Console +instanceKlass org/gradle/api/plugins/ApplicationPlugin$$Lambda$768 +instanceKlass org/gradle/api/plugins/ApplicationPlugin$$Lambda$767 +instanceKlass org/gradle/api/plugins/ApplicationPlugin$$Lambda$766 +instanceKlass org/gradle/api/tasks/JavaExec$$Lambda$765 +instanceKlass org/gradle/api/internal/provider/Providers$SerializableCallable +instanceKlass org/gradle/process/internal/ProcessArgumentsSpec +instanceKlass org/gradle/process/internal/ProcessStreamsSpec +instanceKlass org/gradle/process/internal/ProcessArgumentsSpec$HasExecutable +instanceKlass org/gradle/api/specs/internal/ClosureSpec +instanceKlass org/codehaus/groovy/runtime/metaclass/ClosureMetaClass$$Lambda$764 +instanceKlass org/gradle/api/artifacts/FileCollectionDependency +instanceKlass org/gradle/api/internal/artifacts/dependencies/SelfResolvingDependencyInternal +instanceKlass org/gradle/api/internal/notations/DependencyClassPathNotationConverter$GeneratedFileCollection +instanceKlass org/gradle/api/internal/AbstractTask$ClosureTaskAction +instanceKlass org/gradle/api/internal/AbstractTask$13 +instanceKlass org/codehaus/groovy/runtime/metaclass/ClosureMetaClass$$Lambda$763 +instanceKlass org/gradle/util/ConfigureUtil +instanceKlass org/gradle/api/java/archives/internal/DefaultManifestMergeDetails +instanceKlass org/gradle/api/java/archives/ManifestMergeDetails +instanceKlass org/gradle/api/java/archives/internal/DefaultManifestMergeSpec +instanceKlass com/github/jengelman/gradle/plugins/shadow/relocation/SimpleRelocator +instanceKlass com/github/jengelman/gradle/plugins/shadow/transformers/ServiceFileTransformer +instanceKlass com/github/jengelman/gradle/plugins/shadow/relocation/RelocateClassContext +instanceKlass com/github/jengelman/gradle/plugins/shadow/relocation/RelocatePathContext +instanceKlass com/github/jengelman/gradle/plugins/shadow/transformers/TransformerContext +instanceKlass org/gradle/api/plugins/BasePlugin$$Lambda$762 +instanceKlass com/github/jengelman/gradle/plugins/shadow/tasks/ShadowJar$3 +instanceKlass com/github/jengelman/gradle/plugins/shadow/tasks/ShadowJar$2 +instanceKlass org/gradle/api/java/archives/ManifestMergeSpec +instanceKlass com/github/jengelman/gradle/plugins/shadow/tasks/DefaultInheritManifest +instanceKlass org/codehaus/groovy/runtime/powerassert/Value +instanceKlass org/codehaus/groovy/runtime/powerassert/ValueRecorder +instanceKlass com/github/jengelman/gradle/plugins/shadow/internal/AbstractDependencyFilter +instanceKlass com/github/jengelman/gradle/plugins/shadow/tasks/ShadowJar$1 +instanceKlass org/slf4j/event/SubstituteLoggingEvent +instanceKlass org/gradle/jvm/tasks/Jar$ExcludeManifestAction +instanceKlass org/gradle/api/file/FileVisitDetails +instanceKlass org/gradle/api/internal/file/collections/GeneratedSingletonFileTree +instanceKlass org/gradle/api/internal/file/collections/GeneratedFiles +instanceKlass org/gradle/api/internal/file/collections/MinimalFileTree$MinimalFileTreeStructureVisitor +instanceKlass org/gradle/jvm/tasks/Jar$$Lambda$761 +instanceKlass org/gradle/jvm/tasks/Jar$$Lambda$760 +instanceKlass org/gradle/api/internal/lambdas/SerializableLambdas$SerializableAction +instanceKlass org/gradle/jvm/tasks/Jar$$Lambda$759 +instanceKlass org/gradle/api/java/archives/internal/DefaultAttributes +instanceKlass org/gradle/api/java/archives/Attributes +instanceKlass org/gradle/api/java/archives/internal/DefaultManifest +instanceKlass org/gradle/api/tasks/bundling/AbstractArchiveTask$$Lambda$758 +instanceKlass org/gradle/api/tasks/AbstractCopyTask$$Lambda$757 +instanceKlass org/gradle/api/tasks/AbstractCopyTask$$Lambda$756 +instanceKlass org/gradle/api/tasks/AbstractCopyTask$$Lambda$755 +instanceKlass org/gradle/api/tasks/AbstractCopyTask$$Lambda$754 +instanceKlass org/gradle/api/tasks/AbstractCopyTask$$Lambda$753 +instanceKlass org/gradle/api/tasks/AbstractCopyTask$$Lambda$752 +instanceKlass org/gradle/api/internal/tasks/DefaultTaskInputPropertyRegistration +instanceKlass org/gradle/api/internal/tasks/TaskInputPropertyRegistration +instanceKlass org/gradle/api/internal/tasks/DefaultTaskInputs$$Lambda$751 +instanceKlass org/gradle/api/tasks/AbstractCopyTask$$Lambda$750 +instanceKlass org/gradle/api/internal/tasks/properties/FileParameterUtils$2 +instanceKlass org/gradle/api/internal/tasks/properties/FileParameterUtils +instanceKlass org/gradle/api/internal/tasks/TaskPropertyUtils +instanceKlass org/gradle/api/internal/tasks/properties/ValidationAction +instanceKlass org/gradle/api/internal/tasks/AbstractTaskFilePropertyRegistration +instanceKlass org/gradle/api/internal/tasks/StaticValue +instanceKlass org/gradle/api/internal/tasks/DefaultTaskInputs$$Lambda$749 +instanceKlass org/gradle/api/tasks/AbstractCopyTask$$Lambda$748 +instanceKlass org/gradle/api/internal/tasks/DefaultTaskOutputs$$Lambda$747 +instanceKlass org/gradle/api/tasks/AbstractCopyTask$$Lambda$746 +instanceKlass org/gradle/api/tasks/AbstractCopyTask$$Lambda$745 +instanceKlass org/gradle/api/internal/file/copy/CopyActionExecuter +instanceKlass com/github/jengelman/gradle/plugins/shadow/internal/GradleVersionUtil +instanceKlass com/github/jengelman/gradle/plugins/shadow/ShadowStats +instanceKlass com/github/jengelman/gradle/plugins/shadow/internal/ZipCompressor +instanceKlass com/github/jengelman/gradle/plugins/shadow/transformers/Transformer +instanceKlass com/github/jengelman/gradle/plugins/shadow/tasks/InheritManifest +instanceKlass com/github/jengelman/gradle/plugins/shadow/relocation/Relocator +instanceKlass com/github/jengelman/gradle/plugins/shadow/internal/DependencyFilter +instanceKlass org/gradle/api/java/archives/internal/ManifestInternal +instanceKlass org/gradle/api/internal/file/copy/ZipCompressor +instanceKlass org/gradle/api/internal/file/archive/compression/ArchiveOutputStreamFactory +instanceKlass org/gradle/util/internal/GUtil$4 +instanceKlass org/gradle/api/internal/tasks/testing/junitplatform/JUnitPlatformTestFramework +instanceKlass org/gradle/api/plugins/JvmTestSuitePlugin$$Lambda$744 +instanceKlass org/gradle/api/plugins/JvmTestSuitePlugin$$Lambda$743 +instanceKlass org/gradle/api/plugins/jvm/internal/DefaultJvmTestSuite$$Lambda$742 +instanceKlass org/gradle/api/plugins/JvmTestSuitePlugin$$Lambda$741 +instanceKlass org/gradle/api/plugins/JvmTestSuitePlugin$$Lambda$740 +instanceKlass org/gradle/jvm/toolchain/internal/JavaToolchainQueryService$$Lambda$739 +instanceKlass org/gradle/jvm/toolchain/internal/DefaultJavaToolchainService$$Lambda$738 +instanceKlass org/gradle/jvm/toolchain/JavaCompiler +instanceKlass org/gradle/jvm/toolchain/internal/JavaToolchain +instanceKlass org/gradle/jvm/toolchain/JavaInstallationMetadata +instanceKlass org/gradle/api/plugins/JavaBasePlugin$$Lambda$737 +instanceKlass org/gradle/api/internal/project/taskfactory/AnnotationProcessingTaskFactory$$Lambda$736 +instanceKlass org/gradle/api/internal/tasks/execution/SelfDescribingSpec +instanceKlass org/gradle/api/internal/tasks/DefaultTaskOutputs$$Lambda$735 +instanceKlass org/gradle/api/internal/project/taskfactory/StandardTaskAction +instanceKlass org/gradle/api/internal/project/taskfactory/DefaultTaskClassInfoStore$StandardTaskActionFactory +instanceKlass org/gradle/api/internal/project/taskfactory/DefaultTaskClassInfoStore$$Lambda$734 +instanceKlass org/gradle/api/internal/AbstractTask$$Lambda$733 +instanceKlass org/gradle/api/internal/lambdas/SerializableLambdas$SerializableFactory +instanceKlass org/gradle/api/internal/AbstractTask$$Lambda$732 +instanceKlass org/gradle/api/internal/tasks/testing/detection/JarFilePackageListener +instanceKlass org/gradle/api/internal/tasks/testing/detection/ClassFileExtractionManager +instanceKlass org/gradle/api/internal/tasks/testing/TestClassRunInfo +instanceKlass org/gradle/api/internal/tasks/testing/detection/AbstractTestFrameworkDetector +instanceKlass org/gradle/api/internal/tasks/testing/WorkerTestClassProcessorFactory +instanceKlass org/gradle/api/internal/tasks/testing/detection/TestFrameworkDetector +instanceKlass org/gradle/api/internal/tasks/testing/junit/JUnitTestFramework +instanceKlass org/gradle/process/internal/JvmOptions +instanceKlass org/gradle/process/internal/DefaultProcessForkOptions +instanceKlass org/gradle/process/internal/DefaultJavaDebugOptions +instanceKlass org/gradle/api/tasks/testing/Test$1 +instanceKlass org/gradle/api/internal/file/DefaultProjectLayout$2 +instanceKlass org/gradle/api/reporting/internal/TaskGeneratedSingleDirectoryReport$$Lambda$731 +instanceKlass org/gradle/api/reporting/internal/TaskGeneratedReport$1 +instanceKlass org/gradle/api/reporting/internal/SimpleReport +instanceKlass org/gradle/api/internal/DefaultCollectionCallbackActionDecorator$1 +instanceKlass org/gradle/api/reporting/internal/DefaultReportContainer$1 +instanceKlass org/gradle/api/reporting/Report$1 +instanceKlass org/gradle/api/tasks/testing/JUnitXmlReport +instanceKlass org/gradle/api/internal/tasks/testing/logging/DefaultTestLogging +instanceKlass org/gradle/api/internal/tasks/testing/logging/DefaultTestLoggingContainer +instanceKlass org/gradle/api/internal/tasks/DefaultTaskLocalState +instanceKlass org/gradle/api/internal/tasks/DefaultTaskDestroyables +instanceKlass org/gradle/api/internal/tasks/TaskDestroyablesInternal +instanceKlass org/gradle/api/internal/tasks/properties/OutputUnpacker$UnpackedOutputConsumer +instanceKlass org/gradle/api/tasks/TaskOutputFilePropertyBuilder +instanceKlass org/gradle/api/internal/tasks/DefaultTaskOutputs +instanceKlass org/gradle/api/internal/tasks/TaskInputsDeprecationSupport +instanceKlass org/gradle/api/internal/FilePropertyContainer +instanceKlass org/gradle/api/internal/tasks/TaskInputFilePropertyRegistration +instanceKlass org/gradle/api/internal/tasks/TaskPropertyRegistration +instanceKlass org/gradle/api/tasks/TaskInputPropertyBuilder +instanceKlass org/gradle/api/internal/tasks/TaskInputFilePropertyBuilderInternal +instanceKlass org/gradle/api/internal/tasks/TaskFilePropertyBuilderInternal +instanceKlass org/gradle/api/tasks/TaskInputFilePropertyBuilder +instanceKlass org/gradle/api/tasks/TaskFilePropertyBuilder +instanceKlass org/gradle/api/tasks/TaskPropertyBuilder +instanceKlass org/gradle/api/internal/tasks/DefaultTaskInputs +instanceKlass org/gradle/internal/logging/slf4j/DefaultContextAwareTaskLogger +instanceKlass org/gradle/api/internal/AbstractTask$8 +instanceKlass org/gradle/api/tasks/TaskAction +instanceKlass org/gradle/api/tasks/options/Option +instanceKlass org/gradle/process/CommandLineArgumentProvider +instanceKlass org/gradle/jvm/toolchain/JavaLauncher +instanceKlass org/gradle/api/internal/tasks/testing/filter/DefaultTestFilter +instanceKlass org/gradle/api/tasks/testing/logging/TestLoggingContainer +instanceKlass org/gradle/api/internal/tasks/testing/junit/result/TestOutputStore +instanceKlass org/gradle/api/internal/tasks/testing/logging/TestCountLogger +instanceKlass org/gradle/api/tasks/testing/logging/TestLogging +instanceKlass org/gradle/api/tasks/testing/TestTaskReports +instanceKlass org/gradle/api/internal/tasks/testing/JvmTestExecutionSpec +instanceKlass org/gradle/api/tasks/testing/TestFrameworkOptions +instanceKlass org/gradle/api/internal/tasks/testing/TestExecuter +instanceKlass org/gradle/api/internal/tasks/testing/TestExecutionSpec +instanceKlass org/gradle/api/internal/project/taskfactory/TaskFactory$1 +instanceKlass org/gradle/api/internal/tasks/DefaultTaskContainer$TaskCreatingProvider$1 +instanceKlass org/gradle/internal/typeconversion/MapKey +instanceKlass org/gradle/api/internal/artifacts/dsl/dependencies/ModuleFactoryHelper +instanceKlass org/gradle/api/internal/artifacts/DependencyResolveContext +instanceKlass org/gradle/api/internal/artifacts/dependencies/DefaultDependencyArtifact +instanceKlass org/gradle/api/artifacts/repositories/ExclusiveContentRepository +instanceKlass org/gradle/api/internal/plugins/DefaultPluginContainer$2 +instanceKlass org/codehaus/groovy/runtime/ConversionHandler +instanceKlass groovy/transform/SelfType +instanceKlass groovy/lang/GeneratedGroovyProxy +instanceKlass groovy/transform/Trait +instanceKlass org/codehaus/groovy/transform/trait/Traits$TraitBridge +instanceKlass org/codehaus/groovy/transform/trait/Traits +instanceKlass org/gradle/api/internal/file/collections/DefaultConfigurableFileCollection$UnresolvedItemsCollector$$Lambda$730 +instanceKlass org/gradle/api/internal/file/copy/CopySpecWrapper +instanceKlass org/gradle/api/internal/file/copy/DefaultCopySpec$DefaultCopySpecResolver +instanceKlass org/gradle/api/file/ExpandDetails +instanceKlass org/gradle/api/file/RelativePath +instanceKlass com/github/jengelman/gradle/plugins/shadow/ShadowApplicationPlugin +instanceKlass org/gradle/api/internal/component/UsageContext +instanceKlass org/gradle/api/component/SoftwareComponentVariant +instanceKlass org/gradle/api/internal/artifacts/dsl/DefaultArtifactHandler$DynamicMethods +instanceKlass org/gradle/api/internal/artifacts/dsl/DefaultArtifactHandler +instanceKlass com/github/jengelman/gradle/plugins/shadow/tasks/ShadowSpec +instanceKlass org/gradle/configuration/project/DefaultProjectConfigurationActionContainer +instanceKlass com/github/jengelman/gradle/plugins/shadow/ShadowJavaPlugin +instanceKlass org/gradle/model/internal/core/ModelView +instanceKlass org/gradle/model/internal/inspect/ExtractedRuleSource +instanceKlass org/gradle/model/internal/core/NodePredicate +instanceKlass org/gradle/api/services/BuildService +instanceKlass org/gradle/api/internal/AbstractTask$TaskInfo +instanceKlass org/gradle/api/internal/tasks/TaskMutator +instanceKlass org/gradle/api/specs/CompositeSpec +instanceKlass org/gradle/api/internal/tasks/TaskStateInternal +instanceKlass org/gradle/api/publish/maven/MavenPublication +instanceKlass org/gradle/api/publish/Publication +instanceKlass org/gradle/api/plugins/ExtensionsSchema +instanceKlass com/github/jengelman/gradle/plugins/shadow/ShadowExtension +instanceKlass org/codehaus/groovy/runtime/callsite/CallSiteArray$$Lambda$729 +instanceKlass sun/reflect/generics/reflectiveObjects/GenericArrayTypeImpl +instanceKlass com/github/jengelman/gradle/plugins/shadow/ShadowBasePlugin +instanceKlass org/xml/sax/Attributes +instanceKlass org/apache/tools/ant/BuildLogger +instanceKlass org/apache/tools/ant/BuildListener +instanceKlass org/xml/sax/Locator +instanceKlass sun/reflect/generics/tree/BooleanSignature +instanceKlass com/github/jengelman/gradle/plugins/shadow/ShadowPlugin +instanceKlass sun/security/util/SignatureFileVerifier +instanceKlass org/gradle/internal/fingerprint/impl/IgnoredPathFileSystemLocationFingerprint$1 +instanceKlass org/gradle/internal/fingerprint/impl/IgnoredPathFileSystemLocationFingerprint +instanceKlass org/gradle/api/internal/changedetection/state/DefaultResourceSnapshotterCacheService$$Lambda$728 +instanceKlass org/gradle/internal/io/IoSupplier +instanceKlass org/gradle/internal/fingerprint/classpath/impl/ClasspathFingerprintingStrategy$ClasspathFingerprintingVisitor$$Lambda$727 +instanceKlass org/gradle/api/internal/changedetection/state/DefaultRegularFileSnapshotContext +instanceKlass org/gradle/internal/fingerprint/classpath/impl/ClasspathFingerprintingStrategy$ClasspathFingerprintingVisitor$1 +instanceKlass org/gradle/internal/fingerprint/hashing/RegularFileSnapshotContext +instanceKlass org/gradle/internal/fingerprint/classpath/impl/ClasspathFingerprintingStrategy$ClasspathFingerprintingVisitor +instanceKlass org/gradle/internal/snapshot/SnapshotUtil$$Lambda$726 +instanceKlass org/gradle/internal/snapshot/FileSystemSnapshot$1 +instanceKlass org/gradle/internal/fingerprint/impl/DefaultCurrentFileCollectionFingerprint +instanceKlass org/gradle/internal/fingerprint/impl/DefaultFileCollectionSnapshotter$1 +instanceKlass org/gradle/internal/snapshot/CompositeFileSystemSnapshot +instanceKlass org/gradle/internal/fingerprint/impl/DefaultFileCollectionSnapshotter$SnapshottingVisitor$$Lambda$725 +instanceKlass org/gradle/internal/fingerprint/impl/DefaultFileCollectionSnapshotter$SnapshottingVisitor +instanceKlass org/gradle/api/internal/initialization/loadercache/DefaultClassLoaderCache$$Lambda$724 +instanceKlass org/gradle/plugin/use/internal/DefaultPluginRequestApplicator$$Lambda$723 +instanceKlass org/gradle/api/plugins/quality/internal/AbstractCodeQualityPlugin$7 +instanceKlass org/gradle/api/plugins/quality/internal/AbstractCodeQualityPlugin$6 +instanceKlass org/gradle/api/plugins/quality/internal/AbstractCodeQualityPlugin$5$1 +instanceKlass org/gradle/api/plugins/quality/internal/AbstractCodeQualityPlugin$5 +instanceKlass org/gradle/api/plugins/quality/internal/AbstractCodeQualityPlugin$4 +instanceKlass org/gradle/api/plugins/quality/internal/AbstractCodeQualityPlugin$3 +instanceKlass org/gradle/api/plugins/quality/internal/AbstractCodeQualityPlugin$2$1 +instanceKlass org/gradle/api/plugins/quality/internal/AbstractCodeQualityPlugin$2 +instanceKlass org/gradle/api/plugins/quality/internal/AbstractCodeQualityPlugin$1 +instanceKlass com/google/common/util/concurrent/Callables$1 +instanceKlass com/google/common/util/concurrent/AsyncCallable +instanceKlass com/google/common/util/concurrent/Callables +instanceKlass org/gradle/api/internal/resources/FileCollectionBackedTextResource +instanceKlass org/gradle/api/resources/internal/TextResourceInternal +instanceKlass org/gradle/api/internal/file/DefaultFilePropertyFactory$PathToFileTransformer +instanceKlass org/gradle/api/internal/project/DefaultCrossProjectModelAccess +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfiguration$$Lambda$722 +instanceKlass org/gradle/api/plugins/quality/CheckstylePlugin$$Lambda$721 +instanceKlass org/gradle/internal/deprecation/DeprecationMessageBuilder$WithDeprecationTimeline +instanceKlass org/gradle/internal/deprecation/DeprecationTimeline +instanceKlass org/gradle/internal/deprecation/Documentation +instanceKlass org/gradle/internal/deprecation/DeprecationMessageBuilder$ConfigurationDeprecationTypeSelector +instanceKlass org/gradle/api/plugins/quality/internal/AbstractCodeQualityPlugin$$Lambda$720 +instanceKlass org/gradle/api/reporting/SingleFileReport +instanceKlass org/gradle/api/plugins/quality/CodeQualityExtension +instanceKlass org/gradle/api/internal/file/copy/DefaultCopySpec$$Lambda$719 +instanceKlass org/gradle/api/internal/file/copy/DefaultCopySpec$DefaultCopySpecAddress +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass org/gradle/api/internal/file/copy/DefaultCopySpec$$Lambda$718 +instanceKlass org/gradle/api/plugins/ApplicationPlugin$$Lambda$717 +instanceKlass org/gradle/api/plugins/ApplicationPlugin$$Lambda$716 +instanceKlass org/gradle/api/plugins/ApplicationPlugin$$Lambda$715 +instanceKlass org/gradle/api/plugins/ApplicationPlugin$$Lambda$714 +instanceKlass org/gradle/api/plugins/ApplicationPlugin$$Lambda$713 +instanceKlass org/gradle/api/plugins/ApplicationPlugin$$Lambda$712 +instanceKlass org/gradle/api/plugins/internal/DefaultJavaApplication$$Lambda$711 +instanceKlass org/gradle/api/plugins/internal/DefaultJavaApplication +instanceKlass org/gradle/configuration/internal/DefaultListenerBuildOperationDecorator$BuildOperationEmittingAction +instanceKlass org/gradle/api/distribution/plugins/DistributionPlugin$$Lambda$710 +instanceKlass org/gradle/api/distribution/plugins/DistributionPlugin$$Lambda$709 +instanceKlass org/gradle/api/distribution/plugins/DistributionPlugin$$Lambda$708 +instanceKlass org/gradle/api/distribution/plugins/DistributionPlugin$$Lambda$707 +instanceKlass org/gradle/api/internal/file/copy/PathNotationConverter +instanceKlass org/gradle/api/file/FileCopyDetails +instanceKlass org/gradle/api/internal/file/copy/CopySpecInternal$CopySpecListener +instanceKlass org/gradle/api/internal/file/copy/CopySpecInternal$CopySpecVisitor +instanceKlass org/gradle/api/internal/file/copy/CopySpecResolver +instanceKlass org/gradle/api/internal/file/copy/CopySpecInternal$CopySpecAddress +instanceKlass org/gradle/api/internal/file/copy/DefaultCopySpec +instanceKlass org/gradle/api/distribution/internal/DefaultDistribution +instanceKlass org/gradle/api/distribution/plugins/DistributionPlugin$$Lambda$706 +instanceKlass org/gradle/api/distribution/DistributionContainer +instanceKlass org/gradle/api/distribution/plugins/DistributionPlugin +instanceKlass org/gradle/api/distribution/Distribution +instanceKlass org/gradle/api/plugins/JavaApplication +instanceKlass org/gradle/api/plugins/ApplicationPluginConvention +instanceKlass org/gradle/api/plugins/JavaPlugin$$Lambda$705 +instanceKlass org/gradle/api/plugins/JavaPlugin$$Lambda$704 +instanceKlass org/gradle/api/internal/java/usagecontext/ConfigurationVariantDetailsInternal +instanceKlass org/gradle/api/component/ConfigurationVariantDetails +instanceKlass org/gradle/api/internal/java/usagecontext/ConfigurationVariantMapping +instanceKlass org/gradle/api/plugins/internal/JavaConfigurationVariantMapping +instanceKlass org/gradle/api/plugins/internal/DefaultAdhocSoftwareComponent +instanceKlass org/gradle/api/plugins/jvm/internal/DefaultJvmPluginServices$1 +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultVariant +instanceKlass org/gradle/api/internal/artifacts/ConfigurationVariantInternal +instanceKlass org/gradle/api/internal/DynamicPropertyNamer +instanceKlass org/gradle/api/plugins/jvm/internal/DefaultJvmPluginServices$$Lambda$703 +instanceKlass org/gradle/api/internal/collections/AbstractIterationOrderRetainingElementSource$$Lambda$702 +instanceKlass org/gradle/api/internal/provider/ChangingValueHandler +instanceKlass org/gradle/api/plugins/JavaPlugin$$Lambda$701 +instanceKlass org/gradle/api/plugins/internal/JvmPluginsHelper$$Lambda$700 +instanceKlass org/gradle/api/internal/provider/Collectors$ElementsFromCollectionProvider +instanceKlass org/gradle/api/internal/provider/AbstractCollectionProperty$CollectingSupplier +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfigurationPublications$$Lambda$699 +instanceKlass org/gradle/api/plugins/JavaPlugin$$Lambda$698 +instanceKlass org/gradle/api/plugins/JavaPlugin$$Lambda$697 +instanceKlass org/gradle/api/internal/file/AbstractFileCollection$FileCollectionElementsFactory +instanceKlass org/gradle/api/plugins/JavaPlugin$$Lambda$696 +instanceKlass org/gradle/api/plugins/JavaPlugin$$Lambda$695 +instanceKlass org/gradle/api/plugins/jvm/internal/DefaultJvmPluginServices$DefaultElementsConfigurationBuilder$$Lambda$694 +instanceKlass org/gradle/api/component/AdhocComponentWithVariants +instanceKlass org/gradle/api/plugins/jvm/internal/ResolvableConfigurationBuilder +instanceKlass org/gradle/api/plugins/jvm/internal/AbstractConfigurationBuilder +instanceKlass org/gradle/api/plugins/JavaPlugin$$Lambda$693 +instanceKlass org/gradle/api/plugins/JavaPlugin$$Lambda$692 +instanceKlass org/gradle/api/plugins/JavaPlugin$$Lambda$691 +instanceKlass org/gradle/api/internal/artifacts/dsl/LazyPublishArtifact +instanceKlass org/gradle/api/internal/artifacts/publish/AbstractPublishArtifact +instanceKlass org/gradle/api/internal/artifacts/PublishArtifactInternal +instanceKlass org/gradle/api/plugins/JvmTestSuitePlugin$$Lambda$690 +instanceKlass org/gradle/api/plugins/JvmTestSuitePlugin$$Lambda$689 +instanceKlass org/gradle/api/attributes/VerificationType$Impl +instanceKlass org/gradle/api/attributes/VerificationType +instanceKlass org/gradle/api/plugins/JvmTestSuitePlugin$$Lambda$688 +instanceKlass org/gradle/api/attributes/TestSuiteTargetName$Impl +instanceKlass org/gradle/api/attributes/TestSuiteTargetName +instanceKlass org/gradle/api/attributes/TestSuiteName$Impl +instanceKlass org/gradle/api/attributes/TestSuiteName +instanceKlass org/gradle/api/plugins/JvmTestSuitePlugin$$Lambda$687 +instanceKlass org/gradle/api/plugins/JvmTestSuitePlugin$$Lambda$686 +instanceKlass org/gradle/api/plugins/JvmTestSuitePlugin$$Lambda$685 +instanceKlass org/gradle/api/plugins/jvm/internal/DefaultJvmTestSuite$$Lambda$684 +instanceKlass org/gradle/api/plugins/jvm/internal/DefaultJvmTestSuiteTarget$$Lambda$683 +instanceKlass org/gradle/internal/reflect/MethodSet$1 +instanceKlass org/gradle/api/plugins/JvmTestSuitePlugin$$Lambda$682 +instanceKlass org/gradle/api/plugins/jvm/internal/DefaultJvmTestSuite$$Lambda$681 +instanceKlass org/gradle/api/plugins/jvm/internal/DefaultJvmComponentDependencies +instanceKlass org/gradle/api/plugins/jvm/internal/DefaultJvmTestSuiteTarget +instanceKlass org/gradle/api/plugins/jvm/internal/DefaultJvmTestSuite$$Lambda$680 +instanceKlass org/gradle/api/plugins/jvm/internal/DefaultJvmTestSuite$VersionedTestingFramework +instanceKlass org/gradle/api/plugins/jvm/JvmComponentDependencies +instanceKlass org/gradle/api/internal/tasks/testing/TestFramework +instanceKlass org/gradle/api/plugins/JavaPlugin$$Lambda$679 +instanceKlass org/gradle/api/internal/provider/TypeSanitizingTransformer +instanceKlass org/gradle/api/internal/file/DefaultSourceDirectorySet$$Lambda$678 +instanceKlass org/gradle/api/internal/file/DefaultSourceDirectorySet$$Lambda$677 +instanceKlass org/gradle/api/plugins/internal/JvmPluginsHelper$$Lambda$676 +instanceKlass org/gradle/api/plugins/internal/JvmPluginsHelper$$Lambda$675 +instanceKlass org/gradle/api/plugins/JavaBasePlugin$$Lambda$674 +instanceKlass org/gradle/api/tasks/compile/AbstractOptions +instanceKlass org/gradle/api/internal/tasks/compile/JavaCompileSpec +instanceKlass org/gradle/api/internal/tasks/compile/JvmLanguageCompileSpec +instanceKlass org/gradle/language/base/internal/compile/CompileSpec +instanceKlass org/gradle/api/internal/tasks/compile/incremental/recomp/RecompilationSpecProvider +instanceKlass org/gradle/internal/Actions$CompositeAction +instanceKlass org/gradle/api/plugins/jvm/internal/DefaultJvmPluginServices$$Lambda$673 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/api/plugins/jvm/internal/DefaultJvmPluginServices$$Lambda$672 +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/api/plugins/internal/JvmPluginsHelper$$Lambda$671 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/api/plugins/internal/JvmPluginsHelper +instanceKlass org/gradle/api/plugins/JavaBasePlugin$$Lambda$670 +instanceKlass org/gradle/api/plugins/JavaBasePlugin$$Lambda$669 +instanceKlass org/gradle/api/plugins/JavaBasePlugin$$Lambda$668 +instanceKlass org/gradle/api/plugins/JavaBasePlugin$$Lambda$667 +instanceKlass org/gradle/api/plugins/jvm/internal/DefaultJvmPluginServices$$Lambda$666 +instanceKlass org/gradle/api/attributes/java/TargetJvmEnvironment$Impl +instanceKlass org/gradle/api/plugins/jvm/internal/DefaultJvmEcosystemAttributesDetails +instanceKlass org/gradle/api/plugins/jvm/internal/DefaultJvmPluginServices$$Lambda$665 +instanceKlass org/gradle/internal/extensibility/ConventionAwareHelper$MappedPropertyImpl +instanceKlass org/gradle/api/internal/ConventionMapping$MappedProperty +instanceKlass org/gradle/api/internal/file/collections/DefaultConfigurableFileCollection$UnresolvedItemsCollector +instanceKlass org/gradle/api/internal/tasks/DefaultSourceSetOutput$$Lambda$664 +instanceKlass org/gradle/api/internal/tasks/DefaultTaskDependency$TaskDependencySet +instanceKlass org/gradle/api/internal/file/collections/DefaultConfigurableFileCollection$EmptyCollector +instanceKlass org/gradle/api/internal/file/collections/DefaultConfigurableFileCollection$ValueCollector +instanceKlass org/gradle/api/internal/lambdas/SerializableLambdas +instanceKlass org/gradle/api/internal/tasks/DefaultSourceSet$$Lambda$663 +instanceKlass org/gradle/api/internal/lambdas/SerializableLambdas$SerializableSpec +instanceKlass org/gradle/api/internal/file/DefaultSourceDirectorySet$SourceDirectories +instanceKlass org/gradle/internal/typeconversion/CharSequenceNotationParser +instanceKlass org/gradle/api/internal/jvm/ClassDirectoryBinaryNamingScheme +instanceKlass org/gradle/api/file/FileTreeElement +instanceKlass org/gradle/api/tasks/SourceSetOutput +instanceKlass org/gradle/api/internal/tasks/DefaultSourceSet +instanceKlass org/gradle/api/plugins/JvmTestSuitePlugin$$Lambda$662 +instanceKlass org/gradle/api/plugins/JvmTestSuitePlugin$$Lambda$661 +instanceKlass org/gradle/api/plugins/JvmTestSuitePlugin$$Lambda$660 +instanceKlass org/gradle/api/plugins/jvm/internal/DefaultJvmTestSuite +instanceKlass org/gradle/testing/base/internal/DefaultTestingExtension +instanceKlass org/gradle/testing/base/plugins/TestSuiteBasePlugin +instanceKlass org/gradle/api/attributes/TestSuiteType +instanceKlass org/gradle/api/plugins/jvm/JvmTestSuiteTarget +instanceKlass org/gradle/testing/base/TestSuiteTarget +instanceKlass org/gradle/api/plugins/JvmTestSuitePlugin +instanceKlass org/gradle/api/plugins/JavaBasePlugin$$Lambda$659 +instanceKlass org/gradle/api/plugins/JavaBasePlugin$$Lambda$658 +instanceKlass org/gradle/api/plugins/JavaBasePlugin$$Lambda$657 +instanceKlass org/gradle/api/plugins/JavaBasePlugin$$Lambda$656 +instanceKlass org/gradle/api/plugins/JavaBasePlugin$$Lambda$655 +instanceKlass org/gradle/api/plugins/JavaBasePlugin$$Lambda$654 +instanceKlass org/gradle/jvm/toolchain/internal/JavaToolchainQueryService$$Lambda$653 +instanceKlass org/gradle/jvm/toolchain/internal/JavaToolchainQueryService$$Lambda$652 +instanceKlass org/gradle/jvm/toolchain/install/internal/DefaultJavaToolchainProvisioningService$$Lambda$651 +instanceKlass org/gradle/language/java/internal/JavaLanguagePluginServiceRegistry$JavaProjectScopeServices$1 +instanceKlass org/gradle/language/base/internal/compile/Compiler +instanceKlass org/gradle/api/internal/tasks/compile/DefaultJavaCompilerFactory +instanceKlass org/gradle/api/internal/tasks/compile/processing/AnnotationProcessorDeclarationSerializer +instanceKlass org/gradle/api/internal/tasks/compile/processing/AnnotationProcessorDetector$ProcessorServiceLocator +instanceKlass org/gradle/process/internal/worker/child/DefaultWorkerDirectoryProvider +instanceKlass org/gradle/workers/internal/WorkerDaemonExpiration +instanceKlass org/gradle/workers/internal/WorkerDaemonClientsManager$LogLevelChangeEventListener +instanceKlass org/gradle/workers/internal/WorkerDaemonClientsManager$StopSessionScopedWorkers +instanceKlass org/gradle/workers/internal/WorkerDaemonClientsManager$WorkerProcessCleanupAction +instanceKlass org/gradle/workers/internal/WorkerDaemonStarter +instanceKlass org/gradle/process/internal/health/memory/MemoryHolder +instanceKlass org/gradle/workers/internal/DefaultActionExecutionSpecFactory +instanceKlass org/gradle/internal/snapshot/impl/AbstractSetSnapshot +instanceKlass org/gradle/internal/snapshot/impl/AbstractListSnapshot +instanceKlass org/gradle/internal/snapshot/impl/EnumValueSnapshot +instanceKlass org/gradle/internal/snapshot/impl/JavaSerializedValueSnapshot +instanceKlass org/gradle/internal/snapshot/impl/NullValueSnapshot +instanceKlass org/gradle/internal/snapshot/impl/AbstractManagedValueSnapshot +instanceKlass org/gradle/workers/internal/IsolatableSerializerRegistry$IsolatedSetSerializer +instanceKlass org/gradle/workers/internal/IsolatableSerializerRegistry$IsolatedListSerializer +instanceKlass org/gradle/workers/internal/IsolatableSerializerRegistry$IsolatedArraySerializer +instanceKlass org/gradle/internal/snapshot/impl/AbstractMapSnapshot +instanceKlass org/gradle/workers/internal/IsolatableSerializerRegistry$AbstractIsolatedMapSerializer +instanceKlass org/gradle/workers/internal/IsolatableSerializerRegistry$IsolatedEnumValueSnapshotSerializer +instanceKlass org/gradle/workers/internal/IsolatableSerializerRegistry$NullValueSnapshotSerializer +instanceKlass org/gradle/workers/internal/IsolatableSerializerRegistry$IsolatedJavaSerializedValueSnapshotSerializer +instanceKlass org/gradle/workers/internal/IsolatableSerializerRegistry$FileValueSnapshotSerializer +instanceKlass org/gradle/workers/internal/IsolatableSerializerRegistry$IsolatedImmutableManagedValueSerializer +instanceKlass org/gradle/workers/internal/IsolatableSerializerRegistry$IsolatedManagedValueSerializer +instanceKlass org/gradle/workers/internal/IsolatableSerializerRegistry$AttributeDefinitionSnapshotSerializer +instanceKlass org/gradle/workers/internal/IsolatableSerializerRegistry$LongValueSnapshotSerializer +instanceKlass org/gradle/workers/internal/IsolatableSerializerRegistry$IntegerValueSnapshotSerializer +instanceKlass org/gradle/workers/internal/IsolatableSerializerRegistry$ShortValueSnapshotSerializer +instanceKlass org/gradle/workers/internal/IsolatableSerializerRegistry$BooleanValueSnapshotSerializer +instanceKlass org/gradle/workers/internal/IsolatableSerializerRegistry$StringValueSnapshotSerializer +instanceKlass org/gradle/workers/internal/IsolatableSerializerRegistry$IsolatableSerializer +instanceKlass org/gradle/process/internal/worker/child/ApplicationClassesInSystemClassLoaderWorkerImplementationFactory +instanceKlass org/gradle/process/internal/worker/child/WorkerImplementationFactory +instanceKlass org/gradle/process/internal/worker/SingleRequestWorkerProcessBuilder +instanceKlass org/gradle/process/internal/worker/MultiRequestWorkerProcessBuilder +instanceKlass org/gradle/process/internal/worker/WorkerProcessBuilder +instanceKlass org/gradle/process/internal/worker/WorkerProcessSettings +instanceKlass org/gradle/process/internal/worker/DefaultWorkerProcessFactory +instanceKlass org/gradle/process/internal/health/memory/DefaultMemoryManager$MemoryCheck +instanceKlass org/gradle/process/internal/health/memory/DefaultMemoryManager$OsMemoryListener +instanceKlass org/gradle/process/internal/health/memory/OsMemoryStatusSnapshot +instanceKlass java/lang/reflect/AccessibleObject$$Lambda$650 +instanceKlass sun/reflect/misc/Trampoline +instanceKlass jdk/internal/module/SystemModuleFinders$SystemModuleReader$$Lambda$649 +instanceKlass sun/reflect/misc/MethodUtil$1 +instanceKlass jdk/management/jfr/FlightRecorderMXBeanImpl$MXBeanListener +instanceKlass jdk/jfr/FlightRecorderListener +instanceKlass jdk/jfr/FlightRecorder +instanceKlass jdk/jfr/Recording +instanceKlass javax/management/NotificationFilter +instanceKlass javax/management/NotificationListener +instanceKlass javax/management/StandardMBean$MBeanInfoSafeAction +instanceKlass jdk/management/jfr/StreamManager +instanceKlass jdk/management/jfr/ConfigurationInfo +instanceKlass jdk/management/jfr/EventTypeInfo +instanceKlass jdk/management/jfr/RecordingInfo +instanceKlass sun/reflect/generics/tree/LongSignature +instanceKlass jdk/management/jfr/SettingDescriptorInfo$1 +instanceKlass jdk/management/jfr/SettingDescriptorInfo +instanceKlass com/sun/management/VMOption +instanceKlass com/sun/management/internal/HotSpotDiagnostic +instanceKlass com/sun/management/HotSpotDiagnosticMXBean +instanceKlass java/lang/management/DefaultPlatformMBeanProvider$10$$Lambda$648 +instanceKlass sun/nio/ch/FileChannelImpl$1 +instanceKlass sun/management/ManagementFactoryHelper$1 +instanceKlass java/lang/management/BufferPoolMXBean +instanceKlass com/sun/management/GcInfo +instanceKlass javax/management/openmbean/CompositeDataView +instanceKlass com/sun/management/internal/DiagnosticCommandImpl$Wrapper +instanceKlass com/sun/management/internal/DiagnosticCommandArgumentInfo +instanceKlass com/sun/management/internal/DiagnosticCommandInfo +instanceKlass com/sun/management/internal/DiagnosticCommandImpl$OperationInfoComparator +instanceKlass sun/management/ClassLoadingImpl +instanceKlass java/lang/management/ClassLoadingMXBean +instanceKlass javax/management/MBeanInfo$ArrayGettersSafeAction +instanceKlass javax/management/openmbean/OpenMBeanOperationInfo +instanceKlass java/util/logging/Logging +instanceKlass java/util/logging/LoggingMXBean +instanceKlass sun/management/ManagementFactoryHelper$PlatformLoggingImpl +instanceKlass java/lang/management/PlatformLoggingMXBean +instanceKlass sun/management/CompilationImpl +instanceKlass java/lang/management/CompilationMXBean +instanceKlass sun/management/VMManagementImpl$1 +instanceKlass java/lang/management/DefaultPlatformMBeanProvider$5$$Lambda$647 +instanceKlass java/lang/management/DefaultPlatformMBeanProvider$5$$Lambda$646 +instanceKlass sun/management/BaseOperatingSystemImpl +instanceKlass com/sun/management/OperatingSystemMXBean +instanceKlass java/lang/management/OperatingSystemMXBean +instanceKlass com/sun/jmx/mbeanserver/PerInterface$MethodAndSig +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/management/LockInfo +instanceKlass java/lang/management/ThreadInfo +instanceKlass sun/management/ThreadImpl +instanceKlass com/sun/management/ThreadMXBean +instanceKlass java/lang/management/ThreadMXBean +instanceKlass com/sun/jmx/mbeanserver/WeakIdentityHashMap +instanceKlass com/sun/jmx/mbeanserver/MXBeanLookup +instanceKlass com/sun/jmx/mbeanserver/PerInterface$InitMaps +instanceKlass com/sun/jmx/mbeanserver/PerInterface +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass javax/management/openmbean/OpenMBeanAttributeInfo +instanceKlass javax/management/openmbean/OpenMBeanParameterInfo +instanceKlass com/sun/jmx/mbeanserver/MBeanIntrospector$MBeanInfoMaker +instanceKlass com/sun/jmx/mbeanserver/MBeanAnalyzer$MBeanVisitor +instanceKlass com/sun/jmx/mbeanserver/MBeanAnalyzer$AttrMethods +instanceKlass com/sun/jmx/mbeanserver/MXBeanMapping +instanceKlass javax/management/openmbean/TabularData +instanceKlass javax/management/openmbean/CompositeData +instanceKlass javax/management/openmbean/OpenType +instanceKlass com/sun/jmx/mbeanserver/MXBeanMappingFactory +instanceKlass com/sun/jmx/mbeanserver/ConvertingMethod +instanceKlass com/sun/jmx/mbeanserver/MBeanAnalyzer$MethodOrder +instanceKlass com/sun/jmx/mbeanserver/MBeanAnalyzer +instanceKlass com/sun/jmx/mbeanserver/MBeanIntrospector +instanceKlass javax/management/MXBean +instanceKlass com/sun/jmx/mbeanserver/MBeanSupport +instanceKlass com/sun/jmx/mbeanserver/DescriptorCache +instanceKlass javax/management/JMX +instanceKlass javax/management/StandardMBean +instanceKlass java/lang/management/ManagementFactory$$Lambda$645 +instanceKlass sun/management/RuntimeImpl +instanceKlass java/lang/management/RuntimeMXBean +instanceKlass java/lang/management/ManagementFactory$$Lambda$644 +instanceKlass java/lang/management/ManagementFactory$$Lambda$643 +instanceKlass java/lang/management/ManagementFactory$$Lambda$642 +instanceKlass com/sun/jmx/mbeanserver/JmxMBeanServer$3 +instanceKlass javax/management/ObjectInstance +instanceKlass com/sun/jmx/mbeanserver/NamedObject +instanceKlass com/sun/jmx/interceptor/DefaultMBeanServerInterceptor$ResourceContext$1 +instanceKlass com/sun/jmx/interceptor/DefaultMBeanServerInterceptor$ResourceContext +instanceKlass com/sun/jmx/mbeanserver/Repository$RegistrationContext +instanceKlass com/sun/jmx/mbeanserver/DynamicMBean2 +instanceKlass com/sun/jmx/defaults/JmxProperties +instanceKlass com/sun/jmx/mbeanserver/Introspector +instanceKlass com/sun/jmx/mbeanserver/JmxMBeanServer$2 +instanceKlass com/sun/jmx/interceptor/DefaultMBeanServerInterceptor +instanceKlass com/sun/jmx/interceptor/MBeanServerInterceptor +instanceKlass com/sun/jmx/mbeanserver/Repository +instanceKlass com/sun/jmx/mbeanserver/JmxMBeanServer$1 +instanceKlass com/sun/jmx/mbeanserver/SecureClassLoaderRepository +instanceKlass com/sun/jmx/mbeanserver/MBeanInstantiator +instanceKlass com/sun/jmx/mbeanserver/ClassLoaderRepositorySupport$LoaderEntry +instanceKlass com/sun/jmx/mbeanserver/ClassLoaderRepositorySupport +instanceKlass com/sun/jmx/mbeanserver/ModifiableClassLoaderRepository +instanceKlass javax/management/loading/ClassLoaderRepository +instanceKlass javax/management/ImmutableDescriptor +instanceKlass javax/management/Descriptor +instanceKlass sun/util/logging/PlatformLogger$ConfigurableBridge$LoggerConfiguration +instanceKlass jdk/internal/logger/LoggerFinderLoader +instanceKlass java/lang/System$LoggerFinder$$Lambda$641 +instanceKlass jdk/internal/logger/LazyLoggers$LazyLoggerFactories +instanceKlass jdk/internal/logger/LazyLoggers$1 +instanceKlass jdk/internal/logger/LazyLoggers +instanceKlass com/sun/jmx/remote/util/ClassLogger +instanceKlass javax/management/NotificationBroadcasterSupport$1 +instanceKlass javax/management/NotificationBroadcasterSupport +instanceKlass javax/management/MBeanInfo +instanceKlass javax/management/MBeanFeatureInfo +instanceKlass javax/management/DescriptorRead +instanceKlass javax/management/MBeanServerDelegate +instanceKlass javax/management/MBeanServerDelegateMBean +instanceKlass javax/management/MBeanRegistration +instanceKlass com/sun/jmx/mbeanserver/JmxMBeanServer +instanceKlass com/sun/jmx/mbeanserver/SunJmxMBeanServer +instanceKlass javax/management/MBeanServer +instanceKlass javax/management/MBeanServerConnection +instanceKlass javax/management/MBeanServerBuilder +instanceKlass javax/management/MBeanServerFactory +instanceKlass org/gradle/process/internal/health/memory/MBeanAttributeProvider +instanceKlass org/gradle/process/internal/health/memory/JvmMemoryStatusListener +instanceKlass org/gradle/process/internal/health/memory/DefaultMemoryManager +instanceKlass org/gradle/process/internal/health/memory/JvmMemoryStatus +instanceKlass org/gradle/process/internal/health/memory/DefaultJvmMemoryInfo +instanceKlass org/gradle/process/internal/health/memory/OsMemoryStatus +instanceKlass org/gradle/process/internal/health/memory/MBeanOsMemoryInfo +instanceKlass org/gradle/process/internal/health/memory/DefaultOsMemoryInfo +instanceKlass org/gradle/internal/jvm/inspection/DefaultJvmVersionDetector +instanceKlass org/gradle/internal/remote/internal/hub/MessageHubBackedServer +instanceKlass org/gradle/internal/jvm/inspection/JvmInstallationMetadata$DefaultJvmInstallationMetadata$$Lambda$640 +instanceKlass org/gradle/internal/jvm/inspection/JvmInstallationMetadata$DefaultJvmInstallationMetadata +instanceKlass org/gradle/internal/jvm/inspection/CachingJvmMetadataDetector$$Lambda$639 +instanceKlass org/gradle/internal/jvm/inspection/JvmInstallationMetadata +instanceKlass org/gradle/internal/jvm/inspection/DefaultJvmMetadataDetector +instanceKlass org/gradle/internal/jvm/inspection/CachingJvmMetadataDetector +instanceKlass org/gradle/jvm/toolchain/internal/JavaInstallationRegistry$$Lambda$638 +instanceKlass net/rubygrapefruit/platform/internal/DefaultWindowsRegistry +instanceKlass org/apache/xerces/jaxp/JAXPConstants +instanceKlass javax/xml/parsers/DocumentBuilder +instanceKlass javax/xml/parsers/FactoryFinder$1 +instanceKlass javax/xml/parsers/FactoryFinder$$Lambda$637 +instanceKlass javax/xml/parsers/FactoryFinder +instanceKlass javax/xml/parsers/DocumentBuilderFactory +instanceKlass javax/xml/xpath/XPathFactoryFinder$$Lambda$636 +instanceKlass jdk/xml/internal/XMLSecurityManager +instanceKlass jdk/xml/internal/SecuritySupport$$Lambda$635 +instanceKlass jdk/xml/internal/JdkXmlFeatures +instanceKlass javax/xml/xpath/XPathFactoryFinder$$Lambda$634 +instanceKlass javax/xml/xpath/XPathFactoryFinder$2 +instanceKlass javax/xml/xpath/XPathFactoryFinder$$Lambda$633 +instanceKlass jdk/xml/internal/SecuritySupport$$Lambda$632 +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$BMH +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass javax/xml/xpath/XPathFactoryFinder$$Lambda$631 +instanceKlass javax/xml/xpath/XPathFactoryFinder$$Lambda$630 +instanceKlass jdk/xml/internal/SecuritySupport$$Lambda$629 +instanceKlass javax/xml/xpath/XPathFactoryFinder +instanceKlass jdk/xml/internal/SecuritySupport$$Lambda$628 +instanceKlass jdk/xml/internal/SecuritySupport +instanceKlass javax/xml/xpath/XPathFactory +instanceKlass org/gradle/jvm/toolchain/internal/AutoInstalledInstallationSupplier$$Lambda$627 +instanceKlass org/gradle/jvm/toolchain/internal/AsdfInstallationSupplier$$Lambda$626 +instanceKlass org/gradle/api/internal/provider/sources/SystemPropertyValueSource$Parameters_Decorated +instanceKlass org/gradle/api/internal/provider/sources/SystemPropertyValueSource$Parameters +instanceKlass org/gradle/api/internal/provider/DefaultProviderFactory$$Lambda$625 +instanceKlass org/gradle/api/internal/provider/sources/EnvironmentVariableValueSource$Parameters_Decorated +instanceKlass org/gradle/api/internal/provider/sources/EnvironmentVariableValueSource$Parameters +instanceKlass org/gradle/api/internal/provider/DefaultProviderFactory$$Lambda$624 +instanceKlass org/gradle/api/internal/provider/sources/EnvironmentVariableValueSource +instanceKlass org/gradle/jvm/toolchain/internal/AutoDetectingInstallationSupplier$$Lambda$623 +instanceKlass org/gradle/api/internal/provider/DefaultValueSourceProviderFactory$LazilyObtainedValue +instanceKlass org/gradle/api/internal/provider/DefaultValueSourceProviderFactory$DefaultObtainedValue +instanceKlass org/gradle/api/internal/provider/DefaultValueSourceProviderFactory$DefaultValueSourceSpec +instanceKlass org/gradle/api/internal/provider/sources/GradlePropertyValueSource$Parameters_Decorated +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/internal/instantiation/generator/AsmBackedClassGenerator$ClassBuilderImpl$$Lambda$622 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/api/internal/provider/sources/GradlePropertyValueSource$Parameters +instanceKlass org/gradle/api/internal/provider/sources/AbstractPropertyValueSource$Parameters +instanceKlass org/gradle/api/internal/provider/DefaultProviderFactory$$Lambda$621 +instanceKlass org/gradle/api/internal/provider/sources/AbstractPropertyValueSource +instanceKlass org/gradle/api/plugins/JavaPluginConvention +instanceKlass org/gradle/internal/jvm/DefaultModularitySpec +instanceKlass org/gradle/api/jvm/ModularitySpec +instanceKlass org/gradle/api/java/archives/Manifest +instanceKlass org/gradle/jvm/toolchain/internal/DefaultJvmVendorSpec$$Lambda$620 +instanceKlass org/gradle/jvm/toolchain/internal/DefaultJvmVendorSpec$$Lambda$619 +instanceKlass org/gradle/internal/jvm/inspection/JvmVendor +instanceKlass org/gradle/jvm/toolchain/JvmVendorSpec +instanceKlass org/gradle/jvm/toolchain/JavaLanguageVersion +instanceKlass org/gradle/jvm/toolchain/JvmImplementation +instanceKlass org/gradle/jvm/toolchain/internal/DefaultToolchainSpec +instanceKlass org/gradle/jvm/toolchain/internal/ToolchainSpecInternal +instanceKlass org/gradle/api/reporting/ReportSpec +instanceKlass org/gradle/api/reporting/ReportingExtension +instanceKlass org/gradle/api/plugins/ReportingBasePlugin +instanceKlass org/gradle/api/internal/artifacts/type/DefaultArtifactTypeContainer$DefaultArtifactTypeDefinition +instanceKlass org/gradle/api/internal/tasks/DefaultSourceSetContainer$1 +instanceKlass org/gradle/api/plugins/JvmEcosystemPlugin +instanceKlass org/gradle/api/plugins/BasePlugin$$Lambda$618 +instanceKlass org/gradle/api/plugins/BasePlugin$$Lambda$617 +instanceKlass org/gradle/api/internal/ExecuteDomainObjectCollectionCallbackBuildOperationType$1 +instanceKlass org/gradle/api/internal/ExecuteDomainObjectCollectionCallbackBuildOperationType$Result +instanceKlass org/gradle/api/internal/ExecuteDomainObjectCollectionCallbackBuildOperationType +instanceKlass org/gradle/api/internal/DefaultCollectionCallbackActionDecorator$OperationDetails +instanceKlass org/gradle/api/internal/DefaultCollectionCallbackActionDecorator$Operation +instanceKlass org/gradle/api/plugins/BasePlugin$$Lambda$616 +instanceKlass org/gradle/api/internal/GeneratedSubclasses +instanceKlass org/gradle/api/internal/plugins/DslObject +instanceKlass org/gradle/api/plugins/BasePlugin$$Lambda$615 +instanceKlass org/gradle/api/internal/plugins/AbstractRule +instanceKlass org/gradle/api/internal/file/DefaultFilePropertyFactory$PathToDirectoryTransformer +instanceKlass org/gradle/api/plugins/BasePluginConvention +instanceKlass org/gradle/api/plugins/internal/DefaultBasePluginExtension +instanceKlass org/gradle/language/base/plugins/LifecycleBasePlugin$$Lambda$614 +instanceKlass org/gradle/language/base/plugins/LifecycleBasePlugin$$Lambda$613 +instanceKlass org/gradle/language/base/plugins/LifecycleBasePlugin$$Lambda$612 +instanceKlass org/gradle/language/base/internal/plugins/CleanRule +instanceKlass org/gradle/language/base/plugins/LifecycleBasePlugin$$Lambda$611 +instanceKlass org/gradle/language/base/plugins/LifecycleBasePlugin$$Lambda$610 +instanceKlass org/gradle/language/base/plugins/LifecycleBasePlugin +instanceKlass org/gradle/api/internal/plugins/DefaultArtifactPublicationSet +instanceKlass org/gradle/api/plugins/BasePluginExtension +instanceKlass org/gradle/api/plugins/BasePlugin +instanceKlass org/gradle/api/internal/tasks/compile/HasCompileOptions +instanceKlass org/gradle/api/plugins/internal/DefaultJavaPluginExtension +instanceKlass org/gradle/api/plugins/JavaBasePlugin +instanceKlass org/gradle/api/plugins/JavaPlatformPlugin +instanceKlass org/gradle/api/internal/plugins/PluginManagerInternal$PluginWithId +instanceKlass org/gradle/api/plugins/jvm/internal/JvmEcosystemAttributesDetails +instanceKlass org/gradle/api/plugins/jvm/internal/DefaultJvmPluginServices +instanceKlass org/gradle/api/internal/component/SoftwareComponentInternal +instanceKlass org/gradle/api/plugins/internal/DefaultSoftwareComponentFactory +instanceKlass org/gradle/testing/base/TestingExtension +instanceKlass org/gradle/api/plugins/jvm/JvmTestSuite +instanceKlass org/gradle/testing/base/TestSuite +instanceKlass org/gradle/api/plugins/jvm/internal/OutgoingElementsBuilder +instanceKlass org/gradle/api/tasks/SourceSet +instanceKlass org/gradle/api/plugins/JavaPluginExtension +instanceKlass org/gradle/plugin/use/internal/DefaultPluginRequestApplicator$$Lambda$609 +instanceKlass org/gradle/plugin/use/internal/DefaultPluginRequestApplicator$$Lambda$608 +instanceKlass org/gradle/internal/snapshot/MetadataSnapshot$1 +instanceKlass org/gradle/internal/classpath/DefaultCachedClasspathTransformer$1 +instanceKlass org/gradle/api/internal/artifacts/DownloadArtifactBuildOperationType$1 +instanceKlass org/gradle/api/internal/artifacts/DownloadArtifactBuildOperationType$Result +instanceKlass org/gradle/api/internal/artifacts/DownloadArtifactBuildOperationType +instanceKlass org/gradle/api/internal/artifacts/DefaultArtifactIdentifier +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/artifacts/DefaultCachedArtifact +instanceKlass org/gradle/internal/resource/cached/AbstractCachedIndex$$Lambda$607 +instanceKlass org/gradle/internal/resource/cached/AbstractCachedIndex$$Lambda$606 +instanceKlass org/gradle/internal/resource/cached/AbstractCachedIndex$$Lambda$605 +instanceKlass org/gradle/internal/resource/cached/AbstractCachedIndex$$Lambda$604 +instanceKlass org/gradle/internal/resource/cached/AbstractCachedIndex$$Lambda$603 +instanceKlass org/gradle/internal/resource/cached/AbstractCachedIndex$$Lambda$602 +instanceKlass org/gradle/internal/resource/cached/AbstractCachedIndex$$Lambda$597 +instanceKlass org/gradle/internal/resource/cached/AbstractCachedIndex$$Lambda$599 +instanceKlass org/gradle/internal/resource/cached/AbstractCachedIndex$$Lambda$601 +instanceKlass org/gradle/internal/resource/cached/AbstractCachedIndex$$Lambda$598 +instanceKlass org/gradle/internal/resource/cached/AbstractCachedIndex$$Lambda$600 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/artifacts/ArtifactAtRepositoryKey +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$596 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$595 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$593 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$594 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$592 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$591 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$590 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$588 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$589 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$587 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$585 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$584 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$586 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$578 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$581 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$580 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$583 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$582 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$577 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$579 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$571 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$575 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$576 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$574 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$572 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$573 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$564 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$569 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$561 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$570 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$568 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$566 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$559 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$563 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$565 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$560 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$567 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$562 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$558 +instanceKlass org/gradle/internal/model/CalculatedValueContainer$CalculationState$$Lambda$557 +instanceKlass org/gradle/internal/model/CalculatedValueContainer$CalculationState$$Lambda$556 +instanceKlass org/gradle/internal/model/CalculatedValueContainer$CalculationState$$Lambda$553 +instanceKlass org/gradle/internal/model/CalculatedValueContainer$CalculationState$$Lambda$555 +instanceKlass org/gradle/internal/model/CalculatedValueContainer$CalculationState$$Lambda$554 +instanceKlass org/gradle/internal/model/CalculatedValueContainer$CalculationState$$Lambda$551 +instanceKlass org/gradle/internal/model/CalculatedValueContainer$CalculationState$$Lambda$552 +instanceKlass org/gradle/internal/model/CalculatedValueContainer$CalculationState$$Lambda$549 +instanceKlass org/gradle/internal/model/CalculatedValueContainer$CalculationState$$Lambda$550 +instanceKlass org/gradle/internal/model/CalculatedValueContainer$CalculationState$$Lambda$548 +instanceKlass org/gradle/internal/model/CalculatedValueContainer$CalculationState$$Lambda$547 +instanceKlass org/gradle/internal/model/CalculatedValueContainer$CalculationState$$Lambda$546 +instanceKlass org/gradle/api/internal/artifacts/DownloadArtifactBuildOperationType$DetailsImpl +instanceKlass org/gradle/api/internal/artifacts/DownloadArtifactBuildOperationType$Details +instanceKlass org/gradle/internal/resources/DefaultResourceLockCoordinationService$ReleaseLocks +instanceKlass org/gradle/internal/operations/DefaultBuildOperationQueue$WorkerRunnable$$Lambda$545 +instanceKlass org/gradle/internal/operations/DefaultBuildOperationQueue$WorkerRunnable$$Lambda$544 +instanceKlass org/gradle/internal/operations/DefaultBuildOperationQueue$WorkerRunnable$$Lambda$543 +instanceKlass org/gradle/internal/operations/DefaultBuildOperationQueue$WorkerRunnable$$Lambda$542 +instanceKlass org/gradle/internal/operations/DefaultBuildOperationQueue$WorkerRunnable$$Lambda$541 +instanceKlass org/gradle/internal/operations/DefaultBuildOperationQueue$WorkerRunnable$$Lambda$540 +instanceKlass org/gradle/internal/operations/DefaultBuildOperationQueue$WorkerRunnable$$Lambda$533 +instanceKlass org/gradle/internal/operations/DefaultBuildOperationQueue$WorkerRunnable$$Lambda$534 +instanceKlass org/gradle/internal/operations/DefaultBuildOperationQueue$WorkerRunnable$$Lambda$537 +instanceKlass org/gradle/internal/operations/DefaultBuildOperationQueue$WorkerRunnable$$Lambda$536 +instanceKlass org/gradle/internal/operations/DefaultBuildOperationQueue$$Lambda$538 +instanceKlass org/gradle/internal/operations/DefaultBuildOperationQueue$WorkerRunnable$$Lambda$539 +instanceKlass org/gradle/internal/operations/DefaultBuildOperationQueue$WorkerRunnable$$Lambda$530 +instanceKlass org/gradle/internal/operations/DefaultBuildOperationQueue$WorkerRunnable$$Lambda$531 +instanceKlass org/gradle/internal/operations/DefaultBuildOperationQueue$WorkerRunnable$$Lambda$535 +instanceKlass org/gradle/internal/operations/DefaultBuildOperationQueue$WorkerRunnable$$Lambda$528 +instanceKlass org/gradle/internal/operations/DefaultBuildOperationQueue$WorkerRunnable$$Lambda$532 +instanceKlass org/gradle/internal/operations/DefaultBuildOperationQueue$WorkerRunnable$$Lambda$529 +instanceKlass org/gradle/internal/operations/DefaultBuildOperationQueue$WorkerRunnable$$Lambda$527 +instanceKlass org/gradle/internal/operations/DefaultBuildOperationQueue$WorkerRunnable +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/ArtifactBackedResolvedVariant$DownloadArtifactFile +instanceKlass org/gradle/internal/operations/DefaultBuildOperationQueue +instanceKlass org/gradle/internal/operations/DefaultBuildOperationExecutor$$Lambda$526 +instanceKlass org/gradle/internal/operations/DefaultBuildOperationExecutor$QueueWorker +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/ParallelResolveArtifactSet$VisitingSet$StartVisitAction +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/ResolvedArtifactSet$Visitor +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/ParallelResolveArtifactSet +instanceKlass org/gradle/api/internal/artifacts/ivyservice/DefaultLenientConfiguration$ResolveArtifactsDetails +instanceKlass org/gradle/api/internal/artifacts/ResolveArtifactsBuildOperationType$Details +instanceKlass org/gradle/api/internal/artifacts/ivyservice/DefaultLenientConfiguration$3 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/DefaultLenientConfiguration$2 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/DefaultVisitedArtifactResults$DefaultSelectedArtifactResults +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/CompositeResolvedArtifactSet +instanceKlass org/gradle/internal/component/local/model/OpaqueComponentIdentifier +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/ArtifactBackedResolvedVariant$SingleArtifactSet +instanceKlass org/gradle/api/internal/artifacts/PreResolvedResolvableArtifact +instanceKlass org/gradle/api/internal/artifacts/DefaultResolvableArtifact$1 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/DefaultArtifactSet$$Lambda$525 +instanceKlass org/gradle/api/artifacts/ResolvedArtifact +instanceKlass org/gradle/api/internal/tasks/FinalizeAction +instanceKlass org/gradle/api/internal/artifacts/DefaultResolvableArtifact +instanceKlass org/gradle/internal/model/CalculatedValueContainer$CalculationState +instanceKlass org/gradle/internal/model/CalculatedValueContainer +instanceKlass org/gradle/api/internal/tasks/WorkNodeAction +instanceKlass org/gradle/internal/resolve/result/BuildableArtifactResolveResult +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/DefaultArtifactSet$LazyArtifactSupplier +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/excludes/specs/ExcludeEverything +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/excludes/simple/DefaultGroupExclude +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/excludes/specs/GroupExclude +instanceKlass org/apache/ivy/plugins/matcher/PatternMatcher +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/excludes/PatternMatchers +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/excludes/ModuleExclusions$$Lambda$524 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/selectors/SelectorStateResolverResults$Registration +instanceKlass com/google/common/primitives/Longs$AsciiDigits +instanceKlass org/gradle/internal/component/external/descriptor/DefaultExclude +instanceKlass org/gradle/internal/component/model/Exclude +instanceKlass org/gradle/internal/component/external/model/ConfigurationBoundExternalDependencyMetadata +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/excludes/factories/Optimizations +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/excludes/factories/OptimizingExcludeFactory$$Lambda$523 +instanceKlass org/gradle/internal/component/model/DefaultCompatibilityCheckResult +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ResolvedFilesCollectingVisitor +instanceKlass org/gradle/api/internal/file/AbstractFileCollection$2 +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfiguration$ConfigurationResolvableDependencies$ConfigurationArtifactView +instanceKlass org/gradle/api/internal/initialization/DefaultScriptClassPathResolver$$Lambda$522 +instanceKlass org/gradle/api/internal/initialization/DefaultScriptClassPathResolver$$Lambda$521 +instanceKlass org/gradle/api/internal/tasks/FailureCollectingTaskDependencyResolveContext +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/BuildDependenciesOnlyVisitedArtifactSet$BuildDependenciesOnlySelectedArtifactSet +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/DefaultVisitedArtifactResults$NoArtifactResults +instanceKlass org/gradle/api/internal/artifacts/transform/AttributeMatchingVariantSelector +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/DefaultResolutionResultBuilder$RootFactory +instanceKlass org/gradle/api/internal/artifacts/result/DefaultResolvedComponentResult +instanceKlass org/gradle/api/internal/artifacts/result/ResolvedComponentResultInternal +instanceKlass org/gradle/internal/service/scopes/ProjectScopeServices$$Lambda$520 +instanceKlass org/gradle/internal/service/scopes/DefaultProjectFinder +instanceKlass org/gradle/internal/execution/steps/CancelExecutionStep +instanceKlass org/gradle/caching/internal/CacheableEntity +instanceKlass org/gradle/internal/execution/steps/BuildCacheStep +instanceKlass org/gradle/internal/execution/steps/RecordOutputsStep +instanceKlass org/gradle/internal/execution/steps/legacy/MarkSnapshottingInputsFinishedStep +instanceKlass org/gradle/internal/execution/caching/CachingState$Disabled +instanceKlass org/gradle/internal/execution/caching/CachingState +instanceKlass org/gradle/internal/execution/caching/CachingStateFactory +instanceKlass org/gradle/internal/execution/steps/ResolveCachingStateStep +instanceKlass org/gradle/internal/execution/steps/SkipEmptyWorkStep +instanceKlass org/gradle/internal/execution/steps/legacy/MarkSnapshottingInputsStartedStep +instanceKlass org/gradle/internal/service/scopes/ExecutionGradleServices$$Lambda$519 +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$BMH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$BMH +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/internal/execution/history/impl/DefaultOutputFilesRepository +instanceKlass org/gradle/internal/cleanup/DefaultBuildOutputCleanupRegistry +instanceKlass org/gradle/caching/internal/controller/BuildCacheStoreCommand +instanceKlass org/gradle/caching/internal/controller/BuildCacheLoadCommand +instanceKlass org/gradle/caching/internal/controller/impl/DefaultBuildCacheCommandFactory +instanceKlass org/gradle/caching/internal/BuildCacheServices$3$$Lambda$518 +instanceKlass org/gradle/caching/internal/origin/OriginMetadataFactory$HostnameLookup +instanceKlass org/gradle/caching/internal/BuildCacheServices$3$$Lambda$517 +instanceKlass org/gradle/caching/internal/origin/OriginMetadataFactory$PropertiesConfigurator +instanceKlass org/gradle/internal/nativeintegration/services/NativeServices$FixedHostname +instanceKlass net/rubygrapefruit/platform/internal/MutableSystemInfo +instanceKlass net/rubygrapefruit/platform/internal/DefaultSystemInfo +instanceKlass org/gradle/caching/internal/BuildCacheServices$FilePermissionsAccessAdapter +instanceKlass org/gradle/caching/internal/packaging/impl/TarBuildCacheEntryPacker$$Lambda$516 +instanceKlass org/apache/commons/compress/archivers/ArchiveEntry +instanceKlass org/gradle/caching/internal/packaging/impl/TarBuildCacheEntryPacker +instanceKlass org/gradle/caching/internal/packaging/impl/GZipBuildCacheEntryPacker +instanceKlass org/gradle/caching/internal/packaging/impl/DefaultTarPackerFileSystemSupport +instanceKlass org/gradle/api/internal/artifacts/dsl/DefaultComponentMetadataHandler$$Lambda$515 +instanceKlass org/gradle/api/internal/artifacts/dsl/DefaultComponentMetadataHandler$$Lambda$514 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/moduleconverter/DefaultRootComponentMetadataBuilder$$Lambda$513 +instanceKlass org/gradle/api/internal/artifacts/ProjectBackedModule +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/NoRepositoriesResolver +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/CachingDependencyResultFactory +instanceKlass org/gradle/api/artifacts/result/DependencyResult +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/DefaultResolutionResultBuilder +instanceKlass org/gradle/api/internal/artifacts/ivyservice/InMemoryResolutionResultBuilder +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfiguration$$Lambda$512 +instanceKlass org/gradle/api/internal/tasks/TaskDependencyContainer$$Lambda$511 +instanceKlass org/gradle/internal/graph/CachingDirectedGraphWalker$NodeDetails +instanceKlass java/util/ArrayDeque$$Lambda$510 +instanceKlass org/gradle/api/internal/tasks/WorkDependencyResolver$1 +instanceKlass org/gradle/plugin/use/tracker/internal/PluginVersionTracker$$Lambda$509 +instanceKlass org/gradle/api/internal/initialization/DefaultScriptHandler$$Lambda$508 +instanceKlass org/gradle/api/internal/catalog/parser/StrictVersionParser$RichVersion +instanceKlass org/gradle/api/internal/artifacts/dsl/ParsedModuleStringNotation +instanceKlass org/gradle/api/internal/initialization/DefaultScriptHandler$$Lambda$507 +instanceKlass org/gradle/api/attributes/plugin/GradlePluginApiVersion$Impl +instanceKlass org/gradle/api/attributes/Bundling$Impl +instanceKlass org/gradle/api/internal/project/DefaultProjectStateRegistry$CalculatedModelValueImpl +instanceKlass org/gradle/api/internal/artifacts/dsl/dependencies/DefaultDependencyHandler$DirectDependencyAdder +instanceKlass org/gradle/api/artifacts/dsl/ExternalModuleDependencyVariantSpec +instanceKlass org/gradle/api/internal/artifacts/dsl/dependencies/DefaultDependencyHandler +instanceKlass org/gradle/api/artifacts/query/ArtifactResolutionQuery +instanceKlass org/gradle/api/internal/artifacts/query/DefaultArtifactResolutionQueryFactory +instanceKlass org/gradle/api/internal/artifacts/dsl/dependencies/DefaultDependencyConstraintHandler$DependencyConstraintAdder +instanceKlass org/gradle/api/internal/artifacts/dsl/dependencies/DefaultDependencyConstraintHandler$1 +instanceKlass org/gradle/api/internal/artifacts/dsl/dependencies/DynamicAddDependencyMethods +instanceKlass org/gradle/api/internal/artifacts/dsl/dependencies/DynamicAddDependencyMethods$DependencyAdder +instanceKlass org/gradle/api/internal/artifacts/dsl/dependencies/DefaultDependencyConstraintHandler +instanceKlass org/gradle/api/internal/notations/ClientModuleNotationParserFactory +instanceKlass org/gradle/api/internal/notations/DependencyConstraintProjectNotationConverter +instanceKlass org/gradle/api/internal/artifacts/dependencies/DefaultDependencyConstraint +instanceKlass org/gradle/api/internal/artifacts/dependencies/DependencyConstraintInternal +instanceKlass org/gradle/api/internal/notations/DependencyConstraintNotationParser$MinimalExternalDependencyNotationConverter +instanceKlass org/gradle/api/internal/notations/DependencyConstraintNotationParser +instanceKlass org/gradle/api/internal/notations/DependencyClassPathNotationConverter +instanceKlass org/gradle/api/internal/notations/DependencyProjectNotationConverter +instanceKlass org/gradle/api/internal/notations/DependencyFilesNotationConverter +instanceKlass org/gradle/internal/typeconversion/TypeFilteringNotationConverter +instanceKlass org/gradle/api/internal/notations/DependencyNotationParser$MinimalExternalDependencyNotationConverter +instanceKlass org/gradle/api/artifacts/MinimalExternalModuleDependency +instanceKlass org/gradle/api/internal/notations/DependencyNotationParser +instanceKlass org/gradle/api/internal/artifacts/DefaultDependencyFactory +instanceKlass org/gradle/api/internal/notations/ProjectDependencyFactory +instanceKlass org/gradle/plugin/use/internal/DefaultPluginRequestApplicator$1$1$$Lambda$506 +instanceKlass org/gradle/plugin/use/internal/DefaultPluginRequestApplicator$1$1$$Lambda$505 +instanceKlass org/gradle/plugin/use/internal/DefaultPluginRequestApplicator$1$1 +instanceKlass org/gradle/plugin/use/resolve/internal/PluginResolveContext +instanceKlass org/gradle/plugin/use/internal/DefaultPluginRequestApplicator$1 +instanceKlass org/gradle/plugin/use/resolve/internal/ArtifactRepositoriesPluginResolver$1 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ErrorHandlingConfigurationResolver$ErrorHandlingResolvedConfiguration +instanceKlass org/gradle/api/internal/artifacts/ivyservice/DefaultResolvedConfiguration +instanceKlass org/gradle/api/internal/artifacts/ivyservice/DefaultLenientConfiguration$1 +instanceKlass org/gradle/api/internal/artifacts/ResolveArtifactsBuildOperationType$Result +instanceKlass org/gradle/api/internal/artifacts/ivyservice/DefaultLenientConfiguration +instanceKlass org/gradle/api/artifacts/LenientConfiguration +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/oldresult/TransientConfigurationResultsLoader +instanceKlass org/gradle/api/internal/artifacts/configurations/ResolveConfigurationResolutionBuildOperationResult$LazyDesugaringAttributeContainer +instanceKlass org/gradle/api/internal/artifacts/configurations/ResolveConfigurationResolutionBuildOperationResult +instanceKlass org/gradle/api/internal/artifacts/configurations/ResolveConfigurationDependenciesBuildOperationType$Result +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ErrorHandlingConfigurationResolver$ErrorHandlingResolutionResult +instanceKlass org/gradle/api/internal/artifacts/ivyservice/DefaultConfigurationResolver$ArtifactResolveState +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfiguration$$Lambda$504 +instanceKlass org/gradle/api/internal/artifacts/transform/FilteredResultFactory +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfiguration$DefaultResolutionResultProvider +instanceKlass org/gradle/api/internal/artifacts/transform/DefaultExtraExecutionGraphDependenciesResolverFactory$$Lambda$503 +instanceKlass org/gradle/api/internal/artifacts/transform/TransformUpstreamDependencies +instanceKlass org/gradle/api/internal/artifacts/transform/TransformationStep +instanceKlass org/gradle/api/internal/artifacts/transform/Transformation +instanceKlass org/gradle/api/internal/artifacts/transform/TransformUpstreamDependenciesResolver +instanceKlass org/gradle/api/internal/artifacts/transform/DefaultExtraExecutionGraphDependenciesResolverFactory +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/SelectedArtifactSet +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/BuildDependenciesOnlyVisitedArtifactSet +instanceKlass org/gradle/api/internal/artifacts/result/DefaultResolutionResult +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/StreamingResolutionResultBuilder$RootFactory +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/oldresult/DefaultResolvedGraphResults +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/DefaultVisitedFileDependencyResults +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/SelectedArtifactResults +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/DefaultVisitedArtifactResults +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/store/DefaultBinaryStore$SimpleBinaryData +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/oldresult/TransientConfigurationResultsBuilder$$Lambda$502 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/StreamingResolutionResultBuilder$$Lambda$501 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/oldresult/TransientConfigurationResultsBuilder$$Lambda$500 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/ResolvedArtifactsGraphVisitor$ArtifactsForNode +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/ResolvedArtifactSet$1 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/ArtifactBackedResolvedVariant +instanceKlass org/gradle/api/artifacts/type/ArtifactTypeDefinition +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/ResolvableArtifact +instanceKlass org/gradle/internal/model/CalculatedValue +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/DefaultArtifactSet +instanceKlass org/gradle/api/internal/artifacts/transform/VariantSelector$Factory +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/ResolvedVariantSet +instanceKlass org/gradle/internal/component/external/model/FixedComponentArtifacts +instanceKlass org/gradle/internal/component/model/ComponentArtifacts +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/CachingModuleComponentRepository$$Lambda$499 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/artifacts/DefaultCachedArtifacts +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/artifacts/AbstractArtifactsCache$ModuleArtifactsCacheEntry +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/artifacts/ArtifactsAtRepositoryKey +instanceKlass org/gradle/internal/component/model/WrappedComponentResolveMetadata +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$498 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$497 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$496 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/StreamingResolutionResultBuilder$$Lambda$495 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/oldresult/TransientConfigurationResultsBuilder$$Lambda$494 +instanceKlass org/gradle/api/internal/attributes/AttributeDesugaring$$Lambda$493 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/conflicts/VersionConflictResolutionDetails +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/oldresult/TransientConfigurationResultsBuilder$$Lambda$492 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/ComponentState$$Lambda$491 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/ComponentState$$Lambda$490 +instanceKlass org/gradle/api/internal/artifacts/result/DefaultResolvedVariantResult +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/ComponentSelectionReasons$DefaultComponentSelectionReason +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/StreamingResolutionResultBuilder$$Lambda$489 +instanceKlass org/gradle/internal/component/local/model/DefaultProjectComponentSelector +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/StreamingResolutionResultBuilder$$Lambda$488 +instanceKlass org/gradle/cache/internal/BinaryStore$WriteAction +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/ResolveState$$Lambda$487 +instanceKlass org/gradle/internal/component/model/DefaultSelectedByVariantMatchingConfigurationMetadata +instanceKlass org/gradle/internal/component/model/DefaultMultipleCandidateResult +instanceKlass org/gradle/internal/component/model/AttributeSelectionUtils +instanceKlass org/gradle/api/internal/attributes/DefaultAttributesSchema$ExtraAttributesEntry +instanceKlass org/gradle/internal/component/model/MultipleCandidateMatcher +instanceKlass org/gradle/internal/component/model/ComponentAttributeMatcher$CachedQuery +instanceKlass org/gradle/internal/component/model/LoggingAttributeMatchingExplanationBuilder +instanceKlass org/gradle/internal/component/model/AttributeMatchingExplanationBuilder$$Lambda$486 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/internal/component/model/AttributeMatchingExplanationBuilder +instanceKlass org/gradle/internal/component/model/AttributeConfigurationSelector +instanceKlass org/gradle/internal/component/external/model/DefaultConfigurationMetadata$1 +instanceKlass org/gradle/internal/component/external/model/DefaultConfigurationMetadata$2 +instanceKlass org/gradle/internal/component/external/model/DefaultConfigurationMetadata$Builder +instanceKlass org/gradle/api/internal/artifacts/repositories/metadata/DefaultMavenImmutableAttributesFactory$ComponentTypeEntry +instanceKlass org/gradle/internal/component/external/model/DefaultShadowedCapability +instanceKlass org/gradle/internal/component/external/model/ShadowedCapability +instanceKlass org/gradle/internal/component/external/model/maven/DefaultMavenModuleResolveMetadata$1 +instanceKlass org/gradle/internal/component/external/model/AbstractConfigurationMetadata +instanceKlass org/gradle/internal/component/model/ModuleConfigurationMetadata +instanceKlass org/gradle/internal/component/model/DefaultIvyArtifactName +instanceKlass org/gradle/api/artifacts/ArtifactIdentifier +instanceKlass org/gradle/internal/component/external/model/DefaultModuleComponentArtifactMetadata +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/RepositoryChainModuleSource +instanceKlass org/gradle/internal/resolve/ResolveExceptionAnalyzer +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/RepositoryChainModuleResolution +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/RepositoryChainComponentMetaDataResolver$1 +instanceKlass org/gradle/api/internal/artifacts/DefaultComponentSelection +instanceKlass org/gradle/api/internal/artifacts/repositories/resolver/ComponentMetadataAdapter +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/CachedMetadataProvider +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$485 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$484 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$483 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$482 +instanceKlass org/gradle/internal/resolve/result/BuildableModuleComponentMetaDataResolveResult +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ComponentMetaDataResolveState +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolutionstrategy/DefaultCachePolicy$AbstractResolutionControl +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/dynamicversions/DefaultResolvedModuleVersion +instanceKlass org/gradle/internal/component/external/model/AbstractModuleComponentResolveMetadata +instanceKlass org/gradle/api/internal/artifacts/repositories/metadata/DefaultMetadataFileSource +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ModuleDescriptorHashModuleSource +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/parser/data/PomDependencyMgt +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/parser/GradlePomModuleDescriptorBuilder +instanceKlass org/gradle/internal/component/model/MutableModuleSources +instanceKlass org/gradle/api/capabilities/MutableCapabilitiesMetadata +instanceKlass org/gradle/internal/component/external/model/VariantMetadataRules +instanceKlass org/gradle/internal/component/external/model/maven/MavenModuleResolveMetadata +instanceKlass org/gradle/internal/component/external/model/MutableComponentVariant +instanceKlass org/gradle/internal/component/external/model/AbstractMutableModuleComponentResolveMetadata +instanceKlass org/gradle/internal/component/external/model/ExternalDependencyDescriptor +instanceKlass org/gradle/api/internal/attributes/DefaultImmutableAttributesFactory$$Lambda$481 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/ModuleMetadataSerializer$Reader +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/StringDeduplicatingDecoder +instanceKlass org/gradle/internal/resource/local/DefaultLocallyAvailableResource$$Lambda$480 +instanceKlass org/gradle/internal/resource/local/AbstractLocallyAvailableResource +instanceKlass org/gradle/api/internal/artifacts/ivyservice/WritableArtifactCacheLockingManager$CacheLockingPersistentCache$$Lambda$479 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/PersistentModuleMetadataCache$$Lambda$478 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/DefaultCachedMetadata +instanceKlass org/gradle/api/internal/artifacts/ivyservice/WritableArtifactCacheLockingManager$CacheLockingPersistentCache +instanceKlass org/gradle/cache/internal/CompositeCleanupAction$ScopedCleanupAction +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/ModuleMetadataCacheEntry +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/ModuleComponentAtRepositoryKey +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/conflicts/PotentialConflictFactory$NoConflict +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/conflicts/PotentialConflictFactory +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/conflicts/DefaultConflictHandler$$Lambda$477 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/selectors/SelectorStateResolverResults +instanceKlass org/gradle/api/artifacts/component/ProjectComponentSelector +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/strategy/AbstractVersionSelector +instanceKlass org/gradle/api/internal/artifacts/dependencies/DefaultResolvedVersionConstraint +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/ResolveState$$Lambda$476 +instanceKlass org/gradle/api/artifacts/ClientModule +instanceKlass org/gradle/internal/component/model/DefaultComponentOverrideMetadata +instanceKlass org/gradle/internal/component/model/ComponentOverrideMetadata +instanceKlass org/gradle/internal/resolve/result/BuildableComponentIdResolveResult +instanceKlass org/gradle/internal/resolve/result/ComponentIdResolveResult +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/ResolveState$$Lambda$475 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/SelectorState +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/ResolveState$SelectorCacheKey +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/LenientPlatformDependencyMetadata +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/DependencyGraphSelector +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/NodeState$$Lambda$474 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/NodeState$$Lambda$473 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/DependencyState +instanceKlass org/gradle/api/internal/attributes/AttributeValue$1 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/strict/StrictVersionConstraints +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/DefaultPendingDependenciesVisitor +instanceKlass org/gradle/internal/component/local/model/DslOriginDependencyMetadataWrapper +instanceKlass org/gradle/internal/component/local/model/DslOriginDependencyMetadata +instanceKlass org/gradle/internal/component/model/LocalComponentDependencyMetadata +instanceKlass org/gradle/api/internal/artifacts/ivyservice/moduleconverter/dependencies/AbstractIvyDependencyDescriptorFactory$$Lambda$472 +instanceKlass org/gradle/internal/component/external/model/DefaultModuleComponentSelector +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/DependencyGraphBuilder$1 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/selectors/SelectorStateResolver +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/ReplaceSelectionWithConflictResultAction +instanceKlass org/gradle/internal/component/model/SelectedByVariantMatchingConfigurationMetadata +instanceKlass org/gradle/api/internal/artifacts/ResolvedConfigurationIdentifier +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/ComponentState +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/DependencyGraphComponent +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/ModuleSelectors$$Lambda$471 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/ModuleSelectors$$Lambda$470 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/ModuleSelectors$$Lambda$469 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/ModuleSelectors$$Lambda$468 +instanceKlass java/util/Comparator$$Lambda$467 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/ModuleSelectors$$Lambda$466 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/ModuleSelectors$$Lambda$465 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass java/util/Collections$ReverseComparator2 +instanceKlass java/util/Collections$ReverseComparator +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/strategy/VersionParser$DefaultVersion +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/strategy/VersionParser$$Lambda$464 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/ModuleSelectors +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/PendingDependencies +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/selectors/ResolvableSelectorState +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/ResolveState$$Lambda$463 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/ModuleResolveState +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/conflicts/CandidateModule +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/ResolveOptimizations +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/DeselectVersionAction +instanceKlass org/gradle/api/internal/artifacts/ResolvedVersionConstraint +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/PendingDependenciesVisitor +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/ComponentResolutionState +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/StringVersioned +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/ResolveState +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/selectors/ComponentStateFactory +instanceKlass org/gradle/api/internal/WithEstimatedSize$Estimates +instanceKlass org/gradle/internal/component/model/DefaultVariantMetadata +instanceKlass org/gradle/internal/component/model/VariantResolveMetadata +instanceKlass org/gradle/api/internal/artifacts/ivyservice/moduleconverter/DefaultLocalComponentMetadataBuilder$1 +instanceKlass org/gradle/internal/component/model/ComponentConfigurationIdentifier +instanceKlass org/gradle/internal/component/model/VariantResolveMetadata$Identifier +instanceKlass org/gradle/internal/component/local/model/RootLocalComponentMetadata$RootLocalConfigurationMetadata$$Lambda$462 +instanceKlass org/gradle/internal/component/external/model/ShadowedCapabilityOnly +instanceKlass org/gradle/internal/component/external/model/ImmutableCapabilities +instanceKlass org/gradle/api/internal/artifacts/configurations/Configurations +instanceKlass org/gradle/internal/component/model/ImmutableModuleSources +instanceKlass org/gradle/internal/component/local/model/RootConfigurationMetadata +instanceKlass org/gradle/internal/component/local/model/DefaultLocalComponentMetadata$DefaultLocalConfigurationMetadata +instanceKlass org/gradle/internal/component/local/model/LocalConfigurationMetadata +instanceKlass org/gradle/internal/component/local/model/BuildableLocalConfigurationMetadata +instanceKlass org/gradle/api/internal/artifacts/DefaultModuleVersionIdentifier +instanceKlass org/gradle/api/internal/artifacts/DefaultImmutableModuleIdentifierFactory$$Lambda$461 +instanceKlass org/gradle/api/internal/artifacts/DefaultImmutableModuleIdentifierFactory$$Lambda$460 +instanceKlass org/gradle/api/internal/artifacts/DefaultModule +instanceKlass org/gradle/internal/resolve/result/DefaultResourceAwareResolveResult +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/ResolvedArtifactsGraphVisitor +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/ResolutionConflictTracker +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/DependencyGraphBuilder$$Lambda$459 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/DependencyGraphBuilder$$Lambda$458 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/EdgeState +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/DependencyGraphEdge +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/RootGraphNode +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/NodeState +instanceKlass org/gradle/internal/resolve/result/BuildableComponentResolveResult +instanceKlass org/gradle/internal/resolve/result/ComponentResolveResult +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/DependencyGraphBuilder +instanceKlass org/gradle/api/internal/artifacts/ivyservice/dependencysubstitution/DependencySubstitutionApplicator$$Lambda$457 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/dependencysubstitution/DependencySubstitutionApplicator$SubstitutionResult +instanceKlass org/gradle/api/internal/artifacts/ivyservice/dependencysubstitution/NoOpSubstitution +instanceKlass org/gradle/api/internal/artifacts/DependencySubstitutionInternal +instanceKlass org/gradle/api/internal/artifacts/DefaultGlobalDependencyResolutionRules$CompositeDependencySubstitutionRules$$Lambda$456 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/conflicts/RejectRemainingCandidates +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/conflicts/LastCandidateCapabilityResolver +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/conflicts/UserConfiguredCapabilityResolver +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/conflicts/PotentialConflict +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/conflicts/CapabilitiesConflictHandler$Candidate +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/conflicts/DefaultCapabilitiesConflictHandler +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/conflicts/ConflictContainer +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/conflicts/CompositeConflictResolver +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/ConflictResolverDetails +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/conflicts/DefaultConflictHandler +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/LatestModuleConflictResolver +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/ModuleConflictResolver +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/ConflictResolverFactory +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/DefaultArtifactDependencyResolver$DefaultResolveContextToComponentResolver +instanceKlass org/gradle/api/internal/artifacts/ivyservice/clientmodule/ClientModuleResolver +instanceKlass org/gradle/internal/resolve/resolver/DefaultArtifactSelector +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/ComponentResolversChain$ArtifactResolverChain +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingArtifactResolver +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/ComponentResolversChain$ComponentMetaDataResolverChain +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/ComponentResolversChain$DependencyToComponentIdResolverChain +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/VirtualComponentMetadataResolver +instanceKlass org/gradle/internal/resolve/resolver/ArtifactSelector +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/ComponentResolversChain +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/FilteredModuleComponentRepository +instanceKlass org/gradle/api/internal/artifacts/repositories/DefaultMavenArtifactRepository$$Lambda$455 +instanceKlass org/gradle/api/internal/artifacts/repositories/DefaultRepositoryContentDescriptor +instanceKlass org/gradle/api/artifacts/repositories/MavenRepositoryContentDescriptor +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/BaseModuleComponentRepository +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/CachingModuleComponentRepository$ResolveAndCacheRepositoryAccess +instanceKlass org/gradle/internal/resolve/result/BuildableArtifactSetResolveResult +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/CachingModuleComponentRepository$LocateInCacheRepositoryAccess +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/CachingModuleComponentRepository +instanceKlass org/gradle/api/internal/artifacts/dsl/DefaultComponentMetadataProcessor$$Lambda$454 +instanceKlass org/gradle/api/internal/artifacts/dsl/WrappingComponentMetadataContext +instanceKlass org/gradle/api/artifacts/ComponentMetadataContext +instanceKlass org/gradle/api/artifacts/ComponentMetadataDetails +instanceKlass org/gradle/api/internal/artifacts/dsl/DefaultComponentMetadataProcessor +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ResolveIvyFactory$DefaultMetadataResolutionContext +instanceKlass org/gradle/api/internal/artifacts/repositories/resolver/ExternalResourceResolver$AbstractRepositoryAccess +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ModuleComponentRepositoryAccess +instanceKlass org/gradle/api/internal/artifacts/repositories/resolver/VersionLister +instanceKlass org/gradle/api/internal/artifacts/repositories/AbstractArtifactRepository$1 +instanceKlass org/gradle/api/internal/artifacts/repositories/metadata/DefaultImmutableMetadataSources +instanceKlass org/gradle/api/internal/artifacts/repositories/metadata/MavenMetadataArtifactProvider +instanceKlass org/gradle/internal/component/model/ModuleDescriptorArtifactMetadata +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/parser/DescriptorParseContext +instanceKlass org/gradle/api/internal/artifacts/repositories/metadata/GradleModuleMetadataCompatibilityConverter +instanceKlass org/gradle/api/internal/artifacts/repositories/DefaultMavenArtifactRepository$MavenSnapshotDecoratingSource +instanceKlass org/gradle/internal/resource/transfer/CacheAwareExternalResourceAccessor$ResourceFileStore +instanceKlass org/gradle/internal/resource/ExternalResource$ContentAndMetadataAction +instanceKlass org/gradle/internal/resource/transfer/DefaultCacheAwareExternalResourceAccessor +instanceKlass org/gradle/internal/resource/transport/DefaultExternalResourceRepository +instanceKlass org/gradle/internal/resource/transfer/ProgressLoggingExternalResourceLister$1 +instanceKlass org/gradle/internal/resource/ExternalResourceListBuildOperationType$Result +instanceKlass org/gradle/internal/resource/transfer/ProgressLoggingExternalResourceAccessor$1 +instanceKlass org/gradle/internal/resource/ExternalResourceReadMetadataBuildOperationType$Result +instanceKlass org/gradle/internal/resource/transfer/AbstractProgressLoggingHandler +instanceKlass org/gradle/internal/resource/transfer/CacheAwareExternalResourceAccessor +instanceKlass org/gradle/internal/resource/transport/AbstractRepositoryTransport +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolutionstrategy/DefaultExternalResourceCachePolicy +instanceKlass org/gradle/internal/resource/transfer/DefaultExternalResourceConnector$NoOpStats +instanceKlass org/gradle/internal/resource/transfer/DefaultExternalResourceConnector$1 +instanceKlass org/gradle/internal/resource/transfer/DefaultExternalResourceConnector$ExternalResourceAccessStats +instanceKlass org/gradle/internal/resource/transfer/DefaultExternalResourceConnector +instanceKlass org/apache/http/HttpEntityEnclosingRequest +instanceKlass org/apache/http/HttpEntity +instanceKlass org/gradle/internal/resource/transport/http/HttpResourceUploader +instanceKlass org/gradle/internal/resource/transport/http/HttpResourceLister +instanceKlass org/gradle/internal/resource/transfer/ExternalResourceReadResponse +instanceKlass org/gradle/internal/resource/transfer/AbstractExternalResourceAccessor +instanceKlass org/apache/http/message/AbstractHttpMessage +instanceKlass org/apache/http/client/methods/AbortableHttpRequest +instanceKlass org/apache/http/client/methods/HttpExecutionAware +instanceKlass org/apache/http/client/methods/Configurable +instanceKlass org/apache/http/client/methods/HttpUriRequest +instanceKlass org/apache/http/protocol/HttpContext +instanceKlass org/slf4j/spi/LocationAwareLogger +instanceKlass org/apache/commons/logging/impl/SLF4JLog +instanceKlass org/apache/commons/logging/impl/SLF4JLocationAwareLog +instanceKlass org/apache/commons/logging/Log +instanceKlass org/apache/commons/logging/LogFactory +instanceKlass org/apache/http/conn/ssl/DefaultHostnameVerifier +instanceKlass org/gradle/internal/resource/transport/http/DefaultHttpSettings$Builder +instanceKlass org/gradle/internal/resource/transport/http/DefaultHttpSettings$2$2 +instanceKlass javax/net/ssl/X509TrustManager +instanceKlass javax/net/ssl/TrustManager +instanceKlass org/gradle/internal/resource/transport/http/DefaultHttpSettings$2$1 +instanceKlass org/gradle/internal/resource/transport/http/DefaultHttpSettings$2 +instanceKlass org/gradle/internal/resource/transport/http/DefaultHttpSettings$1 +instanceKlass org/gradle/internal/resource/transport/http/HttpTimeoutSettings +instanceKlass org/gradle/internal/resource/transport/http/HttpProxySettings +instanceKlass javax/net/ssl/HostnameVerifier +instanceKlass org/gradle/internal/resource/transport/http/DefaultHttpSettings +instanceKlass org/gradle/api/internal/artifacts/repositories/transport/RepositoryTransportFactory$DefaultResourceConnectorSpecification +instanceKlass org/gradle/internal/verifier/HttpRedirectVerifierFactory$$Lambda$453 +instanceKlass org/gradle/internal/verifier/HttpRedirectVerifierFactory +instanceKlass org/gradle/api/internal/artifacts/repositories/DefaultUrlArtifactRepository$$Lambda$452 +instanceKlass org/gradle/api/internal/artifacts/repositories/DefaultUrlArtifactRepository$$Lambda$451 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ResolveIvyFactory$ParentModuleLookupResolver +instanceKlass org/gradle/internal/resolve/result/BuildableComponentArtifactsResolveResult +instanceKlass org/gradle/internal/resolve/result/BuildableTypedResolveResult +instanceKlass org/gradle/internal/resolve/result/ErroringResolveResult +instanceKlass org/gradle/internal/resolve/result/ResolveResult +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/RepositoryChainArtifactResolver +instanceKlass org/gradle/internal/resolve/result/ResourceAwareResolveResult +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/RepositoryChainComponentMetaDataResolver +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/DynamicVersionResolver +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/RepositoryChainDependencyToComponentIdResolver +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/UserResolverChain$ModuleTransformer +instanceKlass org/gradle/api/specs/NotSpec +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ComponentSelectionRulesProcessor$$Lambda$450 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ComponentSelectionRulesProcessor +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/Versioned +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/MetadataProvider +instanceKlass org/gradle/api/internal/artifacts/ComponentSelectionInternal +instanceKlass org/gradle/api/artifacts/ComponentSelection +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/DefaultVersionedComponentChooser +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/VersionedComponentChooser +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/UserResolverChain +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/CompositeDependencyArtifactsVisitor +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/ValidatingArtifactsVisitor +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/CompositeDependencyGraphVisitor +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/oldresult/ResolutionFailureCollector +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/VisitedFileDependencyResults +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/FileDependencyCollectingGraphVisitor +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/ArtifactSet +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/VisitedArtifactsResults +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/DefaultResolvedArtifactsBuilder +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/DefaultComponentSelectionDescriptor +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/ComponentSelectionReasonInternal +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/ComponentSelectionDescriptorInternal +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/ComponentSelectionReasons +instanceKlass org/gradle/api/internal/artifacts/ivyservice/dependencysubstitution/DefaultDependencySubstitutions$ProjectPathConverter +instanceKlass org/gradle/api/artifacts/DependencySubstitutions$Substitution +instanceKlass org/gradle/api/internal/artifacts/ivyservice/dependencysubstitution/DefaultDependencySubstitutions +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolutionstrategy/DefaultCachePolicy$$Lambda$449 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolutionstrategy/DefaultCachePolicy$$Lambda$448 +instanceKlass org/gradle/api/internal/artifacts/cache/ArtifactResolutionControl +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolutionstrategy/DefaultCachePolicy$$Lambda$447 +instanceKlass org/gradle/api/internal/artifacts/cache/ModuleResolutionControl +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolutionstrategy/DefaultCachePolicy$$Lambda$446 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/api/internal/artifacts/cache/DependencyResolutionControl +instanceKlass org/gradle/api/internal/artifacts/cache/ResolutionControl +instanceKlass org/gradle/api/internal/artifacts/configurations/MutationValidator$$Lambda$445 +instanceKlass org/gradle/internal/typeconversion/FlatteningNotationParser +instanceKlass org/gradle/api/artifacts/DependencySubstitution +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolutionstrategy/DefaultComponentSelectionRules +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolutionstrategy/DefaultCachePolicy +instanceKlass org/gradle/api/internal/artifacts/ComponentSelectionRulesInternal +instanceKlass org/gradle/api/artifacts/ComponentSelectionRules +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolutionstrategy/DefaultResolutionStrategy +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/conflicts/UpgradeCapabilityResolver +instanceKlass org/gradle/internal/component/external/model/DefaultComponentVariantIdentifier +instanceKlass org/gradle/api/artifacts/ComponentVariantIdentifier +instanceKlass org/gradle/internal/component/external/model/ImmutableCapability +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/conflicts/CapabilitiesConflictHandler$CandidateDetails +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolutionstrategy/DefaultCapabilitiesResolution$DefaultCapabilityResolutionDetails +instanceKlass org/gradle/api/artifacts/CapabilityResolutionDetails +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/conflicts/CapabilitiesConflictHandler$ResolutionDetails +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/conflicts/ConflictResolutionResult +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolutionstrategy/DefaultCapabilitiesResolution +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolutionstrategy/CapabilitiesResolutionInternal +instanceKlass org/gradle/api/artifacts/CapabilitiesResolution +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/projectresult/ResolvedLocalComponentsResultGraphVisitor +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/ComponentResultSerializer +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/ResolvedGraphDependency +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/DependencyResultSerializer +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/ResolvedGraphComponent +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/StreamingResolutionResultBuilder +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/DependencyGraphNode +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/oldresult/ResolvedConfigurationDependencyGraphVisitor +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/oldresult/ResolvedGraphResults +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/oldresult/DefaultResolvedConfigurationBuilder +instanceKlass org/gradle/api/internal/artifacts/ResolvedConfigurationIdentifierSerializer +instanceKlass org/gradle/api/artifacts/ResolvedDependency +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/oldresult/TransientConfigurationResults +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/oldresult/TransientConfigurationResultsBuilder +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/store/CachedStoreFactory$SimpleStore +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/store/CachedStoreFactory$Stats +instanceKlass org/gradle/cache/internal/Store +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/store/CachedStoreFactory +instanceKlass org/gradle/cache/internal/BinaryStore$BinaryData +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/store/DefaultBinaryStore +instanceKlass java/io/DeleteOnExitHook$1 +instanceKlass java/io/DeleteOnExitHook +instanceKlass org/gradle/cache/internal/BinaryStore +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/store/ResolutionResultsStoreFactory$1 +instanceKlass org/gradle/api/internal/CompositeDomainObjectSet$2 +instanceKlass org/gradle/api/internal/CompositeDomainObjectSet$1 +instanceKlass org/gradle/api/internal/CompositeDomainObjectSet$ItemNotInCompositeSpec +instanceKlass org/gradle/api/internal/CompositeDomainObjectSet$ItemIsUniqueInCompositeSpec +instanceKlass org/gradle/api/internal/CompositeDomainObjectSet$DomainObjectCompositeCollection +instanceKlass org/gradle/api/internal/artifacts/DefaultResolverResults +instanceKlass org/gradle/api/internal/attributes/ImmutableAttributeContainerWithErrorMessage +instanceKlass org/gradle/api/internal/artifacts/repositories/AbstractAuthenticationSupportedRepository$$Lambda$444 +instanceKlass org/gradle/api/internal/artifacts/repositories/descriptor/UrlRepositoryDescriptor$Builder +instanceKlass org/gradle/api/internal/artifacts/configurations/ResolveConfigurationResolutionBuildOperationDetails$RepositoryImpl$$Lambda$443 +instanceKlass org/gradle/api/internal/artifacts/configurations/ResolveConfigurationResolutionBuildOperationDetails$RepositoryImpl +instanceKlass org/gradle/api/internal/artifacts/configurations/ResolveConfigurationDependenciesBuildOperationType$Repository +instanceKlass org/gradle/api/internal/artifacts/DefaultDependencyManagementServices$DependencyResolutionScopeServices$$Lambda$442 +instanceKlass org/gradle/api/internal/artifacts/configurations/ResolveConfigurationResolutionBuildOperationDetails +instanceKlass org/gradle/api/internal/artifacts/configurations/ResolveConfigurationDependenciesBuildOperationType$Details +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfiguration$1 +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfiguration$$Lambda$441 +instanceKlass org/gradle/api/internal/artifacts/dependencies/AbstractExternalModuleDependency$$Lambda$440 +instanceKlass org/gradle/api/internal/initialization/RootScriptDomainObjectContext$CalculatedModelValueImpl +instanceKlass org/gradle/api/artifacts/ConfigurationVariant +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfigurationPublications$ConfigurationVariantFactory +instanceKlass org/gradle/api/internal/artifacts/DefaultPublishArtifactSet$ArtifactsFileCollection +instanceKlass org/gradle/api/internal/tasks/AbstractTaskDependency$1 +instanceKlass org/gradle/api/internal/tasks/AbstractTaskDependency +instanceKlass org/gradle/api/internal/file/collections/MinimalFileSet +instanceKlass org/gradle/api/internal/artifacts/DefaultDependencySet$MutationValidationAction +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfiguration$$Lambda$439 +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfiguration$ConfigurationDescription +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfiguration$ArtifactSetResult +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfiguration$ArtifactCollectionResolvedArtifactsFactory +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfiguration$AllArtifactsProvider +instanceKlass org/gradle/api/internal/artifacts/configurations/PublishArtifactSetProvider +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfiguration$ArtifactViewConfiguration +instanceKlass org/gradle/api/artifacts/ArtifactView$ViewConfiguration +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfiguration$DefaultResolutionHost +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfiguration$SelectedArtifactsProvider +instanceKlass org/gradle/api/internal/attributes/DefaultMutableAttributeContainer +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfiguration$$Lambda$438 +instanceKlass org/gradle/internal/lazy/Lazy$$Lambda$437 +instanceKlass org/gradle/internal/lazy/UnsafeLazy +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfiguration$$Lambda$436 +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfiguration$$Lambda$435 +instanceKlass org/gradle/api/artifacts/DependencyConstraint +instanceKlass org/gradle/api/artifacts/ExcludeRule +instanceKlass org/gradle/api/internal/file/collections/FileSystemMirroringFileTree +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfigurationPublications +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfiguration$ConfigurationResolvableDependencies +instanceKlass org/gradle/api/internal/artifacts/configurations/ResolvableDependenciesInternal +instanceKlass org/gradle/api/internal/DelegatingDomainObjectSet +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfiguration$ConfigurationArtifactCollection +instanceKlass org/gradle/api/internal/artifacts/configurations/ArtifactCollectionInternal +instanceKlass org/gradle/api/artifacts/ArtifactCollection +instanceKlass org/gradle/api/internal/artifacts/configurations/OutgoingVariant +instanceKlass org/gradle/internal/deprecation/DeprecationMessageBuilder$WithDocumentation +instanceKlass org/gradle/internal/logging/text/TreeFormatter +instanceKlass org/gradle/api/internal/artifacts/configurations/ResolutionHost +instanceKlass org/gradle/api/internal/artifacts/configurations/ResolutionResultProvider +instanceKlass org/gradle/api/artifacts/DependencyConstraintSet +instanceKlass org/gradle/api/artifacts/ConfigurationPublications +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfiguration$ResolveState +instanceKlass org/gradle/api/internal/artifacts/ResolverResults +instanceKlass org/gradle/api/artifacts/ResolvableDependencies +instanceKlass org/gradle/api/artifacts/ArtifactView +instanceKlass org/gradle/api/artifacts/DependencySet +instanceKlass org/gradle/api/artifacts/PublishArtifactSet +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/projectresult/ResolvedProjectConfiguration +instanceKlass org/gradle/api/internal/artifacts/configurations/DetachedConfigurationsProvider +instanceKlass org/gradle/internal/locking/NoOpDependencyLockingProvider +instanceKlass org/gradle/api/internal/artifacts/dependencies/AbstractVersionConstraint +instanceKlass org/gradle/api/internal/artifacts/VersionConstraintInternal +instanceKlass org/gradle/api/artifacts/MutableVersionConstraint +instanceKlass org/gradle/api/internal/artifacts/DefaultExcludeRuleContainer +instanceKlass org/gradle/api/artifacts/ExcludeRuleContainer +instanceKlass org/gradle/api/internal/artifacts/dependencies/ModuleDependencyCapabilitiesInternal +instanceKlass org/gradle/api/artifacts/ModuleDependencyCapabilitiesHandler +instanceKlass org/gradle/api/artifacts/DependencyArtifact +instanceKlass org/gradle/api/internal/artifacts/dependencies/AbstractDependency +instanceKlass org/gradle/api/internal/artifacts/ResolvableDependency +instanceKlass org/gradle/api/artifacts/ExternalModuleDependency +instanceKlass org/gradle/api/artifacts/ExternalDependency +instanceKlass org/gradle/internal/composite/DefaultBuildIncluder$$Lambda$434 +instanceKlass org/gradle/plugin/use/internal/DefaultPluginRequestApplicator$NotFound +instanceKlass org/gradle/api/plugins/quality/internal/AbstractCodeQualityPlugin +instanceKlass org/gradle/api/plugins/ApplicationPlugin$PreventDestinationOverwrite +instanceKlass org/gradle/api/plugins/ApplicationPlugin +instanceKlass org/gradle/plugin/use/resolve/internal/SimplePluginResolution +instanceKlass org/gradle/api/plugins/JavaPlugin$BuildableJavaComponentImpl +instanceKlass org/gradle/api/internal/component/BuildableJavaComponent +instanceKlass org/gradle/api/plugins/JavaPlugin +instanceKlass org/gradle/api/internal/artifacts/dsl/ModuleVersionSelectorParsers$StringConverter +instanceKlass org/gradle/api/internal/artifacts/dsl/ModuleVersionSelectorParsers +instanceKlass org/gradle/plugin/management/internal/DefaultPluginResolveDetails +instanceKlass org/gradle/plugin/management/PluginResolveDetails +instanceKlass org/gradle/plugin/use/internal/DefaultPluginRequestApplicator$$Lambda$433 +instanceKlass org/gradle/plugin/use/internal/DefaultPluginRequestApplicator$Result +instanceKlass org/gradle/plugin/use/resolve/internal/AlreadyOnClasspathPluginResolver +instanceKlass org/gradle/plugin/use/resolve/internal/ArtifactRepositoriesPluginResolver +instanceKlass org/gradle/plugin/use/internal/PluginResolverFactory$$Lambda$432 +instanceKlass org/gradle/plugin/use/resolve/internal/CorePluginResolver +instanceKlass org/gradle/plugin/use/resolve/internal/PluginResolution +instanceKlass org/gradle/plugin/use/resolve/internal/NoopPluginResolver +instanceKlass org/gradle/plugin/use/resolve/internal/CompositePluginResolver +instanceKlass org/gradle/api/internal/DefaultNamedDomainObjectCollection$ObjectBackedElementInfo +instanceKlass org/gradle/api/internal/artifacts/repositories/DefaultBaseRepositoryFactory$$Lambda$431 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/api/internal/artifacts/repositories/DefaultMavenArtifactRepository$$Lambda$430 +instanceKlass org/gradle/api/internal/artifacts/repositories/AbstractArtifactRepository$$Lambda$429 +instanceKlass com/google/common/base/Suppliers$MemoizingSupplier +instanceKlass com/google/common/base/Suppliers$NonSerializableMemoizingSupplier +instanceKlass org/gradle/api/internal/artifacts/repositories/AbstractArtifactRepository$$Lambda$428 +instanceKlass org/gradle/api/internal/artifacts/repositories/DefaultMavenArtifactRepository$$Lambda$427 +instanceKlass org/gradle/api/internal/artifacts/repositories/ArtifactResolutionDetails +instanceKlass org/gradle/internal/resolve/caching/ImplicitInputsCapturingInstantiator +instanceKlass org/gradle/api/internal/artifacts/repositories/AuthenticationSupporter +instanceKlass org/gradle/api/artifacts/repositories/PasswordCredentials +instanceKlass org/gradle/api/credentials/PasswordCredentials +instanceKlass org/gradle/api/credentials/Credentials +instanceKlass org/gradle/api/internal/artifacts/repositories/DefaultMavenArtifactRepository$MavenMetadataSources +instanceKlass org/gradle/api/internal/artifacts/repositories/DefaultUrlArtifactRepository +instanceKlass org/gradle/api/internal/artifacts/repositories/metadata/DefaultMavenPomMetadataSource$MavenMetadataValidator +instanceKlass org/gradle/api/internal/artifacts/repositories/metadata/AbstractMetadataSource +instanceKlass org/gradle/api/internal/artifacts/repositories/maven/MavenMetadataLoader +instanceKlass org/gradle/api/internal/artifacts/repositories/resolver/ExternalResourceResolver +instanceKlass org/gradle/api/internal/artifacts/repositories/resolver/ExternalResourceArtifactResolver +instanceKlass org/gradle/api/artifacts/repositories/MavenArtifactRepository$MetadataSources +instanceKlass org/gradle/api/internal/artifacts/repositories/metadata/ImmutableMetadataSources +instanceKlass org/gradle/api/internal/artifacts/repositories/metadata/MetadataSource +instanceKlass org/gradle/api/internal/artifacts/ModuleVersionPublisher +instanceKlass org/gradle/api/internal/artifacts/repositories/metadata/MetadataArtifactProvider +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ConfiguredModuleComponentRepository +instanceKlass org/gradle/api/internal/artifacts/repositories/descriptor/RepositoryDescriptor +instanceKlass org/gradle/api/artifacts/repositories/RepositoryResourceAccessor +instanceKlass org/gradle/api/internal/artifacts/repositories/RepositoryContentDescriptorInternal +instanceKlass org/gradle/api/internal/DefaultPolymorphicDomainObjectContainer$2 +instanceKlass org/gradle/api/internal/DefaultPolymorphicNamedEntityInstantiator +instanceKlass org/gradle/api/internal/PolymorphicNamedEntityInstantiator +instanceKlass org/gradle/api/internal/artifacts/repositories/AbstractArtifactRepository +instanceKlass org/gradle/api/internal/artifacts/repositories/ContentFilteringRepository +instanceKlass org/gradle/api/internal/artifacts/repositories/ArtifactRepositoryInternal +instanceKlass org/gradle/internal/artifacts/repositories/AuthenticationSupportedInternal +instanceKlass org/gradle/api/internal/artifacts/repositories/PublicationAwareRepository +instanceKlass org/gradle/api/internal/artifacts/repositories/ResolutionAwareRepository +instanceKlass org/gradle/api/internal/artifacts/repositories/DefaultBaseRepositoryFactory$NamedMavenRepositoryDescriber +instanceKlass org/gradle/plugin/use/internal/DefaultPluginArtifactRepositories +instanceKlass org/gradle/plugin/management/internal/MultiPluginRequests +instanceKlass org/gradle/plugin/use/internal/PluginRequestCollector$2 +instanceKlass org/gradle/plugin/use/internal/PluginRequestCollector$1 +instanceKlass com/google/common/base/Strings +instanceKlass org/gradle/plugin/use/internal/PluginRequestCollector$PluginDependencySpecImpl +instanceKlass org/gradle/plugin/use/PluginDependency +instanceKlass org/gradle/api/provider/ProviderConvertible +instanceKlass org/gradle/plugin/use/PluginDependencySpec +instanceKlass org/gradle/plugin/use/internal/PluginRequestCollector$PluginDependenciesSpecImpl +instanceKlass org/gradle/plugin/use/PluginDependenciesSpec +instanceKlass org/codehaus/groovy/runtime/metaclass/ClosureMetaClass$StandardClosureChooser +instanceKlass org/gradle/internal/service/scopes/ProjectScopeServices$$Lambda$426 +instanceKlass org/gradle/plugin/use/internal/PluginRequestCollector +instanceKlass org/gradle/api/artifacts/VersionCatalogsExtension +instanceKlass org/gradle/configuration/ProjectScriptTarget +instanceKlass org/gradle/internal/build/event/types/DefaultScriptPluginIdentifier +instanceKlass org/gradle/configuration/project/BuildScriptProcessor$$Lambda$425 +instanceKlass org/gradle/internal/service/scopes/ProjectScopeServices$ScriptScopedContext +instanceKlass org/gradle/internal/service/scopes/ProjectScopeServices$ProjectBackedModuleMetaDataProvider +instanceKlass org/gradle/internal/service/scopes/ProjectBackedPropertyHost +instanceKlass org/gradle/nativeplatform/internal/CompilerOutputFileNamingScheme +instanceKlass org/gradle/api/artifacts/type/ArtifactTypeContainer +instanceKlass org/gradle/buildinit/plugins/WrapperPlugin$$Lambda$424 +instanceKlass org/gradle/buildinit/plugins/WrapperPlugin +instanceKlass org/gradle/buildinit/plugins/BuildInitPlugin$$Lambda$423 +instanceKlass org/gradle/api/internal/collections/AbstractIterationOrderRetainingElementSource$ValuePointer +instanceKlass org/gradle/buildinit/plugins/BuildInitPlugin$InitBuildOnlyIfSpec +instanceKlass org/gradle/buildinit/plugins/BuildInitPlugin$InitBuildDependsOnCallable +instanceKlass org/gradle/buildinit/plugins/BuildInitPlugin$FileDetails +instanceKlass org/gradle/buildinit/plugins/BuildInitPlugin +instanceKlass org/gradle/kotlin/dsl/tooling/builders/KotlinDslScriptsModelBuilder +instanceKlass kotlin/collections/ArraysUtilJVM +instanceKlass kotlin/collections/ArraysKt__ArraysJVMKt +instanceKlass kotlin/collections/CollectionsKt__CollectionsJVMKt +instanceKlass org/gradle/kotlin/dsl/tooling/builders/KotlinBuildScriptTemplateModelBuilder +instanceKlass org/gradle/kotlin/dsl/tooling/builders/KotlinBuildScriptModelBuilder +instanceKlass org/gradle/tooling/internal/protocol/cpp/InternalCppTestSuite +instanceKlass org/gradle/tooling/internal/protocol/cpp/InternalCppLibrary +instanceKlass org/gradle/tooling/internal/protocol/cpp/InternalCppApplication +instanceKlass org/gradle/language/cpp/internal/tooling/DefaultCppComponentModel +instanceKlass org/gradle/language/cpp/CppComponent +instanceKlass org/gradle/language/ComponentWithTargetMachines +instanceKlass org/gradle/language/ComponentWithDependencies +instanceKlass org/gradle/language/ComponentWithBinaries +instanceKlass org/gradle/api/component/SoftwareComponent +instanceKlass org/gradle/language/cpp/internal/tooling/CppModelBuilder +instanceKlass org/gradle/plugins/ide/internal/tooling/BuildEnvironmentBuilder +instanceKlass org/gradle/plugins/ide/internal/tooling/PublicationsBuilder +instanceKlass org/gradle/plugins/ide/internal/tooling/model/TaskNameComparator +instanceKlass org/gradle/plugins/ide/internal/tooling/BuildInvocationsBuilder +instanceKlass org/gradle/plugins/ide/internal/tooling/BasicIdeaModelBuilder +instanceKlass org/gradle/plugins/ide/internal/tooling/model/PartialBasicGradleProject +instanceKlass org/gradle/plugins/ide/internal/tooling/GradleBuildBuilder +instanceKlass org/gradle/tooling/provider/model/internal/BuildScopeModelBuilder +instanceKlass org/gradle/plugins/ide/internal/configurer/HierarchicalElementAdapter +instanceKlass org/gradle/plugins/ide/internal/configurer/EclipseModelAwareUniqueProjectNameProvider +instanceKlass org/gradle/plugins/ide/eclipse/model/AbstractClasspathEntry +instanceKlass org/gradle/plugins/ide/eclipse/model/ClasspathEntry +instanceKlass org/objectweb/asm/Opcodes +instanceKlass org/gradle/plugins/ide/internal/tooling/EclipseModelBuilder +instanceKlass org/gradle/plugins/ide/internal/tooling/RunEclipseTasksBuilder +instanceKlass org/gradle/plugins/ide/internal/tooling/RunBuildDependenciesTaskBuilder +instanceKlass org/gradle/tooling/provider/model/ParameterizedToolingModelBuilder +instanceKlass org/gradle/tooling/model/GradleModuleVersion +instanceKlass org/gradle/tooling/model/idea/IdeaDependencyScope +instanceKlass org/gradle/tooling/model/idea/IdeaCompilerOutput +instanceKlass org/gradle/tooling/model/idea/IdeaLanguageLevel +instanceKlass org/gradle/plugins/ide/internal/tooling/IdeaModelBuilder +instanceKlass org/gradle/plugins/ide/internal/tooling/model/LaunchableGradleTask +instanceKlass org/gradle/tooling/internal/protocol/InternalLaunchable +instanceKlass org/gradle/tooling/internal/gradle/GradleProjectIdentity +instanceKlass org/gradle/tooling/internal/gradle/GradleBuildIdentity +instanceKlass org/gradle/plugins/ide/internal/tooling/GradleProjectBuilder +instanceKlass org/gradle/internal/service/scopes/BuildScopeServices$$Lambda$422 +instanceKlass org/gradle/tooling/provider/model/internal/DefaultToolingModelBuilderRegistry$RegistrationImpl +instanceKlass org/gradle/tooling/provider/model/internal/DefaultToolingModelBuilderRegistry$VoidToolingModelBuilder +instanceKlass org/gradle/tooling/provider/model/internal/ToolingModelBuilderLookup$Builder +instanceKlass org/gradle/tooling/provider/model/internal/ToolingModelBuilderLookup$Registration +instanceKlass org/gradle/plugins/ide/internal/tooling/ToolingModelServices$BuildScopeToolingServices$1 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/projectmodule/DefaultProjectPublicationRegistry +instanceKlass org/gradle/api/internal/project/DefaultProjectTaskLister +instanceKlass org/gradle/jvm/toolchain/internal/task/ShowToolchainsTaskConfigurator$$Lambda$421 +instanceKlass org/gradle/api/internal/provider/Collectors$SingleElement +instanceKlass org/gradle/api/internal/collections/FilteredCollection$FilteringIterator +instanceKlass org/gradle/api/internal/collections/CollectionFilter$1 +instanceKlass org/gradle/api/plugins/HelpTasksPlugin$$Lambda$420 +instanceKlass org/gradle/api/internal/DefaultNamedDomainObjectCollection$FilteredIndex +instanceKlass org/gradle/api/internal/collections/DefaultCollectionEventRegister$FilteredEventRegister +instanceKlass org/gradle/api/internal/collections/FilteredCollection +instanceKlass org/gradle/api/specs/Specs$2 +instanceKlass org/gradle/api/specs/Specs$1 +instanceKlass org/gradle/api/specs/Specs +instanceKlass org/gradle/api/internal/tasks/DefaultRealizableTaskCollection +instanceKlass org/gradle/api/plugins/HelpTasksPlugin$$Lambda$419 +instanceKlass org/apache/commons/lang/text/StrTokenizer +instanceKlass org/apache/commons/lang/text/StrBuilder +instanceKlass org/objectweb/asm/Handle +instanceKlass org/objectweb/asm/Context +instanceKlass org/objectweb/asm/ClassReader +instanceKlass org/gradle/api/internal/DefaultNamedDomainObjectCollection$ProviderBackedElementInfo +instanceKlass org/gradle/api/internal/DefaultNamedDomainObjectCollection$ElementInfo +instanceKlass org/gradle/api/internal/provider/Collectors$ElementFromProvider +instanceKlass org/gradle/api/internal/provider/Collectors$TypedCollector +instanceKlass org/gradle/api/internal/provider/Collectors$ProvidedCollector +instanceKlass org/gradle/api/internal/provider/ChangingValue +instanceKlass org/gradle/configuration/internal/DefaultUserCodeApplicationContext$CurrentApplication$1 +instanceKlass org/gradle/api/internal/DefaultCollectionCallbackActionDecorator$BuildOperationEmittingAction +instanceKlass org/gradle/api/internal/DefaultMutationGuard$2 +instanceKlass org/gradle/api/internal/tasks/DefaultTaskContainer$RealizeDetails +instanceKlass com/google/common/reflect/Reflection +instanceKlass com/google/common/reflect/Types$TypeVariableInvocationHandler +instanceKlass com/google/common/reflect/Types$TypeVariableImpl +instanceKlass com/google/common/reflect/Types$NativeTypeVariableEquals +instanceKlass org/gradle/api/internal/provider/ValueSupplier$ExecutionTimeValue +instanceKlass org/gradle/api/internal/provider/ValueSupplier$ValueProducer +instanceKlass org/gradle/tooling/internal/provider/runner/PluginApplicationTracker$$Lambda$418 +instanceKlass org/gradle/tooling/internal/provider/runner/TaskOriginTracker$$Lambda$417 +instanceKlass org/gradle/api/internal/tasks/DefaultTaskContainer$RegisterDetails +instanceKlass org/gradle/api/internal/tasks/DefaultTaskContainer$3 +instanceKlass org/gradle/model/internal/registry/RuleBindings$ScopeIndex +instanceKlass org/gradle/model/internal/registry/RuleBindings$PredicateMatches +instanceKlass org/gradle/internal/service/scopes/ProjectScopeServices$$Lambda$416 +instanceKlass org/gradle/model/internal/registry/DefaultModelRegistry$$Lambda$415 +instanceKlass org/gradle/model/internal/registry/DefaultModelRegistry$5 +instanceKlass org/gradle/model/internal/registry/NodeAtState +instanceKlass org/gradle/model/internal/registry/DefaultModelRegistry$GoalGraph +instanceKlass org/gradle/model/internal/registry/RuleBindings$NodeAtStateIndex +instanceKlass org/gradle/model/internal/registry/RuleBindings$TypePredicateIndex +instanceKlass org/gradle/model/internal/registry/RuleBindings$PathPredicateIndex +instanceKlass org/gradle/model/internal/registry/RuleBindings +instanceKlass org/gradle/model/internal/registry/ModelGraph +instanceKlass org/gradle/model/internal/core/DefaultModelRegistration +instanceKlass org/gradle/model/internal/core/AbstractModelAction +instanceKlass org/gradle/model/internal/core/EmptyModelProjection +instanceKlass org/gradle/model/internal/core/ModelProjection +instanceKlass org/gradle/model/internal/core/ModelAdapter +instanceKlass org/gradle/model/internal/core/ModelPromise +instanceKlass org/gradle/model/internal/core/ModelRegistrations$Builder$DescriptorReference +instanceKlass org/gradle/model/internal/core/ModelRegistration +instanceKlass org/gradle/model/internal/core/ModelAction +instanceKlass org/gradle/model/internal/core/ModelRegistrations$Builder +instanceKlass org/gradle/model/internal/core/ModelRegistrations +instanceKlass org/gradle/internal/service/scopes/ProjectScopeServices$$Lambda$414 +instanceKlass org/gradle/model/internal/registry/BoringProjectState +instanceKlass org/gradle/model/internal/core/ModelPredicate +instanceKlass org/gradle/model/internal/registry/DefaultModelRegistry$ModelGoal +instanceKlass org/gradle/model/internal/registry/ModelNodeInternal +instanceKlass org/gradle/model/internal/registry/DefaultModelRegistry +instanceKlass org/gradle/model/internal/registry/ModelRegistryInternal +instanceKlass org/gradle/tooling/internal/provider/runner/PluginApplicationTracker$PluginApplication +instanceKlass org/gradle/internal/build/event/types/DefaultBinaryPluginIdentifier +instanceKlass org/gradle/tooling/internal/provider/runner/PluginApplicationTracker$$Lambda$413 +instanceKlass org/gradle/api/internal/plugins/DefaultPluginManager$OperationDetails +instanceKlass org/gradle/api/internal/plugins/DefaultPluginManager$AddPluginBuildOperation +instanceKlass org/gradle/api/internal/plugins/DefaultPluginManager$$Lambda$412 +instanceKlass org/gradle/api/internal/plugins/DefaultPluginManager$1 +instanceKlass org/gradle/api/internal/plugins/DefaultPotentialPluginWithId +instanceKlass org/gradle/api/internal/plugins/PluginInspector$PotentialImperativeClassPlugin +instanceKlass com/google/common/collect/TransformedIterator +instanceKlass com/google/common/base/Predicates +instanceKlass org/gradle/model/internal/inspect/ModelRuleSourceDetector$3 +instanceKlass org/gradle/api/plugins/HelpTasksPlugin$HelpAction +instanceKlass org/gradle/api/plugins/HelpTasksPlugin$ProjectReportTaskAction +instanceKlass org/gradle/api/plugins/HelpTasksPlugin$TaskReportTaskAction +instanceKlass org/gradle/api/plugins/HelpTasksPlugin$PropertyReportTaskAction +instanceKlass org/gradle/api/plugins/HelpTasksPlugin$DependencyInsightReportTaskAction +instanceKlass org/gradle/api/plugins/HelpTasksPlugin$DependencyReportTaskAction +instanceKlass org/gradle/api/plugins/HelpTasksPlugin$BuildEnvironmentReportTaskAction +instanceKlass org/gradle/api/plugins/HelpTasksPlugin$ComponentReportAction +instanceKlass org/gradle/api/plugins/HelpTasksPlugin$ModelReportAction +instanceKlass org/gradle/api/plugins/HelpTasksPlugin$DependentComponentsReportAction +instanceKlass org/gradle/api/plugins/HelpTasksPlugin +instanceKlass org/gradle/api/internal/plugins/PluginDescriptor +instanceKlass org/gradle/api/internal/plugins/ClassloaderBackedPluginDescriptorLocator +instanceKlass org/gradle/api/internal/plugins/DefaultPluginRegistry$PluginIdLookupCacheKey +instanceKlass com/google/common/base/Optional +instanceKlass com/google/common/collect/FluentIterable +instanceKlass org/gradle/model/internal/inspect/ModelRuleExtractor$CachedRuleSource +instanceKlass org/gradle/model/internal/inspect/MethodModelRuleExtractionContext +instanceKlass org/gradle/model/Rules +instanceKlass org/gradle/model/Validate +instanceKlass org/gradle/model/Finalize +instanceKlass org/gradle/model/Mutate +instanceKlass org/gradle/model/Defaults +instanceKlass org/gradle/model/internal/core/NodeInitializerRegistry +instanceKlass org/gradle/model/Model +instanceKlass org/gradle/model/internal/inspect/MethodModelRuleExtractors +instanceKlass org/gradle/model/internal/manage/instance/ManagedInstance +instanceKlass org/gradle/model/internal/manage/schema/extract/ManagedProxyClassGenerator$GeneratedView +instanceKlass org/gradle/model/internal/manage/instance/ModelElementState +instanceKlass org/gradle/model/internal/manage/instance/GeneratedViewState +instanceKlass org/gradle/model/internal/manage/binding/StructMethodBinding +instanceKlass org/gradle/internal/reflect/Types$TypeVisitor +instanceKlass org/gradle/model/internal/manage/binding/StructBindings +instanceKlass org/gradle/model/internal/manage/binding/StructBindingValidationProblemCollector +instanceKlass org/gradle/model/internal/manage/binding/DefaultStructBindingsStore +instanceKlass org/gradle/platform/base/ComponentType +instanceKlass org/gradle/platform/base/SourceComponentSpec +instanceKlass org/gradle/language/base/LanguageSourceSet +instanceKlass org/gradle/model/internal/typeregistration/BaseInstanceFactory +instanceKlass org/gradle/model/internal/typeregistration/InstanceFactory +instanceKlass org/gradle/model/internal/manage/schema/cache/ModelSchemaCache +instanceKlass org/gradle/model/internal/manage/schema/extract/DefaultModelSchemaStore +instanceKlass org/gradle/model/RuleSource +instanceKlass org/gradle/model/internal/manage/schema/extract/StructSchemaExtractionStrategySupport +instanceKlass org/gradle/model/internal/manage/schema/extract/JavaUtilCollectionStrategy +instanceKlass org/gradle/model/internal/manage/schema/extract/ModelMapStrategy +instanceKlass org/gradle/model/internal/manage/schema/extract/AbstractProxyClassGenerator +instanceKlass org/gradle/model/internal/manage/schema/extract/SpecializedMapStrategy +instanceKlass org/gradle/model/internal/type/WildcardTypeWrapper +instanceKlass org/gradle/model/internal/type/WildcardWrapper +instanceKlass org/gradle/model/ModelSet +instanceKlass org/gradle/model/internal/manage/schema/CompositeSchema +instanceKlass org/gradle/model/internal/manage/schema/AbstractModelSchema +instanceKlass org/gradle/model/internal/manage/schema/ManagedImplSchema +instanceKlass org/gradle/model/internal/manage/schema/extract/ModelSetStrategy +instanceKlass org/gradle/model/internal/manage/schema/extract/JdkValueTypeStrategy +instanceKlass org/gradle/model/internal/manage/schema/extract/EnumStrategy +instanceKlass org/gradle/model/internal/manage/schema/ModelSchema +instanceKlass org/gradle/model/internal/manage/schema/extract/PrimitiveStrategy +instanceKlass org/gradle/model/internal/manage/schema/extract/ModelSchemaExtractionContext +instanceKlass org/gradle/model/internal/manage/schema/extract/DefaultModelSchemaExtractor +instanceKlass org/gradle/platform/base/ComponentBinaries +instanceKlass org/gradle/platform/base/VariantComponentSpec +instanceKlass org/gradle/platform/base/VariantComponent +instanceKlass org/gradle/platform/base/BinaryTasks +instanceKlass org/gradle/model/internal/core/ModelPath$Cache +instanceKlass org/gradle/platform/base/BinaryContainer +instanceKlass org/gradle/model/ModelMap +instanceKlass org/gradle/model/internal/type/ParameterizedTypeWrapper +instanceKlass org/gradle/model/internal/inspect/ExtractedModelRule +instanceKlass org/gradle/model/internal/inspect/RuleSourceValidationProblemCollector +instanceKlass org/gradle/model/internal/inspect/AbstractAnnotationDrivenModelRuleExtractor +instanceKlass org/gradle/model/internal/manage/schema/extract/ModelSchemaAspect +instanceKlass org/gradle/platform/base/internal/VariantAspectExtractionStrategy +instanceKlass org/gradle/api/internal/plugins/RuleBasedPluginTarget +instanceKlass org/gradle/configuration/project/NotifyProjectBeforeEvaluatedBuildOperationType$1 +instanceKlass org/gradle/configuration/project/NotifyProjectBeforeEvaluatedBuildOperationType$Result +instanceKlass org/gradle/configuration/project/NotifyProjectBeforeEvaluatedBuildOperationType +instanceKlass org/gradle/internal/operations/BuildOperationType +instanceKlass org/gradle/util/internal/NameValidator +instanceKlass org/gradle/configuration/project/LifecycleProjectEvaluator$NotifyProjectBeforeEvaluatedDetails +instanceKlass org/gradle/configuration/project/NotifyProjectBeforeEvaluatedBuildOperationType$Details +instanceKlass org/gradle/configuration/project/LifecycleProjectEvaluator$NotifyBeforeEvaluate +instanceKlass org/gradle/internal/work/DefaultWorkerLeaseService$2 +instanceKlass org/gradle/api/internal/project/DefaultProjectStateRegistry$ProjectStateImpl$$Lambda$411 +instanceKlass org/gradle/api/internal/project/DefaultProjectStateRegistry$ProjectStateImpl$$Lambda$410 +instanceKlass org/gradle/configuration/project/LifecycleProjectEvaluator$EvaluateProject$$Lambda$409 +instanceKlass org/gradle/configuration/project/LifecycleProjectEvaluator$ConfigureProjectDetails +instanceKlass org/gradle/configuration/project/LifecycleProjectEvaluator$EvaluateProject +instanceKlass org/gradle/configuration/project/LifecycleProjectEvaluator +instanceKlass org/gradle/configuration/project/DelayedConfigurationActions +instanceKlass org/gradle/configuration/project/BuildScriptProcessor +instanceKlass org/gradle/buildinit/plugins/internal/action/WrapperPluginAutoApplyAction +instanceKlass org/gradle/buildinit/plugins/internal/action/BuildInitAutoApplyAction +instanceKlass org/gradle/kotlin/dsl/tooling/builders/KotlinScriptingModelBuildersRegistrationAction +instanceKlass org/gradle/jvm/toolchain/internal/task/ShowToolchainsTaskConfigurator +instanceKlass org/gradle/api/plugins/internal/HelpTasksAutoApplyAction +instanceKlass org/gradle/configuration/project/ConfigureActionsProjectEvaluator +instanceKlass org/gradle/initialization/NotifyingBuildLoader$3$1 +instanceKlass org/gradle/initialization/NotifyProjectsLoadedBuildOperationType$Details +instanceKlass org/gradle/initialization/NotifyingBuildLoader$3 +instanceKlass org/gradle/initialization/NotifyingBuildLoader$BuildStructureOperationResult +instanceKlass org/gradle/initialization/LoadProjectsBuildOperationType$Result +instanceKlass org/gradle/initialization/NotifyingBuildLoader$BuildStructureOperationProject +instanceKlass org/gradle/api/internal/project/DefaultProjectStateRegistry$ProjectStateImpl$$Lambda$408 +instanceKlass org/gradle/initialization/ProjectPropertySettingBuildLoader$CachingPropertyApplicator +instanceKlass org/gradle/api/internal/project/ProjectFactory$$Lambda$407 +instanceKlass org/gradle/api/internal/project/DefaultProject$$Lambda$406 +instanceKlass org/gradle/internal/extensibility/ExtensibleDynamicObject$2 +instanceKlass org/gradle/internal/BiAction +instanceKlass org/gradle/api/internal/tasks/DefaultTaskContainerFactory$1 +instanceKlass org/gradle/api/internal/tasks/DefaultTaskContainer$7 +instanceKlass org/gradle/api/internal/tasks/DefaultTaskContainer$6 +instanceKlass org/gradle/api/Task$Namer +instanceKlass org/gradle/model/internal/core/MutableModelNode +instanceKlass org/gradle/model/internal/core/ModelNode +instanceKlass org/gradle/model/internal/core/ModelPath +instanceKlass org/gradle/api/internal/project/taskfactory/TaskIdentity +instanceKlass org/gradle/api/tasks/TaskProvider +instanceKlass org/gradle/api/internal/tasks/RealizeTaskBuildOperationType$Result +instanceKlass org/gradle/api/internal/tasks/RegisterTaskBuildOperationType$Result +instanceKlass org/gradle/api/internal/project/taskfactory/TaskFactory +instanceKlass org/gradle/api/internal/project/taskfactory/AnnotationProcessingTaskFactory +instanceKlass org/gradle/api/internal/project/taskfactory/DefaultTaskClassInfoStore$$Lambda$405 +instanceKlass org/gradle/api/internal/project/taskfactory/TaskClassInfo +instanceKlass org/gradle/api/internal/project/taskfactory/DefaultTaskClassInfoStore$AbstractIncrementalTaskActionFactory +instanceKlass org/gradle/api/internal/project/taskfactory/TaskActionFactory +instanceKlass org/gradle/api/internal/project/taskfactory/DefaultTaskClassInfoStore +instanceKlass org/gradle/model/internal/core/rule/describe/SimpleModelRuleDescriptor$1 +instanceKlass org/gradle/internal/Factories$2 +instanceKlass org/gradle/model/internal/core/rule/describe/AbstractModelRuleDescriptor +instanceKlass org/gradle/model/internal/core/rule/describe/ModelRuleDescriptor +instanceKlass org/gradle/model/internal/core/ModelReference +instanceKlass org/gradle/api/internal/tasks/DefaultTaskContainerFactory +instanceKlass org/gradle/internal/service/scopes/WorkerSharedProjectScopeServices +instanceKlass org/gradle/nativeplatform/internal/CompilerOutputFileNamingSchemeFactory +instanceKlass org/gradle/nativeplatform/internal/services/NativeBinaryServices$ProjectCompilerServices +instanceKlass org/gradle/language/internal/DefaultNativeComponentFactory +instanceKlass org/gradle/language/internal/NativeComponentFactory +instanceKlass org/gradle/language/nativeplatform/internal/toolchains/ToolChainSelector$Result +instanceKlass org/gradle/language/nativeplatform/internal/toolchains/DefaultToolChainSelector +instanceKlass org/gradle/language/nativeplatform/internal/toolchains/ToolChainSelector +instanceKlass org/gradle/language/nativeplatform/internal/incremental/IncrementalCompilerBuilder$IncrementalCompiler +instanceKlass org/gradle/language/nativeplatform/internal/incremental/DefaultIncrementalCompilerBuilder +instanceKlass org/gradle/language/nativeplatform/internal/incremental/IncrementalCompilerBuilder +instanceKlass org/gradle/plugins/ide/internal/DefaultIdeArtifactRegistry +instanceKlass org/gradle/plugins/ide/internal/IdeArtifactRegistry +instanceKlass org/gradle/internal/snapshot/Snapshot +instanceKlass org/gradle/internal/snapshot/impl/DefaultSnapshottingService +instanceKlass org/gradle/internal/snapshot/SnapshottingService +instanceKlass org/gradle/internal/enterprise/test/TestTaskProperties +instanceKlass org/gradle/internal/enterprise/test/TestTaskForkOptions +instanceKlass org/gradle/internal/enterprise/test/TestTaskFilters +instanceKlass org/gradle/internal/enterprise/test/impl/DefaultTestTaskPropertiesService +instanceKlass org/gradle/internal/enterprise/test/TestTaskPropertiesService +instanceKlass org/gradle/buildinit/plugins/internal/ProjectLayoutSetupRegistry +instanceKlass org/gradle/buildinit/plugins/internal/services/BuildInitServices$ProjectScopeBuildInitServices +instanceKlass org/gradle/api/publish/maven/internal/publisher/MavenDuplicatePublicationTracker +instanceKlass org/gradle/api/plugins/jvm/internal/JvmPluginServices +instanceKlass org/gradle/api/plugins/jvm/internal/JvmModelingServices +instanceKlass org/gradle/api/plugins/jvm/internal/JvmEcosystemUtilities +instanceKlass org/gradle/api/tasks/SourceSetContainer +instanceKlass org/gradle/api/plugins/internal/PluginAuthorServices$ProjectScopeServices +instanceKlass org/gradle/jvm/toolchain/JavaToolchainSpec +instanceKlass org/gradle/jvm/toolchain/internal/DefaultJavaToolchainService +instanceKlass org/gradle/jvm/toolchain/JavaToolchainService +instanceKlass org/gradle/jvm/toolchain/internal/JavaToolchainQueryService +instanceKlass org/gradle/jvm/toolchain/install/internal/AdoptOpenJdkDownloader +instanceKlass org/gradle/jvm/toolchain/install/internal/AdoptOpenJdkRemoteBinary +instanceKlass org/gradle/jvm/toolchain/install/internal/DefaultJavaToolchainProvisioningService +instanceKlass org/gradle/jvm/toolchain/install/internal/JavaToolchainProvisioningService +instanceKlass org/gradle/jvm/toolchain/internal/JavaToolchainFactory +instanceKlass org/gradle/jvm/toolchain/internal/ToolchainToolFactory +instanceKlass org/gradle/language/java/internal/JavaLanguagePluginServiceRegistry$JavaProjectScopeServices +instanceKlass org/gradle/jvm/toolchain/internal/JavaCompilerFactory +instanceKlass org/gradle/language/java/internal/JavaToolChainServiceRegistry$ProjectScopeCompileServices +instanceKlass org/gradle/api/internal/tasks/compile/GroovyCompilerFactory +instanceKlass org/gradle/language/base/internal/compile/CompilerFactory +instanceKlass org/gradle/api/internal/tasks/compile/GroovyServices$ProjectServices +instanceKlass org/gradle/api/publish/ivy/internal/publisher/IvyDuplicatePublicationTracker +instanceKlass org/gradle/workers/internal/BuildOperationAwareWorker +instanceKlass org/gradle/workers/internal/IsolatedClassloaderWorkerFactory +instanceKlass org/gradle/workers/internal/WorkerDaemonFactory +instanceKlass org/gradle/workers/internal/WorkerFactory +instanceKlass org/gradle/workers/WorkerExecutor +instanceKlass org/gradle/workers/internal/WorkersServices$ProjectScopeServices +instanceKlass org/gradle/internal/service/scopes/ProjectScopeServices$$Lambda$404 +instanceKlass org/gradle/api/internal/component/ComponentRegistry +instanceKlass org/gradle/api/internal/project/taskfactory/TaskInstantiator +instanceKlass org/gradle/model/internal/core/NamedEntityInstantiator +instanceKlass org/gradle/normalization/internal/RuntimeClasspathNormalizationInternal +instanceKlass org/gradle/normalization/RuntimeClasspathNormalization +instanceKlass org/gradle/normalization/InputNormalization +instanceKlass org/gradle/internal/typeconversion/TypeConverter +instanceKlass org/gradle/api/internal/project/ant/AntLoggingAdapterFactory +instanceKlass org/gradle/api/internal/file/SourceDirectorySetFactory +instanceKlass org/gradle/api/internal/project/DeferredProjectConfiguration +instanceKlass org/gradle/api/internal/file/DefaultProjectLayout +instanceKlass org/gradle/api/internal/file/TaskFileVarFactory +instanceKlass org/gradle/internal/service/scopes/GradleScopeServices$1 +instanceKlass org/gradle/initialization/NotifyingBuildLoader$2$1 +instanceKlass org/gradle/initialization/LoadProjectsBuildOperationType$Details +instanceKlass org/gradle/initialization/NotifyingBuildLoader$2 +instanceKlass org/gradle/api/internal/catalog/DefaultDependenciesAccessors$$Lambda$403 +instanceKlass org/gradle/api/internal/catalog/DefaultVersionCatalog +instanceKlass org/gradle/api/internal/DefaultDomainObjectCollection$IteratorImpl +instanceKlass org/gradle/internal/serialization/Cached +instanceKlass org/gradle/internal/instantiation/generator/ManagedObjectFactory$$Lambda$402 +instanceKlass org/gradle/internal/instantiation/generator/ManagedObjectFactory$ManagedPropertyName +instanceKlass org/gradle/api/internal/catalog/DefaultDependenciesAccessors +instanceKlass org/gradle/api/artifacts/ProjectDependency +instanceKlass org/gradle/api/artifacts/SelfResolvingDependency +instanceKlass org/gradle/api/artifacts/ModuleDependency +instanceKlass org/gradle/internal/execution/workspace/impl/DefaultImmutableWorkspaceProvider$$Lambda$401 +instanceKlass org/gradle/internal/execution/workspace/impl/DefaultImmutableWorkspaceProvider$$Lambda$400 +instanceKlass org/gradle/api/internal/DependencyClassPathProvider +instanceKlass org/gradle/configuration/BuildOperationFiringProjectsPreparer$ConfigureBuild$1 +instanceKlass org/gradle/initialization/ConfigureBuildBuildOperationType$Details +instanceKlass org/gradle/configuration/BuildOperationFiringProjectsPreparer$ConfigureBuild +instanceKlass org/gradle/initialization/VintageBuildModelController$$Lambda$399 +instanceKlass org/gradle/internal/resources/TaskExecutionLockRegistry$2 +instanceKlass org/gradle/internal/resources/ProjectLockRegistry$1 +instanceKlass org/gradle/api/internal/project/DefaultProjectStateRegistry$ProjectStateImpl +instanceKlass org/gradle/api/internal/artifacts/DefaultProjectComponentIdentifier +instanceKlass org/gradle/api/internal/project/DefaultProjectStateRegistry$DefaultBuildProjectRegistry +instanceKlass org/gradle/internal/build/BuildProjectRegistry +instanceKlass org/gradle/initialization/AbstractProjectSpec +instanceKlass org/gradle/initialization/ProjectSpec +instanceKlass org/gradle/initialization/ProjectSpecs +instanceKlass org/gradle/initialization/DefaultSettingsLoader$$Lambda$398 +instanceKlass org/gradle/caching/internal/controller/RootBuildCacheControllerRef$CloseShieldBuildCacheController +instanceKlass org/gradle/caching/internal/controller/NoOpBuildCacheController +instanceKlass org/gradle/caching/internal/services/BuildCacheControllerFactory$ResultImpl +instanceKlass org/gradle/caching/internal/FinalizeBuildCacheConfigurationBuildOperationType$Result +instanceKlass org/gradle/caching/internal/services/BuildCacheControllerFactory$DetailsImpl +instanceKlass org/gradle/caching/internal/FinalizeBuildCacheConfigurationBuildOperationType$Details +instanceKlass org/gradle/caching/internal/FinalizeBuildCacheConfigurationBuildOperationType$Result$BuildCacheDescription +instanceKlass org/gradle/caching/internal/services/BuildCacheControllerFactory$1 +instanceKlass org/gradle/caching/BuildCacheServiceFactory$Describer +instanceKlass org/gradle/caching/internal/services/BuildCacheControllerFactory +instanceKlass org/gradle/caching/configuration/internal/DefaultBuildCacheConfiguration +instanceKlass org/gradle/caching/local/internal/DirectoryBuildCacheServiceFactory +instanceKlass org/gradle/internal/management/DefaultDependencyResolutionManagement$$Lambda$397 +instanceKlass org/gradle/internal/management/DefaultDependencyResolutionManagement$$Lambda$396 +instanceKlass jdk/internal/math/FDBigInteger +instanceKlass org/gradle/internal/time/TimeFormatting +instanceKlass org/gradle/groovy/scripts/internal/FileCacheBackedScriptClassCompiler$EmptyCompiledScript +instanceKlass org/gradle/internal/event/BroadcastDispatch$ActionInvocationHandler +instanceKlass org/gradle/internal/operations/notify/BuildOperationNotificationBridge$2$$Lambda$395 +instanceKlass org/gradle/vcs/VcsMappings +instanceKlass org/gradle/vcs/internal/services/VersionControlServices$VersionControlSettingsServices +instanceKlass org/gradle/plugin/internal/PluginUsePluginServiceRegistry$SettingsScopeServices +instanceKlass org/gradle/internal/service/scopes/SettingsScopeServices$1 +instanceKlass org/gradle/initialization/IncludedBuildSpec +instanceKlass org/gradle/initialization/BuildOperationSettingsProcessor$2$1 +instanceKlass org/gradle/initialization/EvaluateSettingsBuildOperationType$Details +instanceKlass org/gradle/initialization/BuildOperationSettingsProcessor$2 +instanceKlass org/gradle/internal/logging/sink/ProgressLogEventGenerator$1 +instanceKlass org/gradle/configuration/internal/DefaultListenerBuildOperationDecorator$1 +instanceKlass org/gradle/listener/ClosureBackedMethodInvocationDispatch +instanceKlass org/codehaus/groovy/ast/ClassNode$$Lambda$394 +instanceKlass org/codehaus/groovy/ast/ClassNode$MapOfLists +instanceKlass org/codehaus/groovy/util/AbstractConcurrentMap$Entry +instanceKlass org/codehaus/groovy/util/AbstractConcurrentMapBase$Entry +instanceKlass org/codehaus/groovy/ast/ClassHelper$ClassHelperCache +instanceKlass org/codehaus/groovy/runtime/GeneratedLambda +instanceKlass org/codehaus/groovy/ast/ClassHelper +instanceKlass org/codehaus/groovy/classgen/asm/util/TypeUtil +instanceKlass org/gradle/api/reporting/DirectoryReport +instanceKlass org/gradle/api/reporting/ConfigurableReport +instanceKlass org/gradle/api/reporting/Report +instanceKlass org/gradle/api/internal/tasks/testing/TestResultProcessor +instanceKlass org/gradle/api/tasks/testing/TestOutputListener +instanceKlass org/gradle/api/tasks/testing/TestListener +instanceKlass org/gradle/api/internal/tasks/testing/report/TestReporter +instanceKlass org/gradle/api/internal/tasks/testing/junit/result/TestResultsProvider +instanceKlass org/gradle/api/internal/tasks/testing/logging/TestExceptionFormatter +instanceKlass org/gradle/api/reporting/ReportContainer +instanceKlass org/gradle/api/tasks/testing/TestFilter +instanceKlass org/gradle/api/internal/tasks/TaskDependencyInternal +instanceKlass org/gradle/api/internal/tasks/InputChangesAwareTaskAction +instanceKlass org/gradle/api/internal/tasks/ImplementationAwareTaskAction +instanceKlass groovy/util/ObservableList +instanceKlass org/gradle/api/internal/tasks/TaskLocalStateInternal +instanceKlass org/gradle/api/internal/TaskOutputsInternal +instanceKlass org/gradle/api/internal/TaskInputsInternal +instanceKlass org/gradle/internal/logging/slf4j/ContextAwareTaskLogger +instanceKlass org/gradle/api/reporting/Reporting +instanceKlass org/gradle/api/tasks/VerificationTask +instanceKlass org/gradle/configuration/internal/DefaultListenerBuildOperationDecorator$BuildOperationEmittingInvocationHandler +instanceKlass org/apache/commons/lang/ClassUtils +instanceKlass org/gradle/execution/taskgraph/DefaultTaskExecutionGraph$$Lambda$393 +instanceKlass org/gradle/execution/ProjectExecutionServiceRegistry +instanceKlass org/gradle/api/tasks/TaskOutputs +instanceKlass org/gradle/api/tasks/TaskLocalState +instanceKlass org/gradle/api/tasks/TaskDestroyables +instanceKlass org/gradle/api/tasks/TaskInputs +instanceKlass org/gradle/api/tasks/TaskState +instanceKlass groovy/transform/Generated +instanceKlass SetupUtpTestResultListenerAction +instanceKlass org/gradle/execution/plan/ExecutionPlan$1 +instanceKlass org/gradle/execution/taskgraph/DefaultTaskExecutionGraph +instanceKlass org/gradle/execution/plan/DefaultPlanExecutor +instanceKlass org/gradle/api/internal/tasks/TaskExecutionContext +instanceKlass org/codehaus/groovy/reflection/AccessPermissionChecker +instanceKlass org/codehaus/groovy/reflection/ReflectionUtils$$Lambda$392 +instanceKlass org/gradle/internal/snapshot/SearchUtil +instanceKlass org/gradle/internal/snapshot/AbstractListChildMap$$Lambda$391 +instanceKlass org/codehaus/groovy/runtime/ScriptBytecodeAdapter +instanceKlass org/codehaus/groovy/runtime/metaclass/ClosureMetaClass$$Lambda$390 +instanceKlass org/codehaus/groovy/runtime/metaclass/ClosureMetaClass$MethodChooser +instanceKlass org/codehaus/groovy/runtime/callsite/BooleanClosureWrapper +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass com/sun/beans/finder/FinderUtils +instanceKlass com/sun/beans/finder/AbstractFinder +instanceKlass org/codehaus/groovy/reflection/ClassLoaderForClassArtifacts$$Lambda$389 +instanceKlass groovyjarjarasm/asm/Attribute +instanceKlass groovyjarjarasm/asm/Handler +instanceKlass org/codehaus/groovy/runtime/typehandling/DefaultTypeTransformation +instanceKlass org/codehaus/groovy/classgen/asm/BytecodeHelper +instanceKlass groovyjarjarasm/asm/Edge +instanceKlass groovyjarjarasm/asm/Label +instanceKlass groovyjarjarasm/asm/Type +instanceKlass groovyjarjarasm/asm/Frame +instanceKlass org/codehaus/groovy/reflection/CachedClass$5$$Lambda$388 +instanceKlass groovyjarjarasm/asm/ByteVector +instanceKlass groovyjarjarasm/asm/Symbol +instanceKlass groovyjarjarasm/asm/SymbolTable +instanceKlass groovyjarjarasm/asm/FieldVisitor +instanceKlass groovyjarjarasm/asm/ModuleVisitor +instanceKlass groovyjarjarasm/asm/MethodVisitor +instanceKlass groovyjarjarasm/asm/AnnotationVisitor +instanceKlass groovyjarjarasm/asm/RecordComponentVisitor +instanceKlass org/codehaus/groovy/classgen/GeneratorContext +instanceKlass org/codehaus/groovy/reflection/android/AndroidSupport +instanceKlass org/codehaus/groovy/runtime/callsite/GroovySunClassLoader$$Lambda$387 +instanceKlass org/codehaus/groovy/reflection/SunClassLoader$$Lambda$386 +instanceKlass org/codehaus/groovy/runtime/callsite/CallSiteGenerator +instanceKlass org/codehaus/groovy/runtime/metaclass/MetaMethodIndex$CacheEntry +instanceKlass org/codehaus/groovy/runtime/wrappers/Wrapper +instanceKlass groovy/lang/AdaptingMetaClass +instanceKlass groovy/lang/GroovyInterceptable +instanceKlass org/codehaus/groovy/runtime/ArrayUtil +instanceKlass org/codehaus/groovy/syntax/Types +instanceKlass org/codehaus/groovy/syntax/CSTNode +instanceKlass org/codehaus/groovy/ast/tools/GeneralUtils +instanceKlass org/gradle/api/component/SoftwareComponentContainer +instanceKlass org/gradle/api/NamedDomainObjectFactory +instanceKlass org/gradle/configuration/project/ProjectConfigurationActionContainer +instanceKlass org/gradle/internal/model/RuleBasedPluginListener +instanceKlass org/gradle/api/internal/project/ProjectInternal$DetachedResolver +instanceKlass org/gradle/normalization/internal/InputNormalizationHandlerInternal +instanceKlass org/gradle/model/internal/registry/ModelRegistry +instanceKlass org/gradle/api/internal/tasks/TaskContainerInternal +instanceKlass org/gradle/api/internal/project/ProjectStateInternal +instanceKlass org/gradle/vcs/SourceControl +instanceKlass org/gradle/plugin/management/PluginManagementSpec +instanceKlass org/gradle/initialization/DefaultProjectDescriptor +instanceKlass org/gradle/api/initialization/ProjectDescriptor +instanceKlass org/gradle/internal/metaobject/DynamicInvokeResult +instanceKlass org/gradle/cache/internal/DefaultFileContentCacheFactory$DefaultFileContentCache +instanceKlass org/gradle/internal/jvm/JavaModuleDetector$ModuleInfoLocator +instanceKlass org/gradle/internal/jvm/JavaModuleDetector$$Lambda$385 +instanceKlass org/gradle/internal/jvm/JavaModuleDetector$$Lambda$384 +instanceKlass org/gradle/cache/internal/FileContentCache +instanceKlass org/gradle/cache/internal/DefaultFileContentCacheFactory +instanceKlass org/gradle/api/internal/model/InstantiatorBackedObjectFactory +instanceKlass org/gradle/process/internal/JavaForkOptionsInternal +instanceKlass org/gradle/process/JavaDebugOptions +instanceKlass org/gradle/process/internal/ExecAction +instanceKlass org/gradle/process/internal/JavaExecAction +instanceKlass org/gradle/process/internal/ExecHandleBuilder +instanceKlass org/gradle/process/internal/DefaultExecActionFactory +instanceKlass org/gradle/api/internal/file/copy/CopySpecInternal +instanceKlass org/gradle/api/internal/file/copy/CopyAction +instanceKlass org/gradle/api/internal/file/copy/FileCopier +instanceKlass org/gradle/api/internal/resources/DefaultResourceHandler +instanceKlass org/gradle/api/internal/resources/DefaultTextResourceFactory +instanceKlass org/gradle/api/internal/resources/DefaultResourceResolver +instanceKlass org/gradle/api/internal/resources/ResourceResolver +instanceKlass org/gradle/api/resources/TextResourceFactory +instanceKlass org/gradle/api/internal/resources/DefaultResourceHandler$Factory$FactoryImpl +instanceKlass org/gradle/api/internal/artifacts/DependencyManagementBuildScopeServices$$Lambda$383 +instanceKlass org/gradle/internal/extensibility/ExtensionsStorage$ExtensionHolder +instanceKlass org/gradle/api/plugins/ExtensionsSchema$ExtensionSchema +instanceKlass org/gradle/api/NamedDomainObjectCollectionSchema$NamedDomainObjectSchema +instanceKlass org/gradle/internal/extensibility/ExtensionsStorage +instanceKlass org/gradle/api/plugins/ExtraPropertiesExtension +instanceKlass org/gradle/internal/extensibility/DefaultConvention +instanceKlass org/gradle/api/internal/plugins/ExtensionContainerInternal +instanceKlass org/gradle/internal/metaobject/DynamicObjectUtil +instanceKlass org/gradle/api/internal/coerce/StringToEnumTransformer +instanceKlass org/gradle/internal/metaobject/BeanDynamicObject$MetaClassAdapter +instanceKlass org/gradle/api/internal/coerce/PropertySetTransformer +instanceKlass org/gradle/api/internal/coerce/MethodArgumentsTransformer +instanceKlass org/gradle/process/JavaExecSpec +instanceKlass org/gradle/process/JavaForkOptions +instanceKlass org/gradle/process/ExecSpec +instanceKlass org/gradle/process/BaseExecSpec +instanceKlass org/gradle/process/ProcessForkOptions +instanceKlass org/codehaus/groovy/runtime/memoize/StampedCommonCache$$Lambda$382 +instanceKlass org/codehaus/groovy/runtime/memoize/EvictableCache$Action +instanceKlass java/util/WeakHashMap$HashIterator +instanceKlass java/util/stream/StreamSpliterators$WrappingSpliterator$$Lambda$381 +instanceKlass java/util/function/BooleanSupplier +instanceKlass java/util/stream/StreamSpliterators$WrappingSpliterator$$Lambda$380 +instanceKlass jdk/internal/jrtfs/JrtDirectoryStream$1 +instanceKlass jdk/internal/jrtfs/JrtFileSystem$$Lambda$379 +instanceKlass jdk/internal/jrtfs/JrtFileSystem$$Lambda$378 +instanceKlass jdk/internal/jrtfs/JrtDirectoryStream +instanceKlass jdk/internal/jrtfs/JrtFileAttributes +instanceKlass jdk/internal/jimage/ImageReader$SharedImageReader$$Lambda$377 +instanceKlass jdk/internal/jimage/ImageReader$SharedImageReader$LocationVisitor +instanceKlass jdk/internal/jimage/ImageReader$Node +instanceKlass jdk/internal/jrtfs/SystemImage$2 +instanceKlass jdk/internal/jrtfs/SystemImage$$Lambda$376 +instanceKlass jdk/internal/jrtfs/SystemImage +instanceKlass jdk/internal/jrtfs/JrtPath +instanceKlass groovy/grape/GrapeIvy +instanceKlass groovy/grape/GrapeEngine +instanceKlass org/codehaus/groovy/vmplugin/v9/Java9$$Lambda$375 +instanceKlass org/codehaus/groovy/vmplugin/v9/Java9$$Lambda$374 +instanceKlass org/codehaus/groovy/vmplugin/v9/Java9$$Lambda$373 +instanceKlass java/util/stream/Collectors$$Lambda$372 +instanceKlass java/util/stream/Collectors$$Lambda$371 +instanceKlass java/util/stream/Collectors$$Lambda$370 +instanceKlass org/codehaus/groovy/vmplugin/v9/Java9$$Lambda$369 +instanceKlass org/codehaus/groovy/vmplugin/v9/Java9$$Lambda$368 +instanceKlass org/codehaus/groovy/vmplugin/v9/Java9$$Lambda$367 +instanceKlass jdk/nio/zipfs/ZipFileSystem$$Lambda$366 +instanceKlass org/codehaus/groovy/vmplugin/v9/ClassFinder$1$$Lambda$365 +instanceKlass jdk/nio/zipfs/ZipDirectoryStream$1 +instanceKlass jdk/nio/zipfs/ZipDirectoryStream +instanceKlass java/time/chrono/AbstractChronology +instanceKlass java/time/zone/ZoneOffsetTransition +instanceKlass java/time/zone/ZoneOffsetTransitionRule +instanceKlass java/time/zone/Ser +instanceKlass java/io/Externalizable +instanceKlass java/time/zone/ZoneRulesProvider$1 +instanceKlass java/time/zone/ZoneRulesProvider +instanceKlass jdk/nio/zipfs/ZipUtils +instanceKlass java/nio/file/SimpleFileVisitor +instanceKlass jdk/nio/zipfs/ZipFileSystem$END +instanceKlass jdk/nio/zipfs/ZipConstants +instanceKlass sun/nio/fs/WindowsChannelFactory$2 +instanceKlass sun/nio/fs/WindowsSecurityDescriptor +instanceKlass jdk/nio/zipfs/ZipPath +instanceKlass jdk/nio/zipfs/ZipCoder +instanceKlass sun/nio/fs/WindowsSecurity +instanceKlass sun/nio/fs/AbstractAclFileAttributeView +instanceKlass java/nio/file/attribute/AclFileAttributeView +instanceKlass java/nio/file/attribute/FileOwnerAttributeView +instanceKlass jdk/nio/zipfs/ZipFileSystem$$Lambda$364 +instanceKlass sun/nio/fs/WindowsFileSystemProvider$1 +instanceKlass jdk/nio/zipfs/ZipFileSystem$$Lambda$363 +instanceKlass java/nio/file/PathMatcher +instanceKlass jdk/nio/zipfs/ZipFileAttributes +instanceKlass jdk/nio/zipfs/ZipFileSystem$IndexNode +instanceKlass sun/nio/fs/WindowsLinkSupport +instanceKlass jdk/internal/jimage/ImageBufferCache$2 +instanceKlass jdk/internal/jimage/ImageBufferCache +instanceKlass sun/net/www/protocol/jrt/JavaRuntimeURLConnection$$Lambda$362 +instanceKlass java/nio/file/FileStore +instanceKlass java/nio/channels/AsynchronousFileChannel +instanceKlass java/nio/channels/AsynchronousChannel +instanceKlass java/nio/file/spi/FileSystemProvider$1 +instanceKlass sun/nio/ch/FileChannelImpl$Closer +instanceKlass sun/nio/fs/WindowsChannelFactory$Flags +instanceKlass sun/nio/fs/WindowsChannelFactory$1 +instanceKlass sun/nio/fs/WindowsChannelFactory +instanceKlass sun/nio/fs/WindowsUriSupport +instanceKlass org/codehaus/groovy/vmplugin/v9/ClassFinder +instanceKlass org/apache/groovy/util/Maps +instanceKlass org/codehaus/groovy/GroovyExceptionInterface +instanceKlass org/codehaus/groovy/control/CompilerConfiguration +instanceKlass groovy/lang/GroovyClassLoader$1 +instanceKlass org/codehaus/groovy/runtime/memoize/CommonCache +instanceKlass java/util/concurrent/locks/StampedLock$WNode +instanceKlass java/util/concurrent/locks/StampedLock +instanceKlass org/codehaus/groovy/runtime/memoize/StampedCommonCache +instanceKlass org/codehaus/groovy/runtime/memoize/ValueConvertable +instanceKlass org/codehaus/groovy/control/CompilationUnit$IPrimaryClassNodeOperation +instanceKlass org/codehaus/groovy/control/CompilationUnit$ClassgenCallback +instanceKlass org/codehaus/groovy/runtime/memoize/UnlimitedConcurrentCache +instanceKlass org/codehaus/groovy/runtime/memoize/EvictableCache +instanceKlass org/codehaus/groovy/ast/expr/MethodCall +instanceKlass org/codehaus/groovy/ast/stmt/LoopingStatement +instanceKlass org/codehaus/groovy/control/messages/Message +instanceKlass org/codehaus/groovy/ast/CodeVisitorSupport +instanceKlass org/codehaus/groovy/ast/GroovyClassVisitor +instanceKlass org/codehaus/groovy/transform/ErrorCollecting +instanceKlass org/codehaus/groovy/ast/expr/ExpressionTransformer +instanceKlass java/util/concurrent/locks/ReentrantReadWriteLock$WriteLock +instanceKlass java/util/concurrent/locks/ReentrantReadWriteLock$ReadLock +instanceKlass org/apache/groovy/plugin/GroovyRunnerRegistry +instanceKlass org/codehaus/groovy/runtime/metaclass/MetaClassRegistryImpl$$Lambda$361 +instanceKlass groovy/lang/MetaClassImpl$$Lambda$360 +instanceKlass org/codehaus/groovy/runtime/GroovyCategorySupport +instanceKlass java/util/concurrent/locks/ReentrantReadWriteLock +instanceKlass org/codehaus/groovy/util/ComplexKeyHashMap$1 +instanceKlass org/codehaus/groovy/reflection/CachedClass$1$$Lambda$359 +instanceKlass org/codehaus/groovy/reflection/CachedClass$1$$Lambda$358 +instanceKlass org/codehaus/groovy/reflection/CachedClass$1$$Lambda$357 +instanceKlass org/codehaus/groovy/reflection/CachedClass$1$$Lambda$356 +instanceKlass java/beans/SimpleBeanInfo +instanceKlass java/beans/BeanProperty +instanceKlass com/sun/beans/WildcardTypeImpl +instanceKlass com/sun/beans/introspect/PropertyInfo +instanceKlass com/sun/beans/introspect/EventSetInfo +instanceKlass com/sun/beans/WeakCache +instanceKlass com/sun/beans/TypeResolver +instanceKlass java/beans/MethodRef +instanceKlass com/sun/beans/introspect/MethodInfo$MethodOrder +instanceKlass com/sun/beans/introspect/MethodInfo +instanceKlass com/sun/beans/util/Cache$Ref +instanceKlass com/sun/beans/util/Cache$CacheEntry +instanceKlass com/sun/beans/util/Cache +instanceKlass com/sun/beans/introspect/ClassInfo +instanceKlass javax/swing/SwingContainer +instanceKlass java/beans/JavaBean +instanceKlass java/util/zip/ZipFile$ZipEntryIterator +instanceKlass java/util/jar/JarFile$$Lambda$355 +instanceKlass com/sun/beans/finder/ClassFinder +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass java/lang/invoke/ClassSpecializer$Factory$1Var +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass com/sun/beans/finder/InstanceFinder +instanceKlass java/beans/WeakIdentityMap +instanceKlass java/beans/ThreadGroupContext +instanceKlass groovy/lang/MetaClassImpl$$Lambda$354 +instanceKlass java/beans/BeanInfo +instanceKlass org/codehaus/groovy/reflection/CachedClass$CachedMethodComparatorWithString +instanceKlass org/codehaus/groovy/util/AbstractConcurrentMapBase +instanceKlass java/lang/reflect/AnnotatedType +instanceKlass groovyjarjarasm/asm/ClassVisitor +instanceKlass org/codehaus/groovy/runtime/MetaClassHelper +instanceKlass org/codehaus/groovy/reflection/CachedClass$2$$Lambda$353 +instanceKlass org/codehaus/groovy/reflection/CachedClass$2$$Lambda$352 +instanceKlass org/codehaus/groovy/reflection/CachedClass$2$$Lambda$351 +instanceKlass org/codehaus/groovy/reflection/CachedClass$2$$Lambda$350 +instanceKlass org/codehaus/groovy/runtime/MethodKey +instanceKlass groovy/lang/ClosureInvokingMethod +instanceKlass groovy/lang/ExpandoMetaClass$Callable +instanceKlass org/codehaus/groovy/reflection/CachedClass$2$$Lambda$349 +instanceKlass org/codehaus/groovy/runtime/metaclass/MetaMethodIndex$Header +instanceKlass org/codehaus/groovy/runtime/metaclass/MetaMethodIndex$Entry +instanceKlass org/codehaus/groovy/runtime/metaclass/MetaMethodIndex$EntryIterator +instanceKlass org/codehaus/groovy/runtime/metaclass/MetaMethodIndex +instanceKlass groovy/lang/MetaClassImpl$$Lambda$348 +instanceKlass groovy/lang/MetaClassImpl$$Lambda$347 +instanceKlass org/codehaus/groovy/util/SingleKeyHashMap$Copier +instanceKlass groovy/lang/MetaClassImpl$$Lambda$346 +instanceKlass groovy/lang/MetaClassImpl$MethodIndexAction +instanceKlass org/codehaus/groovy/runtime/GeneratedClosure +instanceKlass groovy/lang/MetaClassImpl +instanceKlass groovy/lang/MutableMetaClass +instanceKlass org/gradle/api/internal/provider/MapPropertyExtensions +instanceKlass org/w3c/dom/Document +instanceKlass org/w3c/dom/UserDataHandler +instanceKlass org/w3c/dom/NamedNodeMap +instanceKlass org/w3c/dom/TypeInfo +instanceKlass org/w3c/dom/Attr +instanceKlass org/w3c/dom/Element +instanceKlass org/w3c/dom/Node +instanceKlass org/w3c/dom/NodeList +instanceKlass org/apache/groovy/xml/extensions/XmlExtensions +instanceKlass java/awt/LayoutManager +instanceKlass javax/swing/ButtonModel +instanceKlass javax/swing/AbstractButton$Handler +instanceKlass javax/swing/event/ChangeListener +instanceKlass javax/swing/Icon +instanceKlass javax/swing/event/TableModelListener +instanceKlass javax/swing/event/TableColumnModelListener +instanceKlass javax/swing/ListSelectionModel +instanceKlass javax/swing/MenuSelectionManager +instanceKlass java/awt/PointerInfo +instanceKlass java/awt/peer/ComponentPeer +instanceKlass sun/java2d/pipe/Region +instanceKlass javax/accessibility/AccessibleStateSet +instanceKlass java/awt/ComponentOrientation +instanceKlass sun/awt/RequestFocusController +instanceKlass java/awt/im/InputContext +instanceKlass java/awt/im/InputMethodRequests +instanceKlass java/awt/event/InputMethodListener +instanceKlass java/awt/event/MouseWheelListener +instanceKlass java/awt/event/MouseMotionListener +instanceKlass java/awt/event/MouseListener +instanceKlass java/awt/event/KeyListener +instanceKlass java/awt/event/HierarchyBoundsListener +instanceKlass java/awt/event/HierarchyListener +instanceKlass java/awt/event/FocusListener +instanceKlass java/awt/image/BufferStrategy +instanceKlass java/awt/BufferCapabilities +instanceKlass java/awt/ImageCapabilities +instanceKlass java/awt/image/ImageProducer +instanceKlass java/awt/Cursor +instanceKlass java/awt/image/ColorModel +instanceKlass sun/awt/ComponentFactory +instanceKlass java/awt/Toolkit +instanceKlass java/awt/GraphicsConfiguration +instanceKlass java/awt/dnd/DropTarget +instanceKlass java/awt/dnd/DropTargetListener +instanceKlass java/awt/Event +instanceKlass java/awt/MenuComponent +instanceKlass java/awt/Image +instanceKlass javax/swing/AncestorNotifier +instanceKlass java/beans/PropertyChangeListener +instanceKlass java/awt/event/ComponentListener +instanceKlass java/beans/VetoableChangeListener +instanceKlass javax/swing/ArrayTable +instanceKlass javax/swing/TransferHandler$DropLocation +instanceKlass java/awt/Color +instanceKlass java/awt/Paint +instanceKlass java/awt/Transparency +instanceKlass javax/swing/ActionMap +instanceKlass javax/swing/InputMap +instanceKlass javax/swing/InputVerifier +instanceKlass java/awt/Insets +instanceKlass javax/swing/border/Border +instanceKlass java/awt/FontMetrics +instanceKlass java/awt/Font +instanceKlass javax/swing/event/AncestorListener +instanceKlass java/awt/AWTKeyStroke +instanceKlass javax/swing/plaf/ComponentUI +instanceKlass java/awt/geom/RectangularShape +instanceKlass java/awt/Shape +instanceKlass java/awt/geom/Dimension2D +instanceKlass java/awt/geom/Point2D +instanceKlass java/awt/Graphics +instanceKlass javax/swing/TransferHandler +instanceKlass javax/accessibility/AccessibleContext +instanceKlass java/util/EventObject +instanceKlass java/awt/event/ItemListener +instanceKlass javax/swing/Action +instanceKlass javax/swing/table/TableColumn +instanceKlass javax/swing/table/AbstractTableModel +instanceKlass javax/swing/ButtonGroup +instanceKlass javax/swing/tree/TreePath +instanceKlass javax/swing/table/TableModel +instanceKlass javax/swing/table/TableColumnModel +instanceKlass javax/swing/MenuElement +instanceKlass javax/swing/SwingConstants +instanceKlass java/awt/Component +instanceKlass java/awt/MenuContainer +instanceKlass java/awt/image/ImageObserver +instanceKlass javax/swing/TransferHandler$HasGetTransferHandler +instanceKlass javax/accessibility/Accessible +instanceKlass java/awt/event/ActionListener +instanceKlass javax/swing/event/ListDataListener +instanceKlass java/awt/ItemSelectable +instanceKlass javax/swing/tree/DefaultMutableTreeNode +instanceKlass javax/swing/MutableComboBoxModel +instanceKlass javax/swing/ComboBoxModel +instanceKlass javax/swing/AbstractListModel +instanceKlass javax/swing/tree/MutableTreeNode +instanceKlass javax/swing/tree/TreeNode +instanceKlass javax/swing/ListModel +instanceKlass org/apache/groovy/swing/extensions/SwingExtensions +instanceKlass java/sql/Statement +instanceKlass java/sql/RowId +instanceKlass java/sql/SQLXML +instanceKlass java/sql/Blob +instanceKlass java/sql/NClob +instanceKlass java/sql/Clob +instanceKlass java/sql/SQLType +instanceKlass java/sql/Array +instanceKlass java/sql/Ref +instanceKlass groovy/sql/GroovyResultSet +instanceKlass java/sql/ResultSet +instanceKlass java/sql/ResultSetMetaData +instanceKlass java/sql/Wrapper +instanceKlass org/apache/groovy/sql/extensions/SqlExtensions +instanceKlass java/nio/file/WatchEvent$Modifier +instanceKlass java/nio/file/WatchKey +instanceKlass java/nio/file/WatchEvent$Kind +instanceKlass java/nio/file/WatchService +instanceKlass org/apache/groovy/dateutil/extensions/DateUtilStaticExtensions +instanceKlass org/apache/groovy/dateutil/extensions/DateUtilExtensions +instanceKlass org/codehaus/groovy/runtime/metaclass/MetaClassRegistryImpl$DefaultModuleListener$$Lambda$345 +instanceKlass org/codehaus/groovy/runtime/metaclass/MethodHelper +instanceKlass java/time/zone/ZoneRules +instanceKlass java/time/chrono/Era +instanceKlass java/time/chrono/Chronology +instanceKlass java/time/format/DateTimeFormatter +instanceKlass java/time/temporal/ValueRange +instanceKlass java/time/temporal/TemporalQuery +instanceKlass java/time/MonthDay +instanceKlass java/time/LocalDateTime +instanceKlass java/time/chrono/ChronoLocalDateTime +instanceKlass java/time/Year +instanceKlass java/time/OffsetDateTime +instanceKlass java/time/LocalDate +instanceKlass java/time/chrono/ChronoLocalDate +instanceKlass java/time/YearMonth +instanceKlass java/time/OffsetTime +instanceKlass java/time/Instant +instanceKlass java/time/ZonedDateTime +instanceKlass java/time/chrono/ChronoZonedDateTime +instanceKlass java/time/Period +instanceKlass java/time/LocalTime +instanceKlass java/time/temporal/TemporalAdjuster +instanceKlass java/time/chrono/ChronoPeriod +instanceKlass java/time/temporal/Temporal +instanceKlass java/time/temporal/TemporalAccessor +instanceKlass java/time/temporal/TemporalField +instanceKlass org/apache/groovy/datetime/extensions/DateTimeStaticExtensions +instanceKlass org/apache/groovy/datetime/extensions/DateTimeExtensions +instanceKlass org/codehaus/groovy/runtime/m12n/ExtensionModule +instanceKlass org/codehaus/groovy/runtime/m12n/PropertiesModuleFactory +instanceKlass org/codehaus/groovy/util/URLStreams +instanceKlass org/codehaus/groovy/runtime/metaclass/MetaClassRegistryImpl$DefaultModuleListener +instanceKlass org/codehaus/groovy/runtime/m12n/ExtensionModuleScanner +instanceKlass java/util/ResourceBundle$CacheKey +instanceKlass java/time/ZoneId +instanceKlass org/codehaus/groovy/runtime/DefaultGroovyStaticMethods +instanceKlass org/codehaus/groovy/runtime/metaclass/MetaClassRegistryImpl$$Lambda$344 +instanceKlass org/codehaus/groovy/runtime/RangeInfo +instanceKlass java/util/function/ToDoubleFunction +instanceKlass java/util/function/ToLongFunction +instanceKlass java/util/function/ToIntFunction +instanceKlass java/util/function/DoubleFunction +instanceKlass java/util/function/LongFunction +instanceKlass java/util/stream/DoubleStream +instanceKlass java/util/stream/LongStream +instanceKlass java/util/function/DoublePredicate +instanceKlass java/util/function/LongPredicate +instanceKlass java/util/function/IntPredicate +instanceKlass java/util/OptionalInt +instanceKlass java/util/OptionalLong +instanceKlass java/util/OptionalDouble +instanceKlass org/codehaus/groovy/runtime/metaclass/MetaClassRegistryImpl$$Lambda$343 +instanceKlass org/codehaus/groovy/runtime/NumberAwareComparator +instanceKlass org/codehaus/groovy/runtime/EncodingGroovyMethods +instanceKlass java/lang/ProcessHandle +instanceKlass java/util/concurrent/CompletableFuture +instanceKlass java/util/concurrent/CompletionStage +instanceKlass java/lang/ProcessHandle$Info +instanceKlass org/codehaus/groovy/reflection/CachedClass$CachedMethodComparatorByName +instanceKlass org/codehaus/groovy/reflection/CachedMethod$MyComparator +instanceKlass java/lang/SecurityManager$$Lambda$342 +instanceKlass java/lang/SecurityManager$$Lambda$341 +instanceKlass java/lang/SecurityManager$$Lambda$340 +instanceKlass java/lang/SecurityManager$$Lambda$339 +instanceKlass java/lang/SecurityManager$$Lambda$338 +instanceKlass java/lang/SecurityManager$$Lambda$337 +instanceKlass java/lang/SecurityManager$$Lambda$336 +instanceKlass java/lang/SecurityManager$$Lambda$335 +instanceKlass java/lang/SecurityManager$$Lambda$334 +instanceKlass java/lang/SecurityManager$$Lambda$333 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass java/lang/SecurityManager$$Lambda$332 +instanceKlass org/codehaus/groovy/vmplugin/v9/Java9$$Lambda$331 +instanceKlass org/codehaus/groovy/vmplugin/v9/Java9$$Lambda$330 +instanceKlass org/codehaus/groovy/vmplugin/v9/Java9$$Lambda$329 +instanceKlass org/codehaus/groovy/vmplugin/v9/Java9$$Lambda$328 +instanceKlass org/codehaus/groovy/vmplugin/v9/Java9$$Lambda$327 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/codehaus/groovy/vmplugin/v9/Java9$$Lambda$326 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/codehaus/groovy/vmplugin/v9/Java9$$Lambda$325 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/codehaus/groovy/vmplugin/v9/Java9$$Lambda$324 +instanceKlass java/util/Spliterators$IteratorSpliterator +instanceKlass jdk/internal/module/SystemModules$all +instanceKlass sun/nio/fs/ExtendedFileSystemProvider +instanceKlass org/codehaus/groovy/runtime/DefaultGroovyMethodsSupport +instanceKlass groovyjarjarasm/asm/Opcodes +instanceKlass org/codehaus/groovy/ast/Variable +instanceKlass org/codehaus/groovy/vmplugin/v8/Java8 +instanceKlass org/codehaus/groovy/vmplugin/VMPluginFactory$$Lambda$323 +instanceKlass org/codehaus/groovy/vmplugin/VMPlugin +instanceKlass org/codehaus/groovy/vmplugin/VMPluginFactory +instanceKlass org/codehaus/groovy/reflection/ReflectionUtils +instanceKlass org/codehaus/groovy/reflection/CachedClass$3$$Lambda$322 +instanceKlass org/codehaus/groovy/reflection/CachedClass$3$$Lambda$321 +instanceKlass org/codehaus/groovy/reflection/CachedClass$3$$Lambda$320 +instanceKlass org/codehaus/groovy/reflection/CachedClass$3$$Lambda$319 +instanceKlass org/codehaus/groovy/runtime/memoize/MemoizeCache +instanceKlass org/codehaus/groovy/reflection/CachedClass$3$$Lambda$318 +instanceKlass org/codehaus/groovy/reflection/stdclasses/CachedSAMClass$$Lambda$317 +instanceKlass org/codehaus/groovy/reflection/stdclasses/CachedSAMClass$$Lambda$316 +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass org/codehaus/groovy/reflection/stdclasses/InjectedInvoker +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/MethodHandleImpl$BindCaller +instanceKlass org/codehaus/groovy/runtime/metaclass/MetaClassRegistryImpl$$Lambda$315 +instanceKlass org/codehaus/groovy/transform/trait/Traits$Implemented +instanceKlass org/codehaus/groovy/util/ReferenceType$HardRef +instanceKlass org/codehaus/groovy/util/ManagedReference +instanceKlass org/codehaus/groovy/reflection/ClassInfo$GlobalClassSet +instanceKlass org/apache/groovy/util/SystemUtil +instanceKlass org/codehaus/groovy/reflection/GroovyClassValue +instanceKlass org/codehaus/groovy/reflection/GroovyClassValueFactory +instanceKlass org/codehaus/groovy/reflection/ClassInfo$1 +instanceKlass org/codehaus/groovy/reflection/CachedClass +instanceKlass org/codehaus/groovy/reflection/GroovyClassValue$ComputeValue +instanceKlass org/codehaus/groovy/util/ComplexKeyHashMap$Entry +instanceKlass org/codehaus/groovy/util/ComplexKeyHashMap$EntryIterator +instanceKlass org/codehaus/groovy/util/ComplexKeyHashMap +instanceKlass org/codehaus/groovy/reflection/ReflectionCache +instanceKlass java/lang/Process +instanceKlass java/util/Timer +instanceKlass java/util/TimerTask +instanceKlass groovy/lang/groovydoc/Groovydoc +instanceKlass groovy/lang/ListWithDefault +instanceKlass groovy/lang/Range +instanceKlass groovy/util/BufferedIterator +instanceKlass java/util/BitSet +instanceKlass org/codehaus/groovy/reflection/GeneratedMetaMethod$DgmMethodRecord +instanceKlass groovy/lang/MetaClassRegistry$MetaClassCreationHandle +instanceKlass org/codehaus/groovy/runtime/m12n/ExtensionModuleRegistry +instanceKlass org/codehaus/groovy/util/Reference +instanceKlass org/codehaus/groovy/util/ReferenceManager +instanceKlass org/codehaus/groovy/util/ReferenceBundle +instanceKlass org/codehaus/groovy/util/ManagedConcurrentLinkedQueue +instanceKlass org/codehaus/groovy/util/FastArray +instanceKlass groovy/lang/MetaClassRegistryChangeEventListener +instanceKlass java/util/EventListener +instanceKlass org/codehaus/groovy/reflection/ParameterTypes +instanceKlass org/codehaus/groovy/runtime/m12n/ExtensionModuleScanner$ExtensionModuleListener +instanceKlass org/codehaus/groovy/runtime/metaclass/MetaClassRegistryImpl +instanceKlass org/codehaus/groovy/runtime/InvokerHelper +instanceKlass org/gradle/internal/classpath/Instrumented$1 +instanceKlass java/util/stream/Sink$ChainedInt +instanceKlass java/util/stream/Sink$OfInt +instanceKlass java/util/function/IntConsumer +instanceKlass java/util/stream/Nodes$ArrayNode +instanceKlass org/codehaus/groovy/runtime/callsite/CallSiteArray$$Lambda$314 +instanceKlass org/codehaus/groovy/runtime/callsite/CallSiteArray$$Lambda$313 +instanceKlass org/codehaus/groovy/runtime/callsite/AbstractCallSite +instanceKlass java/util/stream/Streams$RangeIntSpliterator +instanceKlass java/util/stream/IntStream +instanceKlass org/gradle/internal/instantiation/generator/AsmBackedClassGenerator$NoOpBuilder +instanceKlass groovy/transform/Internal +instanceKlass java/beans/Transient +instanceKlass org/gradle/process/ExecResult +instanceKlass org/gradle/api/resources/ResourceHandler +instanceKlass org/codehaus/groovy/reflection/ClassInfo +instanceKlass org/codehaus/groovy/util/Finalizable +instanceKlass org/codehaus/groovy/runtime/callsite/CallSite +instanceKlass com/google/common/collect/MapMakerInternalMap$AbstractStrongKeyEntry +instanceKlass com/google/common/collect/MapMakerInternalMap$WeakValueEntry +instanceKlass com/google/common/collect/Count +instanceKlass org/gradle/api/internal/initialization/loadercache/DefaultClassLoaderCache$CachedClassLoader +instanceKlass org/gradle/api/internal/initialization/loadercache/DefaultClassLoaderCache$$Lambda$312 +instanceKlass org/gradle/groovy/scripts/internal/DefaultScriptCompilationHandler$ClassesDirCompiledScript$$Lambda$311 +instanceKlass org/gradle/configuration/DefaultScriptPluginFactory$ScriptPluginImpl$$Lambda$310 +instanceKlass org/gradle/groovy/scripts/internal/BuildScriptData +instanceKlass org/gradle/internal/snapshot/AbstractIncompleteFileSystemNode$2$$Lambda$309 +instanceKlass org/gradle/internal/snapshot/AbstractIncompleteFileSystemNode$$Lambda$308 +instanceKlass org/gradle/internal/snapshot/AbstractIncompleteFileSystemNode$2$$Lambda$307 +instanceKlass org/gradle/internal/snapshot/PathUtil$1 +instanceKlass org/gradle/internal/snapshot/AbstractStorePathRelationshipHandler +instanceKlass org/gradle/internal/snapshot/AbstractIncompleteFileSystemNode$2 +instanceKlass org/gradle/internal/snapshot/AbstractListChildMap +instanceKlass org/gradle/api/internal/changedetection/state/CachingFileHasher$FileInfo +instanceKlass org/gradle/cache/internal/DefaultMultiProcessSafePersistentIndexedCache$$Lambda$306 +instanceKlass org/gradle/cache/internal/CacheAccessWorker$1 +instanceKlass org/gradle/cache/internal/AsyncCacheAccessDecoratedCache$$Lambda$305 +instanceKlass org/gradle/cache/internal/InMemoryDecoratedCache$$Lambda$304 +instanceKlass org/gradle/cache/internal/CrossProcessSynchronizingCache$$Lambda$303 +instanceKlass org/gradle/internal/snapshot/SnapshotUtil$1 +instanceKlass org/gradle/internal/snapshot/AbstractIncompleteFileSystemNode$$Lambda$302 +instanceKlass org/gradle/cache/internal/btree/BTreePersistentIndexedCache$DataBlockUpdateResult +instanceKlass org/gradle/internal/io/StreamByteBuffer$StreamByteBufferChunk +instanceKlass org/gradle/internal/io/StreamByteBuffer +instanceKlass org/gradle/api/internal/initialization/ClassLoaderScopeIdentifier$Id +instanceKlass org/gradle/model/dsl/internal/transform/ClosureCreationInterceptingVerifier +instanceKlass org/gradle/cache/internal/btree/BTreePersistentIndexedCache$Lookup +instanceKlass org/gradle/groovy/scripts/internal/FactoryBackedCompileOperation +instanceKlass org/gradle/cache/internal/btree/BTreePersistentIndexedCache$IndexEntry +instanceKlass org/gradle/groovy/scripts/internal/BuildScriptTransformer$1 +instanceKlass org/gradle/groovy/scripts/internal/BuildScriptTransformer +instanceKlass org/gradle/cache/internal/DefaultMultiProcessSafePersistentIndexedCache$$Lambda$301 +instanceKlass org/gradle/api/internal/collections/IterationOrderRetainingSetElementSource$1 +instanceKlass org/gradle/cache/internal/btree/BTreePersistentIndexedCache$IndexRoot +instanceKlass com/google/common/primitives/Longs +instanceKlass org/gradle/api/internal/plugins/DefaultPluginManager$3 +instanceKlass org/gradle/cache/internal/btree/FreeListBlockStore$FreeListEntry +instanceKlass org/gradle/cache/internal/btree/BlockPointer +instanceKlass org/gradle/cache/internal/btree/ByteInput +instanceKlass org/gradle/cache/internal/btree/ByteOutput +instanceKlass org/gradle/api/plugins/AppliedPlugin +instanceKlass org/gradle/api/internal/plugins/ApplyPluginBuildOperationType$Result +instanceKlass org/gradle/cache/internal/btree/FreeListBlockStore$2 +instanceKlass org/gradle/cache/internal/btree/FreeListBlockStore$1 +instanceKlass org/gradle/api/internal/plugins/DefaultPluginManager +instanceKlass org/gradle/cache/internal/btree/BTreePersistentIndexedCache$2 +instanceKlass org/gradle/cache/internal/btree/BTreePersistentIndexedCache$1 +instanceKlass org/gradle/cache/internal/btree/FreeListBlockStore +instanceKlass org/gradle/api/internal/plugins/ImperativeOnlyPluginTarget +instanceKlass org/gradle/api/internal/plugins/PluginTarget +instanceKlass org/gradle/cache/internal/btree/StateCheckBlockStore +instanceKlass org/gradle/groovy/scripts/internal/DefaultScriptRunnerFactory$ScriptRunnerImpl +instanceKlass org/gradle/groovy/scripts/internal/CrossBuildInMemoryCachingScriptClassCache$CachedCompiledScript +instanceKlass org/gradle/internal/classloader/ImplementationHashAware +instanceKlass org/gradle/cache/internal/btree/Block +instanceKlass org/gradle/cache/internal/btree/FileBackedBlockStore +instanceKlass org/gradle/groovy/scripts/internal/DefaultScriptCompilationHandler$ClassesDirCompiledScript +instanceKlass org/gradle/cache/internal/btree/CachingBlockStore +instanceKlass org/gradle/cache/internal/btree/KeyHasher +instanceKlass org/gradle/cache/internal/btree/BlockStore$Factory +instanceKlass org/gradle/cache/internal/btree/BlockPayload +instanceKlass org/gradle/cache/internal/btree/BlockStore +instanceKlass org/gradle/cache/internal/DefaultMultiProcessSafePersistentIndexedCache$$Lambda$300 +instanceKlass org/gradle/cache/internal/CacheAccessWorker$2 +instanceKlass org/gradle/cache/internal/CacheAccessWorker$FlushOperationsCommand +instanceKlass org/gradle/internal/classpath/DefaultCachedClasspathTransformer$$Lambda$299 +instanceKlass org/gradle/cache/internal/CacheAccessWorker$ShutdownOperationsCommand +instanceKlass org/gradle/cache/internal/AsyncCacheAccessDecoratedCache$$Lambda$298 +instanceKlass sun/nio/fs/WindowsPath$1 +instanceKlass org/gradle/internal/classpath/DefaultCachedClasspathTransformer$$Lambda$297 +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/internal/classpath/DefaultCachedClasspathTransformer$$Lambda$296 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/internal/classpath/DefaultCachedClasspathTransformer$$Lambda$295 +instanceKlass org/gradle/internal/classpath/DefaultCachedClasspathTransformer$$Lambda$294 +instanceKlass org/gradle/internal/classpath/DefaultCachedClasspathTransformer$$Lambda$293 +instanceKlass org/gradle/internal/Either +instanceKlass org/gradle/internal/classpath/DefaultCachedClasspathTransformer$$Lambda$292 +instanceKlass org/gradle/internal/snapshot/ReadOnlyFileSystemNode$1 +instanceKlass org/gradle/internal/snapshot/ChildMap$Entry$$Lambda$291 +instanceKlass org/gradle/internal/snapshot/SnapshotUtil$2 +instanceKlass org/gradle/internal/snapshot/SnapshotUtil +instanceKlass org/gradle/internal/watch/registry/impl/HierarchicalFileWatcherUpdater$$Lambda$290 +instanceKlass org/gradle/internal/watch/vfs/impl/WatchingVirtualFileSystem$$Lambda$289 +instanceKlass org/gradle/internal/snapshot/SnapshotHierarchy$SnapshotDiffListener +instanceKlass org/gradle/internal/watch/vfs/impl/WatchingVirtualFileSystem$$Lambda$288 +instanceKlass org/gradle/internal/watch/vfs/impl/WatchingVirtualFileSystem$$Lambda$287 +instanceKlass org/gradle/internal/watch/registry/impl/SnapshotCollectingDiffListener$$Lambda$286 +instanceKlass org/gradle/internal/snapshot/AbstractIncompleteFileSystemNode$$Lambda$285 +instanceKlass org/gradle/internal/snapshot/AbstractIncompleteFileSystemNode$$Lambda$284 +instanceKlass org/gradle/internal/snapshot/AbstractIncompleteFileSystemNode +instanceKlass org/gradle/internal/snapshot/ChildMap$Entry$PathRelationshipHandler +instanceKlass org/gradle/internal/snapshot/SingletonChildMap +instanceKlass org/gradle/internal/snapshot/PathUtil$$Lambda$283 +instanceKlass org/gradle/internal/snapshot/PathUtil$$Lambda$282 +instanceKlass org/gradle/internal/snapshot/VfsRelativePath +instanceKlass org/gradle/internal/watch/registry/impl/SnapshotCollectingDiffListener +instanceKlass org/gradle/internal/vfs/impl/AbstractVirtualFileSystem$$Lambda$281 +instanceKlass org/gradle/internal/vfs/impl/AbstractVirtualFileSystem$UpdateFunction +instanceKlass org/gradle/internal/vfs/impl/AbstractVirtualFileSystem$$Lambda$280 +instanceKlass org/gradle/internal/snapshot/ChildMapFactory +instanceKlass org/gradle/internal/snapshot/DirectorySnapshot$$Lambda$279 +instanceKlass org/gradle/internal/snapshot/ChildMap$Entry +instanceKlass org/gradle/internal/snapshot/ChildMap$InvalidationHandler +instanceKlass java/util/Comparator$$Lambda$278 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/internal/snapshot/FileSystemLocationSnapshot$$Lambda$277 +instanceKlass org/gradle/internal/snapshot/PathUtil +instanceKlass org/gradle/internal/snapshot/FileSystemLocationSnapshot$$Lambda$276 +instanceKlass org/gradle/internal/snapshot/MerkleDirectorySnapshotBuilder$Directory +instanceKlass java/nio/file/Files$3 +instanceKlass java/nio/file/FileTreeWalker$Event +instanceKlass java/nio/file/FileTreeWalker$DirectoryNode +instanceKlass java/nio/file/FileTreeWalker +instanceKlass org/gradle/internal/snapshot/MerkleDirectorySnapshotBuilder +instanceKlass org/gradle/internal/snapshot/RelativePathTracker +instanceKlass org/gradle/internal/RelativePathSupplier +instanceKlass org/gradle/internal/snapshot/impl/DirectorySnapshotterStatistics$CollectingFileVisitor +instanceKlass org/gradle/internal/vfs/impl/DefaultFileSystemAccess$1 +instanceKlass org/gradle/internal/file/impl/DefaultFileMetadata$1 +instanceKlass org/gradle/internal/file/impl/DefaultFileMetadata +instanceKlass org/gradle/internal/file/FileMetadata +instanceKlass org/gradle/internal/nativeintegration/filesystem/services/NativePlatformBackedFileMetadataAccessor$1 +instanceKlass net/rubygrapefruit/platform/internal/WindowsFileTime +instanceKlass net/rubygrapefruit/platform/internal/jni/WindowsFileFunctions +instanceKlass net/rubygrapefruit/platform/internal/WindowsFileStat +instanceKlass org/gradle/internal/snapshot/SnapshottingFilter$1 +instanceKlass org/gradle/internal/snapshot/SnapshottingFilter +instanceKlass org/gradle/internal/vfs/impl/DefaultFileSystemAccess$$Lambda$275 +instanceKlass org/gradle/internal/vfs/impl/DefaultFileSystemAccess$$Lambda$274 +instanceKlass org/gradle/internal/snapshot/SnapshotHierarchy$$Lambda$273 +instanceKlass org/gradle/internal/snapshot/SnapshotHierarchy$$Lambda$272 +instanceKlass org/gradle/internal/vfs/impl/DefaultFileSystemAccess$$Lambda$271 +instanceKlass org/gradle/internal/classpath/DefaultCachedClasspathTransformer$$Lambda$270 +instanceKlass org/gradle/internal/classpath/DefaultCachedClasspathTransformer$$Lambda$269 +instanceKlass org/gradle/internal/classpath/DefaultCachedClasspathTransformer$$Lambda$268 +instanceKlass org/gradle/internal/classpath/DefaultCachedClasspathTransformer$ValueOrTransformProvider +instanceKlass org/gradle/internal/classpath/InstrumentingClasspathFileTransformer +instanceKlass org/codehaus/groovy/runtime/callsite/CallSiteArray +instanceKlass java/lang/invoke/SerializedLambda +instanceKlass org/gradle/internal/classpath/Instrumented +instanceKlass org/gradle/internal/classpath/InstrumentingTransformer +instanceKlass org/gradle/internal/classpath/CompositeTransformer +instanceKlass org/gradle/groovy/scripts/internal/FileCacheBackedScriptClassCompiler$1 +instanceKlass org/gradle/cache/internal/DefaultPersistentDirectoryCache$Initializer +instanceKlass org/gradle/groovy/scripts/internal/FileCacheBackedScriptClassCompiler$CompileToCrossBuildCacheAction +instanceKlass org/gradle/groovy/scripts/internal/FileCacheBackedScriptClassCompiler$ProgressReportingInitializer +instanceKlass com/google/common/io/ByteArrayDataOutput +instanceKlass com/google/common/io/ByteArrayDataInput +instanceKlass com/google/common/io/ByteStreams +instanceKlass java/math/MutableBigInteger +instanceKlass org/gradle/groovy/scripts/internal/ScriptCacheKey +instanceKlass org/gradle/internal/scripts/GradleScript +instanceKlass org/gradle/api/Script +instanceKlass org/gradle/groovy/scripts/internal/NoDataCompileOperation +instanceKlass com/google/common/collect/MapMakerInternalMap$StrongValueEntry +instanceKlass org/codehaus/groovy/control/CompilationUnit$SourceUnitOperation +instanceKlass org/codehaus/groovy/control/CompilationUnit$ISourceUnitOperation +instanceKlass org/codehaus/groovy/control/CompilationUnit$PhaseOperation +instanceKlass org/gradle/groovy/scripts/internal/Permits +instanceKlass org/codehaus/groovy/ast/GroovyCodeVisitor +instanceKlass org/gradle/plugin/use/internal/PluginUseScriptBlockMetadataCompiler +instanceKlass org/codehaus/groovy/ast/ASTNode +instanceKlass org/codehaus/groovy/ast/NodeMetaDataHandler +instanceKlass groovy/lang/groovydoc/GroovydocHolder +instanceKlass org/gradle/groovy/scripts/internal/InitialPassStatementTransformer +instanceKlass org/gradle/internal/resource/CachingTextResource +instanceKlass org/gradle/groovy/scripts/DelegatingScriptSource +instanceKlass org/gradle/groovy/scripts/DefaultScriptCompilerFactory$ScriptCompilerImpl +instanceKlass org/gradle/configuration/DefaultScriptTarget +instanceKlass org/gradle/tooling/internal/provider/runner/PluginApplicationTracker$$Lambda$267 +instanceKlass org/gradle/util/internal/TextUtil$1 +instanceKlass java/util/regex/CharPredicates$$Lambda$266 +instanceKlass java/util/regex/CharPredicates$$Lambda$265 +instanceKlass org/gradle/util/internal/TextUtil +instanceKlass org/gradle/configuration/BuildOperationScriptPlugin$OperationDetails +instanceKlass org/gradle/configuration/BuildOperationScriptPlugin$1 +instanceKlass org/gradle/configuration/internal/DefaultUserCodeApplicationContext$CurrentApplication +instanceKlass org/gradle/configuration/internal/UserCodeApplicationContext$Application +instanceKlass org/gradle/configuration/BuildOperationScriptPlugin$$Lambda$264 +instanceKlass org/gradle/configuration/internal/UserCodeApplicationId +instanceKlass org/gradle/configuration/BuildOperationScriptPlugin$2 +instanceKlass org/gradle/configuration/ApplyScriptPluginBuildOperationType$Result +instanceKlass org/gradle/configuration/BuildOperationScriptPlugin +instanceKlass org/gradle/configuration/ScriptTarget +instanceKlass org/gradle/configuration/DefaultScriptPluginFactory$ScriptPluginImpl +instanceKlass org/gradle/normalization/InputNormalizationHandler +instanceKlass org/gradle/api/ProjectState +instanceKlass org/gradle/api/attributes/DocsType +instanceKlass org/gradle/api/internal/artifacts/JavaEcosystemAttributesDescriber +instanceKlass org/gradle/api/internal/artifacts/JavaEcosystemSupport$TargetJvmEnvironmentDisambiguationRules +instanceKlass org/gradle/api/internal/artifacts/JavaEcosystemSupport$TargetJvmEnvironmentCompatibilityRules +instanceKlass org/gradle/api/attributes/java/TargetJvmEnvironment +instanceKlass org/gradle/api/internal/attributes/DefaultOrderedDisambiguationRule +instanceKlass org/gradle/api/internal/attributes/DefaultOrderedCompatibilityRule +instanceKlass org/gradle/api/internal/attributes/AttributeMatchingRules +instanceKlass org/gradle/api/attributes/java/TargetJvmVersion +instanceKlass org/gradle/api/internal/artifacts/JavaEcosystemSupport$BundlingDisambiguationRules +instanceKlass org/gradle/api/internal/artifacts/JavaEcosystemSupport$BundlingCompatibilityRules +instanceKlass org/gradle/api/attributes/Bundling +instanceKlass org/gradle/api/internal/artifacts/JavaEcosystemSupport$$Lambda$263 +instanceKlass org/gradle/api/internal/artifacts/JavaEcosystemSupport$LibraryElementsDisambiguationRules +instanceKlass org/gradle/api/internal/artifacts/JavaEcosystemSupport$LibraryElementsCompatibilityRules +instanceKlass org/gradle/api/internal/artifacts/JavaEcosystemSupport$1 +instanceKlass org/gradle/api/internal/artifacts/JavaEcosystemSupport$UsageDisambiguationRules +instanceKlass org/gradle/api/internal/artifacts/JavaEcosystemSupport$UsageCompatibilityRules +instanceKlass org/gradle/api/internal/artifacts/JavaEcosystemSupport +instanceKlass org/gradle/internal/locking/DefaultDependencyLockingHandler$$Lambda$262 +instanceKlass org/gradle/internal/locking/DefaultDependencyLockingHandler$$Lambda$261 +instanceKlass org/gradle/api/internal/artifacts/DefaultDependencyManagementServices$DependencyResolutionScopeServices$$Lambda$260 +instanceKlass org/gradle/internal/locking/DefaultDependencyLockingHandler +instanceKlass org/gradle/api/internal/artifacts/ivyservice/moduleconverter/DefaultRootComponentMetadataBuilder$MetadataHolder +instanceKlass org/gradle/internal/component/local/model/DefaultLocalComponentMetadata +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfigurationContainer$$Lambda$259 +instanceKlass org/gradle/api/artifacts/Configuration$Namer +instanceKlass org/gradle/api/internal/artifacts/configurations/MutationValidator +instanceKlass org/gradle/api/internal/artifacts/configurations/ConfigurationInternal +instanceKlass org/gradle/internal/deprecation/DeprecatableConfiguration +instanceKlass org/gradle/api/internal/artifacts/configurations/ConfigurationsProvider +instanceKlass org/gradle/api/internal/file/copy/CopySpecSource +instanceKlass org/gradle/api/file/CopySpec +instanceKlass org/gradle/api/file/CopyProcessingSpec +instanceKlass org/gradle/api/file/ContentFilterable +instanceKlass org/gradle/api/file/CopySourceSpec +instanceKlass org/gradle/api/artifacts/ConfigurablePublishArtifact +instanceKlass org/gradle/api/internal/attributes/AttributeDesugaring +instanceKlass org/gradle/api/internal/artifacts/transform/ConsumerProvidedVariantFinder +instanceKlass org/gradle/api/internal/artifacts/transform/VariantSelector +instanceKlass org/gradle/api/internal/artifacts/transform/DefaultArtifactTransforms +instanceKlass org/gradle/api/internal/artifacts/ivyservice/DefaultConfigurationResolver$$Lambda$258 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/DependencyArtifactsVisitor +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/oldresult/ResolvedConfigurationBuilder +instanceKlass org/gradle/api/internal/artifacts/ivyservice/DefaultConfigurationResolver +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/projectresult/ResolvedLocalComponentsResult +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ShortCircuitEmptyConfigurationResolver +instanceKlass org/gradle/api/artifacts/result/ResolutionResult +instanceKlass org/gradle/api/internal/artifacts/ResolveContext +instanceKlass org/gradle/api/artifacts/ResolvedConfiguration +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/VisitedArtifactSet +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ErrorHandlingConfigurationResolver +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/ResolvedArtifactSet$TransformSourceVisitor +instanceKlass org/gradle/api/internal/artifacts/transform/DefaultTransformationNodeFactory +instanceKlass org/gradle/api/internal/artifacts/transform/DefaultTransformedVariantFactory$$Lambda$257 +instanceKlass org/gradle/api/internal/artifacts/transform/TransformedProjectArtifactSet +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/ResolvedArtifactSet$Artifacts +instanceKlass org/gradle/api/internal/artifacts/transform/DefaultTransformedVariantFactory$$Lambda$256 +instanceKlass org/gradle/api/internal/artifacts/transform/DefaultTransformedVariantFactory$Factory +instanceKlass org/gradle/api/internal/artifacts/transform/AbstractTransformedArtifactSet +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/ResolvedArtifactSet +instanceKlass org/gradle/api/internal/artifacts/transform/ExtraExecutionGraphDependenciesResolverFactory +instanceKlass org/gradle/api/internal/artifacts/transform/VariantDefinition +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/ResolvedVariant +instanceKlass org/gradle/api/internal/artifacts/type/DefaultArtifactTypeRegistry +instanceKlass org/gradle/api/artifacts/transform/TransformParameters$None +instanceKlass org/gradle/api/artifacts/transform/TransformParameters +instanceKlass org/gradle/api/artifacts/transform/TransformAction +instanceKlass org/gradle/api/artifacts/transform/TransformSpec +instanceKlass org/gradle/api/artifacts/transform/VariantTransform +instanceKlass org/gradle/api/internal/artifacts/transform/DefaultVariantTransformRegistry$RecordingRegistration +instanceKlass org/gradle/api/internal/artifacts/transform/DefaultVariantTransformRegistry +instanceKlass org/gradle/api/internal/artifacts/ArtifactTransformRegistration +instanceKlass org/gradle/api/internal/artifacts/transform/Transformer +instanceKlass org/gradle/api/internal/tasks/properties/PropertyVisitor +instanceKlass org/gradle/api/internal/artifacts/transform/DefaultTransformationRegistrationFactory +instanceKlass sun/reflect/annotation/AnnotationParser$$Lambda$255 +instanceKlass org/gradle/api/reflect/InjectionPointQualifier +instanceKlass org/gradle/api/internal/tasks/properties/AbstractPropertyNode +instanceKlass org/gradle/api/internal/tasks/properties/bean/RuntimeBeanNodeFactory +instanceKlass org/gradle/api/internal/tasks/properties/DefaultPropertyWalker +instanceKlass org/gradle/api/internal/tasks/properties/DefaultTypeMetadataStore$$Lambda$254 +instanceKlass org/gradle/api/internal/tasks/properties/DefaultTypeMetadataStore$$Lambda$253 +instanceKlass org/gradle/api/internal/tasks/properties/TypeMetadata +instanceKlass org/gradle/internal/reflect/PropertyMetadata +instanceKlass org/gradle/api/internal/tasks/properties/DefaultTypeMetadataStore +instanceKlass org/gradle/api/internal/tasks/properties/TypeMetadataStore +instanceKlass org/gradle/api/internal/tasks/properties/InspectionSchemeFactory$InspectionSchemeImpl +instanceKlass org/gradle/api/internal/tasks/properties/InspectionScheme +instanceKlass org/apache/commons/lang/builder/HashCodeBuilder +instanceKlass com/google/common/base/Equivalence$Wrapper +instanceKlass org/gradle/internal/reflect/Methods +instanceKlass org/gradle/internal/reflect/annotations/impl/DefaultTypeAnnotationMetadataStore$$Lambda$252 +instanceKlass org/gradle/internal/service/scopes/ExecutionGlobalServices$$Lambda$251 +instanceKlass org/gradle/internal/scripts/ScriptOrigin +instanceKlass org/gradle/api/internal/PolymorphicDomainObjectContainerInternal +instanceKlass org/gradle/api/ExtensiblePolymorphicDomainObjectContainer +instanceKlass org/gradle/api/internal/rules/NamedDomainObjectFactoryRegistry +instanceKlass org/gradle/util/internal/ConfigureUtil$WrappedConfigureAction +instanceKlass org/gradle/util/internal/ClosureBackedAction +instanceKlass org/gradle/internal/reflect/AnnotationCategory$1 +instanceKlass org/gradle/work/NormalizeLineEndings +instanceKlass org/gradle/api/tasks/IgnoreEmptyDirectories +instanceKlass org/gradle/api/tasks/Optional +instanceKlass org/gradle/api/tasks/PathSensitive +instanceKlass org/gradle/api/tasks/CompileClasspath +instanceKlass org/gradle/api/tasks/Classpath +instanceKlass org/gradle/api/tasks/SkipWhenEmpty +instanceKlass org/gradle/work/Incremental +instanceKlass org/gradle/api/tasks/UntrackedTask +instanceKlass org/gradle/work/DisableCachingByDefault +instanceKlass org/gradle/api/artifacts/transform/CacheableTransform +instanceKlass org/gradle/api/tasks/CacheableTask +instanceKlass org/gradle/internal/reflect/annotations/impl/DefaultTypeAnnotationMetadataStore$1 +instanceKlass org/gradle/internal/reflect/validation/TypeValidationContext +instanceKlass org/gradle/internal/reflect/annotations/TypeAnnotationMetadata +instanceKlass org/gradle/internal/reflect/annotations/impl/DefaultTypeAnnotationMetadataStore +instanceKlass org/gradle/internal/service/scopes/ExecutionGlobalServices$$Lambda$250 +instanceKlass org/gradle/api/internal/AbstractTask +instanceKlass org/gradle/api/internal/TaskInternal +instanceKlass org/gradle/internal/service/scopes/ExecutionGlobalServices$$Lambda$249 +instanceKlass org/gradle/internal/execution/caching/CachingDisabledReason +instanceKlass org/gradle/internal/execution/DeferredExecutionHandler +instanceKlass org/gradle/internal/execution/UnitOfWork +instanceKlass org/gradle/api/internal/artifacts/transform/DefaultTransformerInvocationFactory +instanceKlass org/gradle/api/internal/artifacts/DefaultDependencyManagementServices$ArtifactTransformResolutionGradleUserHomeServices$1 +instanceKlass org/gradle/internal/execution/workspace/impl/DefaultImmutableWorkspaceProvider$$Lambda$248 +instanceKlass org/gradle/internal/execution/workspace/impl/DefaultImmutableWorkspaceProvider +instanceKlass org/gradle/cache/ManualEvictionInMemoryCache +instanceKlass org/gradle/cache/internal/DefaultCrossBuildInMemoryCacheFactory$CrossBuildCacheRetainingDataFromPreviousBuild +instanceKlass org/gradle/api/internal/artifacts/DependencyManagementGradleUserHomeScopeServices$$Lambda$247 +instanceKlass org/gradle/internal/Try +instanceKlass org/gradle/internal/snapshot/impl/ImplementationSnapshotSerializer +instanceKlass org/gradle/internal/execution/history/impl/FileSystemSnapshotSerializer +instanceKlass org/gradle/internal/execution/history/impl/FileCollectionFingerprintSerializer +instanceKlass org/gradle/internal/execution/history/PreviousExecutionState +instanceKlass org/gradle/internal/execution/history/impl/DefaultExecutionHistoryStore +instanceKlass org/gradle/api/internal/changedetection/state/DefaultExecutionHistoryCacheAccess +instanceKlass org/gradle/internal/execution/ExecutionResult +instanceKlass org/gradle/internal/execution/UnitOfWork$ExecutionRequest +instanceKlass org/gradle/internal/execution/steps/ExecuteStep +instanceKlass org/gradle/internal/execution/steps/RemovePreviousOutputsStep +instanceKlass org/gradle/internal/execution/steps/ResolveInputChangesStep +instanceKlass org/gradle/internal/execution/steps/TimeoutStep +instanceKlass org/gradle/internal/execution/steps/CreateOutputsStep +instanceKlass org/gradle/internal/execution/steps/StoreExecutionStateStep +instanceKlass org/gradle/internal/execution/steps/BroadcastChangingOutputsStep +instanceKlass org/gradle/internal/execution/history/AfterExecutionState +instanceKlass org/gradle/internal/execution/history/OutputExecutionState +instanceKlass org/gradle/internal/execution/steps/SkipUpToDateStep +instanceKlass org/gradle/internal/execution/steps/IncrementalChangesContext +instanceKlass org/gradle/internal/execution/steps/CachingContext +instanceKlass org/gradle/internal/execution/steps/ValidationFinishedContext +instanceKlass org/gradle/internal/execution/steps/BeforeExecutionContext +instanceKlass org/gradle/internal/execution/steps/PreviousExecutionContext +instanceKlass org/gradle/internal/execution/steps/WorkspaceContext +instanceKlass org/gradle/internal/execution/history/changes/IncrementalInputProperties +instanceKlass org/gradle/internal/execution/fingerprint/InputFingerprinter$InputVisitor +instanceKlass org/gradle/internal/execution/steps/ResolveChangesStep +instanceKlass org/gradle/internal/execution/steps/CachingResult +instanceKlass org/gradle/internal/execution/ExecutionEngine$Result +instanceKlass org/gradle/internal/execution/steps/UpToDateResult +instanceKlass org/gradle/internal/execution/steps/AfterExecutionResult +instanceKlass org/gradle/api/internal/artifacts/DependencyManagementBuildScopeServices$NoOpCachingStateStep +instanceKlass org/gradle/internal/reflect/validation/ValidationProblemBuilder +instanceKlass org/gradle/internal/execution/steps/ValidateStep +instanceKlass org/gradle/internal/execution/history/BeforeExecutionState +instanceKlass org/gradle/internal/execution/history/InputExecutionState +instanceKlass org/gradle/internal/execution/history/ExecutionState +instanceKlass org/gradle/internal/execution/UnitOfWork$ImplementationVisitor +instanceKlass org/gradle/internal/execution/steps/BuildOperationStep +instanceKlass org/gradle/internal/execution/steps/Result +instanceKlass org/gradle/internal/execution/steps/RemoveUntrackedExecutionStateStep +instanceKlass org/gradle/internal/execution/steps/LoadPreviousExecutionStateStep +instanceKlass org/gradle/internal/execution/steps/AssignWorkspaceStep +instanceKlass org/gradle/internal/execution/steps/IdentityCacheStep +instanceKlass org/gradle/internal/execution/steps/IdentityContext +instanceKlass org/gradle/internal/execution/steps/ExecutionRequestContext +instanceKlass org/gradle/internal/execution/steps/Context +instanceKlass org/gradle/internal/execution/steps/IdentifyStep +instanceKlass org/gradle/internal/execution/ExecutionEngine$Request +instanceKlass org/gradle/internal/execution/impl/DefaultExecutionEngine +instanceKlass org/gradle/internal/id/UniqueId$1 +instanceKlass com/google/common/base/Ascii +instanceKlass com/google/common/io/BaseEncoding$Alphabet +instanceKlass com/google/common/io/BaseEncoding +instanceKlass org/gradle/internal/id/UniqueId +instanceKlass org/gradle/internal/execution/timeout/Timeout +instanceKlass org/gradle/internal/execution/timeout/impl/DefaultTimeoutHandler +instanceKlass org/gradle/internal/execution/history/impl/DefaultOverlappingOutputDetector +instanceKlass org/gradle/internal/execution/UnitOfWork$OutputVisitor +instanceKlass org/gradle/internal/execution/impl/DefaultOutputSnapshotter +instanceKlass org/gradle/internal/execution/fingerprint/impl/DefaultInputFingerprinter +instanceKlass org/gradle/internal/execution/fingerprint/impl/DefaultFileCollectionFingerprinterRegistry$$Lambda$246 +instanceKlass org/gradle/internal/execution/fingerprint/impl/DefaultFileCollectionFingerprinterRegistry +instanceKlass org/gradle/api/internal/changedetection/state/CachingFileSystemLocationSnapshotHasher +instanceKlass org/gradle/api/internal/changedetection/state/LineEndingNormalizingInputStreamHasher +instanceKlass org/gradle/api/tasks/CompileClasspathNormalizer +instanceKlass org/gradle/api/tasks/ClasspathNormalizer +instanceKlass org/gradle/internal/fingerprint/IgnoredPathInputNormalizer +instanceKlass org/gradle/internal/fingerprint/NameOnlyInputNormalizer +instanceKlass org/gradle/internal/fingerprint/RelativePathInputNormalizer +instanceKlass org/gradle/internal/execution/fingerprint/impl/DefaultFileNormalizationSpec +instanceKlass org/gradle/internal/execution/fingerprint/FileNormalizationSpec +instanceKlass org/gradle/internal/fingerprint/AbsolutePathInputNormalizer +instanceKlass org/gradle/api/tasks/FileNormalizer +instanceKlass org/gradle/internal/fingerprint/impl/FileCollectionFingerprinterRegistrations$$Lambda$245 +instanceKlass org/gradle/internal/execution/fingerprint/impl/FingerprinterRegistration +instanceKlass org/gradle/internal/fingerprint/impl/FileCollectionFingerprinterRegistrations$$Lambda$244 +instanceKlass org/gradle/internal/fingerprint/FileSystemLocationFingerprint +instanceKlass org/gradle/internal/fingerprint/impl/AbstractDirectorySensitiveFingerprintingStrategy$$Lambda$243 +instanceKlass org/gradle/internal/fingerprint/DirectorySensitivity$$Lambda$242 +instanceKlass org/gradle/internal/fingerprint/DirectorySensitivity$$Lambda$241 +instanceKlass org/gradle/internal/fingerprint/DirectorySensitivity$$Lambda$240 +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass org/gradle/internal/fingerprint/impl/FileCollectionFingerprinterRegistrations$$Lambda$239 +instanceKlass org/gradle/internal/snapshot/FileSystemLocationSnapshot$FileSystemLocationSnapshotVisitor +instanceKlass org/gradle/internal/fingerprint/impl/FileCollectionFingerprinterRegistrations$1 +instanceKlass org/gradle/api/internal/changedetection/state/LineEndingNormalizingFileSystemLocationSnapshotHasher$1 +instanceKlass org/gradle/api/internal/changedetection/state/LineEndingNormalizingFileSystemLocationSnapshotHasher +instanceKlass org/gradle/internal/fingerprint/hashing/FileSystemLocationSnapshotHasher$1 +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass org/gradle/internal/fingerprint/impl/FileCollectionFingerprinterRegistrations$$Lambda$238 +instanceKlass org/gradle/internal/normalization/java/ApiClassExtractor$$Lambda$237 +instanceKlass org/gradle/internal/normalization/java/ApiMemberWriterFactory +instanceKlass org/gradle/internal/normalization/java/impl/ApiMemberWriter +instanceKlass org/gradle/internal/normalization/java/ApiClassExtractor +instanceKlass org/gradle/api/internal/changedetection/state/AbiExtractingClasspathResourceHasher +instanceKlass org/gradle/internal/fingerprint/classpath/CompileClasspathFingerprinter +instanceKlass org/gradle/internal/fingerprint/hashing/FileSystemLocationSnapshotHasher +instanceKlass org/gradle/api/internal/changedetection/state/SplitResourceSnapshotterCacheService +instanceKlass org/gradle/internal/service/scopes/VirtualFileSystemServices$BuildSessionServices$$Lambda$236 +instanceKlass org/gradle/internal/execution/history/changes/ChangeVisitor +instanceKlass org/gradle/internal/execution/history/changes/InputFileChanges +instanceKlass org/gradle/internal/execution/history/changes/ChangeContainer +instanceKlass org/gradle/internal/execution/history/changes/DefaultExecutionStateChangeDetector +instanceKlass org/gradle/api/internal/artifacts/dsl/dependencies/GradlePluginVariantsSupport$TargetGradleVersionDisambiguationRule +instanceKlass org/gradle/api/internal/attributes/DefaultCompatibilityRuleChain$ExceptionHandler +instanceKlass org/gradle/api/internal/artifacts/dsl/dependencies/GradlePluginVariantsSupport$TargetGradleVersionCompatibilityRule +instanceKlass org/gradle/api/attributes/AttributeCompatibilityRule +instanceKlass org/gradle/api/attributes/plugin/GradlePluginApiVersion +instanceKlass org/gradle/api/internal/artifacts/dsl/dependencies/GradlePluginVariantsSupport +instanceKlass org/gradle/api/internal/attributes/DefaultDisambiguationRuleChain$ExceptionHandler +instanceKlass org/gradle/internal/action/DefaultConfigurableRules +instanceKlass org/gradle/internal/action/ConfigurableRules +instanceKlass org/gradle/api/artifacts/CacheableRule +instanceKlass org/gradle/internal/snapshot/impl/AbstractArraySnapshot +instanceKlass org/gradle/internal/snapshot/impl/AbstractScalarValueSnapshot +instanceKlass org/gradle/api/internal/DefaultActionConfiguration +instanceKlass org/gradle/internal/action/DefaultConfigurableRule +instanceKlass org/gradle/internal/action/InstantiatingAction +instanceKlass org/gradle/api/internal/artifacts/dsl/dependencies/PlatformSupport$$Lambda$235 +instanceKlass org/gradle/api/ActionConfiguration +instanceKlass org/gradle/api/internal/artifacts/dsl/dependencies/PlatformSupport$ComponentCategoryDisambiguationRule +instanceKlass org/gradle/api/internal/ReusableAction +instanceKlass org/gradle/api/attributes/AttributeDisambiguationRule +instanceKlass org/gradle/api/internal/attributes/MultipleCandidatesResult +instanceKlass org/gradle/api/attributes/MultipleCandidatesDetails +instanceKlass org/gradle/api/internal/attributes/DefaultDisambiguationRuleChain +instanceKlass org/gradle/internal/action/InstantiatingAction$ExceptionHandler +instanceKlass org/gradle/api/internal/attributes/DefaultCompatibilityRuleChain +instanceKlass org/gradle/api/attributes/CompatibilityRuleChain +instanceKlass org/gradle/api/attributes/DisambiguationRuleChain +instanceKlass org/gradle/api/internal/attributes/DefaultAttributeMatchingStrategy +instanceKlass org/gradle/api/internal/attributes/CompatibilityCheckResult +instanceKlass org/gradle/api/attributes/CompatibilityCheckDetails +instanceKlass org/gradle/api/internal/attributes/DefaultAttributesSchema$MergedSchema +instanceKlass org/gradle/api/internal/attributes/DefaultAttributesSchema$DefaultAttributeMatcher +instanceKlass org/gradle/api/internal/attributes/AttributeDescriber +instanceKlass org/gradle/api/attributes/AttributeMatchingStrategy +instanceKlass org/gradle/internal/component/model/AttributeSelectionSchema +instanceKlass org/gradle/internal/component/model/AttributeMatcher +instanceKlass org/gradle/internal/component/model/ComponentAttributeMatcher +instanceKlass org/gradle/api/internal/attributes/DefaultAttributesSchema +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/store/StoreSet +instanceKlass org/gradle/api/internal/artifacts/DefaultDependencyManagementServices$DependencyResolutionScopeServices$$Lambda$234 +instanceKlass org/gradle/api/internal/artifacts/DefaultArtifactRepositoryContainer$$Lambda$233 +instanceKlass org/gradle/api/internal/artifacts/DefaultArtifactRepositoryContainer$$Lambda$232 +instanceKlass org/gradle/api/internal/collections/AbstractIterationOrderRetainingElementSource$RealizedElementCollectionIterator +instanceKlass org/gradle/api/internal/collections/ListElementSource$1 +instanceKlass org/gradle/api/internal/collections/AbstractIterationOrderRetainingElementSource +instanceKlass org/gradle/api/internal/artifacts/DefaultArtifactRepositoryContainer$RepositoryNamer +instanceKlass org/gradle/api/artifacts/repositories/RepositoryContentDescriptor +instanceKlass org/gradle/api/artifacts/repositories/InclusiveRepositoryContentDescriptor +instanceKlass org/gradle/api/artifacts/repositories/FlatDirectoryArtifactRepository +instanceKlass org/gradle/api/artifacts/repositories/IvyArtifactRepository +instanceKlass org/gradle/api/artifacts/repositories/MavenArtifactRepository +instanceKlass org/gradle/api/artifacts/repositories/MetadataSupplierAware +instanceKlass org/gradle/api/artifacts/repositories/AuthenticationSupported +instanceKlass org/gradle/api/artifacts/repositories/UrlArtifactRepository +instanceKlass org/gradle/api/internal/collections/IndexedElementSource +instanceKlass org/gradle/api/internal/artifacts/dsl/RepositoryHandlerInternal +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/parser/GradleModuleMetadataParser +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/strategy/MavenVersionSelectorScheme +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/parser/PomParent +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/parser/AbstractModuleDescriptorParser +instanceKlass org/gradle/api/artifacts/repositories/AuthenticationContainer +instanceKlass org/gradle/api/internal/artifacts/repositories/DefaultBaseRepositoryFactory +instanceKlass org/apache/ivy/util/MessageLogger +instanceKlass org/gradle/api/internal/artifacts/ivyservice/DefaultIvyContextManager +instanceKlass org/gradle/internal/resource/local/CompositeLocallyAvailableResourceFinder +instanceKlass org/gradle/internal/resource/local/ivy/PatternBasedLocallyAvailableResourceFinder$1 +instanceKlass org/gradle/util/internal/MavenUtil +instanceKlass org/gradle/api/internal/artifacts/repositories/resolver/AbstractResourcePattern +instanceKlass org/gradle/internal/resource/local/LocallyAvailableResourceFinderSearchableFileStoreAdapter$$Lambda$231 +instanceKlass org/gradle/internal/resource/local/ivy/LocallyAvailableResourceFinderFactory$$Lambda$230 +instanceKlass org/gradle/internal/resource/local/LocallyAvailableResourceCandidates +instanceKlass org/gradle/internal/resource/local/AbstractLocallyAvailableResourceFinder +instanceKlass org/gradle/internal/resource/local/ivy/LocallyAvailableResourceFinderFactory$$Lambda$229 +instanceKlass org/gradle/api/internal/artifacts/repositories/resolver/ResourcePattern +instanceKlass org/gradle/internal/resource/local/ivy/LocallyAvailableResourceFinderFactory +instanceKlass org/gradle/api/internal/artifacts/mvnsettings/DefaultLocalMavenRepositoryLocator$CurrentSystemPropertyAccess +instanceKlass org/gradle/api/internal/artifacts/mvnsettings/DefaultLocalMavenRepositoryLocator$SystemPropertyAccess +instanceKlass org/gradle/api/internal/artifacts/mvnsettings/DefaultLocalMavenRepositoryLocator +instanceKlass org/gradle/api/internal/artifacts/mvnsettings/DefaultMavenFileLocations +instanceKlass org/apache/maven/settings/io/SettingsReader +instanceKlass org/apache/maven/settings/building/SettingsBuildingRequest +instanceKlass org/gradle/api/internal/artifacts/mvnsettings/DefaultMavenSettingsProvider +instanceKlass org/gradle/internal/resolve/resolver/ResolveContextToComponentResolver +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/conflicts/CapabilitiesConflictHandler$Resolver +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/conflicts/CapabilitiesConflictHandler +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/conflicts/ModuleConflictHandler +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/conflicts/ConflictHandler +instanceKlass org/gradle/api/internal/artifacts/ivyservice/dependencysubstitution/DependencySubstitutionApplicator +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/DependencyGraphVisitor +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/DefaultArtifactDependencyResolver +instanceKlass org/gradle/internal/resolve/caching/ComponentMetadataSupplierRuleExecutor$$Lambda$228 +instanceKlass org/gradle/internal/resolve/caching/ComponentMetadataSupplierRuleExecutor$$Lambda$227 +instanceKlass org/gradle/api/internal/artifacts/DependencyManagementBuildScopeServices$1 +instanceKlass org/gradle/api/artifacts/ComponentMetadata +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/excludes/simple/DefaultExcludeNothing +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/excludes/specs/ExcludeNothing +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/excludes/factories/Unions +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/excludes/factories/Intersections +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/excludes/specs/ModuleSetExclude +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/excludes/specs/GroupSetExclude +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/excludes/simple/DefaultExcludeFactory +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/excludes/factories/DelegatingExcludeFactory +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/excludes/factories/CachingExcludeFactory$ConcurrentCache +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/excludes/factories/CachingExcludeFactory$MergeCaches +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/excludes/specs/ExcludeSpec +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/excludes/factories/ExcludeFactory +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ChangingValueDependencyResolutionListener$1 +instanceKlass org/gradle/api/artifacts/component/ModuleComponentSelector +instanceKlass org/gradle/api/internal/artifacts/configurations/dynamicversion/Expiry +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ChangingValueDependencyResolutionListener +instanceKlass org/gradle/api/artifacts/result/ResolvedArtifactResult +instanceKlass org/gradle/api/artifacts/result/ArtifactResult +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ConnectionFailureRepositoryDisabler +instanceKlass org/gradle/api/internal/artifacts/DependencyManagementBuildScopeServices$2 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/verification/DependencyVerificationOverride$$Lambda$226 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/api/internal/artifacts/configurations/ResolutionStrategyInternal +instanceKlass org/gradle/api/artifacts/ResolutionStrategy +instanceKlass org/gradle/api/internal/artifacts/DependencyManagementBuildScopeServices$$Lambda$225 +instanceKlass org/gradle/api/internal/artifacts/verification/signatures/SignatureVerificationService +instanceKlass org/gradle/security/internal/PublicKeyService +instanceKlass org/gradle/api/internal/artifacts/verification/signatures/DefaultSignatureVerificationServiceFactory +instanceKlass org/gradle/api/internal/changedetection/state/SplitFileHasher +instanceKlass org/gradle/api/internal/artifacts/repositories/transport/RepositoryTransport +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolutionstrategy/ExternalResourceCachePolicy +instanceKlass org/gradle/internal/resource/connector/ResourceConnectorSpecification +instanceKlass org/gradle/api/internal/artifacts/DependencyManagementBuildScopeServices$$Lambda$224 +instanceKlass org/gradle/internal/resource/local/LocallyAvailableExternalResource +instanceKlass org/gradle/internal/resource/ExternalResource +instanceKlass org/gradle/internal/resource/local/FileResourceConnector +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/ResolvedArtifactCaches +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/artifacts/InMemoryModuleArtifactCache +instanceKlass org/gradle/api/internal/artifacts/DependencyManagementBuildScopeServices$$Lambda$223 +instanceKlass org/gradle/api/internal/artifacts/DependencyManagementBuildScopeServices$$Lambda$222 +instanceKlass org/gradle/api/internal/artifacts/DependencyManagementBuildScopeServices$$Lambda$221 +instanceKlass org/gradle/api/internal/artifacts/DependencyManagementBuildScopeServices$$Lambda$220 +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass org/gradle/api/internal/artifacts/DependencyManagementBuildScopeServices$$Lambda$219 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/artifacts/DefaultModuleArtifactCache$CachedArtifactSerializer +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/artifacts/DefaultModuleArtifactCache$ArtifactAtRepositoryKeySerializer +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/artifacts/CachedArtifact +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/artifacts/CachedArtifacts +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/ModuleMetadataStore +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/ModuleMetadataCache$CachedMetadata +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/dynamicversions/ModuleVersionsCache$CachedModuleVersionList +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/api/internal/artifacts/DependencyManagementBuildScopeServices$$Lambda$218 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/StartParameterResolutionOverride$$Lambda$217 +instanceKlass org/gradle/api/internal/artifacts/verification/signatures/BuildTreeDefinedKeys +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ModuleComponentRepository +instanceKlass org/gradle/api/internal/file/DefaultFileSystemLocation +instanceKlass org/gradle/api/resources/TextResource +instanceKlass org/gradle/internal/locking/LockFileReaderWriter +instanceKlass org/gradle/api/internal/provider/ValidatingValueCollector +instanceKlass org/gradle/api/internal/provider/AbstractCollectionProperty$EmptySupplier +instanceKlass org/gradle/api/internal/provider/DefaultListProperty$1 +instanceKlass org/gradle/api/internal/provider/AbstractCollectionProperty$NoValueSupplier +instanceKlass org/gradle/api/internal/provider/CollectionSupplier +instanceKlass org/gradle/internal/locking/LockEntryFilterFactory$$Lambda$216 +instanceKlass org/gradle/internal/locking/LockEntryFilterFactory$$Lambda$215 +instanceKlass org/gradle/api/internal/artifacts/dsl/dependencies/LockEntryFilter +instanceKlass org/gradle/internal/locking/LockEntryFilterFactory +instanceKlass org/gradle/internal/locking/DependencyLockingNotationConverter +instanceKlass org/gradle/api/internal/artifacts/dsl/dependencies/DependencyLockingState +instanceKlass org/gradle/internal/locking/DefaultDependencyLockingProvider +instanceKlass org/gradle/api/internal/artifacts/DefaultComponentSelectorConverter +instanceKlass org/gradle/api/internal/artifacts/component/DefaultComponentIdentifierFactory +instanceKlass org/gradle/api/internal/artifacts/DefaultGlobalDependencyResolutionRules$CompositeDependencySubstitutionRules +instanceKlass org/gradle/api/internal/artifacts/DefaultGlobalDependencyResolutionRules +instanceKlass org/gradle/api/artifacts/ComponentModuleMetadataDetails +instanceKlass org/gradle/api/artifacts/ComponentModuleMetadata +instanceKlass org/gradle/api/internal/artifacts/dsl/ComponentModuleMetadataContainer +instanceKlass org/gradle/api/internal/artifacts/dsl/ModuleReplacementsData +instanceKlass org/gradle/api/internal/artifacts/DefaultDependencyManagementServices$DependencyResolutionScopeServices$$Lambda$214 +instanceKlass com/google/common/collect/MapMakerInternalMap$StrongKeyDummyValueEntry$Helper +instanceKlass org/gradle/api/internal/DefaultNamedDomainObjectCollection$UnfilteredIndex +instanceKlass org/gradle/api/internal/DefaultDomainObjectCollection$1 +instanceKlass org/gradle/api/internal/collections/DefaultCollectionEventRegister +instanceKlass org/gradle/api/internal/provider/Collector +instanceKlass org/gradle/api/internal/collections/DefaultPendingSource +instanceKlass org/gradle/api/Namer$Comparator +instanceKlass org/gradle/api/internal/collections/SortedSetElementSource +instanceKlass org/gradle/api/Named$Namer +instanceKlass org/gradle/internal/instantiation/generator/InjectUtil +instanceKlass java/lang/SafeVarargs +instanceKlass com/google/common/reflect/Types$WildcardTypeImpl +instanceKlass java/util/StringJoiner +instanceKlass sun/reflect/generics/tree/ArrayTypeSignature +instanceKlass sun/reflect/generics/tree/IntSignature +instanceKlass java/lang/Class$EnclosingMethodInfo +instanceKlass com/google/common/reflect/Types$ClassOwnership$1LocalClass +instanceKlass com/google/common/reflect/Types$ParameterizedTypeImpl +instanceKlass com/google/common/reflect/Types$1 +instanceKlass com/google/common/reflect/Types +instanceKlass com/google/common/reflect/TypeResolver$TypeVariableKey +instanceKlass com/google/common/reflect/TypeResolver$TypeTable +instanceKlass com/google/common/reflect/TypeResolver +instanceKlass com/google/common/reflect/TypeVisitor +instanceKlass org/gradle/api/internal/collections/CollectionFilter +instanceKlass org/gradle/api/reflect/TypeOf +instanceKlass org/gradle/api/NamedDomainObjectCollectionSchema +instanceKlass org/gradle/api/Rule +instanceKlass org/gradle/api/NamedDomainObjectProvider +instanceKlass org/gradle/api/internal/DefaultNamedDomainObjectCollection$Index +instanceKlass org/gradle/api/internal/collections/ElementSource +instanceKlass org/gradle/api/internal/collections/PendingSource +instanceKlass org/gradle/api/internal/collections/CollectionEventRegister +instanceKlass org/gradle/internal/instantiation/generator/Jsr330ConstructorSelector$$Lambda$213 +instanceKlass org/gradle/internal/instantiation/generator/Jsr330ConstructorSelector$CachedConstructor +instanceKlass groovy/lang/Buildable +instanceKlass groovy/lang/Writable +instanceKlass org/gradle/internal/management/DefaultDependencyResolutionManagement$$Lambda$212 +instanceKlass org/gradle/api/internal/provider/ValueSupplier$Present +instanceKlass org/gradle/api/internal/provider/ValueSupplier$Missing +instanceKlass org/gradle/api/internal/provider/ValueSupplier$Value +instanceKlass org/gradle/api/internal/provider/Providers +instanceKlass org/gradle/api/internal/provider/ValueSanitizers$4 +instanceKlass org/gradle/api/internal/provider/ValueSanitizers$3 +instanceKlass org/gradle/api/internal/provider/ValueSanitizers$2 +instanceKlass org/gradle/api/internal/provider/ValueSanitizers$1 +instanceKlass org/gradle/api/internal/provider/ValueCollector +instanceKlass org/gradle/api/internal/provider/ValueSanitizer +instanceKlass org/gradle/api/internal/provider/ValueSanitizers +instanceKlass org/gradle/api/internal/provider/AbstractProperty$FinalizationState +instanceKlass org/gradle/internal/management/DefaultDependencyResolutionManagement$ComponentMetadataRulesRegistar +instanceKlass org/apache/groovy/util/BeanUtils +instanceKlass groovy/lang/MetaProperty +instanceKlass javax/annotation/meta/TypeQualifier +instanceKlass org/gradle/api/initialization/dsl/VersionCatalogBuilder +instanceKlass org/gradle/api/internal/WithEstimatedSize +instanceKlass org/gradle/internal/metaobject/PropertyMixIn +instanceKlass org/gradle/internal/metaobject/MethodMixIn +instanceKlass org/gradle/api/reflect/HasPublicType +instanceKlass org/gradle/api/artifacts/repositories/ArtifactRepository +instanceKlass org/gradle/api/initialization/resolve/MutableVersionCatalogContainer +instanceKlass org/gradle/internal/management/DefaultDependencyResolutionManagement +instanceKlass org/gradle/api/internal/DefaultCollectionCallbackActionDecorator +instanceKlass org/gradle/api/internal/provider/CredentialsProviderFactory +instanceKlass org/gradle/api/provider/ValueSourceSpec +instanceKlass org/gradle/api/file/FileContents +instanceKlass org/gradle/api/internal/provider/DefaultProviderFactory +instanceKlass org/gradle/api/internal/provider/ValueSourceProviderFactory$Listener +instanceKlass org/gradle/api/provider/ValueSourceParameters$None +instanceKlass org/gradle/api/provider/ValueSourceParameters +instanceKlass org/gradle/api/provider/ValueSource +instanceKlass org/gradle/internal/isolated/IsolationScheme +instanceKlass org/gradle/api/internal/provider/ValueSourceProviderFactory$Listener$ObtainedValue +instanceKlass org/gradle/api/internal/provider/DefaultValueSourceProviderFactory +instanceKlass org/gradle/api/capabilities/CapabilitiesMetadata +instanceKlass org/gradle/internal/component/external/model/AbstractStatelessDerivationStrategy +instanceKlass org/gradle/api/internal/artifacts/dsl/MetadataRuleWrapper +instanceKlass org/gradle/api/internal/notations/ComponentIdentifierParserFactory +instanceKlass org/gradle/api/artifacts/DependencyConstraintMetadata +instanceKlass org/gradle/api/internal/catalog/parser/StrictVersionParser +instanceKlass org/gradle/api/internal/notations/DependencyStringNotationConverter +instanceKlass org/gradle/api/internal/notations/DependencyMetadataNotationParser +instanceKlass org/gradle/api/internal/artifacts/repositories/resolver/AbstractDependencyImpl +instanceKlass org/gradle/api/artifacts/DirectDependencyMetadata +instanceKlass org/gradle/api/artifacts/DependencyMetadata +instanceKlass org/gradle/internal/rules/DefaultRuleActionAdapter +instanceKlass org/gradle/api/artifacts/maven/PomModuleDescriptor +instanceKlass org/gradle/api/artifacts/ivy/IvyModuleDescriptor +instanceKlass org/gradle/internal/rules/DefaultRuleActionValidator +instanceKlass org/gradle/api/internal/artifacts/dsl/ComponentMetadataRuleContainer +instanceKlass org/gradle/internal/rules/RuleAction +instanceKlass org/gradle/internal/action/ConfigurableRule +instanceKlass org/gradle/api/internal/artifacts/MetadataResolutionContext +instanceKlass org/gradle/api/internal/artifacts/dsl/SpecConfigurableRule +instanceKlass org/gradle/internal/rules/SpecRuleAction +instanceKlass org/gradle/api/internal/artifacts/ComponentMetadataProcessor +instanceKlass org/gradle/internal/rules/RuleActionAdapter +instanceKlass org/gradle/internal/rules/RuleActionValidator +instanceKlass org/gradle/api/attributes/Category$Impl +instanceKlass org/gradle/api/attributes/Category +instanceKlass org/gradle/internal/resolve/caching/CrossBuildCachingRuleExecutor$AnySerializer +instanceKlass org/gradle/internal/resolve/caching/ComponentMetadataRuleExecutor$$Lambda$211 +instanceKlass org/gradle/internal/resolve/caching/ComponentMetadataRuleExecutor$$Lambda$210 +instanceKlass org/gradle/internal/resolve/caching/CrossBuildCachingRuleExecutor$EntryValidator +instanceKlass org/gradle/internal/resolve/caching/CrossBuildCachingRuleExecutor$CachedEntry +instanceKlass org/gradle/api/internal/artifacts/configurations/dynamicversion/CachePolicy +instanceKlass org/gradle/api/artifacts/ResolvedModuleVersion +instanceKlass org/gradle/internal/resolve/caching/ImplicitInputRecorder +instanceKlass org/gradle/internal/component/external/model/ModuleDependencyMetadata +instanceKlass org/gradle/internal/component/model/ConfigurationMetadata +instanceKlass org/gradle/internal/component/external/model/CapabilityInternal +instanceKlass org/gradle/internal/component/external/model/AbstractRealisedModuleResolveMetadataSerializationHelper +instanceKlass org/gradle/api/internal/artifacts/ModuleComponentSelectorSerializer +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/ModuleMetadataSerializer +instanceKlass org/gradle/internal/component/external/model/VirtualComponentIdentifier +instanceKlass org/gradle/internal/component/external/model/ModuleComponentResolveMetadata +instanceKlass org/gradle/internal/component/model/ModuleSources +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ModuleDescriptorHashCodec +instanceKlass org/gradle/api/internal/artifacts/repositories/metadata/MetadataFileSource +instanceKlass org/gradle/internal/component/model/PersistentModuleSource +instanceKlass org/gradle/internal/component/model/ModuleSource +instanceKlass org/gradle/api/internal/artifacts/repositories/metadata/DefaultMetadataFileSourceCodec +instanceKlass org/gradle/internal/component/model/PersistentModuleSource$Codec +instanceKlass org/gradle/api/internal/artifacts/DependencyManagementBuildScopeServices$$Lambda$209 +instanceKlass org/gradle/api/internal/artifacts/DependencyManagementBuildScopeServices$$Lambda$208 +instanceKlass org/gradle/api/internal/filestore/DefaultArtifactIdentifierFileStore$$Lambda$207 +instanceKlass org/gradle/api/internal/filestore/DefaultArtifactIdentifierFileStore$1 +instanceKlass org/gradle/api/internal/artifacts/DependencyManagementBuildScopeServices$$Lambda$206 +instanceKlass org/gradle/internal/resource/cached/CachedExternalResource +instanceKlass org/gradle/internal/resource/metadata/ExternalResourceMetaData +instanceKlass org/gradle/internal/resource/cached/DefaultCachedExternalResourceIndex$CachedExternalResourceSerializer +instanceKlass org/gradle/internal/resource/cached/CachedItem +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ArtifactCachesProvider$$Lambda$205 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/api/internal/artifacts/DependencyManagementBuildScopeServices$$Lambda$204 +instanceKlass org/gradle/internal/resource/local/LocallyAvailableResource +instanceKlass org/gradle/internal/resource/local/DefaultPathKeyFileStore +instanceKlass org/gradle/internal/resource/cached/DefaultExternalResourceFileStore$$Lambda$203 +instanceKlass org/gradle/api/Namer +instanceKlass org/gradle/internal/resource/cached/DefaultExternalResourceFileStore$1 +instanceKlass org/gradle/internal/resource/local/GroupedAndNamedUniqueFileStore$Grouper +instanceKlass org/gradle/internal/resource/local/PathKeyFileStore +instanceKlass org/gradle/internal/hash/ChecksumHasher +instanceKlass org/gradle/internal/hash/DefaultChecksumService +instanceKlass org/gradle/internal/component/external/descriptor/Configuration +instanceKlass org/gradle/internal/component/model/IvyArtifactName +instanceKlass org/gradle/internal/component/external/model/ivy/MutableIvyModuleResolveMetadata +instanceKlass org/gradle/api/internal/artifacts/repositories/metadata/DefaultMavenImmutableAttributesFactory +instanceKlass org/gradle/internal/component/external/model/maven/MutableMavenModuleResolveMetadata +instanceKlass org/gradle/internal/component/external/model/MutableModuleComponentResolveMetadata +instanceKlass org/gradle/api/internal/artifacts/repositories/metadata/MavenImmutableAttributesFactory +instanceKlass org/gradle/internal/component/external/model/PreferJavaRuntimeVariant$PreferJarVariantUsageDisambiguationRule +instanceKlass org/gradle/internal/component/external/model/PreferJavaRuntimeVariant$PreferRuntimeVariantUsageDisambiguationRule +instanceKlass org/gradle/api/attributes/LibraryElements$Impl +instanceKlass org/gradle/api/attributes/Usage$Impl +instanceKlass org/gradle/model/internal/type/ClassTypeWrapper +instanceKlass org/gradle/model/internal/type/TypeWrapper +instanceKlass org/gradle/model/internal/type/ModelType +instanceKlass org/gradle/model/internal/inspect/FormattingValidationProblemCollector +instanceKlass org/gradle/api/attributes/LibraryElements +instanceKlass org/gradle/api/attributes/Usage +instanceKlass org/gradle/api/internal/attributes/EmptySchema$DoNothingDisambiguationRule +instanceKlass org/gradle/api/internal/attributes/EmptySchema$DoNothingCompatibilityRule +instanceKlass org/gradle/api/internal/attributes/CompatibilityRule +instanceKlass org/gradle/api/internal/attributes/DisambiguationRule +instanceKlass org/gradle/internal/snapshot/ValueSnapshot +instanceKlass org/gradle/internal/snapshot/impl/DefaultValueSnapshotter$ValueSnapshotVisitor +instanceKlass org/gradle/api/internal/tasks/properties/annotations/InputPropertyAnnotationHandler +instanceKlass org/gradle/api/internal/tasks/properties/PropertyValue +instanceKlass org/gradle/api/internal/tasks/properties/annotations/NestedBeanAnnotationHandler +instanceKlass org/gradle/api/internal/tasks/properties/annotations/LocalStatePropertyAnnotationHandler +instanceKlass org/gradle/api/internal/tasks/properties/annotations/DestroysPropertyAnnotationHandler +instanceKlass org/gradle/api/internal/tasks/properties/annotations/NoOpPropertyAnnotationHandler +instanceKlass org/gradle/api/internal/artifacts/transform/CacheableTransformTypeAnnotationHandler +instanceKlass org/gradle/api/internal/tasks/properties/annotations/UntrackedTaskTypeAnnotationHandler +instanceKlass org/gradle/api/internal/tasks/properties/annotations/CacheableTaskTypeAnnotationHandler +instanceKlass org/gradle/api/internal/tasks/properties/annotations/DisableCachingByDefaultTypeAnnotationHandler +instanceKlass org/gradle/vcs/internal/services/VersionControlServices$VcsResolverFactory +instanceKlass org/gradle/vcs/internal/resolver/OncePerBuildInvocationVcsVersionWorkingDirResolver +instanceKlass org/gradle/vcs/internal/resolver/DefaultVcsVersionWorkingDirResolver +instanceKlass org/gradle/vcs/internal/VersionRef +instanceKlass org/gradle/vcs/internal/resolver/PersistentVcsMetadataCache$VersionRefSerializer +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/strategy/CachingVersionSelectorScheme +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/strategy/VersionSelector +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/strategy/DefaultVersionSelectorScheme +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/strategy/Version +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/strategy/StaticVersionComparator +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/strategy/DefaultVersionComparator +instanceKlass org/gradle/cache/internal/CleanupActionFactory$BuildOperationCacheCleanupDecorator +instanceKlass org/gradle/internal/resource/local/ModificationTimeFileAccessTimeJournal +instanceKlass org/gradle/vcs/internal/VersionControlRepositoryConnection +instanceKlass org/gradle/vcs/internal/VersionControlSystem +instanceKlass org/gradle/vcs/internal/services/DefaultVersionControlRepositoryFactory +instanceKlass org/gradle/vcs/internal/DefaultVcsMappingsStore +instanceKlass org/gradle/vcs/internal/DefaultVcsMappingFactory +instanceKlass org/gradle/vcs/internal/services/DefaultVersionControlSpecFactory +instanceKlass org/gradle/internal/typeconversion/CharSequenceNotationConverter +instanceKlass org/gradle/api/internal/notations/ModuleIdentifierNotationConverter +instanceKlass org/gradle/api/internal/artifacts/ivyservice/projectmodule/DefaultLocalComponentRegistry +instanceKlass org/gradle/composite/internal/IncludedBuildDependencyMetadataBuilder +instanceKlass org/gradle/internal/component/local/model/LocalComponentMetadata +instanceKlass org/gradle/internal/component/local/model/BuildableLocalComponentMetadata +instanceKlass org/gradle/api/internal/artifacts/ivyservice/projectmodule/DefaultProjectLocalComponentProvider +instanceKlass org/gradle/api/artifacts/Configuration +instanceKlass org/gradle/api/attributes/HasConfigurableAttributes +instanceKlass org/gradle/api/internal/artifacts/configurations/ConfigurationInternal$VariantVisitor +instanceKlass org/gradle/api/internal/artifacts/ivyservice/moduleconverter/DefaultLocalComponentMetadataBuilder +instanceKlass org/gradle/internal/component/local/model/LocalFileDependencyMetadata +instanceKlass org/gradle/api/internal/artifacts/ivyservice/moduleconverter/dependencies/DefaultLocalConfigurationMetadataBuilder +instanceKlass org/gradle/util/internal/WrapUtil +instanceKlass org/gradle/api/internal/artifacts/ivyservice/moduleconverter/dependencies/DefaultDependencyDescriptorFactory +instanceKlass org/gradle/internal/component/model/LocalOriginDependencyMetadata +instanceKlass org/gradle/internal/component/model/ForcingDependencyMetadata +instanceKlass org/gradle/internal/component/model/DependencyMetadata +instanceKlass org/gradle/api/artifacts/Dependency +instanceKlass org/gradle/internal/component/model/ExcludeMetadata +instanceKlass org/gradle/api/internal/artifacts/ivyservice/moduleconverter/dependencies/DefaultExcludeRuleConverter +instanceKlass org/gradle/internal/model/CalculatedValueContainerFactory$$Lambda$202 +instanceKlass org/gradle/api/internal/tasks/NodeExecutionContext +instanceKlass org/gradle/internal/resource/transport/sftp/SftpConnectorFactory +instanceKlass com/jcraft/jsch/HostKeyRepository +instanceKlass com/jcraft/jsch/Logger +instanceKlass org/gradle/internal/resource/transport/sftp/LockableSftpClient +instanceKlass org/gradle/internal/resource/transport/sftp/SftpClientFactory$SftpClientCreator +instanceKlass org/gradle/internal/resource/transport/aws/s3/S3ConnectorFactory +instanceKlass org/gradle/internal/resource/transport/gcp/gcs/GcsConnectorFactory +instanceKlass org/gradle/internal/resource/transfer/ExternalResourceConnector +instanceKlass org/gradle/internal/resource/transfer/ExternalResourceAccessor +instanceKlass org/gradle/internal/resource/transfer/ExternalResourceLister +instanceKlass org/gradle/internal/resource/transfer/ExternalResourceUploader +instanceKlass org/gradle/internal/resource/transport/http/HttpConnectorFactory +instanceKlass org/gradle/internal/resource/transport/http/HttpClientHelper$Factory$$Lambda$201 +instanceKlass org/gradle/internal/resource/transport/http/HttpClientHelper +instanceKlass org/gradle/internal/resource/transport/http/HttpSettings +instanceKlass org/gradle/internal/resource/transport/http/DefaultSslContextFactory +instanceKlass org/gradle/internal/resource/transport/file/FileConnectorFactory +instanceKlass org/gradle/composite/internal/CompositeProjectComponentArtifactMetadataSerializer +instanceKlass org/gradle/composite/internal/CompositeProjectComponentArtifactMetadata +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/ResolvedComponentResultSerializer +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/ComponentSelectorSerializer$OptimizingAttributeContainerSerializer +instanceKlass org/gradle/api/internal/artifacts/ImmutableVersionConstraint +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/ComponentSelectionReasonSerializer +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/ComponentSelectionDescriptorSerializer +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/ResolvedVariantResultSerializer +instanceKlass org/gradle/internal/component/external/model/DefaultModuleComponentIdentifier +instanceKlass org/gradle/api/artifacts/component/ModuleComponentIdentifier +instanceKlass org/gradle/api/internal/artifacts/metadata/ModuleComponentFileArtifactIdentifierSerializer +instanceKlass org/gradle/api/internal/artifacts/metadata/ComponentArtifactIdentifierSerializer +instanceKlass org/gradle/api/internal/artifacts/DependencyManagementValueSnapshotterSerializerRegistry$OpaqueComponentArtifactIdentifierSerializer +instanceKlass org/gradle/api/artifacts/PublishArtifact +instanceKlass org/gradle/api/internal/artifacts/metadata/PublishArtifactLocalArtifactMetadataSerializer +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/CapabilitySerializer +instanceKlass org/gradle/api/internal/artifacts/ModuleVersionIdentifierSerializer +instanceKlass org/gradle/internal/resolve/caching/DesugaringAttributeContainerSerializer +instanceKlass org/gradle/api/artifacts/result/ResolvedComponentResult +instanceKlass org/gradle/api/artifacts/result/ComponentResult +instanceKlass org/gradle/api/artifacts/result/ComponentSelectionReason +instanceKlass org/gradle/api/artifacts/result/ResolvedVariantResult +instanceKlass org/gradle/internal/component/local/model/ComponentFileArtifactIdentifier +instanceKlass org/gradle/internal/component/external/model/DefaultModuleComponentArtifactIdentifier +instanceKlass org/gradle/internal/component/external/model/ModuleComponentArtifactIdentifier +instanceKlass org/gradle/internal/component/local/model/OpaqueComponentArtifactIdentifier +instanceKlass org/gradle/internal/component/local/model/PublishArtifactLocalArtifactMetadata +instanceKlass org/gradle/api/artifacts/component/ComponentArtifactIdentifier +instanceKlass org/gradle/internal/component/local/model/LocalComponentArtifactMetadata +instanceKlass org/gradle/api/artifacts/ModuleVersionIdentifier +instanceKlass org/gradle/api/artifacts/result/ComponentSelectionDescriptor +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/CachingComponentSelectionDescriptorFactory +instanceKlass org/gradle/api/internal/initialization/DefaultScriptHandler +instanceKlass org/gradle/api/internal/artifacts/DefaultDependencyManagementServices$DefaultDependencyResolutionServices +instanceKlass org/gradle/api/internal/artifacts/ivyservice/moduleconverter/DefaultRootComponentMetadataBuilder +instanceKlass org/gradle/api/internal/artifacts/ivyservice/moduleconverter/RootComponentMetadataBuilder +instanceKlass org/gradle/api/internal/artifacts/transform/DefaultTransformedVariantFactory$VariantKey +instanceKlass org/gradle/api/internal/artifacts/transform/TransformationNodeFactory +instanceKlass org/gradle/api/internal/artifacts/transform/DefaultTransformedVariantFactory +instanceKlass org/gradle/api/artifacts/dsl/ArtifactHandler +instanceKlass org/gradle/api/internal/artifacts/dsl/DefaultComponentMetadataHandler +instanceKlass org/gradle/api/internal/artifacts/transform/TransformedVariantFactory +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfigurationFactory +instanceKlass org/gradle/api/internal/artifacts/ivyservice/moduleconverter/DefaultRootComponentMetadataBuilder$Factory +instanceKlass org/gradle/api/artifacts/dsl/DependencyLockingHandler +instanceKlass org/gradle/api/artifacts/dsl/DependencyHandler +instanceKlass org/gradle/api/artifacts/dsl/ComponentMetadataHandler +instanceKlass org/gradle/api/artifacts/dsl/DependencyConstraintHandler +instanceKlass org/gradle/api/internal/artifacts/RepositoriesSupplier +instanceKlass org/gradle/api/internal/artifacts/repositories/DefaultUrlArtifactRepository$Factory +instanceKlass org/gradle/api/internal/artifacts/configurations/ConfigurationContainerInternal +instanceKlass org/gradle/api/artifacts/ConfigurationContainer +instanceKlass org/gradle/api/internal/artifacts/ComponentMetadataProcessorFactory +instanceKlass org/gradle/api/internal/artifacts/dsl/ComponentMetadataHandlerInternal +instanceKlass org/gradle/api/internal/artifacts/dsl/DefaultComponentModuleMetadataHandler +instanceKlass org/gradle/api/internal/artifacts/ComponentModuleMetadataProcessor +instanceKlass org/gradle/api/artifacts/dsl/ComponentModuleMetadataHandler +instanceKlass org/gradle/api/internal/artifacts/dsl/PublishArtifactNotationParserFactory +instanceKlass org/gradle/api/internal/artifacts/transform/MutableTransformationWorkspaceServices +instanceKlass org/gradle/internal/file/ReservedFileSystemLocation +instanceKlass org/gradle/api/file/ProjectLayout +instanceKlass org/gradle/api/internal/artifacts/ArtifactPublicationServices +instanceKlass org/gradle/api/internal/artifacts/DependencyResolutionServices +instanceKlass org/gradle/api/internal/artifacts/GlobalDependencyResolutionRules +instanceKlass org/gradle/internal/component/external/model/VariantDerivationStrategy +instanceKlass org/gradle/api/internal/artifacts/ConfigurationResolver +instanceKlass org/gradle/api/internal/artifacts/transform/ArtifactTransforms +instanceKlass org/gradle/api/internal/artifacts/type/ArtifactTypeRegistry +instanceKlass org/gradle/api/internal/artifacts/transform/TransformerInvocationFactory +instanceKlass org/gradle/api/internal/artifacts/VariantTransformRegistry +instanceKlass org/gradle/api/internal/artifacts/dsl/dependencies/DependencyLockingProvider +instanceKlass org/gradle/api/internal/artifacts/BaseRepositoryFactory +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/parser/MetaDataParser +instanceKlass org/gradle/api/internal/tasks/TaskResolver +instanceKlass org/gradle/api/internal/artifacts/query/ArtifactResolutionQueryFactory +instanceKlass org/gradle/api/internal/artifacts/transform/TransformationRegistrationFactory +instanceKlass org/gradle/api/internal/artifacts/DefaultDependencyManagementServices$DependencyResolutionScopeServices +instanceKlass org/gradle/api/internal/artifacts/DefaultDependencyManagementServices$ArtifactTransformResolutionGradleUserHomeServices +instanceKlass org/gradle/internal/model/CalculatedModelValue +instanceKlass org/gradle/api/internal/initialization/RootScriptDomainObjectContext +instanceKlass org/gradle/internal/resource/UriTextResource$UriResourceLocation +instanceKlass org/gradle/invocation/DefaultGradle$$Lambda$200 +instanceKlass org/gradle/groovy/scripts/TextResourceScriptSource +instanceKlass org/gradle/internal/resource/ResourceLocation +instanceKlass org/gradle/internal/resource/UriTextResource +instanceKlass org/gradle/initialization/InitScriptHandler$1 +instanceKlass org/gradle/initialization/DirectoryInitScriptFinder +instanceKlass org/gradle/initialization/CompositeInitScriptFinder +instanceKlass org/gradle/initialization/InitScriptFinder +instanceKlass org/gradle/initialization/DefaultGradleProperties +instanceKlass org/gradle/configurationcache/extensions/CastExtensionsKt +instanceKlass kotlin/text/StringsKt__AppendableKt +instanceKlass org/gradle/configurationcache/extensions/MapExtensionsKt +instanceKlass org/gradle/configurationcache/services/DefaultEnvironment$DefaultProperties +instanceKlass org/gradle/initialization/Environment$Properties +instanceKlass org/gradle/initialization/DefaultGradlePropertiesController$Loaded +instanceKlass org/gradle/initialization/DefaultSettingsLoader +instanceKlass org/gradle/initialization/SettingsAttachingSettingsLoader +instanceKlass org/gradle/internal/composite/CommandLineIncludedBuildSettingsLoader +instanceKlass org/gradle/internal/composite/ChildBuildRegisteringSettingsLoader +instanceKlass org/gradle/internal/composite/CompositeBuildSettingsLoader +instanceKlass org/gradle/initialization/InitScriptHandlingSettingsLoader +instanceKlass org/gradle/initialization/GradlePropertiesHandlingSettingsLoader +instanceKlass org/gradle/initialization/BuildOperationFiringSettingsPreparer$LoadBuild$1 +instanceKlass org/gradle/initialization/LoadBuildBuildOperationType$Details +instanceKlass org/gradle/initialization/BuildOperationFiringSettingsPreparer$LoadBuild +instanceKlass org/gradle/internal/model/StateTransitionController$$Lambda$199 +instanceKlass org/gradle/initialization/VintageBuildModelController$$Lambda$198 +instanceKlass org/gradle/internal/model/StateTransitionController$$Lambda$197 +instanceKlass org/gradle/internal/model/StateTransitionController$$Lambda$196 +instanceKlass org/gradle/internal/build/DefaultBuildLifecycleController$$Lambda$195 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/composite/internal/DefaultBuildControllers$$Lambda$194 +instanceKlass org/gradle/composite/internal/BuildController +instanceKlass org/gradle/composite/internal/DefaultBuildControllers +instanceKlass org/gradle/composite/internal/BuildControllers +instanceKlass org/gradle/composite/internal/DefaultIncludedBuildTaskGraph$DefaultBuildTreeWorkGraph +instanceKlass org/gradle/internal/buildtree/DefaultBuildTreeLifecycleController$$Lambda$193 +instanceKlass org/gradle/internal/buildtree/BuildTreeWorkGraph +instanceKlass org/gradle/internal/model/StateTransitionController$$Lambda$192 +instanceKlass org/gradle/internal/model/StateTransitionController$$Lambda$191 +instanceKlass org/gradle/internal/buildtree/DefaultBuildTreeLifecycleController$$Lambda$190 +instanceKlass org/gradle/internal/buildtree/DefaultBuildTreeLifecycleController$$Lambda$189 +instanceKlass org/gradle/internal/build/ExecutionResult +instanceKlass org/gradle/tooling/internal/provider/runner/BuildModelActionRunner$ModelCreateAction +instanceKlass org/gradle/internal/buildtree/ProblemReportingBuildActionRunner$$Lambda$188 +instanceKlass org/gradle/internal/model/StateTransitionController$$Lambda$187 +instanceKlass org/gradle/internal/model/StateTransitionController$$Lambda$186 +instanceKlass org/gradle/internal/buildtree/DefaultBuildTreeLifecycleController$$Lambda$185 +instanceKlass org/gradle/launcher/exec/BuildOutcomeReportingBuildActionRunner$$Lambda$184 +instanceKlass org/gradle/internal/logging/format/TersePrettyDurationFormatter +instanceKlass org/gradle/internal/buildevents/BuildResultLogger +instanceKlass org/gradle/internal/exceptions/FailureResolutionAware$Context +instanceKlass org/gradle/util/internal/TreeVisitor +instanceKlass org/gradle/internal/buildevents/BuildExceptionReporter +instanceKlass org/gradle/internal/logging/format/DurationFormatter +instanceKlass org/gradle/internal/buildevents/BuildLogger +instanceKlass org/gradle/api/internal/tasks/execution/statistics/TaskExecutionStatisticsEventAdapter +instanceKlass org/gradle/tooling/internal/provider/FileSystemWatchingBuildActionRunner$1 +instanceKlass org/gradle/internal/watch/options/FileSystemWatchingSettingsFinalizedProgressDetails +instanceKlass org/gradle/api/internal/tasks/compile/CompileJavaBuildOperationType$Result +instanceKlass org/gradle/internal/operations/notify/BuildOperationNotificationBridge$Finished +instanceKlass org/gradle/internal/operations/OperationFinishEvent +instanceKlass org/gradle/internal/watch/vfs/impl/WatchingVirtualFileSystem$1$1 +instanceKlass org/gradle/internal/watch/vfs/BuildStartedFileSystemWatchingBuildOperationType$Result +instanceKlass com/google/common/collect/CollectCollectors$$Lambda$183 +instanceKlass com/google/common/collect/CollectCollectors$$Lambda$182 +instanceKlass com/google/common/collect/CollectCollectors$$Lambda$181 +instanceKlass com/google/common/collect/RangeGwtSerializationDependencies +instanceKlass com/google/common/collect/CollectCollectors$$Lambda$180 +instanceKlass com/google/common/collect/ImmutableRangeSet$Builder +instanceKlass com/google/common/collect/SortedIterable +instanceKlass com/google/common/collect/AbstractRangeSet +instanceKlass com/google/common/collect/RangeSet +instanceKlass com/google/common/collect/CollectCollectors$$Lambda$179 +instanceKlass com/google/common/collect/CollectCollectors$$Lambda$178 +instanceKlass com/google/common/collect/CollectCollectors$$Lambda$177 +instanceKlass com/google/common/collect/CollectCollectors$$Lambda$176 +instanceKlass com/google/common/collect/CollectCollectors$$Lambda$175 +instanceKlass com/google/common/collect/CollectCollectors$$Lambda$174 +instanceKlass com/google/common/collect/CollectCollectors$$Lambda$173 +instanceKlass com/google/common/collect/CollectCollectors$$Lambda$172 +instanceKlass com/google/common/collect/CollectCollectors +instanceKlass org/gradle/internal/watch/registry/impl/AbstractFileWatcherUpdater$$Lambda$171 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass java/util/stream/MatchOps$$Lambda$170 +instanceKlass java/util/stream/MatchOps$BooleanTerminalSink +instanceKlass java/util/stream/MatchOps$MatchOp +instanceKlass java/util/stream/MatchOps +instanceKlass org/gradle/internal/watch/registry/impl/AbstractFileWatcherUpdater$$Lambda$169 +instanceKlass org/gradle/internal/watch/registry/impl/AbstractFileWatcherUpdater$$Lambda$168 +instanceKlass org/gradle/internal/watch/registry/impl/AbstractFileWatcherUpdater$$Lambda$167 +instanceKlass org/gradle/internal/watch/registry/impl/AbstractFileWatcherUpdater$$Lambda$166 +instanceKlass java/util/ArrayDeque$DeqSpliterator +instanceKlass org/gradle/internal/watch/registry/impl/WatchableHierarchies$$Lambda$165 +instanceKlass org/gradle/internal/watch/registry/impl/WatchableHierarchies$$Lambda$164 +instanceKlass org/gradle/internal/watch/vfs/impl/WatchingVirtualFileSystem$$Lambda$163 +instanceKlass org/gradle/internal/watch/registry/impl/WatchableHierarchies$$Lambda$162 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/internal/watch/registry/impl/Combiners$$Lambda$161 +instanceKlass org/gradle/internal/watch/registry/impl/Combiners +instanceKlass org/gradle/internal/watch/registry/impl/WatchableHierarchies$$Lambda$160 +instanceKlass org/gradle/internal/watch/registry/impl/DefaultFileWatcherProbeRegistry$$Lambda$159 +instanceKlass org/gradle/internal/watch/registry/impl/DefaultFileWatcherProbeRegistry$$Lambda$158 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/internal/watch/registry/impl/DefaultFileWatcherProbeRegistry$WatchProbe +instanceKlass org/gradle/internal/watch/registry/impl/HierarchicalFileWatcherUpdater$$Lambda$157 +instanceKlass org/gradle/internal/watch/registry/impl/WatchableHierarchies$Invalidator +instanceKlass org/gradle/internal/watch/registry/impl/DefaultFileWatcherRegistry$$Lambda$156 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/internal/watch/registry/impl/DefaultFileWatcherRegistry$$Lambda$155 +instanceKlass org/gradle/internal/watch/registry/impl/DefaultFileWatcherRegistry$MutableFileWatchingStatistics +instanceKlass net/rubygrapefruit/platform/file/FileWatchEvent$Handler +instanceKlass org/gradle/internal/watch/registry/FileWatcherRegistry$FileWatchingStatistics +instanceKlass org/gradle/internal/watch/registry/impl/DefaultFileWatcherRegistry +instanceKlass org/gradle/internal/watch/registry/impl/WindowsFileWatcherRegistryFactory$$Lambda$154 +instanceKlass org/gradle/internal/watch/registry/impl/AbstractFileWatcherUpdater$MovedDirectoryHandler +instanceKlass org/gradle/internal/watch/registry/impl/HierarchicalFileWatcherUpdater$FileSystemLocationToWatchValidator$$Lambda$153 +instanceKlass org/gradle/internal/watch/registry/impl/HierarchicalFileWatcherUpdater$FileSystemLocationToWatchValidator +instanceKlass org/gradle/internal/watch/registry/impl/AbstractFileWatcherUpdater +instanceKlass org/gradle/internal/snapshot/FileSystemSnapshotHierarchyVisitor +instanceKlass org/gradle/internal/file/FileHierarchySet$RootVisitor +instanceKlass org/gradle/internal/watch/registry/impl/WatchableHierarchies +instanceKlass net/rubygrapefruit/platform/internal/jni/AbstractFileEventFunctions$NativeFileWatcher +instanceKlass net/rubygrapefruit/platform/file/FileWatchEvent +instanceKlass net/rubygrapefruit/platform/internal/jni/AbstractFileEventFunctions$NativeFileWatcherCallback +instanceKlass org/gradle/internal/watch/registry/impl/AbstractFileWatcherRegistryFactory$$Lambda$152 +instanceKlass org/gradle/internal/watch/registry/impl/DefaultFileWatcherProbeRegistry +instanceKlass org/gradle/internal/watch/vfs/impl/WatchingVirtualFileSystem$3 +instanceKlass java/util/stream/ForEachOps$ForEachOp +instanceKlass java/util/stream/ForEachOps +instanceKlass org/gradle/internal/watch/vfs/impl/WatchingVirtualFileSystem$1$$Lambda$151 +instanceKlass org/gradle/internal/watch/vfs/impl/DefaultWatchableFileSystemDetector$$Lambda$150 +instanceKlass org/gradle/internal/watch/vfs/impl/DefaultWatchableFileSystemDetector$$Lambda$149 +instanceKlass net/rubygrapefruit/platform/internal/FileSystemList$DefaultCaseSensitivity +instanceKlass net/rubygrapefruit/platform/internal/DefaultFileSystemInfo +instanceKlass net/rubygrapefruit/platform/file/FileSystemInfo +instanceKlass net/rubygrapefruit/platform/internal/jni/PosixFileSystemFunctions +instanceKlass net/rubygrapefruit/platform/file/CaseSensitivity +instanceKlass net/rubygrapefruit/platform/internal/FileSystemList +instanceKlass org/gradle/internal/watch/vfs/BuildStartedFileSystemWatchingBuildOperationType$Details$1 +instanceKlass org/gradle/internal/watch/vfs/BuildStartedFileSystemWatchingBuildOperationType$Details +instanceKlass org/gradle/internal/watch/vfs/FileSystemWatchingStatistics +instanceKlass org/gradle/internal/watch/vfs/impl/WatchingVirtualFileSystem$1 +instanceKlass org/gradle/internal/watch/vfs/impl/WatchingVirtualFileSystem$$Lambda$148 +instanceKlass org/slf4j/helpers/NamedLoggerBase +instanceKlass org/gradle/configuration/internal/DefaultListenerBuildOperationDecorator +instanceKlass org/gradle/api/tasks/util/internal/CachingPatternSpecFactory$CachingSpec +instanceKlass org/gradle/api/internal/file/RelativePathSpec +instanceKlass org/gradle/api/internal/file/pattern/AnythingMatcher +instanceKlass org/gradle/api/internal/file/pattern/FixedPatternStep +instanceKlass org/gradle/api/internal/file/pattern/HasSuffixPatternStep +instanceKlass org/gradle/api/internal/file/pattern/HasPrefixPatternStep +instanceKlass org/gradle/api/internal/file/pattern/HasPrefixAndSuffixPatternStep +instanceKlass org/gradle/api/internal/file/pattern/AnyWildcardPatternStep +instanceKlass org/gradle/api/internal/file/pattern/PatternStep +instanceKlass org/gradle/api/internal/file/pattern/PatternStepFactory +instanceKlass org/gradle/api/internal/file/pattern/FixedStepPathMatcher +instanceKlass org/gradle/api/internal/file/pattern/GreedyPathMatcher +instanceKlass org/gradle/api/internal/file/pattern/EndOfPathMatcher +instanceKlass org/gradle/api/internal/file/pattern/PatternMatcher +instanceKlass org/gradle/api/internal/file/pattern/PathMatcher +instanceKlass org/gradle/api/internal/file/pattern/PatternMatcherFactory +instanceKlass org/gradle/api/tasks/util/internal/CachingPatternSpecFactory$1 +instanceKlass org/gradle/api/tasks/util/internal/CachingPatternSpecFactory$SpecKey +instanceKlass org/gradle/cache/internal/BuildScopeCacheDir +instanceKlass org/gradle/launcher/exec/RootBuildLifecycleBuildActionExecutor$$Lambda$147 +instanceKlass org/gradle/initialization/buildsrc/BuildSrcDetector +instanceKlass org/gradle/internal/watch/vfs/impl/WatchingVirtualFileSystem$$Lambda$146 +instanceKlass java/util/function/UnaryOperator +instanceKlass org/gradle/internal/buildtree/DefaultBuildTreeLifecycleController +instanceKlass org/gradle/internal/buildtree/BuildTreeLifecycleController +instanceKlass org/gradle/internal/buildtree/BuildTreeModelController +instanceKlass org/gradle/internal/buildtree/DefaultBuildTreeModelCreator +instanceKlass org/gradle/internal/buildtree/BuildTreeModelCreator +instanceKlass org/gradle/internal/buildtree/DefaultBuildTreeWorkPreparer +instanceKlass org/gradle/internal/buildtree/BuildTreeWorkPreparer +instanceKlass org/gradle/internal/buildtree/DefaultBuildTreeFinishExecutor +instanceKlass org/gradle/internal/buildtree/DefaultBuildTreeWorkExecutor +instanceKlass org/gradle/internal/buildtree/BuildOperationFiringBuildTreeWorkExecutor +instanceKlass org/gradle/execution/SelectedTaskExecutionAction +instanceKlass org/gradle/execution/DryRunBuildExecutionAction +instanceKlass org/gradle/execution/BuildOperationFiringBuildWorkerExecutor +instanceKlass org/gradle/internal/build/DefaultBuildWorkPreparer +instanceKlass org/gradle/internal/taskgraph/CalculateTaskGraphBuildOperationType$TaskIdentity +instanceKlass org/gradle/internal/build/BuildOperationFiringBuildWorkPreparer +instanceKlass org/gradle/execution/plan/DefaultNodeValidator +instanceKlass org/gradle/execution/plan/ExecutionPlan +instanceKlass org/gradle/internal/snapshot/EmptyChildMap +instanceKlass org/gradle/internal/collect/PersistentList +instanceKlass org/gradle/internal/snapshot/ChildMap$NodeHandler +instanceKlass org/gradle/internal/snapshot/ChildMap$StoreHandler +instanceKlass org/gradle/execution/plan/ValuedVfsHierarchy +instanceKlass org/gradle/execution/plan/ExecutionNodeAccessHierarchy$AbstractNodeAccessVisitor +instanceKlass org/gradle/execution/plan/ValuedVfsHierarchy$ValueVisitor +instanceKlass org/gradle/execution/plan/ExecutionNodeAccessHierarchy +instanceKlass org/gradle/internal/graph/CachingDirectedGraphWalker$GraphWithEmptyEdges +instanceKlass org/gradle/api/internal/tasks/CachingTaskDependencyResolveContext$TaskGraphImpl +instanceKlass org/gradle/internal/graph/DirectedGraphWithEdgeValues +instanceKlass org/gradle/internal/graph/CachingDirectedGraphWalker +instanceKlass org/gradle/internal/graph/DirectedGraph +instanceKlass org/gradle/api/internal/tasks/AbstractTaskDependencyResolveContext +instanceKlass org/gradle/api/internal/tasks/TaskDependencyResolveContext +instanceKlass java/util/concurrent/LinkedBlockingDeque$Node +instanceKlass java/lang/management/MemoryUsage +instanceKlass org/gradle/launcher/daemon/server/health/gc/GarbageCollectionEvent +instanceKlass org/gradle/execution/plan/TaskNodeFactory$DefaultTypeOriginInspectorFactory +instanceKlass org/gradle/initialization/internal/InternalBuildFinishedListener +instanceKlass org/gradle/BuildResult +instanceKlass org/gradle/internal/build/DefaultBuildLifecycleController +instanceKlass org/gradle/internal/work/DefaultSynchronizer +instanceKlass org/gradle/internal/model/StateTransitionController$CurrentState +instanceKlass org/gradle/internal/model/StateTransitionController +instanceKlass org/gradle/internal/Describables$AbstractDescribable +instanceKlass org/gradle/internal/Describables +instanceKlass org/gradle/api/internal/artifacts/DefaultBuildIdentifier +instanceKlass org/gradle/internal/model/StateTransitionController$State +instanceKlass org/gradle/initialization/VintageBuildModelController +instanceKlass org/gradle/initialization/DefaultTaskExecutionPreparer +instanceKlass org/gradle/execution/BuildExecutionContext +instanceKlass org/gradle/execution/DefaultBuildConfigurationActionExecuter +instanceKlass org/gradle/execution/TaskNameResolvingBuildConfigurationAction +instanceKlass org/gradle/execution/DefaultTasksBuildExecutionAction +instanceKlass org/gradle/execution/BuildConfigurationAction +instanceKlass org/gradle/execution/commandline/CommandLineTaskConfigurer +instanceKlass org/gradle/api/internal/tasks/options/OptionValueNotationParserFactory +instanceKlass org/gradle/initialization/DefaultSettingsPreparer +instanceKlass org/gradle/initialization/BuildOperationFiringSettingsPreparer$1 +instanceKlass org/gradle/initialization/LoadBuildBuildOperationType$Result +instanceKlass org/gradle/initialization/BuildOperationFiringSettingsPreparer +instanceKlass org/gradle/internal/id/LongIdGenerator +instanceKlass org/gradle/configuration/DefaultInitScriptProcessor +instanceKlass org/gradle/api/internal/project/ProjectState +instanceKlass org/gradle/internal/model/ModelContainer +instanceKlass org/gradle/initialization/SettingsFactory +instanceKlass org/gradle/initialization/ScriptEvaluatingSettingsProcessor +instanceKlass org/gradle/initialization/SettingsEvaluatedCallbackFiringSettingsProcessor +instanceKlass org/gradle/initialization/RootBuildCacheControllerSettingsProcessor +instanceKlass org/gradle/initialization/BuildOperationSettingsProcessor$1 +instanceKlass org/gradle/initialization/EvaluateSettingsBuildOperationType$Result +instanceKlass org/gradle/initialization/BuildOperationSettingsProcessor +instanceKlass org/gradle/internal/resource/TextResource +instanceKlass org/gradle/internal/resource/DefaultTextFileResourceLoader +instanceKlass org/gradle/api/internal/artifacts/dsl/dependencies/UnknownProjectFinder +instanceKlass org/gradle/api/internal/initialization/ScriptHandlerInternal +instanceKlass org/gradle/api/initialization/dsl/ScriptHandler +instanceKlass org/gradle/api/internal/initialization/DefaultScriptHandlerFactory +instanceKlass org/gradle/api/internal/initialization/DefaultScriptClassPathResolver +instanceKlass org/gradle/configuration/ScriptPluginFactorySelector$1 +instanceKlass org/gradle/configuration/ScriptPluginFactorySelector$ProviderInstantiator +instanceKlass org/gradle/configuration/ScriptPluginFactorySelector +instanceKlass org/gradle/groovy/scripts/internal/StatementTransformer +instanceKlass org/gradle/groovy/scripts/internal/CompileOperation +instanceKlass org/gradle/groovy/scripts/Transformer +instanceKlass org/gradle/configuration/project/DefaultCompileOperationFactory +instanceKlass org/gradle/cache/internal/DefaultCrossBuildInMemoryCacheFactory$DefaultClassMap$$Lambda$145 +instanceKlass org/gradle/plugin/management/internal/DefaultPluginResolutionStrategy +instanceKlass org/gradle/plugin/internal/PluginUsePluginServiceRegistry$BuildScopeServices$1 +instanceKlass org/gradle/api/artifacts/dsl/RepositoryHandler +instanceKlass org/gradle/api/artifacts/ArtifactRepositoryContainer +instanceKlass org/gradle/api/NamedDomainObjectList +instanceKlass org/gradle/plugin/use/resolve/internal/PluginArtifactRepositories +instanceKlass org/gradle/api/internal/artifacts/Module +instanceKlass org/gradle/internal/service/scopes/BuildScopeServices$DependencyMetaDataProviderImpl +instanceKlass org/gradle/api/internal/artifacts/DefaultDependencyManagementServices +instanceKlass org/gradle/api/internal/file/AbstractFileResolver$2 +instanceKlass org/apache/commons/io/FilenameUtils +instanceKlass org/gradle/internal/typeconversion/NotationConverterToNotationParserAdapter$ResultImpl +instanceKlass org/gradle/util/internal/DeferredUtil +instanceKlass org/gradle/plugin/use/resolve/service/internal/ClientInjectedClasspathPluginResolver$$Lambda$144 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/api/internal/plugins/PluginImplementation +instanceKlass org/gradle/api/internal/plugins/DefaultPluginRegistry +instanceKlass org/gradle/api/internal/plugins/PotentialPlugin +instanceKlass org/gradle/model/internal/inspect/ModelRuleSourceDetector$1 +instanceKlass com/google/common/collect/MapMakerInternalMap$StrongKeyWeakValueEntry$Helper +instanceKlass org/gradle/api/internal/initialization/ClassLoaderScopeIdentifier +instanceKlass org/gradle/api/internal/initialization/AbstractClassLoaderScope +instanceKlass org/gradle/api/internal/initialization/loadercache/ClassLoaderId +instanceKlass org/gradle/initialization/ClassLoaderScopeId +instanceKlass org/gradle/initialization/DefaultClassLoaderScopeRegistry +instanceKlass org/gradle/api/internal/initialization/loadercache/DefaultClassLoaderCache$ClassLoaderSpec +instanceKlass org/gradle/api/internal/initialization/loadercache/DefaultClassLoaderCache +instanceKlass org/gradle/composite/internal/plugins/CompositeBuildPluginResolverContributor$CompositeBuildPluginResolver +instanceKlass org/gradle/composite/internal/plugins/CompositeBuildPluginResolverContributor +instanceKlass org/gradle/plugin/management/internal/autoapply/DefaultAutoAppliedPluginHandler +instanceKlass org/gradle/plugin/management/internal/SingletonPluginRequests +instanceKlass java/util/DualPivotQuicksort +instanceKlass org/gradle/plugin/use/internal/DefaultPluginId +instanceKlass org/gradle/plugin/use/PluginId +instanceKlass org/gradle/plugin/management/internal/autoapply/AutoAppliedGradleEnterprisePlugin +instanceKlass org/gradle/plugin/management/internal/DefaultPluginRequest +instanceKlass org/gradle/api/internal/artifacts/DefaultModuleVersionSelector +instanceKlass org/gradle/api/artifacts/ModuleVersionSelector +instanceKlass org/gradle/api/internal/artifacts/DefaultModuleIdentifier +instanceKlass org/gradle/plugin/management/internal/PluginRequestInternal +instanceKlass org/gradle/plugin/management/PluginRequest +instanceKlass org/gradle/plugin/management/internal/autoapply/DefaultAutoAppliedPluginRegistry +instanceKlass org/gradle/workers/internal/DefaultWorkResult +instanceKlass org/gradle/api/tasks/WorkResult +instanceKlass org/gradle/internal/work/ConditionalExecutionQueue +instanceKlass org/gradle/groovy/scripts/internal/BuildScopeInMemoryCachingScriptClassCompiler +instanceKlass org/gradle/groovy/scripts/ScriptCompiler +instanceKlass org/gradle/groovy/scripts/DefaultScriptCompilerFactory +instanceKlass org/gradle/groovy/scripts/ScriptRunner +instanceKlass org/gradle/groovy/scripts/internal/DefaultScriptRunnerFactory +instanceKlass org/gradle/groovy/scripts/internal/BuildOperationBackedScriptCompilationHandler$1 +instanceKlass org/gradle/internal/scripts/CompileScriptBuildOperationType$Result +instanceKlass org/gradle/groovy/scripts/internal/BuildOperationBackedScriptCompilationHandler +instanceKlass org/gradle/groovy/scripts/ScriptSource +instanceKlass org/gradle/groovy/scripts/internal/DefaultScriptCompilationHandler$NoOpGroovyResourceLoader +instanceKlass groovy/lang/GroovyResourceLoader +instanceKlass org/gradle/groovy/scripts/internal/CompiledScript +instanceKlass com/google/common/base/AbstractIterator$1 +instanceKlass com/google/common/base/AbstractIterator +instanceKlass com/google/common/base/Splitter$1 +instanceKlass com/google/common/base/CharMatcher +instanceKlass com/google/common/base/Splitter$Strategy +instanceKlass com/google/common/base/Splitter +instanceKlass org/gradle/configuration/DefaultImportsReader$2 +instanceKlass com/google/common/io/Java8Compatibility +instanceKlass com/google/common/io/LineBuffer +instanceKlass com/google/common/io/LineReader +instanceKlass com/google/common/io/CharStreams +instanceKlass org/gradle/configuration/DefaultImportsReader$1 +instanceKlass com/google/common/io/Resources +instanceKlass org/gradle/configuration/DefaultImportsReader +instanceKlass org/gradle/configuration/ScriptPlugin +instanceKlass org/gradle/api/Plugin +instanceKlass org/gradle/configuration/internal/DefaultUserCodeApplicationContext +instanceKlass org/gradle/composite/internal/CompositeBuildClassPathInitializer +instanceKlass org/gradle/execution/TaskSelectionResult +instanceKlass org/gradle/api/tasks/TaskContainer +instanceKlass org/gradle/api/PolymorphicDomainObjectContainer +instanceKlass org/gradle/api/tasks/TaskCollection +instanceKlass org/gradle/execution/TaskNameResolver +instanceKlass org/gradle/execution/ExcludedTaskFilteringProjectsPreparer +instanceKlass org/gradle/execution/DefaultTaskSchedulingPreparer +instanceKlass org/gradle/initialization/TaskSchedulingPreparer +instanceKlass org/gradle/configuration/DefaultProjectsPreparer +instanceKlass org/gradle/configuration/BuildTreePreparingProjectsPreparer +instanceKlass org/gradle/configuration/BuildOperationFiringProjectsPreparer$1 +instanceKlass org/gradle/initialization/ConfigureBuildBuildOperationType$Result +instanceKlass org/gradle/configuration/BuildOperationFiringProjectsPreparer +instanceKlass org/gradle/initialization/ModelConfigurationListener +instanceKlass org/gradle/internal/resource/local/FileResourceListener +instanceKlass org/gradle/initialization/InstantiatingBuildLoader +instanceKlass org/gradle/initialization/ProjectPropertySettingBuildLoader +instanceKlass org/gradle/initialization/NotifyingBuildLoader$$Lambda$143 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/initialization/NotifyingBuildLoader$1 +instanceKlass org/gradle/initialization/LoadProjectsBuildOperationType$Result$Project +instanceKlass org/gradle/initialization/NotifyProjectsLoadedBuildOperationType$Result +instanceKlass org/gradle/initialization/NotifyingBuildLoader +instanceKlass org/gradle/initialization/DefaultGradlePropertiesController$SharedGradleProperties +instanceKlass org/gradle/initialization/DefaultGradlePropertiesController$NotLoaded +instanceKlass org/gradle/initialization/DefaultGradlePropertiesController$State +instanceKlass org/gradle/initialization/DefaultGradlePropertiesController +instanceKlass org/gradle/initialization/DefaultGradlePropertiesLoader +instanceKlass kotlin/UNINITIALIZED_VALUE +instanceKlass kotlin/SafePublicationLazyImpl$Companion +instanceKlass kotlin/SafePublicationLazyImpl +instanceKlass kotlin/Lazy +instanceKlass kotlin/LazyKt$WhenMappings +instanceKlass kotlin/LazyKt__LazyJVMKt +instanceKlass kotlin/reflect/jvm/internal/pcollections/MapEntry +instanceKlass kotlin/reflect/jvm/internal/ReflectProperties$Val$1 +instanceKlass kotlin/reflect/jvm/internal/ReflectProperties$Val +instanceKlass kotlin/reflect/jvm/internal/ReflectProperties +instanceKlass kotlin/jvm/internal/Lambda +instanceKlass kotlin/text/Regex$Companion +instanceKlass kotlin/text/Regex +instanceKlass kotlin/jvm/internal/DefaultConstructorMarker +instanceKlass kotlin/reflect/jvm/internal/KDeclarationContainerImpl$Companion +instanceKlass kotlin/reflect/jvm/internal/KClassifierImpl +instanceKlass kotlin/reflect/jvm/internal/pcollections/ConsPStack +instanceKlass kotlin/reflect/jvm/internal/pcollections/IntTree +instanceKlass kotlin/reflect/jvm/internal/pcollections/IntTreePMap +instanceKlass kotlin/reflect/jvm/internal/pcollections/HashPMap +instanceKlass kotlin/reflect/jvm/internal/KClassCacheKt +instanceKlass kotlin/reflect/jvm/internal/KPropertyImpl$Companion +instanceKlass kotlin/reflect/jvm/internal/KCallableImpl +instanceKlass kotlin/reflect/jvm/internal/KTypeParameterOwnerImpl +instanceKlass kotlin/reflect/jvm/internal/KDeclarationContainerImpl +instanceKlass kotlin/jvm/internal/ClassBasedDeclarationContainer +instanceKlass kotlin/jvm/internal/FunctionBase +instanceKlass kotlin/reflect/KMutableProperty1 +instanceKlass kotlin/reflect/KType +instanceKlass kotlin/reflect/KMutableProperty2 +instanceKlass kotlin/reflect/KProperty2 +instanceKlass kotlin/reflect/KProperty1 +instanceKlass kotlin/jvm/functions/Function1 +instanceKlass kotlin/reflect/KTypeParameter +instanceKlass kotlin/reflect/KMutableProperty0 +instanceKlass kotlin/reflect/KMutableProperty +instanceKlass kotlin/reflect/KClass +instanceKlass kotlin/jvm/internal/ReflectionFactory +instanceKlass kotlin/reflect/KClassifier +instanceKlass kotlin/jvm/internal/Reflection +instanceKlass kotlin/jvm/internal/CallableReference$NoReceiver +instanceKlass kotlin/reflect/KProperty$Getter +instanceKlass kotlin/reflect/KFunction +instanceKlass kotlin/reflect/KProperty$Accessor +instanceKlass kotlin/reflect/KDeclarationContainer +instanceKlass kotlin/jvm/internal/CallableReference +instanceKlass kotlin/reflect/KProperty0 +instanceKlass kotlin/jvm/functions/Function0 +instanceKlass kotlin/reflect/KProperty +instanceKlass kotlin/reflect/KCallable +instanceKlass kotlin/reflect/KAnnotatedElement +instanceKlass org/gradle/kotlin/dsl/tooling/builders/BuildSrcClassPathModeConfigurationAction +instanceKlass org/gradle/initialization/buildsrc/GroovyBuildSrcProjectConfigurationAction +instanceKlass org/gradle/configuration/project/PluginsProjectConfigureActions +instanceKlass org/gradle/api/internal/InternalAction +instanceKlass org/gradle/configuration/project/ProjectConfigureAction +instanceKlass org/gradle/initialization/buildsrc/BuildSrcProjectConfigurationAction +instanceKlass org/gradle/initialization/buildsrc/BuildSrcBuildListenerFactory +instanceKlass org/gradle/initialization/buildsrc/BuildSourceBuilder$1 +instanceKlass org/gradle/initialization/buildsrc/BuildBuildSrcBuildOperationType$Result +instanceKlass org/gradle/util/internal/GUtil$1 +instanceKlass org/gradle/internal/build/DefaultPublicBuildPath +instanceKlass org/gradle/api/internal/AbstractMutationGuard +instanceKlass org/gradle/internal/operations/RunnableBuildOperation +instanceKlass org/gradle/api/internal/project/BuildOperationCrossProjectConfigurator +instanceKlass org/gradle/api/internal/WithMutationGuard +instanceKlass org/gradle/internal/concurrent/CompositeStoppable$2 +instanceKlass org/gradle/configurationcache/serialization/beans/BeanStateWriterLookup +instanceKlass org/gradle/configurationcache/serialization/beans/BeanStateReaderLookup +instanceKlass org/gradle/configurationcache/ConfigurationCacheClassLoaderScopeRegistryListener +instanceKlass org/gradle/configurationcache/serialization/ScopeLookup +instanceKlass org/gradle/initialization/ClassLoaderScopeRegistryListener +instanceKlass org/gradle/configurationcache/problems/ConfigurationCacheProblems +instanceKlass org/gradle/configurationcache/ConfigurationCacheIO +instanceKlass org/gradle/configurationcache/ConfigurationCacheHost +instanceKlass org/gradle/configurationcache/DefaultConfigurationCache$Host +instanceKlass org/gradle/cache/internal/FileContentCacheFactory$Calculator +instanceKlass org/gradle/language/nativeplatform/internal/incremental/sourceparser/CachingCSourceParser +instanceKlass org/gradle/language/nativeplatform/internal/incremental/sourceparser/CSourceParser +instanceKlass org/gradle/language/nativeplatform/internal/incremental/DefaultCompilationStateCacheFactory +instanceKlass org/gradle/language/nativeplatform/internal/incremental/CompilationStateCacheFactory +instanceKlass org/gradle/internal/scan/config/BuildScanConfig +instanceKlass org/gradle/internal/scan/config/BuildScanConfig$Attributes +instanceKlass org/gradle/internal/enterprise/impl/legacy/LegacyGradleEnterprisePluginCheckInService +instanceKlass org/gradle/internal/scan/eob/BuildScanEndOfBuildNotifier +instanceKlass org/gradle/internal/scan/config/BuildScanConfigProvider +instanceKlass org/gradle/internal/enterprise/impl/legacy/DefaultBuildScanScopeIds +instanceKlass org/gradle/internal/scan/scopeids/BuildScanScopeIds +instanceKlass org/gradle/internal/enterprise/GradleEnterprisePluginCheckInResult +instanceKlass org/gradle/internal/enterprise/impl/DefautGradleEnterprisePluginCheckInService +instanceKlass org/gradle/internal/enterprise/GradleEnterprisePluginCheckInService +instanceKlass org/gradle/internal/enterprise/impl/DefaultGradleEnterprisePluginConfig +instanceKlass org/gradle/internal/enterprise/impl/DefaultGradleEnterprisePluginBuildState +instanceKlass org/gradle/internal/enterprise/impl/DefaultGradleEnterprisePluginServiceRef +instanceKlass org/gradle/internal/enterprise/GradleEnterprisePluginBuildState +instanceKlass org/gradle/internal/enterprise/GradleEnterprisePluginConfig +instanceKlass org/gradle/internal/enterprise/GradleEnterprisePluginEndOfBuildListener$BuildResult +instanceKlass org/gradle/internal/enterprise/GradleEnterprisePluginServiceRef +instanceKlass org/gradle/internal/enterprise/impl/DefaultGradleEnterprisePluginAdapter +instanceKlass org/gradle/internal/enterprise/core/GradleEnterprisePluginAdapter +instanceKlass org/gradle/initialization/DefaultJdkToolsInitializer +instanceKlass org/gradle/api/internal/tasks/compile/incremental/analyzer/CachingClassDependenciesAnalyzer +instanceKlass org/gradle/api/internal/tasks/compile/incremental/classpath/CachingClassSetAnalyzer +instanceKlass org/gradle/api/internal/tasks/compile/incremental/IncrementalCompilerFactory +instanceKlass org/gradle/api/internal/tasks/compile/incremental/analyzer/ClassDependenciesAnalyzer +instanceKlass org/gradle/api/internal/tasks/compile/incremental/classpath/ClassSetAnalyzer +instanceKlass org/gradle/api/internal/tasks/CompileServices$GradleScopeCompileServices +instanceKlass org/gradle/language/java/artifact/JavadocArtifact +instanceKlass org/gradle/language/java/internal/JavaLanguagePluginServiceRegistry$JavaGradleScopeServices +instanceKlass org/gradle/api/internal/artifacts/DependencyServices$DependencyManagementGradleServices +instanceKlass org/gradle/kotlin/dsl/accessors/ProjectAccessorsClassPathGenerator +instanceKlass org/gradle/kotlin/dsl/accessors/PluginAccessorClassPathGenerator +instanceKlass org/gradle/kotlin/dsl/accessors/GradleScopeServices +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/internal/execution/OutputChangeListener +instanceKlass org/gradle/internal/execution/history/OutputsCleaner +instanceKlass org/gradle/internal/execution/history/OutputFilesRepository +instanceKlass org/gradle/internal/service/scopes/ExecutionGradleServices +instanceKlass org/gradle/caching/internal/origin/OriginMetadataFactory +instanceKlass org/gradle/caching/internal/controller/BuildCacheController +instanceKlass org/gradle/caching/internal/packaging/impl/TarPackerFileSystemSupport +instanceKlass org/gradle/caching/internal/controller/BuildCacheCommandFactory +instanceKlass org/gradle/caching/internal/packaging/BuildCacheEntryPacker +instanceKlass org/gradle/caching/internal/packaging/impl/FilePermissionAccess +instanceKlass org/gradle/caching/internal/BuildCacheServices$3 +instanceKlass org/gradle/internal/service/scopes/GradleScopeServices$$Lambda$142 +instanceKlass org/gradle/api/execution/TaskExecutionGraphListener +instanceKlass org/gradle/api/services/internal/BuildServiceRegistryInternal +instanceKlass org/gradle/execution/plan/WorkNodeExecutor +instanceKlass org/gradle/execution/plan/PlanExecutor +instanceKlass org/gradle/execution/plan/LocalTaskNodeExecutor +instanceKlass org/gradle/execution/plan/NodeExecutor +instanceKlass org/gradle/api/execution/TaskExecutionListener +instanceKlass org/gradle/api/internal/tasks/options/OptionReader +instanceKlass org/gradle/execution/commandline/CommandLineTaskParser +instanceKlass org/gradle/initialization/TaskExecutionPreparer +instanceKlass org/gradle/internal/execution/BuildOutputCleanupRegistry +instanceKlass org/gradle/execution/BuildConfigurationActionExecuter +instanceKlass org/gradle/execution/BuildWorkExecutor +instanceKlass org/gradle/internal/ImmutableActionSet +instanceKlass org/gradle/internal/instantiation/generator/AsmBackedClassGenerator$ObjectCreationDetails +instanceKlass com/google/common/collect/Ordering +instanceKlass org/gradle/internal/instantiation/generator/ConstructorComparator +instanceKlass org/gradle/internal/instantiation/generator/AsmBackedClassGenerator$InvokeConstructorStrategy +instanceKlass org/gradle/internal/instantiation/generator/AbstractClassGenerator$GeneratedClassImpl$GeneratedConstructorImpl +instanceKlass org/gradle/internal/instantiation/generator/ClassGenerator$GeneratedConstructor +instanceKlass org/gradle/internal/instantiation/generator/ClassGenerator$SerializationConstructor +instanceKlass java/lang/invoke/MethodHandles$Lookup$$Lambda$141 +instanceKlass jdk/internal/org/objectweb/asm/ClassReader +instanceKlass org/objectweb/asm/Handler +instanceKlass org/objectweb/asm/Attribute +instanceKlass org/gradle/internal/instantiation/generator/AsmBackedClassGenerator$ClassBuilderImpl$ReturnTypeEntry +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass org/gradle/internal/instantiation/generator/AsmBackedClassGenerator$ClassBuilderImpl$$Lambda$140 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/internal/instantiation/generator/AsmBackedClassGenerator$ClassBuilderImpl$$Lambda$139 +instanceKlass com/google/common/collect/LinkedHashMultimap$ValueSet$1 +instanceKlass com/google/common/collect/AbstractMapBasedMultimap$WrappedCollection$WrappedIterator +instanceKlass org/gradle/internal/instantiation/generator/AsmBackedClassGenerator$ClassBuilderImpl$$Lambda$138 +instanceKlass org/gradle/internal/instantiation/generator/AsmBackedClassGenerator$ClassBuilderImpl$$Lambda$137 +instanceKlass org/gradle/internal/instantiation/generator/AsmBackedClassGenerator$ClassBuilderImpl$$Lambda$136 +instanceKlass org/gradle/internal/instantiation/generator/AsmBackedClassGenerator$ClassBuilderImpl$$Lambda$135 +instanceKlass org/gradle/internal/instantiation/generator/AsmBackedClassGenerator$ClassBuilderImpl$$Lambda$134 +instanceKlass org/gradle/internal/instantiation/generator/AsmBackedClassGenerator$ClassBuilderImpl$$Lambda$133 +instanceKlass org/gradle/internal/instantiation/generator/AsmBackedClassGenerator$ClassBuilderImpl$$Lambda$132 +instanceKlass org/gradle/internal/reflect/JavaReflectionUtil +instanceKlass org/gradle/model/internal/asm/AsmClassGeneratorUtils +instanceKlass org/gradle/internal/instantiation/generator/AsmBackedClassGenerator$ClassBuilderImpl$$Lambda$131 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/internal/instantiation/generator/AsmBackedClassGenerator$ClassBuilderImpl$$Lambda$130 +instanceKlass org/gradle/internal/instantiation/generator/AsmBackedClassGenerator$ClassBuilderImpl$$Lambda$129 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/internal/instantiation/generator/AsmBackedClassGenerator$MethodCodeBody +instanceKlass org/objectweb/asm/Edge +instanceKlass org/objectweb/asm/Label +instanceKlass org/objectweb/asm/Frame +instanceKlass org/objectweb/asm/ByteVector +instanceKlass org/objectweb/asm/Symbol +instanceKlass org/objectweb/asm/SymbolTable +instanceKlass org/objectweb/asm/FieldVisitor +instanceKlass org/objectweb/asm/ModuleVisitor +instanceKlass org/objectweb/asm/MethodVisitor +instanceKlass org/objectweb/asm/AnnotationVisitor +instanceKlass org/objectweb/asm/RecordComponentVisitor +instanceKlass org/gradle/model/internal/asm/AsmClassGenerator +instanceKlass org/gradle/internal/DisplayName +instanceKlass org/gradle/internal/instantiation/generator/ManagedObjectFactory +instanceKlass org/gradle/util/internal/ConfigureUtil +instanceKlass org/gradle/internal/metaobject/AbstractDynamicObject +instanceKlass org/gradle/api/plugins/Convention +instanceKlass org/gradle/api/plugins/ExtensionContainer +instanceKlass org/gradle/internal/metaobject/DynamicObject +instanceKlass org/gradle/internal/metaobject/PropertyAccess +instanceKlass org/gradle/internal/metaobject/MethodAccess +instanceKlass org/gradle/internal/extensibility/ConventionAwareHelper +instanceKlass org/gradle/api/internal/HasConvention +instanceKlass org/gradle/api/internal/IConventionAware +instanceKlass org/gradle/api/internal/GeneratedSubclass +instanceKlass org/gradle/api/internal/ConventionMapping +instanceKlass org/gradle/internal/instantiation/generator/AsmBackedClassGenerator$ClassBuilderImpl +instanceKlass javax/annotation/Nullable +instanceKlass java/lang/module/ModuleDescriptor$Builder$$Lambda$128 +instanceKlass jdk/internal/module/Checks +instanceKlass java/lang/module/ModuleDescriptor$Builder +instanceKlass java/lang/reflect/Proxy$ProxyBuilder$$Lambda$127 +instanceKlass jdk/internal/HotSpotIntrinsicCandidate +instanceKlass java/lang/Deprecated +instanceKlass org/gradle/api/internal/DynamicObjectAware +instanceKlass org/gradle/internal/extensibility/NoConventionMapping +instanceKlass sun/reflect/annotation/AnnotationParser$$Lambda$126 +instanceKlass sun/reflect/generics/tree/Wildcard +instanceKlass sun/reflect/generics/tree/BottomSignature +instanceKlass org/gradle/internal/instantiation/generator/AbstractClassGenerator$MethodMetadata +instanceKlass org/gradle/internal/reflect/PropertyAccessor +instanceKlass org/gradle/internal/reflect/PropertyMutator +instanceKlass org/gradle/internal/reflect/JavaPropertyReflectionUtil +instanceKlass org/gradle/internal/instantiation/generator/AbstractClassGenerator$PropertyMetadata +instanceKlass org/gradle/internal/instantiation/generator/AbstractClassGenerator$ClassMetadata +instanceKlass org/gradle/configuration/ConfigurationTargetIdentifier +instanceKlass org/gradle/api/plugins/PluginContainer +instanceKlass org/gradle/api/plugins/PluginCollection +instanceKlass org/gradle/internal/reflect/MutablePropertyDetails +instanceKlass java/beans/Introspector$1 +instanceKlass jdk/internal/access/JavaBeansAccess +instanceKlass java/beans/FeatureDescriptor +instanceKlass java/beans/Introspector +instanceKlass org/gradle/internal/reflect/MethodSet$MethodKey +instanceKlass org/gradle/api/internal/plugins/DefaultObjectConfigurationAction +instanceKlass org/gradle/api/plugins/ObjectConfigurationAction +instanceKlass org/gradle/execution/taskgraph/TaskExecutionGraphInternal +instanceKlass org/gradle/api/internal/plugins/PluginManagerInternal +instanceKlass org/gradle/api/internal/SettingsInternal +instanceKlass org/gradle/api/initialization/Settings +instanceKlass org/gradle/api/services/BuildServiceRegistry +instanceKlass org/gradle/api/internal/initialization/ClassLoaderScope +instanceKlass org/gradle/util/Path +instanceKlass groovy/lang/GroovyObjectSupport +instanceKlass groovy/lang/GroovyCallable +instanceKlass org/gradle/internal/MutableActionSet +instanceKlass org/gradle/api/execution/TaskExecutionGraph +instanceKlass org/gradle/api/plugins/PluginManager +instanceKlass org/gradle/internal/reflect/PropertyDetails +instanceKlass org/gradle/internal/reflect/MutableClassDetails +instanceKlass org/gradle/internal/reflect/ClassDetails +instanceKlass org/gradle/internal/reflect/ClassInspector +instanceKlass org/gradle/internal/instantiation/generator/AbstractClassGenerator$ClassGenerationVisitor +instanceKlass org/gradle/internal/instantiation/generator/AsmBackedClassGenerator$ClassInspectionVisitorImpl +instanceKlass org/gradle/internal/instantiation/generator/AbstractClassGenerator$InjectionAnnotationValidator +instanceKlass org/gradle/internal/instantiation/generator/AbstractClassGenerator$DisabledAnnotationValidator +instanceKlass org/gradle/internal/instantiation/generator/AbstractClassGenerator$ClassValidator +instanceKlass com/google/common/collect/LinkedHashMultimap$ValueSetLink +instanceKlass org/gradle/internal/reflect/MethodSet +instanceKlass org/gradle/internal/instantiation/generator/AbstractClassGenerator$ClassGenerationHandler +instanceKlass org/gradle/api/internal/project/AbstractPluginAware +instanceKlass org/gradle/internal/build/DefaultBuildLifecycleControllerFactory$1 +instanceKlass org/gradle/internal/featurelifecycle/ScriptUsageLocationReporter +instanceKlass org/gradle/configurationcache/DeprecatedFeaturesListenerManagerAction$DeprecatedFeaturesListener +instanceKlass org/gradle/profile/BuildProfileServices$1$1 +instanceKlass org/gradle/api/HasImplicitReceiver +instanceKlass org/gradle/api/NonExtensible +instanceKlass org/gradle/internal/build/AbstractBuildState$$Lambda$125 +instanceKlass org/gradle/internal/build/AbstractBuildState$$Lambda$124 +instanceKlass org/gradle/internal/build/AbstractBuildState$$Lambda$123 +instanceKlass org/gradle/internal/lazy/Lazy$$Lambda$122 +instanceKlass org/gradle/internal/lazy/Lazy$Factory +instanceKlass org/gradle/internal/lazy/LockingLazy +instanceKlass org/gradle/internal/lazy/Lazy +instanceKlass org/gradle/configurationcache/RelevantProjectsRegistry +instanceKlass org/gradle/profile/ProfileEventAdapter +instanceKlass org/gradle/api/internal/artifacts/transform/ArtifactTransformListener +instanceKlass org/gradle/initialization/BuildCompletionListener +instanceKlass org/gradle/api/artifacts/DependencyResolutionListener +instanceKlass org/gradle/execution/taskgraph/TaskListenerInternal +instanceKlass org/gradle/api/ProjectEvaluationListener +instanceKlass org/gradle/profile/ProfileListener +instanceKlass org/gradle/profile/BuildProfileServices$1 +instanceKlass org/gradle/vcs/internal/resolver/VcsDependencyResolver +instanceKlass org/gradle/vcs/internal/resolver/VcsVersionWorkingDirResolver +instanceKlass org/gradle/vcs/internal/services/VersionControlServices$VersionControlBuildServices +instanceKlass org/gradle/tooling/provider/model/ToolingModelBuilder +instanceKlass org/gradle/language/cpp/internal/tooling/ToolingNativeServices$ToolingModelRegistration +instanceKlass org/gradle/authentication/aws/AwsImAuthentication +instanceKlass org/gradle/internal/resource/transport/aws/s3/S3ResourcesPluginServiceRegistry$AuthenticationSchemeAction +instanceKlass org/gradle/nativeplatform/toolchain/internal/metadata/CompilerMetaDataProvider +instanceKlass org/gradle/nativeplatform/toolchain/internal/metadata/CompilerMetaDataProviderFactory +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/nativeplatform/internal/resolve/LibraryBinaryLocator +instanceKlass org/gradle/nativeplatform/internal/resolve/NativeDependencyResolver +instanceKlass org/gradle/nativeplatform/internal/resolve/NativeDependencyResolverServices +instanceKlass org/gradle/language/cpp/internal/NativeDependencyCache +instanceKlass org/gradle/ide/xcode/internal/xcodeproj/GidGenerator +instanceKlass org/gradle/ide/xcode/internal/services/XcodeServices$GlobalIdGeneratorServices +instanceKlass org/gradle/plugins/ide/internal/configurer/UniqueProjectNameProvider +instanceKlass org/gradle/plugins/ide/internal/tooling/ToolingModelServices$BuildScopeToolingServices +instanceKlass org/gradle/plugin/use/resolve/internal/PluginResolverContributor +instanceKlass org/gradle/composite/internal/CompositeBuildServices$CompositeBuildBuildScopeServices +instanceKlass org/gradle/caching/http/internal/HttpBuildCacheServiceServices$$Lambda$121 +instanceKlass org/apache/http/HttpRequest +instanceKlass org/apache/http/HttpMessage +instanceKlass org/gradle/caching/http/internal/HttpBuildCacheRequestCustomizer +instanceKlass org/gradle/caching/http/internal/DefaultHttpBuildCacheServiceFactory +instanceKlass org/gradle/caching/BuildCacheServiceFactory +instanceKlass org/gradle/caching/configuration/AbstractBuildCache +instanceKlass org/gradle/caching/configuration/BuildCache +instanceKlass org/gradle/caching/configuration/internal/DefaultBuildCacheServiceRegistration +instanceKlass org/gradle/maven/MavenPomArtifact +instanceKlass org/gradle/maven/MavenModule +instanceKlass org/gradle/api/publish/maven/internal/publisher/MavenPublishers +instanceKlass org/gradle/api/publish/maven/internal/dependencies/VersionRangeMapper +instanceKlass org/gradle/api/publish/maven/internal/MavenPublishServices$ComponentRegistrationAction +instanceKlass org/gradle/api/publish/internal/validation/DuplicatePublicationTracker +instanceKlass org/gradle/api/internal/artifacts/ivyservice/projectmodule/DefaultProjectDependencyPublicationResolver +instanceKlass org/gradle/api/internal/artifacts/ivyservice/projectmodule/ProjectDependencyPublicationResolver +instanceKlass org/gradle/jvm/toolchain/internal/LocationListInstallationSupplier +instanceKlass org/gradle/jvm/toolchain/internal/EnvironmentVariableListInstallationSupplier +instanceKlass org/gradle/jvm/toolchain/internal/AutoDetectingInstallationSupplier +instanceKlass org/gradle/jvm/toolchain/internal/InstallationSupplier +instanceKlass org/gradle/jvm/toolchain/internal/JavaInstallationRegistry +instanceKlass org/gradle/jvm/toolchain/install/internal/JdkCacheDirectory +instanceKlass org/gradle/language/base/artifact/SourcesArtifact +instanceKlass org/gradle/jvm/JvmLibrary +instanceKlass org/gradle/platform/base/Library +instanceKlass org/gradle/language/jvm/internal/JvmPluginServiceRegistry$ComponentRegistrationAction +instanceKlass org/gradle/ivy/IvyDescriptorArtifact +instanceKlass org/gradle/api/component/Artifact +instanceKlass org/gradle/api/internal/component/DefaultComponentTypeRegistry$DefaultComponentTypeRegistration +instanceKlass org/gradle/ivy/IvyModule +instanceKlass org/gradle/api/component/Component +instanceKlass org/gradle/api/internal/component/ComponentTypeRegistration +instanceKlass org/gradle/api/internal/component/DefaultComponentTypeRegistry +instanceKlass org/gradle/api/publish/ivy/internal/publisher/IvyPublisher +instanceKlass org/gradle/api/publish/ivy/internal/IvyServices$BuildServices +instanceKlass org/gradle/api/internal/resolve/ProjectModelResolver +instanceKlass org/gradle/platform/base/internal/registry/ComponentModelBaseServiceRegistry$BuildScopeServices +instanceKlass org/gradle/plugin/use/tracker/internal/PluginVersionTracker +instanceKlass org/gradle/plugin/use/resolve/internal/PluginResolutionResult +instanceKlass org/gradle/api/internal/plugins/PluginDescriptorLocator +instanceKlass org/gradle/plugin/use/internal/DefaultPluginRequestApplicator +instanceKlass org/gradle/plugin/use/resolve/internal/PluginResolver +instanceKlass org/gradle/plugin/use/internal/PluginResolverFactory +instanceKlass org/gradle/plugin/management/internal/PluginResolutionStrategyInternal +instanceKlass org/gradle/plugin/management/PluginResolutionStrategy +instanceKlass org/gradle/plugin/use/internal/PluginDependencyResolutionServices +instanceKlass org/gradle/plugin/use/resolve/internal/PluginArtifactRepositoriesProvider +instanceKlass org/gradle/plugin/use/internal/PluginRepositoryHandlerProvider +instanceKlass org/gradle/plugin/management/internal/autoapply/AutoAppliedPluginRegistry +instanceKlass org/gradle/api/internal/artifacts/dsl/dependencies/ProjectFinder +instanceKlass org/gradle/plugin/use/resolve/service/internal/ClientInjectedClasspathPluginResolver +instanceKlass org/gradle/plugin/internal/PluginUsePluginServiceRegistry$BuildScopeServices +instanceKlass org/gradle/authentication/http/HttpHeaderAuthentication +instanceKlass org/gradle/authentication/http/DigestAuthentication +instanceKlass org/gradle/internal/authentication/AbstractAuthentication +instanceKlass org/gradle/internal/authentication/AuthenticationInternal +instanceKlass org/gradle/authentication/http/BasicAuthentication +instanceKlass org/gradle/authentication/Authentication +instanceKlass org/gradle/internal/authentication/DefaultAuthenticationSchemeRegistry +instanceKlass org/gradle/internal/resource/transport/http/HttpResourcesPluginServiceRegistry$AuthenticationSchemeAction +instanceKlass org/gradle/api/internal/artifacts/transform/TransformationNodeDependencyResolver +instanceKlass org/gradle/internal/component/model/ComponentResolveMetadata +instanceKlass org/gradle/api/internal/artifacts/ivyservice/projectmodule/ProjectArtifactSetResolver +instanceKlass org/gradle/api/internal/artifacts/ivyservice/projectmodule/ProjectArtifactResolver +instanceKlass org/gradle/internal/component/external/model/ModuleComponentArtifactMetadata +instanceKlass org/gradle/internal/component/model/ComponentArtifactMetadata +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ResolverProviderFactory +instanceKlass org/gradle/internal/resource/local/LocallyAvailableResourceFinder +instanceKlass org/gradle/api/internal/artifacts/ivyservice/projectmodule/ProjectDependencyResolver +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ComponentResolvers +instanceKlass org/gradle/internal/resolve/resolver/OriginArtifactSelector +instanceKlass org/gradle/internal/resolve/resolver/ArtifactResolver +instanceKlass org/gradle/internal/resolve/resolver/DependencyToComponentIdResolver +instanceKlass org/gradle/internal/resolve/resolver/ComponentMetaDataResolver +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/excludes/ModuleExclusions +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ResolveIvyFactory +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/strategy/VersionParser +instanceKlass org/gradle/internal/resource/TextUriResourceLoader$Factory +instanceKlass org/gradle/api/internal/runtimeshaded/RuntimeShadedJarFactory +instanceKlass org/gradle/internal/resource/cached/DefaultExternalResourceFileStore$Factory +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/ModuleRepositoryCacheProvider +instanceKlass org/gradle/internal/management/DependencyResolutionManagementInternal +instanceKlass org/gradle/api/initialization/resolve/DependencyResolutionManagement +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/verification/DependencyVerificationOverride +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/ModuleSourcesSerializer +instanceKlass org/gradle/api/internal/artifacts/repositories/metadata/IvyMutableModuleMetadataFactory +instanceKlass org/gradle/api/internal/artifacts/repositories/metadata/MavenMutableModuleMetadataFactory +instanceKlass org/gradle/api/internal/artifacts/repositories/metadata/MutableModuleMetadataFactory +instanceKlass org/gradle/internal/verifier/HttpRedirectVerifier +instanceKlass org/gradle/api/internal/artifacts/repositories/transport/RepositoryTransportFactory +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/FileStoreAndIndexProvider +instanceKlass org/gradle/internal/resource/cached/AbstractCachedIndex +instanceKlass org/gradle/internal/resolve/caching/CrossBuildCachingRuleExecutor +instanceKlass org/gradle/internal/resolve/caching/CachingRuleExecutor +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/ModuleRepositoryCaches +instanceKlass org/gradle/api/internal/artifacts/DefaultProjectDependencyFactory +instanceKlass org/gradle/internal/resource/local/GroupedAndNamedUniqueFileStore +instanceKlass org/gradle/api/internal/filestore/DefaultArtifactIdentifierFileStore$Factory +instanceKlass org/gradle/util/internal/SimpleMapInterner +instanceKlass org/gradle/api/internal/artifacts/mvnsettings/LocalMavenRepositoryLocator +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/RepositoryDisabler +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/strategy/VersionSelectorScheme +instanceKlass org/gradle/api/internal/artifacts/ArtifactDependencyResolver +instanceKlass org/gradle/api/internal/artifacts/component/ComponentIdentifierFactory +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/strategy/VersionComparator +instanceKlass org/gradle/api/internal/artifacts/ivyservice/projectmodule/ProjectPublicationRegistry +instanceKlass org/gradle/api/internal/artifacts/ComponentSelectorConverter +instanceKlass org/gradle/internal/execution/steps/DeferredExecutionAwareStep +instanceKlass org/gradle/internal/execution/steps/Step +instanceKlass org/gradle/api/internal/artifacts/mvnsettings/MavenSettingsProvider +instanceKlass org/gradle/api/internal/artifacts/mvnsettings/MavenFileLocations +instanceKlass org/gradle/api/internal/artifacts/verification/signatures/SignatureVerificationServiceFactory +instanceKlass org/gradle/internal/resource/cached/ExternalResourceFileStore +instanceKlass org/gradle/api/internal/filestore/ArtifactIdentifierFileStore +instanceKlass org/gradle/internal/resource/local/FileStoreSearcher +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/artifacts/AbstractArtifactsCache +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/artifacts/ModuleArtifactsCache +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/artifacts/ModuleArtifactCache +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/AbstractModuleMetadataCache +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/ModuleMetadataCache +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/AttributeContainerSerializer +instanceKlass org/gradle/internal/resource/TextUriResourceLoader +instanceKlass org/gradle/api/internal/artifacts/repositories/resolver/ExternalResourceAccessor +instanceKlass org/gradle/internal/resource/local/FileStore +instanceKlass org/gradle/internal/resource/cached/CachedExternalResourceIndex +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/dynamicversions/AbstractModuleVersionsCache +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/dynamicversions/ModuleVersionsCache +instanceKlass org/gradle/initialization/DependenciesAccessors +instanceKlass org/gradle/api/internal/artifacts/DependencyManagementBuildScopeServices +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass kotlin/jvm/functions/Function2 +instanceKlass kotlin/Function +instanceKlass org/gradle/plugin/management/internal/autoapply/AutoAppliedPluginHandler +instanceKlass org/gradle/kotlin/dsl/provider/KotlinScriptEvaluator +instanceKlass org/gradle/internal/execution/ExecutionEngine +instanceKlass org/gradle/plugin/use/internal/PluginRequestApplicator +instanceKlass org/gradle/kotlin/dsl/provider/PluginRequestsHandler +instanceKlass org/gradle/kotlin/dsl/provider/ClassPathModeExceptionCollector +instanceKlass org/gradle/kotlin/dsl/provider/KotlinScriptClassPathProvider +instanceKlass org/gradle/api/internal/artifacts/dsl/dependencies/DependencyFactory +instanceKlass org/gradle/kotlin/dsl/provider/BuildServices +instanceKlass org/gradle/kotlin/dsl/concurrent/AsyncIOScopeFactory +instanceKlass org/gradle/kotlin/dsl/concurrent/BuildServices +instanceKlass org/gradle/caching/configuration/internal/BuildCacheConfigurationInternal +instanceKlass org/gradle/caching/configuration/BuildCacheConfiguration +instanceKlass org/gradle/caching/local/internal/DirectoryBuildCacheFileStoreFactory +instanceKlass org/gradle/caching/configuration/internal/BuildCacheServiceRegistration +instanceKlass org/gradle/caching/internal/BuildCacheServices$2 +instanceKlass org/gradle/configuration/project/ProjectEvaluator +instanceKlass org/gradle/api/internal/artifacts/ivyservice/projectmodule/LocalComponentRegistry +instanceKlass org/gradle/api/internal/artifacts/ivyservice/projectmodule/LocalComponentProvider +instanceKlass org/gradle/configurationcache/DefaultBuildModelControllerServices$VintageModelProvider +instanceKlass org/gradle/api/internal/project/CrossProjectModelAccess +instanceKlass org/gradle/configurationcache/DefaultBuildModelControllerServices$VintageIsolatedProjectsProvider +instanceKlass org/gradle/configurationcache/services/DefaultEnvironment +instanceKlass org/gradle/internal/build/BuildModelController +instanceKlass org/gradle/configurationcache/DefaultBuildModelControllerServices$VintageBuildControllerProvider +instanceKlass org/gradle/configurationcache/DeprecatedFeaturesListenerManagerAction +instanceKlass org/gradle/internal/service/scopes/BuildScopeListenerManagerAction +instanceKlass org/gradle/configurationcache/DefaultBuildModelControllerServices$ServicesProvider +instanceKlass org/gradle/internal/composite/DefaultBuildIncluder +instanceKlass org/gradle/internal/build/BuildWorkGraph +instanceKlass org/gradle/internal/build/ExportedTaskNode +instanceKlass org/gradle/internal/build/DefaultBuildWorkGraphController +instanceKlass org/gradle/internal/build/BuildWorkGraphController +instanceKlass org/gradle/execution/plan/WorkNodeDependencyResolver +instanceKlass org/gradle/execution/plan/TaskNodeDependencyResolver +instanceKlass org/gradle/execution/plan/DependencyResolver +instanceKlass org/gradle/api/internal/tasks/WorkDependencyResolver +instanceKlass org/gradle/internal/execution/WorkValidationContext +instanceKlass org/gradle/internal/execution/WorkValidationContext$TypeOriginInspector +instanceKlass org/gradle/initialization/layout/ResolvedBuildLayout +instanceKlass org/gradle/internal/build/BuildIncluder +instanceKlass org/gradle/initialization/SettingsLoader +instanceKlass org/gradle/initialization/DefaultSettingsLoaderFactory +instanceKlass org/gradle/api/internal/project/ProjectFactory +instanceKlass org/gradle/api/internal/project/IProjectFactory +instanceKlass org/gradle/execution/TaskPathProjectEvaluator +instanceKlass org/gradle/api/internal/file/DefaultArchiveOperations +instanceKlass org/gradle/api/file/ArchiveOperations +instanceKlass org/gradle/api/internal/file/DefaultFileSystemOperations +instanceKlass org/gradle/api/file/FileSystemOperations +instanceKlass org/gradle/internal/resource/LocalBinaryResource +instanceKlass org/gradle/internal/resource/ReadableContent +instanceKlass org/gradle/api/resources/internal/ReadableResourceInternal +instanceKlass org/gradle/internal/resource/Resource +instanceKlass org/gradle/api/resources/ReadableResource +instanceKlass org/gradle/api/resources/Resource +instanceKlass org/gradle/api/internal/file/delete/DeleteSpecInternal +instanceKlass org/gradle/api/file/DeleteSpec +instanceKlass org/gradle/api/internal/file/DefaultFileOperations +instanceKlass org/gradle/api/internal/file/FileOperations +instanceKlass org/gradle/process/internal/DefaultExecOperations +instanceKlass org/gradle/process/ExecOperations +instanceKlass org/gradle/internal/service/scopes/BuildScopeServices$$Lambda$120 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/tooling/provider/model/internal/BuildScopeToolingModelBuilderRegistryAction +instanceKlass org/gradle/api/internal/initialization/ScriptClassPathInitializer +instanceKlass org/gradle/api/internal/project/ProjectInternal +instanceKlass org/gradle/model/internal/registry/ModelRegistryScope +instanceKlass org/gradle/api/internal/DomainObjectContext +instanceKlass org/gradle/api/internal/file/HasScriptServices +instanceKlass org/gradle/api/internal/project/ProjectIdentifier +instanceKlass org/gradle/api/Project +instanceKlass org/gradle/tooling/provider/model/internal/DefaultToolingModelBuilderRegistry +instanceKlass org/gradle/tooling/provider/model/internal/ToolingModelBuilderLookup +instanceKlass org/gradle/tooling/provider/model/ToolingModelBuilderRegistry +instanceKlass org/gradle/api/internal/artifacts/DependencyManagementServices +instanceKlass org/gradle/initialization/SettingsLoaderFactory +instanceKlass org/gradle/internal/service/scopes/BuildScopeServiceRegistryFactory +instanceKlass org/gradle/groovy/scripts/internal/DefaultScriptCompilationHandler +instanceKlass org/gradle/api/internal/plugins/PluginInspector +instanceKlass org/gradle/initialization/InitScriptHandler +instanceKlass org/gradle/execution/ProjectConfigurer +instanceKlass org/gradle/internal/service/scopes/ServiceRegistryFactory +instanceKlass org/gradle/api/internal/resources/DefaultResourceHandler$Factory +instanceKlass org/gradle/api/internal/resources/ApiTextResourceAdapter$Factory +instanceKlass org/gradle/api/provider/ProviderFactory +instanceKlass org/gradle/api/internal/tasks/TaskStatistics +instanceKlass org/gradle/execution/plan/ExecutionPlanFactory +instanceKlass org/gradle/execution/plan/ExecutionNodeAccessHierarchies +instanceKlass org/gradle/execution/plan/TaskDependencyResolver +instanceKlass org/gradle/execution/plan/TaskNodeFactory +instanceKlass org/gradle/api/internal/GradleInternal +instanceKlass org/gradle/api/internal/plugins/PluginAwareInternal +instanceKlass org/gradle/api/invocation/Gradle +instanceKlass org/gradle/api/plugins/PluginAware +instanceKlass org/gradle/configuration/DefaultScriptPluginFactory +instanceKlass org/gradle/initialization/buildsrc/BuildSourceBuilder +instanceKlass org/gradle/groovy/scripts/internal/FileCacheBackedScriptClassCompiler +instanceKlass org/gradle/initialization/Environment +instanceKlass org/gradle/api/internal/properties/GradleProperties +instanceKlass org/gradle/api/internal/project/DefaultProjectRegistry +instanceKlass org/gradle/groovy/scripts/internal/ScriptCompilationHandler +instanceKlass org/gradle/internal/build/BuildWorkPreparer +instanceKlass org/gradle/api/internal/project/taskfactory/ITaskFactory +instanceKlass org/gradle/initialization/BuildLoader +instanceKlass org/gradle/execution/TaskSelector +instanceKlass org/gradle/internal/actor/ActorFactory +instanceKlass org/gradle/api/internal/initialization/ScriptHandlerFactory +instanceKlass org/gradle/initialization/SettingsPreparer +instanceKlass org/gradle/groovy/scripts/internal/ScriptRunnerFactory +instanceKlass org/gradle/api/internal/tasks/userinput/BuildScanUserInputHandler +instanceKlass org/gradle/configuration/CompileOperationFactory +instanceKlass org/gradle/api/internal/artifacts/configurations/DependencyMetaDataProvider +instanceKlass org/gradle/api/internal/plugins/PluginRegistry +instanceKlass org/gradle/api/internal/initialization/ScriptClassPathResolver +instanceKlass org/gradle/configuration/InitScriptProcessor +instanceKlass org/gradle/internal/authentication/AuthenticationSchemeRegistry +instanceKlass org/gradle/internal/operations/logging/BuildOperationLoggerFactory +instanceKlass org/gradle/api/internal/project/ProjectTaskLister +instanceKlass org/gradle/api/invocation/BuildInvocationDetails +instanceKlass org/gradle/api/internal/component/ComponentTypeRegistry +instanceKlass org/gradle/configuration/ProjectsPreparer +instanceKlass org/gradle/initialization/SettingsProcessor +instanceKlass org/gradle/internal/resource/TextFileResourceLoader +instanceKlass org/gradle/internal/build/PublicBuildPath +instanceKlass org/gradle/cache/scopes/BuildScopedCache +instanceKlass org/gradle/api/internal/provider/ValueSourceProviderFactory +instanceKlass org/gradle/initialization/GradlePropertiesController +instanceKlass org/gradle/initialization/ProjectDescriptorRegistry +instanceKlass org/gradle/api/internal/project/ProjectRegistry +instanceKlass org/gradle/configuration/ScriptPluginFactory +instanceKlass org/gradle/execution/plan/NodeValidator +instanceKlass org/gradle/api/internal/project/IsolatedAntBuilder +instanceKlass org/gradle/groovy/scripts/ScriptCompilerFactory +instanceKlass org/gradle/groovy/scripts/internal/ScriptClassCompiler +instanceKlass org/gradle/initialization/IGradlePropertiesLoader +instanceKlass org/gradle/configurationcache/DefaultBuildModelControllerServices$servicesForBuild$1 +instanceKlass org/gradle/internal/build/BuildModelControllerServices$Supplier +instanceKlass org/gradle/internal/composite/IncludedBuildInternal +instanceKlass org/gradle/api/initialization/IncludedBuild +instanceKlass org/gradle/internal/buildtree/BuildTreeFinishExecutor +instanceKlass org/gradle/internal/buildtree/BuildTreeWorkExecutor +instanceKlass org/gradle/api/artifacts/component/ProjectComponentIdentifier +instanceKlass org/gradle/api/artifacts/component/ComponentIdentifier +instanceKlass org/gradle/internal/build/AbstractBuildState +instanceKlass org/gradle/internal/Actions$NullAction +instanceKlass org/gradle/internal/Actions +instanceKlass org/gradle/plugin/management/internal/PluginRequests$EmptyPluginRequests +instanceKlass org/gradle/plugin/management/internal/PluginRequests +instanceKlass org/gradle/api/internal/BuildDefinition +instanceKlass java/util/TimSort +instanceKlass org/gradle/internal/buildtree/ProblemReportingBuildActionRunner$$Lambda$119 +instanceKlass org/gradle/launcher/exec/ChainingBuildActionRunner +instanceKlass org/gradle/internal/buildtree/ProblemReportingBuildActionRunner +instanceKlass org/gradle/launcher/exec/BuildOutcomeReportingBuildActionRunner +instanceKlass org/gradle/tooling/internal/provider/FileSystemWatchingBuildActionRunner +instanceKlass org/gradle/launcher/exec/BuildCompletionNotifyingBuildActionRunner +instanceKlass org/gradle/launcher/exec/RootBuildLifecycleBuildActionExecutor +instanceKlass org/gradle/initialization/exception/StackTraceSanitizingExceptionAnalyser +instanceKlass org/gradle/initialization/exception/DefaultExceptionAnalyser +instanceKlass org/gradle/internal/scripts/ScriptExecutionListener +instanceKlass org/gradle/initialization/exception/MultipleBuildFailuresExceptionAnalyser +instanceKlass org/gradle/internal/buildtree/DeprecationsReporter +instanceKlass org/gradle/api/artifacts/component/BuildIdentifier +instanceKlass org/gradle/composite/internal/DefaultIncludedBuildRegistry +instanceKlass org/gradle/api/internal/artifacts/ivyservice/dependencysubstitution/DependencySubstitutionsInternal +instanceKlass org/gradle/api/artifacts/DependencySubstitutions +instanceKlass org/gradle/composite/internal/IncludedBuildDependencySubstitutionsBuilder +instanceKlass org/gradle/internal/typeconversion/CompositeNotationConverter +instanceKlass org/gradle/api/capabilities/Capability +instanceKlass org/gradle/api/internal/artifacts/dsl/CapabilityNotationParserFactory +instanceKlass org/gradle/api/internal/attributes/UsageCompatibilityHandler +instanceKlass java/util/Comparator$$Lambda$118 +instanceKlass org/gradle/api/internal/attributes/DefaultImmutableAttributes$$Lambda$117 +instanceKlass org/gradle/api/attributes/Attribute +instanceKlass org/gradle/api/internal/attributes/DefaultImmutableAttributes +instanceKlass org/gradle/api/internal/attributes/AttributeValue +instanceKlass org/gradle/api/internal/attributes/ImmutableAttributes +instanceKlass org/gradle/api/internal/attributes/AttributeContainerInternal +instanceKlass org/gradle/api/attributes/AttributeContainer +instanceKlass org/gradle/api/attributes/HasAttributes +instanceKlass org/gradle/internal/isolation/Isolatable +instanceKlass org/gradle/internal/hash/Hashable +instanceKlass org/gradle/internal/snapshot/impl/DefaultIsolatableFactory$IsolatableVisitor +instanceKlass org/gradle/internal/snapshot/impl/AbstractValueProcessor$ValueVisitor +instanceKlass org/gradle/internal/snapshot/impl/AbstractValueProcessor +instanceKlass com/google/common/cache/LocalCache$StrongValueReference +instanceKlass org/gradle/api/internal/provider/ManagedFactories$ProviderManagedFactory +instanceKlass org/gradle/api/internal/provider/ManagedFactories$PropertyManagedFactory +instanceKlass org/gradle/api/internal/provider/ManagedFactories$MapPropertyManagedFactory +instanceKlass org/gradle/api/internal/provider/ManagedFactories$ListPropertyManagedFactory +instanceKlass org/gradle/api/internal/provider/AbstractMinimalProvider +instanceKlass org/gradle/api/internal/provider/CollectionPropertyInternal +instanceKlass org/gradle/api/internal/provider/CollectionProviderInternal +instanceKlass org/gradle/api/internal/provider/PropertyInternal +instanceKlass org/gradle/internal/state/OwnerAware +instanceKlass org/gradle/api/internal/provider/HasConfigurableValueInternal +instanceKlass org/gradle/api/internal/provider/ProviderInternal +instanceKlass org/gradle/api/internal/provider/ValueSupplier +instanceKlass org/gradle/api/internal/provider/ManagedFactories$SetPropertyManagedFactory +instanceKlass org/gradle/api/internal/file/ManagedFactories$DirectoryPropertyManagedFactory +instanceKlass org/gradle/api/internal/file/ManagedFactories$DirectoryManagedFactory +instanceKlass org/gradle/api/internal/file/ManagedFactories$RegularFilePropertyManagedFactory +instanceKlass org/gradle/api/internal/file/ManagedFactories$RegularFileManagedFactory +instanceKlass org/gradle/api/internal/file/collections/ManagedFactories$ConfigurableFileCollectionManagedFactory +instanceKlass org/gradle/internal/state/DefaultManagedFactoryRegistry +instanceKlass org/gradle/internal/classloader/ConfigurableClassLoaderHierarchyHasher +instanceKlass org/gradle/internal/classloader/DefaultClassLoaderFactory +instanceKlass org/gradle/api/internal/initialization/loadercache/DefaultClasspathHasher +instanceKlass javax/annotation/meta/TypeQualifierDefault +instanceKlass javax/annotation/Nonnull +instanceKlass org/gradle/api/NonNullApi +instanceKlass org/gradle/api/internal/changedetection/state/PropertiesFileAwareClasspathResourceHasher$$Lambda$116 +instanceKlass org/gradle/api/internal/changedetection/state/PropertiesFileAwareClasspathResourceHasher$$Lambda$115 +instanceKlass org/gradle/internal/fingerprint/impl/EmptyCurrentFileCollectionFingerprint +instanceKlass org/gradle/api/internal/changedetection/state/ZipHasher$$Lambda$114 +instanceKlass org/gradle/api/internal/changedetection/state/ZipHasher$HashingExceptionReporter +instanceKlass org/gradle/internal/snapshot/AbstractFileSystemLocationSnapshot +instanceKlass org/gradle/internal/snapshot/FileSystemLeafSnapshot +instanceKlass org/gradle/internal/fingerprint/hashing/ZipEntryContext +instanceKlass org/gradle/api/internal/file/archive/ZipInput +instanceKlass org/gradle/api/internal/changedetection/state/ZipHasher +instanceKlass org/gradle/api/internal/changedetection/state/IgnoringResourceHasher +instanceKlass org/gradle/api/internal/changedetection/state/MetaInfAwareClasspathResourceHasher +instanceKlass org/gradle/api/internal/changedetection/state/PropertiesFileAwareClasspathResourceHasher$$Lambda$113 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/api/internal/changedetection/state/PropertiesFileAwareClasspathResourceHasher +instanceKlass org/gradle/api/internal/changedetection/state/LineEndingNormalizingResourceHasher$1 +instanceKlass org/gradle/api/internal/changedetection/state/LineEndingNormalizingResourceHasher +instanceKlass org/gradle/internal/snapshot/RelativePathTrackingFileSystemSnapshotHierarchyVisitor +instanceKlass org/gradle/internal/fingerprint/CurrentFileCollectionFingerprint +instanceKlass org/gradle/internal/fingerprint/FileCollectionFingerprint +instanceKlass org/gradle/internal/fingerprint/impl/AbstractFingerprintingStrategy +instanceKlass org/gradle/api/internal/changedetection/state/RuntimeClasspathResourceHasher +instanceKlass org/gradle/api/internal/changedetection/state/PropertiesFileFilter +instanceKlass org/gradle/api/internal/changedetection/state/ResourceEntryFilter$1 +instanceKlass org/gradle/api/internal/changedetection/state/ResourceEntryFilter +instanceKlass org/gradle/api/internal/changedetection/state/ResourceFilter$1 +instanceKlass org/gradle/api/internal/changedetection/state/ResourceFilter +instanceKlass org/gradle/internal/fingerprint/FingerprintingStrategy +instanceKlass org/gradle/internal/fingerprint/impl/AbstractFileCollectionFingerprinter +instanceKlass org/gradle/internal/execution/fingerprint/FileCollectionSnapshotter$Result +instanceKlass org/gradle/internal/fingerprint/impl/DefaultFileCollectionSnapshotter +instanceKlass org/gradle/internal/fingerprint/impl/DefaultGenericFileTreeSnapshotter +instanceKlass org/gradle/api/internal/changedetection/state/CachingResourceHasher +instanceKlass org/gradle/internal/fingerprint/hashing/ResourceHasher +instanceKlass org/gradle/internal/fingerprint/hashing/ZipEntryContextHasher +instanceKlass org/gradle/internal/fingerprint/hashing/RegularFileSnapshotContextHasher +instanceKlass org/gradle/internal/fingerprint/hashing/ConfigurableNormalizer +instanceKlass org/gradle/api/internal/changedetection/state/DefaultResourceSnapshotterCacheService +instanceKlass org/gradle/internal/typeconversion/NotationParserBuilder$LazyDisplayName +instanceKlass org/gradle/internal/typeconversion/JustReturningParser +instanceKlass org/gradle/api/artifacts/VersionConstraint +instanceKlass org/gradle/internal/typeconversion/TypedNotationConverter +instanceKlass org/gradle/internal/typeconversion/CrossBuildCachingNotationConverter +instanceKlass org/gradle/api/internal/artifacts/DefaultImmutableModuleIdentifierFactory +instanceKlass org/gradle/composite/internal/DefaultBuildableCompositeBuildContext +instanceKlass org/gradle/tooling/internal/provider/serialization/DefaultPayloadClassLoaderRegistry$DetailsToClassLoaderTransformer +instanceKlass org/gradle/tooling/internal/provider/serialization/DefaultPayloadClassLoaderRegistry$ClassLoaderToDetailsTransformer +instanceKlass org/gradle/tooling/internal/provider/serialization/DefaultPayloadClassLoaderRegistry +instanceKlass org/gradle/tooling/internal/provider/serialization/ClassLoaderDetails +instanceKlass org/gradle/tooling/internal/provider/serialization/DeserializeMap +instanceKlass org/gradle/tooling/internal/provider/serialization/SerializeMap +instanceKlass org/gradle/tooling/internal/provider/serialization/WellKnownClassLoaderRegistry +instanceKlass java/io/ObjectInput +instanceKlass java/io/ObjectStreamConstants +instanceKlass java/io/ObjectOutput +instanceKlass org/gradle/tooling/internal/provider/serialization/ModelClassLoaderFactory +instanceKlass org/gradle/tooling/internal/provider/serialization/DaemonSidePayloadClassLoaderFactory +instanceKlass org/gradle/internal/file/impl/SingleDepthFileAccessTracker +instanceKlass org/gradle/cache/internal/SingleDepthFilesFinder +instanceKlass org/gradle/cache/internal/UnusedVersionsCacheCleanup$1 +instanceKlass org/gradle/cache/internal/AbstractCacheCleanup +instanceKlass org/gradle/cache/internal/CompositeCleanupAction$Builder +instanceKlass org/gradle/cache/internal/CompositeCleanupAction +instanceKlass org/gradle/internal/service/scopes/VirtualFileSystemServices$GradleUserHomeServices$3 +instanceKlass java/util/function/Predicate$$Lambda$112 +instanceKlass org/gradle/internal/snapshot/impl/DirectorySnapshotter$DefaultExcludes$$Lambda$111 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/internal/snapshot/impl/DirectorySnapshotter$DefaultExcludes$$Lambda$110 +instanceKlass org/gradle/internal/snapshot/impl/DirectorySnapshotter$DefaultExcludes$$Lambda$109 +instanceKlass org/gradle/internal/snapshot/impl/DirectorySnapshotter$DefaultExcludes$$Lambda$108 +instanceKlass java/util/function/Predicate$$Lambda$107 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/internal/snapshot/impl/DirectorySnapshotter$DefaultExcludes$EndMatcher +instanceKlass org/gradle/internal/snapshot/impl/DirectorySnapshotter$DefaultExcludes$StartMatcher +instanceKlass org/gradle/internal/snapshot/impl/DirectorySnapshotter$DefaultExcludes +instanceKlass org/gradle/internal/snapshot/impl/DirectorySnapshotter$1 +instanceKlass java/nio/file/FileVisitor +instanceKlass org/gradle/internal/snapshot/impl/DirectorySnapshotter$SymbolicLinkMapping +instanceKlass org/gradle/internal/snapshot/impl/DirectorySnapshotter +instanceKlass com/google/common/util/concurrent/Striped$1 +instanceKlass com/google/common/util/concurrent/Striped$6 +instanceKlass java/util/concurrent/locks/ReadWriteLock +instanceKlass com/google/common/util/concurrent/Striped$5 +instanceKlass com/google/common/util/concurrent/Striped +instanceKlass org/gradle/internal/vfs/impl/DefaultFileSystemAccess$StripedProducerGuard +instanceKlass java/nio/file/attribute/PosixFilePermissions$1 +instanceKlass java/nio/file/attribute/PosixFilePermissions +instanceKlass org/apache/tools/ant/util/FileUtils +instanceKlass org/apache/tools/ant/taskdefs/condition/Os +instanceKlass org/apache/tools/ant/taskdefs/condition/Condition +instanceKlass org/apache/tools/ant/types/resources/Appendable +instanceKlass org/apache/tools/ant/types/resources/FileProvider +instanceKlass org/apache/tools/ant/types/resources/Touchable +instanceKlass org/apache/tools/ant/ProjectComponent +instanceKlass org/apache/tools/ant/types/ResourceCollection +instanceKlass org/apache/tools/ant/DirectoryScanner +instanceKlass org/apache/tools/ant/types/ResourceFactory +instanceKlass org/apache/tools/ant/types/selectors/SelectorScanner +instanceKlass org/apache/tools/ant/FileScanner +instanceKlass org/gradle/internal/snapshot/FileSystemLocationSnapshot +instanceKlass org/gradle/internal/snapshot/FileSystemSnapshot +instanceKlass org/gradle/internal/snapshot/impl/DirectorySnapshotterStatistics +instanceKlass org/gradle/internal/service/scopes/VirtualFileSystemServices$GradleUserHomeServices$$Lambda$106 +instanceKlass org/gradle/internal/build/BuildAddedListener +instanceKlass org/gradle/internal/service/scopes/VirtualFileSystemServices$GradleUserHomeServices$$Lambda$105 +instanceKlass org/gradle/internal/watch/registry/impl/DaemonDocumentationIndex +instanceKlass org/gradle/internal/watch/registry/FileWatcherRegistry$ChangeHandler +instanceKlass org/gradle/internal/snapshot/SnapshotHierarchy$NodeDiffListener +instanceKlass org/gradle/internal/snapshot/MetadataSnapshot +instanceKlass org/gradle/internal/vfs/impl/AbstractVirtualFileSystem +instanceKlass org/gradle/internal/service/scopes/VirtualFileSystemServices$GradleUserHomeServices$$Lambda$104 +instanceKlass net/rubygrapefruit/platform/internal/jni/AbstractFileEventFunctions$AbstractWatcherBuilder +instanceKlass org/gradle/internal/watch/registry/FileWatcherUpdater +instanceKlass net/rubygrapefruit/platform/file/FileWatcher +instanceKlass org/gradle/internal/watch/registry/FileWatcherRegistry +instanceKlass org/gradle/internal/watch/registry/FileWatcherProbeRegistry +instanceKlass org/gradle/internal/watch/registry/impl/AbstractFileWatcherRegistryFactory +instanceKlass org/gradle/internal/service/scopes/VirtualFileSystemServices$GradleUserHomeServices$$Lambda$103 +instanceKlass org/gradle/internal/snapshot/FileSystemNode +instanceKlass org/gradle/internal/snapshot/ChildMap +instanceKlass org/gradle/internal/vfs/impl/DefaultSnapshotHierarchy$1 +instanceKlass org/gradle/internal/snapshot/ReadOnlyFileSystemNode +instanceKlass org/gradle/internal/vfs/impl/DefaultSnapshotHierarchy +instanceKlass org/gradle/internal/snapshot/SnapshotHierarchy +instanceKlass org/apache/commons/io/filefilter/IOFileFilter +instanceKlass java/io/FilenameFilter +instanceKlass org/apache/commons/io/FileUtils +instanceKlass com/google/common/io/CharSource +instanceKlass com/google/common/hash/PrimitiveSink +instanceKlass com/google/common/io/Closer$SuppressingSuppressor +instanceKlass com/google/common/io/Closer$Suppressor +instanceKlass com/google/common/io/Closer +instanceKlass com/google/common/io/CharSink +instanceKlass java/io/File$TempDirectory +instanceKlass org/gradle/api/internal/file/temp/TempFiles +instanceKlass org/gradle/internal/watch/vfs/impl/DefaultWatchableFileSystemDetector +instanceKlass net/rubygrapefruit/platform/internal/PosixFileSystems +instanceKlass org/gradle/internal/file/FilePathUtil +instanceKlass org/gradle/internal/file/FileHierarchySet$Node +instanceKlass org/gradle/internal/file/FileHierarchySet$NodeVisitor +instanceKlass org/gradle/cache/internal/DefaultGlobalCacheLocations +instanceKlass org/gradle/internal/nativeintegration/services/NativeServices$3 +instanceKlass org/gradle/internal/service/scopes/VirtualFileSystemServices$GradleUserHomeServices$1 +instanceKlass org/gradle/internal/file/FileHierarchySet +instanceKlass org/gradle/internal/hash/DefaultFileHasher +instanceKlass org/gradle/api/internal/changedetection/state/CachingFileHasher +instanceKlass com/google/common/collect/MapMakerInternalMap$WeakKeyDummyValueEntry$Helper +instanceKlass com/google/common/collect/MapMakerInternalMap$InternalEntry +instanceKlass com/google/common/collect/MapMakerInternalMap$1 +instanceKlass com/google/common/collect/MapMakerInternalMap$InternalEntryHelper +instanceKlass com/google/common/collect/MapMakerInternalMap$WeakValueReference +instanceKlass com/google/common/collect/Interners$InternerImpl +instanceKlass com/google/common/collect/MapMaker +instanceKlass com/google/common/collect/Interners$InternerBuilder +instanceKlass com/google/common/collect/Interners +instanceKlass org/gradle/internal/hash/HashCode +instanceKlass com/google/common/base/Charsets +instanceKlass org/gradle/internal/hash/Hashing$MessageDigestHasher +instanceKlass org/gradle/internal/hash/Hashing$DefaultHasher +instanceKlass org/gradle/internal/hash/PrimitiveHasher +instanceKlass org/gradle/internal/hash/Hasher +instanceKlass org/gradle/internal/hash/Hashing$MessageDigestHashFunction +instanceKlass org/gradle/internal/hash/HashFunction +instanceKlass org/gradle/internal/hash/Hashing +instanceKlass org/gradle/internal/hash/DefaultStreamHasher +instanceKlass org/gradle/api/internal/changedetection/state/FileTimeStampInspector$$Lambda$102 +instanceKlass org/gradle/api/internal/changedetection/state/FileHasherStatistics +instanceKlass org/apache/commons/lang/StringUtils +instanceKlass org/gradle/api/internal/artifacts/ivyservice/DefaultArtifactCaches$$Lambda$101 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/WritableArtifactCacheLockingManager +instanceKlass org/gradle/api/internal/artifacts/ivyservice/DefaultArtifactCaches$LateInitWritableArtifactCacheLockingManager +instanceKlass com/google/common/primitives/IntsMethodsForWeb +instanceKlass org/apache/commons/lang/ArrayUtils +instanceKlass org/gradle/cache/internal/CacheVersion +instanceKlass java/lang/Character$CharacterCache +instanceKlass org/gradle/util/internal/DefaultGradleVersion$Stage +instanceKlass org/gradle/cache/internal/CacheVersionMapping$Builder +instanceKlass org/gradle/cache/internal/CacheVersionMapping$1 +instanceKlass org/gradle/cache/internal/CacheVersionMapping +instanceKlass org/gradle/api/internal/artifacts/ivyservice/DefaultArtifactCacheMetadata +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ArtifactCacheLockingManager +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ArtifactCacheMetadata +instanceKlass org/gradle/api/internal/artifacts/ivyservice/DefaultArtifactCaches +instanceKlass org/gradle/api/internal/artifacts/DependencyManagementGradleUserHomeScopeServices$1 +instanceKlass org/gradle/api/internal/changedetection/state/DefaultFileAccessTimeJournal$$Lambda$100 +instanceKlass org/gradle/cache/internal/DefaultCacheAccess$IndexedCacheEntry +instanceKlass org/gradle/cache/internal/locklistener/FileLockPacketPayload +instanceKlass java/net/DatagramPacket$1 +instanceKlass org/gradle/cache/internal/locklistener/DefaultFileLockContentionHandler$ContendedAction +instanceKlass org/gradle/cache/internal/locklistener/DefaultFileLockContentionHandler$1 +instanceKlass org/gradle/internal/Factories$1 +instanceKlass org/gradle/internal/Factories +instanceKlass org/gradle/cache/internal/CrossProcessSynchronizingCache +instanceKlass org/gradle/cache/internal/InMemoryDecoratedCache +instanceKlass org/gradle/cache/internal/InMemoryCacheController +instanceKlass com/google/common/cache/LongAddables$1 +instanceKlass com/google/common/cache/Striped64$Cell +instanceKlass com/google/common/cache/Striped64$1 +instanceKlass com/google/common/cache/LongAddable +instanceKlass com/google/common/cache/LongAddables +instanceKlass com/google/common/cache/AbstractCache$SimpleStatsCounter +instanceKlass org/gradle/cache/internal/LoggingEvictionListener +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/cache/internal/DefaultInMemoryCacheDecoratorFactory$$Lambda$99 +instanceKlass org/gradle/cache/internal/DefaultInMemoryCacheDecoratorFactory$CacheDetails +instanceKlass org/gradle/cache/internal/AsyncCacheAccessDecoratedCache +instanceKlass org/gradle/cache/internal/CacheAccessWorker +instanceKlass org/gradle/cache/internal/DefaultMultiProcessSafePersistentIndexedCache +instanceKlass org/gradle/cache/internal/DefaultCacheAccess$$Lambda$98 +instanceKlass org/gradle/cache/internal/btree/BTreePersistentIndexedCache +instanceKlass org/gradle/cache/internal/DefaultInMemoryCacheDecoratorFactory$InMemoryCacheDecorator +instanceKlass org/gradle/cache/PersistentIndexedCacheParameters +instanceKlass org/gradle/api/internal/changedetection/state/DefaultFileAccessTimeJournal +instanceKlass org/gradle/cache/internal/MultiProcessSafeAsyncPersistentIndexedCache +instanceKlass org/gradle/cache/CacheDecorator +instanceKlass org/gradle/cache/internal/DefaultInMemoryCacheDecoratorFactory +instanceKlass org/gradle/cache/internal/DefaultCacheFactory$ReferenceTrackingCache +instanceKlass org/gradle/cache/internal/DefaultCacheFactory$DirCacheReference +instanceKlass org/gradle/cache/internal/cacheops/CacheOperationStack +instanceKlass org/gradle/cache/internal/LockOnDemandCrossProcessCacheAccess$ContendedAction +instanceKlass org/gradle/cache/internal/LockOnDemandCrossProcessCacheAccess$UnlockAction +instanceKlass org/gradle/cache/internal/DefaultCacheAccess$1 +instanceKlass org/gradle/cache/internal/DefaultCacheAccess$$Lambda$97 +instanceKlass org/gradle/cache/internal/DefaultCacheAccess$$Lambda$96 +instanceKlass org/gradle/cache/internal/cacheops/CacheAccessOperationsStack +instanceKlass org/gradle/cache/internal/DefaultPersistentDirectoryStore$Cleanup +instanceKlass org/gradle/cache/internal/DefaultPersistentDirectoryStore$1 +instanceKlass org/gradle/cache/internal/DefaultPersistentDirectoryStore$2 +instanceKlass org/gradle/cache/internal/DefaultCacheAccess$$Lambda$95 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/cache/AsyncCacheAccess +instanceKlass org/gradle/cache/MultiProcessSafePersistentIndexedCache +instanceKlass org/gradle/cache/UnitOfWorkParticipant +instanceKlass org/gradle/cache/PersistentIndexedCache +instanceKlass org/gradle/cache/internal/AbstractCrossProcessCacheAccess +instanceKlass org/gradle/cache/CrossProcessCacheAccess +instanceKlass org/gradle/cache/internal/DefaultCacheAccess +instanceKlass org/gradle/cache/internal/CacheCoordinator +instanceKlass org/gradle/cache/internal/CacheCleanupAction +instanceKlass org/gradle/cache/internal/CacheInitializationAction +instanceKlass org/gradle/cache/internal/DefaultPersistentDirectoryStore +instanceKlass org/gradle/cache/internal/DefaultCacheRepository$PersistentCacheBuilder +instanceKlass org/gradle/cache/internal/scopes/DefaultCacheScopeMapping$1 +instanceKlass org/gradle/internal/operations/notify/BuildOperationNotificationBridge$Progress +instanceKlass org/gradle/internal/operations/OperationProgressEvent +instanceKlass org/gradle/initialization/BuildOptionBuildOperationProgressEventsEmitter$1 +instanceKlass org/gradle/internal/configurationcache/options/ConfigurationCacheSettingsFinalizedProgressDetails +instanceKlass org/gradle/launcher/exec/BuildTreeLifecycleBuildActionExecutor$$Lambda$94 +instanceKlass org/gradle/internal/buildtree/DefaultBuildTreeContext +instanceKlass org/gradle/internal/buildtree/BuildTreeContext +instanceKlass org/gradle/configurationcache/VintageBuildTreeLifecycleControllerFactory +instanceKlass org/gradle/internal/buildtree/BuildTreeLifecycleControllerFactory +instanceKlass org/gradle/configurationcache/initialization/AbstractInjectedClasspathInstrumentationStrategy +instanceKlass org/gradle/plugin/use/resolve/service/internal/InjectedClasspathInstrumentationStrategy +instanceKlass org/gradle/internal/buildtree/BuildInclusionCoordinator +instanceKlass org/gradle/initialization/BuildOptionBuildOperationProgressEventsEmitter +instanceKlass org/gradle/internal/buildtree/BuildTreeLifecycleListener +instanceKlass org/gradle/internal/build/BuildLifecycleController +instanceKlass org/gradle/internal/build/DefaultBuildLifecycleControllerFactory +instanceKlass org/gradle/internal/build/BuildLifecycleControllerFactory +instanceKlass org/gradle/tooling/internal/provider/runner/AbstractClientProvidedBuildActionRunner$ClientAction +instanceKlass org/gradle/tooling/internal/provider/runner/AbstractClientProvidedBuildActionRunner +instanceKlass org/gradle/tooling/internal/provider/runner/TestExecutionRequestActionRunner +instanceKlass org/gradle/internal/buildtree/BuildTreeModelAction +instanceKlass org/gradle/tooling/internal/provider/runner/BuildModelActionRunner +instanceKlass org/gradle/tooling/internal/provider/runner/BuildControllerFactory +instanceKlass kotlin/coroutines/Continuation +instanceKlass org/gradle/configurationcache/fingerprint/ConfigurationCacheFingerprintController +instanceKlass org/gradle/configurationcache/InstrumentedInputAccessListener +instanceKlass org/gradle/internal/classpath/Instrumented$Listener +instanceKlass org/gradle/configurationcache/ConfigurationCacheRepository +instanceKlass org/gradle/configurationcache/DefaultBuildToolingModelControllerFactory +instanceKlass org/gradle/internal/build/BuildToolingModelControllerFactory +instanceKlass org/gradle/configurationcache/DefaultBuildModelControllerServices +instanceKlass org/gradle/internal/build/BuildModelControllerServices +instanceKlass org/gradle/configurationcache/problems/ProblemsListener +instanceKlass org/gradle/configurationcache/initialization/DefaultConfigurationCacheProblemsListener +instanceKlass org/gradle/configurationcache/initialization/ConfigurationCacheProblemsListener +instanceKlass org/gradle/api/internal/BuildScopeListenerRegistrationListener +instanceKlass org/gradle/api/internal/tasks/execution/TaskExecutionAccessListener +instanceKlass org/gradle/configurationcache/problems/ConfigurationCacheReport +instanceKlass org/gradle/configurationcache/initialization/ConfigurationCacheStartParameter +instanceKlass org/gradle/configurationcache/ConfigurationCacheKey +instanceKlass org/gradle/vcs/internal/VcsResolver +instanceKlass org/gradle/vcs/internal/resolver/VcsVersionSelectionCache +instanceKlass org/gradle/vcs/internal/VcsMappingsStore +instanceKlass org/gradle/vcs/internal/VcsMappingFactory +instanceKlass org/gradle/vcs/internal/VersionControlSpecFactory +instanceKlass org/gradle/vcs/internal/services/VersionControlServices$VersionControlBuildTreeServices +instanceKlass org/gradle/plugins/ide/internal/IdeArtifactStore +instanceKlass org/gradle/internal/enterprise/impl/legacy/DefaultBuildScanBuildStartedTime +instanceKlass org/gradle/internal/scan/time/BuildScanBuildStartedTime +instanceKlass org/gradle/internal/enterprise/impl/legacy/DefaultBuildScanClock +instanceKlass org/gradle/internal/scan/time/BuildScanClock +instanceKlass org/gradle/internal/enterprise/impl/DefaultGradleEnterprisePluginRequiredServices +instanceKlass org/gradle/internal/enterprise/GradleEnterprisePluginRequiredServices +instanceKlass org/gradle/composite/internal/DefaultIncludedBuildTaskGraph +instanceKlass org/gradle/composite/internal/BuildTreeWorkGraphController +instanceKlass org/gradle/internal/build/IncludedBuildState +instanceKlass org/gradle/composite/internal/DefaultIncludedBuildFactory +instanceKlass org/gradle/internal/build/StandAloneNestedBuild +instanceKlass org/gradle/internal/build/NestedBuildState +instanceKlass org/gradle/internal/buildtree/NestedBuildTree +instanceKlass org/gradle/internal/build/RootBuildState +instanceKlass org/gradle/internal/build/BuildActionTarget +instanceKlass org/gradle/internal/build/CompositeBuildParticipantBuildState +instanceKlass org/gradle/composite/internal/DefaultLocalComponentInAnotherBuildProvider +instanceKlass org/gradle/api/internal/artifacts/ivyservice/projectmodule/LocalComponentInAnotherBuildProvider +instanceKlass org/gradle/internal/build/IncludedBuildFactory +instanceKlass org/gradle/composite/internal/BuildStateFactory +instanceKlass org/gradle/api/internal/composite/CompositeBuildContext +instanceKlass org/gradle/api/internal/artifacts/ivyservice/dependencysubstitution/DependencySubstitutionRules +instanceKlass org/gradle/composite/internal/CompositeBuildServices$CompositeBuildTreeScopeServices +instanceKlass org/gradle/api/internal/tasks/compile/processing/AnnotationProcessorDetector +instanceKlass org/gradle/language/java/internal/JavaLanguagePluginServiceRegistry$1 +instanceKlass org/gradle/util/internal/BuildCommencedTimeProvider +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/StartParameterResolutionOverride +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/store/ResolutionResultsStoreFactory +instanceKlass org/gradle/api/internal/artifacts/DependencyManagementBuildTreeScopeServices +instanceKlass org/gradle/caching/internal/controller/RootBuildCacheControllerRef +instanceKlass org/gradle/caching/internal/BuildCacheServices$1 +instanceKlass org/gradle/internal/enterprise/core/GradleEnterprisePluginManager +instanceKlass org/gradle/internal/build/BuildStateRegistry +instanceKlass org/gradle/internal/buildtree/BuildTreeActionExecutor +instanceKlass org/gradle/tooling/internal/provider/LauncherServices$ToolingBuildTreeScopeServices +instanceKlass org/gradle/api/internal/project/DefaultProjectStateRegistry +instanceKlass org/gradle/api/internal/project/ProjectStateRegistry +instanceKlass org/gradle/api/internal/provider/ConfigurationTimeBarrier +instanceKlass org/gradle/problems/buildtree/ProblemReporter +instanceKlass org/gradle/internal/buildtree/BuildTreeScopeServices +instanceKlass org/gradle/internal/buildtree/BuildTreeState +instanceKlass org/gradle/configurationcache/DefaultBuildTreeModelControllerServices$servicesForBuildTree$1 +instanceKlass org/gradle/internal/buildtree/BuildTreeModelControllerServices$Supplier +instanceKlass org/gradle/internal/buildtree/BuildModelParameters +instanceKlass org/gradle/internal/buildtree/RunTasksRequirements +instanceKlass org/gradle/initialization/layout/BuildLayoutConfiguration +instanceKlass org/gradle/internal/logging/sink/ProgressLogEventGenerator$Operation +instanceKlass org/gradle/internal/logging/progress/DefaultProgressLoggerFactory$ProgressLoggerImpl +instanceKlass org/gradle/internal/operations/notify/BuildOperationNotificationBridge$Started +instanceKlass org/gradle/api/internal/tasks/RegisterTaskBuildOperationType$Details +instanceKlass org/gradle/api/internal/tasks/RealizeTaskBuildOperationType$Details +instanceKlass org/gradle/api/internal/ExecuteDomainObjectCollectionCallbackBuildOperationType$Details +instanceKlass org/gradle/configuration/internal/ExecuteListenerBuildOperationType$Details +instanceKlass org/gradle/configuration/ApplyScriptPluginBuildOperationType$Details +instanceKlass org/gradle/api/internal/plugins/ApplyPluginBuildOperationType$Details +instanceKlass org/gradle/internal/operations/OperationStartEvent +instanceKlass org/gradle/internal/operations/DefaultBuildOperationRunner$DefaultBuildOperationContext +instanceKlass org/gradle/internal/operations/DefaultBuildOperationExecutor$ListenerAdapter +instanceKlass org/gradle/internal/operations/DefaultBuildOperationRunner$BuildOperationTrackingListener +instanceKlass org/gradle/internal/operations/BuildOperationState +instanceKlass org/gradle/internal/operations/OperationIdentifier +instanceKlass org/gradle/internal/operations/DefaultBuildOperationRunner$2 +instanceKlass org/gradle/internal/operations/BuildOperationMetadata$1 +instanceKlass org/gradle/internal/operations/BuildOperationDescriptor$Builder +instanceKlass org/gradle/internal/operations/BuildOperationDescriptor +instanceKlass org/gradle/internal/operations/DefaultBuildOperationRunner$CallableBuildOperationWorker +instanceKlass org/gradle/launcher/exec/RunAsBuildOperationBuildActionExecutor$3 +instanceKlass org/gradle/internal/operations/notify/BuildOperationProgressNotification +instanceKlass org/gradle/internal/operations/notify/BuildOperationFinishedNotification +instanceKlass org/gradle/internal/operations/notify/BuildOperationStartedNotification +instanceKlass org/gradle/internal/operations/notify/BuildOperationNotificationBridge$Adapter +instanceKlass org/gradle/internal/operations/notify/BuildOperationNotificationBridge$RecordingListener +instanceKlass org/gradle/internal/operations/notify/BuildOperationNotificationBridge$ReplayAndAttachListener +instanceKlass org/gradle/internal/operations/notify/BuildOperationNotificationListener +instanceKlass org/gradle/internal/operations/notify/BuildOperationNotificationBridge$State +instanceKlass org/gradle/internal/resources/DefaultResourceLockCoordinationService$AcquireLocks +instanceKlass org/gradle/internal/resources/DefaultResourceLockCoordinationService$2 +instanceKlass org/gradle/internal/resources/DefaultResourceLockCoordinationService$DefaultResourceLockState +instanceKlass org/gradle/internal/resources/ResourceLockState +instanceKlass org/gradle/internal/work/DefaultWorkerLeaseService$3 +instanceKlass com/google/common/collect/Iterables +instanceKlass com/google/common/util/concurrent/AbstractFuture$Failure +instanceKlass com/google/common/util/concurrent/AbstractFuture$Cancellation +instanceKlass com/google/common/util/concurrent/AbstractFuture$SetFuture +instanceKlass com/google/common/util/concurrent/Uninterruptibles +instanceKlass com/google/common/base/CommonPattern +instanceKlass com/google/common/base/Platform$JdkPatternCompiler +instanceKlass com/google/common/base/PatternCompiler +instanceKlass com/google/common/base/Platform +instanceKlass com/google/common/base/Stopwatch +instanceKlass com/google/common/util/concurrent/AbstractFuture$Waiter +instanceKlass com/google/common/util/concurrent/AbstractFuture$Listener +instanceKlass com/google/common/util/concurrent/AbstractFuture$UnsafeAtomicHelper$1 +instanceKlass sun/misc/Unsafe +instanceKlass com/google/common/util/concurrent/AbstractFuture$AtomicHelper +instanceKlass com/google/common/util/concurrent/internal/InternalFutureFailureAccess +instanceKlass com/google/common/util/concurrent/AbstractFuture$Trusted +instanceKlass com/google/common/util/concurrent/ListenableFuture +instanceKlass org/gradle/internal/resources/AbstractResourceLockRegistry$1 +instanceKlass org/gradle/internal/work/DefaultWorkerLeaseService$WorkerLeaseLockRegistry$1 +instanceKlass org/gradle/internal/resources/AbstractResourceLockRegistry$ThreadLockDetails +instanceKlass org/gradle/launcher/exec/RunAsWorkerThreadBuildActionExecutor$$Lambda$93 +instanceKlass org/gradle/internal/buildtree/BuildActionRunner$Result +instanceKlass org/gradle/workers/internal/ExecuteWorkItemBuildOperationType$Details +instanceKlass org/gradle/api/internal/artifacts/transform/ExecuteScheduledTransformationStepBuildOperationDetails +instanceKlass org/gradle/api/internal/artifacts/transform/ExecuteScheduledTransformationStepBuildOperationType$Details +instanceKlass org/gradle/api/internal/tasks/execution/ExecuteTaskBuildOperationDetails +instanceKlass org/gradle/internal/operations/trace/CustomOperationTraceSerialization +instanceKlass org/gradle/api/internal/tasks/execution/ExecuteTaskBuildOperationType$Details +instanceKlass org/gradle/configuration/project/ConfigureProjectBuildOperationType$Details +instanceKlass org/gradle/api/internal/tasks/testing/operations/ExecuteTestBuildOperationType$Details +instanceKlass org/gradle/internal/resource/ExternalResourceReadBuildOperationType$Details +instanceKlass org/gradle/tooling/internal/provider/runner/ClientBuildEventGenerator$Mapper +instanceKlass org/gradle/tooling/internal/provider/runner/ClientBuildEventGenerator$Operation +instanceKlass org/gradle/tooling/internal/provider/runner/ClientBuildEventGenerator +instanceKlass org/gradle/tooling/internal/protocol/events/InternalWorkItemDescriptor +instanceKlass org/gradle/tooling/internal/provider/runner/WorkItemOperationMapper +instanceKlass org/gradle/tooling/internal/protocol/events/InternalProjectConfigurationDescriptor +instanceKlass org/gradle/tooling/internal/protocol/events/InternalProjectConfigurationResult +instanceKlass org/gradle/tooling/internal/provider/runner/ProjectConfigurationOperationMapper +instanceKlass org/gradle/tooling/internal/protocol/events/InternalTestFailureResult +instanceKlass org/gradle/tooling/internal/protocol/events/InternalTestSkippedResult +instanceKlass org/gradle/tooling/internal/protocol/events/InternalTestSuccessResult +instanceKlass org/gradle/tooling/internal/protocol/events/InternalTestResult +instanceKlass org/gradle/tooling/internal/provider/runner/TestOperationMapper +instanceKlass org/gradle/tooling/internal/protocol/events/InternalFileDownloadDescriptor +instanceKlass org/gradle/tooling/internal/protocol/events/InternalFileDownloadResult +instanceKlass org/gradle/tooling/internal/provider/runner/FileDownloadOperationMapper +instanceKlass org/gradle/tooling/internal/provider/runner/TaskOperationMapper$PostProcessors +instanceKlass org/gradle/tooling/internal/protocol/events/InternalTaskFailureResult +instanceKlass org/gradle/tooling/internal/protocol/events/InternalFailureResult +instanceKlass org/gradle/tooling/internal/protocol/events/InternalTaskSkippedResult +instanceKlass org/gradle/tooling/internal/provider/runner/TaskOperationMapper +instanceKlass org/gradle/tooling/internal/protocol/events/InternalJavaCompileTaskOperationResult$InternalAnnotationProcessorResult +instanceKlass org/gradle/tooling/internal/protocol/events/InternalTaskCachedResult +instanceKlass org/gradle/tooling/internal/protocol/events/InternalTaskSuccessResult +instanceKlass org/gradle/tooling/internal/protocol/events/InternalSuccessResult +instanceKlass org/gradle/tooling/internal/protocol/events/InternalJavaCompileTaskOperationResult +instanceKlass org/gradle/internal/build/event/types/AbstractResult +instanceKlass org/gradle/tooling/internal/protocol/events/InternalIncrementalTaskResult +instanceKlass org/gradle/tooling/internal/protocol/events/InternalTaskResult +instanceKlass org/gradle/tooling/internal/protocol/events/InternalOperationResult +instanceKlass org/gradle/api/internal/tasks/compile/tooling/JavaCompileTaskSuccessResultPostProcessor +instanceKlass org/gradle/internal/build/event/OperationResultPostProcessor +instanceKlass org/gradle/tooling/internal/protocol/events/InternalOperationStartedProgressEvent +instanceKlass org/gradle/execution/plan/SelfExecutingNode +instanceKlass org/gradle/execution/plan/Node +instanceKlass org/gradle/tooling/internal/protocol/events/InternalOperationFinishedProgressEvent +instanceKlass org/gradle/tooling/internal/protocol/events/InternalProgressEvent +instanceKlass org/gradle/tooling/internal/protocol/events/InternalTransformDescriptor +instanceKlass org/gradle/internal/build/event/types/DefaultOperationDescriptor +instanceKlass org/gradle/tooling/internal/protocol/events/InternalOperationDescriptor +instanceKlass org/gradle/tooling/internal/provider/runner/TransformOperationMapper +instanceKlass org/gradle/tooling/internal/provider/runner/BuildOperationMapper +instanceKlass org/gradle/tooling/internal/provider/runner/TaskOriginTracker +instanceKlass org/gradle/tooling/internal/provider/runner/ProjectConfigurationTracker +instanceKlass org/gradle/api/Task +instanceKlass org/gradle/api/plugins/ExtensionAware +instanceKlass org/gradle/tooling/internal/provider/runner/TestTaskExecutionTracker +instanceKlass org/gradle/tooling/internal/protocol/events/InternalScriptPluginIdentifier +instanceKlass org/gradle/tooling/internal/protocol/events/InternalBinaryPluginIdentifier +instanceKlass org/gradle/tooling/internal/protocol/events/InternalPluginIdentifier +instanceKlass org/gradle/tooling/internal/provider/runner/PluginApplicationTracker +instanceKlass org/gradle/tooling/internal/provider/runner/BuildOperationTracker +instanceKlass org/gradle/tooling/internal/provider/runner/OperationDependenciesResolver +instanceKlass org/gradle/tooling/internal/provider/runner/ProgressEventConsumer +instanceKlass org/gradle/internal/buildtree/BuildActionModelRequirements +instanceKlass org/gradle/launcher/exec/BuildTreeLifecycleBuildActionExecutor +instanceKlass org/gradle/launcher/exec/RunAsBuildOperationBuildActionExecutor$2 +instanceKlass org/gradle/launcher/exec/RunAsBuildOperationBuildActionExecutor$1 +instanceKlass org/gradle/launcher/exec/RunBuildBuildOperationType$Result +instanceKlass org/gradle/launcher/exec/RunBuildBuildOperationType$Details +instanceKlass org/gradle/launcher/exec/RunAsBuildOperationBuildActionExecutor +instanceKlass org/gradle/launcher/exec/RunAsWorkerThreadBuildActionExecutor +instanceKlass org/gradle/execution/CancellableOperationManager +instanceKlass org/gradle/internal/filewatch/FileWatcherEventListener +instanceKlass org/gradle/tooling/internal/provider/ContinuousBuildActionExecutor +instanceKlass org/gradle/tooling/internal/provider/SubscribableBuildActionExecutor +instanceKlass org/gradle/internal/scripts/ScriptingLanguages$1 +instanceKlass org/gradle/scripts/ScriptingLanguage +instanceKlass org/gradle/internal/scripts/ScriptingLanguages +instanceKlass org/gradle/BuildAdapter +instanceKlass org/gradle/internal/InternalBuildListener +instanceKlass org/gradle/internal/InternalListener +instanceKlass org/gradle/internal/operations/notify/BuildOperationNotificationBridge$1 +instanceKlass org/gradle/BuildListener +instanceKlass org/gradle/deployment/internal/DefaultDeploymentRegistry$PendingChanges +instanceKlass org/gradle/initialization/ContinuousExecutionGate$GateKeeper +instanceKlass org/gradle/initialization/DefaultContinuousExecutionGate +instanceKlass org/gradle/internal/operations/CallableBuildOperation +instanceKlass org/gradle/initialization/ContinuousExecutionGate +instanceKlass org/gradle/api/file/SourceDirectorySet +instanceKlass org/gradle/api/internal/model/DefaultObjectFactory +instanceKlass org/gradle/api/internal/model/NamedObjectInstantiator$$Lambda$92 +instanceKlass org/gradle/internal/state/Managed +instanceKlass com/google/common/base/ExtraObjectsMethodsForWeb +instanceKlass org/gradle/model/internal/inspect/ValidationProblemCollector +instanceKlass org/gradle/api/internal/MutationGuards$1 +instanceKlass org/gradle/api/internal/MutationGuard +instanceKlass org/gradle/api/internal/MutationGuards +instanceKlass org/gradle/api/internal/CollectionCallbackActionDecorator$1 +instanceKlass org/gradle/api/internal/collections/DefaultDomainObjectCollectionFactory +instanceKlass org/gradle/api/file/Directory +instanceKlass org/gradle/api/file/RegularFile +instanceKlass org/gradle/api/file/FileSystemLocation +instanceKlass org/gradle/api/internal/tasks/DefaultTaskDependencyFactory +instanceKlass org/gradle/api/internal/file/FileCollectionInternal$1 +instanceKlass org/gradle/api/file/FileVisitor +instanceKlass org/gradle/api/tasks/TaskDependency +instanceKlass org/gradle/api/internal/file/FileCollectionStructureVisitor +instanceKlass org/gradle/api/internal/file/FileCollectionInternal$Source +instanceKlass org/gradle/api/internal/file/AbstractFileCollection +instanceKlass org/gradle/api/internal/file/FileTreeInternal +instanceKlass org/gradle/api/internal/file/collections/MinimalFileTree +instanceKlass org/gradle/api/internal/file/collections/MinimalFileCollection +instanceKlass org/gradle/api/internal/file/DefaultFileCollectionFactory +instanceKlass org/gradle/internal/exceptions/DiagnosticsVisitor +instanceKlass org/gradle/internal/typeconversion/ErrorHandlingNotationParser +instanceKlass org/gradle/internal/typeconversion/NotationConvertResult +instanceKlass org/gradle/internal/typeconversion/NotationConverterToNotationParserAdapter +instanceKlass org/gradle/internal/typeconversion/TypeInfo +instanceKlass org/gradle/internal/typeconversion/NotationParserBuilder +instanceKlass org/gradle/api/internal/file/FileOrUriNotationConverter +instanceKlass org/gradle/api/internal/file/AbstractFileResolver +instanceKlass org/gradle/api/internal/provider/DefaultPropertyFactory +instanceKlass org/gradle/api/internal/provider/PropertyHost$$Lambda$91 +instanceKlass org/gradle/internal/state/ModelObject +instanceKlass org/gradle/api/internal/file/collections/DefaultDirectoryFileTreeFactory +instanceKlass org/gradle/api/tasks/util/internal/PatternSets$PatternSetFactory +instanceKlass org/gradle/api/tasks/util/internal/PatternSets +instanceKlass com/google/common/cache/LocalCache$AbstractReferenceEntry +instanceKlass org/gradle/cache/internal/HeapProportionalCacheSizer +instanceKlass org/gradle/internal/instantiation/generator/DefaultInstantiationScheme$DefaultDeserializationInstantiator +instanceKlass org/gradle/internal/instantiation/InstanceFactory +instanceKlass org/gradle/internal/instantiation/generator/DependencyInjectingInstantiator +instanceKlass javax/inject/Inject +instanceKlass org/gradle/internal/instantiation/DeserializationInstantiator +instanceKlass org/gradle/internal/instantiation/generator/DefaultInstantiationScheme +instanceKlass org/gradle/internal/instantiation/generator/ParamsMatchingConstructorSelector +instanceKlass org/gradle/internal/instantiation/generator/Jsr330ConstructorSelector +instanceKlass com/google/common/collect/ImmutableMultimap$Builder +instanceKlass com/google/common/collect/Multiset +instanceKlass org/gradle/internal/instantiation/generator/AbstractClassGenerator$$Lambda$90 +instanceKlass org/gradle/internal/instantiation/generator/AbstractClassGenerator$GeneratedClassImpl +instanceKlass org/gradle/internal/instantiation/generator/ClassGenerator$GeneratedClass +instanceKlass org/gradle/cache/internal/DefaultCrossBuildInMemoryCacheFactory$AbstractCrossBuildInMemoryCache +instanceKlass org/gradle/model/internal/asm/ClassGeneratorSuffixRegistry +instanceKlass org/gradle/api/DomainObjectSet +instanceKlass org/gradle/api/NamedDomainObjectContainer +instanceKlass org/gradle/util/Configurable +instanceKlass org/gradle/api/NamedDomainObjectSet +instanceKlass org/gradle/api/NamedDomainObjectCollection +instanceKlass org/gradle/api/DomainObjectCollection +instanceKlass org/gradle/api/file/DirectoryProperty +instanceKlass org/gradle/api/file/RegularFileProperty +instanceKlass org/gradle/api/file/FileSystemLocationProperty +instanceKlass org/gradle/api/provider/Property +instanceKlass org/gradle/api/provider/MapProperty +instanceKlass org/gradle/api/provider/SetProperty +instanceKlass org/gradle/api/provider/ListProperty +instanceKlass org/gradle/api/provider/HasMultipleValues +instanceKlass org/gradle/api/provider/Provider +instanceKlass org/gradle/api/file/ConfigurableFileTree +instanceKlass org/gradle/api/file/DirectoryTree +instanceKlass org/gradle/api/file/FileTree +instanceKlass org/gradle/api/file/ConfigurableFileCollection +instanceKlass org/gradle/api/provider/HasConfigurableValue +instanceKlass org/gradle/internal/instantiation/generator/AbstractClassGenerator$InstantiationStrategy +instanceKlass org/gradle/internal/instantiation/generator/AbstractClassGenerator$ClassInspectionVisitor +instanceKlass org/gradle/internal/instantiation/generator/AbstractClassGenerator$UnclaimedPropertyHandler +instanceKlass com/google/common/reflect/TypeCapture +instanceKlass com/google/common/collect/AbstractMultimap +instanceKlass org/gradle/internal/instantiation/generator/AbstractClassGenerator +instanceKlass org/gradle/internal/instantiation/generator/ClassGenerator +instanceKlass org/gradle/api/internal/tasks/properties/annotations/OutputPropertyRoleAnnotationHandler +instanceKlass org/gradle/internal/instantiation/generator/DefaultInstantiatorFactory$ClassGeneratorBackedManagedFactory +instanceKlass org/gradle/internal/instantiation/InstantiationScheme +instanceKlass org/gradle/internal/instantiation/generator/ConstructorSelector +instanceKlass org/gradle/internal/instantiation/generator/DefaultInstantiatorFactory +instanceKlass org/gradle/cache/internal/CrossBuildInMemoryCache +instanceKlass org/gradle/cache/internal/DefaultCrossBuildInMemoryCacheFactory +instanceKlass org/gradle/internal/filewatch/FileSystemChangeWaiter +instanceKlass org/gradle/internal/filewatch/DefaultFileSystemChangeWaiterFactory +instanceKlass org/gradle/internal/filewatch/DefaultFileWatcherFactory +instanceKlass org/gradle/api/execution/internal/TaskInputsListener +instanceKlass org/gradle/api/execution/internal/DefaultTaskInputsListeners +instanceKlass org/gradle/internal/operations/DefaultBuildOperationExecutor$$Lambda$89 +instanceKlass org/gradle/internal/operations/DefaultBuildOperationRunner$BuildOperationExecutionListenerFactory +instanceKlass org/gradle/internal/operations/DefaultBuildOperationExecutor$$Lambda$88 +instanceKlass org/gradle/internal/operations/DefaultBuildOperationRunner$TimeSupplier +instanceKlass org/gradle/internal/operations/DefaultBuildOperationRunner$1 +instanceKlass org/gradle/internal/operations/DefaultBuildOperationRunner$ReadableBuildOperationContext +instanceKlass org/gradle/internal/operations/BuildOperationContext +instanceKlass org/gradle/internal/operations/DefaultBuildOperationRunner$BuildOperationExecution +instanceKlass org/gradle/internal/operations/BuildOperation +instanceKlass org/gradle/internal/operations/BuildOperationWorker +instanceKlass org/gradle/internal/operations/DefaultBuildOperationRunner +instanceKlass org/gradle/internal/operations/BuildOperationQueue +instanceKlass org/gradle/internal/operations/DefaultBuildOperationQueueFactory +instanceKlass org/gradle/internal/operations/BuildOperationRef +instanceKlass org/gradle/internal/operations/BuildOperationQueue$QueueWorker +instanceKlass org/gradle/internal/operations/DefaultBuildOperationRunner$BuildOperationExecutionListener +instanceKlass org/gradle/internal/operations/DefaultBuildOperationExecutor +instanceKlass org/gradle/internal/resources/AbstractTrackedResourceLock +instanceKlass java/util/concurrent/atomic/AtomicReferenceArray +instanceKlass com/google/common/cache/LocalCache$LoadingValueReference +instanceKlass com/google/common/cache/RemovalListener +instanceKlass com/google/common/cache/Weigher +instanceKlass com/google/common/base/Equivalence +instanceKlass java/util/function/BiPredicate +instanceKlass com/google/common/base/MoreObjects +instanceKlass com/google/common/cache/LocalCache$1 +instanceKlass com/google/common/cache/ReferenceEntry +instanceKlass com/google/common/cache/CacheLoader +instanceKlass com/google/common/cache/LocalCache$LocalManualCache +instanceKlass com/google/common/cache/LocalCache$ValueReference +instanceKlass com/google/common/cache/CacheBuilder$2 +instanceKlass com/google/common/cache/CacheStats +instanceKlass com/google/common/base/Suppliers$SupplierOfInstance +instanceKlass com/google/common/base/Suppliers +instanceKlass com/google/common/cache/CacheBuilder$1 +instanceKlass com/google/common/cache/AbstractCache$StatsCounter +instanceKlass com/google/common/cache/LoadingCache +instanceKlass com/google/common/cache/Cache +instanceKlass com/google/common/base/Ticker +instanceKlass com/google/common/base/Supplier +instanceKlass com/google/common/cache/CacheBuilder +instanceKlass org/gradle/internal/resources/AbstractResourceLockRegistry$ResourceLockProducer +instanceKlass org/gradle/internal/resources/AbstractResourceLockRegistry +instanceKlass org/gradle/internal/resources/ResourceLockContainer +instanceKlass org/gradle/internal/resources/ResourceLockRegistry +instanceKlass org/gradle/internal/work/DefaultWorkerLeaseService$ProjectLockStatisticsImpl +instanceKlass org/gradle/internal/resources/ProjectLockStatistics +instanceKlass org/gradle/internal/work/DefaultWorkerLeaseService$Root +instanceKlass org/gradle/internal/resources/DefaultResourceLockCoordinationService +instanceKlass org/gradle/tooling/internal/provider/runner/ToolingApiBuildEventListenerFactory$1 +instanceKlass org/gradle/internal/operations/DefaultBuildOperationListenerManager$ProgressShieldingBuildOperationListener +instanceKlass org/gradle/internal/operations/DefaultBuildOperationAncestryTracker +instanceKlass org/gradle/internal/reflect/AnnotationCategory +instanceKlass org/gradle/language/java/internal/JavaLanguagePluginServiceRegistry$JavaGlobalScopeServices$$Lambda$87 +instanceKlass sun/invoke/util/VerifyAccess$1 +instanceKlass org/gradle/internal/session/BuildSessionLifecycleListener +instanceKlass org/gradle/internal/session/DefaultBuildSessionContext +instanceKlass org/gradle/internal/session/BuildSessionContext +instanceKlass org/gradle/internal/scopeids/PersistentScopeIdStoreFactory +instanceKlass org/gradle/internal/scopeids/ScopeIdsServices +instanceKlass com/google/common/collect/ListMultimap +instanceKlass org/gradle/internal/work/DefaultAsyncWorkTracker +instanceKlass org/gradle/internal/work/AsyncWorkTracker +instanceKlass org/gradle/internal/exceptions/FailureResolutionAware +instanceKlass org/gradle/internal/model/StateTransitionControllerFactory +instanceKlass org/gradle/internal/model/ValueCalculator +instanceKlass org/gradle/internal/model/CalculatedValueContainerFactory +instanceKlass org/gradle/plugin/use/internal/InjectedPluginClasspath +instanceKlass org/gradle/configurationcache/DefaultBuildTreeModelControllerServices +instanceKlass org/gradle/api/artifacts/ModuleIdentifier +instanceKlass org/gradle/vcs/internal/resolver/PersistentVcsMetadataCache +instanceKlass org/gradle/vcs/internal/VcsDirectoryLayout +instanceKlass org/gradle/vcs/internal/VersionControlRepositoryConnectionFactory +instanceKlass org/gradle/vcs/internal/services/VersionControlServices$VersionControlBuildSessionServices +instanceKlass org/gradle/nativeplatform/toolchain/internal/gcc/metadata/SystemLibraryDiscovery +instanceKlass org/gradle/nativeplatform/toolchain/internal/xcode/AbstractLocator +instanceKlass org/gradle/nativeplatform/toolchain/internal/msvcpp/WindowsKitInstall +instanceKlass org/gradle/platform/base/internal/toolchain/SearchResult +instanceKlass org/gradle/platform/base/internal/toolchain/ToolSearchResult +instanceKlass com/google/common/collect/SetMultimap +instanceKlass com/google/common/collect/Multimap +instanceKlass org/gradle/nativeplatform/toolchain/internal/msvcpp/AbstractWindowsKitComponentLocator +instanceKlass org/gradle/nativeplatform/toolchain/internal/msvcpp/UcrtLocator +instanceKlass org/gradle/nativeplatform/toolchain/internal/msvcpp/version/SystemPathVersionLocator +instanceKlass org/gradle/nativeplatform/toolchain/internal/msvcpp/version/AbstractVisualStudioVersionLocator +instanceKlass org/gradle/nativeplatform/toolchain/internal/msvcpp/version/VswhereVersionLocator +instanceKlass org/gradle/nativeplatform/toolchain/internal/msvcpp/version/VisualStudioMetaDataProvider +instanceKlass org/gradle/nativeplatform/toolchain/internal/msvcpp/VisualStudioLocator +instanceKlass org/gradle/nativeplatform/toolchain/internal/msvcpp/version/VisualStudioVersionLocator +instanceKlass org/gradle/nativeplatform/toolchain/internal/msvcpp/version/VisualCppMetadataProvider +instanceKlass org/gradle/nativeplatform/toolchain/internal/msvcpp/WindowsSdkLocator +instanceKlass org/gradle/nativeplatform/toolchain/internal/msvcpp/WindowsComponentLocator +instanceKlass org/gradle/nativeplatform/internal/services/NativeBinaryServices$BuildSessionScopeServices +instanceKlass org/gradle/composite/internal/CompositeBuildServices$CompositeBuildSessionScopeServices +instanceKlass org/gradle/api/tasks/testing/TestDescriptor +instanceKlass org/gradle/api/internal/tasks/testing/operations/TestListenerBuildOperationAdapter +instanceKlass org/gradle/api/internal/tasks/testing/results/TestListenerInternal +instanceKlass org/gradle/api/internal/tasks/testing/operations/TestExecutionBuildOperationBuildSessionScopeServices +instanceKlass org/gradle/api/internal/catalog/DependenciesAccessorsWorkspaceProvider +instanceKlass org/gradle/internal/execution/workspace/WorkspaceProvider +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/ComponentSelectionDescriptorFactory +instanceKlass org/gradle/api/internal/artifacts/DependencyManagementBuildSessionScopeServices +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/ArtifactVisitor +instanceKlass org/gradle/api/internal/file/FileCollectionInternal +instanceKlass org/gradle/api/internal/tasks/TaskDependencyContainer +instanceKlass org/gradle/api/file/FileCollection +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/ArtifactSetToFileCollectionFactory +instanceKlass org/gradle/workers/internal/WorkerExecutionQueueFactory +instanceKlass org/gradle/process/internal/worker/child/WorkerDirectoryProvider +instanceKlass org/gradle/internal/work/ConditionalExecutionQueueFactory +instanceKlass org/gradle/workers/internal/WorkersServices$BuildSessionScopeServices +instanceKlass org/gradle/internal/vfs/impl/DefaultFileSystemAccess +instanceKlass org/gradle/internal/fingerprint/impl/FileCollectionFingerprinterRegistrations +instanceKlass org/gradle/internal/execution/OutputSnapshotter +instanceKlass org/gradle/internal/execution/fingerprint/InputFingerprinter +instanceKlass org/gradle/internal/execution/fingerprint/FileCollectionFingerprinterRegistry +instanceKlass org/gradle/internal/service/scopes/VirtualFileSystemServices$BuildSessionServices +instanceKlass org/gradle/internal/build/BuildLayoutValidator +instanceKlass org/gradle/internal/buildtree/BuildTreeModelControllerServices +instanceKlass org/gradle/internal/session/BuildSessionActionExecutor +instanceKlass org/gradle/tooling/internal/provider/LauncherServices$ToolingBuildSessionScopeServices +instanceKlass org/gradle/internal/service/DefaultServiceRegistry$CollectionService +instanceKlass org/gradle/internal/service/DefaultServiceRegistry$CollectingVisitor +instanceKlass sun/reflect/generics/tree/VoidDescriptor +instanceKlass org/gradle/internal/snapshot/impl/ValueSnapshotterSerializerRegistry +instanceKlass org/gradle/deployment/internal/DefaultDeploymentRegistry +instanceKlass org/gradle/internal/filewatch/PendingChangesListener +instanceKlass org/gradle/deployment/internal/DeploymentRegistryInternal +instanceKlass org/gradle/deployment/internal/DeploymentRegistry +instanceKlass org/gradle/internal/filewatch/PendingChangesManager +instanceKlass org/gradle/internal/session/BuildSessionScopeServices$CrossBuildFileHashCacheWrapper +instanceKlass org/gradle/api/internal/attributes/DefaultImmutableAttributesFactory +instanceKlass org/gradle/api/internal/attributes/ImmutableAttributesFactory +instanceKlass org/gradle/api/internal/FeaturePreviews +instanceKlass org/gradle/internal/buildevents/BuildStartedTime +instanceKlass org/gradle/cache/internal/CleanupActionFactory +instanceKlass org/gradle/initialization/layout/ProjectCacheDir +instanceKlass org/gradle/internal/scopeids/id/ScopeId +instanceKlass org/gradle/internal/scopeids/PersistentScopeIdLoader +instanceKlass org/gradle/initialization/SettingsLocation +instanceKlass org/gradle/internal/hash/ChecksumService +instanceKlass org/gradle/api/internal/project/CrossProjectConfigurator +instanceKlass org/gradle/api/internal/tasks/userinput/UserInputReader +instanceKlass org/gradle/api/internal/tasks/userinput/UserInputHandler +instanceKlass org/gradle/cache/scopes/BuildTreeScopedCache +instanceKlass org/gradle/internal/snapshot/ValueSnapshotter +instanceKlass org/gradle/internal/service/scopes/WorkerSharedBuildSessionScopeServices +instanceKlass org/gradle/internal/service/scopes/DefaultGradleUserHomeScopeServiceRegistry$Services +instanceKlass org/gradle/api/internal/tasks/compile/incremental/cache/UserHomeScopedCompileCaches +instanceKlass org/gradle/api/internal/tasks/compile/incremental/cache/GeneralCompileCaches +instanceKlass org/gradle/api/internal/tasks/CompileServices$UserHomeScopeServices +instanceKlass org/gradle/kotlin/dsl/provider/plugins/precompiled/DefaultPrecompiledScriptPluginsSupport +instanceKlass org/gradle/kotlin/dsl/provider/PrecompiledScriptPluginsSupport +instanceKlass org/gradle/kotlin/dsl/provider/plugins/DefaultKotlinScriptBasePluginsApplicator +instanceKlass org/gradle/kotlin/dsl/provider/KotlinScriptBasePluginsApplicator +instanceKlass org/gradle/kotlin/dsl/provider/plugins/DefaultProjectSchemaProvider +instanceKlass org/gradle/kotlin/dsl/accessors/ProjectSchemaProvider +instanceKlass org/gradle/kotlin/dsl/provider/plugins/GradleUserHomeServices +instanceKlass org/gradle/api/internal/artifacts/transform/ImmutableTransformationWorkspaceServices +instanceKlass org/gradle/api/internal/artifacts/transform/TransformationWorkspaceServices +instanceKlass org/gradle/api/internal/artifacts/ivyservice/DefaultArtifactCaches$WritableArtifactCacheLockingParameters +instanceKlass org/gradle/internal/execution/history/ExecutionHistoryCacheAccess +instanceKlass org/gradle/internal/execution/history/ExecutionHistoryStore +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ArtifactCachesProvider +instanceKlass org/gradle/api/internal/artifacts/DependencyManagementGradleUserHomeScopeServices +instanceKlass org/gradle/workers/internal/WorkerDaemonClientsManager +instanceKlass org/gradle/workers/internal/ClassLoaderStructureProvider +instanceKlass org/gradle/workers/internal/ActionExecutionSpecFactory +instanceKlass org/gradle/workers/internal/WorkersServices$GradleUserHomeServices +instanceKlass org/gradle/kotlin/dsl/provider/KotlinScriptClassloadingCache +instanceKlass org/gradle/kotlin/dsl/provider/GradleUserHomeServices +instanceKlass org/gradle/kotlin/dsl/support/EmbeddedKotlinProvider +instanceKlass org/gradle/kotlin/dsl/support/GradleUserHomeServices +instanceKlass org/gradle/kotlin/dsl/cache/KotlinDslWorkspaceProvider +instanceKlass org/gradle/kotlin/dsl/cache/GradleUserHomeServices +instanceKlass org/gradle/internal/watch/registry/FileWatcherRegistryFactory +instanceKlass org/gradle/internal/vfs/impl/VfsRootReference +instanceKlass org/gradle/internal/build/BuildState +instanceKlass org/gradle/internal/watch/vfs/impl/LocationsWrittenByCurrentBuild +instanceKlass org/gradle/internal/vfs/FileSystemAccess$WriteListener +instanceKlass org/gradle/api/internal/changedetection/state/CrossBuildFileHashCache +instanceKlass org/gradle/internal/watch/vfs/BuildLifecycleAwareVirtualFileSystem +instanceKlass org/gradle/internal/vfs/VirtualFileSystem +instanceKlass org/gradle/internal/fingerprint/GenericFileTreeSnapshotter +instanceKlass org/gradle/internal/execution/fingerprint/FileCollectionSnapshotter +instanceKlass org/gradle/internal/hash/FileHasher +instanceKlass org/gradle/internal/fingerprint/classpath/ClasspathFingerprinter +instanceKlass org/gradle/internal/execution/fingerprint/FileCollectionFingerprinter +instanceKlass org/gradle/internal/watch/vfs/WatchableFileSystemDetector +instanceKlass org/gradle/api/internal/changedetection/state/ResourceSnapshotterCacheService +instanceKlass org/gradle/internal/service/scopes/VirtualFileSystemServices$GradleUserHomeServices +instanceKlass org/gradle/tooling/internal/provider/serialization/PayloadSerializer +instanceKlass org/gradle/tooling/internal/provider/serialization/PayloadClassLoaderRegistry +instanceKlass org/gradle/tooling/internal/provider/serialization/PayloadClassLoaderFactory +instanceKlass org/gradle/tooling/internal/provider/LauncherServices$ToolingGradleUserHomeScopeServices +instanceKlass org/gradle/internal/service/DefaultServiceRegistry$InstanceUnpackingVisitor +instanceKlass org/gradle/internal/classpath/ClasspathFileTransformer +instanceKlass org/gradle/internal/classpath/CachedClasspathTransformer$Transform +instanceKlass org/gradle/internal/classpath/DefaultCachedClasspathTransformer +instanceKlass org/gradle/internal/classpath/CachedClasspathTransformer +instanceKlass org/gradle/api/internal/changedetection/state/FileTimeStampInspector +instanceKlass org/gradle/initialization/RootBuildLifecycleListener +instanceKlass org/gradle/internal/file/FileAccessTracker +instanceKlass org/gradle/cache/CleanupAction +instanceKlass org/gradle/cache/internal/FilesFinder +instanceKlass org/gradle/internal/classpath/DefaultClasspathTransformerCacheFactory +instanceKlass org/gradle/internal/classpath/ClasspathTransformerCacheFactory +instanceKlass org/gradle/internal/classpath/ClasspathBuilder$EntryBuilder +instanceKlass org/gradle/internal/classpath/ClasspathBuilder +instanceKlass org/gradle/internal/classpath/ClasspathEntryVisitor$Entry +instanceKlass org/gradle/internal/classpath/ClasspathWalker +instanceKlass org/gradle/cache/internal/DirectoryCleanupAction +instanceKlass org/gradle/cache/CleanupProgressMonitor +instanceKlass org/gradle/cache/internal/GradleUserHomeCleanupService +instanceKlass org/gradle/cache/internal/VersionSpecificCacheDirectoryScanner +instanceKlass org/gradle/cache/internal/UsedGradleVersionsFromGradleUserHomeCaches +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$BMH +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/internal/service/scopes/WorkerSharedGlobalScopeServices$$Lambda$86 +instanceKlass org/gradle/internal/service/scopes/WorkerSharedGlobalScopeServices$$Lambda$85 +instanceKlass java/util/function/LongSupplier +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/internal/file/impl/DefaultDeleter +instanceKlass org/gradle/cache/internal/scopes/DefaultCacheScopeMapping +instanceKlass org/gradle/cache/CacheBuilder +instanceKlass org/gradle/cache/internal/DefaultCacheRepository +instanceKlass org/gradle/cache/internal/ReferencablePersistentCache +instanceKlass org/gradle/cache/PersistentCache +instanceKlass org/gradle/cache/CleanableStore +instanceKlass org/gradle/cache/CacheAccess +instanceKlass org/gradle/cache/internal/DefaultCacheFactory +instanceKlass org/gradle/internal/logging/services/ProgressLoggingBridge +instanceKlass org/gradle/internal/logging/progress/ProgressLogger +instanceKlass org/gradle/internal/logging/progress/DefaultProgressLoggerFactory +instanceKlass org/gradle/internal/operations/DefaultBuildOperationIdFactory +instanceKlass org/gradle/internal/service/scopes/DefaultGradleUserHomeScopeServiceRegistry$1$$Lambda$84 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/cache/internal/UsedGradleVersions +instanceKlass org/gradle/cache/internal/GradleUserHomeCleanupServices +instanceKlass org/gradle/cache/internal/DefaultGeneratedGradleJarCache +instanceKlass org/gradle/cache/internal/GeneratedGradleJarCache +instanceKlass org/gradle/internal/vfs/FileSystemAccess +instanceKlass org/gradle/groovy/scripts/internal/CrossBuildInMemoryCachingScriptClassCache +instanceKlass org/gradle/cache/internal/scopes/AbstractScopedCache +instanceKlass org/gradle/initialization/layout/GlobalCacheDir +instanceKlass org/gradle/internal/classloader/ClasspathHasher +instanceKlass org/gradle/cache/scopes/GlobalScopedCache +instanceKlass org/gradle/initialization/ClassLoaderScopeRegistryListenerManager +instanceKlass org/gradle/internal/jvm/JavaModuleDetector +instanceKlass org/gradle/process/internal/worker/child/WorkerProcessClassPathProvider +instanceKlass org/gradle/internal/service/scopes/DefaultGradleUserHomeScopeServiceRegistry$1 +instanceKlass org/gradle/internal/session/BuildSessionState +instanceKlass org/gradle/internal/operations/trace/SerializedOperation +instanceKlass org/gradle/internal/operations/trace/BuildOperationTrace$1 +instanceKlass org/gradle/internal/operations/DefaultBuildOperationListenerManager$1 +instanceKlass org/gradle/internal/operations/DefaultBuildOperationListenerManager +instanceKlass org/gradle/internal/work/WorkerLeaseRegistry$WorkerLeaseCompletion +instanceKlass org/gradle/internal/work/WorkerLeaseRegistry$WorkerLease +instanceKlass org/gradle/internal/resources/ResourceLock +instanceKlass org/gradle/internal/work/DefaultWorkerLeaseService$LeaseHolder +instanceKlass org/gradle/internal/work/Synchronizer +instanceKlass org/gradle/internal/work/DefaultWorkerLeaseService +instanceKlass org/gradle/internal/operations/trace/BuildOperationTrace +instanceKlass org/gradle/internal/work/WorkerLeaseService +instanceKlass org/gradle/internal/work/WorkerThreadRegistry +instanceKlass org/gradle/internal/resources/ProjectLeaseRegistry +instanceKlass org/gradle/internal/work/WorkerLeaseRegistry +instanceKlass org/gradle/internal/operations/logging/LoggingBuildOperationProgressBroadcaster +instanceKlass org/gradle/internal/operations/notify/BuildOperationNotificationValve +instanceKlass org/gradle/internal/operations/notify/BuildOperationNotificationBridge +instanceKlass org/gradle/internal/operations/notify/BuildOperationNotificationListenerRegistrar +instanceKlass org/gradle/internal/operations/BuildOperationExecutor +instanceKlass org/gradle/internal/operations/BuildOperationRunner +instanceKlass org/gradle/internal/operations/BuildOperationQueueFactory +instanceKlass org/gradle/configuration/internal/UserCodeApplicationContext +instanceKlass org/gradle/api/internal/CollectionCallbackActionDecorator +instanceKlass org/gradle/configuration/internal/ListenerBuildOperationDecorator +instanceKlass org/gradle/internal/session/CrossBuildSessionState$Services +instanceKlass org/gradle/internal/service/ServiceRegistryBuilder +instanceKlass org/gradle/internal/session/CrossBuildSessionState +instanceKlass org/gradle/tooling/internal/provider/BuildSessionLifecycleBuildActionExecuter$ActionImpl +instanceKlass org/gradle/tooling/internal/protocol/ModelIdentifier +instanceKlass org/gradle/tooling/internal/protocol/InternalProtocolInterface +instanceKlass org/gradle/internal/logging/sink/OutputEventRenderer$3 +instanceKlass org/gradle/internal/logging/sink/ProgressLogEventGenerator +instanceKlass org/gradle/internal/logging/console/BuildLogLevelFilterRenderer +instanceKlass org/gradle/launcher/daemon/server/exec/ExecuteBuild$1 +instanceKlass org/gradle/initialization/DefaultBuildRequestMetaData +instanceKlass org/gradle/initialization/DefaultBuildRequestContext +instanceKlass org/gradle/launcher/daemon/server/exec/DaemonConnectionBackedEventConsumer +instanceKlass org/gradle/launcher/daemon/server/exec/WatchForDisconnection$1 +instanceKlass org/gradle/internal/featurelifecycle/LoggingIncubatingFeatureHandler +instanceKlass org/gradle/util/internal/IncubationLogger +instanceKlass org/gradle/internal/featurelifecycle/FeatureUsage +instanceKlass org/gradle/internal/featurelifecycle/UsageLocationReporter +instanceKlass org/gradle/internal/featurelifecycle/LoggingDeprecatedFeatureHandler +instanceKlass org/gradle/internal/featurelifecycle/FeatureHandler +instanceKlass org/gradle/internal/deprecation/DeprecationMessageBuilder +instanceKlass org/gradle/internal/deprecation/DeprecationLogger +instanceKlass org/gradle/launcher/daemon/server/exec/ForwardClientInput$2 +instanceKlass org/gradle/util/internal/StdinSwapper$2 +instanceKlass org/gradle/util/internal/StdinSwapper$1 +instanceKlass org/gradle/util/internal/Swapper +instanceKlass org/gradle/launcher/daemon/server/exec/ForwardClientInput$1 +instanceKlass java/math/MathContext +instanceKlass org/gradle/internal/util/NumberUtil +instanceKlass org/gradle/launcher/daemon/server/exec/LogToClient$AsynchronousLogDispatcher$1 +instanceKlass java/util/concurrent/CountDownLatch +instanceKlass jdk/internal/reflect/UnsafeFieldAccessorFactory +instanceKlass java/lang/reflect/AccessibleObject$$Lambda$83 +instanceKlass com/google/common/collect/AbstractIterator$1 +instanceKlass java/util/Collections$UnmodifiableMap$UnmodifiableEntrySet$UnmodifiableEntry +instanceKlass java/util/Collections$UnmodifiableMap$UnmodifiableEntrySet$1 +instanceKlass org/gradle/launcher/daemon/server/DaemonStateCoordinator$1 +instanceKlass org/gradle/launcher/daemon/registry/PersistentDaemonRegistry$5 +instanceKlass org/gradle/launcher/daemon/server/exec/StartBuildOrRespondWithBusy$1 +instanceKlass org/gradle/launcher/daemon/server/DefaultDaemonConnection$CommandQueue$1 +instanceKlass org/gradle/launcher/daemon/server/exec/HandleCancel$1 +instanceKlass com/google/common/collect/Platform +instanceKlass org/gradle/launcher/daemon/server/api/DaemonCommandExecution +instanceKlass java/lang/Long$LongCache +instanceKlass org/gradle/launcher/exec/DefaultBuildActionParameters +instanceKlass org/gradle/configuration/GradleLauncherMetaData +instanceKlass com/google/common/base/Converter +instanceKlass com/google/common/collect/Maps$EntryTransformer +instanceKlass com/google/common/collect/SortedMapDifference +instanceKlass com/google/common/collect/MapDifference +instanceKlass com/google/common/collect/Maps +instanceKlass java/util/AbstractMap$SimpleImmutableEntry +instanceKlass com/google/common/collect/AbstractMapEntry +instanceKlass com/google/common/collect/ImmutableMap$Builder +instanceKlass com/google/common/collect/BiMap +instanceKlass com/google/common/collect/ImmutableMap +instanceKlass org/gradle/internal/DefaultTaskExecutionRequest +instanceKlass org/gradle/TaskExecutionRequest +instanceKlass com/google/common/collect/CollectPreconditions +instanceKlass org/gradle/internal/buildoption/BuildOption$Value +instanceKlass org/gradle/internal/concurrent/DefaultParallelismConfiguration +instanceKlass org/gradle/internal/logging/DefaultLoggingConfiguration +instanceKlass org/gradle/initialization/BuildLayoutParameters +instanceKlass java/nio/channels/spi/AbstractSelector$1 +instanceKlass sun/nio/ch/WindowsSelectorImpl$MapEntry +instanceKlass org/gradle/launcher/daemon/server/DefaultDaemonConnection$1 +instanceKlass org/gradle/launcher/daemon/server/DefaultDaemonConnection$ReceiveQueue +instanceKlass org/gradle/launcher/daemon/server/DefaultDaemonConnection$DisconnectQueue +instanceKlass org/gradle/launcher/daemon/server/DefaultDaemonConnection$CommandQueue +instanceKlass org/gradle/launcher/daemon/server/DefaultDaemonConnection +instanceKlass org/gradle/launcher/daemon/server/api/DaemonConnection +instanceKlass org/gradle/launcher/daemon/server/DefaultIncomingConnectionHandler$ConnectionWorker +instanceKlass org/gradle/launcher/daemon/server/SynchronizedDispatchConnection +instanceKlass org/gradle/internal/serialize/Serializers$StatefulSerializerAdapter$2 +instanceKlass org/gradle/internal/serialize/Serializers$StatefulSerializerAdapter$1 +instanceKlass org/gradle/internal/remote/internal/inet/SocketInetAddress$Serializer +instanceKlass org/gradle/internal/io/BufferCaster +instanceKlass java/lang/invoke/ConstantBootstraps +instanceKlass java/util/concurrent/atomic/AtomicReferenceFieldUpdater$AtomicReferenceFieldUpdaterImpl$1 +instanceKlass java/util/concurrent/atomic/AtomicReferenceFieldUpdater +instanceKlass sun/nio/ch/OptionKey +instanceKlass sun/nio/ch/SocketOptionRegistry$LazyInitialization +instanceKlass sun/nio/ch/SocketOptionRegistry$RegistryKey +instanceKlass sun/nio/ch/SocketOptionRegistry +instanceKlass java/util/stream/Collectors$$Lambda$82 +instanceKlass java/util/stream/Collectors$$Lambda$81 +instanceKlass java/util/stream/Collectors$$Lambda$80 +instanceKlass java/util/stream/Collectors$$Lambda$79 +instanceKlass sun/net/ext/ExtendedSocketOptions$$Lambda$78 +instanceKlass sun/nio/ch/ExtendedSocketOption$1 +instanceKlass sun/nio/ch/ExtendedSocketOption +instanceKlass sun/nio/ch/SocketChannelImpl$DefaultOptionsHolder +instanceKlass org/gradle/launcher/daemon/server/DaemonStateCoordinator$2 +instanceKlass java/nio/BufferMismatch +instanceKlass sun/nio/ch/IOStatus +instanceKlass org/gradle/launcher/daemon/server/Daemon$DefaultDaemonExpirationListener +instanceKlass org/gradle/launcher/daemon/server/Daemon$DaemonExpirationPeriodicCheck +instanceKlass sun/nio/ch/Util$BufferCache +instanceKlass org/gradle/launcher/daemon/server/DaemonRegistryUnavailableExpirationStrategy +instanceKlass org/gradle/internal/event/DefaultListenerManager$ListenerDetails +instanceKlass org/gradle/launcher/daemon/server/health/LowMemoryDaemonExpirationStrategy +instanceKlass org/gradle/process/internal/health/memory/OsMemoryStatusListener +instanceKlass sun/nio/ch/PipeImpl$Initializer$LoopbackConnector +instanceKlass sun/nio/ch/PipeImpl$Initializer +instanceKlass org/gradle/launcher/daemon/server/NotMostRecentlyUsedDaemonExpirationStrategy +instanceKlass com/google/common/base/Functions$ConstantFunction +instanceKlass java/nio/channels/Pipe +instanceKlass sun/nio/ch/NativeObject +instanceKlass com/google/common/base/Functions +instanceKlass sun/nio/ch/PollArrayWrapper +instanceKlass org/gradle/launcher/daemon/server/DaemonIdleTimeoutExpirationStrategy +instanceKlass sun/nio/ch/WindowsSelectorImpl$FinishLock +instanceKlass org/gradle/launcher/daemon/context/DaemonCompatibilitySpec +instanceKlass sun/nio/ch/WindowsSelectorImpl$StartLock +instanceKlass sun/nio/ch/WindowsSelectorImpl$SubSelector +instanceKlass org/gradle/api/internal/specs/ExplainingSpec +instanceKlass org/gradle/launcher/daemon/server/CompatibleDaemonExpirationStrategy +instanceKlass org/gradle/launcher/daemon/server/expiry/AllDaemonExpirationStrategy +instanceKlass java/nio/channels/SelectionKey +instanceKlass sun/nio/ch/Util$2 +instanceKlass sun/nio/ch/Util +instanceKlass java/nio/channels/Selector +instanceKlass java/nio/DirectByteBuffer$Deallocator +instanceKlass org/gradle/internal/remote/internal/KryoBackedMessageSerializer +instanceKlass org/gradle/internal/remote/internal/inet/SocketConnection +instanceKlass org/gradle/internal/serialize/ObjectReader +instanceKlass org/gradle/internal/serialize/ObjectWriter +instanceKlass org/gradle/internal/serialize/Serializers$StatefulSerializerAdapter +instanceKlass org/gradle/internal/serialize/StatefulSerializer +instanceKlass org/gradle/internal/serialize/Serializers +instanceKlass org/gradle/internal/remote/internal/RemoteConnection +instanceKlass org/gradle/internal/remote/internal/Connection +instanceKlass org/gradle/internal/dispatch/Receive +instanceKlass org/gradle/internal/remote/internal/MessageSerializer +instanceKlass org/gradle/internal/remote/internal/inet/SocketConnectCompletion +instanceKlass org/gradle/internal/remote/internal/ConnectCompletion +instanceKlass java/net/Socket +instanceKlass org/gradle/internal/stream/EncodedStream +instanceKlass org/gradle/launcher/daemon/bootstrap/DaemonStartupCommunication +instanceKlass org/gradle/cache/internal/DefaultFileLockManager$DefaultFileLock$3 +instanceKlass org/gradle/cache/internal/DefaultFileLockManager$DefaultFileLock$2 +instanceKlass org/gradle/cache/internal/DefaultFileLockManager$DefaultFileLock$1 +instanceKlass java/io/FileOutputStream$1 +instanceKlass org/gradle/internal/remote/internal/inet/SocketInetAddress +instanceKlass org/gradle/internal/serialize/AbstractEncoder +instanceKlass org/gradle/internal/serialize/FlushableEncoder +instanceKlass org/gradle/launcher/daemon/registry/DaemonRegistryContent$$Lambda$77 +instanceKlass org/gradle/launcher/daemon/registry/DaemonInfo$Serializer +instanceKlass org/gradle/cache/internal/filelock/LockInfo +instanceKlass org/gradle/cache/internal/DefaultFileLockManager$DefaultFileLock$$Lambda$76 +instanceKlass org/gradle/cache/internal/filelock/DefaultLockStateSerializer$SequenceNumberLockState +instanceKlass org/gradle/internal/io/IOQuery$Result +instanceKlass org/gradle/cache/internal/filelock/FileLockOutcome +instanceKlass org/gradle/cache/internal/DefaultFileLockManager$DefaultFileLock$4 +instanceKlass org/gradle/internal/io/ExponentialBackoff +instanceKlass org/gradle/cache/internal/DefaultFileLockManager$AwaitableFileLockReleasedSignal +instanceKlass org/gradle/cache/FileLockReleasedSignal +instanceKlass org/gradle/cache/internal/filelock/LockInfoSerializer +instanceKlass org/gradle/cache/internal/filelock/LockInfoAccess +instanceKlass org/gradle/cache/internal/filelock/LockStateAccess +instanceKlass org/gradle/cache/internal/filelock/LockFileAccess +instanceKlass org/gradle/cache/internal/filelock/LockState +instanceKlass org/gradle/cache/internal/filelock/DefaultLockStateSerializer +instanceKlass org/gradle/internal/io/IOQuery +instanceKlass org/gradle/cache/FileLock$State +instanceKlass org/gradle/cache/internal/filelock/LockStateSerializer +instanceKlass sun/net/ResourceManager +instanceKlass java/net/DatagramPacket +instanceKlass java/net/DatagramSocket$1 +instanceKlass java/net/AbstractPlainDatagramSocketImpl$1 +instanceKlass java/net/DatagramSocketImpl +instanceKlass java/net/DefaultDatagramSocketImplFactory +instanceKlass java/net/DatagramSocket +instanceKlass org/gradle/cache/internal/locklistener/FileLockCommunicator +instanceKlass org/gradle/cache/internal/filelock/LockOptionsBuilder +instanceKlass org/gradle/cache/internal/SimpleStateCache$1Updater +instanceKlass org/gradle/cache/internal/FileIntegrityViolationSuppressingPersistentStateCacheDecorator$1 +instanceKlass org/gradle/launcher/daemon/registry/PersistentDaemonRegistry$8 +instanceKlass org/gradle/launcher/daemon/registry/DaemonInfo +instanceKlass org/gradle/launcher/daemon/context/DaemonConnectDetails +instanceKlass sun/util/resources/provider/NonBaseLocaleDataMetaInfo +instanceKlass sun/util/locale/provider/JRELocaleProviderAdapter$$Lambda$75 +instanceKlass sun/util/locale/provider/BaseLocaleDataMetaInfo +instanceKlass sun/util/locale/provider/JRELocaleProviderAdapter$$Lambda$74 +instanceKlass sun/util/cldr/CLDRLocaleProviderAdapter$$Lambda$73 +instanceKlass sun/util/locale/provider/TimeZoneNameUtility$TimeZoneNameGetter +instanceKlass sun/util/locale/provider/TimeZoneNameUtility +instanceKlass org/gradle/internal/remote/internal/inet/TcpIncomingConnector$1 +instanceKlass org/gradle/internal/remote/internal/inet/TcpIncomingConnector$Receiver +instanceKlass org/gradle/internal/remote/internal/inet/MultiChoiceAddress +instanceKlass org/gradle/internal/remote/internal/inet/InetEndpoint +instanceKlass java/util/UUID$Holder +instanceKlass java/util/UUID +instanceKlass sun/net/NetHooks +instanceKlass java/net/InetSocketAddress$InetSocketAddressHolder +instanceKlass java/net/Inet4AddressImpl +instanceKlass org/gradle/internal/remote/internal/inet/InetAddresses +instanceKlass java/net/AbstractPlainSocketImpl$1 +instanceKlass java/net/StandardSocketOptions$StdSocketOption +instanceKlass java/net/StandardSocketOptions +instanceKlass java/net/SocketImpl +instanceKlass java/net/SocketOptions +instanceKlass java/net/SocksConsts +instanceKlass java/net/ServerSocket$2 +instanceKlass jdk/internal/access/JavaNetSocketAccess +instanceKlass java/net/ServerSocket +instanceKlass jdk/net/ExtendedSocketOptions$PlatformSocketOptions$1 +instanceKlass jdk/net/ExtendedSocketOptions$PlatformSocketOptions +instanceKlass jdk/net/SocketFlow +instanceKlass jdk/net/ExtendedSocketOptions$ExtSocketOption +instanceKlass java/net/SocketOption +instanceKlass jdk/net/ExtendedSocketOptions +instanceKlass sun/net/ext/ExtendedSocketOptions +instanceKlass sun/nio/ch/Net$1 +instanceKlass java/net/ProtocolFamily +instanceKlass sun/nio/ch/Net +instanceKlass sun/nio/ch/SelChImpl +instanceKlass sun/nio/ch/DefaultSelectorProvider +instanceKlass java/nio/channels/spi/SelectorProvider$1 +instanceKlass java/nio/channels/spi/SelectorProvider +instanceKlass java/nio/channels/NetworkChannel +instanceKlass org/gradle/launcher/daemon/server/DaemonTcpServerConnector$1 +instanceKlass org/gradle/launcher/daemon/server/Daemon$5 +instanceKlass org/gradle/launcher/daemon/server/DefaultIncomingConnectionHandler +instanceKlass org/gradle/initialization/DefaultBuildCancellationToken +instanceKlass java/util/concurrent/SynchronousQueue$TransferStack$SNode +instanceKlass java/util/concurrent/SynchronousQueue$Transferer +instanceKlass org/gradle/initialization/BuildCancellationToken +instanceKlass org/gradle/launcher/daemon/server/DaemonStateCoordinator +instanceKlass org/gradle/launcher/daemon/server/Daemon$4 +instanceKlass org/gradle/launcher/daemon/server/Daemon$3 +instanceKlass org/gradle/launcher/daemon/server/Daemon$2 +instanceKlass org/gradle/launcher/daemon/server/Daemon$1 +instanceKlass org/gradle/launcher/daemon/server/DaemonRegistryUpdater +instanceKlass sun/security/provider/AbstractDrbg$NonceProvider +instanceKlass sun/security/provider/AbstractDrbg$SeederHolder$$Lambda$72 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass sun/nio/fs/BasicFileAttributesHolder +instanceKlass sun/nio/fs/WindowsDirectoryStream$WindowsDirectoryIterator +instanceKlass sun/nio/fs/WindowsDirectoryStream +instanceKlass java/nio/file/DirectoryStream +instanceKlass java/nio/file/Files$AcceptAllFilter +instanceKlass java/nio/file/DirectoryStream$Filter +instanceKlass java/net/NetworkInterface$2 +instanceKlass java/net/DefaultInterface +instanceKlass java/net/Inet6Address$Inet6AddressHolder +instanceKlass java/net/InetAddress$PlatformNameService +instanceKlass java/net/InetAddress$NameService +instanceKlass java/net/Inet6AddressImpl +instanceKlass java/net/InetAddressImpl +instanceKlass java/net/InetAddressImplFactory +instanceKlass java/util/concurrent/ConcurrentSkipListMap$Node +instanceKlass java/util/concurrent/ConcurrentSkipListMap$Index +instanceKlass java/util/concurrent/ConcurrentNavigableMap +instanceKlass java/net/InetAddress$InetAddressHolder +instanceKlass java/net/InetAddress$2 +instanceKlass jdk/internal/access/JavaNetInetAddressAccess +instanceKlass java/net/InetAddress$1 +instanceKlass java/net/InetAddress +instanceKlass java/net/InterfaceAddress +instanceKlass java/net/NetworkInterface$1 +instanceKlass java/net/NetworkInterface +instanceKlass sun/nio/cs/StringUTF16 +instanceKlass sun/security/provider/ByteArrayAccess +instanceKlass sun/security/provider/SeedGenerator$1 +instanceKlass sun/security/util/MessageDigestSpi2 +instanceKlass sun/security/jca/GetInstance$Instance +instanceKlass sun/security/jca/GetInstance +instanceKlass java/security/MessageDigestSpi +instanceKlass sun/security/provider/SeedGenerator +instanceKlass sun/security/provider/AbstractDrbg$SeederHolder +instanceKlass java/security/DrbgParameters$NextBytes +instanceKlass sun/security/provider/AbstractDrbg$$Lambda$71 +instanceKlass sun/security/provider/EntropySource +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass sun/security/provider/AbstractDrbg +instanceKlass java/security/DrbgParameters$Instantiation +instanceKlass java/security/DrbgParameters +instanceKlass sun/security/provider/MoreDrbgParameters +instanceKlass sun/security/provider/DRBG$$Lambda$70 +instanceKlass java/security/SecureRandomSpi +instanceKlass java/security/SecureRandomParameters +instanceKlass java/security/Provider$UString +instanceKlass java/security/Provider$Service +instanceKlass sun/security/provider/NativePRNG$NonBlocking +instanceKlass sun/security/provider/NativePRNG$Blocking +instanceKlass sun/security/provider/NativePRNG +instanceKlass sun/security/provider/SunEntries$1 +instanceKlass sun/security/provider/SunEntries +instanceKlass sun/security/jca/ProviderList$2 +instanceKlass jdk/internal/math/FloatingDecimal$ASCIIToBinaryBuffer +instanceKlass jdk/internal/math/FloatingDecimal$PreparedASCIIToBinaryBuffer +instanceKlass jdk/internal/math/FloatingDecimal$ASCIIToBinaryConverter +instanceKlass jdk/internal/math/FloatingDecimal$BinaryToASCIIBuffer +instanceKlass jdk/internal/math/FloatingDecimal$ExceptionalBinaryToASCIIBuffer +instanceKlass jdk/internal/math/FloatingDecimal$BinaryToASCIIConverter +instanceKlass jdk/internal/math/FloatingDecimal +instanceKlass java/security/Provider$EngineDescription +instanceKlass java/security/Provider$ServiceKey +instanceKlass sun/security/jca/ProviderConfig +instanceKlass sun/security/jca/ProviderList +instanceKlass sun/security/jca/Providers +instanceKlass com/google/common/base/Joiner +instanceKlass org/gradle/launcher/daemon/server/exec/DaemonCommandExecuter +instanceKlass org/gradle/internal/remote/internal/inet/MultiChoiceAddressSerializer +instanceKlass org/gradle/launcher/daemon/registry/DaemonRegistryContent$Serializer +instanceKlass org/gradle/launcher/daemon/registry/DaemonRegistryContent +instanceKlass org/gradle/cache/LockOptions +instanceKlass org/gradle/cache/internal/AbstractFileAccess +instanceKlass org/gradle/internal/serialize/Encoder +instanceKlass org/gradle/cache/internal/SimpleStateCache +instanceKlass org/gradle/cache/internal/FileIntegrityViolationSuppressingPersistentStateCacheDecorator +instanceKlass org/gradle/cache/PersistentStateCache$UpdateAction +instanceKlass org/gradle/cache/PersistentStateCache +instanceKlass org/gradle/launcher/daemon/registry/PersistentDaemonRegistry +instanceKlass org/gradle/cache/internal/CacheAccessSerializer$$Lambda$69 +instanceKlass org/gradle/cache/Cache$$Lambda$68 +instanceKlass org/gradle/launcher/daemon/registry/DaemonRegistryServices$$Lambda$67 +instanceKlass org/gradle/internal/nativeintegration/filesystem/services/FallbackStat +instanceKlass org/gradle/internal/nativeintegration/filesystem/services/EmptyChmod +instanceKlass org/gradle/internal/nativeintegration/filesystem/jdk7/Jdk7Symlink +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass net/rubygrapefruit/platform/file/PosixFileInfo +instanceKlass org/gradle/internal/nativeintegration/services/NativeServices$BrokenService +instanceKlass org/gradle/internal/nativeintegration/filesystem/services/UnavailablePosixFiles +instanceKlass net/rubygrapefruit/platform/terminal/Terminals +instanceKlass org/gradle/api/internal/file/temp/GradleUserHomeTemporaryFileProvider$1 +instanceKlass org/gradle/internal/nativeintegration/services/NativeServices$2 +instanceKlass net/rubygrapefruit/platform/file/WindowsFileInfo +instanceKlass net/rubygrapefruit/platform/file/FileInfo +instanceKlass net/rubygrapefruit/platform/internal/DirList +instanceKlass net/rubygrapefruit/platform/internal/AbstractFiles +instanceKlass org/gradle/internal/nativeintegration/filesystem/services/NativePlatformBackedFileMetadataAccessor +instanceKlass java/util/Random +instanceKlass org/gradle/internal/id/RandomLongIdGenerator +instanceKlass org/gradle/cache/internal/DefaultProcessMetaDataProvider +instanceKlass org/gradle/internal/io/ExponentialBackoff$Signal +instanceKlass org/gradle/cache/FileLock +instanceKlass org/gradle/cache/FileAccess +instanceKlass org/gradle/cache/internal/DefaultFileLockManager +instanceKlass org/gradle/internal/remote/ConnectionAcceptor +instanceKlass org/gradle/internal/remote/Address +instanceKlass java/net/SocketAddress +instanceKlass org/gradle/internal/remote/internal/inet/TcpIncomingConnector +instanceKlass org/gradle/launcher/daemon/protocol/DaemonMessageSerializer$OutputMessageSerializer +instanceKlass org/gradle/internal/logging/serializer/LogLevelChangeEventSerializer +instanceKlass org/gradle/internal/logging/serializer/ProgressEventSerializer +instanceKlass org/gradle/internal/logging/serializer/ProgressCompleteEventSerializer +instanceKlass org/gradle/internal/operations/BuildOperationMetadata +instanceKlass org/gradle/internal/logging/serializer/ProgressStartEventSerializer +instanceKlass org/gradle/internal/logging/serializer/SpanSerializer +instanceKlass org/gradle/internal/logging/serializer/StyledTextOutputEventSerializer +instanceKlass org/gradle/internal/logging/serializer/UserInputResumeEventSerializer +instanceKlass org/gradle/internal/logging/serializer/PromptOutputEventSerializer +instanceKlass org/gradle/internal/logging/serializer/UserInputRequestEventSerializer +instanceKlass org/gradle/internal/logging/serializer/LogEventSerializer +instanceKlass org/gradle/launcher/daemon/protocol/DaemonMessageSerializer$CloseInputSerializer +instanceKlass org/gradle/launcher/daemon/protocol/DaemonMessageSerializer$ForwardInputSerializer +instanceKlass org/gradle/launcher/daemon/protocol/DaemonMessageSerializer$BuildEventSerializer +instanceKlass org/gradle/launcher/daemon/protocol/DaemonMessageSerializer$FinishedSerializer +instanceKlass org/gradle/launcher/daemon/protocol/DaemonMessageSerializer$SuccessSerializer +instanceKlass org/gradle/launcher/daemon/protocol/DaemonMessageSerializer$FailureSerializer +instanceKlass org/gradle/launcher/daemon/protocol/DaemonMessageSerializer$BuildStartedSerializer +instanceKlass org/gradle/launcher/daemon/protocol/DaemonMessageSerializer$DaemonUnavailableSerializer +instanceKlass org/gradle/launcher/daemon/protocol/DaemonMessageSerializer$CancelSerializer +instanceKlass org/gradle/launcher/exec/BuildActionParameters +instanceKlass org/gradle/launcher/daemon/protocol/DaemonMessageSerializer$BuildActionParametersSerializer +instanceKlass org/gradle/launcher/daemon/protocol/DaemonMessageSerializer$BuildSerializer +instanceKlass org/gradle/launcher/daemon/protocol/DaemonMessageSerializer +instanceKlass org/gradle/launcher/daemon/server/DaemonTcpServerConnector +instanceKlass org/gradle/launcher/daemon/server/IncomingConnectionHandler +instanceKlass org/gradle/launcher/daemon/server/api/DaemonStateControl +instanceKlass org/gradle/internal/serialize/DefaultSerializerRegistry$TypeInfo +instanceKlass java/util/TreeMap$PrivateEntryIterator +instanceKlass org/gradle/tooling/internal/provider/action/BuildActionSerializer$TestExecutionRequestActionSerializer +instanceKlass org/gradle/tooling/internal/provider/action/BuildActionSerializer$ClientProvidedPhasedActionSerializer +instanceKlass org/gradle/tooling/internal/provider/serialization/SerializedPayloadSerializer +instanceKlass org/gradle/tooling/internal/provider/action/BuildActionSerializer$ClientProvidedBuildActionSerializer +instanceKlass org/gradle/tooling/internal/provider/action/BuildActionSerializer$BuildEventSubscriptionsSerializer +instanceKlass org/gradle/tooling/internal/provider/action/BuildActionSerializer$BuildModelActionSerializer +instanceKlass org/gradle/tooling/internal/provider/action/SubscribableBuildAction +instanceKlass org/gradle/tooling/internal/provider/action/BuildActionSerializer$ValueSerializer +instanceKlass org/gradle/internal/serialize/AbstractSerializer +instanceKlass org/gradle/internal/serialize/BaseSerializerFactory +instanceKlass org/gradle/internal/serialize/AbstractCollectionSerializer +instanceKlass org/gradle/tooling/internal/provider/action/BuildActionSerializer$NullableFileSerializer +instanceKlass org/gradle/tooling/internal/provider/action/BuildActionSerializer$StartParameterSerializer +instanceKlass org/gradle/tooling/internal/provider/action/BuildActionSerializer$ExecuteBuildActionSerializer +instanceKlass org/gradle/tooling/internal/provider/action/ExecuteBuildAction +instanceKlass org/gradle/internal/serialize/DefaultSerializerRegistry$HierarchySerializerMatcher +instanceKlass org/gradle/internal/serialize/DefaultSerializerRegistry$StrictSerializerMatcher +instanceKlass org/gradle/internal/serialize/DefaultSerializerRegistry$SerializerClassMatcherStrategy +instanceKlass org/gradle/internal/serialize/DefaultSerializerRegistry$1 +instanceKlass org/gradle/internal/serialize/DefaultSerializerRegistry +instanceKlass org/gradle/internal/serialize/SerializerRegistry +instanceKlass org/gradle/tooling/internal/provider/action/BuildActionSerializer +instanceKlass org/gradle/initialization/BuildRequestContext +instanceKlass org/gradle/launcher/daemon/server/exec/WatchForDisconnection +instanceKlass org/gradle/launcher/daemon/server/exec/ResetDeprecationLogger +instanceKlass org/gradle/launcher/daemon/server/exec/RequestStopIfSingleUsedDaemon +instanceKlass org/gradle/launcher/daemon/server/api/StdinHandler +instanceKlass org/gradle/launcher/daemon/server/exec/ForwardClientInput +instanceKlass org/gradle/launcher/daemon/server/health/HealthLogger +instanceKlass org/gradle/launcher/daemon/server/exec/LogAndCheckHealth +instanceKlass org/gradle/launcher/daemon/server/exec/BuildCommandOnly +instanceKlass org/gradle/launcher/daemon/server/exec/ReturnResult +instanceKlass org/gradle/launcher/daemon/server/api/HandleReportStatus +instanceKlass org/gradle/launcher/daemon/server/exec/HandleCancel +instanceKlass org/gradle/launcher/daemon/server/api/HandleInvalidateVirtualFileSystem +instanceKlass org/gradle/launcher/daemon/protocol/Message +instanceKlass org/gradle/launcher/daemon/server/api/HandleStop +instanceKlass org/gradle/launcher/daemon/diagnostics/DaemonDiagnostics +instanceKlass org/gradle/tooling/internal/provider/BuildSessionLifecycleBuildActionExecuter +instanceKlass org/gradle/tooling/internal/provider/StartParamsValidatingActionExecuter +instanceKlass org/gradle/initialization/BuildRequestMetaData +instanceKlass org/gradle/initialization/exception/ExceptionAnalyser +instanceKlass org/gradle/initialization/exception/ExceptionCollector +instanceKlass org/gradle/tooling/internal/provider/SessionFailureReportingActionExecuter +instanceKlass org/gradle/StartParameter +instanceKlass org/gradle/concurrent/ParallelismConfiguration +instanceKlass org/gradle/tooling/internal/provider/SetupLoggingActionExecuter +instanceKlass org/gradle/cache/GlobalCacheLocations +instanceKlass org/gradle/internal/file/FileAccessTimeJournal +instanceKlass org/gradle/internal/execution/timeout/TimeoutHandler +instanceKlass org/gradle/initialization/ClassLoaderScopeRegistry +instanceKlass org/gradle/cache/internal/FileContentCacheFactory +instanceKlass org/gradle/cache/scopes/ScopedCache +instanceKlass org/gradle/process/internal/worker/WorkerProcessFactory +instanceKlass org/gradle/internal/hash/ClassLoaderHierarchyHasher +instanceKlass org/gradle/internal/classloader/HashingClassLoaderFactory +instanceKlass org/gradle/groovy/scripts/internal/ScriptSourceHasher +instanceKlass org/gradle/cache/CacheRepository +instanceKlass org/gradle/cache/internal/CacheScopeMapping +instanceKlass org/gradle/api/internal/initialization/loadercache/ClassLoaderCache +instanceKlass org/gradle/internal/isolation/IsolatableFactory +instanceKlass org/gradle/internal/service/scopes/WorkerSharedUserHomeScopeServices +instanceKlass org/gradle/internal/service/scopes/DefaultGradleUserHomeScopeServiceRegistry +instanceKlass org/gradle/internal/logging/text/AbstractStyledTextOutputFactory +instanceKlass org/gradle/launcher/daemon/server/expiry/DaemonExpirationResult +instanceKlass org/gradle/internal/event/DefaultListenerManager$EventBroadcast +instanceKlass org/gradle/launcher/daemon/server/expiry/DaemonExpirationListener +instanceKlass com/google/common/collect/ObjectArrays +instanceKlass org/gradle/launcher/daemon/server/health/LowNonHeapDaemonExpirationStrategy +instanceKlass org/gradle/launcher/daemon/server/health/LowHeapSpaceDaemonExpirationStrategy +instanceKlass org/gradle/launcher/daemon/server/health/GcThrashingDaemonExpirationStrategy +instanceKlass org/gradle/launcher/daemon/server/expiry/AnyDaemonExpirationStrategy +instanceKlass java/lang/FunctionalInterface +instanceKlass org/gradle/internal/service/DefaultServiceRegistry$RegistrationWrapper +instanceKlass org/gradle/internal/service/scopes/Scopes$Build +instanceKlass org/gradle/internal/service/scopes/EventScope +instanceKlass kotlin/annotation/Target +instanceKlass kotlin/annotation/Retention +instanceKlass kotlin/Metadata +instanceKlass java/lang/annotation/Documented +instanceKlass org/gradle/api/Incubating +instanceKlass jdk/internal/reflect/ClassDefiner$1 +instanceKlass jdk/internal/reflect/ClassDefiner +instanceKlass jdk/internal/reflect/MethodAccessorGenerator$1 +instanceKlass jdk/internal/reflect/Label$PatchInfo +instanceKlass jdk/internal/reflect/Label +instanceKlass jdk/internal/reflect/UTF8 +instanceKlass jdk/internal/reflect/ClassFileAssembler +instanceKlass jdk/internal/reflect/ByteVectorImpl +instanceKlass jdk/internal/reflect/ByteVector +instanceKlass jdk/internal/reflect/ByteVectorFactory +instanceKlass jdk/internal/reflect/AccessorGenerator +instanceKlass jdk/internal/reflect/ClassFileConstants +instanceKlass org/gradle/internal/service/scopes/Scopes$BuildTree +instanceKlass org/gradle/internal/service/scopes/Scopes$BuildSession +instanceKlass org/gradle/internal/service/scopes/Scopes$UserHome +instanceKlass java/lang/annotation/Target +instanceKlass sun/reflect/annotation/AnnotationInvocationHandler +instanceKlass sun/reflect/annotation/AnnotationParser$1 +instanceKlass sun/reflect/annotation/ExceptionProxy +instanceKlass java/lang/annotation/Inherited +instanceKlass java/lang/annotation/Retention +instanceKlass sun/reflect/annotation/AnnotationType$1 +instanceKlass sun/reflect/annotation/AnnotationType +instanceKlass java/lang/reflect/GenericArrayType +instanceKlass org/gradle/internal/service/scopes/ServiceScope +instanceKlass java/lang/Class$AnnotationData +instanceKlass java/time/Duration +instanceKlass java/time/temporal/TemporalAmount +instanceKlass org/gradle/internal/service/scopes/StatefulListener +instanceKlass org/gradle/internal/service/scopes/Scope$Global +instanceKlass java/time/temporal/TemporalUnit +instanceKlass org/gradle/internal/service/scopes/Scope +instanceKlass java/util/concurrent/TimeUnit$1 +instanceKlass java/util/concurrent/Executors$RunnableAdapter +instanceKlass java/util/concurrent/Executors +instanceKlass java/util/concurrent/FutureTask$WaitNode +instanceKlass java/util/concurrent/FutureTask +instanceKlass org/gradle/internal/concurrent/ManagedExecutorImpl$1 +instanceKlass org/gradle/launcher/daemon/server/health/gc/GarbageCollectionCheck +instanceKlass org/gradle/launcher/daemon/server/health/gc/DefaultGarbageCollectionMonitor$1 +instanceKlass java/util/concurrent/BlockingDeque +instanceKlass org/gradle/launcher/daemon/server/health/gc/DefaultSlidingWindow +instanceKlass org/gradle/launcher/daemon/server/health/gc/SlidingWindow +instanceKlass org/gradle/launcher/daemon/server/health/gc/DefaultGarbageCollectionMonitor +instanceKlass org/gradle/launcher/daemon/server/health/gc/GarbageCollectionInfo +instanceKlass org/gradle/internal/concurrent/ExecutorPolicy$CatchAndRecordFailures +instanceKlass java/util/concurrent/RunnableScheduledFuture +instanceKlass java/util/concurrent/ScheduledFuture +instanceKlass java/util/concurrent/Delayed +instanceKlass java/util/concurrent/RunnableFuture +instanceKlass java/util/concurrent/Future +instanceKlass org/gradle/internal/concurrent/ThreadFactoryImpl +instanceKlass java/util/concurrent/ThreadPoolExecutor$AbortPolicy +instanceKlass java/util/concurrent/RejectedExecutionHandler +instanceKlass java/util/concurrent/AbstractExecutorService +instanceKlass org/gradle/internal/concurrent/ManagedScheduledExecutor +instanceKlass java/util/concurrent/ScheduledExecutorService +instanceKlass org/gradle/internal/concurrent/ManagedExecutor +instanceKlass java/util/concurrent/ExecutorService +instanceKlass java/util/concurrent/Executor +instanceKlass org/gradle/internal/concurrent/AsyncStoppable +instanceKlass org/gradle/internal/concurrent/ExecutorPolicy +instanceKlass org/gradle/internal/concurrent/DefaultExecutorFactory +instanceKlass org/gradle/launcher/daemon/server/health/gc/GarbageCollectorMonitoringStrategy$3 +instanceKlass sun/management/Sensor +instanceKlass sun/management/MemoryPoolImpl +instanceKlass java/lang/management/MemoryPoolMXBean +instanceKlass org/gradle/launcher/daemon/server/health/gc/GarbageCollectorMonitoringStrategy$2 +instanceKlass org/gradle/util/internal/CollectionUtils +instanceKlass org/gradle/launcher/daemon/server/health/gc/GarbageCollectorMonitoringStrategy$1 +instanceKlass sun/management/spi/PlatformMBeanProvider$PlatformComponent$$Lambda$66 +instanceKlass sun/management/spi/PlatformMBeanProvider$PlatformComponent$$Lambda$65 +instanceKlass com/sun/jmx/mbeanserver/Util +instanceKlass javax/management/ObjectName$Property +instanceKlass com/sun/jmx/mbeanserver/GetPropertyAction +instanceKlass javax/management/ObjectName +instanceKlass javax/management/QueryExp +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass sun/management/Util +instanceKlass com/sun/management/GarbageCollectorMXBean +instanceKlass java/lang/management/MemoryMXBean +instanceKlass java/util/stream/Collectors$$Lambda$64 +instanceKlass java/util/stream/Collectors$$Lambda$63 +instanceKlass java/util/stream/Collectors$$Lambda$62 +instanceKlass java/lang/management/ManagementFactory$$Lambda$61 +instanceKlass java/lang/management/ManagementFactory$PlatformMBeanFinder$$Lambda$60 +instanceKlass java/util/HashMap$HashMapSpliterator +instanceKlass java/lang/management/ManagementFactory$PlatformMBeanFinder$$Lambda$59 +instanceKlass java/lang/management/ManagementFactory$PlatformMBeanFinder$$Lambda$58 +instanceKlass java/util/Collections$2 +instanceKlass jdk/management/jfr/internal/FlightRecorderMXBeanProvider$SingleMBeanComponent +instanceKlass jdk/management/jfr/FlightRecorderMXBean +instanceKlass java/util/stream/Collectors$$Lambda$57 +instanceKlass java/util/stream/Collectors$$Lambda$56 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass java/util/stream/Collectors$$Lambda$55 +instanceKlass java/lang/management/ManagementFactory$PlatformMBeanFinder$$Lambda$54 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass java/util/function/Function$$Lambda$53 +instanceKlass java/lang/management/ManagementFactory$PlatformMBeanFinder$$Lambda$52 +instanceKlass java/lang/management/ManagementFactory$PlatformMBeanFinder$$Lambda$51 +instanceKlass java/lang/management/DefaultPlatformMBeanProvider$11 +instanceKlass java/lang/management/DefaultPlatformMBeanProvider$10 +instanceKlass java/lang/management/DefaultPlatformMBeanProvider$9 +instanceKlass sun/management/ManagementFactoryHelper$LoggingMXBeanAccess$1 +instanceKlass sun/management/ManagementFactoryHelper$LoggingMXBeanAccess +instanceKlass java/lang/management/DefaultPlatformMBeanProvider$8 +instanceKlass java/lang/management/DefaultPlatformMBeanProvider$7 +instanceKlass java/lang/management/DefaultPlatformMBeanProvider$6 +instanceKlass java/lang/management/DefaultPlatformMBeanProvider$5 +instanceKlass java/lang/management/DefaultPlatformMBeanProvider$4 +instanceKlass java/lang/management/DefaultPlatformMBeanProvider$3 +instanceKlass java/lang/management/DefaultPlatformMBeanProvider$2 +instanceKlass java/lang/management/DefaultPlatformMBeanProvider$1 +instanceKlass com/sun/management/internal/PlatformMBeanProviderImpl$5 +instanceKlass sun/management/VMManagementImpl +instanceKlass sun/management/VMManagement +instanceKlass sun/management/ManagementFactoryHelper +instanceKlass sun/management/NotificationEmitterSupport +instanceKlass javax/management/NotificationEmitter +instanceKlass javax/management/NotificationBroadcaster +instanceKlass com/sun/management/DiagnosticCommandMBean +instanceKlass javax/management/DynamicMBean +instanceKlass com/sun/management/internal/PlatformMBeanProviderImpl$4 +instanceKlass com/sun/management/internal/PlatformMBeanProviderImpl$3 +instanceKlass com/sun/management/internal/PlatformMBeanProviderImpl$2 +instanceKlass java/util/stream/ReduceOps$Box +instanceKlass java/util/stream/ReduceOps$AccumulatingSink +instanceKlass java/util/stream/ReduceOps$ReduceOp +instanceKlass java/util/stream/ReduceOps +instanceKlass java/util/stream/Collectors$$Lambda$50 +instanceKlass java/util/stream/Collectors$$Lambda$49 +instanceKlass java/util/function/BinaryOperator +instanceKlass java/util/stream/Collectors$$Lambda$48 +instanceKlass java/util/function/BiConsumer +instanceKlass java/util/stream/Collectors$$Lambda$47 +instanceKlass java/util/stream/Collectors$CollectorImpl +instanceKlass java/util/stream/Collector +instanceKlass java/util/stream/Collectors +instanceKlass com/sun/management/internal/PlatformMBeanProviderImpl$1 +instanceKlass sun/management/spi/PlatformMBeanProvider$PlatformComponent +instanceKlass com/sun/management/internal/PlatformMBeanProviderImpl$$Lambda$46 +instanceKlass java/util/concurrent/Callable +instanceKlass java/lang/management/ManagementFactory$PlatformMBeanFinder$$Lambda$45 +instanceKlass sun/management/spi/PlatformMBeanProvider +instanceKlass java/lang/management/ManagementFactory$PlatformMBeanFinder$$Lambda$44 +instanceKlass java/lang/management/ManagementFactory$PlatformMBeanFinder +instanceKlass java/lang/management/GarbageCollectorMXBean +instanceKlass java/lang/management/MemoryManagerMXBean +instanceKlass java/lang/management/PlatformManagedObject +instanceKlass java/lang/management/ManagementFactory$$Lambda$43 +instanceKlass java/lang/management/ManagementFactory +instanceKlass org/gradle/launcher/daemon/server/health/gc/GarbageCollectionMonitor +instanceKlass org/gradle/internal/time/DefaultTimer +instanceKlass org/gradle/internal/logging/text/AbstractLineChoppingStyledTextOutput$StateContext +instanceKlass java/text/DontCareFieldPosition$1 +instanceKlass java/text/Format$FieldDelegate +instanceKlass java/util/Date +instanceKlass java/text/DigitList +instanceKlass java/text/FieldPosition +instanceKlass sun/util/locale/provider/JRELocaleProviderAdapter$$Lambda$42 +instanceKlass sun/util/locale/provider/JRELocaleProviderAdapter$$Lambda$41 +instanceKlass java/text/DateFormatSymbols +instanceKlass sun/util/calendar/CalendarUtils +instanceKlass sun/util/calendar/CalendarDate +instanceKlass sun/util/cldr/CLDRLocaleProviderAdapter$$Lambda$40 +instanceKlass sun/util/locale/provider/CalendarDataUtility$CalendarWeekParameterGetter +instanceKlass sun/util/locale/provider/LocaleServiceProviderPool$LocalizedObjectGetter +instanceKlass sun/util/locale/provider/LocaleServiceProviderPool +instanceKlass sun/util/calendar/CalendarSystem$GregorianHolder +instanceKlass sun/util/calendar/CalendarSystem +instanceKlass java/util/Calendar$Builder +instanceKlass sun/util/locale/provider/JRELocaleProviderAdapter$$Lambda$39 +instanceKlass sun/util/calendar/ZoneInfoFile$ZoneOffsetTransitionRule +instanceKlass sun/util/calendar/ZoneInfoFile$1 +instanceKlass sun/util/calendar/ZoneInfoFile +instanceKlass java/util/TimeZone +instanceKlass java/util/Calendar +instanceKlass java/text/AttributedCharacterIterator$Attribute +instanceKlass java/text/Format +instanceKlass org/gradle/internal/logging/sink/LogEventDispatcher +instanceKlass org/gradle/internal/logging/text/AbstractLineChoppingStyledTextOutput$SeenFromEol +instanceKlass org/gradle/internal/logging/text/AbstractLineChoppingStyledTextOutput$4 +instanceKlass org/gradle/internal/logging/text/AbstractLineChoppingStyledTextOutput$3 +instanceKlass org/gradle/internal/logging/text/AbstractLineChoppingStyledTextOutput$2 +instanceKlass org/gradle/internal/logging/text/AbstractLineChoppingStyledTextOutput$1 +instanceKlass org/gradle/internal/logging/text/AbstractLineChoppingStyledTextOutput$State +instanceKlass org/gradle/internal/logging/text/StreamBackedStandardOutputListener +instanceKlass org/gradle/internal/logging/text/AbstractStyledTextOutput +instanceKlass org/gradle/internal/logging/console/StyledTextOutputBackedRenderer +instanceKlass org/slf4j/helpers/FormattingTuple +instanceKlass org/slf4j/helpers/MessageFormatter +instanceKlass net/rubygrapefruit/platform/internal/FunctionResult +instanceKlass org/gradle/internal/logging/source/PrintStreamLoggingSystem$PrintStreamDestination +instanceKlass java/util/logging/ErrorManager +instanceKlass org/gradle/internal/logging/source/JavaUtilLoggingSystem$SnapshotImpl +instanceKlass org/gradle/internal/logging/config/LoggingSystemAdapter$SnapshotImpl +instanceKlass org/gradle/internal/dispatch/MethodInvocation +instanceKlass org/gradle/internal/logging/sink/OutputEventRenderer$SnapshotImpl +instanceKlass org/gradle/process/internal/shutdown/ShutdownHooks +instanceKlass org/gradle/launcher/daemon/bootstrap/DaemonMain$1 +instanceKlass com/google/common/io/Files$2 +instanceKlass com/google/common/io/ByteSource +instanceKlass com/google/common/io/ByteSink +instanceKlass com/google/common/io/LineProcessor +instanceKlass com/google/common/base/Predicate +instanceKlass com/google/common/graph/SuccessorsFunction +instanceKlass com/google/common/io/Files +instanceKlass org/gradle/util/internal/GFileUtils +instanceKlass java/util/regex/CharPredicates$$Lambda$38 +instanceKlass org/gradle/util/GradleVersion +instanceKlass org/gradle/launcher/daemon/context/DefaultDaemonContext$Serializer +instanceKlass org/gradle/launcher/daemon/context/DefaultDaemonContext +instanceKlass net/rubygrapefruit/platform/internal/jni/PosixProcessFunctions +instanceKlass org/gradle/internal/FileUtils$1 +instanceKlass org/gradle/internal/FileUtils +instanceKlass com/google/common/collect/Lists +instanceKlass org/gradle/internal/nativeintegration/ReflectiveEnvironment +instanceKlass org/gradle/internal/nativeintegration/processenvironment/AbstractProcessEnvironment +instanceKlass net/rubygrapefruit/platform/internal/DefaultProcess +instanceKlass net/rubygrapefruit/platform/internal/WrapperProcess +instanceKlass net/rubygrapefruit/platform/file/WindowsFiles +instanceKlass org/gradle/launcher/daemon/context/DaemonContextBuilder +instanceKlass org/gradle/internal/id/UUIDGenerator +instanceKlass org/gradle/internal/remote/MessagingServer +instanceKlass org/gradle/internal/remote/internal/IncomingConnector +instanceKlass org/gradle/internal/remote/MessagingClient +instanceKlass org/gradle/internal/remote/internal/OutgoingConnector +instanceKlass org/gradle/internal/id/IdGenerator +instanceKlass org/gradle/internal/remote/services/MessagingServices +instanceKlass org/gradle/api/internal/file/DefaultFileLookup +instanceKlass org/gradle/internal/scripts/DefaultScriptFileResolver +instanceKlass org/gradle/internal/scripts/ScriptFileResolver +instanceKlass org/gradle/initialization/layout/BuildLayoutFactory +instanceKlass org/gradle/tooling/internal/provider/runner/OperationDependencyLookup +instanceKlass org/gradle/tooling/internal/provider/runner/ToolingApiBuildEventListenerFactory +instanceKlass org/gradle/configurationcache/serialization/beans/BeanConstructors +instanceKlass org/gradle/nativeplatform/NativeBinarySpec +instanceKlass org/gradle/platform/base/BinarySpec +instanceKlass org/gradle/platform/base/Binary +instanceKlass org/gradle/api/CheckableComponentSpec +instanceKlass org/gradle/api/BuildableComponentSpec +instanceKlass org/gradle/platform/base/ComponentSpec +instanceKlass org/gradle/model/ModelElement +instanceKlass org/gradle/api/Buildable +instanceKlass org/gradle/internal/resource/transport/sftp/SftpClientFactory +instanceKlass org/gradle/internal/resource/transport/sftp/SftpResourcesPluginServiceRegistry$GlobalScopeServices +instanceKlass org/gradle/internal/resource/transport/aws/s3/S3ResourcesPluginServiceRegistry$GlobalScopeServices +instanceKlass org/gradle/internal/resource/transport/gcp/gcs/GcsResourcesPluginServiceRegistry$GlobalScopeServices +instanceKlass org/gradle/nativeplatform/TargetMachineBuilder +instanceKlass org/gradle/nativeplatform/TargetMachine +instanceKlass org/gradle/nativeplatform/internal/DefaultTargetMachineFactory +instanceKlass org/gradle/nativeplatform/TargetMachineFactory +instanceKlass org/gradle/nativeplatform/internal/NativePlatformResolver +instanceKlass org/gradle/platform/base/internal/PlatformResolver +instanceKlass org/gradle/nativeplatform/platform/internal/NativePlatformInternal +instanceKlass org/gradle/nativeplatform/platform/NativePlatform +instanceKlass org/gradle/platform/base/Platform +instanceKlass org/gradle/nativeplatform/platform/internal/OperatingSystemInternal +instanceKlass org/gradle/nativeplatform/platform/OperatingSystem +instanceKlass org/gradle/api/Named +instanceKlass org/gradle/nativeplatform/platform/internal/NativePlatforms +instanceKlass org/gradle/internal/logging/text/DiagnosticsVisitor +instanceKlass org/gradle/buildinit/plugins/internal/action/InitBuiltInCommand +instanceKlass org/gradle/api/component/SoftwareComponentFactory +instanceKlass org/gradle/api/plugins/internal/PluginAuthorServices$GlobalScopeServices +instanceKlass org/gradle/internal/build/event/BuildEventSubscriptions +instanceKlass org/gradle/internal/build/event/OperationResultPostProcessorFactory +instanceKlass org/gradle/language/java/internal/JavaLanguagePluginServiceRegistry$JavaGlobalScopeServices +instanceKlass org/gradle/platform/base/internal/registry/ComponentModelBaseServiceRegistry$GlobalScopeServices +instanceKlass org/gradle/reporting/ReportRenderer +instanceKlass org/gradle/api/reporting/components/internal/DiagnosticsServices$1 +instanceKlass org/gradle/api/plugins/internal/HelpBuiltInCommand +instanceKlass org/gradle/configuration/project/BuiltInCommand +instanceKlass org/gradle/internal/resource/transport/http/HttpClientHelper$Factory +instanceKlass org/gradle/internal/resource/transport/http/SslContextFactory +instanceKlass org/gradle/internal/resource/transport/http/HttpResourcesPluginServiceRegistry$GlobalScopeServices +instanceKlass org/gradle/api/internal/artifacts/configurations/MarkConfigurationObservedListener +instanceKlass org/gradle/api/internal/artifacts/configurations/ProjectDependencyObservedListener +instanceKlass org/gradle/internal/resource/ExternalResourceName +instanceKlass org/gradle/api/Describable +instanceKlass org/gradle/api/artifacts/component/ComponentSelector +instanceKlass org/gradle/api/internal/artifacts/transform/ArtifactTransformActionScheme +instanceKlass org/gradle/api/internal/artifacts/transform/ArtifactTransformParameterScheme +instanceKlass org/gradle/api/internal/tasks/properties/annotations/AbstractInputFilePropertyAnnotationHandler +instanceKlass org/gradle/cache/internal/ProducerGuard +instanceKlass org/gradle/api/internal/attributes/EmptySchema +instanceKlass org/gradle/api/internal/attributes/AttributesSchemaInternal +instanceKlass org/gradle/api/internal/attributes/DescribableAttributesSchema +instanceKlass org/gradle/api/attributes/AttributesSchema +instanceKlass org/gradle/api/internal/artifacts/dsl/dependencies/PlatformSupport +instanceKlass org/gradle/api/internal/artifacts/ivyservice/moduleconverter/dependencies/AbstractIvyDependencyDescriptorFactory +instanceKlass org/gradle/api/internal/artifacts/ivyservice/moduleconverter/dependencies/IvyDependencyDescriptorFactory +instanceKlass org/gradle/internal/typeconversion/NotationParser +instanceKlass org/gradle/api/internal/artifacts/ivyservice/moduleconverter/LocalComponentMetadataBuilder +instanceKlass org/gradle/api/internal/artifacts/ivyservice/moduleconverter/dependencies/LocalConfigurationMetadataBuilder +instanceKlass org/gradle/internal/resource/local/FileResourceRepository +instanceKlass org/gradle/internal/resource/ExternalResourceRepository +instanceKlass org/gradle/api/internal/artifacts/ivyservice/IvyContextManager +instanceKlass org/gradle/api/internal/artifacts/ivyservice/moduleconverter/dependencies/DependencyDescriptorFactory +instanceKlass org/gradle/internal/resource/connector/ResourceConnectorFactory +instanceKlass org/gradle/api/internal/artifacts/ivyservice/moduleconverter/dependencies/ExcludeRuleConverter +instanceKlass org/gradle/internal/typeconversion/NotationConverter +instanceKlass org/gradle/api/internal/artifacts/ImmutableModuleIdentifierFactory +instanceKlass org/gradle/api/internal/artifacts/DependencyManagementGlobalScopeServices +instanceKlass org/gradle/kotlin/dsl/support/ImplicitImports +instanceKlass org/gradle/kotlin/dsl/support/GlobalServices +instanceKlass org/gradle/internal/build/event/BuildEventServices$1 +instanceKlass org/gradle/internal/build/event/BuildEventListenerFactory +instanceKlass org/gradle/initialization/BuildEventConsumer +instanceKlass org/gradle/internal/operations/BuildOperationListener +instanceKlass org/gradle/internal/build/event/DefaultBuildEventsListenerRegistry +instanceKlass org/gradle/internal/build/event/BuildEventListenerRegistryInternal +instanceKlass org/gradle/build/event/BuildEventsListenerRegistry +instanceKlass org/gradle/api/internal/changedetection/state/FileHasherStatistics$Collector +instanceKlass org/gradle/internal/snapshot/impl/DirectorySnapshotterStatistics$Collector +instanceKlass org/gradle/internal/service/scopes/VirtualFileSystemServices$GlobalScopeServices +instanceKlass org/gradle/internal/service/scopes/ExecutionGlobalServices$AnnotationHandlerRegistration +instanceKlass org/gradle/internal/operations/BuildOperationAncestryTracker +instanceKlass org/gradle/api/internal/tasks/properties/PropertyWalker +instanceKlass org/gradle/api/internal/tasks/properties/TaskScheme +instanceKlass org/gradle/api/internal/tasks/properties/TypeScheme +instanceKlass org/gradle/internal/service/scopes/ExecutionGlobalServices$AnnotationHandlerRegistar +instanceKlass org/gradle/api/internal/tasks/properties/InspectionSchemeFactory +instanceKlass org/gradle/api/model/ReplacedBy +instanceKlass org/gradle/api/tasks/Internal +instanceKlass org/gradle/api/tasks/OutputFiles +instanceKlass org/gradle/api/tasks/OutputFile +instanceKlass org/gradle/api/tasks/OutputDirectory +instanceKlass org/gradle/api/tasks/OutputDirectories +instanceKlass org/gradle/api/tasks/options/OptionValues +instanceKlass org/gradle/api/tasks/Nested +instanceKlass org/gradle/api/tasks/LocalState +instanceKlass org/gradle/api/tasks/InputFiles +instanceKlass org/gradle/api/tasks/InputFile +instanceKlass org/gradle/api/tasks/InputDirectory +instanceKlass org/gradle/api/artifacts/transform/InputArtifactDependencies +instanceKlass org/gradle/api/artifacts/transform/InputArtifact +instanceKlass org/gradle/api/tasks/Input +instanceKlass org/gradle/api/tasks/Destroys +instanceKlass org/gradle/api/tasks/Console +instanceKlass org/gradle/api/internal/project/taskfactory/TaskClassInfoStore +instanceKlass org/gradle/internal/execution/TaskExecutionTracker +instanceKlass org/gradle/internal/reflect/annotations/TypeAnnotationMetadataStore +instanceKlass org/gradle/api/internal/tasks/properties/annotations/TypeAnnotationHandler +instanceKlass org/gradle/internal/service/scopes/ExecutionGlobalServices +instanceKlass org/gradle/tooling/internal/provider/ExecuteBuildActionRunner +instanceKlass org/gradle/internal/buildtree/BuildActionRunner +instanceKlass org/gradle/tooling/internal/provider/serialization/ClassLoaderCache +instanceKlass org/gradle/internal/filewatch/FileSystemChangeWaiterFactory +instanceKlass org/gradle/tooling/internal/provider/LauncherServices$ToolingGlobalScopeServices +instanceKlass org/gradle/internal/service/DefaultServiceLocator$ServiceFactory +instanceKlass org/gradle/internal/service/scopes/AbstractPluginServiceRegistry +instanceKlass org/gradle/internal/service/scopes/PluginServiceRegistry +instanceKlass org/gradle/api/internal/classpath/DefaultModuleRegistry$DefaultModule +instanceKlass org/gradle/internal/IoActions +instanceKlass org/gradle/api/Transformer +instanceKlass org/gradle/util/internal/GUtil +instanceKlass org/gradle/api/internal/classpath/DefaultModuleRegistry$$Lambda$37 +instanceKlass java/util/NavigableSet +instanceKlass java/util/SortedSet +instanceKlass com/google/common/collect/Sets +instanceKlass groovy/lang/MetaClass +instanceKlass groovy/lang/MetaObjectProtocol +instanceKlass groovy/lang/GroovySystem +instanceKlass groovy/lang/MetaClassRegistry +instanceKlass groovy/lang/GroovyObject +instanceKlass org/objectweb/asm/ClassVisitor +instanceKlass java/util/ComparableTimSort +instanceKlass java/util/Arrays$LegacyMergeSort +instanceKlass org/gradle/internal/util/Trie$Builder +instanceKlass org/gradle/internal/util/Trie +instanceKlass org/gradle/internal/classloader/FilteringClassLoader$TrieSet +instanceKlass java/lang/ClassLoader$$Lambda$36 +instanceKlass jdk/internal/loader/BootLoader$PackageHelper$$Lambda$35 +instanceKlass jdk/internal/loader/BootLoader$PackageHelper +instanceKlass java/util/stream/StreamSpliterators$WrappingSpliterator$$Lambda$34 +instanceKlass java/util/stream/AbstractSpinedBuffer +instanceKlass java/util/stream/Node$Builder +instanceKlass java/util/stream/Node$OfDouble +instanceKlass java/util/stream/Node$OfLong +instanceKlass java/util/stream/Node$OfInt +instanceKlass java/util/stream/Node$OfPrimitive +instanceKlass java/util/stream/Nodes$EmptyNode +instanceKlass java/util/stream/Node +instanceKlass java/util/stream/Nodes +instanceKlass java/lang/ClassLoader$$Lambda$33 +instanceKlass java/util/function/IntFunction +instanceKlass jdk/internal/loader/BootLoader$$Lambda$32 +instanceKlass java/util/stream/Streams$2 +instanceKlass java/util/stream/StreamSpliterators$AbstractWrappingSpliterator +instanceKlass java/util/stream/AbstractPipeline$$Lambda$31 +instanceKlass java/util/stream/Streams$ConcatSpliterator +instanceKlass java/lang/ClassLoader$$Lambda$30 +instanceKlass org/gradle/internal/classloader/ClassLoaderUtils$AbstractClassLoaderLookuper +instanceKlass org/gradle/internal/classloader/ClassLoaderUtils$ClassLoaderPackagesFetcher +instanceKlass org/gradle/internal/classloader/ClassLoaderUtils$ClassDefiner +instanceKlass org/gradle/internal/classloader/ClassLoaderUtils +instanceKlass org/gradle/initialization/GradleApiSpecAggregator$DefaultSpec +instanceKlass kotlin/jvm/internal/Intrinsics +instanceKlass kotlin/collections/SetsKt__SetsJVMKt +instanceKlass com/google/common/collect/PeekingIterator +instanceKlass com/google/common/collect/UnmodifiableIterator +instanceKlass com/google/common/collect/Iterators +instanceKlass com/google/common/collect/Hashing +instanceKlass com/google/common/base/Java8Usage$$Lambda$29 +instanceKlass com/google/common/base/Java8Usage +instanceKlass com/google/common/base/Preconditions +instanceKlass org/apache/groovy/json/DefaultFastStringServiceFactory +instanceKlass org/apache/groovy/json/FastStringServiceFactory +instanceKlass org/gradle/internal/reflect/ReflectionCache$CacheEntry +instanceKlass com/google/common/math/IntMath$1 +instanceKlass com/google/common/math/MathPreconditions +instanceKlass com/google/common/math/IntMath +instanceKlass com/google/common/collect/ImmutableCollection$Builder +instanceKlass com/google/common/collect/ImmutableSet$SetBuilderImpl +instanceKlass org/gradle/kotlin/dsl/provider/KotlinGradleApiSpecProvider +instanceKlass org/gradle/initialization/GradleApiSpecProvider$SpecAdapter +instanceKlass org/gradle/initialization/GradleApiSpecProvider +instanceKlass org/gradle/internal/service/DefaultServiceLocator +instanceKlass org/gradle/initialization/GradleApiSpecProvider$Spec +instanceKlass org/gradle/initialization/GradleApiSpecAggregator +instanceKlass com/google/common/base/Function +instanceKlass org/gradle/internal/reflect/CachedInvokable +instanceKlass org/gradle/internal/reflect/ReflectionCache +instanceKlass org/gradle/internal/reflect/DirectInstantiator +instanceKlass org/gradle/initialization/DefaultClassLoaderRegistry +instanceKlass org/gradle/internal/installation/GradleRuntimeShadedJarDetector +instanceKlass sun/net/www/protocol/jar/URLJarFileCallBack +instanceKlass sun/net/www/protocol/jar/JarFileFactory +instanceKlass sun/net/www/protocol/jar/URLJarFile$URLJarFileCloseController +instanceKlass java/net/URLClassLoader$2 +instanceKlass org/objectweb/asm/Type +instanceKlass org/gradle/initialization/DefaultLegacyTypesSupport +instanceKlass org/gradle/api/internal/DynamicModulesClassPathProvider +instanceKlass org/gradle/api/internal/DefaultClassPathProvider +instanceKlass org/gradle/api/internal/ClassPathProvider +instanceKlass org/gradle/api/internal/DefaultClassPathRegistry +instanceKlass org/gradle/api/internal/classpath/DefaultPluginModuleRegistry +instanceKlass org/gradle/api/internal/classpath/ManifestUtil +instanceKlass org/gradle/internal/classloader/ClassLoaderSpec +instanceKlass org/gradle/internal/classloader/ClassLoaderHierarchy +instanceKlass org/gradle/internal/classloader/ClassLoaderVisitor +instanceKlass org/gradle/api/internal/classpath/DefaultModuleRegistry$$Lambda$28 +instanceKlass org/gradle/api/internal/classpath/Module +instanceKlass org/gradle/internal/installation/GradleInstallation$1 +instanceKlass org/gradle/internal/installation/GradleInstallation +instanceKlass org/gradle/internal/classloader/ClasspathUtil +instanceKlass org/gradle/internal/installation/CurrentGradleInstallationLocator +instanceKlass org/gradle/model/internal/manage/schema/extract/ModelSchemaExtractionStrategy +instanceKlass org/gradle/model/internal/manage/schema/extract/ModelSchemaAspectExtractionStrategy +instanceKlass org/gradle/model/internal/inspect/MethodModelRuleExtractor +instanceKlass org/gradle/api/tasks/util/PatternSet +instanceKlass org/gradle/api/tasks/util/PatternFilterable +instanceKlass org/gradle/api/tasks/AntBuilderAware +instanceKlass org/gradle/api/internal/tasks/properties/annotations/AbstractOutputPropertyAnnotationHandler +instanceKlass org/gradle/api/internal/tasks/properties/annotations/PropertyAnnotationHandler +instanceKlass org/gradle/internal/instantiation/InjectAnnotationHandler +instanceKlass org/gradle/api/internal/file/FileLookup +instanceKlass org/gradle/internal/event/DefaultListenerManager +instanceKlass org/gradle/api/internal/DocumentationRegistry +instanceKlass org/gradle/cache/internal/locklistener/DefaultFileLockContentionHandler +instanceKlass org/gradle/cache/internal/locklistener/FileLockContentionHandler +instanceKlass org/gradle/internal/remote/internal/inet/InetAddressFactory +instanceKlass org/gradle/internal/state/ManagedFactoryRegistry +instanceKlass org/gradle/api/internal/tasks/TaskDependencyFactory +instanceKlass org/gradle/api/internal/file/DefaultFilePropertyFactory +instanceKlass org/gradle/api/internal/file/FileFactory +instanceKlass org/gradle/api/internal/file/FileResolver +instanceKlass org/gradle/internal/file/PathToFileResolver +instanceKlass org/gradle/internal/file/RelativeFilePathResolver +instanceKlass org/gradle/api/internal/provider/PropertyHost +instanceKlass org/gradle/internal/operations/BuildOperationProgressEventEmitter +instanceKlass org/gradle/internal/instantiation/InstanceGenerator +instanceKlass org/gradle/api/internal/classpath/DefaultModuleRegistry +instanceKlass org/gradle/cache/GlobalCache +instanceKlass org/gradle/internal/installation/CurrentGradleInstallation +instanceKlass org/gradle/execution/DefaultWorkValidationWarningRecorder +instanceKlass org/gradle/execution/WorkValidationWarningReporter +instanceKlass org/gradle/internal/execution/steps/ValidateStep$ValidationWarningRecorder +instanceKlass org/gradle/api/internal/classpath/ModuleRegistry +instanceKlass org/gradle/model/internal/manage/schema/extract/ModelSchemaAspectExtractor +instanceKlass org/gradle/model/internal/inspect/ModelRuleExtractor +instanceKlass org/gradle/model/internal/manage/instance/ManagedProxyFactory +instanceKlass org/gradle/api/internal/model/NamedObjectInstantiator +instanceKlass org/gradle/internal/state/ManagedFactory +instanceKlass org/gradle/api/internal/file/FilePropertyFactory +instanceKlass org/gradle/api/internal/cache/StringInterner +instanceKlass com/google/common/collect/Interner +instanceKlass org/gradle/internal/operations/CurrentBuildOperationRef +instanceKlass org/gradle/internal/service/CachingServiceLocator +instanceKlass org/gradle/model/internal/inspect/ModelRuleSourceDetector +instanceKlass org/gradle/internal/service/scopes/GlobalScopeServices$$Lambda$27 +instanceKlass org/gradle/internal/environment/GradleBuildEnvironment +instanceKlass org/gradle/api/internal/collections/DomainObjectCollectionFactory +instanceKlass org/gradle/internal/operations/BuildOperationListenerManager +instanceKlass org/gradle/internal/resources/ResourceLockCoordinationService +instanceKlass org/gradle/internal/service/scopes/GradleUserHomeScopeServiceRegistry +instanceKlass org/gradle/process/internal/health/memory/OsMemoryInfo +instanceKlass org/gradle/api/tasks/util/internal/PatternSpecFactory +instanceKlass org/gradle/api/execution/internal/TaskInputsListeners +instanceKlass org/gradle/internal/execution/history/changes/ExecutionStateChangeDetector +instanceKlass org/gradle/initialization/ClassLoaderRegistry +instanceKlass org/gradle/api/internal/classpath/PluginModuleRegistry +instanceKlass org/gradle/internal/execution/history/OverlappingOutputDetector +instanceKlass org/gradle/api/internal/ClassPathRegistry +instanceKlass org/gradle/model/internal/manage/binding/StructBindingsStore +instanceKlass org/gradle/model/internal/manage/schema/extract/ModelSchemaExtractor +instanceKlass org/gradle/cache/internal/InMemoryCacheDecoratorFactory +instanceKlass org/gradle/initialization/JdkToolsInitializer +instanceKlass org/gradle/internal/classloader/ClassLoaderFactory +instanceKlass org/gradle/api/model/ObjectFactory +instanceKlass org/gradle/internal/reflect/Instantiator +instanceKlass org/gradle/model/internal/manage/schema/ModelSchemaStore +instanceKlass org/gradle/internal/service/ServiceLocator +instanceKlass org/gradle/process/internal/health/memory/JvmMemoryInfo +instanceKlass org/gradle/internal/instantiation/InstantiatorFactory +instanceKlass org/gradle/internal/instantiation/PropertyRoleAnnotationHandler +instanceKlass org/gradle/internal/filewatch/FileWatcherFactory +instanceKlass org/gradle/configuration/ImportsReader +instanceKlass org/gradle/process/internal/health/memory/MemoryManager +instanceKlass org/gradle/cache/internal/CrossBuildInMemoryCacheFactory +instanceKlass org/gradle/internal/file/Deleter +instanceKlass org/gradle/cache/internal/CacheFactory +instanceKlass org/gradle/internal/hash/StreamHasher +instanceKlass org/gradle/initialization/LegacyTypesSupport +instanceKlass org/gradle/internal/logging/progress/ProgressLoggerFactory +instanceKlass org/gradle/internal/logging/progress/ProgressListener +instanceKlass org/gradle/api/internal/provider/PropertyFactory +instanceKlass org/gradle/internal/operations/BuildOperationIdFactory +instanceKlass org/gradle/process/internal/ExecFactory +instanceKlass org/gradle/api/internal/ProcessOperations +instanceKlass org/gradle/process/internal/JavaForkOptionsFactory +instanceKlass org/gradle/process/internal/JavaExecHandleFactory +instanceKlass org/gradle/process/internal/ExecHandleFactory +instanceKlass org/gradle/process/internal/ExecActionFactory +instanceKlass org/gradle/api/internal/file/FileCollectionFactory +instanceKlass org/gradle/internal/jvm/inspection/JvmVersionDetector +instanceKlass org/gradle/api/internal/file/collections/DirectoryFileTreeFactory +instanceKlass org/gradle/internal/jvm/inspection/JvmMetadataDetector +instanceKlass org/gradle/cache/internal/ProcessMetaDataProvider +instanceKlass org/gradle/internal/service/scopes/BasicGlobalScopeServices +instanceKlass org/gradle/cache/FileLockManager +instanceKlass org/gradle/launcher/daemon/registry/DaemonDir +instanceKlass org/gradle/internal/concurrent/Synchronizer +instanceKlass org/gradle/cache/internal/CacheSupport +instanceKlass org/gradle/cache/internal/CacheAccessSerializer +instanceKlass org/gradle/launcher/daemon/registry/DaemonRegistry +instanceKlass org/gradle/cache/Cache +instanceKlass org/gradle/launcher/daemon/registry/DaemonRegistryServices +instanceKlass org/gradle/internal/invocation/BuildAction +instanceKlass sun/reflect/generics/tree/TypeVariableSignature +instanceKlass org/gradle/launcher/daemon/server/api/DaemonCommandAction +instanceKlass sun/reflect/generics/tree/MethodTypeSignature +instanceKlass org/gradle/launcher/daemon/server/MasterExpirationStrategy +instanceKlass org/gradle/internal/concurrent/ExecutorFactory +instanceKlass org/gradle/launcher/exec/BuildExecuter +instanceKlass org/gradle/launcher/daemon/server/stats/DaemonRunningStats +instanceKlass org/gradle/launcher/daemon/server/health/DaemonHealthCheck +instanceKlass org/gradle/launcher/daemon/server/health/HealthExpirationStrategy +instanceKlass org/gradle/internal/event/ListenerManager +instanceKlass org/gradle/launcher/daemon/server/health/DaemonMemoryStatus +instanceKlass org/gradle/launcher/daemon/server/health/DaemonHealthStats +instanceKlass org/gradle/launcher/daemon/context/DaemonContext +instanceKlass org/gradle/launcher/daemon/server/Daemon +instanceKlass org/gradle/internal/serialize/Serializer +instanceKlass org/gradle/internal/service/DefaultServiceRegistry$CompositeServiceProvider +instanceKlass org/gradle/internal/service/DefaultServiceRegistry$ParentServices +instanceKlass org/gradle/api/specs/Spec +instanceKlass org/gradle/internal/classpath/DefaultClassPath +instanceKlass org/gradle/internal/classpath/ClassPath +instanceKlass org/gradle/launcher/daemon/server/scaninfo/DaemonScanInfo +instanceKlass org/gradle/launcher/exec/BuildActionExecuter +instanceKlass org/gradle/launcher/daemon/server/expiry/DaemonExpirationStrategy +instanceKlass org/gradle/launcher/daemon/server/DaemonServerConnector +instanceKlass java/lang/reflect/WildcardType +instanceKlass sun/reflect/generics/reflectiveObjects/LazyReflectiveObjectGenerator +instanceKlass java/lang/reflect/TypeVariable +instanceKlass sun/reflect/generics/reflectiveObjects/ParameterizedTypeImpl +instanceKlass sun/reflect/generics/visitor/Reifier +instanceKlass sun/reflect/generics/visitor/TypeTreeVisitor +instanceKlass sun/reflect/generics/tree/ClassSignature +instanceKlass sun/reflect/generics/tree/Signature +instanceKlass sun/reflect/generics/tree/ClassTypeSignature +instanceKlass sun/reflect/generics/tree/SimpleClassTypeSignature +instanceKlass sun/reflect/generics/tree/FieldTypeSignature +instanceKlass sun/reflect/generics/tree/BaseType +instanceKlass sun/reflect/generics/tree/TypeSignature +instanceKlass sun/reflect/generics/tree/ReturnType +instanceKlass sun/reflect/generics/tree/TypeArgument +instanceKlass sun/reflect/generics/tree/FormalTypeParameter +instanceKlass sun/reflect/generics/tree/TypeTree +instanceKlass sun/reflect/generics/tree/Tree +instanceKlass sun/reflect/generics/parser/SignatureParser +instanceKlass sun/reflect/generics/repository/AbstractRepository +instanceKlass sun/reflect/generics/factory/CoreReflectionFactory +instanceKlass sun/reflect/generics/factory/GenericsFactory +instanceKlass sun/reflect/generics/scope/AbstractScope +instanceKlass sun/reflect/generics/scope/Scope +instanceKlass org/gradle/internal/logging/services/DefaultLoggingManager$StartableLoggingSystem +instanceKlass org/gradle/internal/logging/services/DefaultLoggingManager$StartableLoggingRouter +instanceKlass org/gradle/internal/logging/services/DefaultLoggingManager +instanceKlass org/gradle/internal/logging/source/JavaUtilLoggingSystem +instanceKlass org/gradle/internal/logging/slf4j/Slf4jLoggingConfigurer +instanceKlass org/gradle/internal/logging/config/LoggingSystemAdapter +instanceKlass org/gradle/internal/logging/LoggingManagerInternal +instanceKlass org/gradle/internal/logging/StandardOutputCapture +instanceKlass org/gradle/api/logging/LoggingManager +instanceKlass org/gradle/internal/logging/source/StdErrLoggingSystem +instanceKlass org/gradle/internal/logging/source/PrintStreamLoggingSystem$SnapshotImpl +instanceKlass org/gradle/internal/logging/source/PrintStreamLoggingSystem$OutputEventDestination +instanceKlass org/gradle/internal/SystemProperties +instanceKlass org/gradle/internal/logging/source/PrintStreamLoggingSystem$1 +instanceKlass org/gradle/internal/service/AnnotatedServiceLifecycleHandler +instanceKlass org/gradle/internal/logging/events/operations/StyledTextBuildOperationProgressDetails +instanceKlass org/gradle/internal/operations/logging/StyledTextBuildOperationProgressDetails +instanceKlass org/gradle/internal/io/TextStream +instanceKlass org/gradle/internal/logging/source/PrintStreamLoggingSystem +instanceKlass org/gradle/internal/logging/source/StdOutLoggingSystem +instanceKlass java/lang/reflect/ParameterizedType +instanceKlass org/gradle/internal/logging/sink/OutputEventListenerManager$1 +instanceKlass org/gradle/internal/logging/services/TextStreamOutputEventListener +instanceKlass org/gradle/internal/logging/services/DefaultLoggingManagerFactory +instanceKlass org/gradle/internal/logging/sink/OutputEventListenerManager +instanceKlass org/gradle/internal/logging/services/LoggingServiceRegistry$1 +instanceKlass org/gradle/internal/logging/config/LoggingConfigurer +instanceKlass org/gradle/internal/logging/config/LoggingSourceSystem +instanceKlass org/gradle/launcher/daemon/configuration/DefaultDaemonServerConfiguration +instanceKlass org/gradle/internal/nativeintegration/jansi/JansiStorage +instanceKlass org/fusesource/jansi/Ansi +instanceKlass org/gradle/internal/nativeintegration/jansi/JansiLibrary +instanceKlass org/gradle/internal/nativeintegration/jansi/JansiLibraryFactory$1 +instanceKlass net/rubygrapefruit/platform/internal/jni/AbstractFileEventFunctions +instanceKlass jdk/internal/logger/DefaultLoggerFinder$1 +instanceKlass java/util/logging/Logger$SystemLoggerHelper$1 +instanceKlass java/util/logging/Logger$SystemLoggerHelper +instanceKlass java/util/logging/LogManager$4 +instanceKlass jdk/internal/logger/BootstrapLogger$BootstrapExecutors +instanceKlass jdk/internal/logger/BootstrapLogger$RedirectedLoggers +instanceKlass java/lang/ModuleLayer$$Lambda$26 +instanceKlass java/util/Spliterators$1Adapter +instanceKlass java/util/Spliterators$ArraySpliterator +instanceKlass java/util/Spliterator$OfDouble +instanceKlass java/util/Spliterator$OfLong +instanceKlass java/util/Spliterator$OfInt +instanceKlass java/util/Spliterator$OfPrimitive +instanceKlass java/util/Spliterators$EmptySpliterator +instanceKlass java/util/Spliterators +instanceKlass jdk/internal/logger/BootstrapLogger$DetectBackend$1 +instanceKlass jdk/internal/logger/BootstrapLogger$DetectBackend +instanceKlass jdk/internal/logger/BootstrapLogger +instanceKlass sun/util/logging/PlatformLogger$ConfigurableBridge +instanceKlass sun/util/logging/PlatformLogger$Bridge +instanceKlass java/lang/System$Logger +instanceKlass java/util/stream/Streams +instanceKlass java/util/stream/Streams$AbstractStreamBuilderImpl +instanceKlass java/util/stream/Stream$Builder +instanceKlass java/util/stream/Sink$ChainedReference +instanceKlass java/util/stream/FindOps$FindSink$OfRef$$Lambda$25 +instanceKlass java/util/stream/FindOps$FindSink$OfRef$$Lambda$24 +instanceKlass java/util/stream/FindOps$FindSink$OfRef$$Lambda$23 +instanceKlass java/util/stream/FindOps$FindSink$OfRef$$Lambda$22 +instanceKlass java/util/stream/FindOps$FindOp +instanceKlass java/util/stream/TerminalOp +instanceKlass java/util/stream/FindOps$FindSink +instanceKlass java/util/stream/TerminalSink +instanceKlass java/util/stream/Sink +instanceKlass java/util/function/Consumer +instanceKlass java/util/stream/FindOps +instanceKlass java/util/logging/Level$KnownLevel$$Lambda$21 +instanceKlass sun/reflect/annotation/AnnotationParser +instanceKlass java/util/EnumMap$1 +instanceKlass java/util/stream/StreamOpFlag$MaskBuilder +instanceKlass java/util/stream/PipelineHelper +instanceKlass java/util/stream/Stream +instanceKlass java/util/stream/BaseStream +instanceKlass java/util/stream/StreamSupport +instanceKlass java/util/ArrayList$ArrayListSpliterator +instanceKlass java/util/Spliterator +instanceKlass java/util/logging/Level$$Lambda$20 +instanceKlass java/util/Hashtable$Enumerator +instanceKlass java/util/Collections$3 +instanceKlass java/util/logging/LogManager$LoggerContext$1 +instanceKlass java/util/logging/LogManager$VisitedLoggers +instanceKlass java/util/function/Predicate +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass sun/invoke/util/ValueConversions$WrapperCache +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/MethodHandles$1 +instanceKlass java/lang/Byte$ByteCache +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/StringConcatFactory$Stringifiers +instanceKlass java/lang/StringConcatHelper +instanceKlass java/lang/invoke/StringConcatFactory$MethodHandleInlineCopyStrategy$3 +instanceKlass java/lang/invoke/StringConcatFactory$MethodHandleInlineCopyStrategy$2 +instanceKlass java/lang/invoke/StringConcatFactory$MethodHandleInlineCopyStrategy$1 +instanceKlass java/lang/invoke/StringConcatFactory$MethodHandleInlineCopyStrategy +instanceKlass java/lang/invoke/StringConcatFactory$RecipeElement +instanceKlass java/lang/invoke/StringConcatFactory$Recipe +instanceKlass java/lang/invoke/StringConcatFactory$1 +instanceKlass java/lang/invoke/StringConcatFactory +instanceKlass java/util/logging/LogManager$2 +instanceKlass java/lang/System$LoggerFinder +instanceKlass sun/security/util/SecurityConstants +instanceKlass java/security/AccessController$1 +instanceKlass java/util/logging/LogManager$LoggingProviderAccess +instanceKlass sun/util/logging/internal/LoggingProviderImpl$LogManagerAccess +instanceKlass java/lang/Shutdown$Lock +instanceKlass java/lang/Shutdown +instanceKlass java/lang/ApplicationShutdownHooks$1 +instanceKlass java/lang/ApplicationShutdownHooks +instanceKlass java/util/Collections$SynchronizedMap +instanceKlass java/util/logging/LogManager$LogNode +instanceKlass java/util/logging/LogManager$LoggerContext +instanceKlass java/util/logging/LogManager$1 +instanceKlass java/util/logging/LogManager +instanceKlass java/util/logging/Logger$ConfigurationData +instanceKlass java/util/logging/Logger$LoggerBundle +instanceKlass java/util/logging/Level +instanceKlass java/util/logging/Handler +instanceKlass java/util/logging/Logger +instanceKlass net/rubygrapefruit/platform/internal/jni/NativeLogger +instanceKlass net/rubygrapefruit/platform/file/FileEvents +instanceKlass java/util/RegularEnumSet$EnumSetIterator +instanceKlass net/rubygrapefruit/platform/internal/jni/NativeLibraryFunctions +instanceKlass java/lang/ClassLoader$NativeLibrary$Unloader +instanceKlass java/nio/channels/spi/AbstractInterruptibleChannel$1 +instanceKlass sun/nio/ch/Interruptible +instanceKlass sun/nio/ch/FileKey +instanceKlass sun/nio/ch/FileLockTable +instanceKlass sun/nio/ch/NativeThread +instanceKlass java/nio/channels/FileLock +instanceKlass sun/nio/ch/NativeDispatcher +instanceKlass sun/nio/ch/NativeThreadSet +instanceKlass sun/nio/ch/IOUtil$1 +instanceKlass sun/nio/ch/IOUtil +instanceKlass java/nio/file/attribute/FileAttribute +instanceKlass java/nio/channels/spi/AbstractInterruptibleChannel +instanceKlass java/nio/channels/InterruptibleChannel +instanceKlass java/nio/channels/ScatteringByteChannel +instanceKlass java/nio/channels/GatheringByteChannel +instanceKlass java/nio/channels/SeekableByteChannel +instanceKlass java/nio/channels/ByteChannel +instanceKlass java/nio/channels/WritableByteChannel +instanceKlass java/nio/channels/ReadableByteChannel +instanceKlass java/nio/channels/Channel +instanceKlass java/util/Formattable +instanceKlass java/util/Formatter$Conversion +instanceKlass java/util/Formatter$Flags +instanceKlass java/util/Formatter$FormatSpecifier +instanceKlass java/util/Formatter$FixedString +instanceKlass java/util/Formatter$FormatString +instanceKlass sun/util/resources/Bundles$2 +instanceKlass sun/util/resources/Bundles$CacheKeyReference +instanceKlass java/util/ResourceBundle$ResourceBundleProviderHelper$$Lambda$19 +instanceKlass java/util/ResourceBundle$ResourceBundleProviderHelper +instanceKlass java/util/ArrayList$SubList$1 +instanceKlass sun/util/resources/LocaleData$LocaleDataResourceBundleProvider +instanceKlass java/util/spi/ResourceBundleProvider +instanceKlass sun/util/resources/Bundles$CacheKey +instanceKlass java/util/ResourceBundle$1 +instanceKlass jdk/internal/access/JavaUtilResourceBundleAccess +instanceKlass sun/util/resources/Bundles +instanceKlass sun/util/resources/LocaleData$LocaleDataStrategy +instanceKlass sun/util/resources/Bundles$Strategy +instanceKlass sun/util/resources/LocaleData$1 +instanceKlass sun/util/locale/provider/CalendarDataUtility +instanceKlass sun/util/locale/provider/AvailableLanguageTags +instanceKlass sun/util/locale/provider/JRELocaleProviderAdapter$$Lambda$18 +instanceKlass java/util/ServiceLoader$ProviderImpl +instanceKlass java/util/ServiceLoader$Provider +instanceKlass java/util/ServiceLoader$1 +instanceKlass sun/util/resources/cldr/provider/CLDRLocaleDataMetaInfo +instanceKlass jdk/internal/module/ModulePatcher$PatchedModuleReader +instanceKlass java/util/ServiceLoader$3 +instanceKlass java/util/ServiceLoader$2 +instanceKlass java/util/ServiceLoader$LazyClassPathLookupIterator +instanceKlass java/util/concurrent/CopyOnWriteArrayList$COWIterator +instanceKlass java/util/ServiceLoader$ModuleServicesLookupIterator +instanceKlass java/util/ServiceLoader +instanceKlass sun/util/cldr/CLDRLocaleProviderAdapter$1 +instanceKlass sun/util/locale/StringTokenIterator +instanceKlass sun/util/locale/ParseStatus +instanceKlass sun/util/cldr/CLDRBaseLocaleDataMetaInfo +instanceKlass sun/util/locale/provider/LocaleDataMetaInfo +instanceKlass sun/util/locale/provider/LocaleProviderAdapter$1 +instanceKlass java/util/ResourceBundle +instanceKlass java/util/ResourceBundle$Control +instanceKlass sun/util/resources/LocaleData +instanceKlass sun/util/locale/provider/LocaleResources +instanceKlass sun/util/locale/LanguageTag +instanceKlass sun/util/locale/provider/ResourceBundleBasedAdapter +instanceKlass sun/util/locale/provider/LocaleProviderAdapter +instanceKlass java/util/spi/LocaleServiceProvider +instanceKlass java/text/DecimalFormatSymbols +instanceKlass java/util/Locale$1 +instanceKlass java/util/regex/Pattern$$Lambda$17 +instanceKlass java/util/Formatter +instanceKlass net/rubygrapefruit/platform/internal/LibraryDef +instanceKlass net/rubygrapefruit/platform/internal/NativeLibraryLocator +instanceKlass net/rubygrapefruit/platform/internal/NativeLibraryLoader +instanceKlass net/rubygrapefruit/platform/Process +instanceKlass net/rubygrapefruit/platform/internal/Platform +instanceKlass net/rubygrapefruit/platform/Native +instanceKlass java/util/TreeMap$Entry +instanceKlass java/lang/ProcessEnvironment$CheckedEntry +instanceKlass java/lang/ProcessEnvironment$CheckedEntrySet$1 +instanceKlass java/util/NavigableMap +instanceKlass java/util/SortedMap +instanceKlass java/lang/ProcessEnvironment$EntryComparator +instanceKlass java/lang/ProcessEnvironment$NameComparator +instanceKlass org/gradle/api/internal/file/temp/DefaultTemporaryFileProvider +instanceKlass org/gradle/internal/nativeintegration/services/NativeServices$1 +instanceKlass org/gradle/internal/file/StatStatistics +instanceKlass org/gradle/internal/file/StatStatistics$Collector +instanceKlass org/gradle/internal/nativeintegration/filesystem/services/GenericFileSystem +instanceKlass org/gradle/internal/service/InjectUtil +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass java/lang/ClassValue$Version +instanceKlass java/lang/ClassValue$Identity +instanceKlass java/lang/ClassValue +instanceKlass java/lang/invoke/MethodHandleImpl$ArrayAccessor +instanceKlass java/lang/invoke/MethodHandleImpl$2 +instanceKlass java/lang/invoke/MethodHandleImpl$LoopClauses +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/internal/service/DefaultServiceRegistry$1 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/internal/nativeintegration/filesystem/services/GenericFileSystem$Factory +instanceKlass org/gradle/api/internal/file/temp/TemporaryFileProvider +instanceKlass org/gradle/internal/nativeintegration/filesystem/FileCanonicalizer +instanceKlass org/gradle/internal/nativeintegration/filesystem/FileSystem +instanceKlass org/gradle/internal/file/Stat +instanceKlass org/gradle/internal/file/Chmod +instanceKlass org/gradle/internal/nativeintegration/filesystem/FileModeMutator +instanceKlass org/gradle/internal/nativeintegration/filesystem/FileModeAccessor +instanceKlass org/gradle/internal/nativeintegration/filesystem/Symlink +instanceKlass org/gradle/internal/nativeintegration/filesystem/services/FileSystemServices +instanceKlass org/gradle/internal/nativeintegration/jansi/DefaultJansiRuntimeResolver +instanceKlass org/gradle/internal/nativeintegration/jansi/JansiRuntimeResolver +instanceKlass org/gradle/internal/nativeintegration/jansi/JansiLibraryFactory +instanceKlass org/gradle/internal/nativeintegration/jansi/JansiStorageLocator +instanceKlass org/gradle/internal/nativeintegration/jansi/JansiBootPathConfigurer +instanceKlass java/lang/Class$3 +instanceKlass org/gradle/internal/service/DefaultServiceRegistry$ClassInspector$ClassDetails +instanceKlass java/util/concurrent/ConcurrentLinkedQueue$Node +instanceKlass org/gradle/internal/reflect/JavaMethod +instanceKlass org/gradle/internal/service/AbstractServiceMethod +instanceKlass java/util/LinkedList$ListItr +instanceKlass net/rubygrapefruit/platform/file/PosixFiles +instanceKlass net/rubygrapefruit/platform/file/Files +instanceKlass net/rubygrapefruit/platform/file/FileSystems +instanceKlass org/gradle/internal/jvm/Jvm +instanceKlass org/gradle/internal/jvm/JavaInfo +instanceKlass net/rubygrapefruit/platform/SystemInfo +instanceKlass net/rubygrapefruit/platform/memory/Memory +instanceKlass net/rubygrapefruit/platform/WindowsRegistry +instanceKlass org/gradle/internal/os/OperatingSystem +instanceKlass org/gradle/internal/service/RelevantMethodsBuilder +instanceKlass org/gradle/internal/Cast +instanceKlass org/gradle/internal/service/ServiceMethod +instanceKlass org/gradle/internal/service/MethodHandleBasedServiceMethodFactory +instanceKlass org/gradle/internal/service/DefaultServiceMethodFactory +instanceKlass org/gradle/internal/service/ServiceMethodFactory +instanceKlass org/gradle/internal/service/RelevantMethods +instanceKlass org/gradle/internal/service/DefaultServiceRegistry$ClassInspector +instanceKlass org/gradle/internal/service/DefaultServiceRegistry$ThisAsService +instanceKlass org/gradle/internal/concurrent/CompositeStoppable$1 +instanceKlass org/gradle/internal/concurrent/CompositeStoppable +instanceKlass org/gradle/internal/service/AnnotatedServiceLifecycleHandler$Registration +instanceKlass org/gradle/internal/service/DefaultServiceRegistry$OwnServices +instanceKlass org/gradle/initialization/GradleUserHomeDirProvider +instanceKlass org/gradle/internal/nativeintegration/filesystem/FileMetadataAccessor +instanceKlass org/gradle/internal/nativeintegration/network/HostnameLookup +instanceKlass org/gradle/internal/nativeintegration/ProcessEnvironment +instanceKlass org/gradle/internal/nativeintegration/NativeCapabilities +instanceKlass net/rubygrapefruit/platform/ProcessLauncher +instanceKlass net/rubygrapefruit/platform/NativeIntegration +instanceKlass org/gradle/internal/nativeintegration/console/ConsoleDetector +instanceKlass org/gradle/internal/service/ServiceRegistration +instanceKlass org/gradle/internal/service/ServiceProvider$Visitor +instanceKlass org/gradle/internal/service/DefaultServiceRegistry$ManagedObjectServiceProvider +instanceKlass org/gradle/internal/service/Service +instanceKlass org/gradle/internal/service/ServiceProvider +instanceKlass org/gradle/internal/concurrent/Stoppable +instanceKlass org/gradle/internal/service/DefaultServiceRegistry +instanceKlass org/gradle/internal/service/ContainsServices +instanceKlass org/gradle/internal/serialize/AbstractDecoder +instanceKlass org/gradle/internal/serialize/Decoder +instanceKlass org/gradle/launcher/bootstrap/EntryPoint$RecordingExecutionListener +instanceKlass org/gradle/internal/logging/events/operations/LogEventBuildOperationProgressDetails +instanceKlass org/gradle/internal/operations/logging/LogEventBuildOperationProgressDetails +instanceKlass org/gradle/internal/logging/slf4j/BuildOperationAwareLogger +instanceKlass org/gradle/internal/logging/sink/OutputEventRenderer$2 +instanceKlass org/gradle/internal/dispatch/ReflectionDispatch +instanceKlass org/gradle/internal/logging/sink/OutputEventRenderer$1 +instanceKlass org/gradle/internal/logging/sink/OutputEventRenderer$LazyListener +instanceKlass org/gradle/internal/logging/events/OutputEventListener$1 +instanceKlass java/lang/reflect/Proxy$ProxyBuilder$1 +instanceKlass java/lang/reflect/ProxyGenerator$ExceptionTableEntry +instanceKlass java/lang/reflect/ProxyGenerator$PrimitiveTypeInfo +instanceKlass java/lang/reflect/ProxyGenerator$FieldInfo +instanceKlass java/lang/reflect/ProxyGenerator$ConstantPool$Entry +instanceKlass java/lang/reflect/ProxyGenerator$MethodInfo +instanceKlass java/lang/reflect/ProxyGenerator$ProxyMethod +instanceKlass java/lang/reflect/ProxyGenerator$ConstantPool +instanceKlass java/lang/reflect/ProxyGenerator +instanceKlass java/lang/reflect/Proxy$$Lambda$16 +instanceKlass java/lang/PublicMethods +instanceKlass java/lang/reflect/Proxy$ProxyBuilder +instanceKlass jdk/internal/loader/AbstractClassLoaderValue$Memoizer +instanceKlass java/lang/reflect/Proxy$$Lambda$15 +instanceKlass java/lang/reflect/Proxy +instanceKlass org/gradle/internal/dispatch/ProxyDispatchAdapter$DispatchingInvocationHandler +instanceKlass java/lang/reflect/InvocationHandler +instanceKlass org/gradle/internal/dispatch/ProxyDispatchAdapter +instanceKlass org/gradle/internal/logging/events/operations/ProgressStartBuildOperationProgressDetails +instanceKlass org/gradle/internal/operations/logging/ProgressStartBuildOperationProgressDetails +instanceKlass org/gradle/internal/logging/sink/OutputEventTransformer +instanceKlass org/gradle/internal/exceptions/MultiCauseException +instanceKlass org/gradle/internal/event/AbstractBroadcastDispatch +instanceKlass org/gradle/internal/event/ListenerBroadcast +instanceKlass org/gradle/internal/dispatch/Dispatch +instanceKlass org/gradle/internal/nativeintegration/console/ConsoleMetaData +instanceKlass org/gradle/internal/logging/console/ColorMap +instanceKlass org/gradle/api/logging/StandardOutputListener +instanceKlass org/gradle/internal/logging/format/LogHeaderFormatter +instanceKlass org/gradle/internal/logging/text/StyledTextOutput +instanceKlass org/gradle/internal/Factory +instanceKlass org/gradle/internal/logging/config/LoggingSystem$Snapshot +instanceKlass org/gradle/internal/logging/events/OutputEvent +instanceKlass org/gradle/internal/logging/sink/OutputEventRenderer +instanceKlass org/gradle/internal/logging/config/LoggingRouter +instanceKlass org/gradle/internal/logging/LoggingOutputInternal +instanceKlass org/gradle/api/logging/LoggingOutput +instanceKlass org/gradle/internal/logging/config/LoggingSystem +instanceKlass org/gradle/internal/logging/slf4j/OutputEventListenerBackedLoggerContext$NoOpLogger +instanceKlass org/gradle/api/logging/Logger +instanceKlass java/util/concurrent/atomic/AtomicReference +instanceKlass org/gradle/internal/time/TimeSource$1 +instanceKlass org/gradle/internal/time/TimeSource +instanceKlass org/gradle/internal/time/MonotonicClock +instanceKlass org/gradle/internal/time/CountdownTimer +instanceKlass org/gradle/internal/time/Timer +instanceKlass org/gradle/internal/time/Clock +instanceKlass org/gradle/internal/time/Time +instanceKlass org/gradle/internal/logging/events/OutputEventListener +instanceKlass org/gradle/internal/logging/slf4j/OutputEventListenerBackedLoggerContext +instanceKlass org/slf4j/impl/StaticLoggerBinder +instanceKlass org/slf4j/spi/LoggerFactoryBinder +instanceKlass java/net/URLClassLoader$3$1 +instanceKlass java/net/URLClassLoader$3 +instanceKlass jdk/internal/loader/URLClassPath$1 +instanceKlass java/lang/CompoundEnumeration +instanceKlass jdk/internal/loader/BuiltinClassLoader$1 +instanceKlass java/util/Collections$EmptyEnumeration +instanceKlass org/slf4j/helpers/Util +instanceKlass org/slf4j/helpers/NOPLoggerFactory +instanceKlass java/util/concurrent/LinkedBlockingQueue$Node +instanceKlass java/util/concurrent/locks/AbstractQueuedSynchronizer$ConditionObject +instanceKlass java/util/concurrent/locks/Condition +instanceKlass java/util/concurrent/locks/AbstractQueuedSynchronizer$Node +instanceKlass java/util/concurrent/BlockingQueue +instanceKlass org/slf4j/Logger +instanceKlass org/slf4j/helpers/SubstituteLoggerFactory +instanceKlass org/slf4j/ILoggerFactory +instanceKlass org/slf4j/event/LoggingEvent +instanceKlass org/slf4j/LoggerFactory +instanceKlass org/slf4j/helpers/BasicMarker +instanceKlass org/slf4j/Marker +instanceKlass org/slf4j/helpers/BasicMarkerFactory +instanceKlass org/slf4j/IMarkerFactory +instanceKlass org/slf4j/MarkerFactory +instanceKlass org/gradle/api/logging/Logging +instanceKlass org/gradle/launcher/daemon/configuration/DaemonServerConfiguration +instanceKlass org/gradle/internal/service/ServiceRegistry +instanceKlass org/gradle/internal/service/ServiceLookup +instanceKlass org/gradle/api/Action +instanceKlass org/gradle/internal/logging/text/StyledTextOutputFactory +instanceKlass org/gradle/api/logging/configuration/LoggingConfiguration +instanceKlass org/gradle/initialization/BuildClientMetaData +instanceKlass org/gradle/launcher/bootstrap/ExecutionCompleter +instanceKlass org/gradle/launcher/bootstrap/ExecutionListener +instanceKlass org/gradle/launcher/bootstrap/EntryPoint +instanceKlass java/io/FilePermissionCollection$1 +instanceKlass java/io/FileInputStream$1 +instanceKlass java/security/Security$1 +instanceKlass java/security/Security +instanceKlass sun/security/util/SecurityProperties +instanceKlass sun/security/util/FilePermCompat +instanceKlass java/io/FilePermission$1 +instanceKlass jdk/internal/access/JavaIOFilePermissionAccess +instanceKlass sun/net/www/MessageHeader +instanceKlass java/net/URLConnection +instanceKlass java/util/LinkedList$Node +instanceKlass java/net/URLClassLoader$1 +instanceKlass java/net/URLClassLoader$7 +instanceKlass jdk/internal/access/JavaNetURLClassLoaderAccess +instanceKlass jdk/internal/jimage/ImageLocation +instanceKlass jdk/internal/jimage/decompressor/Decompressor +instanceKlass jdk/internal/jimage/ImageStringsReader +instanceKlass jdk/internal/jimage/ImageStrings +instanceKlass jdk/internal/jimage/ImageHeader +instanceKlass jdk/internal/jimage/NativeImageBuffer$1 +instanceKlass jdk/internal/jimage/NativeImageBuffer +instanceKlass jdk/internal/jimage/BasicImageReader$1 +instanceKlass jdk/internal/jimage/BasicImageReader +instanceKlass jdk/internal/jimage/ImageReader +instanceKlass jdk/internal/jimage/ImageReaderFactory$1 +instanceKlass java/nio/file/Paths +instanceKlass jdk/internal/jimage/ImageReaderFactory +instanceKlass jdk/internal/module/SystemModuleFinders$SystemImage +instanceKlass jdk/internal/module/SystemModuleFinders$SystemModuleReader +instanceKlass java/lang/module/ModuleReader +instanceKlass jdk/internal/loader/BuiltinClassLoader$5 +instanceKlass jdk/internal/loader/BuiltinClassLoader$2 +instanceKlass jdk/internal/module/Resources +instanceKlass jdk/internal/util/ArraysSupport +instanceKlass java/io/RandomAccessFile$1 +instanceKlass java/lang/invoke/VarHandle$AccessDescriptor +instanceKlass org/gradle/api/Action +instanceKlass org/gradle/internal/IoActions +instanceKlass java/util/Properties$LineReader +instanceKlass java/util/regex/Pattern$BmpCharPredicate$$Lambda$14 +instanceKlass java/util/regex/Pattern$$Lambda$13 +instanceKlass java/util/regex/Pattern$$Lambda$12 +instanceKlass java/util/regex/Pattern$BitClass$$Lambda$11 +instanceKlass java/util/regex/Pattern$TreeInfo +instanceKlass java/util/regex/Pattern$CharPredicate$$Lambda$10 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass java/util/regex/CharPredicates$$Lambda$9 +instanceKlass org/gradle/api/Transformer +instanceKlass org/gradle/util/internal/GUtil +instanceKlass java/util/zip/ZipFile$$Lambda$8 +instanceKlass org/gradle/api/internal/classpath/DefaultModuleRegistry$$Lambda$7 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass java/util/LinkedHashMap$LinkedHashIterator +instanceKlass java/util/Collections$1 +instanceKlass org/gradle/api/internal/classpath/DefaultModuleRegistry$DefaultModule +instanceKlass java/util/regex/IntHashSet +instanceKlass java/util/regex/Matcher +instanceKlass java/util/regex/MatchResult +instanceKlass java/util/regex/Pattern$$Lambda$6 +instanceKlass java/util/regex/CharPredicates$$Lambda$5 +instanceKlass java/util/regex/Pattern$BmpCharPredicate +instanceKlass java/util/regex/Pattern$CharPredicate +instanceKlass java/util/regex/CharPredicates +instanceKlass java/util/regex/ASCII +instanceKlass java/util/regex/Pattern$Node +instanceKlass java/util/regex/Pattern +instanceKlass org/gradle/internal/service/CachingServiceLocator +instanceKlass java/io/Reader +instanceKlass org/gradle/internal/service/DefaultServiceLocator +instanceKlass org/gradle/internal/service/ServiceLocator +instanceKlass org/gradle/internal/classloader/DefaultClassLoaderFactory +instanceKlass org/gradle/api/internal/classpath/ManifestUtil +instanceKlass org/gradle/internal/Cast +instanceKlass java/util/AbstractList$Itr +instanceKlass org/gradle/internal/classloader/ClassLoaderSpec +instanceKlass org/gradle/internal/classloader/ClassLoaderVisitor +instanceKlass java/util/Collections$EmptyIterator +instanceKlass org/gradle/internal/classpath/DefaultClassPath +instanceKlass org/gradle/internal/classpath/ClassPath +instanceKlass org/gradle/internal/installation/GradleInstallation$1 +instanceKlass java/io/FileFilter +instanceKlass org/gradle/internal/installation/GradleInstallation +instanceKlass org/gradle/internal/classloader/ClasspathUtil +instanceKlass org/gradle/internal/installation/CurrentGradleInstallationLocator +instanceKlass org/gradle/internal/installation/CurrentGradleInstallation +instanceKlass org/gradle/api/internal/classpath/DefaultModuleRegistry$$Lambda$4 +instanceKlass org/gradle/api/specs/Spec +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass sun/reflect/misc/ReflectUtil +instanceKlass org/gradle/api/internal/classpath/Module +instanceKlass org/gradle/api/internal/classpath/DefaultModuleRegistry +instanceKlass org/gradle/cache/GlobalCache +instanceKlass org/gradle/api/internal/DefaultClassPathProvider +instanceKlass org/gradle/api/internal/ClassPathProvider +instanceKlass org/gradle/api/internal/DefaultClassPathRegistry +instanceKlass org/gradle/internal/classloader/ClassLoaderHierarchy +instanceKlass org/gradle/internal/classloader/ClassLoaderFactory +instanceKlass org/gradle/api/internal/ClassPathRegistry +instanceKlass org/gradle/api/internal/classpath/ModuleRegistry +instanceKlass org/gradle/launcher/bootstrap/ProcessBootstrap +instanceKlass java/lang/PublicMethods$Key +instanceKlass java/lang/PublicMethods$MethodList +instanceKlass org/gradle/launcher/daemon/bootstrap/GradleDaemon +instanceKlass java/security/SecureClassLoader$DebugHolder +instanceKlass java/security/Permissions$1 +instanceKlass java/security/PermissionCollection +instanceKlass java/security/SecureClassLoader$1 +instanceKlass java/security/SecureClassLoader$CodeSourceKey +instanceKlass java/util/zip/Checksum$1 +instanceKlass java/util/zip/CRC32 +instanceKlass java/util/zip/Checksum +instanceKlass sun/nio/ByteBuffered +instanceKlass java/lang/Package$VersionInfo +instanceKlass java/lang/NamedPackage +instanceKlass sun/security/util/ManifestEntryVerifier +instanceKlass jdk/internal/loader/Resource +instanceKlass java/util/StringTokenizer +instanceKlass java/util/jar/Attributes$Name +instanceKlass java/util/jar/Attributes +instanceKlass java/security/CodeSigner +instanceKlass sun/security/util/Debug +instanceKlass java/util/jar/JarVerifier +instanceKlass java/util/zip/ZipFile$InflaterCleanupAction +instanceKlass java/util/zip/Inflater$InflaterZStreamRef +instanceKlass java/util/zip/Inflater +instanceKlass java/util/zip/ZipEntry +instanceKlass java/util/jar/JarFile$1 +instanceKlass jdk/internal/util/jar/JarIndex +instanceKlass java/nio/Bits$1 +instanceKlass jdk/internal/access/JavaNioAccess$BufferPool +instanceKlass java/nio/Bits +instanceKlass sun/nio/ch/DirectBuffer +instanceKlass jdk/internal/perf/PerfCounter$CoreCounters +instanceKlass jdk/internal/perf/Perf +instanceKlass jdk/internal/perf/Perf$GetPerfAction +instanceKlass jdk/internal/perf/PerfCounter +instanceKlass java/util/zip/ZipUtils +instanceKlass java/util/zip/ZipFile$Source$End +instanceKlass java/lang/invoke/VarForm +instanceKlass java/lang/invoke/VarHandleGuards +instanceKlass jdk/internal/util/Preconditions$1 +instanceKlass java/lang/invoke/VarHandle$1 +instanceKlass java/lang/invoke/VarHandles +instanceKlass java/util/concurrent/atomic/AtomicBoolean +instanceKlass java/io/RandomAccessFile$2 +instanceKlass jdk/internal/access/JavaIORandomAccessFileAccess +instanceKlass java/io/RandomAccessFile +instanceKlass java/io/DataInput +instanceKlass java/io/DataOutput +instanceKlass java/nio/file/attribute/FileTime +instanceKlass sun/nio/fs/WindowsNativeDispatcher$CompletionStatus +instanceKlass sun/nio/fs/WindowsNativeDispatcher$AclInformation +instanceKlass sun/nio/fs/WindowsNativeDispatcher$Account +instanceKlass sun/nio/fs/WindowsNativeDispatcher$DiskFreeSpace +instanceKlass sun/nio/fs/WindowsNativeDispatcher$VolumeInformation +instanceKlass sun/nio/fs/WindowsNativeDispatcher$FirstStream +instanceKlass sun/nio/fs/WindowsNativeDispatcher$FirstFile +instanceKlass java/util/Enumeration +instanceKlass java/util/ArrayDeque$DeqIterator +instanceKlass java/lang/ClassLoaderHelper +instanceKlass java/lang/ClassLoader$NativeLibrary +instanceKlass java/lang/ClassLoader$2 +instanceKlass sun/nio/fs/WindowsNativeDispatcher$1 +instanceKlass sun/nio/fs/WindowsNativeDispatcher +instanceKlass sun/nio/fs/NativeBuffer$Deallocator +instanceKlass sun/nio/fs/NativeBuffer +instanceKlass sun/nio/fs/NativeBuffers +instanceKlass sun/nio/fs/WindowsFileAttributes +instanceKlass java/nio/file/attribute/DosFileAttributes +instanceKlass sun/nio/fs/AbstractBasicFileAttributeView +instanceKlass sun/nio/fs/DynamicFileAttributeView +instanceKlass sun/nio/fs/WindowsFileAttributeViews +instanceKlass sun/nio/fs/Util +instanceKlass java/nio/file/attribute/BasicFileAttributeView +instanceKlass java/nio/file/attribute/FileAttributeView +instanceKlass java/nio/file/attribute/AttributeView +instanceKlass java/nio/file/Files +instanceKlass java/nio/file/CopyOption +instanceKlass java/nio/file/attribute/BasicFileAttributes +instanceKlass sun/nio/fs/WindowsPath +instanceKlass java/nio/file/Path +instanceKlass java/nio/file/Watchable +instanceKlass java/net/URI$Parser +instanceKlass sun/nio/fs/WindowsPathParser$Result +instanceKlass sun/nio/fs/WindowsPathParser +instanceKlass java/util/Arrays$ArrayItr +instanceKlass java/nio/file/FileSystem +instanceKlass java/nio/file/OpenOption +instanceKlass java/nio/file/spi/FileSystemProvider +instanceKlass sun/nio/fs/DefaultFileSystemProvider +instanceKlass java/nio/file/FileSystems$DefaultFileSystemHolder$1 +instanceKlass java/nio/file/FileSystems$DefaultFileSystemHolder +instanceKlass java/nio/file/FileSystems +instanceKlass java/util/zip/ZipFile$Source$Key +instanceKlass java/util/zip/ZipFile$Source +instanceKlass java/util/zip/ZipFile$CleanableResource +instanceKlass java/util/zip/ZipCoder +instanceKlass java/lang/Runtime$Version +instanceKlass java/util/jar/JavaUtilJarAccessImpl +instanceKlass jdk/internal/access/JavaUtilJarAccess +instanceKlass sun/nio/cs/ThreadLocalCoders$Cache +instanceKlass sun/nio/cs/ThreadLocalCoders +instanceKlass jdk/internal/loader/FileURLMapper +instanceKlass jdk/internal/loader/URLClassPath$JarLoader$1 +instanceKlass java/util/zip/ZipFile$1 +instanceKlass jdk/internal/access/JavaUtilZipFileAccess +instanceKlass java/util/zip/ZipFile +instanceKlass java/util/zip/ZipConstants +instanceKlass jdk/internal/loader/URLClassPath$Loader +instanceKlass jdk/internal/loader/URLClassPath$3 +instanceKlass java/security/PrivilegedExceptionAction +instanceKlass sun/net/util/URLUtil +instanceKlass sun/launcher/LauncherHelper +instanceKlass jdk/internal/vm/PostVMInitHook$1 +instanceKlass java/lang/StringCoding$StringEncoder +instanceKlass jdk/internal/util/EnvUtils +instanceKlass jdk/internal/vm/PostVMInitHook$2 +instanceKlass sun/util/locale/InternalLocaleBuilder$CaseInsensitiveChar +instanceKlass sun/util/locale/InternalLocaleBuilder +instanceKlass sun/util/locale/LocaleUtils +instanceKlass sun/util/locale/BaseLocale$Key +instanceKlass sun/util/locale/BaseLocale +instanceKlass sun/util/locale/LocaleObjectCache +instanceKlass java/util/Locale +instanceKlass jdk/internal/vm/PostVMInitHook +instanceKlass jdk/internal/module/ModuleBootstrap$2 +instanceKlass jdk/internal/module/IllegalAccessLogger$Builder +instanceKlass jdk/internal/module/IllegalAccessLogger +instanceKlass java/lang/WeakPairMap$$Lambda$3 +instanceKlass jdk/internal/org/objectweb/asm/FieldVisitor +instanceKlass java/lang/Module$$Lambda$2 +instanceKlass java/util/function/BiFunction +instanceKlass java/lang/WeakPairMap$Pair$Lookup +instanceKlass java/lang/WeakPairMap$Pair +instanceKlass java/lang/WeakPairMap +instanceKlass java/lang/Module$ReflectionData +instanceKlass jdk/internal/misc/InnocuousThread$2 +instanceKlass jdk/internal/misc/InnocuousThread$3 +instanceKlass jdk/internal/ref/CleanerFactory$1$1 +instanceKlass java/lang/ref/Cleaner$Cleanable +instanceKlass jdk/internal/ref/CleanerImpl +instanceKlass java/lang/ref/Cleaner$1 +instanceKlass java/lang/ref/Cleaner +instanceKlass jdk/internal/ref/CleanerFactory$1 +instanceKlass java/util/concurrent/ThreadFactory +instanceKlass jdk/internal/ref/CleanerFactory +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/InvokerBytecodeGenerator$CpPatch +instanceKlass java/lang/invoke/LambdaFormBuffer +instanceKlass java/lang/invoke/LambdaFormEditor +instanceKlass java/lang/invoke/DelegatingMethodHandle$Holder +instanceKlass sun/invoke/util/Wrapper$1 +instanceKlass java/lang/invoke/DirectMethodHandle$1 +instanceKlass sun/invoke/empty/Empty +instanceKlass sun/invoke/util/VerifyType +instanceKlass java/lang/invoke/ClassSpecializer$Factory +instanceKlass java/lang/invoke/ClassSpecializer$SpeciesData +instanceKlass java/lang/invoke/ClassSpecializer$1 +instanceKlass java/lang/invoke/ClassSpecializer +instanceKlass java/lang/invoke/InnerClassLambdaMetafactory$1 +instanceKlass jdk/internal/module/ModuleBootstrap$$Lambda$1 +instanceKlass jdk/internal/org/objectweb/asm/AnnotationVisitor +instanceKlass jdk/internal/org/objectweb/asm/Frame +instanceKlass jdk/internal/org/objectweb/asm/Label +instanceKlass jdk/internal/org/objectweb/asm/MethodVisitor +instanceKlass jdk/internal/org/objectweb/asm/Item +instanceKlass jdk/internal/org/objectweb/asm/ByteVector +instanceKlass jdk/internal/org/objectweb/asm/ClassVisitor +instanceKlass sun/invoke/util/BytecodeDescriptor +instanceKlass java/lang/invoke/InfoFromMemberName +instanceKlass java/lang/invoke/MethodHandleInfo +instanceKlass sun/security/action/GetBooleanAction +instanceKlass jdk/internal/org/objectweb/asm/Type +instanceKlass java/lang/invoke/AbstractValidatingLambdaMetafactory +instanceKlass java/lang/invoke/MethodHandleImpl$1 +instanceKlass jdk/internal/access/JavaLangInvokeAccess +instanceKlass java/lang/invoke/Invokers$Holder +instanceKlass java/lang/invoke/BootstrapMethodInvoker +instanceKlass java/lang/invoke/InvokerBytecodeGenerator$2 +instanceKlass java/lang/invoke/InvokerBytecodeGenerator +instanceKlass java/lang/invoke/LambdaForm$Holder +instanceKlass java/lang/invoke/LambdaForm$Name +instanceKlass java/lang/invoke/Invokers +instanceKlass java/lang/invoke/MethodHandleImpl +instanceKlass sun/invoke/util/ValueConversions +instanceKlass java/lang/invoke/DirectMethodHandle$Holder +instanceKlass java/lang/invoke/LambdaForm$NamedFunction +instanceKlass sun/invoke/util/Wrapper$Format +instanceKlass sun/invoke/util/VerifyAccess +instanceKlass java/security/Permission +instanceKlass java/security/Guard +instanceKlass java/lang/invoke/MemberName$Factory +instanceKlass java/lang/invoke/MethodHandles +instanceKlass java/lang/invoke/MethodTypeForm +instanceKlass java/lang/Void +instanceKlass java/lang/invoke/MethodType$ConcurrentWeakInternSet +instanceKlass java/lang/invoke/MethodHandles$Lookup +instanceKlass java/lang/invoke/LambdaMetafactory +instanceKlass java/lang/ModuleLayer$Controller +instanceKlass java/util/HashMap$HashIterator +instanceKlass jdk/internal/module/ServicesCatalog$ServiceProvider +instanceKlass java/util/concurrent/CopyOnWriteArrayList +instanceKlass java/util/Collections$UnmodifiableCollection$1 +instanceKlass java/util/Collections$UnmodifiableCollection +instanceKlass java/util/ArrayList$Itr +instanceKlass java/util/ImmutableCollections$ListItr +instanceKlass java/util/ListIterator +instanceKlass java/lang/ModuleLayer +instanceKlass jdk/internal/module/ModuleLoaderMap$Mapper +instanceKlass java/util/function/Function +instanceKlass jdk/internal/module/ModuleLoaderMap +instanceKlass java/util/ImmutableCollections$Set12$1 +instanceKlass java/util/ImmutableCollections$MapN$MapNIterator +instanceKlass java/util/AbstractMap$1$1 +instanceKlass java/lang/module/ResolvedModule +instanceKlass java/lang/module/Configuration +instanceKlass java/util/ImmutableCollections$SetN$SetNIterator +instanceKlass jdk/internal/loader/BuiltinClassLoader$LoadedModule +instanceKlass jdk/internal/util/Preconditions +instanceKlass java/util/Deque +instanceKlass java/util/Queue +instanceKlass sun/net/util/IPAddressUtil +instanceKlass java/net/URLStreamHandler +instanceKlass sun/net/www/ParseUtil +instanceKlass java/io/ExpiringCache$Entry +instanceKlass java/net/URL$3 +instanceKlass jdk/internal/access/JavaNetURLAccess +instanceKlass java/net/URL$DefaultFactory +instanceKlass java/net/URLStreamHandlerFactory +instanceKlass jdk/internal/loader/URLClassPath +instanceKlass java/security/Principal +instanceKlass java/security/ProtectionDomain$Key +instanceKlass java/security/ProtectionDomain$JavaSecurityAccessImpl +instanceKlass jdk/internal/access/JavaSecurityAccess +instanceKlass java/lang/ClassLoader$ParallelLoaders +instanceKlass jdk/internal/loader/AbstractClassLoaderValue +instanceKlass jdk/internal/module/ServicesCatalog +instanceKlass jdk/internal/loader/BootLoader +instanceKlass java/util/Optional +instanceKlass jdk/internal/module/ModuleBootstrap$Counters +instanceKlass jdk/internal/module/SystemModuleFinders$SystemModuleFinder +instanceKlass java/lang/module/ModuleFinder +instanceKlass jdk/internal/module/SystemModuleFinders$3 +instanceKlass jdk/internal/module/ModuleHashes$HashSupplier +instanceKlass java/util/KeyValueHolder +instanceKlass jdk/internal/module/SystemModuleFinders$2 +instanceKlass java/util/function/Supplier +instanceKlass java/lang/module/ModuleReference +instanceKlass jdk/internal/module/ModuleResolution +instanceKlass java/util/Collections$UnmodifiableMap +instanceKlass jdk/internal/module/ModuleHashes$Builder +instanceKlass jdk/internal/module/ModuleHashes +instanceKlass jdk/internal/module/ModuleTarget +instanceKlass java/lang/Enum +instanceKlass java/lang/module/ModuleDescriptor$Version +instanceKlass java/lang/module/ModuleDescriptor$Provides +instanceKlass java/lang/module/ModuleDescriptor$Opens +instanceKlass java/lang/module/ModuleDescriptor$Exports +instanceKlass java/lang/module/ModuleDescriptor$Requires +instanceKlass jdk/internal/module/Builder +instanceKlass jdk/internal/module/SystemModules$default +instanceKlass jdk/internal/module/SystemModules +instanceKlass jdk/internal/module/SystemModulesMap +instanceKlass java/net/URI$1 +instanceKlass jdk/internal/access/JavaNetUriAccess +instanceKlass java/net/URI +instanceKlass jdk/internal/module/SystemModuleFinders +instanceKlass jdk/internal/module/ModulePatcher +instanceKlass java/util/ImmutableCollections +instanceKlass java/io/ExpiringCache +instanceKlass java/io/FileSystem +instanceKlass java/io/DefaultFileSystem +instanceKlass java/io/File +instanceKlass java/lang/module/ModuleDescriptor$1 +instanceKlass jdk/internal/access/JavaLangModuleAccess +instanceKlass java/lang/module/ModuleDescriptor +instanceKlass jdk/internal/module/ModuleBootstrap +instanceKlass java/lang/CharacterData +instanceKlass java/lang/invoke/MethodHandleStatics +instanceKlass java/lang/System$2 +instanceKlass jdk/internal/access/JavaLangAccess +instanceKlass sun/io/Win32ErrorMode +instanceKlass jdk/internal/misc/OSEnvironment +instanceKlass java/lang/Integer$IntegerCache +instanceKlass jdk/internal/misc/Signal$NativeHandler +instanceKlass java/util/Hashtable$Entry +instanceKlass jdk/internal/misc/Signal +instanceKlass java/lang/Terminator$1 +instanceKlass jdk/internal/misc/Signal$Handler +instanceKlass java/lang/Terminator +instanceKlass java/nio/charset/CoderResult +instanceKlass java/lang/Readable +instanceKlass java/nio/ByteOrder +instanceKlass java/nio/Buffer$1 +instanceKlass jdk/internal/access/JavaNioAccess +instanceKlass java/nio/charset/CharsetEncoder +instanceKlass sun/nio/cs/ArrayEncoder +instanceKlass sun/security/action/GetPropertyAction +instanceKlass java/io/Writer +instanceKlass java/io/OutputStream +instanceKlass java/io/Flushable +instanceKlass java/io/FileDescriptor$1 +instanceKlass jdk/internal/access/JavaIOFileDescriptorAccess +instanceKlass java/io/FileDescriptor +instanceKlass jdk/internal/util/StaticProperty +instanceKlass java/util/concurrent/ConcurrentHashMap$MapEntry +instanceKlass java/util/concurrent/ConcurrentHashMap$Traverser +instanceKlass java/util/Iterator +instanceKlass java/lang/reflect/Array +instanceKlass java/util/Collections$SynchronizedCollection +instanceKlass java/util/List +instanceKlass java/util/RandomAccess +instanceKlass java/util/Collections +instanceKlass java/util/concurrent/ConcurrentHashMap$CollectionView +instanceKlass java/util/Properties$EntrySet +instanceKlass java/lang/VersionProps +instanceKlass java/lang/StringCoding$Result +instanceKlass java/nio/charset/CodingErrorAction +instanceKlass java/nio/charset/CharsetDecoder +instanceKlass sun/nio/cs/ArrayDecoder +instanceKlass sun/nio/cs/DelegatableDecoder +instanceKlass java/lang/StringUTF16 +instanceKlass sun/nio/cs/DoubleByte +instanceKlass java/lang/StringCoding$StringDecoder +instanceKlass java/lang/ThreadLocal$ThreadLocalMap +instanceKlass java/lang/StringCoding +instanceKlass java/util/HashMap$Node +instanceKlass jdk/internal/reflect/Reflection +instanceKlass java/lang/Class$1 +instanceKlass java/lang/reflect/ReflectAccess +instanceKlass jdk/internal/reflect/LangReflectAccess +instanceKlass java/lang/reflect/Modifier +instanceKlass java/lang/Class$Atomic +instanceKlass java/lang/Class$ReflectionData +instanceKlass java/nio/charset/StandardCharsets +instanceKlass sun/nio/cs/HistoricallyNamedCharset +instanceKlass java/lang/Math +instanceKlass java/util/Arrays +instanceKlass java/lang/ThreadLocal +instanceKlass java/nio/charset/spi/CharsetProvider +instanceKlass java/nio/charset/Charset +instanceKlass java/lang/StringLatin1 +instanceKlass jdk/internal/misc/VM +instanceKlass jdk/internal/access/SharedSecrets +instanceKlass java/lang/ref/Reference$1 +instanceKlass jdk/internal/access/JavaLangRefAccess +instanceKlass java/lang/ref/ReferenceQueue$Lock +instanceKlass java/lang/ref/ReferenceQueue +instanceKlass jdk/internal/reflect/ReflectionFactory +instanceKlass java/util/concurrent/locks/LockSupport +instanceKlass java/util/concurrent/ConcurrentHashMap$Node +instanceKlass java/util/Map$Entry +instanceKlass java/util/concurrent/ConcurrentHashMap$CounterCell +instanceKlass java/util/concurrent/locks/ReentrantLock +instanceKlass java/util/concurrent/locks/Lock +instanceKlass java/lang/Runtime +instanceKlass java/util/concurrent/ConcurrentMap +instanceKlass java/util/AbstractMap +instanceKlass java/security/cert/Certificate +instanceKlass jdk/internal/reflect/ReflectionFactory$GetReflectionFactoryAction +instanceKlass java/security/PrivilegedAction +instanceKlass java/util/Objects +instanceKlass java/util/AbstractCollection +instanceKlass java/util/Set +instanceKlass java/util/Collection +instanceKlass java/lang/Iterable +instanceKlass java/security/AccessController +instanceKlass java/lang/String$CaseInsensitiveComparator +instanceKlass java/util/Comparator +instanceKlass java/io/ObjectStreamField +instanceKlass java/lang/Number +instanceKlass java/lang/Character +instanceKlass java/lang/Boolean +instanceKlass java/util/concurrent/locks/AbstractOwnableSynchronizer +instanceKlass java/lang/LiveStackFrame +instanceKlass java/lang/StackFrameInfo +instanceKlass java/lang/StackWalker$StackFrame +instanceKlass java/lang/StackStreamFactory$AbstractStackWalker +instanceKlass java/lang/StackWalker +instanceKlass java/nio/Buffer +instanceKlass java/lang/StackTraceElement +instanceKlass java/security/CodeSource +instanceKlass jdk/internal/loader/ClassLoaders +instanceKlass java/util/jar/Manifest +instanceKlass java/net/URL +instanceKlass java/io/InputStream +instanceKlass java/io/Closeable +instanceKlass java/lang/AutoCloseable +instanceKlass jdk/internal/module/Modules +instanceKlass jdk/internal/misc/Unsafe +instanceKlass java/lang/AbstractStringBuilder +instanceKlass java/lang/Appendable +instanceKlass java/lang/AssertionStatusDirectives +instanceKlass java/lang/invoke/MethodHandleNatives$CallSiteContext +instanceKlass java/lang/invoke/CallSite +instanceKlass java/lang/invoke/MethodType +instanceKlass java/lang/invoke/LambdaForm +instanceKlass java/lang/invoke/MethodHandleNatives +instanceKlass java/lang/invoke/ResolvedMethodName +instanceKlass java/lang/invoke/MemberName +instanceKlass java/lang/invoke/VarHandle +instanceKlass java/lang/invoke/MethodHandle +instanceKlass jdk/internal/reflect/CallerSensitive +instanceKlass java/lang/annotation/Annotation +instanceKlass jdk/internal/reflect/FieldAccessor +instanceKlass jdk/internal/reflect/ConstantPool +instanceKlass jdk/internal/reflect/ConstructorAccessor +instanceKlass jdk/internal/reflect/MethodAccessor +instanceKlass jdk/internal/reflect/MagicAccessorImpl +instanceKlass java/lang/reflect/Parameter +instanceKlass java/lang/reflect/Member +instanceKlass java/lang/reflect/AccessibleObject +instanceKlass java/lang/Module +instanceKlass java/util/Dictionary +instanceKlass java/util/Map +instanceKlass java/lang/ThreadGroup +instanceKlass java/lang/Thread$UncaughtExceptionHandler +instanceKlass java/lang/Thread +instanceKlass java/lang/Runnable +instanceKlass java/lang/ref/Reference +instanceKlass java/security/AccessControlContext +instanceKlass java/security/ProtectionDomain +instanceKlass java/lang/SecurityManager +instanceKlass java/lang/Throwable +instanceKlass java/lang/System +instanceKlass java/lang/ClassLoader +instanceKlass java/lang/Cloneable +instanceKlass java/lang/Class +instanceKlass java/lang/reflect/Type +instanceKlass java/lang/reflect/GenericDeclaration +instanceKlass java/lang/reflect/AnnotatedElement +instanceKlass java/lang/String +instanceKlass java/lang/CharSequence +instanceKlass java/lang/Comparable +instanceKlass java/io/Serializable +ciInstanceKlass java/lang/Object 1 1 92 7 10 10 10 10 8 10 10 10 10 100 8 10 3 8 10 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 7 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 12 12 7 12 12 1 12 7 12 12 12 1 1 12 1 12 1 1 1 1 1 1 1 1 1 1 1 1 +ciInstanceKlass java/io/Serializable 1 0 7 100 100 1 1 1 1 +ciInstanceKlass java/lang/String 1 1 878 10 8 9 9 9 10 10 10 9 10 7 10 10 10 10 10 100 8 10 10 9 9 8 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 100 10 10 100 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 100 100 10 10 11 11 10 10 10 10 10 10 9 11 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 11 10 10 10 10 10 10 100 10 7 10 10 10 10 10 8 10 10 100 3 3 7 10 10 10 10 10 11 7 10 10 7 10 10 10 11 11 11 7 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 100 100 10 100 10 10 100 10 10 10 7 10 10 10 10 8 10 10 10 8 8 10 10 10 10 10 10 10 100 10 8 10 10 10 7 3 8 8 8 10 10 10 10 10 10 8 8 10 8 8 8 8 8 10 10 10 8 7 10 10 10 7 9 7 10 100 100 1 1 1 1 1 1 1 1 1 1 1 1 1 5 0 1 1 1 1 1 1 1 1 1 3 1 3 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 7 1 1 1 7 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 100 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 1 12 12 12 12 12 12 12 7 12 1 7 7 12 12 12 12 1 12 7 12 12 12 12 12 12 12 12 12 12 12 12 12 12 1 12 12 1 12 12 12 12 7 12 12 12 12 12 12 12 12 12 12 1 1 12 12 12 12 12 12 12 12 12 7 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 7 12 12 12 12 7 12 12 12 12 7 12 12 7 12 1 1 12 12 12 1 12 1 1 12 12 12 12 7 12 12 12 1 12 12 7 12 12 12 1 12 7 12 12 12 12 12 12 12 12 12 12 12 1 1 1 12 1 100 12 1 1 12 1 12 12 1 12 12 1 1 12 12 12 100 12 100 12 100 12 1 1 12 12 1 1 1 1 12 12 12 12 1 1 1 1 1 1 1 12 12 12 1 1 12 12 12 1 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/lang/String COMPACT_STRINGS Z 1 +staticfield java/lang/String serialPersistentFields [Ljava/io/ObjectStreamField; 0 [Ljava/io/ObjectStreamField; +staticfield java/lang/String CASE_INSENSITIVE_ORDER Ljava/util/Comparator; java/lang/String$CaseInsensitiveComparator +ciInstanceKlass java/lang/Class 1 1 1435 10 9 9 7 10 10 8 10 8 8 10 10 10 10 10 10 10 10 10 10 10 8 10 8 8 10 7 8 8 8 10 11 10 10 8 10 10 10 10 9 10 10 10 18 10 7 10 10 10 100 10 9 7 7 8 10 10 10 10 7 10 7 7 10 10 9 10 10 7 10 100 10 10 10 9 10 10 10 9 10 10 100 10 10 10 10 9 8 10 10 10 10 10 10 9 10 7 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 100 8 10 10 7 10 7 11 10 10 10 10 10 10 8 10 10 8 9 10 10 10 10 100 9 10 9 10 10 10 8 10 10 10 10 100 10 10 10 10 10 10 10 7 10 10 10 10 10 10 10 10 10 7 10 10 11 10 10 10 10 10 10 100 10 10 10 100 7 10 10 10 10 10 10 10 10 11 10 10 9 10 9 7 10 9 10 7 10 9 10 10 10 10 10 10 10 8 10 10 9 9 10 7 9 10 10 7 10 10 10 10 9 10 9 10 10 9 9 10 10 9 100 10 10 7 10 100 11 9 9 7 10 9 9 10 10 9 7 10 10 10 10 10 10 10 9 10 10 10 10 8 7 10 7 8 8 8 8 10 9 9 10 7 9 7 10 7 10 10 9 8 10 7 10 7 10 9 100 8 10 7 4 10 10 11 10 100 10 10 8 8 10 9 11 7 11 9 10 10 10 9 9 10 10 10 10 10 11 11 11 11 7 11 10 10 7 11 10 10 10 11 11 7 10 10 9 9 10 10 10 10 100 10 10 7 9 100 7 100 100 1 1 1 7 1 1 1 1 1 3 1 3 1 3 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 100 100 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 1 12 1 12 1 1 12 12 12 12 12 12 7 12 12 12 12 1 12 1 1 12 1 1 1 1 12 12 12 1 7 12 12 12 7 12 7 12 12 7 12 12 1 15 16 15 16 12 7 12 1 12 12 7 1 12 12 1 1 1 12 12 12 12 1 12 1 1 12 12 12 12 1 100 12 12 12 12 12 12 12 12 12 1 12 12 12 12 1 12 12 12 12 12 12 12 7 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 1 1 12 1 12 1 12 100 12 12 12 12 12 1 12 12 1 12 12 12 12 12 1 12 12 12 12 12 1 12 12 12 12 1 12 12 12 12 12 12 12 1 12 12 12 12 12 12 12 1 7 12 12 12 12 100 12 12 12 1 12 12 1 1 12 12 12 12 12 12 100 12 7 12 12 12 12 12 12 1 12 12 1 12 12 100 12 12 12 100 12 12 12 12 1 12 12 12 12 12 1 12 12 12 1 12 12 7 12 7 12 12 12 12 12 12 12 12 12 12 12 1 12 1 12 100 12 12 1 12 12 12 12 12 12 1 12 12 12 12 12 12 12 12 12 1 7 1 1 1 1 12 12 12 12 1 12 1 1 1 12 7 12 12 1 12 1 12 12 1 1 1 12 12 12 1 12 1 1 12 12 12 1 12 12 100 12 7 12 12 12 12 12 12 12 12 12 12 12 12 1 12 7 12 12 1 12 100 12 12 12 12 1 12 12 12 100 12 12 100 12 12 12 1 12 12 1 12 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 10 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 12 1 1 100 1 1 100 1 1 +staticfield java/lang/Class EMPTY_CLASS_ARRAY [Ljava/lang/Class; 0 [Ljava/lang/Class; +staticfield java/lang/Class serialPersistentFields [Ljava/io/ObjectStreamField; 0 [Ljava/io/ObjectStreamField; +ciInstanceKlass java/lang/Cloneable 1 0 7 100 100 1 1 1 1 +instanceKlass org/apache/tools/ant/AntClassLoader +instanceKlass org/codehaus/groovy/reflection/ClassLoaderForClassArtifacts +instanceKlass org/codehaus/groovy/reflection/SunClassLoader +instanceKlass org/gradle/internal/classloader/CachingClassLoader +instanceKlass org/gradle/internal/classloader/MultiParentClassLoader +instanceKlass org/gradle/internal/classloader/FilteringClassLoader$RetrieveSystemPackagesClassLoader +instanceKlass org/gradle/internal/classloader/FilteringClassLoader +instanceKlass org/gradle/internal/classloader/FilteringClassLoader +instanceKlass jdk/internal/reflect/DelegatingClassLoader +instanceKlass java/security/SecureClassLoader +ciInstanceKlass java/lang/ClassLoader 1 1 1189 9 10 9 10 7 10 10 9 10 100 10 10 10 100 8 10 10 10 10 7 10 7 7 7 10 10 9 7 10 9 9 9 9 9 7 10 9 10 10 9 9 7 9 7 10 10 9 10 7 10 8 10 10 10 7 10 10 8 10 10 10 10 10 10 10 10 7 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 100 10 100 10 10 10 10 10 100 8 10 8 10 10 100 8 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 8 11 9 11 10 8 8 10 100 10 10 10 10 10 10 10 10 10 7 10 10 10 7 10 100 18 10 10 10 7 10 10 10 7 10 10 10 10 8 100 10 10 9 10 10 100 8 10 10 8 8 10 10 7 10 10 100 100 10 100 100 10 10 10 10 10 10 9 10 10 10 10 10 8 10 7 18 10 10 10 10 8 10 10 18 11 7 10 10 10 11 10 18 10 11 18 11 10 10 9 7 10 10 8 10 9 8 10 9 8 7 10 10 100 8 10 10 10 8 8 10 10 10 8 8 10 10 10 7 10 10 10 10 10 11 11 11 11 11 7 10 9 9 9 10 10 100 10 100 10 10 10 9 9 9 9 9 9 8 10 10 10 10 10 11 10 100 10 10 10 7 7 10 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 12 12 12 12 1 12 12 12 12 1 12 12 12 1 1 12 7 12 12 1 1 1 12 12 12 1 12 12 12 12 12 1 12 12 12 12 12 12 1 12 1 12 12 12 1 1 12 12 1 12 7 12 1 12 12 12 12 12 12 12 12 1 12 7 12 12 12 12 12 12 12 12 12 100 12 12 12 12 1 12 1 12 7 12 12 12 1 1 1 12 12 1 1 12 12 12 12 12 12 12 12 12 12 12 12 7 12 12 12 12 12 12 12 12 12 12 1 12 12 12 1 1 12 1 12 12 12 12 12 7 12 12 7 1 12 12 1 12 1 1 15 16 15 16 12 100 12 7 12 7 12 1 12 12 12 1 12 12 7 12 12 1 1 12 12 7 12 12 1 1 12 1 1 12 12 1 12 100 12 1 1 12 1 1 12 12 12 12 12 12 100 12 12 12 12 12 12 1 12 1 16 15 16 12 12 12 12 12 1 12 12 16 15 16 12 12 1 12 12 12 15 12 7 12 16 15 16 12 12 12 12 12 1 12 12 1 12 12 1 12 12 1 1 12 1 1 12 12 1 1 12 12 100 12 1 1 100 12 12 1 12 12 12 12 12 12 12 12 1 12 12 12 12 12 12 1 1 12 12 12 12 12 12 12 12 12 12 7 12 12 12 12 12 100 12 1 12 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 10 1 10 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 10 1 1 1 1 1 1 1 1 10 1 1 1 1 1 10 1 1 1 10 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 12 12 12 12 12 12 1 1 100 1 1 100 1 1 +staticfield java/lang/ClassLoader nocerts [Ljava/security/cert/Certificate; 0 [Ljava/security/cert/Certificate; +staticfield java/lang/ClassLoader loadedLibraryNames Ljava/util/Set; java/util/HashSet +staticfield java/lang/ClassLoader $assertionsDisabled Z 1 +ciInstanceKlass java/lang/System 1 1 628 10 10 10 10 10 9 7 10 11 10 10 10 100 8 10 10 9 100 8 10 10 8 10 100 10 8 10 10 100 10 10 10 9 9 7 10 10 10 10 10 10 10 100 100 8 10 10 7 10 100 8 10 8 10 100 8 10 100 10 8 10 10 10 8 10 10 10 100 8 10 10 10 100 18 100 9 10 100 10 10 10 10 10 10 10 10 7 7 10 10 100 10 10 100 8 10 9 9 10 10 10 10 8 10 10 8 10 10 8 10 7 9 10 7 9 10 9 7 10 8 10 8 10 10 10 10 10 10 10 10 9 100 8 10 8 10 10 8 100 10 10 10 10 7 10 10 10 10 10 8 10 10 10 10 8 10 10 10 7 10 10 10 9 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 100 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 100 12 12 12 12 12 12 1 7 12 100 12 100 12 12 12 1 1 12 12 12 1 1 12 100 12 1 12 1 12 12 12 1 12 100 12 12 12 12 1 12 7 12 12 12 12 12 1 1 1 12 12 1 12 1 1 1 12 1 1 1 1 12 12 7 12 1 12 7 12 7 12 1 1 12 7 12 1 1 15 16 15 16 12 1 12 12 1 12 12 7 12 12 12 12 12 12 1 1 12 12 1 12 7 12 1 1 12 12 12 12 12 12 1 12 12 1 12 12 1 7 12 1 7 12 12 1 12 12 1 12 1 12 1 7 12 12 7 12 12 7 12 12 12 7 12 12 1 1 12 1 12 1 1 12 7 12 12 1 12 12 12 100 12 1 12 12 1 12 12 12 1 12 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 10 1 10 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 12 12 1 1 100 1 1 100 1 1 +staticfield java/lang/System in Ljava/io/InputStream; org/apache/tools/ant/DemuxInputStream +staticfield java/lang/System out Ljava/io/PrintStream; java/io/PrintStream +staticfield java/lang/System err Ljava/io/PrintStream; java/io/PrintStream +instanceKlass java/lang/Exception +instanceKlass java/lang/Error +ciInstanceKlass java/lang/Throwable 1 1 395 10 9 9 9 9 9 10 9 10 10 100 7 10 8 10 8 10 10 10 100 8 10 10 10 10 8 9 10 100 10 10 100 10 10 11 10 10 10 8 10 10 7 8 8 10 10 8 8 9 10 100 10 11 8 8 10 8 10 8 100 10 9 10 10 7 9 10 10 100 8 10 10 10 10 100 10 10 11 11 11 8 8 10 10 10 9 8 7 10 10 100 8 10 11 8 9 10 11 9 11 100 10 7 10 100 1 1 1 100 1 100 1 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 100 100 1 100 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 12 12 12 12 12 12 12 1 1 1 12 1 100 12 12 1 1 12 7 12 12 1 100 12 12 1 12 12 1 7 12 12 12 12 12 1 12 12 1 1 1 12 12 1 1 12 100 12 1 12 1 1 12 1 12 1 1 12 12 12 100 12 12 12 7 1 1 12 12 100 12 1 100 12 12 12 12 12 1 1 100 12 1 1 12 1 1 12 1 12 100 12 12 12 12 1 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/lang/Throwable UNASSIGNED_STACK [Ljava/lang/StackTraceElement; 0 [Ljava/lang/StackTraceElement; +staticfield java/lang/Throwable SUPPRESSED_SENTINEL Ljava/util/List; java/util/Collections$EmptyList +staticfield java/lang/Throwable EMPTY_THROWABLE_ARRAY [Ljava/lang/Throwable; 0 [Ljava/lang/Throwable; +staticfield java/lang/Throwable $assertionsDisabled Z 1 +instanceKlass javax/xml/parsers/FactoryConfigurationError +instanceKlass com/sun/source/util/TreePath$1Result +instanceKlass com/sun/tools/javac/file/PathFileObject$CannotCreateUriError +instanceKlass com/sun/tools/javac/tree/TreeInfo$1Result +instanceKlass com/sun/tools/javac/util/Abort +instanceKlass com/sun/tools/javac/processing/AnnotationProcessingError +instanceKlass com/sun/tools/javac/util/FatalError +instanceKlass kotlin/jvm/KotlinReflectionNotSupportedError +instanceKlass java/util/ServiceConfigurationError +instanceKlass com/google/common/util/concurrent/ExecutionError +instanceKlass java/lang/AssertionError +instanceKlass java/lang/VirtualMachineError +instanceKlass java/lang/LinkageError +instanceKlass java/lang/ThreadDeath +ciInstanceKlass java/lang/Error 1 1 40 10 10 10 10 10 100 7 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 12 12 1 1 +ciInstanceKlass java/lang/ThreadDeath 0 0 21 10 100 100 1 1 1 5 0 1 1 1 1 1 1 1 1 1 12 1 1 +instanceKlass java/beans/IntrospectionException +instanceKlass com/puppycrawl/tools/checkstyle/api/CheckstyleException +instanceKlass java/util/TooManyListenersException +instanceKlass com/sun/tools/javac/parser/ReferenceParser$ParseException +instanceKlass com/sun/tools/javac/jvm/JNIWriter$TypeSignature$SignatureException +instanceKlass com/sun/tools/javac/jvm/ModuleNameReader$BadClassFile +instanceKlass com/sun/tools/javac/jvm/ClassWriter$StringOverflow +instanceKlass com/sun/tools/javac/jvm/ClassWriter$PoolOverflow +instanceKlass sun/nio/fs/WindowsException +instanceKlass com/sun/tools/doclint/DocLint$BadArgs +instanceKlass com/sun/tools/javac/main/Option$InvalidValueException +instanceKlass javax/management/JMException +instanceKlass javax/naming/NamingException +instanceKlass java/awt/AWTException +instanceKlass java/beans/PropertyVetoException +instanceKlass java/sql/SQLException +instanceKlass org/apache/maven/settings/building/SettingsBuildingException +instanceKlass com/jcraft/jsch/JSchException +instanceKlass javax/xml/xpath/XPathException +instanceKlass org/xml/sax/SAXException +instanceKlass javax/xml/parsers/ParserConfigurationException +instanceKlass org/gradle/api/internal/attributes/AttributeMergingException +instanceKlass java/lang/CloneNotSupportedException +instanceKlass java/security/GeneralSecurityException +instanceKlass java/util/concurrent/TimeoutException +instanceKlass java/util/concurrent/ExecutionException +instanceKlass java/text/ParseException +instanceKlass java/security/PrivilegedActionException +instanceKlass java/lang/InterruptedException +instanceKlass java/net/URISyntaxException +instanceKlass java/io/IOException +instanceKlass java/lang/ReflectiveOperationException +instanceKlass java/lang/RuntimeException +ciInstanceKlass java/lang/Exception 1 1 40 10 10 10 10 10 100 7 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 12 12 1 1 +instanceKlass java/util/EmptyStackException +instanceKlass org/antlr/v4/runtime/RecognitionException +instanceKlass org/apache/commons/beanutils/ConversionException +instanceKlass org/codehaus/groovy/vmplugin/v9/ClassFindFailedException +instanceKlass org/codehaus/groovy/control/ConfigurationException +instanceKlass org/apache/tools/ant/BuildException +instanceKlass groovy/lang/StringWriterIOException +instanceKlass groovy/lang/GroovyRuntimeException +instanceKlass com/sun/tools/javac/jvm/Gen$CodeSizeOverflow +instanceKlass com/sun/tools/javac/code/Types$SignatureGenerator$InvalidSignatureException +instanceKlass com/sun/tools/javac/comp/Infer$GraphStrategy$NodeNotFoundException +instanceKlass com/sun/tools/javac/code/Types$AdaptFailure +instanceKlass com/sun/tools/javac/comp/Attr$BreakAttr +instanceKlass com/sun/tools/javac/code/Types$FunctionDescriptorLookupError +instanceKlass com/sun/tools/javac/comp/Resolve$InapplicableMethodException +instanceKlass com/sun/tools/javac/code/Symbol$CompletionFailure +instanceKlass java/nio/file/ProviderNotFoundException +instanceKlass com/sun/tools/javac/util/ClientCodeException +instanceKlass com/sun/tools/javac/util/PropagatedException +instanceKlass org/gradle/api/internal/tasks/compile/CompilationFailedException +instanceKlass org/gradle/internal/execution/fingerprint/InputFingerprinter$InputFingerprintingException +instanceKlass org/gradle/api/tasks/StopExecutionException +instanceKlass org/gradle/util/ConfigureUtil$IncompleteInputException +instanceKlass org/gradle/internal/jvm/UnsupportedJavaRuntimeException +instanceKlass org/gradle/api/internal/NullNamingPropertyException +instanceKlass org/gradle/api/internal/NoNamingPropertyException +instanceKlass org/gradle/workers/internal/WorkSerializationException +instanceKlass org/gradle/internal/component/NoMatchingCapabilitiesException +instanceKlass org/gradle/internal/component/model/ConfigurationNotFoundException +instanceKlass org/gradle/internal/resource/transport/http/HttpErrorStatusCodeException +instanceKlass org/gradle/api/internal/NoFactoryRegisteredForTypeException +instanceKlass org/gradle/util/internal/ConfigureUtil$IncompleteInputException +instanceKlass org/gradle/internal/reflect/UnsupportedPropertyValueException +instanceKlass org/gradle/model/internal/manage/schema/extract/InvalidManagedModelElementTypeException +instanceKlass java/time/DateTimeException +instanceKlass java/nio/file/FileSystemNotFoundException +instanceKlass java/nio/file/FileSystemAlreadyExistsException +instanceKlass org/codehaus/groovy/vmplugin/v9/ClassFindFailedException +instanceKlass org/codehaus/groovy/control/ConfigurationException +instanceKlass org/w3c/dom/DOMException +instanceKlass groovy/lang/StringWriterIOException +instanceKlass java/lang/IllegalCallerException +instanceKlass java/lang/reflect/MalformedParameterizedTypeException +instanceKlass org/gradle/cache/internal/btree/CorruptedCacheException +instanceKlass org/gradle/internal/execution/fingerprint/InputFingerprinter$InputFileFingerprintingException +instanceKlass org/gradle/internal/execution/OutputSnapshotter$OutputFileSnapshottingException +instanceKlass org/gradle/api/internal/attributes/AttributeMatchException +instanceKlass org/gradle/internal/locking/MissingLockStateException +instanceKlass org/gradle/internal/locking/InvalidLockFileException +instanceKlass org/gradle/api/internal/provider/AbstractProperty$PropertyQueryException +instanceKlass org/gradle/cli/CommandLineArgumentException +instanceKlass groovy/lang/GroovyRuntimeException +instanceKlass kotlin/NoWhenBranchMatchedException +instanceKlass java/util/ConcurrentModificationException +instanceKlass org/gradle/internal/reflect/NoSuchPropertyException +instanceKlass org/gradle/internal/snapshot/impl/IsolationException +instanceKlass org/gradle/internal/snapshot/ValueSnapshottingException +instanceKlass org/apache/tools/ant/BuildException +instanceKlass java/io/UncheckedIOException +instanceKlass org/gradle/tooling/internal/protocol/InternalBuildActionFailureException +instanceKlass org/gradle/tooling/internal/protocol/test/InternalTestExecutionException +instanceKlass org/gradle/internal/typeconversion/TypeConversionException +instanceKlass com/google/common/util/concurrent/UncheckedExecutionException +instanceKlass com/google/common/cache/CacheLoader$InvalidCacheLoadException +instanceKlass org/gradle/internal/work/NoAvailableWorkerLeaseException +instanceKlass org/gradle/launcher/daemon/server/BadlyFormedRequestException +instanceKlass org/gradle/internal/remote/internal/MessageIOException +instanceKlass org/gradle/cache/InsufficientLockModeException +instanceKlass org/gradle/cache/LockTimeoutException +instanceKlass org/gradle/cache/internal/locklistener/GracefullyStoppedException +instanceKlass org/gradle/launcher/daemon/registry/DaemonRegistry$EmptyRegistryException +instanceKlass org/gradle/cache/FileIntegrityViolationException +instanceKlass org/gradle/internal/file/FileException +instanceKlass org/gradle/launcher/daemon/server/api/DaemonStoppedException +instanceKlass org/gradle/launcher/daemon/server/api/DaemonUnavailableException +instanceKlass java/lang/TypeNotPresentException +instanceKlass java/util/MissingResourceException +instanceKlass org/gradle/util/internal/GFileUtils$TailReadingException +instanceKlass org/gradle/internal/jvm/JavaHomeException +instanceKlass kotlin/UninitializedPropertyAccessException +instanceKlass java/util/NoSuchElementException +instanceKlass org/gradle/api/reflect/ObjectInstantiationException +instanceKlass org/gradle/api/internal/classpath/UnknownModuleException +instanceKlass org/gradle/internal/nativeintegration/NativeIntegrationException +instanceKlass org/gradle/internal/reflect/NoSuchMethodException +instanceKlass net/rubygrapefruit/platform/NativeException +instanceKlass org/gradle/internal/service/ServiceLookupException +instanceKlass com/esotericsoftware/kryo/KryoException +instanceKlass java/lang/reflect/UndeclaredThrowableException +instanceKlass org/gradle/internal/operations/BuildOperationInvocationException +instanceKlass org/gradle/internal/UncheckedException +instanceKlass org/gradle/api/GradleException +instanceKlass java/lang/UnsupportedOperationException +instanceKlass java/lang/SecurityException +instanceKlass org/gradle/api/UncheckedIOException +instanceKlass org/gradle/internal/service/ServiceLookupException +instanceKlass java/lang/IndexOutOfBoundsException +instanceKlass org/gradle/api/GradleException +instanceKlass java/lang/IllegalStateException +instanceKlass org/gradle/api/UncheckedIOException +instanceKlass org/gradle/api/internal/classpath/UnknownModuleException +instanceKlass java/lang/IllegalArgumentException +instanceKlass java/lang/ArithmeticException +instanceKlass java/lang/NullPointerException +instanceKlass java/lang/IllegalMonitorStateException +instanceKlass java/lang/ArrayStoreException +instanceKlass java/lang/ClassCastException +ciInstanceKlass java/lang/RuntimeException 1 1 40 10 10 10 10 10 100 7 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 12 12 1 1 +instanceKlass org/codehaus/groovy/reflection/ReflectionUtils$ClassContextHelper +instanceKlass org/codehaus/groovy/reflection/ReflectionUtils$ClassContextHelper +ciInstanceKlass java/lang/SecurityManager 1 1 572 10 9 7 10 100 8 10 10 10 10 100 10 100 10 9 10 10 10 100 8 10 9 9 8 9 100 10 8 10 10 10 100 10 10 100 100 8 10 8 8 8 8 8 8 10 8 8 8 8 8 10 10 8 100 8 10 8 8 8 8 8 10 8 100 8 8 10 8 8 10 100 8 10 10 100 10 10 10 10 10 10 11 18 11 18 11 18 18 11 18 11 9 9 9 9 7 10 10 10 18 18 10 18 10 18 18 8 10 9 11 8 100 10 10 10 9 10 10 8 100 10 9 8 8 100 10 10 10 9 11 10 11 10 7 7 10 10 10 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 12 12 1 7 12 1 1 12 12 100 12 1 1 12 7 12 12 12 1 1 12 12 1 12 1 1 12 12 12 1 12 1 1 1 12 1 1 1 1 1 1 12 1 1 1 1 1 12 12 1 1 1 1 1 1 1 1 100 12 1 1 1 1 1 1 12 1 1 12 1 12 12 12 7 12 12 7 12 7 12 1 15 16 15 16 12 7 12 16 15 16 12 12 15 16 15 16 12 16 15 16 12 12 12 12 12 12 1 7 12 12 12 15 16 12 15 16 7 12 15 12 12 15 16 15 16 1 12 12 7 12 1 1 12 12 12 12 12 12 1 1 12 1 1 1 12 7 12 12 12 12 12 1 1 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 10 1 10 1 1 1 1 1 1 10 1 1 1 1 1 10 11 1 1 1 10 1 1 1 1 1 1 10 1 10 1 1 1 11 1 1 10 10 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 12 7 12 12 12 7 12 12 12 12 12 1 1 100 1 1 1 1 1 1 1 1 100 1 1 +staticfield java/lang/SecurityManager packageAccessLock Ljava/lang/Object; java/lang/Object +staticfield java/lang/SecurityManager packageDefinitionLock Ljava/lang/Object; java/lang/Object +staticfield java/lang/SecurityManager nonExportedPkgs Ljava/util/Map; java/util/concurrent/ConcurrentHashMap +ciInstanceKlass java/security/ProtectionDomain 1 1 331 10 9 7 10 9 9 9 10 7 9 9 7 9 9 10 100 10 10 10 10 9 9 10 7 10 100 10 9 8 100 8 10 10 10 10 8 11 8 10 8 8 10 10 10 10 8 10 8 8 10 9 10 9 10 100 100 10 10 7 10 100 10 10 11 11 100 11 10 10 11 11 10 10 10 11 10 8 8 10 7 10 10 7 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 7 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 100 100 100 1 1 1 1 1 100 12 12 1 12 12 12 12 12 1 12 12 1 12 12 100 12 100 12 12 12 12 100 12 12 1 1 12 100 12 1 1 1 12 12 12 1 1 12 1 1 12 12 12 12 1 12 1 1 100 12 12 12 12 12 1 1 100 12 1 1 12 12 12 12 1 12 12 12 12 12 12 100 12 12 12 1 1 7 12 1 7 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/security/ProtectionDomain filePermCompatInPD Z 0 +ciInstanceKlass java/security/AccessControlContext 1 1 367 9 9 10 8 10 10 9 9 9 10 7 100 10 11 11 11 11 7 11 10 10 9 10 11 10 7 100 8 10 10 7 10 9 9 9 9 9 9 9 10 9 10 10 8 10 10 10 100 10 10 10 10 8 10 8 10 8 8 10 8 10 8 10 10 10 8 8 100 10 10 100 10 8 10 10 10 8 10 10 10 7 10 10 10 10 10 10 10 10 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 100 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 100 12 1 100 12 12 12 12 12 7 12 1 12 12 12 12 12 1 12 12 7 12 100 12 12 12 1 1 1 12 12 1 7 12 12 12 12 12 12 12 12 7 12 12 12 12 1 12 12 100 12 1 12 100 12 1 12 1 100 12 1 1 12 1 12 1 12 12 12 1 1 1 12 12 1 12 1 12 12 1 12 12 12 1 12 12 12 12 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +instanceKlass sun/reflect/misc/MethodUtil +instanceKlass java/net/URLClassLoader +instanceKlass jdk/internal/loader/BuiltinClassLoader +ciInstanceKlass java/security/SecureClassLoader 1 1 127 10 7 10 9 10 10 9 10 10 10 10 10 10 7 10 7 10 7 10 11 7 100 8 10 10 7 7 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 1 12 12 7 12 12 12 12 12 12 12 12 12 1 1 12 1 12 7 12 1 1 1 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +instanceKlass java/lang/InstantiationException +instanceKlass java/lang/IllegalAccessException +instanceKlass java/lang/reflect/InvocationTargetException +instanceKlass java/lang/NoSuchFieldException +instanceKlass java/lang/NoSuchMethodException +instanceKlass java/lang/ClassNotFoundException +ciInstanceKlass java/lang/ReflectiveOperationException 1 1 34 10 10 10 10 100 7 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 12 1 1 +ciInstanceKlass java/lang/ClassNotFoundException 1 1 37 100 10 10 9 100 7 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 1 1 1 +instanceKlass java/lang/ClassFormatError +instanceKlass java/lang/UnsatisfiedLinkError +instanceKlass java/lang/IncompatibleClassChangeError +instanceKlass java/lang/BootstrapMethodError +instanceKlass java/lang/NoClassDefFoundError +ciInstanceKlass java/lang/LinkageError 1 1 31 10 10 10 100 7 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 1 1 +ciInstanceKlass java/lang/NoClassDefFoundError 1 1 26 10 10 100 7 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 12 12 1 1 +instanceKlass org/codehaus/groovy/runtime/typehandling/GroovyCastException +instanceKlass org/codehaus/groovy/runtime/typehandling/GroovyCastException +ciInstanceKlass java/lang/ClassCastException 1 1 26 10 10 100 100 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 12 12 1 1 +ciInstanceKlass java/lang/ArrayStoreException 1 1 26 10 10 100 100 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 12 12 1 1 +instanceKlass java/lang/InternalError +instanceKlass java/lang/StackOverflowError +instanceKlass java/lang/OutOfMemoryError +ciInstanceKlass java/lang/VirtualMachineError 1 1 34 10 10 10 10 100 100 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 12 1 1 +ciInstanceKlass java/lang/OutOfMemoryError 1 1 26 10 10 100 100 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 12 12 1 1 +ciInstanceKlass java/lang/StackOverflowError 1 1 26 10 10 100 100 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 12 12 1 1 +ciInstanceKlass java/lang/IllegalMonitorStateException 1 1 26 10 10 100 100 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 12 12 1 1 +instanceKlass java/lang/ref/PhantomReference +instanceKlass java/lang/ref/FinalReference +instanceKlass java/lang/ref/WeakReference +instanceKlass java/lang/ref/SoftReference +ciInstanceKlass java/lang/ref/Reference 1 1 159 10 9 10 9 9 7 10 10 9 9 10 10 10 9 9 100 10 10 10 7 10 10 10 7 8 10 7 10 10 10 7 10 10 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 7 1 1 1 1 12 12 12 12 12 1 12 12 12 12 12 12 12 12 12 1 12 12 1 12 12 12 1 1 12 1 12 12 12 1 7 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/lang/ref/Reference processPendingLock Ljava/lang/Object; java/lang/Object +instanceKlass org/gradle/api/internal/project/antbuilder/CacheEntry +instanceKlass org/codehaus/groovy/util/ReferenceType$SoftRef +instanceKlass java/util/ResourceBundle$BundleReference +instanceKlass com/sun/beans/util/Cache$Kind$Soft +instanceKlass org/codehaus/groovy/util/ReferenceType$SoftRef +instanceKlass sun/util/locale/provider/LocaleResources$ResourceReference +instanceKlass sun/util/resources/Bundles$BundleReference +instanceKlass sun/util/locale/LocaleObjectCache$CacheEntry +instanceKlass jdk/internal/ref/SoftCleanable +instanceKlass java/lang/invoke/LambdaFormEditor$Transform +ciInstanceKlass java/lang/ref/SoftReference 1 1 47 10 9 9 10 10 7 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 12 12 12 12 12 1 1 1 +instanceKlass java/util/concurrent/ForkJoinTask$ExceptionNode +instanceKlass org/codehaus/groovy/util/ReferenceType$WeakRef +instanceKlass com/sun/tools/javac/util/UnsharedNameTable$HashEntry +instanceKlass java/util/ResourceBundle$KeyElementReference +instanceKlass java/io/ObjectStreamClass$FieldReflectorKey +instanceKlass java/io/ObjectStreamClass$WeakClassKey +instanceKlass com/sun/jmx/mbeanserver/WeakIdentityHashMap$IdentityWeakReference +instanceKlass com/google/common/cache/LocalCache$WeakEntry +instanceKlass jdk/internal/jimage/ImageBufferCache$BufferReference +instanceKlass java/beans/WeakIdentityMap$Entry +instanceKlass org/codehaus/groovy/util/ReferenceType$WeakRef +instanceKlass com/google/common/collect/MapMakerInternalMap$WeakValueReferenceImpl +instanceKlass com/google/common/collect/MapMakerInternalMap$AbstractWeakKeyEntry +instanceKlass com/google/common/cache/LocalCache$WeakValueReference +instanceKlass java/util/logging/LogManager$LoggerWeakRef +instanceKlass java/util/logging/Level$KnownLevel +instanceKlass sun/nio/ch/FileLockTable$FileLockReference +instanceKlass java/lang/ClassValue$Entry +instanceKlass java/lang/WeakPairMap$WeakRefPeer +instanceKlass jdk/internal/ref/WeakCleanable +instanceKlass java/lang/invoke/MethodType$ConcurrentWeakInternSet$WeakEntry +instanceKlass java/util/WeakHashMap$Entry +instanceKlass java/lang/ThreadLocal$ThreadLocalMap$Entry +ciInstanceKlass java/lang/ref/WeakReference 1 1 31 10 10 100 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 1 1 +instanceKlass java/lang/ref/Finalizer +ciInstanceKlass java/lang/ref/FinalReference 1 1 36 10 100 8 10 100 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 1 1 12 1 1 1 +instanceKlass org/gradle/api/internal/project/antbuilder/Cleanup +instanceKlass jdk/internal/ref/PhantomCleanable +instanceKlass jdk/internal/ref/Cleaner +ciInstanceKlass java/lang/ref/PhantomReference 1 1 30 10 100 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 1 1 +ciInstanceKlass java/lang/ref/Finalizer 1 1 139 9 10 9 9 9 9 7 10 10 7 11 100 10 100 10 10 10 100 10 10 7 10 7 10 10 10 10 7 10 7 10 10 10 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 12 12 12 12 12 12 1 12 12 1 7 12 1 12 1 12 100 12 100 12 1 12 12 1 1 12 12 12 1 12 1 12 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/lang/ref/Finalizer lock Ljava/lang/Object; java/lang/Object +instanceKlass java/util/concurrent/ForkJoinWorkerThread +instanceKlass org/gradle/api/internal/project/antbuilder/FinalizerThread +instanceKlass com/sun/tools/javac/file/BaseFileManager$1 +instanceKlass net/rubygrapefruit/platform/internal/jni/AbstractFileEventFunctions$NativeFileWatcher$1 +instanceKlass org/gradle/launcher/daemon/server/exec/DaemonConnectionBackedEventConsumer$ForwardEvents +instanceKlass org/gradle/launcher/daemon/server/exec/LogToClient$AsynchronousLogDispatcher +instanceKlass java/util/logging/LogManager$Cleaner +instanceKlass jdk/internal/misc/InnocuousThread +instanceKlass java/lang/ref/Finalizer$FinalizerThread +instanceKlass java/lang/ref/Reference$ReferenceHandler +ciInstanceKlass java/lang/Thread 1 1 592 9 9 10 9 9 100 8 10 3 8 3 10 10 9 9 9 9 7 100 8 10 9 10 10 10 10 10 10 9 10 10 9 10 10 9 10 9 10 9 9 10 10 9 10 9 100 10 7 10 8 10 10 10 10 10 10 9 100 10 10 10 10 100 11 9 10 10 10 9 10 9 10 100 10 10 10 11 10 10 10 7 10 10 10 10 10 10 10 10 10 10 100 8 10 10 10 8 10 8 10 8 8 10 10 100 8 10 9 9 10 10 10 9 10 100 10 11 9 9 10 100 10 11 100 10 10 11 10 100 10 10 10 8 9 10 11 10 11 10 7 7 1 1 100 1 100 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 3 1 3 1 3 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 7 100 100 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 100 1 1 1 1 1 1 1 1 1 100 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 12 12 1 1 12 1 12 12 12 12 12 12 1 1 1 12 7 12 12 12 12 12 100 12 12 12 12 12 12 12 12 12 7 12 12 12 12 100 12 12 12 12 1 1 1 12 12 12 12 12 12 12 1 12 12 12 1 12 100 12 12 12 12 12 12 12 1 12 12 12 12 12 12 1 12 12 12 12 12 12 12 12 12 1 1 12 12 1 12 1 1 1 100 12 100 12 1 12 12 12 12 12 12 1 12 12 12 12 12 1 12 100 12 1 12 12 12 12 1 12 12 7 12 12 12 12 100 12 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/lang/Thread EMPTY_STACK_TRACE [Ljava/lang/StackTraceElement; 0 [Ljava/lang/StackTraceElement; +ciInstanceKlass java/lang/ThreadGroup 1 1 289 10 9 8 9 7 9 9 10 10 10 10 10 9 10 10 9 10 9 9 10 100 10 10 10 9 10 10 9 10 10 10 10 10 10 10 10 10 10 10 100 10 10 10 7 10 7 10 9 10 8 10 10 10 10 11 100 9 100 10 8 10 10 8 10 10 10 10 8 10 8 10 8 7 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 1 12 1 12 12 12 12 12 12 12 12 12 12 12 100 12 12 12 7 12 12 7 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 1 12 12 1 12 12 12 12 1 12 12 12 12 1 12 1 1 12 12 1 12 12 12 100 1 1 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +ciInstanceKlass java/util/Map 1 1 258 11 11 10 11 11 11 11 7 11 11 100 100 10 11 11 11 11 10 11 11 10 100 10 7 7 10 7 10 7 11 7 11 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 100 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 7 12 12 7 12 12 12 1 12 12 1 1 12 12 12 12 12 12 12 7 12 7 12 1 1 12 1 1 1 12 1 1 1 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +instanceKlass java/util/Hashtable +ciInstanceKlass java/util/Dictionary 1 1 36 10 100 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 1 1 +instanceKlass org/apache/tools/ant/Project$AntRefTable +instanceKlass java/util/Properties +ciInstanceKlass java/util/Hashtable 1 1 512 100 10 9 100 100 10 8 10 10 10 10 10 8 10 9 7 9 7 4 10 9 4 10 11 10 10 9 10 100 10 9 10 9 10 10 3 9 9 3 10 10 10 11 11 11 11 7 11 11 10 10 10 9 9 9 10 100 100 10 10 8 10 10 8 10 8 10 7 10 10 100 10 10 7 10 7 10 10 7 11 11 100 10 10 10 11 100 10 11 11 10 10 10 10 10 10 10 8 10 100 8 10 4 10 4 10 8 10 10 100 11 10 10 10 10 7 100 100 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 3 1 3 1 3 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 100 100 1 1 1 1 1 1 100 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 12 12 1 1 1 12 12 12 12 7 12 1 12 12 1 12 1 7 12 12 12 12 12 12 12 12 1 12 12 12 12 12 12 12 12 12 12 12 7 12 12 12 1 12 12 12 12 12 12 12 12 1 1 12 1 12 1 1 7 12 1 12 12 1 12 12 1 1 12 1 12 12 1 100 12 12 1 12 12 12 12 12 12 12 12 100 12 12 1 1 12 12 1 12 100 12 1 100 12 12 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +instanceKlass org/gradle/internal/classpath/AccessTrackingProperties +instanceKlass java/security/Provider +ciInstanceKlass java/util/Properties 1 1 645 10 100 10 7 10 9 9 9 10 10 8 10 7 10 10 8 10 7 10 10 9 10 7 10 10 10 100 8 10 10 10 10 100 3 10 10 10 8 10 10 10 10 10 100 100 10 10 100 9 10 10 10 100 10 10 10 11 11 11 7 11 11 10 8 10 10 100 10 10 10 9 10 10 100 100 100 10 8 8 10 10 10 7 10 10 10 7 10 10 11 10 8 10 11 8 10 11 9 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 7 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 7 10 100 10 11 4 11 10 10 11 10 10 10 100 8 10 10 10 100 6 0 10 11 10 10 1 1 1 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 100 7 100 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 100 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 100 1 1 1 1 100 1 1 1 1 1 12 1 12 1 12 12 12 12 7 12 12 1 7 12 1 12 12 1 12 1 12 12 12 12 1 12 12 12 1 1 12 12 12 12 1 12 12 1 12 12 12 12 12 1 1 12 12 1 100 12 12 12 12 1 12 7 12 12 12 1 12 12 12 1 12 12 1 12 100 12 100 12 12 100 12 1 1 1 1 1 12 12 12 1 12 12 1 12 12 7 12 1 12 1 12 12 12 12 12 12 12 12 12 12 12 12 12 12 1 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 1 12 1 12 12 12 12 12 100 12 12 1 1 12 100 12 1 12 100 12 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/util/Properties UNSAFE Ljdk/internal/misc/Unsafe; jdk/internal/misc/Unsafe +staticfield java/util/Properties hexDigit [C 16 +ciInstanceKlass java/lang/Module 1 1 907 10 9 10 9 9 9 10 10 10 10 7 10 10 7 11 7 10 10 9 10 10 8 10 10 10 9 11 9 10 9 10 10 100 100 10 10 8 10 10 10 10 10 10 9 10 10 9 10 10 9 11 7 10 9 9 10 7 7 10 100 8 10 10 10 8 10 10 10 10 8 8 10 10 10 18 10 11 9 11 10 100 8 10 7 10 10 11 11 9 11 10 10 9 10 10 10 10 18 11 10 11 10 11 4 10 7 10 11 7 10 11 7 10 7 8 10 10 7 10 10 7 7 10 9 100 10 11 10 10 10 11 7 10 11 10 11 10 10 10 10 10 10 10 10 18 11 11 18 10 10 10 7 10 10 10 9 7 10 10 10 10 10 10 10 10 10 9 18 10 7 100 8 10 10 10 100 10 100 8 100 10 100 100 3 10 100 10 10 10 100 10 10 100 100 10 8 10 10 10 10 10 10 10 7 10 10 10 100 8 10 10 8 10 8 10 10 10 8 10 7 10 10 10 11 100 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 7 7 7 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 100 100 1 100 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 12 12 12 12 12 12 12 12 12 12 1 7 12 12 1 12 12 7 12 100 12 12 12 1 12 12 12 12 12 12 7 12 12 7 12 12 1 1 12 1 12 12 12 12 12 12 12 12 12 12 12 12 12 12 1 12 12 12 12 1 1 12 1 1 12 12 1 12 12 12 12 1 1 12 12 12 1 15 16 15 16 12 12 12 12 12 7 12 1 1 1 12 12 12 12 12 12 12 12 12 12 7 12 16 15 16 12 12 100 12 12 12 12 12 1 12 1 12 1 7 12 100 1 1 1 12 12 1 12 12 1 1 12 12 1 12 12 12 12 1 12 12 12 12 12 12 12 12 12 12 12 16 15 16 12 12 12 15 16 12 12 12 12 1 12 12 12 12 1 12 12 12 12 12 12 12 16 15 16 12 100 12 1 1 1 12 12 12 1 12 1 1 1 1 1 12 1 12 12 12 1 12 12 1 1 12 1 12 12 7 12 12 12 12 12 1 12 12 1 1 12 100 12 1 12 1 12 12 12 1 1 12 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 10 10 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 10 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 10 1 1 1 1 1 1 10 1 1 1 1 1 1 10 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 12 12 100 12 12 12 1 1 100 1 1 1 100 1 1 +staticfield java/lang/Module ALL_UNNAMED_MODULE Ljava/lang/Module; java/lang/Module +staticfield java/lang/Module ALL_UNNAMED_MODULE_SET Ljava/util/Set; java/util/ImmutableCollections$Set12 +staticfield java/lang/Module EVERYONE_MODULE Ljava/lang/Module; java/lang/Module +staticfield java/lang/Module EVERYONE_SET Ljava/util/Set; java/util/ImmutableCollections$Set12 +staticfield java/lang/Module $assertionsDisabled Z 1 +instanceKlass com/google/common/reflect/Element +instanceKlass java/lang/reflect/Executable +instanceKlass java/lang/reflect/Field +ciInstanceKlass java/lang/reflect/AccessibleObject 1 1 405 10 9 10 10 10 10 100 10 10 9 7 10 11 7 100 10 7 100 10 10 7 10 10 7 10 100 10 10 10 10 10 10 10 10 10 10 8 100 10 10 8 10 10 8 8 8 8 8 8 100 10 10 9 10 10 10 18 10 10 10 11 100 100 8 10 10 10 8 10 8 10 10 100 8 10 11 10 10 10 10 10 9 100 10 10 9 10 8 10 8 10 9 100 10 7 10 10 7 9 7 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 12 100 12 12 12 7 12 100 12 12 12 12 1 12 12 1 1 12 1 1 12 12 1 12 12 1 12 1 7 12 12 12 12 12 12 12 12 1 1 12 1 12 12 1 1 1 1 1 1 1 12 12 12 12 12 7 12 1 15 16 15 16 12 12 12 1 1 1 12 12 1 12 1 12 1 1 12 12 12 12 12 12 12 12 12 12 100 12 1 100 12 1 12 12 1 1 1 1 7 12 1 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 10 10 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 12 12 1 1 100 1 1 100 1 1 +staticfield java/lang/reflect/AccessibleObject reflectionFactory Ljdk/internal/reflect/ReflectionFactory; jdk/internal/reflect/ReflectionFactory +ciInstanceKlass java/lang/reflect/Field 1 1 433 9 10 10 10 9 10 10 10 10 9 9 9 9 9 9 9 100 8 10 7 10 9 9 10 10 10 10 10 10 7 10 10 10 10 10 10 10 100 10 8 10 10 8 10 10 8 8 10 11 9 10 10 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 10 10 10 10 10 9 10 10 10 10 11 10 100 10 10 9 10 11 10 10 9 10 10 7 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 100 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 100 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 100 1 1 1 1 1 1 1 1 12 12 100 12 100 12 12 12 12 100 12 12 12 12 12 12 12 12 12 1 1 12 1 12 12 12 12 7 12 12 12 12 12 1 12 12 12 12 12 12 1 1 12 12 1 12 12 1 1 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 7 12 12 7 12 12 12 1 100 12 7 12 12 7 12 7 12 12 12 100 12 100 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 +ciInstanceKlass java/lang/reflect/Parameter 0 0 226 10 9 9 9 9 100 10 10 10 100 10 10 11 10 10 10 10 10 8 8 10 10 10 8 10 8 10 9 10 9 10 10 10 10 10 10 10 10 11 10 100 10 10 10 10 10 9 100 10 11 11 100 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 100 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 12 12 12 12 12 1 12 12 100 12 1 12 12 12 100 12 12 12 12 1 1 12 12 12 1 1 12 12 12 12 12 12 12 12 12 100 12 12 100 12 12 1 100 12 12 12 12 12 12 1 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +instanceKlass java/lang/reflect/Constructor +instanceKlass java/lang/reflect/Method +ciInstanceKlass java/lang/reflect/Executable 1 1 458 10 10 10 11 10 10 10 10 10 7 8 7 10 10 10 7 8 10 10 10 10 8 8 10 10 100 8 10 8 10 8 11 10 10 11 10 8 8 10 10 100 10 10 10 10 10 10 7 10 10 10 10 10 100 10 100 8 10 10 3 100 8 10 10 10 10 10 8 8 8 9 10 100 8 9 10 10 10 10 10 10 7 10 10 100 10 7 10 10 11 10 10 10 9 10 7 10 10 9 10 10 9 10 9 10 9 7 100 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 100 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 100 100 1 1 1 1 1 1 1 1 1 1 1 1 12 7 12 12 7 12 7 12 12 12 12 12 1 1 1 12 12 1 1 12 7 12 12 12 1 1 12 1 1 12 1 12 1 7 12 12 12 1 1 12 12 1 12 12 7 12 12 12 1 12 12 12 12 100 12 12 1 1 12 12 1 1 12 12 12 12 1 1 1 12 12 1 1 12 12 12 12 12 12 12 12 12 1 100 12 1 7 12 12 12 12 100 12 12 12 12 1 12 12 100 12 100 12 12 12 12 12 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +ciInstanceKlass java/lang/reflect/Method 1 1 441 9 10 10 9 10 10 10 10 9 9 9 9 9 9 9 9 9 9 9 100 8 10 7 10 9 8 10 10 10 10 10 10 10 7 10 10 10 7 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 7 8 10 100 8 10 10 10 10 10 10 10 11 9 10 10 10 10 11 10 7 10 10 10 10 9 10 10 10 10 10 11 10 7 100 100 10 10 10 100 10 8 10 10 10 10 10 8 10 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 100 7 7 1 100 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 7 12 7 12 12 12 12 7 12 12 12 12 12 12 12 12 12 12 12 12 12 1 1 12 1 12 12 1 7 12 7 12 12 12 12 12 12 1 12 12 7 12 12 7 12 12 12 12 12 7 12 12 12 12 12 12 12 1 1 1 1 12 12 12 12 12 12 12 7 12 12 12 12 12 12 12 1 12 12 12 12 12 7 12 12 7 12 7 12 7 12 7 12 7 12 1 1 1 12 12 12 1 1 12 12 12 12 1 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +ciInstanceKlass java/lang/reflect/Constructor 1 1 415 10 10 9 10 10 10 9 10 9 9 9 9 9 9 9 9 100 8 10 7 10 9 10 10 10 10 10 7 100 8 10 10 10 10 10 7 10 7 10 10 10 10 10 10 10 10 10 100 8 10 10 100 8 10 10 10 10 10 10 10 9 10 10 100 8 10 11 10 10 10 9 10 10 10 10 10 10 10 10 10 100 8 10 10 10 10 10 10 10 11 9 10 10 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 100 100 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 12 7 12 12 12 12 7 12 12 12 12 12 12 12 12 12 12 12 1 1 12 1 12 12 7 12 7 12 12 12 12 1 1 1 12 12 12 12 1 7 12 12 7 12 12 100 12 12 12 12 12 1 1 12 1 1 12 12 12 12 12 12 12 12 12 12 1 1 12 12 12 12 12 12 7 12 12 12 12 12 12 12 12 12 1 1 12 12 12 12 100 12 100 12 100 12 100 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 +instanceKlass jdk/internal/reflect/FieldAccessorImpl +instanceKlass jdk/internal/reflect/ConstructorAccessorImpl +instanceKlass jdk/internal/reflect/MethodAccessorImpl +ciInstanceKlass jdk/internal/reflect/MagicAccessorImpl 1 1 16 10 100 7 1 1 1 1 1 1 1 1 1 12 1 1 +instanceKlass jdk/internal/reflect/GeneratedMethodAccessor11 +instanceKlass jdk/internal/reflect/GeneratedMethodAccessor10 +instanceKlass jdk/internal/reflect/GeneratedMethodAccessor9 +instanceKlass jdk/internal/reflect/GeneratedMethodAccessor8 +instanceKlass jdk/internal/reflect/GeneratedMethodAccessor7 +instanceKlass jdk/internal/reflect/GeneratedMethodAccessor6 +instanceKlass jdk/internal/reflect/GeneratedMethodAccessor5 +instanceKlass jdk/internal/reflect/GeneratedMethodAccessor4 +instanceKlass jdk/internal/reflect/GeneratedMethodAccessor3 +instanceKlass jdk/internal/reflect/GeneratedMethodAccessor2 +instanceKlass jdk/internal/reflect/GeneratedMethodAccessor1 +instanceKlass jdk/internal/reflect/DelegatingMethodAccessorImpl +instanceKlass jdk/internal/reflect/NativeMethodAccessorImpl +ciInstanceKlass jdk/internal/reflect/MethodAccessorImpl 1 1 25 10 100 7 100 1 1 1 1 1 1 1 1 1 1 100 100 1 1 12 1 1 1 1 1 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor46 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor45 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor44 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor43 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor42 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor41 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor40 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor39 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor38 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor37 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor36 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor35 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor34 +instanceKlass jdk/internal/reflect/SerializationConstructorAccessorImpl +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor33 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor32 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor31 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor30 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor29 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor28 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor27 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor26 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor25 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor24 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor23 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor22 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor21 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor20 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor19 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor18 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor17 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor16 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor15 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor14 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor13 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor12 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor11 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor10 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor9 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor8 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor7 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor6 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor5 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor4 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor3 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor2 +instanceKlass jdk/internal/reflect/BootstrapConstructorAccessorImpl +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor1 +instanceKlass jdk/internal/reflect/DelegatingConstructorAccessorImpl +instanceKlass jdk/internal/reflect/NativeConstructorAccessorImpl +ciInstanceKlass jdk/internal/reflect/ConstructorAccessorImpl 1 1 27 10 100 7 100 1 1 1 1 1 1 1 1 1 1 100 100 100 1 1 12 1 1 1 1 1 1 +ciInstanceKlass jdk/internal/reflect/DelegatingClassLoader 1 1 18 10 100 7 1 1 1 1 1 1 1 1 1 1 1 12 1 1 +ciInstanceKlass jdk/internal/reflect/ConstantPool 1 1 138 10 9 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 7 7 8 10 100 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 1 1 7 12 1 1 1 1 1 1 1 +instanceKlass jdk/internal/reflect/UnsafeFieldAccessorImpl +ciInstanceKlass jdk/internal/reflect/FieldAccessorImpl 1 1 59 10 100 7 100 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 1 1 1 1 1 +instanceKlass jdk/internal/reflect/UnsafeObjectFieldAccessorImpl +instanceKlass jdk/internal/reflect/UnsafeQualifiedFieldAccessorImpl +instanceKlass jdk/internal/reflect/UnsafeStaticFieldAccessorImpl +ciInstanceKlass jdk/internal/reflect/UnsafeFieldAccessorImpl 1 1 254 10 9 10 10 9 10 9 10 10 9 10 10 10 10 100 10 10 10 8 10 10 100 8 10 8 10 8 10 100 10 10 8 10 8 10 8 10 8 10 8 10 8 10 8 10 8 10 8 10 10 8 8 8 8 8 8 10 8 8 8 10 10 7 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 7 12 12 7 12 12 12 12 12 12 12 7 12 12 1 12 12 1 12 1 1 12 1 12 1 12 1 12 1 12 1 100 12 1 100 12 1 100 12 1 100 12 1 100 12 1 100 12 1 100 12 1 100 12 12 1 1 1 1 1 1 12 1 1 1 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield jdk/internal/reflect/UnsafeFieldAccessorImpl unsafe Ljdk/internal/misc/Unsafe; jdk/internal/misc/Unsafe +instanceKlass jdk/internal/reflect/UnsafeStaticIntegerFieldAccessorImpl +instanceKlass jdk/internal/reflect/UnsafeQualifiedStaticFieldAccessorImpl +ciInstanceKlass jdk/internal/reflect/UnsafeStaticFieldAccessorImpl 1 1 43 10 9 10 9 7 7 8 10 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 7 12 12 1 1 7 12 1 1 1 1 1 1 1 1 1 +ciInstanceKlass jdk/internal/reflect/CallerSensitive 1 1 17 100 100 100 1 1 1 1 1 1 1 1 1 1 1 1 1 +instanceKlass java/lang/invoke/DelegatingMethodHandle +instanceKlass java/lang/invoke/BoundMethodHandle +instanceKlass java/lang/invoke/DirectMethodHandle +ciInstanceKlass java/lang/invoke/MethodHandle 1 1 489 9 10 10 7 7 10 9 10 10 10 10 10 10 11 10 10 10 9 10 100 100 10 8 10 10 8 10 10 10 10 10 10 10 10 10 10 7 10 10 10 8 10 8 10 10 10 10 8 10 8 10 8 10 9 100 10 9 9 8 10 10 10 10 10 10 10 10 10 10 10 8 10 8 10 10 10 10 10 9 8 10 10 8 10 10 10 10 10 100 8 10 10 9 10 7 10 10 9 10 10 8 9 9 9 10 10 10 10 7 10 8 10 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 7 12 1 1 12 12 12 12 12 7 12 12 12 100 12 12 12 12 12 12 1 1 1 12 12 1 12 12 7 12 12 12 12 12 12 12 7 12 1 12 12 12 1 7 12 1 12 12 12 12 1 12 1 12 1 100 12 12 1 100 12 100 1 12 12 12 12 12 12 12 12 12 12 12 1 12 1 12 12 12 12 12 12 1 12 12 1 12 12 7 12 12 1 1 12 12 12 1 100 12 12 12 12 12 1 12 12 12 7 12 12 12 12 1 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/lang/invoke/MethodHandle FORM_OFFSET J 20 +staticfield java/lang/invoke/MethodHandle $assertionsDisabled Z 1 +instanceKlass java/lang/invoke/DirectMethodHandle$Interface +instanceKlass java/lang/invoke/DirectMethodHandle$Constructor +instanceKlass java/lang/invoke/DirectMethodHandle$Special +instanceKlass java/lang/invoke/DirectMethodHandle$Accessor +ciInstanceKlass java/lang/invoke/DirectMethodHandle 1 1 922 7 7 100 7 7 10 10 100 10 10 10 10 10 10 7 7 10 10 10 10 10 10 9 100 10 9 10 10 10 10 10 10 7 10 10 10 8 10 7 10 7 10 10 10 10 10 10 100 10 10 7 10 10 10 10 8 10 10 10 10 10 9 7 10 10 10 100 10 8 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 8 9 8 9 9 8 9 9 8 9 9 8 10 10 7 9 7 10 100 10 10 10 10 7 10 10 10 7 10 10 10 10 10 9 10 9 9 10 10 7 7 7 9 10 10 10 10 9 10 100 10 100 10 10 8 9 9 10 9 10 9 9 10 10 10 10 10 10 10 9 10 10 10 10 10 9 10 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 8 9 9 10 100 10 9 10 7 9 10 10 10 10 10 8 8 8 8 10 9 10 7 10 8 9 10 8 8 8 9 8 8 8 8 8 8 7 8 10 10 8 8 10 10 10 10 7 7 1 1 1 1 1 1 1 100 1 1 1 1 7 1 1 1 1 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 1 3 1 1 3 1 3 1 1 1 1 1 1 1 1 1 1 1 1 1 1 3 1 3 1 1 1 1 3 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 12 12 1 12 12 12 12 12 12 1 1 12 12 12 12 12 12 12 1 12 12 12 12 12 12 12 1 12 12 12 1 12 1 12 1 12 12 12 12 12 1 12 12 1 12 12 12 12 12 12 12 12 12 7 12 1 12 7 12 12 1 1 12 12 12 12 12 12 12 12 12 12 12 12 7 12 12 12 12 12 1 12 1 12 12 1 12 12 1 12 12 1 12 12 1 12 1 12 1 12 12 12 12 1 12 12 12 12 7 12 12 12 12 12 12 12 7 12 12 1 1 1 12 12 12 12 12 12 12 1 12 1 12 12 1 12 12 12 12 100 12 12 12 12 12 12 12 12 12 7 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 1 12 12 12 1 12 7 12 1 12 12 12 12 12 1 1 1 1 12 12 12 1 100 12 12 12 12 1 1 12 12 1 12 12 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/lang/invoke/DirectMethodHandle IMPL_NAMES Ljava/lang/invoke/MemberName$Factory; java/lang/invoke/MemberName$Factory +staticfield java/lang/invoke/DirectMethodHandle FT_UNCHECKED_REF I 8 +staticfield java/lang/invoke/DirectMethodHandle ACCESSOR_FORMS [Ljava/lang/invoke/LambdaForm; 132 [Ljava/lang/invoke/LambdaForm; +staticfield java/lang/invoke/DirectMethodHandle ALL_WRAPPERS [Lsun/invoke/util/Wrapper; 10 [Lsun/invoke/util/Wrapper; +staticfield java/lang/invoke/DirectMethodHandle NFS [Ljava/lang/invoke/LambdaForm$NamedFunction; 12 [Ljava/lang/invoke/LambdaForm$NamedFunction; +staticfield java/lang/invoke/DirectMethodHandle OBJ_OBJ_TYPE Ljava/lang/invoke/MethodType; java/lang/invoke/MethodType +staticfield java/lang/invoke/DirectMethodHandle LONG_OBJ_TYPE Ljava/lang/invoke/MethodType; java/lang/invoke/MethodType +staticfield java/lang/invoke/DirectMethodHandle $assertionsDisabled Z 1 +instanceKlass java/lang/invoke/VarHandleLongs$FieldInstanceReadOnly +instanceKlass java/lang/invoke/VarHandleObjects$Array +instanceKlass java/lang/invoke/VarHandleObjects$FieldInstanceReadOnly +instanceKlass java/lang/invoke/VarHandleInts$FieldInstanceReadOnly +ciInstanceKlass java/lang/invoke/VarHandle 1 1 298 10 9 100 10 9 10 10 10 9 10 10 9 9 10 10 10 10 10 10 10 9 100 10 9 10 10 7 7 10 10 10 9 10 9 10 10 10 100 10 9 9 10 10 10 10 10 10 10 7 10 10 9 8 10 7 10 7 100 1 1 100 1 100 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 100 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 12 12 1 12 12 12 12 12 12 12 12 12 12 12 12 12 12 100 12 12 1 12 12 12 1 1 12 100 12 12 12 12 12 12 12 12 1 7 12 12 7 12 12 12 12 12 12 12 1 7 12 12 12 1 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/lang/invoke/VarHandle AIOOBE_SUPPLIER Ljava/util/function/BiFunction; jdk/internal/util/Preconditions$1 +staticfield java/lang/invoke/VarHandle VFORM_OFFSET J 12 +staticfield java/lang/invoke/VarHandle $assertionsDisabled Z 1 +ciInstanceKlass java/lang/invoke/MemberName 1 1 747 7 7 100 9 10 9 10 10 10 10 10 10 10 9 10 100 100 10 8 10 10 10 10 9 8 10 7 7 10 10 7 7 7 10 9 100 8 10 10 10 10 10 10 10 10 10 10 8 8 8 10 10 9 3 10 10 10 10 10 10 10 10 10 7 8 10 10 8 9 8 9 10 8 10 10 10 10 10 100 10 10 8 10 10 8 10 10 7 10 10 8 8 100 10 10 100 10 10 10 10 10 10 10 10 10 3 10 3 10 3 3 3 3 3 3 100 10 10 10 3 9 10 3 10 10 10 10 10 10 10 10 10 10 10 10 10 10 100 10 10 10 100 10 10 10 10 10 10 8 10 10 10 10 10 10 10 10 10 10 10 10 10 100 10 100 8 10 7 10 10 10 10 10 8 8 8 8 10 10 10 8 8 10 8 10 10 10 8 8 10 10 8 10 8 10 10 10 8 8 8 100 10 8 8 8 8 10 100 100 100 10 100 10 100 10 9 10 100 100 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 3 1 3 1 3 1 3 1 3 1 3 1 1 1 1 1 1 1 1 3 1 1 1 1 3 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 100 1 1 1 1 1 1 1 1 1 7 1 1 12 12 12 12 12 12 12 12 12 12 100 12 12 1 1 12 1 12 12 12 12 12 1 100 12 1 1 12 1 12 12 1 1 12 12 12 12 12 12 12 12 12 12 1 1 1 100 12 12 12 12 12 12 12 12 12 12 12 1 12 12 100 100 12 1 12 12 12 12 12 1 12 12 1 12 12 1 12 12 1 12 12 1 1 1 12 100 12 1 12 12 12 12 12 12 12 12 12 12 100 1 12 7 12 12 12 12 12 7 12 12 12 12 12 12 12 12 12 1 12 1 12 12 12 12 12 12 12 12 12 12 12 12 12 1 12 1 1 1 12 12 12 12 12 1 1 1 1 12 12 12 1 1 12 1 12 12 1 1 12 1 12 1 12 12 12 1 1 1 1 1 1 1 1 12 1 1 1 1 1 12 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/lang/invoke/MemberName $assertionsDisabled Z 1 +ciInstanceKlass java/lang/invoke/ResolvedMethodName 1 1 16 10 100 100 1 1 1 1 1 1 1 1 1 12 1 1 +ciInstanceKlass java/lang/invoke/MethodHandleNatives 1 1 660 100 10 9 10 100 10 10 10 10 8 8 8 8 8 8 8 8 8 8 7 10 7 10 10 7 10 10 8 10 8 10 8 10 9 8 10 100 10 100 100 8 7 7 10 10 7 9 10 10 10 7 10 10 10 10 10 9 8 10 8 10 8 8 8 100 10 8 10 10 10 100 8 10 7 8 10 8 8 8 8 8 10 10 10 10 10 7 10 100 100 10 10 8 8 10 10 10 8 10 8 8 10 10 100 10 7 9 10 10 10 9 10 9 9 10 10 10 7 7 10 10 10 10 10 8 10 10 10 10 10 10 100 8 10 9 10 10 100 10 10 100 100 10 10 100 100 10 100 10 10 10 10 10 10 10 10 10 10 10 10 8 100 10 10 10 10 10 10 7 10 10 10 10 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 1 12 12 12 1 1 1 1 1 1 1 1 1 1 1 12 1 12 12 1 12 1 12 1 12 1 12 100 12 1 100 12 1 12 1 1 1 1 1 12 1 7 12 12 12 12 1 12 7 12 12 12 12 12 1 12 1 12 1 1 1 1 12 1 12 12 100 12 1 100 12 1 1 12 1 1 1 1 1 12 12 12 12 12 1 12 1 1 12 12 1 1 12 12 1 100 12 1 1 12 12 1 12 1 12 7 12 12 12 12 12 12 12 12 12 1 1 12 12 12 7 12 12 1 12 12 12 12 7 12 12 1 1 12 12 12 1 12 12 1 1 1 1 1 12 12 12 12 12 12 12 12 12 1 1 12 12 12 12 12 12 1 12 12 12 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/lang/invoke/MethodHandleNatives $assertionsDisabled Z 1 +ciInstanceKlass java/lang/invoke/LambdaForm 1 1 1075 100 9 10 10 9 9 10 100 10 9 10 9 10 7 9 9 9 9 10 7 10 7 10 10 10 10 10 10 9 100 10 9 10 10 10 10 10 7 10 10 8 10 10 10 7 10 10 7 10 10 9 9 9 10 9 10 10 100 10 9 10 10 100 10 10 10 10 10 10 10 8 10 10 8 8 9 9 9 10 10 10 9 10 10 10 10 10 10 9 10 8 8 8 8 8 8 8 8 10 9 7 10 9 10 10 10 10 10 10 10 10 10 10 10 10 10 10 100 8 10 10 10 10 8 10 8 8 10 9 10 10 100 10 10 10 10 9 8 10 10 10 10 10 9 8 10 100 10 10 9 9 8 10 10 100 100 10 10 8 8 100 8 10 10 10 8 8 9 10 10 8 8 8 100 8 100 8 100 8 10 8 9 10 10 9 10 10 10 10 10 10 10 10 10 10 8 100 10 10 9 10 8 8 100 8 8 8 8 8 8 8 8 10 10 10 10 8 8 8 10 8 10 8 8 8 8 8 10 10 10 10 10 10 10 10 10 10 10 9 8 10 9 10 9 9 9 9 7 10 9 10 10 7 8 10 9 7 10 8 100 10 9 9 10 7 10 10 10 9 10 10 10 9 10 10 10 9 10 9 7 9 10 9 10 100 10 7 9 100 1 1 100 1 100 1 1 1 7 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 3 1 3 1 1 1 1 1 3 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 100 1 1 12 12 12 12 12 12 1 12 12 12 7 12 12 12 12 12 12 1 12 1 12 12 100 12 100 12 12 12 12 1 12 12 12 12 12 12 12 1 12 1 12 12 12 1 12 12 1 12 12 12 12 12 12 12 12 12 1 12 12 12 12 1 12 12 12 12 12 12 12 1 12 12 1 1 12 12 12 12 7 12 12 12 7 12 12 12 12 12 12 12 1 1 1 1 1 1 1 1 12 12 1 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 1 1 12 12 12 1 12 1 1 12 12 12 12 1 12 12 7 12 12 12 1 100 12 12 12 12 12 12 1 12 12 7 12 12 1 12 12 1 1 12 1 1 1 1 12 12 12 1 1 12 12 12 1 1 1 1 1 1 1 1 1 12 1 12 12 12 12 12 12 12 12 12 12 12 12 1 12 12 12 12 1 1 1 1 1 1 1 1 1 1 1 12 12 12 12 1 1 1 12 1 12 1 1 1 1 1 12 12 12 7 12 12 12 12 12 12 12 12 12 1 12 12 12 12 12 12 12 1 7 12 12 12 12 1 1 12 12 1 12 1 1 12 12 12 12 1 12 7 12 12 7 12 12 12 12 12 12 12 12 12 12 12 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/lang/invoke/LambdaForm COMPILE_THRESHOLD I 0 +staticfield java/lang/invoke/LambdaForm INTERNED_ARGUMENTS [[Ljava/lang/invoke/LambdaForm$Name; 5 [[Ljava/lang/invoke/LambdaForm$Name; +staticfield java/lang/invoke/LambdaForm IMPL_NAMES Ljava/lang/invoke/MemberName$Factory; java/lang/invoke/MemberName$Factory +staticfield java/lang/invoke/LambdaForm LF_identity [Ljava/lang/invoke/LambdaForm; 6 [Ljava/lang/invoke/LambdaForm; +staticfield java/lang/invoke/LambdaForm LF_zero [Ljava/lang/invoke/LambdaForm; 6 [Ljava/lang/invoke/LambdaForm; +staticfield java/lang/invoke/LambdaForm NF_identity [Ljava/lang/invoke/LambdaForm$NamedFunction; 6 [Ljava/lang/invoke/LambdaForm$NamedFunction; +staticfield java/lang/invoke/LambdaForm NF_zero [Ljava/lang/invoke/LambdaForm$NamedFunction; 6 [Ljava/lang/invoke/LambdaForm$NamedFunction; +staticfield java/lang/invoke/LambdaForm createFormsLock Ljava/lang/Object; java/lang/Object +staticfield java/lang/invoke/LambdaForm DEBUG_NAME_COUNTERS Ljava/util/HashMap; null +staticfield java/lang/invoke/LambdaForm DEBUG_NAMES Ljava/util/HashMap; null +staticfield java/lang/invoke/LambdaForm TRACE_INTERPRETER Z 0 +staticfield java/lang/invoke/LambdaForm $assertionsDisabled Z 1 +ciInstanceKlass java/lang/invoke/MethodType 1 1 674 7 10 9 9 9 10 9 8 10 10 9 9 10 100 10 8 10 10 10 100 8 10 100 10 10 10 10 11 9 11 7 7 10 10 9 10 10 10 10 10 10 9 7 10 7 10 10 10 10 10 10 10 10 10 8 8 10 9 100 10 10 10 10 10 10 10 10 10 8 10 10 10 10 10 10 10 10 10 9 10 10 10 10 9 7 10 10 10 10 10 10 10 10 100 8 8 8 10 10 10 10 11 11 10 9 10 10 10 10 10 10 10 10 10 10 10 10 9 7 10 10 10 10 10 10 10 8 10 11 9 10 10 10 10 10 9 9 10 9 10 10 100 10 7 10 7 7 9 100 1 1 100 1 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 3 1 3 1 3 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 100 100 1 100 100 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 100 1 1 1 1 1 1 1 100 1 12 12 12 12 7 12 7 12 1 100 12 12 7 7 12 1 1 12 12 12 1 1 12 1 12 12 12 12 12 12 1 7 12 12 12 12 12 12 7 12 12 12 12 1 12 1 12 12 7 12 12 12 12 12 12 12 1 1 12 12 1 12 12 12 12 100 12 12 12 1 12 7 12 12 12 12 12 12 12 12 12 12 12 12 12 1 12 7 12 12 7 12 12 12 1 1 1 1 12 12 12 12 12 100 12 12 12 12 12 12 12 12 12 12 12 12 12 12 1 12 12 12 12 12 12 12 1 7 12 12 12 12 12 100 12 12 12 12 12 100 12 12 100 12 12 12 1 1 1 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/lang/invoke/MethodType internTable Ljava/lang/invoke/MethodType$ConcurrentWeakInternSet; java/lang/invoke/MethodType$ConcurrentWeakInternSet +staticfield java/lang/invoke/MethodType NO_PTYPES [Ljava/lang/Class; 0 [Ljava/lang/Class; +staticfield java/lang/invoke/MethodType objectOnlyTypes [Ljava/lang/invoke/MethodType; 20 [Ljava/lang/invoke/MethodType; +staticfield java/lang/invoke/MethodType METHOD_HANDLE_ARRAY [Ljava/lang/Class; 1 [Ljava/lang/Class; +staticfield java/lang/invoke/MethodType serialPersistentFields [Ljava/io/ObjectStreamField; 0 [Ljava/io/ObjectStreamField; +staticfield java/lang/invoke/MethodType $assertionsDisabled Z 1 +ciInstanceKlass java/lang/BootstrapMethodError 0 0 45 10 10 10 10 10 100 100 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 100 1 1 12 12 12 12 12 1 1 1 1 1 1 1 1 +instanceKlass java/lang/invoke/VolatileCallSite +instanceKlass java/lang/invoke/MutableCallSite +instanceKlass java/lang/invoke/ConstantCallSite +ciInstanceKlass java/lang/invoke/CallSite 1 1 299 10 10 9 10 9 10 10 100 7 10 7 10 10 10 100 100 10 10 10 8 10 10 10 10 10 10 10 10 9 9 7 8 10 10 100 10 9 8 100 10 10 100 8 10 10 10 100 10 10 10 10 10 9 9 8 10 9 100 10 10 10 10 10 10 100 8 10 10 100 100 100 8 10 10 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 7 1 1 1 1 1 1 12 12 12 12 12 12 12 1 1 12 1 12 12 12 1 1 12 12 1 12 12 12 12 12 100 12 12 12 100 12 1 12 12 1 100 12 12 12 12 1 1 12 12 1 12 12 12 12 12 12 12 100 12 12 1 100 12 12 12 12 7 12 1 1 12 1 1 1 1 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/lang/invoke/CallSite $assertionsDisabled Z 1 +ciInstanceKlass java/lang/invoke/MethodHandleNatives$CallSiteContext 1 1 49 10 7 10 10 10 10 7 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 12 1 7 12 7 12 12 1 1 1 1 1 1 1 1 100 1 1 1 1 1 +ciInstanceKlass java/lang/invoke/ConstantCallSite 1 1 49 10 9 10 100 10 9 100 10 10 7 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 12 12 12 1 12 12 1 12 1 1 1 1 +ciInstanceKlass java/lang/invoke/MutableCallSite 0 0 67 10 10 9 10 10 10 9 10 10 100 10 100 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 12 12 12 12 12 12 12 12 100 12 1 12 1 1 1 1 1 1 1 1 1 1 1 +ciInstanceKlass java/lang/invoke/VolatileCallSite 0 0 41 10 10 10 10 10 10 100 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 12 12 12 1 1 1 1 1 1 1 +ciInstanceKlass java/lang/AssertionStatusDirectives 0 0 24 10 100 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 1 1 +instanceKlass java/lang/StringBuilder +instanceKlass java/lang/StringBuffer +ciInstanceKlass java/lang/AbstractStringBuilder 1 1 522 7 7 10 9 9 9 9 10 9 10 10 10 10 10 10 10 10 7 3 10 3 100 10 10 100 10 10 10 10 10 10 10 100 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 11 10 10 8 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 18 100 10 18 10 10 10 11 10 10 10 100 10 8 10 10 8 8 10 10 10 10 100 10 100 10 100 10 7 100 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 7 1 1 1 100 1 1 1 1 1 1 1 1 1 12 12 12 12 12 7 12 12 12 7 12 12 12 12 12 7 12 1 12 1 12 1 12 12 12 12 12 12 1 12 100 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 1 12 12 12 12 12 12 7 12 12 12 7 12 12 12 12 12 12 12 12 12 7 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 1 15 16 15 16 12 1 100 12 15 12 12 12 12 12 12 1 1 12 12 1 1 12 12 12 1 1 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 10 1 10 1 1 1 1 1 10 1 1 1 1 1 1 1 1 1 1 100 12 12 12 1 1 100 1 1 100 1 1 +staticfield java/lang/AbstractStringBuilder EMPTYVALUE [B 0 +ciInstanceKlass java/lang/StringBuffer 1 1 471 10 10 10 11 10 10 10 9 10 10 10 9 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 9 10 10 100 10 10 10 10 10 8 10 8 10 8 10 10 10 10 7 10 100 8 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 7 10 7 10 9 9 9 7 100 100 100 1 1 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 100 1 1 1 100 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 7 12 100 1 12 100 12 12 1 12 1 12 1 12 12 100 12 12 12 1 1 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 1 12 1 12 7 12 7 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/lang/StringBuffer serialPersistentFields [Ljava/io/ObjectStreamField; 3 [Ljava/io/ObjectStreamField; +ciInstanceKlass java/lang/StringBuilder 1 1 409 10 10 10 11 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 9 9 10 10 10 10 10 10 10 10 10 10 10 100 100 8 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 7 10 7 100 100 100 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 100 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 7 12 100 100 12 12 12 12 12 100 12 12 12 1 1 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 1 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +ciInstanceKlass jdk/internal/misc/Unsafe 1 1 1196 10 9 9 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 100 10 10 10 5 0 10 10 10 10 10 10 10 10 10 100 10 10 10 10 10 10 10 10 10 10 10 10 10 10 5 0 5 0 5 0 10 10 10 100 10 10 10 10 10 10 10 10 10 100 10 10 10 10 8 10 8 8 10 9 9 9 9 9 9 9 9 10 10 10 10 5 0 5 0 9 10 10 10 10 10 8 3 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 100 10 100 10 9 5 0 10 5 0 10 5 0 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 5 0 5 0 5 0 10 10 10 10 10 8 100 11 8 11 10 10 7 10 7 10 9 7 9 7 9 7 9 7 9 7 9 7 9 7 9 7 9 10 9 9 9 9 9 9 9 9 9 10 10 10 7 1 1 1 1 1 3 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 12 12 12 12 7 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 1 12 12 12 12 12 12 12 12 12 12 12 1 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 1 12 12 12 12 12 12 12 12 1 12 12 12 1 12 1 1 12 7 12 100 7 100 100 7 100 12 12 12 12 12 12 12 12 12 12 1 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 1 1 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 100 12 1 1 12 1 12 12 12 1 1 12 12 12 1 12 1 12 1 12 1 12 1 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield jdk/internal/misc/Unsafe theUnsafe Ljdk/internal/misc/Unsafe; jdk/internal/misc/Unsafe +staticfield jdk/internal/misc/Unsafe ARRAY_BOOLEAN_BASE_OFFSET I 16 +staticfield jdk/internal/misc/Unsafe ARRAY_BYTE_BASE_OFFSET I 16 +staticfield jdk/internal/misc/Unsafe ARRAY_SHORT_BASE_OFFSET I 16 +staticfield jdk/internal/misc/Unsafe ARRAY_CHAR_BASE_OFFSET I 16 +staticfield jdk/internal/misc/Unsafe ARRAY_INT_BASE_OFFSET I 16 +staticfield jdk/internal/misc/Unsafe ARRAY_LONG_BASE_OFFSET I 16 +staticfield jdk/internal/misc/Unsafe ARRAY_FLOAT_BASE_OFFSET I 16 +staticfield jdk/internal/misc/Unsafe ARRAY_DOUBLE_BASE_OFFSET I 16 +staticfield jdk/internal/misc/Unsafe ARRAY_OBJECT_BASE_OFFSET I 16 +staticfield jdk/internal/misc/Unsafe ARRAY_BOOLEAN_INDEX_SCALE I 1 +staticfield jdk/internal/misc/Unsafe ARRAY_BYTE_INDEX_SCALE I 1 +staticfield jdk/internal/misc/Unsafe ARRAY_SHORT_INDEX_SCALE I 2 +staticfield jdk/internal/misc/Unsafe ARRAY_CHAR_INDEX_SCALE I 2 +staticfield jdk/internal/misc/Unsafe ARRAY_INT_INDEX_SCALE I 4 +staticfield jdk/internal/misc/Unsafe ARRAY_LONG_INDEX_SCALE I 8 +staticfield jdk/internal/misc/Unsafe ARRAY_FLOAT_INDEX_SCALE I 4 +staticfield jdk/internal/misc/Unsafe ARRAY_DOUBLE_INDEX_SCALE I 8 +staticfield jdk/internal/misc/Unsafe ARRAY_OBJECT_INDEX_SCALE I 4 +staticfield jdk/internal/misc/Unsafe ADDRESS_SIZE I 8 +staticfield jdk/internal/misc/Unsafe BE Z 0 +staticfield jdk/internal/misc/Unsafe unalignedAccess Z 1 +ciInstanceKlass jdk/internal/module/Modules 1 1 483 10 9 11 11 11 11 11 11 11 11 10 10 18 10 100 10 10 10 10 11 10 10 10 10 9 10 10 10 100 100 11 10 11 10 10 10 10 10 11 18 11 10 11 100 11 11 11 10 10 18 11 18 11 10 18 18 10 9 11 100 10 11 11 7 11 10 100 10 10 10 11 10 100 10 18 10 100 8 10 10 18 11 11 10 10 10 18 10 10 7 10 10 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 100 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 100 100 100 100 100 100 100 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 12 12 7 12 12 12 12 12 12 12 12 12 100 12 1 15 16 15 16 12 100 12 1 100 12 100 12 12 12 12 12 12 12 12 12 100 12 1 1 12 100 12 12 12 12 100 12 12 12 12 16 15 16 12 12 100 12 100 12 1 12 12 12 12 100 12 16 15 16 12 12 16 15 16 12 12 12 15 16 15 16 12 12 12 1 12 12 1 12 1 12 12 12 12 12 1 15 16 12 12 1 1 12 12 15 16 12 12 12 15 12 1 12 7 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 10 1 10 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 10 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 10 1 1 1 1 1 1 10 1 1 1 1 1 1 10 1 10 1 1 1 1 1 1 1 1 1 1 1 1 1 10 1 1 1 1 1 10 1 1 10 1 1 1 1 1 100 12 12 12 12 12 12 12 12 12 1 1 100 1 1 1 1 1 100 1 1 +staticfield jdk/internal/module/Modules JLA Ljdk/internal/access/JavaLangAccess; java/lang/System$2 +staticfield jdk/internal/module/Modules $assertionsDisabled Z 1 +instanceKlass com/sun/org/apache/xerces/internal/impl/XMLEntityManager$RewindableInputStream +instanceKlass org/apache/tools/zip/ZipFile$BoundedInputStream +instanceKlass org/apache/tools/ant/util/FileUtils$1 +instanceKlass org/apache/tools/ant/DemuxInputStream +instanceKlass sun/nio/ch/ChannelInputStream +instanceKlass org/apache/commons/io/input/ClosedInputStream +instanceKlass org/apache/tools/ant/DemuxInputStream +instanceKlass org/apache/commons/compress/archivers/ArchiveInputStream +instanceKlass jdk/nio/zipfs/ZipFileSystem$EntryInputStream +instanceKlass org/gradle/internal/io/StreamByteBuffer$StreamByteBufferInputStream +instanceKlass com/google/common/io/BaseEncoding$StandardBaseEncoding$2 +instanceKlass java/io/ObjectInputStream +instanceKlass org/apache/tools/ant/util/FileUtils$1 +instanceKlass org/gradle/util/internal/BulkReadInputStream +instanceKlass java/io/PipedInputStream +instanceKlass org/gradle/internal/remote/internal/inet/SocketConnection$SocketInputStream +instanceKlass org/gradle/internal/io/RandomAccessFileInputStream +instanceKlass com/esotericsoftware/kryo/io/Input +instanceKlass org/gradle/internal/serialize/kryo/KryoBackedDecoder$1 +instanceKlass org/gradle/internal/serialize/AbstractDecoder$DecoderStream +instanceKlass org/gradle/internal/stream/EncodedStream$EncodedInput +instanceKlass java/util/zip/ZipFile$ZipFileInputStream +instanceKlass java/io/FilterInputStream +instanceKlass java/io/FileInputStream +instanceKlass java/io/ByteArrayInputStream +ciInstanceKlass java/io/InputStream 1 1 170 100 10 100 10 10 10 10 7 3 10 100 8 10 7 10 3 100 8 10 7 10 11 10 11 11 11 7 10 5 0 10 8 10 8 10 10 7 100 1 1 1 1 3 1 3 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 1 12 7 12 12 1 12 1 1 12 1 7 12 1 1 1 12 100 12 12 12 12 7 12 12 1 12 100 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +ciInstanceKlass java/io/ByteArrayInputStream 1 1 96 10 9 9 9 9 10 10 10 10 10 10 7 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 12 12 7 12 7 12 7 12 7 12 12 100 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +ciInstanceKlass java/net/URL 1 1 744 10 10 10 9 9 10 10 10 9 10 8 10 7 10 10 8 10 9 7 8 10 10 8 9 10 9 10 10 9 9 8 9 10 8 9 10 10 8 10 7 10 10 10 10 10 8 10 10 8 9 8 10 10 100 10 10 10 100 8 10 10 8 10 10 10 10 10 10 8 10 7 10 10 10 9 10 9 10 10 100 100 10 10 10 10 10 10 7 10 10 10 100 10 10 8 9 10 10 9 10 100 10 10 10 10 10 10 10 10 10 10 10 9 9 100 8 10 10 9 10 8 10 8 10 10 8 8 10 100 10 10 10 7 7 10 9 10 8 10 7 10 10 8 9 10 10 10 10 10 11 10 10 9 10 10 10 8 10 7 100 10 8 8 10 8 8 8 100 10 9 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 100 8 10 10 10 10 10 8 7 10 7 10 7 10 7 7 10 9 9 7 10 10 100 1 1 1 1 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 100 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 12 12 100 12 12 12 12 12 1 12 1 12 1 12 12 1 1 12 12 1 12 12 12 12 12 12 12 1 12 12 1 12 12 7 12 1 12 1 12 12 12 12 12 1 12 12 1 12 1 12 12 1 12 12 12 1 1 12 1 12 12 12 12 12 12 1 12 1 7 12 12 100 12 12 12 12 100 12 1 1 12 12 12 12 12 12 1 12 1 12 12 1 12 100 12 12 100 12 12 1 12 12 12 12 12 12 12 7 12 12 12 12 12 1 1 12 12 12 1 7 12 1 12 12 1 1 12 1 100 12 12 12 1 1 12 12 1 12 1 7 12 100 12 12 12 12 12 7 12 12 12 12 12 12 100 12 12 12 1 1 12 1 12 12 12 12 12 12 12 12 12 12 12 12 12 12 1 1 12 12 12 1 1 1 1 1 1 12 7 12 12 1 7 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/net/URL defaultFactory Ljava/net/URLStreamHandlerFactory; java/net/URL$DefaultFactory +staticfield java/net/URL streamHandlerLock Ljava/lang/Object; java/lang/Object +staticfield java/net/URL serialPersistentFields [Ljava/io/ObjectStreamField; 7 [Ljava/io/ObjectStreamField; +ciInstanceKlass java/util/jar/Manifest 1 1 301 10 7 10 9 7 10 9 9 10 10 10 10 10 11 11 10 10 100 100 10 8 10 10 10 10 11 100 10 10 11 11 11 11 100 100 8 10 11 7 9 10 10 10 10 8 10 10 11 10 10 10 8 10 7 10 10 10 100 8 10 10 8 10 10 10 10 11 10 10 10 7 10 11 10 11 10 7 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 1 12 1 12 12 12 12 12 12 12 7 12 12 100 12 1 1 1 12 12 12 12 1 12 12 12 100 12 12 12 1 1 1 12 1 7 12 12 12 12 12 1 12 12 12 12 12 1 12 1 12 12 12 1 1 12 1 12 100 12 12 12 12 12 7 12 12 1 12 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +ciInstanceKlass jdk/internal/loader/ClassLoaders 1 1 143 10 9 9 9 7 11 100 11 11 10 10 100 100 10 9 8 10 7 10 7 10 10 7 10 8 10 8 8 7 10 7 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 12 1 100 12 1 12 12 100 12 100 12 1 1 7 12 12 1 7 12 1 12 1 12 12 1 12 1 7 12 1 1 1 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield jdk/internal/loader/ClassLoaders JLA Ljdk/internal/access/JavaLangAccess; java/lang/System$2 +staticfield jdk/internal/loader/ClassLoaders BOOT_LOADER Ljdk/internal/loader/ClassLoaders$BootClassLoader; jdk/internal/loader/ClassLoaders$BootClassLoader +staticfield jdk/internal/loader/ClassLoaders PLATFORM_LOADER Ljdk/internal/loader/ClassLoaders$PlatformClassLoader; jdk/internal/loader/ClassLoaders$PlatformClassLoader +staticfield jdk/internal/loader/ClassLoaders APP_LOADER Ljdk/internal/loader/ClassLoaders$AppClassLoader; jdk/internal/loader/ClassLoaders$AppClassLoader +instanceKlass jdk/internal/loader/ClassLoaders$BootClassLoader +instanceKlass jdk/internal/loader/ClassLoaders$PlatformClassLoader +instanceKlass jdk/internal/loader/ClassLoaders$AppClassLoader +ciInstanceKlass jdk/internal/loader/BuiltinClassLoader 1 1 717 10 10 9 9 7 10 9 9 10 10 11 100 100 10 10 8 10 10 7 10 10 11 11 11 7 9 8 8 10 10 9 11 7 10 10 10 10 10 10 10 11 10 7 10 10 10 100 8 10 10 8 10 10 11 11 7 7 10 11 11 10 7 10 10 7 7 10 7 7 10 10 100 10 11 100 100 10 10 100 100 10 10 18 10 10 18 100 10 7 10 10 10 10 10 9 100 10 10 10 10 10 10 10 10 10 10 18 7 10 10 10 10 100 10 7 10 10 10 11 7 10 7 100 10 10 11 10 10 10 10 10 10 10 10 8 10 10 10 100 8 8 10 10 8 8 10 11 9 10 9 9 9 9 9 9 10 8 10 7 10 10 7 7 10 11 10 10 10 100 10 10 10 7 10 10 8 10 7 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 7 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 100 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 7 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 7 12 12 12 12 1 12 12 12 12 12 12 1 1 12 1 12 12 1 12 12 7 12 12 12 1 12 1 1 12 7 12 12 12 1 12 12 12 7 12 12 12 12 12 7 12 1 7 12 12 1 1 12 1 12 12 12 12 1 1 12 12 1 12 12 1 1 12 1 1 12 7 12 1 12 12 1 1 12 12 1 1 12 12 1 15 16 15 16 12 12 12 15 16 1 7 12 1 12 12 12 12 12 1 12 12 12 12 12 12 12 12 12 15 16 12 1 12 12 12 12 1 12 100 1 1 12 12 12 12 1 12 1 12 12 12 12 12 12 12 12 12 12 12 1 12 12 12 1 1 1 12 1 1 7 12 7 12 7 12 12 12 12 12 12 12 12 12 1 12 1 12 12 1 1 12 12 12 12 1 12 12 1 12 12 1 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 10 10 1 1 1 1 10 1 1 1 1 1 1 1 1 1 1 1 1 1 10 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 12 12 12 12 1 1 100 1 1 100 1 1 +staticfield jdk/internal/loader/BuiltinClassLoader packageToModule Ljava/util/Map; java/util/concurrent/ConcurrentHashMap +staticfield jdk/internal/loader/BuiltinClassLoader $assertionsDisabled Z 1 +ciInstanceKlass jdk/internal/loader/ClassLoaders$AppClassLoader 1 1 134 8 10 9 10 10 10 10 10 10 7 8 10 10 10 9 11 10 10 100 10 7 7 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 12 12 7 12 100 12 12 12 12 12 1 1 12 7 12 100 12 12 100 12 12 7 12 1 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +ciInstanceKlass jdk/internal/loader/ClassLoaders$PlatformClassLoader 1 1 57 8 10 9 11 10 100 10 100 7 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 12 12 100 12 7 12 1 12 1 1 1 1 1 1 1 1 1 1 1 1 +ciInstanceKlass java/security/CodeSource 1 1 402 10 9 9 9 9 10 9 10 100 10 100 10 7 10 10 10 100 10 10 10 10 10 100 10 10 10 10 10 10 10 10 10 10 10 10 10 8 10 10 10 10 8 10 10 100 10 10 8 10 10 10 8 8 9 100 8 10 10 8 10 8 8 8 10 10 10 10 10 10 100 100 10 10 10 10 10 100 10 10 8 10 10 10 100 10 100 100 8 8 10 10 10 100 10 10 11 10 10 11 10 10 8 100 10 10 100 10 11 11 7 100 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 100 100 1 1 1 1 1 1 1 1 1 12 12 12 12 12 7 12 12 100 12 100 12 1 12 12 100 1 12 100 12 12 12 1 12 100 100 12 100 12 12 12 12 12 12 1 12 12 12 12 1 12 1 12 1 12 12 12 1 1 12 1 1 12 12 1 12 1 1 1 12 12 12 12 12 12 1 1 12 12 12 12 12 1 12 1 12 12 12 1 12 1 1 1 1 12 100 12 1 12 12 12 12 12 100 1 1 12 12 1 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +ciInstanceKlass java/lang/StackTraceElement 1 0 224 10 10 9 9 9 9 8 10 100 9 8 9 9 9 8 10 10 100 10 10 8 10 10 8 8 8 10 8 8 10 8 8 100 10 10 10 10 9 10 10 100 10 10 10 10 10 10 10 10 10 100 100 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 3 1 3 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 100 100 100 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 12 12 12 12 12 12 1 100 12 1 12 1 12 12 12 1 12 12 1 12 1 12 12 1 1 1 12 1 1 12 1 1 1 12 12 12 12 12 12 12 1 12 100 12 100 12 12 12 12 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +instanceKlass java/nio/IntBuffer +instanceKlass java/nio/LongBuffer +instanceKlass java/nio/CharBuffer +instanceKlass java/nio/ByteBuffer +ciInstanceKlass java/nio/Buffer 1 1 195 100 10 9 9 10 9 10 10 100 100 10 8 10 10 8 8 10 10 8 9 100 8 10 8 8 9 10 8 8 8 10 8 8 8 100 10 100 10 100 10 100 10 7 10 10 9 7 10 10 7 1 1 1 1 1 1 3 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 12 12 12 12 1 1 1 12 12 1 1 12 12 1 12 1 1 12 1 1 12 12 1 1 1 12 1 1 1 1 1 1 1 1 7 12 7 12 12 1 7 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/nio/Buffer UNSAFE Ljdk/internal/misc/Unsafe; jdk/internal/misc/Unsafe +staticfield java/nio/Buffer $assertionsDisabled Z 1 +ciInstanceKlass java/lang/StackWalker 0 0 235 9 10 100 10 10 11 10 10 100 10 100 8 10 10 10 10 9 9 9 9 10 9 10 11 100 8 10 10 9 10 10 10 18 100 8 10 10 10 9 11 10 100 100 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 100 12 1 100 12 12 100 12 12 12 1 12 1 1 12 12 12 12 12 12 12 12 12 12 100 12 12 1 1 12 12 12 100 12 100 12 1 15 16 15 16 12 1 1 12 100 12 12 100 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 10 10 1 1 1 1 1 1 1 1 1 1 1 1 100 12 12 1 1 100 1 1 100 1 1 +ciInstanceKlass java/lang/StackStreamFactory$AbstractStackWalker 1 0 306 100 100 3 10 10 10 9 10 9 9 9 9 9 10 10 9 10 10 9 9 100 10 8 10 10 8 10 10 100 8 10 8 10 9 10 9 8 5 0 8 8 9 10 10 10 9 10 10 10 10 10 10 8 10 10 10 10 8 100 10 10 10 10 10 10 9 8 10 10 10 10 10 10 10 10 10 10 8 100 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 100 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 100 12 12 12 12 12 12 12 100 12 100 12 12 12 12 12 12 100 12 1 1 12 12 1 12 100 12 1 1 12 1 12 100 12 12 12 1 1 1 12 12 12 12 12 12 12 12 12 12 12 1 12 12 12 12 1 1 12 12 12 12 12 100 12 12 1 12 12 12 12 12 12 12 12 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +instanceKlass java/lang/LiveStackFrameInfo +ciInstanceKlass java/lang/StackFrameInfo 0 0 132 10 9 9 9 11 9 11 10 10 10 11 11 11 10 9 10 10 10 11 10 9 10 100 8 10 10 100 100 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 100 1 1 1 1 1 12 100 12 12 100 12 12 12 12 100 12 12 12 12 12 12 12 12 12 12 12 12 12 12 1 1 12 100 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +ciInstanceKlass java/lang/LiveStackFrameInfo 0 0 97 10 9 9 9 9 9 100 10 10 8 10 100 8 8 8 10 100 10 100 10 100 100 100 1 1 1 1 1 1 1 1 3 1 3 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 12 12 12 12 12 12 1 12 12 1 12 1 1 1 1 1 12 1 12 1 1 1 1 1 1 1 1 1 +instanceKlass java/util/concurrent/locks/AbstractQueuedSynchronizer +ciInstanceKlass java/util/concurrent/locks/AbstractOwnableSynchronizer 1 1 32 10 9 7 7 100 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 1 1 1 +ciInstanceKlass java/lang/Boolean 1 1 128 10 9 10 10 8 10 9 9 8 10 7 10 10 100 100 10 10 8 10 9 7 100 100 1 1 1 1 1 1 1 1 1 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 12 1 12 12 12 1 12 1 12 7 12 1 1 12 12 1 7 12 12 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/lang/Boolean TRUE Ljava/lang/Boolean; java/lang/Boolean +staticfield java/lang/Boolean FALSE Ljava/lang/Boolean; java/lang/Boolean +staticfield java/lang/Boolean TYPE Ljava/lang/Class; java/lang/Class +ciInstanceKlass java/lang/Character 1 1 551 7 100 10 9 9 10 10 10 10 10 10 3 3 3 3 3 10 10 3 11 11 10 10 100 10 10 3 10 10 10 100 8 7 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 5 0 10 10 10 10 10 10 10 10 10 10 9 100 10 10 10 3 10 10 10 100 10 10 10 10 8 10 9 10 10 10 10 10 10 10 10 10 100 8 10 10 8 10 9 100 100 7 1 1 100 1 100 1 100 1 1 1 1 3 1 3 1 1 3 1 3 1 1 1 1 1 1 1 3 1 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 3 1 1 1 1 1 1 1 3 1 1 3 1 1 1 1 1 3 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 12 12 12 12 12 12 12 12 7 12 12 12 12 1 12 12 12 12 1 1 1 100 12 12 12 12 12 12 12 12 12 7 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 1 12 12 100 12 12 12 1 12 12 12 1 12 100 12 12 12 12 12 12 12 1 1 12 7 12 1 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/lang/Character TYPE Ljava/lang/Class; java/lang/Class +staticfield java/lang/Character $assertionsDisabled Z 1 +instanceKlass com/google/common/cache/Striped64 +instanceKlass java/math/BigDecimal +instanceKlass java/util/concurrent/atomic/Striped64 +instanceKlass java/math/BigInteger +instanceKlass java/util/concurrent/atomic/AtomicLong +instanceKlass java/util/concurrent/atomic/AtomicInteger +instanceKlass java/lang/Long +instanceKlass java/lang/Integer +instanceKlass java/lang/Short +instanceKlass java/lang/Byte +instanceKlass java/lang/Double +instanceKlass java/lang/Float +ciInstanceKlass java/lang/Number 1 1 37 10 10 100 7 100 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 1 1 1 +ciInstanceKlass java/lang/Float 1 1 192 7 100 10 10 4 100 10 10 8 8 10 10 10 10 4 4 4 10 9 10 10 10 10 10 10 3 10 10 10 10 8 10 9 7 100 1 1 1 1 1 4 1 1 1 4 1 1 3 1 3 1 3 1 3 1 1 1 1 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 12 100 12 1 12 12 1 1 100 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 1 7 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/lang/Float TYPE Ljava/lang/Class; java/lang/Class +ciInstanceKlass java/lang/Double 1 1 254 7 100 10 10 10 100 10 10 6 0 8 10 8 10 8 6 0 10 100 5 0 5 0 8 8 10 10 8 10 8 8 8 10 10 10 10 10 10 10 10 6 0 6 0 6 0 10 9 10 10 10 10 5 0 10 10 10 10 8 10 9 7 100 1 1 1 1 1 6 0 1 1 1 6 0 1 1 3 1 3 1 3 1 3 1 1 1 1 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 12 12 12 1 12 100 12 1 12 1 12 1 12 1 1 1 100 12 12 1 12 1 1 1 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 1 7 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/lang/Double TYPE Ljava/lang/Class; java/lang/Class +ciInstanceKlass java/lang/Byte 1 1 178 7 10 9 10 100 100 10 8 10 8 10 10 10 10 10 10 10 10 8 8 10 9 10 10 10 10 10 5 0 10 8 10 9 7 100 7 1 1 1 1 1 3 1 3 1 1 1 1 1 1 1 3 1 3 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 12 12 12 1 1 12 1 12 1 12 12 12 12 12 12 12 12 1 1 12 12 12 12 12 12 12 1 7 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/lang/Byte TYPE Ljava/lang/Class; java/lang/Class +ciInstanceKlass java/lang/Short 1 1 186 7 100 10 10 100 100 10 8 10 8 10 10 10 10 10 10 9 10 10 10 8 8 10 9 10 10 10 10 10 3 3 5 0 10 8 10 9 7 100 100 1 1 1 1 1 3 1 3 1 1 1 1 1 1 1 3 1 3 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 12 12 1 1 12 1 12 1 12 12 12 12 12 12 12 12 12 12 1 1 12 12 12 12 12 12 12 1 7 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/lang/Short TYPE Ljava/lang/Class; java/lang/Class +ciInstanceKlass java/lang/Integer 1 1 417 7 100 7 7 10 9 9 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 9 9 7 8 10 100 10 8 10 10 8 10 8 10 3 10 3 10 10 10 7 11 100 10 11 10 8 10 8 100 10 10 5 0 8 10 10 10 10 7 9 9 10 10 9 10 10 10 10 100 100 10 10 8 8 10 8 8 8 8 8 8 10 10 10 5 0 3 3 3 3 10 3 10 10 8 10 9 3 3 3 3 3 3 9 7 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 3 1 3 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 100 12 12 100 12 12 100 12 12 12 7 12 12 12 12 12 12 12 12 12 1 1 12 1 12 1 12 12 1 12 1 12 12 12 12 7 12 1 1 12 1 12 1 1 12 12 1 12 12 12 12 1 12 12 12 12 12 12 12 7 12 1 1 12 12 1 1 12 1 1 1 1 1 1 12 12 12 12 12 12 1 7 12 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/lang/Integer TYPE Ljava/lang/Class; java/lang/Class +staticfield java/lang/Integer digits [C 36 +staticfield java/lang/Integer DigitTens [B 100 +staticfield java/lang/Integer DigitOnes [B 100 +staticfield java/lang/Integer sizeTable [I 10 +ciInstanceKlass java/lang/Long 1 1 482 7 100 7 7 10 9 9 10 10 10 10 10 10 10 10 5 0 5 0 7 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 7 5 0 5 0 9 9 5 0 100 8 10 8 10 8 8 10 5 0 10 5 0 10 10 10 100 11 100 10 11 10 8 10 8 100 10 10 8 8 11 10 10 10 5 0 5 0 9 10 10 8 8 10 8 8 8 8 8 8 10 10 10 10 9 10 10 10 100 100 10 10 10 10 10 10 10 5 0 5 0 5 0 10 5 0 5 0 10 10 10 8 10 9 7 100 7 1 1 1 1 1 1 5 0 1 1 1 1 1 1 1 3 1 3 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 7 12 12 100 12 12 12 12 12 1 12 12 12 12 12 12 100 12 12 12 12 12 12 100 12 12 12 12 12 12 12 1 12 12 1 1 12 1 12 1 1 12 12 12 12 100 12 1 1 12 1 12 1 1 12 12 1 1 12 12 12 12 12 12 12 1 1 12 1 1 1 1 1 1 12 12 12 12 12 12 7 12 1 1 12 12 12 12 12 12 12 12 12 12 1 7 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/lang/Long TYPE Ljava/lang/Class; java/lang/Class +instanceKlass kotlin/KotlinNullPointerException +ciInstanceKlass java/lang/NullPointerException 1 1 26 10 10 100 100 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 12 12 1 1 +ciInstanceKlass java/lang/ArithmeticException 1 1 26 10 10 100 100 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 12 12 1 1 +ciInstanceKlass java/util/Objects 1 1 140 10 100 8 10 10 10 10 10 10 10 11 100 10 10 8 10 8 100 11 8 100 10 10 10 7 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 1 1 12 12 7 12 12 12 12 12 100 12 1 12 12 1 12 1 1 7 12 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +instanceKlass com/google/common/collect/Maps$IteratorBasedAbstractMap +instanceKlass com/google/common/collect/Maps$ViewCachingAbstractMap +instanceKlass java/util/TreeMap$NavigableSubMap +instanceKlass java/util/Collections$SingletonMap +instanceKlass com/google/common/collect/MapMakerInternalMap +instanceKlass com/google/common/cache/LocalCache +instanceKlass java/util/concurrent/ConcurrentSkipListMap +instanceKlass java/util/EnumMap +instanceKlass java/util/TreeMap +instanceKlass java/util/IdentityHashMap +instanceKlass java/util/WeakHashMap +instanceKlass java/util/ImmutableCollections$AbstractImmutableMap +instanceKlass java/util/Collections$EmptyMap +instanceKlass sun/util/PreHashedMap +instanceKlass java/util/concurrent/ConcurrentHashMap +instanceKlass java/util/HashMap +ciInstanceKlass java/util/AbstractMap 1 1 192 10 10 11 10 11 11 11 7 11 10 11 100 10 11 11 10 11 9 7 10 9 7 10 7 11 11 11 100 100 11 8 100 10 10 8 10 10 10 7 7 100 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 100 100 12 12 12 12 12 12 1 12 12 12 1 12 12 12 12 1 12 12 1 1 12 12 1 1 12 1 1 12 1 12 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +instanceKlass org/antlr/v4/runtime/atn/Transition$1 +instanceKlass org/apache/commons/collections/FastHashMap +instanceKlass org/apache/commons/beanutils/WeakFastHashMap +instanceKlass org/gradle/internal/logging/LogLevelMapping$1 +instanceKlass groovy/lang/SpreadMap +instanceKlass com/sun/tools/javac/comp/CompileStates +instanceKlass groovy/lang/SpreadMap +instanceKlass sun/nio/ch/WindowsSelectorImpl$FdMap +instanceKlass java/lang/ProcessEnvironment +instanceKlass java/util/LinkedHashMap +ciInstanceKlass java/util/HashMap 1 1 590 10 7 10 100 10 100 11 11 11 10 7 3 10 100 100 10 8 10 10 10 10 10 8 10 9 10 9 4 10 10 11 9 4 10 11 11 11 11 7 11 11 10 10 9 10 9 9 9 10 9 7 10 10 10 10 10 9 10 7 3 7 10 10 9 9 10 10 10 10 9 7 10 9 7 10 9 7 10 100 10 11 100 10 11 11 10 100 100 10 10 10 10 10 10 10 8 10 100 10 4 10 4 10 10 10 8 4 10 100 11 10 10 10 10 7 7 100 100 1 1 100 1 100 1 100 1 100 1 100 1 100 1 100 1 100 1 100 1 1 1 1 1 1 1 1 5 0 1 1 3 1 1 1 1 3 1 3 1 3 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 7 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 100 1 1 1 1 100 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 12 1 12 1 12 1 12 12 12 12 1 12 1 1 1 12 12 12 12 7 12 1 12 12 12 12 12 12 12 12 12 12 12 12 12 1 12 12 12 12 12 12 12 12 12 12 12 1 12 12 12 12 12 12 12 1 1 12 12 12 12 12 12 12 12 1 12 12 1 12 1 1 12 1 12 12 12 1 1 12 12 12 12 12 12 12 12 1 100 12 12 12 12 1 100 12 1 100 12 12 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +ciInstanceKlass java/util/Map$Entry 1 1 167 18 7 7 18 10 18 18 10 10 8 10 8 8 8 10 10 8 10 10 8 10 8 10 8 10 8 10 8 100 8 10 11 11 11 100 11 7 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 15 16 15 16 3 3 12 1 1 15 100 12 15 12 15 100 12 12 12 12 12 12 1 12 1 12 1 12 12 1 1 12 12 12 12 1 12 1 1 1 10 11 11 1 1 11 11 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 12 12 12 12 12 1 1 100 1 1 100 1 1 +ciInstanceKlass java/util/Arrays 1 1 1057 10 100 7 10 8 10 10 8 8 10 10 100 10 10 10 10 10 10 10 10 10 7 10 100 10 10 100 10 10 100 10 10 100 10 10 100 10 10 100 10 10 100 10 10 9 10 100 10 10 10 100 10 10 7 9 10 10 10 10 10 10 7 11 10 10 10 10 10 10 10 10 11 10 100 10 10 100 10 10 100 10 10 100 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 7 10 10 8 7 10 10 10 10 9 100 10 9 100 10 9 100 10 9 100 10 9 100 10 9 100 10 9 100 10 100 10 10 9 100 10 10 10 10 10 10 10 10 10 10 10 8 8 10 10 8 10 10 10 10 100 3 10 100 10 10 11 10 10 10 10 10 10 10 10 10 11 8 10 11 11 11 11 18 11 11 18 11 18 11 18 100 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 100 1 1 1 7 1 100 1 1 1 1 3 1 3 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 100 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 1 1 1 12 12 1 1 12 12 1 12 7 12 12 12 12 12 12 12 12 1 100 12 100 1 1 1 12 12 100 1 1 12 100 1 1 12 100 1 1 12 100 1 1 12 100 1 1 12 100 1 1 12 12 7 12 100 1 1 12 12 7 12 12 12 12 7 12 100 12 12 12 12 1 12 12 7 12 12 12 100 12 12 12 12 7 12 100 1 1 12 1 1 12 1 1 12 1 1 12 12 12 12 12 12 12 100 12 12 100 12 12 12 7 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 1 7 12 12 1 1 12 12 12 12 100 12 12 12 100 12 100 12 100 12 100 12 12 12 12 12 1 12 12 12 12 12 12 12 12 12 12 1 1 12 12 1 12 12 12 7 12 1 1 12 100 12 12 12 12 12 12 12 12 12 12 12 1 12 100 12 100 12 12 1 15 16 15 12 12 100 12 15 12 100 12 15 12 100 12 15 12 1 7 12 12 12 12 12 12 12 12 12 12 7 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 10 10 1 1 1 1 1 1 1 10 1 1 1 1 10 1 1 1 1 10 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 12 12 12 12 12 1 1 100 1 1 100 1 1 +staticfield java/util/Arrays $assertionsDisabled Z 1 +ciInstanceKlass java/lang/Math 1 1 389 10 10 10 10 10 10 10 7 6 0 6 0 10 10 10 10 10 10 10 10 10 10 10 10 100 3 3 3 10 100 5 0 5 0 5 0 5 0 5 0 9 10 100 8 10 8 10 10 100 5 0 5 0 100 3 5 0 3 5 0 10 10 10 9 9 10 7 6 0 10 9 100 10 10 100 10 10 10 10 10 10 10 10 10 6 0 10 10 10 10 7 4 10 10 10 10 10 10 10 10 10 10 10 5 0 6 0 4 6 0 4 6 0 4 10 9 10 9 10 4 6 0 100 100 1 1 1 1 1 6 0 1 6 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 7 12 12 12 12 12 12 1 12 12 12 12 12 12 12 12 12 12 12 12 1 12 1 12 100 12 1 1 12 1 12 12 1 1 12 12 12 12 12 12 1 12 12 1 12 1 12 12 12 12 12 12 12 12 12 12 12 12 12 1 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 7 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/lang/Math negativeZeroFloatBits J -2147483648 +staticfield java/lang/Math negativeZeroDoubleBits J -9223372036854775808 +staticfield java/lang/Math $assertionsDisabled Z 1 +instanceKlass java/util/LinkedHashMap$Entry +ciInstanceKlass java/util/HashMap$Node 1 1 95 10 9 9 9 9 100 10 10 8 10 10 10 7 11 10 11 7 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 12 12 12 12 12 1 12 1 12 12 7 12 100 1 12 12 12 1 1 1 1 1 1 1 1 1 1 1 +ciInstanceKlass java/lang/module/ModuleDescriptor 1 1 482 10 9 100 10 9 9 9 11 9 9 11 9 9 9 11 18 11 11 11 11 9 9 9 9 9 9 9 9 10 10 10 100 10 10 10 8 10 10 10 10 10 10 10 10 7 10 11 10 10 10 11 10 8 8 10 11 8 8 8 8 8 8 7 10 100 8 10 7 10 11 11 10 100 10 10 10 10 8 10 18 11 11 8 10 11 7 100 11 11 10 10 11 11 11 100 10 10 10 9 10 10 7 10 10 7 1 1 100 1 7 1 7 1 7 1 7 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 100 100 100 12 12 1 12 12 12 12 12 12 12 12 12 12 12 1 15 16 15 16 12 100 12 12 12 12 12 12 12 12 12 12 12 12 7 12 12 12 1 12 12 1 12 12 12 12 12 100 12 12 1 12 100 12 12 12 12 1 1 12 12 1 1 1 1 1 1 1 12 1 1 12 1 12 12 12 12 1 100 12 100 12 12 12 1 12 15 16 12 12 1 100 12 12 1 1 12 12 100 12 12 12 12 12 1 12 12 100 12 12 7 12 1 7 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 10 1 10 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 10 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 12 12 1 1 100 1 1 100 1 1 +staticfield java/lang/module/ModuleDescriptor $assertionsDisabled Z 1 +ciInstanceKlass java/io/File 1 1 639 9 9 10 9 9 9 10 9 9 100 10 8 10 10 100 10 10 10 10 10 100 8 10 10 8 10 8 10 8 10 8 10 8 10 8 10 8 10 9 10 10 10 10 10 10 10 7 10 10 10 10 10 7 8 10 10 10 8 10 7 10 10 10 10 7 10 100 10 10 10 10 10 8 7 10 100 100 10 10 10 7 10 10 10 10 10 10 10 10 10 10 10 7 7 10 11 11 11 11 100 10 10 10 10 7 11 10 10 10 10 10 10 10 8 10 10 10 10 10 10 10 10 100 8 10 10 10 8 8 8 10 10 100 8 10 10 10 10 10 10 10 10 8 10 10 9 9 10 9 10 9 10 10 10 10 10 10 9 10 9 9 10 10 8 7 100 100 7 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 100 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 7 1 1 1 100 100 1 1 1 1 1 1 1 12 12 12 12 12 12 12 12 12 1 1 12 12 1 12 12 12 12 1 1 12 12 1 12 1 12 1 12 1 12 1 12 1 12 1 12 12 12 12 12 12 12 12 12 1 12 12 12 12 12 1 1 12 12 1 12 1 12 12 12 1 1 12 12 12 12 1 1 12 1 1 12 7 12 12 1 12 12 12 12 12 12 12 12 7 12 12 12 1 1 12 12 12 12 12 12 12 12 12 12 12 12 12 1 12 12 12 12 12 12 12 12 1 1 12 12 1 1 1 12 12 1 1 12 12 12 12 100 12 12 100 12 12 12 12 12 7 12 12 12 12 7 12 7 12 7 12 7 12 12 12 12 12 12 12 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/io/File fs Ljava/io/FileSystem; java/io/WinNTFileSystem +staticfield java/io/File separatorChar C 92 +staticfield java/io/File separator Ljava/lang/String; "\"staticfield java/io/File pathSeparatorChar C 59 +staticfield java/io/File pathSeparator Ljava/lang/String; ";"staticfield java/io/File UNSAFE Ljdk/internal/misc/Unsafe; jdk/internal/misc/Unsafe +staticfield java/io/File PATH_OFFSET J 16 +staticfield java/io/File PREFIX_LENGTH_OFFSET J 12 +staticfield java/io/File $assertionsDisabled Z 1 +instanceKlass java/io/ExpiringCache$1 +ciInstanceKlass java/util/LinkedHashMap 1 1 280 9 9 9 9 10 7 10 10 9 9 9 10 7 10 10 10 10 9 9 10 10 10 10 10 10 10 10 9 10 9 7 10 9 7 10 9 7 10 100 10 11 100 10 11 7 7 100 100 1 1 100 1 100 1 100 1 1 1 1 1 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 12 12 1 12 12 12 12 12 12 1 12 12 12 12 12 100 12 12 12 12 12 12 12 12 12 12 1 12 12 1 12 1 1 7 12 1 100 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +ciInstanceKlass java/io/ExpiringCache$1 1 1 53 9 10 10 9 7 7 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 100 1 1 1 1 1 1 1 1 7 12 1 12 12 12 12 1 1 100 1 1 1 1 1 1 1 1 1 1 +instanceKlass java/util/HashMap$TreeNode +ciInstanceKlass java/util/LinkedHashMap$Entry 1 1 41 10 100 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 12 1 100 1 1 1 +ciInstanceKlass java/util/HashMap$TreeNode 1 1 250 7 10 9 9 7 9 9 9 10 100 10 9 9 9 10 10 10 10 10 10 10 10 10 9 10 10 10 10 9 10 10 10 10 10 10 10 7 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 1 12 12 12 12 1 12 12 12 12 12 12 12 12 12 12 12 7 12 7 12 12 12 12 12 12 12 12 12 12 12 12 12 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/util/HashMap$TreeNode $assertionsDisabled Z 1 +ciInstanceKlass java/util/zip/ZipFile$Source$Key 1 1 68 10 9 9 11 10 10 7 10 11 10 10 7 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 12 12 12 7 12 7 12 7 12 1 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 +instanceKlass org/codehaus/groovy/runtime/powerassert/PowerAssertionError +instanceKlass org/codehaus/groovy/GroovyBugError +instanceKlass org/codehaus/groovy/runtime/powerassert/PowerAssertionError +instanceKlass org/codehaus/groovy/GroovyBugError +ciInstanceKlass java/lang/AssertionError 0 0 79 10 10 10 10 100 10 10 10 10 10 10 10 10 100 100 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 100 12 1 12 12 12 12 12 12 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +ciInstanceKlass jdk/internal/util/ArraysSupport 1 1 253 7 100 8 10 10 10 9 9 10 9 10 9 10 9 10 10 9 9 10 9 9 9 9 9 9 9 10 10 9 9 10 10 9 10 10 9 9 10 10 10 7 3 10 100 8 10 3 10 10 9 10 9 9 9 9 9 9 9 100 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 12 12 7 12 12 100 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 100 12 12 12 12 12 12 12 100 12 12 12 12 12 7 12 1 12 1 1 12 12 12 12 12 12 12 12 12 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield jdk/internal/util/ArraysSupport U Ljdk/internal/misc/Unsafe; jdk/internal/misc/Unsafe +staticfield jdk/internal/util/ArraysSupport BIG_ENDIAN Z 0 +staticfield jdk/internal/util/ArraysSupport LOG2_ARRAY_BOOLEAN_INDEX_SCALE I 0 +staticfield jdk/internal/util/ArraysSupport LOG2_ARRAY_BYTE_INDEX_SCALE I 0 +staticfield jdk/internal/util/ArraysSupport LOG2_ARRAY_CHAR_INDEX_SCALE I 1 +staticfield jdk/internal/util/ArraysSupport LOG2_ARRAY_SHORT_INDEX_SCALE I 1 +staticfield jdk/internal/util/ArraysSupport LOG2_ARRAY_INT_INDEX_SCALE I 2 +staticfield jdk/internal/util/ArraysSupport LOG2_ARRAY_LONG_INDEX_SCALE I 3 +staticfield jdk/internal/util/ArraysSupport LOG2_ARRAY_FLOAT_INDEX_SCALE I 2 +staticfield jdk/internal/util/ArraysSupport LOG2_ARRAY_DOUBLE_INDEX_SCALE I 3 +staticfield jdk/internal/util/ArraysSupport LOG2_BYTE_BIT_SIZE I 3 +ciInstanceKlass org/gradle/internal/reflect/MethodSet$MethodKey 1 1 84 10 10 9 10 9 10 7 10 10 10 10 7 10 10 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 12 12 12 7 12 12 12 100 1 12 7 12 12 7 12 1 7 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +instanceKlass org/antlr/v4/runtime/atn/ArrayPredictionContext +instanceKlass org/antlr/v4/runtime/atn/SingletonPredictionContext +ciInstanceKlass org/antlr/v4/runtime/atn/PredictionContext 1 1 443 100 10 9 9 9 9 9 9 10 9 9 11 7 10 7 9 9 10 10 10 7 3 10 10 10 10 9 100 10 10 7 10 7 7 10 10 10 10 10 9 9 10 10 9 9 10 7 10 10 7 10 11 11 11 8 100 10 8 10 8 10 100 10 10 11 11 11 10 8 8 8 8 9 10 8 8 8 8 10 8 8 8 8 10 8 8 10 10 10 10 10 10 100 10 7 10 10 11 10 10 10 10 10 10 9 100 11 100 10 10 7 1 1 1 1 1 1 1 3 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 12 12 12 12 7 12 12 12 12 7 12 12 12 1 12 1 12 12 12 12 12 1 7 12 12 12 12 12 1 12 1 12 1 1 12 12 12 12 12 12 12 12 12 12 12 7 12 12 12 1 12 12 12 1 1 1 12 1 12 1 100 12 12 12 12 12 1 1 1 1 12 1 1 1 1 12 1 1 1 12 1 1 12 7 12 12 12 1 1 12 12 12 12 12 12 12 12 1 12 1 7 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield org/antlr/v4/runtime/atn/PredictionContext EMPTY Lorg/antlr/v4/runtime/atn/EmptyPredictionContext; org/antlr/v4/runtime/atn/EmptyPredictionContext +staticfield org/antlr/v4/runtime/atn/PredictionContext $assertionsDisabled Z 1 +instanceKlass org/antlr/v4/runtime/atn/EmptyPredictionContext +ciInstanceKlass org/antlr/v4/runtime/atn/SingletonPredictionContext 1 1 109 10 10 10 9 100 100 10 9 9 7 3 9 7 10 10 10 10 10 8 10 8 10 100 10 10 8 10 10 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 12 12 12 12 1 1 12 12 12 1 12 1 12 12 7 12 12 1 12 1 12 1 12 1 7 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield org/antlr/v4/runtime/atn/SingletonPredictionContext $assertionsDisabled Z 1 +ciInstanceKlass org/antlr/v4/runtime/atn/EmptyPredictionContext 1 1 42 100 3 10 9 8 7 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 1 1 1 1 1 +ciInstanceKlass org/antlr/v4/runtime/atn/SemanticContext$Predicate 1 1 89 10 9 9 9 10 10 10 10 7 100 10 8 10 10 8 8 10 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 12 7 12 7 12 12 12 1 1 1 12 12 1 1 12 1 1 1 1 1 1 1 1 1 1 1 1 1 +ciInstanceKlass org/antlr/v4/runtime/atn/ArrayPredictionContext 1 1 125 7 9 9 10 10 10 9 100 10 9 9 3 7 10 10 10 10 10 8 100 10 8 10 8 8 10 10 10 8 8 10 10 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 12 12 12 12 12 12 1 12 12 12 1 12 7 7 12 12 12 1 1 1 12 1 1 12 12 12 1 1 7 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield org/antlr/v4/runtime/atn/ArrayPredictionContext $assertionsDisabled Z 1 +ciInstanceKlass org/antlr/v4/runtime/misc/MurmurHash 1 1 65 7 10 3 3 3 10 10 3 3 10 10 10 7 1 1 1 3 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 12 12 12 12 12 12 1 +ciInstanceKlass org/antlr/v4/runtime/misc/DoubleKeyMap 1 1 67 10 7 10 9 11 7 11 11 11 7 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 1 12 12 1 12 12 12 1 1 1 1 +ciMethod java/lang/Object ()V 4097 1 1587848 0 96 +ciMethod java/lang/Object getClass ()Ljava/lang/Class; 2049 1 256 0 -1 +ciMethod java/lang/Object hashCode ()I 2049 1 256 0 -1 +ciMethod java/lang/Object equals (Ljava/lang/Object;)Z 2105 1 76343 0 -1 +ciMethod java/lang/System arraycopy (Ljava/lang/Object;ILjava/lang/Object;II)V 3073 1 384 0 -1 +ciMethod java/util/Map containsKey (Ljava/lang/Object;)Z 0 0 1 0 -1 +ciMethod java/util/Map get (Ljava/lang/Object;)Ljava/lang/Object; 0 0 1 0 -1 +ciMethod java/util/Map put (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; 0 0 1 0 -1 +ciMethod java/util/Objects equals (Ljava/lang/Object;Ljava/lang/Object;)Z 2121 1 40630 0 128 +ciMethod java/util/HashMap hash (Ljava/lang/Object;)I 2657 1 132135 0 160 +ciMethod java/util/HashMap comparableClassFor (Ljava/lang/Object;)Ljava/lang/Class; 2225 1 2860 0 -1 +ciMethod java/util/HashMap compareComparables (Ljava/lang/Class;Ljava/lang/Object;Ljava/lang/Object;)I 0 0 1 0 -1 +ciMethod java/util/HashMap ()V 2153 1 28947 0 64 +ciMethod java/util/HashMap getNode (ILjava/lang/Object;)Ljava/util/HashMap$Node; 3201 81 23959 0 448 +ciMethod java/util/HashMap put (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; 4097 1 37214 0 1888 +ciMethod java/util/HashMap putVal (ILjava/lang/Object;Ljava/lang/Object;ZZ)Ljava/lang/Object; 3289 113 28271 0 1856 +ciMethod java/util/HashMap resize ()[Ljava/util/HashMap$Node; 377 1825 4197 0 -1 +ciMethod java/util/HashMap treeifyBin ([Ljava/util/HashMap$Node;I)V 1 1 60 0 0 +ciMethod java/util/HashMap removeNode (ILjava/lang/Object;Ljava/lang/Object;ZZ)Ljava/util/HashMap$Node; 129 9 2100 0 -1 +ciMethod java/util/HashMap newNode (ILjava/lang/Object;Ljava/lang/Object;Ljava/util/HashMap$Node;)Ljava/util/HashMap$Node; 4097 1 6904 0 -1 +ciMethod java/util/HashMap newTreeNode (ILjava/lang/Object;Ljava/lang/Object;Ljava/util/HashMap$Node;)Ljava/util/HashMap$TreeNode; 0 0 1 0 -1 +ciMethod java/util/HashMap replacementTreeNode (Ljava/util/HashMap$Node;Ljava/util/HashMap$Node;)Ljava/util/HashMap$TreeNode; 0 0 1 0 -1 +ciMethod java/util/HashMap afterNodeAccess (Ljava/util/HashMap$Node;)V 2153 1 1385 0 -1 +ciMethod java/util/HashMap afterNodeInsertion (Z)V 4097 1 2411 0 -1 +ciMethod java/util/AbstractMap ()V 2241 1 52883 0 32 +ciMethod java/util/Arrays equals ([I[I)Z 17 1 1615 0 0 +ciMethod java/util/Arrays equals ([Ljava/lang/Object;[Ljava/lang/Object;)Z 2025 4281 5383 0 320 +ciMethod java/util/Arrays copyOf ([Ljava/lang/Object;I)[Ljava/lang/Object; 705 1 25033 0 480 +ciMethod java/util/Arrays copyOf ([Ljava/lang/Object;ILjava/lang/Class;)[Ljava/lang/Object; 1177 1 6805 0 -1 +ciMethod java/util/Arrays copyOf ([II)[I 1265 1 7155 0 0 +ciMethod java/lang/Math min (II)I 2473 1 94944 0 -1 +ciMethod java/util/HashMap$Node (ILjava/lang/Object;Ljava/lang/Object;Ljava/util/HashMap$Node;)V 4097 1 12882 0 0 +ciMethodData java/lang/Object ()V 2 1587858 orig 80 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 4 0x0 0x9 0x1 0x0 oops 0 methods 0 +ciMethod java/util/LinkedHashMap linkNodeLast (Ljava/util/LinkedHashMap$Entry;)V 2121 1 5489 0 0 +ciMethod java/util/LinkedHashMap newNode (ILjava/lang/Object;Ljava/lang/Object;Ljava/util/HashMap$Node;)Ljava/util/HashMap$Node; 2121 1 5388 0 1504 +ciMethod java/util/LinkedHashMap afterNodeInsertion (Z)V 2129 1 10571 0 128 +ciMethod java/util/LinkedHashMap afterNodeAccess (Ljava/util/HashMap$Node;)V 1 1 1123 0 0 +ciMethod java/util/LinkedHashMap ()V 2121 1 12188 0 64 +ciMethod java/util/LinkedHashMap get (Ljava/lang/Object;)Ljava/lang/Object; 2073 1 18631 0 672 +ciMethod java/util/LinkedHashMap removeEldestEntry (Ljava/util/Map$Entry;)Z 1065 1 133 0 -1 +ciMethodData java/util/Objects equals (Ljava/lang/Object;Ljava/lang/Object;)Z 2 40630 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 32 0x20007 0x783f 0x98 0x256e 0x60007 0x0 0x90 0x256e 0xb0005 0x21bd 0x0 0x194a7044c70 0x32d 0x194b444f4f0 0x84 0xe0007 0xd1c 0x38 0x1852 0x120003 0x9091 0x18 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x2 0x0 0x0 oops 2 11 java/lang/String 13 java/lang/module/ModuleDescriptor methods 0 +ciMethod java/util/HashMap$TreeNode root ()Ljava/util/HashMap$TreeNode; 0 0 1 0 0 +ciMethod java/util/HashMap$TreeNode moveRootToFront ([Ljava/util/HashMap$Node;Ljava/util/HashMap$TreeNode;)V 1265 1 158 0 -1 +ciMethod java/util/HashMap$TreeNode find (ILjava/lang/Object;Ljava/lang/Class;)Ljava/util/HashMap$TreeNode; 265 177 2343 0 0 +ciMethod java/util/HashMap$TreeNode getTreeNode (ILjava/lang/Object;)Ljava/util/HashMap$TreeNode; 89 1 557 0 0 +ciMethod java/util/HashMap$TreeNode tieBreakOrder (Ljava/lang/Object;Ljava/lang/Object;)I 2089 1 1244 0 -1 +ciMethod java/util/HashMap$TreeNode treeify ([Ljava/util/HashMap$Node;)V 457 9313 57 0 -1 +ciMethod java/util/HashMap$TreeNode putTreeVal (Ljava/util/HashMap;[Ljava/util/HashMap$Node;ILjava/lang/Object;Ljava/lang/Object;)Ljava/util/HashMap$TreeNode; 49 137 101 0 0 +ciMethod java/util/HashMap$TreeNode split (Ljava/util/HashMap;[Ljava/util/HashMap$Node;II)V 17 145 38 0 -1 +ciMethod java/util/HashMap$TreeNode balanceInsertion (Ljava/util/HashMap$TreeNode;Ljava/util/HashMap$TreeNode;)Ljava/util/HashMap$TreeNode; 2105 1505 558 0 -1 +ciMethod java/util/LinkedHashMap$Entry (ILjava/lang/Object;Ljava/lang/Object;Ljava/util/HashMap$Node;)V 2121 1 5978 0 0 +ciMethodData java/util/HashMap hash (Ljava/lang/Object;)I 2 132135 orig 80 1 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 23 0x8000000600010007 0x20210 0x38 0xce 0x50003 0xce 0x50 0x90005 0x15e42 0x0 0x194a7044c70 0xa08f 0x194a7047ca0 0x11 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x1 0xffffffffffffffff oops 2 10 java/lang/String 12 jdk/internal/loader/ClassLoaders$AppClassLoader methods 0 +ciMethodData java/util/HashMap getNode (ILjava/lang/Object;)Ljava/util/HashMap$Node; 2 23959 orig 80 3 0 0 0 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 6 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 102 0x60007 0x746 0x2d8 0x54c1 0xe0007 0x0 0x2b8 0x54c1 0x1c0007 0x22ff 0x298 0x31c2 0x250007 0x1266 0xb8 0x1f5c 0x310007 0xe02 0x98 0x115a 0x8000000600350007 0x1 0x78 0x115a 0x3b0005 0xd96 0x0 0x194a7044c70 0x3ad 0x194b39dfa70 0x17 0x3e0007 0x2df 0x20 0xe7b 0x4c0007 0xb9c 0x1c0 0x9aa 0x510004 0xfffffffffffff65e 0x0 0x194a8a53a10 0x37 0x194b39dfb20 0x29 0x8000000600540007 0x9a2 0x90 0xb 0x590004 0x0 0x0 0x194a8a59cb0 0xb 0x0 0x0 0x5e0005 0xb 0x0 0x0 0x0 0x0 0x0 0x680007 0x4d4 0xb8 0x8da 0x740007 0x184 0x98 0x756 0x780007 0x0 0x78 0x756 0x7e0005 0x67a 0x0 0x194a7044c70 0xd4 0x194b39dfa70 0x8 0x8000000600810007 0x2b9 0x20 0x49f 0x8f0007 0x40c 0xffffffffffffff48 0x381 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x3 0x0 0x0 0xffffffffffffffff oops 7 27 java/lang/String 29 java/util/zip/ZipFile$Source$Key 42 java/util/HashMap$Node 44 java/util/LinkedHashMap$Entry 53 java/util/HashMap$TreeNode 79 java/lang/String 81 java/util/zip/ZipFile$Source$Key methods 0 +ciMethodData java/util/HashMap putVal (ILjava/lang/Object;Ljava/lang/Object;ZZ)Ljava/lang/Object; 2 28271 orig 80 3 0 0 0 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 0 0 9 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 198 0x70007 0xd8d 0x40 0x5f47 0x100007 0x5f47 0x58 0x0 0x140005 0xd8d 0x0 0x0 0x0 0x0 0x0 0x2c0007 0x2598 0xa8 0x473c 0x380005 0x21e6 0x0 0x194a8a53680 0x254f 0x194acb56740 0x7 0x3b0004 0x0 0x0 0x194a8a53a10 0x256e 0x194b39dfb20 0x21ce 0x3c0003 0x473c 0x410 0x450007 0x1dd9 0xd0 0x7bf 0x510007 0x2b4 0x98 0x50b 0x550007 0x1 0x90 0x50a 0xffffffff005b0005 0x3b8 0x0 0x194acb567f0 0xad 0x194a7044c70 0xac 0x5e0007 0x38f 0x38 0x182 0x650003 0x436 0x2a8 0x6a0004 0xffffffffffffdebe 0x0 0x194a8a53a10 0x7a 0x194b39dfb20 0x59 0x80000006006d0007 0x2142 0xa8 0x29 0x720004 0x0 0x0 0x194a8a59cb0 0x29 0x0 0x0 0x7b0005 0x29 0x0 0x0 0x0 0x0 0x0 0x800003 0x29 0x1c8 0x8e0007 0xf36 0xc8 0x1fc4 0x980005 0x18 0x0 0x194a8a53680 0xf81 0x194a8a524e0 0x102b 0x8000000600a20007 0x1fb0 0x158 0x15 0xa90005 0x15 0x0 0x0 0x0 0x0 0x0 0xac0003 0x15 0x100 0xb50007 0x8ef 0xd0 0x647 0xc10007 0xe4 0xc8 0x563 0xc50007 0x0 0x90 0x563 0xffffffff00cb0005 0x514 0x0 0x194acb567f0 0x1b 0x194a7044c70 0x38 0xce0007 0x4c9 0x38 0x9e 0xd10003 0x9e 0x30 0xdb0003 0xdb8 0xfffffffffffffe68 0xe00007 0x1fee 0x98 0x5b8 0xec0007 0x5b5 0x40 0x3 0xf10007 0x3 0x20 0x0 0x8000000700fd0005 0x60 0x0 0x194a8a53680 0x25e 0x194a8a524e0 0x2fc 0x11c0007 0x647a 0x58 0x2b0 0x1200005 0x2b0 0x0 0x0 0x0 0x0 0x0 0x1270005 0x324c 0x0 0x194a8a53680 0x34d0 0x194acb56740 0xe 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x6 0x0 0x0 0x0 0x0 0x0 0x0 oops 17 22 java/util/HashMap 24 java/io/ExpiringCache$1 29 java/util/HashMap$Node 31 java/util/LinkedHashMap$Entry 51 java/io/File 53 java/lang/String 65 java/util/HashMap$Node 67 java/util/LinkedHashMap$Entry 76 java/util/HashMap$TreeNode 97 java/util/HashMap 99 java/util/LinkedHashMap 130 java/io/File 132 java/lang/String 159 java/util/HashMap 161 java/util/LinkedHashMap 177 java/util/HashMap 179 java/io/ExpiringCache$1 methods 0 +ciMethodData java/util/HashMap resize ()[Ljava/util/HashMap$Node; 2 39385 orig 80 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 171 0x60007 0x415 0x38 0xc21 0xa0003 0xc21 0x18 0x190007 0xc21 0x98 0x415 0x1f0007 0x415 0x20 0x0 0x320007 0x0 0x90 0x415 0x380007 0x15e 0x70 0x2b7 0x400003 0x2b7 0x50 0x440007 0x82c 0x38 0x3f5 0x4a0003 0x3f5 0x18 0x570007 0xae3 0x78 0x553 0x680007 0x0 0x58 0x553 0x700007 0x0 0x38 0x553 0x760003 0x553 0x18 0x910007 0xc21 0x378 0x415 0x9a0007 0x416 0x358 0x7b29 0xa40007 0x3a07 0x320 0x4122 0xab0104 0x0 0x0 0x0 0x0 0x0 0x0 0xb10007 0x166c 0x70 0x2ab6 0xc20004 0x0 0x0 0x194a8a53a10 0x1652 0x194b39dfb20 0x1464 0xc30003 0x2ab6 0x270 0xc80004 0xffffffffffffe9a3 0x0 0x194a8a53a10 0x74 0x194b39dfb20 0x4c 0x8000000600cb0007 0x165d 0xa8 0x10 0xd00004 0x0 0x0 0x194a8a59cb0 0x10 0x0 0x0 0xd90005 0x10 0x0 0x0 0x0 0x0 0x0 0xdc0003 0x10 0x190 0xf90007 0x1851 0x70 0x1bd7 0xfe0007 0x9c0 0x38 0x1217 0x1050003 0x1217 0x18 0x1130003 0x1bd7 0x50 0x1180007 0x814 0x38 0x103d 0x11f0003 0x103d 0x18 0x1320007 0x1dcb 0xffffffffffffff58 0x165d 0x1370007 0x446 0x58 0x1217 0x1460004 0x0 0x0 0x194a8a53a10 0x8c8 0x194b39dfb20 0x94f 0x1490007 0x620 0x58 0x103d 0x15a0004 0x0 0x0 0x194a8a53a10 0x756 0x194b39dfb20 0x8e7 0x15e0003 0x7b2a 0xfffffffffffffcc0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x1 0x0 oops 9 74 java/util/HashMap$Node 76 java/util/LinkedHashMap$Entry 84 java/util/HashMap$Node 86 java/util/LinkedHashMap$Entry 95 java/util/HashMap$TreeNode 141 java/util/HashMap$Node 143 java/util/LinkedHashMap$Entry 152 java/util/HashMap$Node 154 java/util/LinkedHashMap$Entry methods 0 +ciMethodData java/util/HashMap treeifyBin ([Ljava/util/HashMap$Node;I)V 1 403 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 69 0x10007 0x0 0x40 0x3c 0xa0007 0x32 0x70 0xa 0xe0005 0xa 0x0 0x0 0x0 0x0 0x0 0x120003 0xa 0x158 0x220007 0x0 0x140 0x32 0x2f0005 0x0 0x0 0x194a8a524e0 0x1c5 0x0 0x0 0x360007 0x193 0x38 0x32 0x3d0003 0x32 0x18 0x5a0007 0x193 0xffffffffffffff90 0x32 0x630004 0x0 0x0 0x194a8a59cb0 0x32 0x0 0x0 0x640007 0x0 0x58 0x32 0x6a0005 0x32 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x3 0xffffffffffffffff 0xffffffffffffffff 0x0 oops 2 25 java/util/LinkedHashMap 43 java/util/HashMap$TreeNode methods 0 +ciMethodData java/util/HashMap put (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; 2 37214 orig 80 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 20 0x20002 0x8f5e 0x90005 0x8f5e 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x3 0xffffffffffffffff 0xffffffffffffffff 0xffffffffffffffff oops 0 methods 0 +ciMethodData java/util/HashMap$Node (ILjava/lang/Object;Ljava/lang/Object;Ljava/util/HashMap$Node;)V 2 12882 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 13 0x10002 0x3052 0x0 0x0 0x0 0x0 0x9 0x5 0xe 0x0 0x0 0x0 0x0 oops 0 methods 0 +ciMethodData java/util/AbstractMap ()V 2 52888 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 7 0x10002 0xcd80 0x0 0x0 0x9 0x1 0x0 oops 0 methods 0 +ciMethodData java/util/HashMap ()V 2 28950 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 9 0x10002 0x7009 0x0 0x0 0x0 0x0 0x9 0x1 0x10 oops 0 methods 0 +ciMethodData java/util/Arrays copyOf ([Ljava/lang/Object;I)[Ljava/lang/Object; 2 25058 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 19 0x30005 0x618a 0x0 0x0 0x0 0x0 0x0 0x60002 0x618b 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x2 0x0 0x0 oops 0 methods 0 +ciMethod jdk/internal/util/ArraysSupport vectorizedMismatch (Ljava/lang/Object;JLjava/lang/Object;JII)I 3009 3233 584 0 -1 +ciMethod jdk/internal/util/ArraysSupport mismatch ([I[II)I 1233 849 1312 0 0 +ciMethodData java/util/LinkedHashMap newNode (ILjava/lang/Object;Ljava/lang/Object;Ljava/util/HashMap$Node;)Ljava/util/HashMap$Node; 2 5388 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 22 0x90002 0x1403 0x110005 0x1403 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x5 0x0 0x0 0x0 0x0 0x0 oops 0 methods 0 +ciMethodData java/util/LinkedHashMap$Entry (ILjava/lang/Object;Ljava/lang/Object;Ljava/util/HashMap$Node;)V 2 5978 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 11 0x60002 0x1651 0x0 0x0 0x9 0x5 0x0 0x0 0x0 0x0 0x0 oops 0 methods 0 +ciMethodData java/util/LinkedHashMap linkNodeLast (Ljava/util/LinkedHashMap$Entry;)V 2 5489 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 17 0xb0007 0x1318 0x38 0x150 0x130003 0x150 0x18 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x2 0x0 0x0 oops 0 methods 0 +ciMethodData java/util/LinkedHashMap afterNodeInsertion (Z)V 2 10571 orig 80 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 38 0x8000000600010007 0x128 0xe0 0x271a 0xa0007 0x0 0xc0 0x271a 0xf0005 0x0 0x0 0x194a8a524e0 0x26fb 0x194acb56740 0x1f 0x120007 0x271a 0x68 0x0 0x1c0002 0x0 0x230005 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x2 0xffffffffffffffff 0x0 oops 2 11 java/util/LinkedHashMap 13 java/io/ExpiringCache$1 methods 0 +ciMethodData java/util/LinkedHashMap get (Ljava/lang/Object;)Ljava/lang/Object; 2 18631 orig 80 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 34 0x20002 0x47c4 0x60005 0x47c5 0x0 0x0 0x0 0x0 0x0 0xb0007 0x191a 0x20 0x2ead 0x140007 0x191a 0x58 0x0 0x190005 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x2 0x0 0x0 oops 0 methods 0 +ciMethodData java/util/LinkedHashMap afterNodeAccess (Ljava/util/HashMap$Node;)V 2 1123 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 148 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 46 0x40007 0x463 0x120 0x0 0xe0007 0x0 0x100 0x0 0x120004 0x0 0x0 0x0 0x0 0x0 0x0 0x290007 0x0 0x38 0x0 0x320003 0x0 0x18 0x3e0007 0x0 0x38 0x0 0x480003 0x0 0x18 0x4f0007 0x0 0x38 0x0 0x570003 0x0 0x18 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x2 0xc8 0x18 oops 0 methods 0 +ciMethodData java/util/Arrays equals ([Ljava/lang/Object;[Ljava/lang/Object;)Z 2 7866 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 39 0x20007 0x10b0 0x20 0x35a 0x80007 0x2 0x40 0x10ae 0xc0007 0x10ae 0x20 0x0 0x170007 0x105e 0x20 0x50 0x200007 0xf0a 0x68 0x1df7 0x290002 0x1df7 0x2c0007 0x1ca3 0x20 0x154 0x340003 0x1ca3 0xffffffffffffffb0 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x2 0x0 0x0 oops 0 methods 0 +ciMethodData java/util/Arrays copyOf ([II)[I 2 7156 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 14 0xb0002 0x1b56 0xe0002 0x1b56 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x2 0x0 0x0 oops 0 methods 0 +ciMethodData java/util/LinkedHashMap ()V 2 12401 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 9 0x10002 0x2f68 0x0 0x0 0x0 0x0 0x9 0x1 0x70 oops 0 methods 0 +ciMethodData java/util/HashMap$TreeNode putTreeVal (Ljava/util/HashMap;[Ljava/util/HashMap$Node;ILjava/lang/Object;Ljava/lang/Object;)Ljava/util/HashMap$TreeNode; 1 262 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 156 0xa0007 0x5f 0x70 0x0 0xe0005 0x0 0x0 0x0 0x0 0x0 0x0 0x110003 0x0 0x18 0x240007 0x13d 0x38 0x17 0x2a0003 0x17 0x288 0x300007 0x109 0x38 0x34 0x360003 0x34 0x250 0x430007 0x0 0x98 0x109 0x480007 0x0 0x78 0x109 0x4f0005 0x0 0x0 0x194b42819d0 0x109 0x0 0x0 0x520007 0x109 0x20 0x0 0x5a0007 0x0 0x50 0x109 0x5f0002 0x109 0x650007 0x109 0x50 0x0 0x6e0002 0x0 0x740007 0x0 0x140 0x0 0x790007 0xb0 0x110 0x59 0x870007 0x9 0x78 0x50 0x910005 0x50 0x0 0x0 0x0 0x0 0x0 0x970007 0x0 0x98 0x50 0xa20007 0xb 0x78 0x4e 0xac0005 0x4e 0x0 0x0 0x0 0x0 0x0 0xb20007 0x4e 0x20 0x0 0xbc0002 0x109 0xc70007 0xb8 0x38 0x9c 0xcf0003 0x9c 0x18 0xda0007 0xf5 0x108 0x5f 0xec0005 0x0 0x0 0x194a8a524e0 0x5f 0x0 0x0 0xf30007 0x32 0x38 0x2d 0xfd0003 0x2d 0x18 0x11d0007 0x14 0x58 0x4b 0x1220004 0x0 0x0 0x194a8a59cb0 0x4b 0x0 0x0 0x12f0002 0x5f 0x1320002 0x5f 0x1370003 0xf5 0xfffffffffffffc18 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x6 0x0 0x0 0x0 0x0 0x0 0x0 oops 3 39 org/gradle/internal/reflect/MethodSet$MethodKey 113 java/util/LinkedHashMap 131 java/util/HashMap$TreeNode methods 0 +ciMethodData java/util/HashMap$TreeNode getTreeNode (ILjava/lang/Object;)Ljava/util/HashMap$TreeNode; 1 557 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 32 0x40007 0x222 0x70 0x0 0x80005 0x0 0x0 0x0 0x0 0x0 0x0 0xb0003 0x0 0x18 0x120005 0x222 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x3 0xffffffffffffffff 0x0 0xffffffffffffffff oops 0 methods 0 +ciMethodData java/util/HashMap$TreeNode root ()Ljava/util/HashMap$TreeNode; 1 0 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 16 0x80007 0x0 0x20 0x0 0xf0003 0x0 0xffffffffffffffe0 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x1 0x0 oops 0 methods 0 +ciMethodData java/util/HashMap$TreeNode find (ILjava/lang/Object;Ljava/lang/Class;)Ljava/util/HashMap$TreeNode; 2 2343 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 100 0x1a0007 0xfe7 0x38 0xa7 0x210003 0xa7 0x280 0x270007 0xf5f 0x38 0x88 0x2e0003 0x88 0x248 0x3a0007 0x0 0x98 0xf5f 0x3e0007 0x0 0x78 0xf5f 0x440005 0x0 0x0 0x194b42819d0 0xf5f 0x0 0x0 0x470007 0xda2 0x20 0x1bd 0x4f0007 0x74f 0x38 0x653 0x560003 0x653 0x178 0x5b0007 0x63a 0x38 0x115 0x620003 0x115 0x140 0x660007 0x0 0x50 0x63a 0x6a0002 0x63a 0x6f0007 0x63a 0xa0 0x0 0x760002 0x0 0x7c0007 0x0 0x70 0x0 0x810007 0x0 0x38 0x0 0x860003 0x0 0x18 0x8d0003 0x0 0x70 0x950005 0x63a 0x0 0x0 0x0 0x0 0x0 0x9b0007 0x494 0x20 0x1a6 0xa70007 0x788 0xfffffffffffffd60 0x5a3 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x4 0x0 0x0 0x0 0x0 oops 1 25 org/gradle/internal/reflect/MethodSet$MethodKey methods 0 +ciMethodData java/util/Arrays equals ([I[I)Z 2 1615 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 35 0x20007 0x51e 0x20 0x12f 0x80007 0x0 0x40 0x51e 0xc0007 0x51e 0x20 0x0 0x170007 0x51e 0x20 0x0 0x1f0002 0x51e 0x220007 0x0 0x38 0x51e 0x260003 0x51e 0x18 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x2 0x0 0x0 oops 0 methods 0 +ciMethodData jdk/internal/util/ArraysSupport mismatch ([I[II)I 2 1312 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 36 0x40007 0x370 0x70 0x116 0xd0007 0x116 0x20 0x0 0x200002 0x116 0x250007 0x116 0x20 0x0 0x320007 0x486 0x58 0x370 0x3b0007 0x370 0x20 0x0 0x430003 0x370 0xffffffffffffffc0 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x3 0x0 0x0 0x0 oops 0 methods 0 +ciMethod org/antlr/v4/runtime/atn/PredictionContext (I)V 3177 1 11873 0 0 +ciMethod org/antlr/v4/runtime/atn/PredictionContext hashCode ()I 2441 1 305 0 0 +ciMethod org/antlr/v4/runtime/atn/PredictionContext equals (Ljava/lang/Object;)Z 0 0 1 0 -1 +ciMethod org/antlr/v4/runtime/atn/PredictionContext calculateHashCode ([Lorg/antlr/v4/runtime/atn/PredictionContext;[I)I 2305 10257 3715 0 832 +ciMethod org/antlr/v4/runtime/atn/PredictionContext merge (Lorg/antlr/v4/runtime/atn/PredictionContext;Lorg/antlr/v4/runtime/atn/PredictionContext;ZLorg/antlr/v4/runtime/misc/DoubleKeyMap;)Lorg/antlr/v4/runtime/atn/PredictionContext; 1 1 7712 0 1568 +ciMethod org/antlr/v4/runtime/atn/PredictionContext mergeSingletons (Lorg/antlr/v4/runtime/atn/SingletonPredictionContext;Lorg/antlr/v4/runtime/atn/SingletonPredictionContext;ZLorg/antlr/v4/runtime/misc/DoubleKeyMap;)Lorg/antlr/v4/runtime/atn/PredictionContext; 881 1 6906 0 -1 +ciMethod org/antlr/v4/runtime/atn/PredictionContext mergeRoot (Lorg/antlr/v4/runtime/atn/SingletonPredictionContext;Lorg/antlr/v4/runtime/atn/SingletonPredictionContext;Z)Lorg/antlr/v4/runtime/atn/PredictionContext; 1921 1 3067 0 -1 +ciMethod org/antlr/v4/runtime/atn/PredictionContext mergeArrays (Lorg/antlr/v4/runtime/atn/ArrayPredictionContext;Lorg/antlr/v4/runtime/atn/ArrayPredictionContext;ZLorg/antlr/v4/runtime/misc/DoubleKeyMap;)Lorg/antlr/v4/runtime/atn/PredictionContext; 1633 7161 8370 0 -1 +ciMethod org/antlr/v4/runtime/atn/PredictionContext combineCommonParents ([Lorg/antlr/v4/runtime/atn/PredictionContext;)V 2001 17681 3750 0 4672 +ciMethod org/antlr/v4/runtime/atn/SingletonPredictionContext create (Lorg/antlr/v4/runtime/atn/PredictionContext;I)Lorg/antlr/v4/runtime/atn/SingletonPredictionContext; 41 1 3828 0 -1 +ciMethod org/antlr/v4/runtime/atn/ArrayPredictionContext (Lorg/antlr/v4/runtime/atn/SingletonPredictionContext;)V 1513 1 2740 0 0 +ciMethod org/antlr/v4/runtime/atn/ArrayPredictionContext ([Lorg/antlr/v4/runtime/atn/PredictionContext;[I)V 2337 1 8044 0 1280 +ciMethod org/antlr/v4/runtime/atn/ArrayPredictionContext equals (Ljava/lang/Object;)Z 2225 1 6544 0 1024 +ciMethod org/antlr/v4/runtime/misc/MurmurHash initialize (I)I 3593 1 29470 0 32 +ciMethod org/antlr/v4/runtime/misc/MurmurHash update (II)I 4097 1 5342 0 96 +ciMethod org/antlr/v4/runtime/misc/MurmurHash update (ILjava/lang/Object;)I 4097 1 41627 0 0 +ciMethod org/antlr/v4/runtime/misc/MurmurHash finish (II)I 4097 1 1642 0 96 +ciMethodData org/antlr/v4/runtime/misc/MurmurHash update (II)I 2 5342 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 148 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 8 0x0 0x0 0x0 0x0 0x9 0x2 0x0 0x0 oops 0 methods 0 +ciMethodData org/antlr/v4/runtime/misc/MurmurHash update (ILjava/lang/Object;)I 2 41627 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 148 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 26 0x20007 0x95b 0x70 0x9740 0x60005 0x6900 0x0 0x194b45b1f90 0x280f 0x194b4614170 0x631 0x90003 0x9740 0x18 0xd0002 0xa09b 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x2 0x0 0x0 oops 2 7 org/antlr/v4/runtime/atn/SemanticContext$Predicate 9 org/antlr/v4/runtime/atn/EmptyPredictionContext methods 0 +ciMethodData org/antlr/v4/runtime/misc/MurmurHash initialize (I)I 2 29470 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 4 0x0 0x9 0x1 0x0 oops 0 methods 0 +ciMethodData org/antlr/v4/runtime/misc/MurmurHash finish (II)I 2 1642 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 254 127 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 7 0x0 0x0 0x0 0x9 0x2 0x0 0x0 oops 0 methods 0 +ciMethodData org/antlr/v4/runtime/atn/PredictionContext merge (Lorg/antlr/v4/runtime/atn/PredictionContext;Lorg/antlr/v4/runtime/atn/PredictionContext;ZLorg/antlr/v4/runtime/misc/DoubleKeyMap;)Lorg/antlr/v4/runtime/atn/PredictionContext; 2 7712 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 161 0x30007 0x1e20 0x70 0x0 0x70007 0x0 0x40 0x0 0xb0007 0x0 0x30 0x0 0x120002 0x0 0x180007 0x962 0x78 0x14be 0x1d0005 0x5c 0x0 0x194b46140c0 0x98f 0x194b46134e0 0xad3 0x200007 0x148b 0x20 0x33 0x260004 0xfffffffffffff52d 0x0 0x194b46140c0 0x95c 0x194b46134e0 0x11b 0x290007 0xad3 0xf8 0x9b8 0x2d0004 0x0 0x0 0x194b46140c0 0x97a 0x194b4614170 0x3e 0x300007 0x0 0xa0 0x9b8 0x340004 0x0 0x0 0x194b46140c0 0x95c 0x194b4614170 0x5c 0x380004 0x0 0x0 0x194b46140c0 0x97a 0x194b4614170 0x3e 0x3d0002 0x9b8 0x420007 0x0 0xd0 0xad3 0x460004 0xfffffffffffff52d 0x0 0x194b46134e0 0x11b 0x0 0x0 0x490007 0xad3 0x20 0x0 0x4f0004 0xfffffffffffff54c 0x0 0x194b46140c0 0x117 0x194b4614170 0x1f 0x520007 0xab4 0x20 0x1f 0x580004 0xfffffffffffff54c 0x0 0x194b46134e0 0x117 0x0 0x0 0x5b0007 0xab4 0x68 0x0 0x630004 0x0 0x0 0x0 0x0 0x0 0x0 0x660002 0x0 0x6b0004 0x0 0x0 0x194b46140c0 0xab4 0x0 0x0 0x6e0007 0x0 0x68 0xab4 0x760004 0x0 0x0 0x194b46140c0 0xab4 0x0 0x0 0x790002 0xab4 0x7e0004 0x0 0x0 0x194b46134e0 0xab4 0x0 0x0 0x820004 0x0 0x0 0x194b46134e0 0xab4 0x0 0x0 0x870002 0xab4 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x4 0x0 0x0 0x0 0x0 oops 18 21 org/antlr/v4/runtime/atn/SingletonPredictionContext 23 org/antlr/v4/runtime/atn/ArrayPredictionContext 32 org/antlr/v4/runtime/atn/SingletonPredictionContext 34 org/antlr/v4/runtime/atn/ArrayPredictionContext 43 org/antlr/v4/runtime/atn/SingletonPredictionContext 45 org/antlr/v4/runtime/atn/EmptyPredictionContext 54 org/antlr/v4/runtime/atn/SingletonPredictionContext 56 org/antlr/v4/runtime/atn/EmptyPredictionContext 61 org/antlr/v4/runtime/atn/SingletonPredictionContext 63 org/antlr/v4/runtime/atn/EmptyPredictionContext 74 org/antlr/v4/runtime/atn/ArrayPredictionContext 85 org/antlr/v4/runtime/atn/SingletonPredictionContext 87 org/antlr/v4/runtime/atn/EmptyPredictionContext 96 org/antlr/v4/runtime/atn/ArrayPredictionContext 116 org/antlr/v4/runtime/atn/SingletonPredictionContext 127 org/antlr/v4/runtime/atn/SingletonPredictionContext 136 org/antlr/v4/runtime/atn/ArrayPredictionContext 143 org/antlr/v4/runtime/atn/ArrayPredictionContext methods 0 +ciMethod org/antlr/v4/runtime/misc/DoubleKeyMap put (Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; 129 1 5287 0 0 +ciMethod org/antlr/v4/runtime/misc/DoubleKeyMap get (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; 257 1 20732 0 0 +ciMethodData org/antlr/v4/runtime/atn/PredictionContext mergeArrays (Lorg/antlr/v4/runtime/atn/ArrayPredictionContext;Lorg/antlr/v4/runtime/atn/ArrayPredictionContext;ZLorg/antlr/v4/runtime/misc/DoubleKeyMap;)Lorg/antlr/v4/runtime/atn/PredictionContext; 2 14941 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 300 0x10007 0x128 0x140 0x1ebe 0x70005 0x0 0x0 0x194b46135d0 0x1ebe 0x0 0x0 0xa0104 0x0 0x0 0x194b46134e0 0x1036 0x0 0x0 0x110007 0xe88 0x20 0x1036 0x1a0005 0x0 0x0 0x194b46135d0 0xe88 0x0 0x0 0x1d0104 0x0 0x0 0x0 0x0 0x0 0x0 0x240007 0xe88 0x20 0x0 0x590007 0x743 0x338 0x2dd6 0x630007 0x86d 0x318 0x2569 0x860007 0x1908 0x238 0xc61 0x960007 0xc61 0x78 0x0 0x9b0007 0x0 0x58 0x0 0xa00007 0x0 0x38 0x0 0xa40003 0x0 0x18 0xac0007 0x0 0xb0 0xc61 0xb10007 0x0 0x90 0xc61 0xb80005 0x19 0x0 0x194b46134e0 0x658 0x194b46140c0 0x5f0 0xbb0007 0xc34 0x38 0x2d 0xbf0003 0x2d 0x18 0xc70007 0x0 0x40 0xc61 0xcc0007 0xc34 0x70 0x2d 0xd50004 0x0 0x0 0x194b4614170 0xf 0x194b46140c0 0x1e 0xdd0003 0x2d 0x60 0xe60002 0xc34 0xf10004 0x0 0x0 0x194b46134e0 0x7af 0x194b46140c0 0x471 0xff0003 0xc61 0xc0 0x1100007 0x21c 0x70 0x16ec 0x1190004 0x0 0x0 0x194b46140c0 0xf37 0x194b46134e0 0x60b 0x1290003 0x16ec 0x50 0x1320004 0x0 0x0 0x194b4614170 0x26 0x194b46140c0 0x1f5 0x1450003 0x2569 0xfffffffffffffce0 0x14f0007 0x743 0xa8 0x86d 0x15d0007 0x86d 0x70 0x1041 0x16b0004 0x0 0x0 0x194b46140c0 0xcf3 0x194b4614170 0x84 0x17e0003 0x1041 0xffffffffffffffa8 0x1810003 0x86d 0x88 0x18f0007 0x743 0x70 0x133 0x19d0004 0x0 0x0 0x194b4614170 0x28 0x194b46140c0 0x108 0x1b00003 0x133 0xffffffffffffffa8 0x1b80007 0x34f 0x100 0xc61 0x1be0007 0xc61 0x88 0x0 0x1c90002 0x0 0x1cf0007 0x0 0x58 0x0 0x1d70005 0x0 0x0 0x0 0x0 0x0 0x0 0x1e20002 0xc61 0x1e50004 0x0 0x0 0x194b4614220 0xc61 0x0 0x0 0x1ee0002 0xc61 0x1fb0002 0xfb0 0x2030005 0x0 0x0 0x194b46134e0 0xfb0 0x0 0x0 0x2060007 0xddb 0x78 0x1d5 0x20a0007 0xa 0x58 0x1cb 0x2110005 0x0 0x0 0x194b46135d0 0x1cb 0x0 0x0 0x21a0005 0x0 0x0 0x194b46134e0 0xddb 0x0 0x0 0x21d0007 0xddb 0x78 0x0 0x2210007 0x0 0x58 0x0 0x2280005 0x0 0x0 0x0 0x0 0x0 0x0 0x2300002 0xddb 0x2340007 0x11e 0x58 0xcbd 0x23c0005 0x0 0x0 0x194b46135d0 0xcbd 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x4 0x0 0x0 0x0 0x0 oops 22 7 org/antlr/v4/runtime/misc/DoubleKeyMap 14 org/antlr/v4/runtime/atn/ArrayPredictionContext 25 org/antlr/v4/runtime/misc/DoubleKeyMap 78 org/antlr/v4/runtime/atn/ArrayPredictionContext 80 org/antlr/v4/runtime/atn/SingletonPredictionContext 100 org/antlr/v4/runtime/atn/EmptyPredictionContext 102 org/antlr/v4/runtime/atn/SingletonPredictionContext 112 org/antlr/v4/runtime/atn/ArrayPredictionContext 114 org/antlr/v4/runtime/atn/SingletonPredictionContext 126 org/antlr/v4/runtime/atn/SingletonPredictionContext 128 org/antlr/v4/runtime/atn/ArrayPredictionContext 136 org/antlr/v4/runtime/atn/EmptyPredictionContext 138 org/antlr/v4/runtime/atn/SingletonPredictionContext 154 org/antlr/v4/runtime/atn/SingletonPredictionContext 156 org/antlr/v4/runtime/atn/EmptyPredictionContext 171 org/antlr/v4/runtime/atn/EmptyPredictionContext 173 org/antlr/v4/runtime/atn/SingletonPredictionContext 204 [Lorg/antlr/v4/runtime/atn/PredictionContext; 215 org/antlr/v4/runtime/atn/ArrayPredictionContext 230 org/antlr/v4/runtime/misc/DoubleKeyMap 237 org/antlr/v4/runtime/atn/ArrayPredictionContext 265 org/antlr/v4/runtime/misc/DoubleKeyMap methods 0 +ciMethodData org/antlr/v4/runtime/atn/PredictionContext (I)V 2 11877 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 10 0x10002 0x2cd8 0x0 0x0 0x0 0x0 0x9 0x2 0x6 0x0 oops 0 methods 0 +ciMethodData org/antlr/v4/runtime/atn/ArrayPredictionContext equals (Ljava/lang/Object;)Z 2 6544 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 65 0x20007 0x17e7 0x20 0x93 0x80004 0xfffffffffffff62a 0x0 0x194b46140c0 0x61 0x194b46134e0 0xe11 0xb0007 0xe11 0x20 0x9d6 0x110005 0xe11 0x0 0x0 0x0 0x0 0x0 0x150005 0x0 0x0 0x194b46134e0 0xe11 0x0 0x0 0x180007 0x64d 0x20 0x7c4 0x1e0004 0x0 0x0 0x194b46134e0 0x64d 0x0 0x0 0x2a0002 0x64d 0x2d0007 0x0 0x68 0x64d 0x380002 0x64d 0x3b0007 0x0 0x38 0x64d 0x3f0003 0x64d 0x18 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x2 0x0 0xffffffffffffffff oops 4 7 org/antlr/v4/runtime/atn/SingletonPredictionContext 9 org/antlr/v4/runtime/atn/ArrayPredictionContext 25 org/antlr/v4/runtime/atn/ArrayPredictionContext 36 org/antlr/v4/runtime/atn/ArrayPredictionContext methods 0 +ciMethodData org/antlr/v4/runtime/atn/PredictionContext calculateHashCode ([Lorg/antlr/v4/runtime/atn/PredictionContext;[I)I 2 15664 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 32 0x10002 0xd63 0x120007 0xd63 0x48 0x1c17 0x1e0002 0x1c17 0x250003 0x1c17 0xffffffffffffffd0 0x350007 0xd63 0x48 0x1c17 0x410002 0x1c17 0x480003 0x1c17 0xffffffffffffffd0 0x500002 0xd63 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x2 0x0 0x0 oops 0 methods 0 +ciMethodData org/antlr/v4/runtime/atn/ArrayPredictionContext ([Lorg/antlr/v4/runtime/atn/PredictionContext;[I)V 2 8044 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 43 0x30002 0x1e48 0x60002 0x1e48 0xc0007 0x1e48 0x70 0x0 0x100007 0x0 0x40 0x0 0x150007 0x0 0x30 0x0 0x1c0002 0x0 0x230007 0x1e48 0x70 0x0 0x270007 0x0 0x40 0x0 0x2c0007 0x0 0x30 0x0 0x330002 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x3 0xe 0x0 0x0 oops 0 methods 0 +ciMethodData org/antlr/v4/runtime/atn/PredictionContext mergeSingletons (Lorg/antlr/v4/runtime/atn/SingletonPredictionContext;Lorg/antlr/v4/runtime/atn/SingletonPredictionContext;ZLorg/antlr/v4/runtime/misc/DoubleKeyMap;)Lorg/antlr/v4/runtime/atn/PredictionContext; 2 8498 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 211 0x10007 0x3a7 0x140 0x1d1d 0x70005 0x0 0x0 0x194b46135d0 0x1d1d 0x0 0x0 0xa0104 0x0 0x0 0x194b46134e0 0x665 0x194b46140c0 0x9a7 0x110007 0xc3c 0x20 0x10e1 0x1a0005 0x0 0x0 0x194b46135d0 0xc3c 0x0 0x0 0x1d0104 0x0 0x0 0x194b4614170 0x19 0x0 0x0 0x240007 0xc23 0x20 0x19 0x2d0002 0xfca 0x340007 0xf9e 0x78 0x2c 0x380007 0xe 0x58 0x1e 0x400005 0x0 0x0 0x194b46135d0 0x1e 0x0 0x0 0x4f0007 0x412 0xd8 0xb8c 0x5c0002 0xb8c 0x670007 0x646 0x20 0x546 0x720007 0x643 0x20 0x3 0x7d0002 0x643 0x830007 0x272 0x58 0x3d1 0x8b0005 0x0 0x0 0x194b46135d0 0x3d1 0x0 0x0 0x970007 0x0 0x98 0x412 0x9e0007 0x0 0x78 0x412 0xa90005 0x69 0x0 0x194b4614170 0xaa 0x194b46140c0 0x2ff 0xac0007 0x33d 0x20 0xd5 0xb70007 0x33d 0x118 0xd5 0xd50007 0xc4 0x20 0x11 0xf00004 0x0 0x0 0x194b4614170 0xa2 0x194b46140c0 0x33 0xf50004 0x0 0x0 0x194b4614170 0xa2 0x194b46140c0 0x33 0x1000002 0xd5 0x1060007 0x85 0x58 0x50 0x10e0005 0x0 0x0 0x194b46135d0 0x50 0x0 0x0 0x1320004 0x0 0x0 0x194b46140c0 0x2cc 0x194b46134e0 0x69 0x1390004 0x0 0x0 0x194b46140c0 0x316 0x194b4614170 0x1b 0x1440007 0x22d 0x90 0x110 0x1610004 0x0 0x0 0x194b46140c0 0x105 0x194b4614170 0xb 0x1680004 0x0 0x0 0x194b46140c0 0xe4 0x194b46134e0 0x28 0x1730002 0x33d 0x1790007 0xa2 0x58 0x29b 0x1810005 0x0 0x0 0x194b46135d0 0x29b 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x4 0x0 0x0 0x0 0x0 oops 23 7 org/antlr/v4/runtime/misc/DoubleKeyMap 14 org/antlr/v4/runtime/atn/ArrayPredictionContext 16 org/antlr/v4/runtime/atn/SingletonPredictionContext 25 org/antlr/v4/runtime/misc/DoubleKeyMap 32 org/antlr/v4/runtime/atn/EmptyPredictionContext 53 org/antlr/v4/runtime/misc/DoubleKeyMap 80 org/antlr/v4/runtime/misc/DoubleKeyMap 95 org/antlr/v4/runtime/atn/EmptyPredictionContext 97 org/antlr/v4/runtime/atn/SingletonPredictionContext 114 org/antlr/v4/runtime/atn/EmptyPredictionContext 116 org/antlr/v4/runtime/atn/SingletonPredictionContext 121 org/antlr/v4/runtime/atn/EmptyPredictionContext 123 org/antlr/v4/runtime/atn/SingletonPredictionContext 134 org/antlr/v4/runtime/misc/DoubleKeyMap 141 org/antlr/v4/runtime/atn/SingletonPredictionContext 143 org/antlr/v4/runtime/atn/ArrayPredictionContext 148 org/antlr/v4/runtime/atn/SingletonPredictionContext 150 org/antlr/v4/runtime/atn/EmptyPredictionContext 159 org/antlr/v4/runtime/atn/SingletonPredictionContext 161 org/antlr/v4/runtime/atn/EmptyPredictionContext 166 org/antlr/v4/runtime/atn/SingletonPredictionContext 168 org/antlr/v4/runtime/atn/ArrayPredictionContext 179 org/antlr/v4/runtime/misc/DoubleKeyMap methods 0 +ciMethodData org/antlr/v4/runtime/atn/ArrayPredictionContext (Lorg/antlr/v4/runtime/atn/SingletonPredictionContext;)V 2 2740 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 19 0xb0004 0x0 0x0 0x194b4614170 0x74 0x194b46140c0 0x97d 0x160002 0x9f7 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x2 0x0 0x0 oops 2 3 org/antlr/v4/runtime/atn/EmptyPredictionContext 5 org/antlr/v4/runtime/atn/SingletonPredictionContext methods 0 +ciMethodData org/antlr/v4/runtime/atn/PredictionContext combineCommonParents ([Lorg/antlr/v4/runtime/atn/PredictionContext;)V 2 28620 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 64 0x40002 0xf01 0xd0007 0xf01 0xc8 0x3395 0x160005 0x0 0x0 0x194a8a53680 0x3395 0x0 0x0 0x1b0007 0x1db 0x58 0x31ba 0x210005 0x0 0x0 0x194a8a53680 0x31ba 0x0 0x0 0x2a0003 0x3395 0xffffffffffffff50 0x320007 0xf01 0xe0 0x3395 0x3b0005 0x0 0x0 0x194a8a53680 0x3395 0x0 0x0 0x400004 0x0 0x0 0x194b4614170 0x22b 0x194b46140c0 0x21bf 0x430004 0x0 0x0 0x194b4614170 0x22b 0x194b46140c0 0x21bf 0x470003 0x3395 0xffffffffffffff38 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x1 0xffffffffffffffff oops 7 9 java/util/HashMap 20 java/util/HashMap 34 java/util/HashMap 41 org/antlr/v4/runtime/atn/EmptyPredictionContext 43 org/antlr/v4/runtime/atn/SingletonPredictionContext 48 org/antlr/v4/runtime/atn/EmptyPredictionContext 50 org/antlr/v4/runtime/atn/SingletonPredictionContext methods 0 +ciMethodData org/antlr/v4/runtime/misc/DoubleKeyMap get (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; 2 20732 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 254 127 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 36 0x50005 0x0 0x0 0x194a8a524e0 0x50dc 0x0 0x0 0xa0104 0x0 0x0 0x194a8a524e0 0x2249 0x0 0x0 0xf0007 0x2249 0x20 0x2e93 0x160005 0x0 0x0 0x194a8a524e0 0x2249 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x3 0x0 0x0 0x0 oops 3 3 java/util/LinkedHashMap 10 java/util/LinkedHashMap 21 java/util/LinkedHashMap methods 0 +ciMethodData org/antlr/v4/runtime/misc/DoubleKeyMap put (Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; 2 5502 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 254 127 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 56 0x50005 0x0 0x0 0x194a8a524e0 0x156d 0x0 0x0 0xa0104 0x0 0x0 0x194a8a524e0 0x203 0x0 0x0 0x140007 0x203 0x80 0x136a 0x1b0002 0x136a 0x270005 0x0 0x0 0x194a8a524e0 0x136a 0x0 0x0 0x2d0003 0x136a 0x50 0x330005 0x0 0x0 0x194a8a524e0 0x203 0x0 0x0 0x3e0005 0x0 0x0 0x194a8a524e0 0x156d 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x4 0x0 0xffffffffffffffff 0xffffffffffffffff 0xffffffffffffffff oops 5 3 java/util/LinkedHashMap 10 java/util/LinkedHashMap 23 java/util/LinkedHashMap 33 java/util/LinkedHashMap 40 java/util/LinkedHashMap methods 0 +compile org/antlr/v4/runtime/atn/PredictionContext mergeArrays (Lorg/antlr/v4/runtime/atn/ArrayPredictionContext;Lorg/antlr/v4/runtime/atn/ArrayPredictionContext;ZLorg/antlr/v4/runtime/misc/DoubleKeyMap;)Lorg/antlr/v4/runtime/atn/PredictionContext; -1 4 inline 162 0 -1 org/antlr/v4/runtime/atn/PredictionContext mergeArrays (Lorg/antlr/v4/runtime/atn/ArrayPredictionContext;Lorg/antlr/v4/runtime/atn/ArrayPredictionContext;ZLorg/antlr/v4/runtime/misc/DoubleKeyMap;)Lorg/antlr/v4/runtime/atn/PredictionContext; 1 7 org/antlr/v4/runtime/misc/DoubleKeyMap get (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; 2 5 java/util/LinkedHashMap get (Ljava/lang/Object;)Ljava/lang/Object; 3 2 java/util/HashMap hash (Ljava/lang/Object;)I 4 9 org/antlr/v4/runtime/atn/PredictionContext hashCode ()I 3 6 java/util/HashMap getNode (ILjava/lang/Object;)Ljava/util/HashMap$Node; 4 59 org/antlr/v4/runtime/atn/ArrayPredictionContext equals (Ljava/lang/Object;)Z 5 17 org/antlr/v4/runtime/atn/PredictionContext hashCode ()I 5 21 org/antlr/v4/runtime/atn/PredictionContext hashCode ()I 5 42 java/util/Arrays equals ([I[I)Z 6 31 jdk/internal/util/ArraysSupport mismatch ([I[II)I 5 56 java/util/Arrays equals ([Ljava/lang/Object;[Ljava/lang/Object;)Z 6 41 java/util/Objects equals (Ljava/lang/Object;Ljava/lang/Object;)Z 4 94 java/util/HashMap$TreeNode getTreeNode (ILjava/lang/Object;)Ljava/util/HashMap$TreeNode; 4 126 org/antlr/v4/runtime/atn/ArrayPredictionContext equals (Ljava/lang/Object;)Z 5 17 org/antlr/v4/runtime/atn/PredictionContext hashCode ()I 5 21 org/antlr/v4/runtime/atn/PredictionContext hashCode ()I 5 42 java/util/Arrays equals ([I[I)Z 6 31 jdk/internal/util/ArraysSupport mismatch ([I[II)I 5 56 java/util/Arrays equals ([Ljava/lang/Object;[Ljava/lang/Object;)Z 6 41 java/util/Objects equals (Ljava/lang/Object;Ljava/lang/Object;)Z 2 22 java/util/LinkedHashMap get (Ljava/lang/Object;)Ljava/lang/Object; 3 2 java/util/HashMap hash (Ljava/lang/Object;)I 4 9 org/antlr/v4/runtime/atn/PredictionContext hashCode ()I 3 6 java/util/HashMap getNode (ILjava/lang/Object;)Ljava/util/HashMap$Node; 4 59 org/antlr/v4/runtime/atn/ArrayPredictionContext equals (Ljava/lang/Object;)Z 5 17 org/antlr/v4/runtime/atn/PredictionContext hashCode ()I 5 21 org/antlr/v4/runtime/atn/PredictionContext hashCode ()I 5 42 java/util/Arrays equals ([I[I)Z 6 31 jdk/internal/util/ArraysSupport mismatch ([I[II)I 5 56 java/util/Arrays equals ([Ljava/lang/Object;[Ljava/lang/Object;)Z 6 41 java/util/Objects equals (Ljava/lang/Object;Ljava/lang/Object;)Z 4 94 java/util/HashMap$TreeNode getTreeNode (ILjava/lang/Object;)Ljava/util/HashMap$TreeNode; 4 126 org/antlr/v4/runtime/atn/ArrayPredictionContext equals (Ljava/lang/Object;)Z 5 17 org/antlr/v4/runtime/atn/PredictionContext hashCode ()I 5 21 org/antlr/v4/runtime/atn/PredictionContext hashCode ()I 5 42 java/util/Arrays equals ([I[I)Z 6 31 jdk/internal/util/ArraysSupport mismatch ([I[II)I 5 56 java/util/Arrays equals ([Ljava/lang/Object;[Ljava/lang/Object;)Z 6 41 java/util/Objects equals (Ljava/lang/Object;Ljava/lang/Object;)Z 1 26 org/antlr/v4/runtime/misc/DoubleKeyMap get (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; 2 5 java/util/LinkedHashMap get (Ljava/lang/Object;)Ljava/lang/Object; 3 2 java/util/HashMap hash (Ljava/lang/Object;)I 4 9 org/antlr/v4/runtime/atn/PredictionContext hashCode ()I 3 6 java/util/HashMap getNode (ILjava/lang/Object;)Ljava/util/HashMap$Node; 4 59 org/antlr/v4/runtime/atn/ArrayPredictionContext equals (Ljava/lang/Object;)Z 5 17 org/antlr/v4/runtime/atn/PredictionContext hashCode ()I 5 21 org/antlr/v4/runtime/atn/PredictionContext hashCode ()I 5 42 java/util/Arrays equals ([I[I)Z 6 31 jdk/internal/util/ArraysSupport mismatch ([I[II)I 5 56 java/util/Arrays equals ([Ljava/lang/Object;[Ljava/lang/Object;)Z 6 41 java/util/Objects equals (Ljava/lang/Object;Ljava/lang/Object;)Z 4 94 java/util/HashMap$TreeNode getTreeNode (ILjava/lang/Object;)Ljava/util/HashMap$TreeNode; 4 126 org/antlr/v4/runtime/atn/ArrayPredictionContext equals (Ljava/lang/Object;)Z 5 17 org/antlr/v4/runtime/atn/PredictionContext hashCode ()I 5 21 org/antlr/v4/runtime/atn/PredictionContext hashCode ()I 5 42 java/util/Arrays equals ([I[I)Z 6 31 jdk/internal/util/ArraysSupport mismatch ([I[II)I 5 56 java/util/Arrays equals ([Ljava/lang/Object;[Ljava/lang/Object;)Z 6 41 java/util/Objects equals (Ljava/lang/Object;Ljava/lang/Object;)Z 2 22 java/util/LinkedHashMap get (Ljava/lang/Object;)Ljava/lang/Object; 3 2 java/util/HashMap hash (Ljava/lang/Object;)I 4 9 org/antlr/v4/runtime/atn/PredictionContext hashCode ()I 3 6 java/util/HashMap getNode (ILjava/lang/Object;)Ljava/util/HashMap$Node; 4 59 org/antlr/v4/runtime/atn/ArrayPredictionContext equals (Ljava/lang/Object;)Z 5 17 org/antlr/v4/runtime/atn/PredictionContext hashCode ()I 5 21 org/antlr/v4/runtime/atn/PredictionContext hashCode ()I 5 42 java/util/Arrays equals ([I[I)Z 6 31 jdk/internal/util/ArraysSupport mismatch ([I[II)I 5 56 java/util/Arrays equals ([Ljava/lang/Object;[Ljava/lang/Object;)Z 6 41 java/util/Objects equals (Ljava/lang/Object;Ljava/lang/Object;)Z 4 94 java/util/HashMap$TreeNode getTreeNode (ILjava/lang/Object;)Ljava/util/HashMap$TreeNode; 4 126 org/antlr/v4/runtime/atn/ArrayPredictionContext equals (Ljava/lang/Object;)Z 5 17 org/antlr/v4/runtime/atn/PredictionContext hashCode ()I 5 21 org/antlr/v4/runtime/atn/PredictionContext hashCode ()I 5 42 java/util/Arrays equals ([I[I)Z 6 31 jdk/internal/util/ArraysSupport mismatch ([I[II)I 5 56 java/util/Arrays equals ([Ljava/lang/Object;[Ljava/lang/Object;)Z 6 41 java/util/Objects equals (Ljava/lang/Object;Ljava/lang/Object;)Z 1 230 org/antlr/v4/runtime/atn/PredictionContext merge (Lorg/antlr/v4/runtime/atn/PredictionContext;Lorg/antlr/v4/runtime/atn/PredictionContext;ZLorg/antlr/v4/runtime/misc/DoubleKeyMap;)Lorg/antlr/v4/runtime/atn/PredictionContext; 2 121 org/antlr/v4/runtime/atn/ArrayPredictionContext (Lorg/antlr/v4/runtime/atn/SingletonPredictionContext;)V 3 22 org/antlr/v4/runtime/atn/ArrayPredictionContext ([Lorg/antlr/v4/runtime/atn/PredictionContext;[I)V 4 3 org/antlr/v4/runtime/atn/PredictionContext calculateHashCode ([Lorg/antlr/v4/runtime/atn/PredictionContext;[I)I 5 1 org/antlr/v4/runtime/misc/MurmurHash initialize (I)I 5 30 org/antlr/v4/runtime/misc/MurmurHash update (ILjava/lang/Object;)I 6 6 org/antlr/v4/runtime/atn/PredictionContext hashCode ()I 6 13 org/antlr/v4/runtime/misc/MurmurHash update (II)I 5 65 org/antlr/v4/runtime/misc/MurmurHash update (II)I 5 80 org/antlr/v4/runtime/misc/MurmurHash finish (II)I 4 6 org/antlr/v4/runtime/atn/PredictionContext (I)V 5 1 java/lang/Object ()V 1 482 java/util/Arrays copyOf ([Ljava/lang/Object;I)[Ljava/lang/Object; 1 494 java/util/Arrays copyOf ([II)[I 1 507 org/antlr/v4/runtime/atn/ArrayPredictionContext ([Lorg/antlr/v4/runtime/atn/PredictionContext;[I)V 2 3 org/antlr/v4/runtime/atn/PredictionContext calculateHashCode ([Lorg/antlr/v4/runtime/atn/PredictionContext;[I)I 3 1 org/antlr/v4/runtime/misc/MurmurHash initialize (I)I 3 30 org/antlr/v4/runtime/misc/MurmurHash update (ILjava/lang/Object;)I 4 6 org/antlr/v4/runtime/atn/PredictionContext hashCode ()I 4 13 org/antlr/v4/runtime/misc/MurmurHash update (II)I 3 65 org/antlr/v4/runtime/misc/MurmurHash update (II)I 3 80 org/antlr/v4/runtime/misc/MurmurHash finish (II)I 2 6 org/antlr/v4/runtime/atn/PredictionContext (I)V 3 1 java/lang/Object ()V 1 515 org/antlr/v4/runtime/atn/ArrayPredictionContext equals (Ljava/lang/Object;)Z 2 17 org/antlr/v4/runtime/atn/PredictionContext hashCode ()I 2 21 org/antlr/v4/runtime/atn/PredictionContext hashCode ()I 2 42 java/util/Arrays equals ([I[I)Z 3 31 jdk/internal/util/ArraysSupport mismatch ([I[II)I 2 56 java/util/Arrays equals ([Ljava/lang/Object;[Ljava/lang/Object;)Z 3 41 java/util/Objects equals (Ljava/lang/Object;Ljava/lang/Object;)Z 1 529 org/antlr/v4/runtime/misc/DoubleKeyMap put (Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; 2 5 java/util/LinkedHashMap get (Ljava/lang/Object;)Ljava/lang/Object; 3 2 java/util/HashMap hash (Ljava/lang/Object;)I 4 9 org/antlr/v4/runtime/atn/PredictionContext hashCode ()I 3 6 java/util/HashMap getNode (ILjava/lang/Object;)Ljava/util/HashMap$Node; 4 59 org/antlr/v4/runtime/atn/ArrayPredictionContext equals (Ljava/lang/Object;)Z 5 17 org/antlr/v4/runtime/atn/PredictionContext hashCode ()I 5 21 org/antlr/v4/runtime/atn/PredictionContext hashCode ()I 5 42 java/util/Arrays equals ([I[I)Z 6 31 jdk/internal/util/ArraysSupport mismatch ([I[II)I 5 56 java/util/Arrays equals ([Ljava/lang/Object;[Ljava/lang/Object;)Z 6 41 java/util/Objects equals (Ljava/lang/Object;Ljava/lang/Object;)Z 4 94 java/util/HashMap$TreeNode getTreeNode (ILjava/lang/Object;)Ljava/util/HashMap$TreeNode; 4 126 org/antlr/v4/runtime/atn/ArrayPredictionContext equals (Ljava/lang/Object;)Z 5 17 org/antlr/v4/runtime/atn/PredictionContext hashCode ()I 5 21 org/antlr/v4/runtime/atn/PredictionContext hashCode ()I 5 42 java/util/Arrays equals ([I[I)Z 6 31 jdk/internal/util/ArraysSupport mismatch ([I[II)I 5 56 java/util/Arrays equals ([Ljava/lang/Object;[Ljava/lang/Object;)Z 6 41 java/util/Objects equals (Ljava/lang/Object;Ljava/lang/Object;)Z 2 27 java/util/LinkedHashMap ()V 3 1 java/util/HashMap ()V 4 1 java/util/AbstractMap ()V 5 1 java/lang/Object ()V 2 39 java/util/HashMap put (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; 3 2 java/util/HashMap hash (Ljava/lang/Object;)I 4 9 org/antlr/v4/runtime/atn/PredictionContext hashCode ()I 3 9 java/util/HashMap putVal (ILjava/lang/Object;Ljava/lang/Object;ZZ)Ljava/lang/Object; 4 56 java/util/LinkedHashMap newNode (ILjava/lang/Object;Ljava/lang/Object;Ljava/util/HashMap$Node;)Ljava/util/HashMap$Node; 5 9 java/util/LinkedHashMap$Entry (ILjava/lang/Object;Ljava/lang/Object;Ljava/util/HashMap$Node;)V 6 6 java/util/HashMap$Node (ILjava/lang/Object;Ljava/lang/Object;Ljava/util/HashMap$Node;)V 7 1 java/lang/Object ()V 5 17 java/util/LinkedHashMap linkNodeLast (Ljava/util/LinkedHashMap$Entry;)V 4 91 org/antlr/v4/runtime/atn/ArrayPredictionContext equals (Ljava/lang/Object;)Z 5 17 org/antlr/v4/runtime/atn/PredictionContext hashCode ()I 5 21 org/antlr/v4/runtime/atn/PredictionContext hashCode ()I 5 42 java/util/Arrays equals ([I[I)Z 6 31 jdk/internal/util/ArraysSupport mismatch ([I[II)I 5 56 java/util/Arrays equals ([Ljava/lang/Object;[Ljava/lang/Object;)Z 6 41 java/util/Objects equals (Ljava/lang/Object;Ljava/lang/Object;)Z 4 203 org/antlr/v4/runtime/atn/ArrayPredictionContext equals (Ljava/lang/Object;)Z 5 17 org/antlr/v4/runtime/atn/PredictionContext hashCode ()I 5 21 org/antlr/v4/runtime/atn/PredictionContext hashCode ()I 5 42 java/util/Arrays equals ([I[I)Z 6 31 jdk/internal/util/ArraysSupport mismatch ([I[II)I 5 56 java/util/Arrays equals ([Ljava/lang/Object;[Ljava/lang/Object;)Z 6 41 java/util/Objects equals (Ljava/lang/Object;Ljava/lang/Object;)Z 4 152 java/util/LinkedHashMap newNode (ILjava/lang/Object;Ljava/lang/Object;Ljava/util/HashMap$Node;)Ljava/util/HashMap$Node; 5 9 java/util/LinkedHashMap$Entry (ILjava/lang/Object;Ljava/lang/Object;Ljava/util/HashMap$Node;)V 6 6 java/util/HashMap$Node (ILjava/lang/Object;Ljava/lang/Object;Ljava/util/HashMap$Node;)V 7 1 java/lang/Object ()V 5 17 java/util/LinkedHashMap linkNodeLast (Ljava/util/LinkedHashMap$Entry;)V diff --git a/replay_pid20140.log b/replay_pid20140.log new file mode 100644 index 0000000000..c50d26c7d1 --- /dev/null +++ b/replay_pid20140.log @@ -0,0 +1,7408 @@ +JvmtiExport can_access_local_variables 0 +JvmtiExport can_hotswap_or_post_breakpoint 0 +JvmtiExport can_post_on_exceptions 0 +# 249 ciObject found +instanceKlass org/gradle/api/plugins/JavaPluginConvention +instanceKlass org/gradle/internal/jvm/DefaultModularitySpec +instanceKlass org/gradle/api/jvm/ModularitySpec +instanceKlass org/gradle/api/java/archives/Manifest +instanceKlass org/gradle/jvm/toolchain/internal/DefaultJvmVendorSpec$$Lambda$620 +instanceKlass org/gradle/jvm/toolchain/internal/DefaultJvmVendorSpec$$Lambda$619 +instanceKlass org/gradle/internal/jvm/inspection/JvmVendor +instanceKlass org/gradle/jvm/toolchain/JvmVendorSpec +instanceKlass org/gradle/jvm/toolchain/JavaLanguageVersion +instanceKlass org/gradle/jvm/toolchain/JvmImplementation +instanceKlass org/gradle/jvm/toolchain/internal/DefaultToolchainSpec +instanceKlass org/gradle/jvm/toolchain/internal/ToolchainSpecInternal +instanceKlass org/gradle/api/reporting/ReportSpec +instanceKlass org/gradle/api/reporting/ReportingExtension +instanceKlass org/gradle/api/plugins/ReportingBasePlugin +instanceKlass org/gradle/api/internal/artifacts/type/DefaultArtifactTypeContainer$DefaultArtifactTypeDefinition +instanceKlass org/gradle/api/internal/tasks/DefaultSourceSetContainer$1 +instanceKlass org/gradle/api/plugins/JvmEcosystemPlugin +instanceKlass org/gradle/api/plugins/BasePlugin$$Lambda$618 +instanceKlass org/gradle/api/plugins/BasePlugin$$Lambda$617 +instanceKlass org/gradle/api/internal/ExecuteDomainObjectCollectionCallbackBuildOperationType$1 +instanceKlass org/gradle/api/internal/ExecuteDomainObjectCollectionCallbackBuildOperationType$Result +instanceKlass org/gradle/api/internal/ExecuteDomainObjectCollectionCallbackBuildOperationType +instanceKlass org/gradle/api/internal/DefaultCollectionCallbackActionDecorator$OperationDetails +instanceKlass org/gradle/api/internal/DefaultCollectionCallbackActionDecorator$Operation +instanceKlass org/gradle/api/plugins/BasePlugin$$Lambda$616 +instanceKlass org/gradle/api/internal/GeneratedSubclasses +instanceKlass org/gradle/api/internal/plugins/DslObject +instanceKlass org/gradle/api/plugins/BasePlugin$$Lambda$615 +instanceKlass org/gradle/api/internal/plugins/AbstractRule +instanceKlass org/gradle/api/internal/file/DefaultFilePropertyFactory$PathToDirectoryTransformer +instanceKlass org/gradle/api/plugins/BasePluginConvention +instanceKlass org/gradle/api/plugins/internal/DefaultBasePluginExtension +instanceKlass org/gradle/language/base/plugins/LifecycleBasePlugin$$Lambda$614 +instanceKlass org/gradle/language/base/plugins/LifecycleBasePlugin$$Lambda$613 +instanceKlass org/gradle/language/base/plugins/LifecycleBasePlugin$$Lambda$612 +instanceKlass org/gradle/language/base/internal/plugins/CleanRule +instanceKlass org/gradle/language/base/plugins/LifecycleBasePlugin$$Lambda$611 +instanceKlass org/gradle/language/base/plugins/LifecycleBasePlugin$$Lambda$610 +instanceKlass org/gradle/language/base/plugins/LifecycleBasePlugin +instanceKlass org/gradle/api/internal/plugins/DefaultArtifactPublicationSet +instanceKlass org/gradle/api/plugins/BasePluginExtension +instanceKlass org/gradle/api/plugins/BasePlugin +instanceKlass org/gradle/api/internal/tasks/compile/HasCompileOptions +instanceKlass org/gradle/api/plugins/internal/DefaultJavaPluginExtension +instanceKlass org/gradle/api/plugins/JavaBasePlugin +instanceKlass org/gradle/api/plugins/JavaPlatformPlugin +instanceKlass org/gradle/api/internal/plugins/PluginManagerInternal$PluginWithId +instanceKlass org/gradle/api/plugins/jvm/internal/JvmEcosystemAttributesDetails +instanceKlass org/gradle/api/plugins/jvm/internal/DefaultJvmPluginServices +instanceKlass org/gradle/api/internal/component/SoftwareComponentInternal +instanceKlass org/gradle/api/plugins/internal/DefaultSoftwareComponentFactory +instanceKlass org/gradle/api/plugins/jvm/JvmTestSuite +instanceKlass org/gradle/testing/base/TestSuite +instanceKlass org/gradle/api/plugins/jvm/internal/OutgoingElementsBuilder +instanceKlass org/gradle/testing/base/TestingExtension +instanceKlass org/gradle/api/tasks/SourceSet +instanceKlass org/gradle/api/plugins/JavaPluginExtension +instanceKlass org/gradle/plugin/use/internal/DefaultPluginRequestApplicator$$Lambda$609 +instanceKlass org/gradle/plugin/use/internal/DefaultPluginRequestApplicator$$Lambda$608 +instanceKlass org/gradle/internal/snapshot/MetadataSnapshot$1 +instanceKlass org/gradle/internal/classpath/DefaultCachedClasspathTransformer$1 +instanceKlass org/gradle/api/internal/artifacts/DownloadArtifactBuildOperationType$1 +instanceKlass org/gradle/api/internal/artifacts/DownloadArtifactBuildOperationType$Result +instanceKlass org/gradle/api/internal/artifacts/DownloadArtifactBuildOperationType +instanceKlass org/gradle/api/internal/artifacts/DefaultArtifactIdentifier +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/artifacts/DefaultCachedArtifact +instanceKlass org/gradle/internal/resource/cached/AbstractCachedIndex$$Lambda$605 +instanceKlass org/gradle/internal/resource/cached/AbstractCachedIndex$$Lambda$606 +instanceKlass org/gradle/internal/resource/cached/AbstractCachedIndex$$Lambda$603 +instanceKlass org/gradle/internal/resource/cached/AbstractCachedIndex$$Lambda$604 +instanceKlass org/gradle/internal/resource/cached/AbstractCachedIndex$$Lambda$607 +instanceKlass org/gradle/internal/resource/cached/AbstractCachedIndex$$Lambda$602 +instanceKlass org/gradle/internal/resource/cached/AbstractCachedIndex$$Lambda$601 +instanceKlass org/gradle/internal/resource/cached/AbstractCachedIndex$$Lambda$600 +instanceKlass org/gradle/internal/resource/cached/AbstractCachedIndex$$Lambda$596 +instanceKlass org/gradle/internal/resource/cached/AbstractCachedIndex$$Lambda$597 +instanceKlass org/gradle/internal/resource/cached/AbstractCachedIndex$$Lambda$598 +instanceKlass org/gradle/internal/resource/cached/AbstractCachedIndex$$Lambda$599 +instanceKlass org/gradle/internal/resource/cached/AbstractCachedIndex$$Lambda$595 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/artifacts/ArtifactAtRepositoryKey +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$594 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$592 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$593 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$589 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$587 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$590 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$591 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$586 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$588 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$584 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$585 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$583 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$582 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$581 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$579 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$580 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$572 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$578 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$577 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$570 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$575 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$576 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$573 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$571 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$574 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$569 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$568 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$565 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$567 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$564 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$566 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$563 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$561 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$558 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$562 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$557 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$559 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$560 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$556 +instanceKlass org/gradle/internal/model/CalculatedValueContainer$CalculationState$$Lambda$554 +instanceKlass org/gradle/internal/model/CalculatedValueContainer$CalculationState$$Lambda$553 +instanceKlass org/gradle/internal/model/CalculatedValueContainer$CalculationState$$Lambda$551 +instanceKlass org/gradle/internal/model/CalculatedValueContainer$CalculationState$$Lambda$552 +instanceKlass org/gradle/internal/model/CalculatedValueContainer$CalculationState$$Lambda$555 +instanceKlass org/gradle/internal/model/CalculatedValueContainer$CalculationState$$Lambda$548 +instanceKlass org/gradle/internal/model/CalculatedValueContainer$CalculationState$$Lambda$549 +instanceKlass org/gradle/internal/model/CalculatedValueContainer$CalculationState$$Lambda$547 +instanceKlass org/gradle/internal/model/CalculatedValueContainer$CalculationState$$Lambda$550 +instanceKlass org/gradle/internal/model/CalculatedValueContainer$CalculationState$$Lambda$546 +instanceKlass org/gradle/api/internal/artifacts/DownloadArtifactBuildOperationType$DetailsImpl +instanceKlass org/gradle/api/internal/artifacts/DownloadArtifactBuildOperationType$Details +instanceKlass org/gradle/internal/operations/DefaultBuildOperationQueue$WorkerRunnable$$Lambda$545 +instanceKlass org/gradle/internal/operations/DefaultBuildOperationQueue$WorkerRunnable$$Lambda$544 +instanceKlass org/gradle/internal/resources/DefaultResourceLockCoordinationService$ReleaseLocks +instanceKlass org/gradle/internal/operations/DefaultBuildOperationQueue$WorkerRunnable$$Lambda$543 +instanceKlass org/gradle/internal/operations/DefaultBuildOperationQueue$WorkerRunnable$$Lambda$542 +instanceKlass org/gradle/internal/operations/DefaultBuildOperationQueue$WorkerRunnable$$Lambda$541 +instanceKlass org/gradle/internal/operations/DefaultBuildOperationQueue$WorkerRunnable$$Lambda$540 +instanceKlass org/gradle/internal/operations/DefaultBuildOperationQueue$WorkerRunnable$$Lambda$537 +instanceKlass org/gradle/internal/operations/DefaultBuildOperationQueue$WorkerRunnable$$Lambda$539 +instanceKlass org/gradle/internal/operations/DefaultBuildOperationQueue$WorkerRunnable$$Lambda$538 +instanceKlass org/gradle/internal/operations/DefaultBuildOperationQueue$WorkerRunnable$$Lambda$535 +instanceKlass org/gradle/internal/operations/DefaultBuildOperationQueue$WorkerRunnable$$Lambda$534 +instanceKlass org/gradle/internal/operations/DefaultBuildOperationQueue$WorkerRunnable$$Lambda$533 +instanceKlass org/gradle/internal/operations/DefaultBuildOperationQueue$WorkerRunnable$$Lambda$536 +instanceKlass org/gradle/internal/operations/DefaultBuildOperationQueue$WorkerRunnable$$Lambda$531 +instanceKlass org/gradle/internal/operations/DefaultBuildOperationQueue$WorkerRunnable$$Lambda$528 +instanceKlass org/gradle/internal/operations/DefaultBuildOperationQueue$WorkerRunnable$$Lambda$527 +instanceKlass org/gradle/internal/operations/DefaultBuildOperationQueue$$Lambda$532 +instanceKlass org/gradle/internal/operations/DefaultBuildOperationQueue$WorkerRunnable$$Lambda$529 +instanceKlass org/gradle/internal/operations/DefaultBuildOperationQueue$WorkerRunnable$$Lambda$530 +instanceKlass org/gradle/internal/operations/DefaultBuildOperationQueue$WorkerRunnable +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/ArtifactBackedResolvedVariant$DownloadArtifactFile +instanceKlass org/gradle/internal/operations/DefaultBuildOperationQueue +instanceKlass org/gradle/internal/operations/DefaultBuildOperationExecutor$$Lambda$526 +instanceKlass org/gradle/internal/operations/DefaultBuildOperationExecutor$QueueWorker +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/ParallelResolveArtifactSet$VisitingSet$StartVisitAction +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/ResolvedArtifactSet$Visitor +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/ParallelResolveArtifactSet +instanceKlass org/gradle/api/internal/artifacts/ivyservice/DefaultLenientConfiguration$ResolveArtifactsDetails +instanceKlass org/gradle/api/internal/artifacts/ResolveArtifactsBuildOperationType$Details +instanceKlass org/gradle/api/internal/artifacts/ivyservice/DefaultLenientConfiguration$3 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/DefaultLenientConfiguration$2 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/DefaultVisitedArtifactResults$DefaultSelectedArtifactResults +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/CompositeResolvedArtifactSet +instanceKlass org/gradle/internal/component/local/model/OpaqueComponentIdentifier +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/ArtifactBackedResolvedVariant$SingleArtifactSet +instanceKlass org/gradle/api/internal/artifacts/PreResolvedResolvableArtifact +instanceKlass org/gradle/api/internal/artifacts/DefaultResolvableArtifact$1 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/DefaultArtifactSet$$Lambda$525 +instanceKlass org/gradle/api/internal/tasks/FinalizeAction +instanceKlass org/gradle/api/artifacts/ResolvedArtifact +instanceKlass org/gradle/api/internal/artifacts/DefaultResolvableArtifact +instanceKlass org/gradle/internal/model/CalculatedValueContainer$CalculationState +instanceKlass org/gradle/internal/model/CalculatedValueContainer +instanceKlass org/gradle/api/internal/tasks/WorkNodeAction +instanceKlass org/gradle/internal/resolve/result/BuildableArtifactResolveResult +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/DefaultArtifactSet$LazyArtifactSupplier +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/excludes/specs/ExcludeEverything +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/excludes/simple/DefaultGroupExclude +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/excludes/specs/GroupExclude +instanceKlass org/apache/ivy/plugins/matcher/PatternMatcher +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/excludes/PatternMatchers +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/excludes/ModuleExclusions$$Lambda$524 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/selectors/SelectorStateResolverResults$Registration +instanceKlass com/google/common/primitives/Longs$AsciiDigits +instanceKlass org/gradle/internal/component/external/descriptor/DefaultExclude +instanceKlass org/gradle/internal/component/model/Exclude +instanceKlass org/gradle/internal/component/external/model/ConfigurationBoundExternalDependencyMetadata +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/excludes/factories/Optimizations +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/excludes/factories/OptimizingExcludeFactory$$Lambda$523 +instanceKlass org/gradle/internal/component/model/DefaultCompatibilityCheckResult +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ResolvedFilesCollectingVisitor +instanceKlass org/gradle/api/internal/file/AbstractFileCollection$2 +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfiguration$ConfigurationResolvableDependencies$ConfigurationArtifactView +instanceKlass org/gradle/api/internal/initialization/DefaultScriptClassPathResolver$$Lambda$522 +instanceKlass org/gradle/api/internal/initialization/DefaultScriptClassPathResolver$$Lambda$521 +instanceKlass org/gradle/api/internal/tasks/FailureCollectingTaskDependencyResolveContext +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/BuildDependenciesOnlyVisitedArtifactSet$BuildDependenciesOnlySelectedArtifactSet +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/DefaultVisitedArtifactResults$NoArtifactResults +instanceKlass org/gradle/api/internal/artifacts/transform/AttributeMatchingVariantSelector +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/DefaultResolutionResultBuilder$RootFactory +instanceKlass org/gradle/api/internal/artifacts/result/DefaultResolvedComponentResult +instanceKlass org/gradle/api/internal/artifacts/result/ResolvedComponentResultInternal +instanceKlass org/gradle/internal/service/scopes/ProjectScopeServices$$Lambda$520 +instanceKlass org/gradle/internal/service/scopes/DefaultProjectFinder +instanceKlass org/gradle/internal/execution/steps/CancelExecutionStep +instanceKlass org/gradle/caching/internal/CacheableEntity +instanceKlass org/gradle/internal/execution/steps/BuildCacheStep +instanceKlass org/gradle/internal/execution/steps/RecordOutputsStep +instanceKlass org/gradle/internal/execution/steps/legacy/MarkSnapshottingInputsFinishedStep +instanceKlass org/gradle/internal/execution/caching/CachingState$Disabled +instanceKlass org/gradle/internal/execution/caching/CachingState +instanceKlass org/gradle/internal/execution/caching/CachingStateFactory +instanceKlass org/gradle/internal/execution/steps/ResolveCachingStateStep +instanceKlass org/gradle/internal/execution/steps/SkipEmptyWorkStep +instanceKlass org/gradle/internal/execution/steps/legacy/MarkSnapshottingInputsStartedStep +instanceKlass org/gradle/internal/service/scopes/ExecutionGradleServices$$Lambda$519 +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$BMH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$BMH +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/internal/execution/history/impl/DefaultOutputFilesRepository +instanceKlass org/gradle/internal/cleanup/DefaultBuildOutputCleanupRegistry +instanceKlass org/gradle/caching/internal/controller/BuildCacheLoadCommand +instanceKlass org/gradle/caching/internal/controller/BuildCacheStoreCommand +instanceKlass org/gradle/caching/internal/controller/impl/DefaultBuildCacheCommandFactory +instanceKlass org/gradle/caching/internal/BuildCacheServices$3$$Lambda$518 +instanceKlass org/gradle/caching/internal/origin/OriginMetadataFactory$HostnameLookup +instanceKlass org/gradle/caching/internal/BuildCacheServices$3$$Lambda$517 +instanceKlass org/gradle/caching/internal/origin/OriginMetadataFactory$PropertiesConfigurator +instanceKlass org/gradle/internal/nativeintegration/services/NativeServices$FixedHostname +instanceKlass net/rubygrapefruit/platform/internal/MutableSystemInfo +instanceKlass net/rubygrapefruit/platform/internal/DefaultSystemInfo +instanceKlass org/gradle/caching/internal/BuildCacheServices$FilePermissionsAccessAdapter +instanceKlass org/gradle/caching/internal/packaging/impl/TarBuildCacheEntryPacker$$Lambda$516 +instanceKlass org/apache/commons/compress/archivers/ArchiveEntry +instanceKlass org/gradle/caching/internal/packaging/impl/TarBuildCacheEntryPacker +instanceKlass org/gradle/caching/internal/packaging/impl/GZipBuildCacheEntryPacker +instanceKlass org/gradle/caching/internal/packaging/impl/DefaultTarPackerFileSystemSupport +instanceKlass org/gradle/api/internal/artifacts/dsl/DefaultComponentMetadataHandler$$Lambda$515 +instanceKlass org/gradle/api/internal/artifacts/dsl/DefaultComponentMetadataHandler$$Lambda$514 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/moduleconverter/DefaultRootComponentMetadataBuilder$$Lambda$513 +instanceKlass org/gradle/api/internal/artifacts/ProjectBackedModule +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/NoRepositoriesResolver +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/CachingDependencyResultFactory +instanceKlass org/gradle/api/artifacts/result/DependencyResult +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/DefaultResolutionResultBuilder +instanceKlass org/gradle/api/internal/artifacts/ivyservice/InMemoryResolutionResultBuilder +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfiguration$$Lambda$512 +instanceKlass org/gradle/api/internal/tasks/TaskDependencyContainer$$Lambda$511 +instanceKlass org/gradle/internal/graph/CachingDirectedGraphWalker$NodeDetails +instanceKlass java/util/ArrayDeque$$Lambda$510 +instanceKlass org/gradle/api/internal/tasks/WorkDependencyResolver$1 +instanceKlass org/gradle/plugin/use/tracker/internal/PluginVersionTracker$$Lambda$509 +instanceKlass org/gradle/api/internal/initialization/DefaultScriptHandler$$Lambda$508 +instanceKlass org/gradle/api/internal/catalog/parser/StrictVersionParser$RichVersion +instanceKlass org/gradle/api/internal/artifacts/dsl/ParsedModuleStringNotation +instanceKlass org/gradle/api/internal/initialization/DefaultScriptHandler$$Lambda$507 +instanceKlass org/gradle/api/attributes/plugin/GradlePluginApiVersion$Impl +instanceKlass org/gradle/api/attributes/Bundling$Impl +instanceKlass org/gradle/api/internal/project/DefaultProjectStateRegistry$CalculatedModelValueImpl +instanceKlass org/gradle/api/internal/artifacts/dsl/dependencies/DefaultDependencyHandler$DirectDependencyAdder +instanceKlass org/gradle/api/artifacts/dsl/ExternalModuleDependencyVariantSpec +instanceKlass org/gradle/api/internal/artifacts/dsl/dependencies/DefaultDependencyHandler +instanceKlass org/gradle/api/artifacts/query/ArtifactResolutionQuery +instanceKlass org/gradle/api/internal/artifacts/query/DefaultArtifactResolutionQueryFactory +instanceKlass org/gradle/api/internal/artifacts/dsl/dependencies/DefaultDependencyConstraintHandler$DependencyConstraintAdder +instanceKlass org/gradle/api/internal/artifacts/dsl/dependencies/DefaultDependencyConstraintHandler$1 +instanceKlass org/gradle/api/internal/artifacts/dsl/dependencies/DynamicAddDependencyMethods +instanceKlass org/gradle/api/internal/artifacts/dsl/dependencies/DynamicAddDependencyMethods$DependencyAdder +instanceKlass org/gradle/api/internal/artifacts/dsl/dependencies/DefaultDependencyConstraintHandler +instanceKlass org/gradle/api/internal/notations/ClientModuleNotationParserFactory +instanceKlass org/gradle/api/internal/notations/DependencyConstraintProjectNotationConverter +instanceKlass org/gradle/api/internal/artifacts/dependencies/DefaultDependencyConstraint +instanceKlass org/gradle/api/internal/artifacts/dependencies/DependencyConstraintInternal +instanceKlass org/gradle/api/internal/notations/DependencyConstraintNotationParser$MinimalExternalDependencyNotationConverter +instanceKlass org/gradle/api/internal/notations/DependencyConstraintNotationParser +instanceKlass org/gradle/api/internal/notations/DependencyClassPathNotationConverter +instanceKlass org/gradle/api/internal/notations/DependencyProjectNotationConverter +instanceKlass org/gradle/api/internal/notations/DependencyFilesNotationConverter +instanceKlass org/gradle/internal/typeconversion/TypeFilteringNotationConverter +instanceKlass org/gradle/api/internal/notations/DependencyNotationParser$MinimalExternalDependencyNotationConverter +instanceKlass org/gradle/api/artifacts/MinimalExternalModuleDependency +instanceKlass org/gradle/api/internal/notations/DependencyNotationParser +instanceKlass org/gradle/api/internal/artifacts/DefaultDependencyFactory +instanceKlass org/gradle/api/internal/notations/ProjectDependencyFactory +instanceKlass org/gradle/plugin/use/internal/DefaultPluginRequestApplicator$1$1$$Lambda$506 +instanceKlass org/gradle/plugin/use/internal/DefaultPluginRequestApplicator$1$1$$Lambda$505 +instanceKlass org/gradle/plugin/use/internal/DefaultPluginRequestApplicator$1$1 +instanceKlass org/gradle/plugin/use/resolve/internal/PluginResolveContext +instanceKlass org/gradle/plugin/use/internal/DefaultPluginRequestApplicator$1 +instanceKlass org/gradle/plugin/use/resolve/internal/ArtifactRepositoriesPluginResolver$1 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ErrorHandlingConfigurationResolver$ErrorHandlingResolvedConfiguration +instanceKlass org/gradle/api/internal/artifacts/ivyservice/DefaultResolvedConfiguration +instanceKlass org/gradle/api/internal/artifacts/ivyservice/DefaultLenientConfiguration$1 +instanceKlass org/gradle/api/internal/artifacts/ResolveArtifactsBuildOperationType$Result +instanceKlass org/gradle/api/internal/artifacts/ivyservice/DefaultLenientConfiguration +instanceKlass org/gradle/api/artifacts/LenientConfiguration +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/oldresult/TransientConfigurationResultsLoader +instanceKlass org/gradle/api/internal/artifacts/configurations/ResolveConfigurationResolutionBuildOperationResult$LazyDesugaringAttributeContainer +instanceKlass org/gradle/api/internal/artifacts/configurations/ResolveConfigurationResolutionBuildOperationResult +instanceKlass org/gradle/api/internal/artifacts/configurations/ResolveConfigurationDependenciesBuildOperationType$Result +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ErrorHandlingConfigurationResolver$ErrorHandlingResolutionResult +instanceKlass org/gradle/api/internal/artifacts/ivyservice/DefaultConfigurationResolver$ArtifactResolveState +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfiguration$$Lambda$504 +instanceKlass org/gradle/api/internal/artifacts/transform/FilteredResultFactory +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfiguration$DefaultResolutionResultProvider +instanceKlass org/gradle/api/internal/artifacts/transform/DefaultExtraExecutionGraphDependenciesResolverFactory$$Lambda$503 +instanceKlass org/gradle/api/internal/artifacts/transform/TransformUpstreamDependencies +instanceKlass org/gradle/api/internal/artifacts/transform/TransformationStep +instanceKlass org/gradle/api/internal/artifacts/transform/Transformation +instanceKlass org/gradle/api/internal/artifacts/transform/TransformUpstreamDependenciesResolver +instanceKlass org/gradle/api/internal/artifacts/transform/DefaultExtraExecutionGraphDependenciesResolverFactory +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/SelectedArtifactSet +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/BuildDependenciesOnlyVisitedArtifactSet +instanceKlass org/gradle/api/internal/artifacts/result/DefaultResolutionResult +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/StreamingResolutionResultBuilder$RootFactory +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/oldresult/DefaultResolvedGraphResults +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/DefaultVisitedFileDependencyResults +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/SelectedArtifactResults +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/DefaultVisitedArtifactResults +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/store/DefaultBinaryStore$SimpleBinaryData +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/oldresult/TransientConfigurationResultsBuilder$$Lambda$502 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/StreamingResolutionResultBuilder$$Lambda$501 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/oldresult/TransientConfigurationResultsBuilder$$Lambda$500 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/ResolvedArtifactsGraphVisitor$ArtifactsForNode +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/ResolvedArtifactSet$1 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/ArtifactBackedResolvedVariant +instanceKlass org/gradle/api/artifacts/type/ArtifactTypeDefinition +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/ResolvableArtifact +instanceKlass org/gradle/internal/model/CalculatedValue +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/DefaultArtifactSet +instanceKlass org/gradle/api/internal/artifacts/transform/VariantSelector$Factory +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/ResolvedVariantSet +instanceKlass org/gradle/internal/component/external/model/FixedComponentArtifacts +instanceKlass org/gradle/internal/component/model/ComponentArtifacts +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/CachingModuleComponentRepository$$Lambda$499 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/artifacts/DefaultCachedArtifacts +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/artifacts/AbstractArtifactsCache$ModuleArtifactsCacheEntry +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/artifacts/ArtifactsAtRepositoryKey +instanceKlass org/gradle/internal/component/model/WrappedComponentResolveMetadata +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$498 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$497 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$496 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/StreamingResolutionResultBuilder$$Lambda$495 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/oldresult/TransientConfigurationResultsBuilder$$Lambda$494 +instanceKlass org/gradle/api/internal/attributes/AttributeDesugaring$$Lambda$493 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/conflicts/VersionConflictResolutionDetails +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/oldresult/TransientConfigurationResultsBuilder$$Lambda$492 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/ComponentState$$Lambda$491 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/ComponentState$$Lambda$490 +instanceKlass org/gradle/api/internal/artifacts/result/DefaultResolvedVariantResult +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/ComponentSelectionReasons$DefaultComponentSelectionReason +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/StreamingResolutionResultBuilder$$Lambda$489 +instanceKlass org/gradle/internal/component/local/model/DefaultProjectComponentSelector +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/StreamingResolutionResultBuilder$$Lambda$488 +instanceKlass org/gradle/cache/internal/BinaryStore$WriteAction +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/ResolveState$$Lambda$487 +instanceKlass org/gradle/internal/component/model/DefaultSelectedByVariantMatchingConfigurationMetadata +instanceKlass org/gradle/internal/component/model/DefaultMultipleCandidateResult +instanceKlass org/gradle/internal/component/model/AttributeSelectionUtils +instanceKlass org/gradle/api/internal/attributes/DefaultAttributesSchema$ExtraAttributesEntry +instanceKlass org/gradle/internal/component/model/MultipleCandidateMatcher +instanceKlass org/gradle/internal/component/model/ComponentAttributeMatcher$CachedQuery +instanceKlass org/gradle/internal/component/model/LoggingAttributeMatchingExplanationBuilder +instanceKlass org/gradle/internal/component/model/AttributeMatchingExplanationBuilder$$Lambda$486 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/internal/component/model/AttributeMatchingExplanationBuilder +instanceKlass org/gradle/internal/component/model/AttributeConfigurationSelector +instanceKlass org/gradle/internal/component/external/model/DefaultConfigurationMetadata$1 +instanceKlass org/gradle/internal/component/external/model/DefaultConfigurationMetadata$2 +instanceKlass org/gradle/internal/component/external/model/DefaultConfigurationMetadata$Builder +instanceKlass org/gradle/api/internal/artifacts/repositories/metadata/DefaultMavenImmutableAttributesFactory$ComponentTypeEntry +instanceKlass org/gradle/internal/component/external/model/DefaultShadowedCapability +instanceKlass org/gradle/internal/component/external/model/ShadowedCapability +instanceKlass org/gradle/internal/component/external/model/maven/DefaultMavenModuleResolveMetadata$1 +instanceKlass org/gradle/internal/component/external/model/AbstractConfigurationMetadata +instanceKlass org/gradle/internal/component/model/ModuleConfigurationMetadata +instanceKlass org/gradle/internal/component/model/DefaultIvyArtifactName +instanceKlass org/gradle/api/artifacts/ArtifactIdentifier +instanceKlass org/gradle/internal/component/external/model/DefaultModuleComponentArtifactMetadata +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/RepositoryChainModuleSource +instanceKlass org/gradle/internal/resolve/ResolveExceptionAnalyzer +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/RepositoryChainModuleResolution +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/RepositoryChainComponentMetaDataResolver$1 +instanceKlass org/gradle/api/internal/artifacts/DefaultComponentSelection +instanceKlass org/gradle/api/internal/artifacts/repositories/resolver/ComponentMetadataAdapter +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/CachedMetadataProvider +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$485 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$484 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$483 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$482 +instanceKlass org/gradle/internal/resolve/result/BuildableModuleComponentMetaDataResolveResult +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ComponentMetaDataResolveState +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolutionstrategy/DefaultCachePolicy$AbstractResolutionControl +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/dynamicversions/DefaultResolvedModuleVersion +instanceKlass org/gradle/internal/component/external/model/AbstractModuleComponentResolveMetadata +instanceKlass org/gradle/api/internal/artifacts/repositories/metadata/DefaultMetadataFileSource +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ModuleDescriptorHashModuleSource +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/parser/data/PomDependencyMgt +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/parser/GradlePomModuleDescriptorBuilder +instanceKlass org/gradle/internal/component/model/MutableModuleSources +instanceKlass org/gradle/api/capabilities/MutableCapabilitiesMetadata +instanceKlass org/gradle/internal/component/external/model/VariantMetadataRules +instanceKlass org/gradle/internal/component/external/model/maven/MavenModuleResolveMetadata +instanceKlass org/gradle/internal/component/external/model/MutableComponentVariant +instanceKlass org/gradle/internal/component/external/model/AbstractMutableModuleComponentResolveMetadata +instanceKlass org/gradle/internal/component/external/model/ExternalDependencyDescriptor +instanceKlass org/gradle/api/internal/attributes/DefaultImmutableAttributesFactory$$Lambda$481 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/ModuleMetadataSerializer$Reader +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/StringDeduplicatingDecoder +instanceKlass org/gradle/internal/resource/local/DefaultLocallyAvailableResource$$Lambda$480 +instanceKlass org/gradle/internal/resource/local/AbstractLocallyAvailableResource +instanceKlass org/gradle/api/internal/artifacts/ivyservice/WritableArtifactCacheLockingManager$CacheLockingPersistentCache$$Lambda$479 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/PersistentModuleMetadataCache$$Lambda$478 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/DefaultCachedMetadata +instanceKlass org/gradle/api/internal/artifacts/ivyservice/WritableArtifactCacheLockingManager$CacheLockingPersistentCache +instanceKlass org/gradle/cache/internal/CompositeCleanupAction$ScopedCleanupAction +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/ModuleMetadataCacheEntry +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/ModuleComponentAtRepositoryKey +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/conflicts/PotentialConflictFactory$NoConflict +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/conflicts/PotentialConflictFactory +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/conflicts/DefaultConflictHandler$$Lambda$477 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/selectors/SelectorStateResolverResults +instanceKlass org/gradle/api/artifacts/component/ProjectComponentSelector +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/strategy/AbstractVersionSelector +instanceKlass org/gradle/api/internal/artifacts/dependencies/DefaultResolvedVersionConstraint +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/ResolveState$$Lambda$476 +instanceKlass org/gradle/api/artifacts/ClientModule +instanceKlass org/gradle/internal/component/model/DefaultComponentOverrideMetadata +instanceKlass org/gradle/internal/component/model/ComponentOverrideMetadata +instanceKlass org/gradle/internal/resolve/result/BuildableComponentIdResolveResult +instanceKlass org/gradle/internal/resolve/result/ComponentIdResolveResult +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/ResolveState$$Lambda$475 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/SelectorState +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/ResolveState$SelectorCacheKey +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/LenientPlatformDependencyMetadata +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/DependencyGraphSelector +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/NodeState$$Lambda$474 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/NodeState$$Lambda$473 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/DependencyState +instanceKlass org/gradle/api/internal/attributes/AttributeValue$1 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/strict/StrictVersionConstraints +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/DefaultPendingDependenciesVisitor +instanceKlass org/gradle/internal/component/local/model/DslOriginDependencyMetadataWrapper +instanceKlass org/gradle/internal/component/local/model/DslOriginDependencyMetadata +instanceKlass org/gradle/internal/component/model/LocalComponentDependencyMetadata +instanceKlass org/gradle/api/internal/artifacts/ivyservice/moduleconverter/dependencies/AbstractIvyDependencyDescriptorFactory$$Lambda$472 +instanceKlass org/gradle/internal/component/external/model/DefaultModuleComponentSelector +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/DependencyGraphBuilder$1 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/selectors/SelectorStateResolver +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/ReplaceSelectionWithConflictResultAction +instanceKlass org/gradle/internal/component/model/SelectedByVariantMatchingConfigurationMetadata +instanceKlass org/gradle/api/internal/artifacts/ResolvedConfigurationIdentifier +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/ComponentState +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/DependencyGraphComponent +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/ModuleSelectors$$Lambda$471 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/ModuleSelectors$$Lambda$470 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/ModuleSelectors$$Lambda$469 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/ModuleSelectors$$Lambda$468 +instanceKlass java/util/Comparator$$Lambda$467 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/ModuleSelectors$$Lambda$466 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/ModuleSelectors$$Lambda$465 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass java/util/Collections$ReverseComparator2 +instanceKlass java/util/Collections$ReverseComparator +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/strategy/VersionParser$DefaultVersion +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/strategy/VersionParser$$Lambda$464 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/ModuleSelectors +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/PendingDependencies +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/selectors/ResolvableSelectorState +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/ResolveState$$Lambda$463 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/ModuleResolveState +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/conflicts/CandidateModule +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/ResolveOptimizations +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/DeselectVersionAction +instanceKlass org/gradle/api/internal/artifacts/ResolvedVersionConstraint +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/PendingDependenciesVisitor +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/ComponentResolutionState +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/StringVersioned +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/ResolveState +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/selectors/ComponentStateFactory +instanceKlass org/gradle/api/internal/WithEstimatedSize$Estimates +instanceKlass org/gradle/internal/component/model/DefaultVariantMetadata +instanceKlass org/gradle/internal/component/model/VariantResolveMetadata +instanceKlass org/gradle/api/internal/artifacts/ivyservice/moduleconverter/DefaultLocalComponentMetadataBuilder$1 +instanceKlass org/gradle/internal/component/model/ComponentConfigurationIdentifier +instanceKlass org/gradle/internal/component/model/VariantResolveMetadata$Identifier +instanceKlass org/gradle/internal/component/local/model/RootLocalComponentMetadata$RootLocalConfigurationMetadata$$Lambda$462 +instanceKlass org/gradle/internal/component/external/model/ShadowedCapabilityOnly +instanceKlass org/gradle/internal/component/external/model/ImmutableCapabilities +instanceKlass org/gradle/api/internal/artifacts/configurations/Configurations +instanceKlass org/gradle/internal/component/model/ImmutableModuleSources +instanceKlass org/gradle/internal/component/local/model/RootConfigurationMetadata +instanceKlass org/gradle/internal/component/local/model/DefaultLocalComponentMetadata$DefaultLocalConfigurationMetadata +instanceKlass org/gradle/internal/component/local/model/LocalConfigurationMetadata +instanceKlass org/gradle/internal/component/local/model/BuildableLocalConfigurationMetadata +instanceKlass org/gradle/api/internal/artifacts/DefaultModuleVersionIdentifier +instanceKlass org/gradle/api/internal/artifacts/DefaultImmutableModuleIdentifierFactory$$Lambda$461 +instanceKlass org/gradle/api/internal/artifacts/DefaultImmutableModuleIdentifierFactory$$Lambda$460 +instanceKlass org/gradle/api/internal/artifacts/DefaultModule +instanceKlass org/gradle/internal/resolve/result/DefaultResourceAwareResolveResult +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/ResolvedArtifactsGraphVisitor +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/ResolutionConflictTracker +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/DependencyGraphBuilder$$Lambda$459 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/DependencyGraphBuilder$$Lambda$458 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/EdgeState +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/DependencyGraphEdge +instanceKlass org/gradle/internal/resolve/result/BuildableComponentResolveResult +instanceKlass org/gradle/internal/resolve/result/ComponentResolveResult +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/RootGraphNode +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/NodeState +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/DependencyGraphBuilder +instanceKlass org/gradle/api/internal/artifacts/ivyservice/dependencysubstitution/DependencySubstitutionApplicator$$Lambda$457 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/dependencysubstitution/DependencySubstitutionApplicator$SubstitutionResult +instanceKlass org/gradle/api/internal/artifacts/ivyservice/dependencysubstitution/NoOpSubstitution +instanceKlass org/gradle/api/internal/artifacts/DependencySubstitutionInternal +instanceKlass org/gradle/api/internal/artifacts/DefaultGlobalDependencyResolutionRules$CompositeDependencySubstitutionRules$$Lambda$456 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/conflicts/RejectRemainingCandidates +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/conflicts/LastCandidateCapabilityResolver +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/conflicts/UserConfiguredCapabilityResolver +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/conflicts/CapabilitiesConflictHandler$Candidate +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/conflicts/PotentialConflict +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/conflicts/DefaultCapabilitiesConflictHandler +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/conflicts/ConflictContainer +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/conflicts/CompositeConflictResolver +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/ConflictResolverDetails +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/conflicts/DefaultConflictHandler +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/LatestModuleConflictResolver +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/ModuleConflictResolver +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/ConflictResolverFactory +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/DefaultArtifactDependencyResolver$DefaultResolveContextToComponentResolver +instanceKlass org/gradle/api/internal/artifacts/ivyservice/clientmodule/ClientModuleResolver +instanceKlass org/gradle/internal/resolve/resolver/DefaultArtifactSelector +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/ComponentResolversChain$ArtifactResolverChain +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingArtifactResolver +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/ComponentResolversChain$ComponentMetaDataResolverChain +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/ComponentResolversChain$DependencyToComponentIdResolverChain +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/VirtualComponentMetadataResolver +instanceKlass org/gradle/internal/resolve/resolver/ArtifactSelector +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/ComponentResolversChain +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/FilteredModuleComponentRepository +instanceKlass org/gradle/api/internal/artifacts/repositories/DefaultMavenArtifactRepository$$Lambda$455 +instanceKlass org/gradle/api/internal/artifacts/repositories/DefaultRepositoryContentDescriptor +instanceKlass org/gradle/api/artifacts/repositories/MavenRepositoryContentDescriptor +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/BaseModuleComponentRepository +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/CachingModuleComponentRepository$ResolveAndCacheRepositoryAccess +instanceKlass org/gradle/internal/resolve/result/BuildableArtifactSetResolveResult +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/CachingModuleComponentRepository$LocateInCacheRepositoryAccess +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/CachingModuleComponentRepository +instanceKlass org/gradle/api/internal/artifacts/dsl/DefaultComponentMetadataProcessor$$Lambda$454 +instanceKlass org/gradle/api/internal/artifacts/dsl/WrappingComponentMetadataContext +instanceKlass org/gradle/api/artifacts/ComponentMetadataContext +instanceKlass org/gradle/api/artifacts/ComponentMetadataDetails +instanceKlass org/gradle/api/internal/artifacts/dsl/DefaultComponentMetadataProcessor +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ResolveIvyFactory$DefaultMetadataResolutionContext +instanceKlass org/gradle/api/internal/artifacts/repositories/resolver/ExternalResourceResolver$AbstractRepositoryAccess +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ModuleComponentRepositoryAccess +instanceKlass org/gradle/api/internal/artifacts/repositories/resolver/VersionLister +instanceKlass org/gradle/api/internal/artifacts/repositories/AbstractArtifactRepository$1 +instanceKlass org/gradle/api/internal/artifacts/repositories/metadata/DefaultImmutableMetadataSources +instanceKlass org/gradle/api/internal/artifacts/repositories/metadata/MavenMetadataArtifactProvider +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/parser/DescriptorParseContext +instanceKlass org/gradle/internal/component/model/ModuleDescriptorArtifactMetadata +instanceKlass org/gradle/api/internal/artifacts/repositories/metadata/GradleModuleMetadataCompatibilityConverter +instanceKlass org/gradle/api/internal/artifacts/repositories/DefaultMavenArtifactRepository$MavenSnapshotDecoratingSource +instanceKlass org/gradle/internal/resource/transfer/CacheAwareExternalResourceAccessor$ResourceFileStore +instanceKlass org/gradle/internal/resource/ExternalResource$ContentAndMetadataAction +instanceKlass org/gradle/internal/resource/transfer/DefaultCacheAwareExternalResourceAccessor +instanceKlass org/gradle/internal/resource/transport/DefaultExternalResourceRepository +instanceKlass org/gradle/internal/resource/transfer/ProgressLoggingExternalResourceLister$1 +instanceKlass org/gradle/internal/resource/ExternalResourceListBuildOperationType$Result +instanceKlass org/gradle/internal/resource/transfer/ProgressLoggingExternalResourceAccessor$1 +instanceKlass org/gradle/internal/resource/ExternalResourceReadMetadataBuildOperationType$Result +instanceKlass org/gradle/internal/resource/transfer/AbstractProgressLoggingHandler +instanceKlass org/gradle/internal/resource/transfer/CacheAwareExternalResourceAccessor +instanceKlass org/gradle/internal/resource/transport/AbstractRepositoryTransport +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolutionstrategy/DefaultExternalResourceCachePolicy +instanceKlass org/gradle/internal/resource/transfer/DefaultExternalResourceConnector$NoOpStats +instanceKlass org/gradle/internal/resource/transfer/DefaultExternalResourceConnector$1 +instanceKlass org/gradle/internal/resource/transfer/DefaultExternalResourceConnector$ExternalResourceAccessStats +instanceKlass org/gradle/internal/resource/transfer/DefaultExternalResourceConnector +instanceKlass org/apache/http/HttpEntityEnclosingRequest +instanceKlass org/apache/http/HttpEntity +instanceKlass org/gradle/internal/resource/transport/http/HttpResourceUploader +instanceKlass org/gradle/internal/resource/transport/http/HttpResourceLister +instanceKlass org/gradle/internal/resource/transfer/ExternalResourceReadResponse +instanceKlass org/gradle/internal/resource/transfer/AbstractExternalResourceAccessor +instanceKlass org/apache/http/message/AbstractHttpMessage +instanceKlass org/apache/http/client/methods/AbortableHttpRequest +instanceKlass org/apache/http/client/methods/HttpExecutionAware +instanceKlass org/apache/http/client/methods/Configurable +instanceKlass org/apache/http/client/methods/HttpUriRequest +instanceKlass org/apache/http/protocol/HttpContext +instanceKlass org/slf4j/spi/LocationAwareLogger +instanceKlass org/apache/commons/logging/impl/SLF4JLog +instanceKlass org/apache/commons/logging/impl/SLF4JLocationAwareLog +instanceKlass org/apache/commons/logging/Log +instanceKlass org/apache/commons/logging/LogFactory +instanceKlass org/apache/http/conn/ssl/DefaultHostnameVerifier +instanceKlass org/gradle/internal/resource/transport/http/DefaultHttpSettings$Builder +instanceKlass org/gradle/internal/resource/transport/http/DefaultHttpSettings$2$2 +instanceKlass javax/net/ssl/X509TrustManager +instanceKlass javax/net/ssl/TrustManager +instanceKlass org/gradle/internal/resource/transport/http/DefaultHttpSettings$2$1 +instanceKlass org/gradle/internal/resource/transport/http/DefaultHttpSettings$2 +instanceKlass org/gradle/internal/resource/transport/http/DefaultHttpSettings$1 +instanceKlass javax/net/ssl/HostnameVerifier +instanceKlass org/gradle/internal/resource/transport/http/HttpTimeoutSettings +instanceKlass org/gradle/internal/resource/transport/http/HttpProxySettings +instanceKlass org/gradle/internal/resource/transport/http/DefaultHttpSettings +instanceKlass org/gradle/api/internal/artifacts/repositories/transport/RepositoryTransportFactory$DefaultResourceConnectorSpecification +instanceKlass org/gradle/internal/verifier/HttpRedirectVerifierFactory$$Lambda$453 +instanceKlass org/gradle/internal/verifier/HttpRedirectVerifierFactory +instanceKlass org/gradle/api/internal/artifacts/repositories/DefaultUrlArtifactRepository$$Lambda$452 +instanceKlass org/gradle/api/internal/artifacts/repositories/DefaultUrlArtifactRepository$$Lambda$451 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ResolveIvyFactory$ParentModuleLookupResolver +instanceKlass org/gradle/internal/resolve/result/BuildableComponentArtifactsResolveResult +instanceKlass org/gradle/internal/resolve/result/BuildableTypedResolveResult +instanceKlass org/gradle/internal/resolve/result/ErroringResolveResult +instanceKlass org/gradle/internal/resolve/result/ResolveResult +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/RepositoryChainArtifactResolver +instanceKlass org/gradle/internal/resolve/result/ResourceAwareResolveResult +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/RepositoryChainComponentMetaDataResolver +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/DynamicVersionResolver +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/RepositoryChainDependencyToComponentIdResolver +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/UserResolverChain$ModuleTransformer +instanceKlass org/gradle/api/specs/NotSpec +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ComponentSelectionRulesProcessor$$Lambda$450 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ComponentSelectionRulesProcessor +instanceKlass org/gradle/api/internal/artifacts/ComponentSelectionInternal +instanceKlass org/gradle/api/artifacts/ComponentSelection +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/MetadataProvider +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/Versioned +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/DefaultVersionedComponentChooser +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/VersionedComponentChooser +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/UserResolverChain +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/CompositeDependencyArtifactsVisitor +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/ValidatingArtifactsVisitor +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/CompositeDependencyGraphVisitor +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/oldresult/ResolutionFailureCollector +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/VisitedFileDependencyResults +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/FileDependencyCollectingGraphVisitor +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/ArtifactSet +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/VisitedArtifactsResults +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/DefaultResolvedArtifactsBuilder +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/DefaultComponentSelectionDescriptor +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/ComponentSelectionReasonInternal +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/ComponentSelectionDescriptorInternal +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/ComponentSelectionReasons +instanceKlass org/gradle/api/internal/artifacts/ivyservice/dependencysubstitution/DefaultDependencySubstitutions$ProjectPathConverter +instanceKlass org/gradle/api/artifacts/DependencySubstitutions$Substitution +instanceKlass org/gradle/api/internal/artifacts/ivyservice/dependencysubstitution/DefaultDependencySubstitutions +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolutionstrategy/DefaultCachePolicy$$Lambda$449 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolutionstrategy/DefaultCachePolicy$$Lambda$448 +instanceKlass org/gradle/api/internal/artifacts/cache/ArtifactResolutionControl +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolutionstrategy/DefaultCachePolicy$$Lambda$447 +instanceKlass org/gradle/api/internal/artifacts/cache/ModuleResolutionControl +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolutionstrategy/DefaultCachePolicy$$Lambda$446 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/api/internal/artifacts/cache/DependencyResolutionControl +instanceKlass org/gradle/api/internal/artifacts/cache/ResolutionControl +instanceKlass org/gradle/api/internal/artifacts/configurations/MutationValidator$$Lambda$445 +instanceKlass org/gradle/internal/typeconversion/FlatteningNotationParser +instanceKlass org/gradle/api/artifacts/DependencySubstitution +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolutionstrategy/DefaultComponentSelectionRules +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolutionstrategy/DefaultCachePolicy +instanceKlass org/gradle/api/internal/artifacts/ComponentSelectionRulesInternal +instanceKlass org/gradle/api/artifacts/ComponentSelectionRules +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolutionstrategy/DefaultResolutionStrategy +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/conflicts/UpgradeCapabilityResolver +instanceKlass org/gradle/internal/component/external/model/DefaultComponentVariantIdentifier +instanceKlass org/gradle/api/artifacts/ComponentVariantIdentifier +instanceKlass org/gradle/internal/component/external/model/ImmutableCapability +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/conflicts/CapabilitiesConflictHandler$CandidateDetails +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolutionstrategy/DefaultCapabilitiesResolution$DefaultCapabilityResolutionDetails +instanceKlass org/gradle/api/artifacts/CapabilityResolutionDetails +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/conflicts/CapabilitiesConflictHandler$ResolutionDetails +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/conflicts/ConflictResolutionResult +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolutionstrategy/DefaultCapabilitiesResolution +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolutionstrategy/CapabilitiesResolutionInternal +instanceKlass org/gradle/api/artifacts/CapabilitiesResolution +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/projectresult/ResolvedLocalComponentsResultGraphVisitor +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/ComponentResultSerializer +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/ResolvedGraphDependency +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/DependencyResultSerializer +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/ResolvedGraphComponent +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/StreamingResolutionResultBuilder +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/DependencyGraphNode +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/oldresult/ResolvedConfigurationDependencyGraphVisitor +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/oldresult/ResolvedGraphResults +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/oldresult/DefaultResolvedConfigurationBuilder +instanceKlass org/gradle/api/internal/artifacts/ResolvedConfigurationIdentifierSerializer +instanceKlass org/gradle/api/artifacts/ResolvedDependency +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/oldresult/TransientConfigurationResults +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/oldresult/TransientConfigurationResultsBuilder +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/store/CachedStoreFactory$SimpleStore +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/store/CachedStoreFactory$Stats +instanceKlass org/gradle/cache/internal/Store +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/store/CachedStoreFactory +instanceKlass org/gradle/cache/internal/BinaryStore$BinaryData +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/store/DefaultBinaryStore +instanceKlass java/io/DeleteOnExitHook$1 +instanceKlass java/io/DeleteOnExitHook +instanceKlass org/gradle/cache/internal/BinaryStore +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/store/ResolutionResultsStoreFactory$1 +instanceKlass org/gradle/api/internal/CompositeDomainObjectSet$2 +instanceKlass org/gradle/api/internal/CompositeDomainObjectSet$1 +instanceKlass org/gradle/api/internal/CompositeDomainObjectSet$ItemNotInCompositeSpec +instanceKlass org/gradle/api/internal/CompositeDomainObjectSet$ItemIsUniqueInCompositeSpec +instanceKlass org/gradle/api/internal/CompositeDomainObjectSet$DomainObjectCompositeCollection +instanceKlass org/gradle/api/internal/artifacts/DefaultResolverResults +instanceKlass org/gradle/api/internal/attributes/ImmutableAttributeContainerWithErrorMessage +instanceKlass org/gradle/api/internal/artifacts/repositories/AbstractAuthenticationSupportedRepository$$Lambda$444 +instanceKlass org/gradle/api/internal/artifacts/repositories/descriptor/UrlRepositoryDescriptor$Builder +instanceKlass org/gradle/api/internal/artifacts/configurations/ResolveConfigurationResolutionBuildOperationDetails$RepositoryImpl$$Lambda$443 +instanceKlass org/gradle/api/internal/artifacts/configurations/ResolveConfigurationResolutionBuildOperationDetails$RepositoryImpl +instanceKlass org/gradle/api/internal/artifacts/configurations/ResolveConfigurationDependenciesBuildOperationType$Repository +instanceKlass org/gradle/api/internal/artifacts/DefaultDependencyManagementServices$DependencyResolutionScopeServices$$Lambda$442 +instanceKlass org/gradle/api/internal/artifacts/configurations/ResolveConfigurationResolutionBuildOperationDetails +instanceKlass org/gradle/api/internal/artifacts/configurations/ResolveConfigurationDependenciesBuildOperationType$Details +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfiguration$1 +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfiguration$$Lambda$441 +instanceKlass org/gradle/api/internal/artifacts/dependencies/AbstractExternalModuleDependency$$Lambda$440 +instanceKlass org/gradle/api/internal/initialization/RootScriptDomainObjectContext$CalculatedModelValueImpl +instanceKlass org/gradle/api/artifacts/ConfigurationVariant +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfigurationPublications$ConfigurationVariantFactory +instanceKlass org/gradle/api/internal/artifacts/DefaultPublishArtifactSet$ArtifactsFileCollection +instanceKlass org/gradle/api/internal/tasks/AbstractTaskDependency$1 +instanceKlass org/gradle/api/internal/tasks/AbstractTaskDependency +instanceKlass org/gradle/api/internal/file/collections/MinimalFileSet +instanceKlass org/gradle/api/internal/artifacts/DefaultDependencySet$MutationValidationAction +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfiguration$$Lambda$439 +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfiguration$ConfigurationDescription +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfiguration$ArtifactSetResult +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfiguration$ArtifactCollectionResolvedArtifactsFactory +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfiguration$AllArtifactsProvider +instanceKlass org/gradle/api/internal/artifacts/configurations/PublishArtifactSetProvider +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfiguration$ArtifactViewConfiguration +instanceKlass org/gradle/api/artifacts/ArtifactView$ViewConfiguration +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfiguration$DefaultResolutionHost +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfiguration$SelectedArtifactsProvider +instanceKlass org/gradle/api/internal/attributes/DefaultMutableAttributeContainer +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfiguration$$Lambda$438 +instanceKlass org/gradle/internal/lazy/Lazy$$Lambda$437 +instanceKlass org/gradle/internal/lazy/UnsafeLazy +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfiguration$$Lambda$436 +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfiguration$$Lambda$435 +instanceKlass org/gradle/api/artifacts/DependencyConstraint +instanceKlass org/gradle/api/artifacts/ExcludeRule +instanceKlass org/gradle/api/internal/file/collections/FileSystemMirroringFileTree +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfigurationPublications +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfiguration$ConfigurationResolvableDependencies +instanceKlass org/gradle/api/internal/artifacts/configurations/ResolvableDependenciesInternal +instanceKlass org/gradle/api/internal/DelegatingDomainObjectSet +instanceKlass org/gradle/api/internal/artifacts/configurations/OutgoingVariant +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfiguration$ConfigurationArtifactCollection +instanceKlass org/gradle/api/internal/artifacts/configurations/ArtifactCollectionInternal +instanceKlass org/gradle/api/artifacts/ArtifactCollection +instanceKlass org/gradle/internal/deprecation/DeprecationMessageBuilder$WithDocumentation +instanceKlass org/gradle/internal/logging/text/TreeFormatter +instanceKlass org/gradle/api/artifacts/ConfigurationPublications +instanceKlass org/gradle/api/internal/artifacts/configurations/ResolutionResultProvider +instanceKlass org/gradle/api/internal/artifacts/configurations/ResolutionHost +instanceKlass org/gradle/api/artifacts/ResolvableDependencies +instanceKlass org/gradle/api/artifacts/ArtifactView +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfiguration$ResolveState +instanceKlass org/gradle/api/internal/artifacts/ResolverResults +instanceKlass org/gradle/api/artifacts/DependencyConstraintSet +instanceKlass org/gradle/api/artifacts/DependencySet +instanceKlass org/gradle/api/artifacts/PublishArtifactSet +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/projectresult/ResolvedProjectConfiguration +instanceKlass org/gradle/api/internal/artifacts/configurations/DetachedConfigurationsProvider +instanceKlass org/gradle/internal/locking/NoOpDependencyLockingProvider +instanceKlass org/gradle/api/internal/artifacts/dependencies/AbstractVersionConstraint +instanceKlass org/gradle/api/internal/artifacts/VersionConstraintInternal +instanceKlass org/gradle/api/artifacts/MutableVersionConstraint +instanceKlass org/gradle/api/internal/artifacts/DefaultExcludeRuleContainer +instanceKlass org/gradle/api/artifacts/ExcludeRuleContainer +instanceKlass org/gradle/api/internal/artifacts/dependencies/ModuleDependencyCapabilitiesInternal +instanceKlass org/gradle/api/artifacts/ModuleDependencyCapabilitiesHandler +instanceKlass org/gradle/api/artifacts/DependencyArtifact +instanceKlass org/gradle/api/internal/artifacts/dependencies/AbstractDependency +instanceKlass org/gradle/api/internal/artifacts/ResolvableDependency +instanceKlass org/gradle/api/artifacts/ExternalModuleDependency +instanceKlass org/gradle/api/artifacts/ExternalDependency +instanceKlass org/gradle/internal/composite/DefaultBuildIncluder$$Lambda$434 +instanceKlass org/gradle/plugin/use/internal/DefaultPluginRequestApplicator$NotFound +instanceKlass org/gradle/api/plugins/quality/internal/AbstractCodeQualityPlugin +instanceKlass org/gradle/api/plugins/ApplicationPlugin$PreventDestinationOverwrite +instanceKlass org/gradle/api/plugins/ApplicationPlugin +instanceKlass org/gradle/plugin/use/resolve/internal/SimplePluginResolution +instanceKlass org/gradle/api/plugins/JavaPlugin$BuildableJavaComponentImpl +instanceKlass org/gradle/api/internal/component/BuildableJavaComponent +instanceKlass org/gradle/api/plugins/JavaPlugin +instanceKlass org/gradle/api/internal/artifacts/dsl/ModuleVersionSelectorParsers$StringConverter +instanceKlass org/gradle/api/internal/artifacts/dsl/ModuleVersionSelectorParsers +instanceKlass org/gradle/plugin/management/internal/DefaultPluginResolveDetails +instanceKlass org/gradle/plugin/management/PluginResolveDetails +instanceKlass org/gradle/plugin/use/internal/DefaultPluginRequestApplicator$$Lambda$433 +instanceKlass org/gradle/plugin/use/internal/DefaultPluginRequestApplicator$Result +instanceKlass org/gradle/plugin/use/resolve/internal/AlreadyOnClasspathPluginResolver +instanceKlass org/gradle/plugin/use/resolve/internal/ArtifactRepositoriesPluginResolver +instanceKlass org/gradle/plugin/use/internal/PluginResolverFactory$$Lambda$432 +instanceKlass org/gradle/plugin/use/resolve/internal/CorePluginResolver +instanceKlass org/gradle/plugin/use/resolve/internal/PluginResolution +instanceKlass org/gradle/plugin/use/resolve/internal/NoopPluginResolver +instanceKlass org/gradle/plugin/use/resolve/internal/CompositePluginResolver +instanceKlass org/gradle/api/internal/DefaultNamedDomainObjectCollection$ObjectBackedElementInfo +instanceKlass org/gradle/api/internal/artifacts/repositories/DefaultBaseRepositoryFactory$$Lambda$431 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/api/internal/artifacts/repositories/DefaultMavenArtifactRepository$$Lambda$430 +instanceKlass org/gradle/api/internal/artifacts/repositories/AbstractArtifactRepository$$Lambda$429 +instanceKlass com/google/common/base/Suppliers$MemoizingSupplier +instanceKlass com/google/common/base/Suppliers$NonSerializableMemoizingSupplier +instanceKlass org/gradle/api/internal/artifacts/repositories/AbstractArtifactRepository$$Lambda$428 +instanceKlass org/gradle/api/internal/artifacts/repositories/DefaultMavenArtifactRepository$$Lambda$427 +instanceKlass org/gradle/api/internal/artifacts/repositories/ArtifactResolutionDetails +instanceKlass org/gradle/internal/resolve/caching/ImplicitInputsCapturingInstantiator +instanceKlass org/gradle/api/internal/artifacts/repositories/AuthenticationSupporter +instanceKlass org/gradle/api/artifacts/repositories/PasswordCredentials +instanceKlass org/gradle/api/credentials/PasswordCredentials +instanceKlass org/gradle/api/credentials/Credentials +instanceKlass org/gradle/api/internal/artifacts/repositories/DefaultMavenArtifactRepository$MavenMetadataSources +instanceKlass org/gradle/api/internal/artifacts/repositories/DefaultUrlArtifactRepository +instanceKlass org/gradle/api/internal/artifacts/repositories/metadata/AbstractMetadataSource +instanceKlass org/gradle/api/internal/artifacts/repositories/maven/MavenMetadataLoader +instanceKlass org/gradle/api/internal/artifacts/repositories/metadata/DefaultMavenPomMetadataSource$MavenMetadataValidator +instanceKlass org/gradle/api/internal/artifacts/repositories/resolver/ExternalResourceResolver +instanceKlass org/gradle/api/internal/artifacts/repositories/resolver/ExternalResourceArtifactResolver +instanceKlass org/gradle/api/internal/artifacts/ModuleVersionPublisher +instanceKlass org/gradle/api/internal/artifacts/repositories/metadata/ImmutableMetadataSources +instanceKlass org/gradle/api/internal/artifacts/repositories/metadata/MetadataSource +instanceKlass org/gradle/api/artifacts/repositories/MavenArtifactRepository$MetadataSources +instanceKlass org/gradle/api/internal/artifacts/repositories/metadata/MetadataArtifactProvider +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ConfiguredModuleComponentRepository +instanceKlass org/gradle/api/internal/artifacts/repositories/descriptor/RepositoryDescriptor +instanceKlass org/gradle/api/artifacts/repositories/RepositoryResourceAccessor +instanceKlass org/gradle/api/internal/artifacts/repositories/RepositoryContentDescriptorInternal +instanceKlass org/gradle/api/internal/DefaultPolymorphicDomainObjectContainer$2 +instanceKlass org/gradle/api/internal/DefaultPolymorphicNamedEntityInstantiator +instanceKlass org/gradle/api/internal/PolymorphicNamedEntityInstantiator +instanceKlass org/gradle/api/internal/artifacts/repositories/AbstractArtifactRepository +instanceKlass org/gradle/api/internal/artifacts/repositories/ContentFilteringRepository +instanceKlass org/gradle/api/internal/artifacts/repositories/ArtifactRepositoryInternal +instanceKlass org/gradle/internal/artifacts/repositories/AuthenticationSupportedInternal +instanceKlass org/gradle/api/internal/artifacts/repositories/PublicationAwareRepository +instanceKlass org/gradle/api/internal/artifacts/repositories/ResolutionAwareRepository +instanceKlass org/gradle/api/internal/artifacts/repositories/DefaultBaseRepositoryFactory$NamedMavenRepositoryDescriber +instanceKlass org/gradle/plugin/use/internal/DefaultPluginArtifactRepositories +instanceKlass org/gradle/plugin/management/internal/MultiPluginRequests +instanceKlass org/gradle/plugin/use/internal/PluginRequestCollector$2 +instanceKlass org/gradle/plugin/use/internal/PluginRequestCollector$1 +instanceKlass com/google/common/base/Strings +instanceKlass org/gradle/plugin/use/internal/PluginRequestCollector$PluginDependencySpecImpl +instanceKlass org/gradle/plugin/use/PluginDependency +instanceKlass org/gradle/api/provider/ProviderConvertible +instanceKlass org/gradle/plugin/use/PluginDependencySpec +instanceKlass org/gradle/plugin/use/internal/PluginRequestCollector$PluginDependenciesSpecImpl +instanceKlass org/gradle/plugin/use/PluginDependenciesSpec +instanceKlass org/codehaus/groovy/runtime/metaclass/ClosureMetaClass$StandardClosureChooser +instanceKlass org/gradle/internal/service/scopes/ProjectScopeServices$$Lambda$426 +instanceKlass org/gradle/plugin/use/internal/PluginRequestCollector +instanceKlass org/gradle/api/artifacts/VersionCatalogsExtension +instanceKlass org/gradle/configuration/ProjectScriptTarget +instanceKlass org/gradle/internal/build/event/types/DefaultScriptPluginIdentifier +instanceKlass org/gradle/configuration/project/BuildScriptProcessor$$Lambda$425 +instanceKlass org/gradle/internal/service/scopes/ProjectScopeServices$ScriptScopedContext +instanceKlass org/gradle/internal/service/scopes/ProjectScopeServices$ProjectBackedModuleMetaDataProvider +instanceKlass org/gradle/internal/service/scopes/ProjectBackedPropertyHost +instanceKlass org/gradle/nativeplatform/internal/CompilerOutputFileNamingScheme +instanceKlass org/gradle/api/artifacts/type/ArtifactTypeContainer +instanceKlass org/gradle/buildinit/plugins/WrapperPlugin$$Lambda$424 +instanceKlass org/gradle/buildinit/plugins/WrapperPlugin +instanceKlass org/gradle/buildinit/plugins/BuildInitPlugin$$Lambda$423 +instanceKlass org/gradle/api/internal/collections/AbstractIterationOrderRetainingElementSource$ValuePointer +instanceKlass org/gradle/buildinit/plugins/BuildInitPlugin$InitBuildOnlyIfSpec +instanceKlass org/gradle/buildinit/plugins/BuildInitPlugin$InitBuildDependsOnCallable +instanceKlass org/gradle/buildinit/plugins/BuildInitPlugin$FileDetails +instanceKlass org/gradle/buildinit/plugins/BuildInitPlugin +instanceKlass org/gradle/kotlin/dsl/tooling/builders/KotlinDslScriptsModelBuilder +instanceKlass kotlin/collections/ArraysUtilJVM +instanceKlass kotlin/collections/ArraysKt__ArraysJVMKt +instanceKlass kotlin/collections/CollectionsKt__CollectionsJVMKt +instanceKlass org/gradle/kotlin/dsl/tooling/builders/KotlinBuildScriptTemplateModelBuilder +instanceKlass org/gradle/kotlin/dsl/tooling/builders/KotlinBuildScriptModelBuilder +instanceKlass org/gradle/tooling/internal/protocol/cpp/InternalCppTestSuite +instanceKlass org/gradle/tooling/internal/protocol/cpp/InternalCppLibrary +instanceKlass org/gradle/tooling/internal/protocol/cpp/InternalCppApplication +instanceKlass org/gradle/language/cpp/internal/tooling/DefaultCppComponentModel +instanceKlass org/gradle/language/cpp/CppComponent +instanceKlass org/gradle/language/ComponentWithTargetMachines +instanceKlass org/gradle/language/ComponentWithDependencies +instanceKlass org/gradle/language/ComponentWithBinaries +instanceKlass org/gradle/api/component/SoftwareComponent +instanceKlass org/gradle/language/cpp/internal/tooling/CppModelBuilder +instanceKlass org/gradle/plugins/ide/internal/tooling/BuildEnvironmentBuilder +instanceKlass org/gradle/plugins/ide/internal/tooling/PublicationsBuilder +instanceKlass org/gradle/plugins/ide/internal/tooling/model/TaskNameComparator +instanceKlass org/gradle/plugins/ide/internal/tooling/BuildInvocationsBuilder +instanceKlass org/gradle/plugins/ide/internal/tooling/BasicIdeaModelBuilder +instanceKlass org/gradle/plugins/ide/internal/tooling/model/PartialBasicGradleProject +instanceKlass org/gradle/plugins/ide/internal/tooling/GradleBuildBuilder +instanceKlass org/gradle/tooling/provider/model/internal/BuildScopeModelBuilder +instanceKlass org/gradle/plugins/ide/internal/configurer/HierarchicalElementAdapter +instanceKlass org/gradle/plugins/ide/internal/configurer/EclipseModelAwareUniqueProjectNameProvider +instanceKlass org/gradle/plugins/ide/eclipse/model/AbstractClasspathEntry +instanceKlass org/gradle/plugins/ide/eclipse/model/ClasspathEntry +instanceKlass org/objectweb/asm/Opcodes +instanceKlass org/gradle/plugins/ide/internal/tooling/EclipseModelBuilder +instanceKlass org/gradle/plugins/ide/internal/tooling/RunEclipseTasksBuilder +instanceKlass org/gradle/plugins/ide/internal/tooling/RunBuildDependenciesTaskBuilder +instanceKlass org/gradle/tooling/provider/model/ParameterizedToolingModelBuilder +instanceKlass org/gradle/tooling/model/idea/IdeaLanguageLevel +instanceKlass org/gradle/tooling/model/GradleModuleVersion +instanceKlass org/gradle/tooling/model/idea/IdeaDependencyScope +instanceKlass org/gradle/tooling/model/idea/IdeaCompilerOutput +instanceKlass org/gradle/plugins/ide/internal/tooling/IdeaModelBuilder +instanceKlass org/gradle/plugins/ide/internal/tooling/model/LaunchableGradleTask +instanceKlass org/gradle/tooling/internal/protocol/InternalLaunchable +instanceKlass org/gradle/tooling/internal/gradle/GradleProjectIdentity +instanceKlass org/gradle/tooling/internal/gradle/GradleBuildIdentity +instanceKlass org/gradle/plugins/ide/internal/tooling/GradleProjectBuilder +instanceKlass org/gradle/internal/service/scopes/BuildScopeServices$$Lambda$422 +instanceKlass org/gradle/tooling/provider/model/internal/DefaultToolingModelBuilderRegistry$RegistrationImpl +instanceKlass org/gradle/tooling/provider/model/internal/DefaultToolingModelBuilderRegistry$VoidToolingModelBuilder +instanceKlass org/gradle/tooling/provider/model/internal/ToolingModelBuilderLookup$Registration +instanceKlass org/gradle/tooling/provider/model/internal/ToolingModelBuilderLookup$Builder +instanceKlass org/gradle/plugins/ide/internal/tooling/ToolingModelServices$BuildScopeToolingServices$1 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/projectmodule/DefaultProjectPublicationRegistry +instanceKlass org/gradle/api/internal/project/DefaultProjectTaskLister +instanceKlass org/gradle/jvm/toolchain/internal/task/ShowToolchainsTaskConfigurator$$Lambda$421 +instanceKlass org/gradle/api/internal/provider/Collectors$SingleElement +instanceKlass org/gradle/api/internal/collections/FilteredCollection$FilteringIterator +instanceKlass org/gradle/api/internal/collections/CollectionFilter$1 +instanceKlass org/gradle/api/plugins/HelpTasksPlugin$$Lambda$420 +instanceKlass org/gradle/api/internal/DefaultNamedDomainObjectCollection$FilteredIndex +instanceKlass org/gradle/api/internal/collections/DefaultCollectionEventRegister$FilteredEventRegister +instanceKlass org/gradle/api/internal/collections/FilteredCollection +instanceKlass org/gradle/api/specs/Specs$2 +instanceKlass org/gradle/api/specs/Specs$1 +instanceKlass org/gradle/api/specs/Specs +instanceKlass org/gradle/api/internal/tasks/DefaultRealizableTaskCollection +instanceKlass org/gradle/api/plugins/HelpTasksPlugin$$Lambda$419 +instanceKlass org/apache/commons/lang/text/StrTokenizer +instanceKlass org/apache/commons/lang/text/StrBuilder +instanceKlass org/objectweb/asm/Handle +instanceKlass org/objectweb/asm/Context +instanceKlass org/objectweb/asm/ClassReader +instanceKlass org/gradle/api/internal/DefaultNamedDomainObjectCollection$ProviderBackedElementInfo +instanceKlass org/gradle/api/internal/DefaultNamedDomainObjectCollection$ElementInfo +instanceKlass org/gradle/api/internal/provider/Collectors$ElementFromProvider +instanceKlass org/gradle/api/internal/provider/Collectors$TypedCollector +instanceKlass org/gradle/api/internal/provider/Collectors$ProvidedCollector +instanceKlass org/gradle/api/internal/provider/ChangingValue +instanceKlass org/gradle/configuration/internal/DefaultUserCodeApplicationContext$CurrentApplication$1 +instanceKlass org/gradle/api/internal/DefaultCollectionCallbackActionDecorator$BuildOperationEmittingAction +instanceKlass org/gradle/api/internal/DefaultMutationGuard$2 +instanceKlass org/gradle/api/internal/tasks/DefaultTaskContainer$RealizeDetails +instanceKlass com/google/common/reflect/Reflection +instanceKlass com/google/common/reflect/Types$TypeVariableInvocationHandler +instanceKlass com/google/common/reflect/Types$TypeVariableImpl +instanceKlass com/google/common/reflect/Types$NativeTypeVariableEquals +instanceKlass org/gradle/api/internal/provider/ValueSupplier$ExecutionTimeValue +instanceKlass org/gradle/api/internal/provider/ValueSupplier$ValueProducer +instanceKlass org/gradle/tooling/internal/provider/runner/PluginApplicationTracker$$Lambda$418 +instanceKlass org/gradle/tooling/internal/provider/runner/TaskOriginTracker$$Lambda$417 +instanceKlass org/gradle/api/internal/tasks/DefaultTaskContainer$RegisterDetails +instanceKlass org/gradle/api/internal/tasks/DefaultTaskContainer$3 +instanceKlass org/gradle/model/internal/registry/RuleBindings$ScopeIndex +instanceKlass org/gradle/model/internal/registry/RuleBindings$PredicateMatches +instanceKlass org/gradle/internal/service/scopes/ProjectScopeServices$$Lambda$416 +instanceKlass org/gradle/model/internal/registry/DefaultModelRegistry$$Lambda$415 +instanceKlass org/gradle/model/internal/registry/DefaultModelRegistry$5 +instanceKlass org/gradle/model/internal/registry/NodeAtState +instanceKlass org/gradle/model/internal/registry/DefaultModelRegistry$GoalGraph +instanceKlass org/gradle/model/internal/registry/RuleBindings$NodeAtStateIndex +instanceKlass org/gradle/model/internal/registry/RuleBindings$TypePredicateIndex +instanceKlass org/gradle/model/internal/registry/RuleBindings$PathPredicateIndex +instanceKlass org/gradle/model/internal/registry/RuleBindings +instanceKlass org/gradle/model/internal/registry/ModelGraph +instanceKlass org/gradle/model/internal/core/DefaultModelRegistration +instanceKlass org/gradle/model/internal/core/AbstractModelAction +instanceKlass org/gradle/model/internal/core/EmptyModelProjection +instanceKlass org/gradle/model/internal/core/ModelProjection +instanceKlass org/gradle/model/internal/core/ModelAdapter +instanceKlass org/gradle/model/internal/core/ModelPromise +instanceKlass org/gradle/model/internal/core/ModelRegistrations$Builder$DescriptorReference +instanceKlass org/gradle/model/internal/core/ModelRegistration +instanceKlass org/gradle/model/internal/core/ModelAction +instanceKlass org/gradle/model/internal/core/ModelRegistrations$Builder +instanceKlass org/gradle/model/internal/core/ModelRegistrations +instanceKlass org/gradle/internal/service/scopes/ProjectScopeServices$$Lambda$414 +instanceKlass org/gradle/model/internal/registry/BoringProjectState +instanceKlass org/gradle/model/internal/registry/ModelNodeInternal +instanceKlass org/gradle/model/internal/core/ModelPredicate +instanceKlass org/gradle/model/internal/registry/DefaultModelRegistry$ModelGoal +instanceKlass org/gradle/model/internal/registry/DefaultModelRegistry +instanceKlass org/gradle/model/internal/registry/ModelRegistryInternal +instanceKlass org/gradle/tooling/internal/provider/runner/PluginApplicationTracker$PluginApplication +instanceKlass org/gradle/internal/build/event/types/DefaultBinaryPluginIdentifier +instanceKlass org/gradle/tooling/internal/provider/runner/PluginApplicationTracker$$Lambda$413 +instanceKlass org/gradle/api/internal/plugins/DefaultPluginManager$OperationDetails +instanceKlass org/gradle/api/internal/plugins/DefaultPluginManager$AddPluginBuildOperation +instanceKlass org/gradle/api/internal/plugins/DefaultPluginManager$$Lambda$412 +instanceKlass org/gradle/api/internal/plugins/DefaultPluginManager$1 +instanceKlass org/gradle/api/internal/plugins/DefaultPotentialPluginWithId +instanceKlass org/gradle/api/internal/plugins/PluginInspector$PotentialImperativeClassPlugin +instanceKlass com/google/common/collect/TransformedIterator +instanceKlass com/google/common/base/Predicates +instanceKlass org/gradle/model/internal/inspect/ModelRuleSourceDetector$3 +instanceKlass org/gradle/api/plugins/HelpTasksPlugin$HelpAction +instanceKlass org/gradle/api/plugins/HelpTasksPlugin$ProjectReportTaskAction +instanceKlass org/gradle/api/plugins/HelpTasksPlugin$TaskReportTaskAction +instanceKlass org/gradle/api/plugins/HelpTasksPlugin$PropertyReportTaskAction +instanceKlass org/gradle/api/plugins/HelpTasksPlugin$DependencyInsightReportTaskAction +instanceKlass org/gradle/api/plugins/HelpTasksPlugin$DependencyReportTaskAction +instanceKlass org/gradle/api/plugins/HelpTasksPlugin$BuildEnvironmentReportTaskAction +instanceKlass org/gradle/api/plugins/HelpTasksPlugin$ComponentReportAction +instanceKlass org/gradle/api/plugins/HelpTasksPlugin$ModelReportAction +instanceKlass org/gradle/api/plugins/HelpTasksPlugin$DependentComponentsReportAction +instanceKlass org/gradle/api/plugins/HelpTasksPlugin +instanceKlass org/gradle/api/internal/plugins/PluginDescriptor +instanceKlass org/gradle/api/internal/plugins/ClassloaderBackedPluginDescriptorLocator +instanceKlass org/gradle/api/internal/plugins/DefaultPluginRegistry$PluginIdLookupCacheKey +instanceKlass com/google/common/base/Optional +instanceKlass com/google/common/collect/FluentIterable +instanceKlass org/gradle/model/internal/inspect/ModelRuleExtractor$CachedRuleSource +instanceKlass org/gradle/model/internal/inspect/MethodModelRuleExtractionContext +instanceKlass org/gradle/model/Rules +instanceKlass org/gradle/model/Validate +instanceKlass org/gradle/model/Finalize +instanceKlass org/gradle/model/Mutate +instanceKlass org/gradle/model/Defaults +instanceKlass org/gradle/model/internal/core/NodeInitializerRegistry +instanceKlass org/gradle/model/Model +instanceKlass org/gradle/model/internal/inspect/MethodModelRuleExtractors +instanceKlass org/gradle/model/internal/manage/instance/ManagedInstance +instanceKlass org/gradle/model/internal/manage/schema/extract/ManagedProxyClassGenerator$GeneratedView +instanceKlass org/gradle/model/internal/manage/instance/ModelElementState +instanceKlass org/gradle/model/internal/manage/instance/GeneratedViewState +instanceKlass org/gradle/internal/reflect/Types$TypeVisitor +instanceKlass org/gradle/model/internal/manage/binding/StructMethodBinding +instanceKlass org/gradle/model/internal/manage/binding/StructBindings +instanceKlass org/gradle/model/internal/manage/binding/StructBindingValidationProblemCollector +instanceKlass org/gradle/model/internal/manage/binding/DefaultStructBindingsStore +instanceKlass org/gradle/platform/base/ComponentBinaries +instanceKlass org/gradle/platform/base/ComponentType +instanceKlass org/gradle/platform/base/VariantComponentSpec +instanceKlass org/gradle/platform/base/VariantComponent +instanceKlass org/gradle/platform/base/SourceComponentSpec +instanceKlass org/gradle/language/base/LanguageSourceSet +instanceKlass org/gradle/model/internal/typeregistration/BaseInstanceFactory +instanceKlass org/gradle/model/internal/typeregistration/InstanceFactory +instanceKlass org/gradle/model/internal/manage/schema/cache/ModelSchemaCache +instanceKlass org/gradle/model/internal/manage/schema/extract/DefaultModelSchemaStore +instanceKlass org/gradle/model/RuleSource +instanceKlass org/gradle/model/internal/manage/schema/extract/StructSchemaExtractionStrategySupport +instanceKlass org/gradle/model/internal/manage/schema/extract/JavaUtilCollectionStrategy +instanceKlass org/gradle/model/internal/manage/schema/extract/ModelMapStrategy +instanceKlass org/gradle/model/internal/manage/schema/extract/AbstractProxyClassGenerator +instanceKlass org/gradle/model/internal/manage/schema/extract/SpecializedMapStrategy +instanceKlass org/gradle/model/internal/type/WildcardTypeWrapper +instanceKlass org/gradle/model/internal/type/WildcardWrapper +instanceKlass org/gradle/model/ModelSet +instanceKlass org/gradle/model/internal/manage/schema/CompositeSchema +instanceKlass org/gradle/model/internal/manage/schema/AbstractModelSchema +instanceKlass org/gradle/model/internal/manage/schema/ManagedImplSchema +instanceKlass org/gradle/model/internal/manage/schema/extract/ModelSetStrategy +instanceKlass org/gradle/model/internal/manage/schema/extract/JdkValueTypeStrategy +instanceKlass org/gradle/model/internal/manage/schema/extract/EnumStrategy +instanceKlass org/gradle/model/internal/manage/schema/ModelSchema +instanceKlass org/gradle/model/internal/manage/schema/extract/PrimitiveStrategy +instanceKlass org/gradle/model/internal/manage/schema/extract/ModelSchemaExtractionContext +instanceKlass org/gradle/model/internal/manage/schema/extract/DefaultModelSchemaExtractor +instanceKlass org/gradle/platform/base/BinaryTasks +instanceKlass org/gradle/model/internal/core/ModelPath$Cache +instanceKlass org/gradle/platform/base/BinaryContainer +instanceKlass org/gradle/model/ModelMap +instanceKlass org/gradle/model/internal/type/ParameterizedTypeWrapper +instanceKlass org/gradle/model/internal/inspect/ExtractedModelRule +instanceKlass org/gradle/model/internal/inspect/RuleSourceValidationProblemCollector +instanceKlass org/gradle/model/internal/inspect/AbstractAnnotationDrivenModelRuleExtractor +instanceKlass org/gradle/model/internal/manage/schema/extract/ModelSchemaAspect +instanceKlass org/gradle/platform/base/internal/VariantAspectExtractionStrategy +instanceKlass org/gradle/api/internal/plugins/RuleBasedPluginTarget +instanceKlass org/gradle/configuration/project/NotifyProjectBeforeEvaluatedBuildOperationType$1 +instanceKlass org/gradle/configuration/project/NotifyProjectBeforeEvaluatedBuildOperationType$Result +instanceKlass org/gradle/configuration/project/NotifyProjectBeforeEvaluatedBuildOperationType +instanceKlass org/gradle/internal/operations/BuildOperationType +instanceKlass org/gradle/util/internal/NameValidator +instanceKlass org/gradle/configuration/project/LifecycleProjectEvaluator$NotifyProjectBeforeEvaluatedDetails +instanceKlass org/gradle/configuration/project/NotifyProjectBeforeEvaluatedBuildOperationType$Details +instanceKlass org/gradle/configuration/project/LifecycleProjectEvaluator$NotifyBeforeEvaluate +instanceKlass org/gradle/internal/work/DefaultWorkerLeaseService$2 +instanceKlass org/gradle/api/internal/project/DefaultProjectStateRegistry$ProjectStateImpl$$Lambda$411 +instanceKlass org/gradle/api/internal/project/DefaultProjectStateRegistry$ProjectStateImpl$$Lambda$410 +instanceKlass org/gradle/configuration/project/LifecycleProjectEvaluator$EvaluateProject$$Lambda$409 +instanceKlass org/gradle/configuration/project/LifecycleProjectEvaluator$ConfigureProjectDetails +instanceKlass org/gradle/configuration/project/LifecycleProjectEvaluator$EvaluateProject +instanceKlass org/gradle/configuration/project/LifecycleProjectEvaluator +instanceKlass org/gradle/configuration/project/DelayedConfigurationActions +instanceKlass org/gradle/configuration/project/BuildScriptProcessor +instanceKlass org/gradle/buildinit/plugins/internal/action/WrapperPluginAutoApplyAction +instanceKlass org/gradle/buildinit/plugins/internal/action/BuildInitAutoApplyAction +instanceKlass org/gradle/kotlin/dsl/tooling/builders/KotlinScriptingModelBuildersRegistrationAction +instanceKlass org/gradle/jvm/toolchain/internal/task/ShowToolchainsTaskConfigurator +instanceKlass org/gradle/api/plugins/internal/HelpTasksAutoApplyAction +instanceKlass org/gradle/configuration/project/ConfigureActionsProjectEvaluator +instanceKlass org/gradle/initialization/NotifyingBuildLoader$3$1 +instanceKlass org/gradle/initialization/NotifyProjectsLoadedBuildOperationType$Details +instanceKlass org/gradle/initialization/NotifyingBuildLoader$3 +instanceKlass org/gradle/initialization/NotifyingBuildLoader$BuildStructureOperationResult +instanceKlass org/gradle/initialization/LoadProjectsBuildOperationType$Result +instanceKlass org/gradle/initialization/NotifyingBuildLoader$BuildStructureOperationProject +instanceKlass org/gradle/api/internal/project/DefaultProjectStateRegistry$ProjectStateImpl$$Lambda$408 +instanceKlass org/gradle/initialization/ProjectPropertySettingBuildLoader$CachingPropertyApplicator +instanceKlass org/gradle/api/internal/project/ProjectFactory$$Lambda$407 +instanceKlass org/gradle/api/internal/project/DefaultProject$$Lambda$406 +instanceKlass org/gradle/internal/extensibility/ExtensibleDynamicObject$2 +instanceKlass org/gradle/internal/BiAction +instanceKlass org/gradle/api/internal/tasks/DefaultTaskContainerFactory$1 +instanceKlass org/gradle/api/internal/tasks/DefaultTaskContainer$7 +instanceKlass org/gradle/api/internal/tasks/DefaultTaskContainer$6 +instanceKlass org/gradle/api/Task$Namer +instanceKlass org/gradle/model/internal/core/MutableModelNode +instanceKlass org/gradle/model/internal/core/ModelNode +instanceKlass org/gradle/api/tasks/TaskProvider +instanceKlass org/gradle/model/internal/core/ModelPath +instanceKlass org/gradle/api/internal/project/taskfactory/TaskIdentity +instanceKlass org/gradle/api/internal/tasks/RealizeTaskBuildOperationType$Result +instanceKlass org/gradle/api/internal/tasks/RegisterTaskBuildOperationType$Result +instanceKlass org/gradle/api/internal/project/taskfactory/TaskFactory +instanceKlass org/gradle/api/internal/project/taskfactory/AnnotationProcessingTaskFactory +instanceKlass org/gradle/api/internal/project/taskfactory/DefaultTaskClassInfoStore$$Lambda$405 +instanceKlass org/gradle/api/internal/project/taskfactory/TaskClassInfo +instanceKlass org/gradle/api/internal/project/taskfactory/DefaultTaskClassInfoStore$AbstractIncrementalTaskActionFactory +instanceKlass org/gradle/api/internal/project/taskfactory/TaskActionFactory +instanceKlass org/gradle/api/internal/project/taskfactory/DefaultTaskClassInfoStore +instanceKlass org/gradle/model/internal/core/rule/describe/SimpleModelRuleDescriptor$1 +instanceKlass org/gradle/internal/Factories$2 +instanceKlass org/gradle/model/internal/core/rule/describe/AbstractModelRuleDescriptor +instanceKlass org/gradle/model/internal/core/rule/describe/ModelRuleDescriptor +instanceKlass org/gradle/model/internal/core/ModelReference +instanceKlass org/gradle/api/internal/tasks/DefaultTaskContainerFactory +instanceKlass org/gradle/internal/service/scopes/WorkerSharedProjectScopeServices +instanceKlass org/gradle/nativeplatform/internal/CompilerOutputFileNamingSchemeFactory +instanceKlass org/gradle/nativeplatform/internal/services/NativeBinaryServices$ProjectCompilerServices +instanceKlass org/gradle/language/internal/DefaultNativeComponentFactory +instanceKlass org/gradle/language/internal/NativeComponentFactory +instanceKlass org/gradle/language/nativeplatform/internal/toolchains/ToolChainSelector$Result +instanceKlass org/gradle/language/nativeplatform/internal/toolchains/DefaultToolChainSelector +instanceKlass org/gradle/language/nativeplatform/internal/toolchains/ToolChainSelector +instanceKlass org/gradle/language/nativeplatform/internal/incremental/IncrementalCompilerBuilder$IncrementalCompiler +instanceKlass org/gradle/language/nativeplatform/internal/incremental/DefaultIncrementalCompilerBuilder +instanceKlass org/gradle/language/nativeplatform/internal/incremental/IncrementalCompilerBuilder +instanceKlass org/gradle/plugins/ide/internal/DefaultIdeArtifactRegistry +instanceKlass org/gradle/plugins/ide/internal/IdeArtifactRegistry +instanceKlass org/gradle/internal/snapshot/Snapshot +instanceKlass org/gradle/internal/snapshot/impl/DefaultSnapshottingService +instanceKlass org/gradle/internal/snapshot/SnapshottingService +instanceKlass org/gradle/internal/enterprise/test/TestTaskForkOptions +instanceKlass org/gradle/internal/enterprise/test/TestTaskFilters +instanceKlass org/gradle/internal/enterprise/test/TestTaskProperties +instanceKlass org/gradle/internal/enterprise/test/impl/DefaultTestTaskPropertiesService +instanceKlass org/gradle/internal/enterprise/test/TestTaskPropertiesService +instanceKlass org/gradle/buildinit/plugins/internal/ProjectLayoutSetupRegistry +instanceKlass org/gradle/buildinit/plugins/internal/services/BuildInitServices$ProjectScopeBuildInitServices +instanceKlass org/gradle/api/publish/maven/internal/publisher/MavenDuplicatePublicationTracker +instanceKlass org/gradle/api/tasks/SourceSetContainer +instanceKlass org/gradle/api/plugins/jvm/internal/JvmPluginServices +instanceKlass org/gradle/api/plugins/jvm/internal/JvmModelingServices +instanceKlass org/gradle/api/plugins/jvm/internal/JvmEcosystemUtilities +instanceKlass org/gradle/api/plugins/internal/PluginAuthorServices$ProjectScopeServices +instanceKlass org/gradle/jvm/toolchain/JavaToolchainSpec +instanceKlass org/gradle/jvm/toolchain/internal/DefaultJavaToolchainService +instanceKlass org/gradle/jvm/toolchain/JavaToolchainService +instanceKlass org/gradle/jvm/toolchain/internal/JavaToolchainQueryService +instanceKlass org/gradle/jvm/toolchain/install/internal/AdoptOpenJdkDownloader +instanceKlass org/gradle/jvm/toolchain/install/internal/AdoptOpenJdkRemoteBinary +instanceKlass org/gradle/jvm/toolchain/install/internal/DefaultJavaToolchainProvisioningService +instanceKlass org/gradle/jvm/toolchain/install/internal/JavaToolchainProvisioningService +instanceKlass org/gradle/jvm/toolchain/internal/JavaToolchainFactory +instanceKlass org/gradle/jvm/toolchain/internal/ToolchainToolFactory +instanceKlass org/gradle/language/java/internal/JavaLanguagePluginServiceRegistry$JavaProjectScopeServices +instanceKlass org/gradle/jvm/toolchain/internal/JavaCompilerFactory +instanceKlass org/gradle/language/java/internal/JavaToolChainServiceRegistry$ProjectScopeCompileServices +instanceKlass org/gradle/api/internal/tasks/compile/GroovyCompilerFactory +instanceKlass org/gradle/language/base/internal/compile/CompilerFactory +instanceKlass org/gradle/api/internal/tasks/compile/GroovyServices$ProjectServices +instanceKlass org/gradle/api/publish/ivy/internal/publisher/IvyDuplicatePublicationTracker +instanceKlass org/gradle/workers/internal/BuildOperationAwareWorker +instanceKlass org/gradle/workers/internal/IsolatedClassloaderWorkerFactory +instanceKlass org/gradle/workers/internal/WorkerDaemonFactory +instanceKlass org/gradle/workers/internal/WorkerFactory +instanceKlass org/gradle/workers/WorkerExecutor +instanceKlass org/gradle/workers/internal/WorkersServices$ProjectScopeServices +instanceKlass org/gradle/internal/service/scopes/ProjectScopeServices$$Lambda$404 +instanceKlass org/gradle/api/internal/component/ComponentRegistry +instanceKlass org/gradle/api/internal/project/taskfactory/TaskInstantiator +instanceKlass org/gradle/model/internal/core/NamedEntityInstantiator +instanceKlass org/gradle/normalization/internal/RuntimeClasspathNormalizationInternal +instanceKlass org/gradle/normalization/RuntimeClasspathNormalization +instanceKlass org/gradle/normalization/InputNormalization +instanceKlass org/gradle/api/internal/file/SourceDirectorySetFactory +instanceKlass org/gradle/api/internal/project/ant/AntLoggingAdapterFactory +instanceKlass org/gradle/internal/typeconversion/TypeConverter +instanceKlass org/gradle/api/internal/project/DeferredProjectConfiguration +instanceKlass org/gradle/api/internal/file/DefaultProjectLayout +instanceKlass org/gradle/api/internal/file/TaskFileVarFactory +instanceKlass org/gradle/internal/service/scopes/GradleScopeServices$1 +instanceKlass org/gradle/initialization/NotifyingBuildLoader$2$1 +instanceKlass org/gradle/initialization/LoadProjectsBuildOperationType$Details +instanceKlass org/gradle/initialization/NotifyingBuildLoader$2 +instanceKlass org/gradle/api/internal/catalog/DefaultDependenciesAccessors$$Lambda$403 +instanceKlass org/gradle/api/internal/catalog/DefaultVersionCatalog +instanceKlass org/gradle/api/internal/DefaultDomainObjectCollection$IteratorImpl +instanceKlass org/gradle/internal/serialization/Cached +instanceKlass org/gradle/internal/instantiation/generator/ManagedObjectFactory$$Lambda$402 +instanceKlass org/gradle/internal/instantiation/generator/ManagedObjectFactory$ManagedPropertyName +instanceKlass org/gradle/api/internal/catalog/DefaultDependenciesAccessors +instanceKlass org/gradle/api/artifacts/ProjectDependency +instanceKlass org/gradle/api/artifacts/SelfResolvingDependency +instanceKlass org/gradle/api/artifacts/ModuleDependency +instanceKlass org/gradle/internal/execution/workspace/impl/DefaultImmutableWorkspaceProvider$$Lambda$401 +instanceKlass org/gradle/internal/execution/workspace/impl/DefaultImmutableWorkspaceProvider$$Lambda$400 +instanceKlass org/gradle/api/internal/DependencyClassPathProvider +instanceKlass org/gradle/configuration/BuildOperationFiringProjectsPreparer$ConfigureBuild$1 +instanceKlass org/gradle/initialization/ConfigureBuildBuildOperationType$Details +instanceKlass org/gradle/configuration/BuildOperationFiringProjectsPreparer$ConfigureBuild +instanceKlass org/gradle/initialization/VintageBuildModelController$$Lambda$399 +instanceKlass org/gradle/internal/resources/TaskExecutionLockRegistry$2 +instanceKlass org/gradle/internal/resources/ProjectLockRegistry$1 +instanceKlass org/gradle/api/internal/project/DefaultProjectStateRegistry$ProjectStateImpl +instanceKlass org/gradle/api/internal/artifacts/DefaultProjectComponentIdentifier +instanceKlass org/gradle/api/internal/project/DefaultProjectStateRegistry$DefaultBuildProjectRegistry +instanceKlass org/gradle/internal/build/BuildProjectRegistry +instanceKlass org/gradle/initialization/AbstractProjectSpec +instanceKlass org/gradle/initialization/ProjectSpec +instanceKlass org/gradle/initialization/ProjectSpecs +instanceKlass org/gradle/initialization/DefaultSettingsLoader$$Lambda$398 +instanceKlass org/gradle/caching/internal/controller/RootBuildCacheControllerRef$CloseShieldBuildCacheController +instanceKlass org/gradle/caching/internal/controller/NoOpBuildCacheController +instanceKlass org/gradle/caching/internal/services/BuildCacheControllerFactory$ResultImpl +instanceKlass org/gradle/caching/internal/FinalizeBuildCacheConfigurationBuildOperationType$Result +instanceKlass org/gradle/caching/internal/services/BuildCacheControllerFactory$DetailsImpl +instanceKlass org/gradle/caching/internal/FinalizeBuildCacheConfigurationBuildOperationType$Details +instanceKlass org/gradle/caching/internal/FinalizeBuildCacheConfigurationBuildOperationType$Result$BuildCacheDescription +instanceKlass org/gradle/caching/internal/services/BuildCacheControllerFactory$1 +instanceKlass org/gradle/caching/BuildCacheServiceFactory$Describer +instanceKlass org/gradle/caching/internal/services/BuildCacheControllerFactory +instanceKlass org/gradle/caching/configuration/internal/DefaultBuildCacheConfiguration +instanceKlass org/gradle/caching/local/internal/DirectoryBuildCacheServiceFactory +instanceKlass org/gradle/internal/management/DefaultDependencyResolutionManagement$$Lambda$397 +instanceKlass org/gradle/internal/management/DefaultDependencyResolutionManagement$$Lambda$396 +instanceKlass jdk/internal/math/FDBigInteger +instanceKlass org/gradle/internal/time/TimeFormatting +instanceKlass org/gradle/groovy/scripts/internal/FileCacheBackedScriptClassCompiler$EmptyCompiledScript +instanceKlass org/gradle/internal/event/BroadcastDispatch$ActionInvocationHandler +instanceKlass org/gradle/internal/operations/notify/BuildOperationNotificationBridge$2$$Lambda$395 +instanceKlass org/gradle/vcs/VcsMappings +instanceKlass org/gradle/vcs/internal/services/VersionControlServices$VersionControlSettingsServices +instanceKlass org/gradle/plugin/internal/PluginUsePluginServiceRegistry$SettingsScopeServices +instanceKlass org/gradle/internal/service/scopes/SettingsScopeServices$1 +instanceKlass org/gradle/initialization/IncludedBuildSpec +instanceKlass org/gradle/initialization/BuildOperationSettingsProcessor$2$1 +instanceKlass org/gradle/initialization/EvaluateSettingsBuildOperationType$Details +instanceKlass org/gradle/initialization/BuildOperationSettingsProcessor$2 +instanceKlass org/gradle/internal/logging/sink/ProgressLogEventGenerator$1 +instanceKlass org/gradle/configuration/internal/DefaultListenerBuildOperationDecorator$1 +instanceKlass org/gradle/listener/ClosureBackedMethodInvocationDispatch +instanceKlass org/codehaus/groovy/ast/ClassNode$$Lambda$394 +instanceKlass org/codehaus/groovy/ast/ClassNode$MapOfLists +instanceKlass org/codehaus/groovy/util/AbstractConcurrentMap$Entry +instanceKlass org/codehaus/groovy/util/AbstractConcurrentMapBase$Entry +instanceKlass org/codehaus/groovy/ast/ClassHelper$ClassHelperCache +instanceKlass org/codehaus/groovy/runtime/GeneratedLambda +instanceKlass org/codehaus/groovy/ast/ClassHelper +instanceKlass org/codehaus/groovy/classgen/asm/util/TypeUtil +instanceKlass org/gradle/api/internal/tasks/testing/report/TestReporter +instanceKlass org/gradle/api/internal/tasks/testing/junit/result/TestResultsProvider +instanceKlass org/gradle/api/internal/tasks/testing/TestResultProcessor +instanceKlass org/gradle/api/tasks/testing/TestOutputListener +instanceKlass org/gradle/api/tasks/testing/TestListener +instanceKlass org/gradle/api/reporting/DirectoryReport +instanceKlass org/gradle/api/reporting/ConfigurableReport +instanceKlass org/gradle/api/reporting/Report +instanceKlass org/gradle/api/internal/tasks/testing/logging/TestExceptionFormatter +instanceKlass org/gradle/api/reporting/ReportContainer +instanceKlass org/gradle/api/tasks/testing/TestFilter +instanceKlass groovy/util/ObservableList +instanceKlass org/gradle/api/internal/tasks/TaskLocalStateInternal +instanceKlass org/gradle/api/internal/TaskOutputsInternal +instanceKlass org/gradle/api/internal/TaskInputsInternal +instanceKlass org/gradle/internal/logging/slf4j/ContextAwareTaskLogger +instanceKlass org/gradle/api/internal/tasks/InputChangesAwareTaskAction +instanceKlass org/gradle/api/internal/tasks/ImplementationAwareTaskAction +instanceKlass org/gradle/api/internal/tasks/TaskDependencyInternal +instanceKlass org/gradle/api/reporting/Reporting +instanceKlass org/gradle/api/tasks/VerificationTask +instanceKlass org/gradle/configuration/internal/DefaultListenerBuildOperationDecorator$BuildOperationEmittingInvocationHandler +instanceKlass org/apache/commons/lang/ClassUtils +instanceKlass org/gradle/execution/taskgraph/DefaultTaskExecutionGraph$$Lambda$393 +instanceKlass org/gradle/execution/ProjectExecutionServiceRegistry +instanceKlass org/gradle/api/tasks/TaskState +instanceKlass org/gradle/api/tasks/TaskInputs +instanceKlass org/gradle/api/tasks/TaskLocalState +instanceKlass org/gradle/api/tasks/TaskDestroyables +instanceKlass org/gradle/api/tasks/TaskOutputs +instanceKlass groovy/transform/Generated +instanceKlass SetupUtpTestResultListenerAction +instanceKlass org/gradle/execution/plan/ExecutionPlan$1 +instanceKlass org/gradle/execution/taskgraph/DefaultTaskExecutionGraph +instanceKlass org/gradle/execution/plan/DefaultPlanExecutor +instanceKlass org/gradle/api/internal/tasks/TaskExecutionContext +instanceKlass org/codehaus/groovy/reflection/AccessPermissionChecker +instanceKlass org/codehaus/groovy/reflection/ReflectionUtils$$Lambda$392 +instanceKlass org/gradle/internal/snapshot/SearchUtil +instanceKlass org/gradle/internal/snapshot/AbstractListChildMap$$Lambda$391 +instanceKlass org/codehaus/groovy/runtime/ScriptBytecodeAdapter +instanceKlass org/codehaus/groovy/runtime/metaclass/ClosureMetaClass$$Lambda$390 +instanceKlass org/codehaus/groovy/runtime/metaclass/ClosureMetaClass$MethodChooser +instanceKlass org/codehaus/groovy/runtime/callsite/BooleanClosureWrapper +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass com/sun/beans/finder/FinderUtils +instanceKlass com/sun/beans/finder/AbstractFinder +instanceKlass org/codehaus/groovy/reflection/ClassLoaderForClassArtifacts$$Lambda$389 +instanceKlass groovyjarjarasm/asm/Attribute +instanceKlass groovyjarjarasm/asm/Handler +instanceKlass org/codehaus/groovy/runtime/typehandling/DefaultTypeTransformation +instanceKlass org/codehaus/groovy/classgen/asm/BytecodeHelper +instanceKlass groovyjarjarasm/asm/Edge +instanceKlass groovyjarjarasm/asm/Label +instanceKlass groovyjarjarasm/asm/Type +instanceKlass groovyjarjarasm/asm/Frame +instanceKlass org/codehaus/groovy/reflection/CachedClass$5$$Lambda$388 +instanceKlass groovyjarjarasm/asm/ByteVector +instanceKlass groovyjarjarasm/asm/Symbol +instanceKlass groovyjarjarasm/asm/SymbolTable +instanceKlass groovyjarjarasm/asm/MethodVisitor +instanceKlass groovyjarjarasm/asm/FieldVisitor +instanceKlass groovyjarjarasm/asm/ModuleVisitor +instanceKlass groovyjarjarasm/asm/AnnotationVisitor +instanceKlass groovyjarjarasm/asm/RecordComponentVisitor +instanceKlass org/codehaus/groovy/classgen/GeneratorContext +instanceKlass org/codehaus/groovy/reflection/android/AndroidSupport +instanceKlass org/codehaus/groovy/runtime/callsite/GroovySunClassLoader$$Lambda$387 +instanceKlass org/codehaus/groovy/reflection/SunClassLoader$$Lambda$386 +instanceKlass org/codehaus/groovy/runtime/callsite/CallSiteGenerator +instanceKlass org/codehaus/groovy/runtime/metaclass/MetaMethodIndex$CacheEntry +instanceKlass org/codehaus/groovy/runtime/wrappers/Wrapper +instanceKlass groovy/lang/AdaptingMetaClass +instanceKlass groovy/lang/GroovyInterceptable +instanceKlass org/codehaus/groovy/runtime/ArrayUtil +instanceKlass org/codehaus/groovy/syntax/Types +instanceKlass org/codehaus/groovy/syntax/CSTNode +instanceKlass org/codehaus/groovy/ast/tools/GeneralUtils +instanceKlass org/gradle/api/component/SoftwareComponentContainer +instanceKlass org/gradle/api/NamedDomainObjectFactory +instanceKlass org/gradle/api/internal/project/ProjectStateInternal +instanceKlass org/gradle/api/internal/project/ProjectInternal$DetachedResolver +instanceKlass org/gradle/configuration/project/ProjectConfigurationActionContainer +instanceKlass org/gradle/internal/model/RuleBasedPluginListener +instanceKlass org/gradle/model/internal/registry/ModelRegistry +instanceKlass org/gradle/normalization/internal/InputNormalizationHandlerInternal +instanceKlass org/gradle/api/internal/tasks/TaskContainerInternal +instanceKlass org/gradle/vcs/SourceControl +instanceKlass org/gradle/plugin/management/PluginManagementSpec +instanceKlass org/gradle/initialization/DefaultProjectDescriptor +instanceKlass org/gradle/api/initialization/ProjectDescriptor +instanceKlass org/gradle/internal/metaobject/DynamicInvokeResult +instanceKlass org/gradle/cache/internal/DefaultFileContentCacheFactory$DefaultFileContentCache +instanceKlass org/gradle/internal/jvm/JavaModuleDetector$ModuleInfoLocator +instanceKlass org/gradle/internal/jvm/JavaModuleDetector$$Lambda$385 +instanceKlass org/gradle/internal/jvm/JavaModuleDetector$$Lambda$384 +instanceKlass org/gradle/cache/internal/FileContentCache +instanceKlass org/gradle/cache/internal/DefaultFileContentCacheFactory +instanceKlass org/gradle/api/internal/model/InstantiatorBackedObjectFactory +instanceKlass org/gradle/process/internal/ExecHandleBuilder +instanceKlass org/gradle/process/internal/JavaExecAction +instanceKlass org/gradle/process/internal/ExecAction +instanceKlass org/gradle/process/internal/JavaForkOptionsInternal +instanceKlass org/gradle/process/JavaDebugOptions +instanceKlass org/gradle/process/internal/DefaultExecActionFactory +instanceKlass org/gradle/api/internal/file/copy/CopyAction +instanceKlass org/gradle/api/internal/file/copy/CopySpecInternal +instanceKlass org/gradle/api/internal/file/copy/FileCopier +instanceKlass org/gradle/api/internal/resources/DefaultResourceHandler +instanceKlass org/gradle/api/internal/resources/DefaultTextResourceFactory +instanceKlass org/gradle/api/internal/resources/DefaultResourceResolver +instanceKlass org/gradle/api/internal/resources/ResourceResolver +instanceKlass org/gradle/api/resources/TextResourceFactory +instanceKlass org/gradle/api/internal/resources/DefaultResourceHandler$Factory$FactoryImpl +instanceKlass org/gradle/api/internal/artifacts/DependencyManagementBuildScopeServices$$Lambda$383 +instanceKlass org/gradle/internal/extensibility/ExtensionsStorage$ExtensionHolder +instanceKlass org/gradle/api/plugins/ExtensionsSchema$ExtensionSchema +instanceKlass org/gradle/api/NamedDomainObjectCollectionSchema$NamedDomainObjectSchema +instanceKlass org/gradle/internal/extensibility/ExtensionsStorage +instanceKlass org/gradle/api/plugins/ExtraPropertiesExtension +instanceKlass org/gradle/internal/extensibility/DefaultConvention +instanceKlass org/gradle/api/internal/plugins/ExtensionContainerInternal +instanceKlass org/gradle/internal/metaobject/DynamicObjectUtil +instanceKlass org/gradle/api/internal/coerce/StringToEnumTransformer +instanceKlass org/gradle/api/internal/coerce/PropertySetTransformer +instanceKlass org/gradle/api/internal/coerce/MethodArgumentsTransformer +instanceKlass org/gradle/internal/metaobject/BeanDynamicObject$MetaClassAdapter +instanceKlass org/gradle/process/JavaExecSpec +instanceKlass org/gradle/process/JavaForkOptions +instanceKlass org/gradle/process/ExecSpec +instanceKlass org/gradle/process/BaseExecSpec +instanceKlass org/gradle/process/ProcessForkOptions +instanceKlass org/codehaus/groovy/runtime/memoize/StampedCommonCache$$Lambda$382 +instanceKlass org/codehaus/groovy/runtime/memoize/EvictableCache$Action +instanceKlass java/util/WeakHashMap$HashIterator +instanceKlass java/util/stream/StreamSpliterators$WrappingSpliterator$$Lambda$381 +instanceKlass java/util/function/BooleanSupplier +instanceKlass java/util/stream/StreamSpliterators$WrappingSpliterator$$Lambda$380 +instanceKlass jdk/internal/jrtfs/JrtDirectoryStream$1 +instanceKlass jdk/internal/jrtfs/JrtFileSystem$$Lambda$379 +instanceKlass jdk/internal/jrtfs/JrtFileSystem$$Lambda$378 +instanceKlass jdk/internal/jrtfs/JrtDirectoryStream +instanceKlass jdk/internal/jrtfs/JrtFileAttributes +instanceKlass jdk/internal/jimage/ImageReader$SharedImageReader$$Lambda$377 +instanceKlass jdk/internal/jimage/ImageReader$SharedImageReader$LocationVisitor +instanceKlass jdk/internal/jimage/ImageReader$Node +instanceKlass jdk/internal/jrtfs/SystemImage$2 +instanceKlass jdk/internal/jrtfs/SystemImage$$Lambda$376 +instanceKlass jdk/internal/jrtfs/SystemImage +instanceKlass jdk/internal/jrtfs/JrtPath +instanceKlass groovy/grape/GrapeIvy +instanceKlass groovy/grape/GrapeEngine +instanceKlass org/codehaus/groovy/vmplugin/v9/Java9$$Lambda$375 +instanceKlass org/codehaus/groovy/vmplugin/v9/Java9$$Lambda$374 +instanceKlass org/codehaus/groovy/vmplugin/v9/Java9$$Lambda$373 +instanceKlass java/util/stream/Collectors$$Lambda$372 +instanceKlass java/util/stream/Collectors$$Lambda$371 +instanceKlass java/util/stream/Collectors$$Lambda$370 +instanceKlass org/codehaus/groovy/vmplugin/v9/Java9$$Lambda$369 +instanceKlass org/codehaus/groovy/vmplugin/v9/Java9$$Lambda$368 +instanceKlass org/codehaus/groovy/vmplugin/v9/Java9$$Lambda$367 +instanceKlass jdk/nio/zipfs/ZipFileSystem$$Lambda$366 +instanceKlass org/codehaus/groovy/vmplugin/v9/ClassFinder$1$$Lambda$365 +instanceKlass jdk/nio/zipfs/ZipDirectoryStream$1 +instanceKlass jdk/nio/zipfs/ZipDirectoryStream +instanceKlass java/time/chrono/AbstractChronology +instanceKlass java/time/zone/ZoneOffsetTransition +instanceKlass java/time/zone/ZoneOffsetTransitionRule +instanceKlass java/time/zone/Ser +instanceKlass java/io/Externalizable +instanceKlass java/time/zone/ZoneRulesProvider$1 +instanceKlass java/time/zone/ZoneRulesProvider +instanceKlass jdk/nio/zipfs/ZipUtils +instanceKlass java/nio/file/SimpleFileVisitor +instanceKlass jdk/nio/zipfs/ZipFileSystem$END +instanceKlass jdk/nio/zipfs/ZipConstants +instanceKlass sun/nio/fs/WindowsChannelFactory$2 +instanceKlass sun/nio/fs/WindowsSecurityDescriptor +instanceKlass jdk/nio/zipfs/ZipPath +instanceKlass jdk/nio/zipfs/ZipCoder +instanceKlass sun/nio/fs/WindowsSecurity +instanceKlass sun/nio/fs/AbstractAclFileAttributeView +instanceKlass java/nio/file/attribute/AclFileAttributeView +instanceKlass java/nio/file/attribute/FileOwnerAttributeView +instanceKlass jdk/nio/zipfs/ZipFileSystem$$Lambda$364 +instanceKlass sun/nio/fs/WindowsFileSystemProvider$1 +instanceKlass jdk/nio/zipfs/ZipFileSystem$$Lambda$363 +instanceKlass jdk/nio/zipfs/ZipFileAttributes +instanceKlass jdk/nio/zipfs/ZipFileSystem$IndexNode +instanceKlass java/nio/file/PathMatcher +instanceKlass sun/nio/fs/WindowsLinkSupport +instanceKlass jdk/internal/jimage/ImageBufferCache$2 +instanceKlass jdk/internal/jimage/ImageBufferCache +instanceKlass sun/net/www/protocol/jrt/JavaRuntimeURLConnection$$Lambda$362 +instanceKlass java/nio/file/FileStore +instanceKlass java/nio/channels/AsynchronousFileChannel +instanceKlass java/nio/channels/AsynchronousChannel +instanceKlass java/nio/file/spi/FileSystemProvider$1 +instanceKlass sun/nio/ch/FileChannelImpl$Closer +instanceKlass sun/nio/fs/WindowsChannelFactory$Flags +instanceKlass sun/nio/fs/WindowsChannelFactory$1 +instanceKlass sun/nio/fs/WindowsChannelFactory +instanceKlass sun/nio/fs/WindowsUriSupport +instanceKlass org/codehaus/groovy/vmplugin/v9/ClassFinder +instanceKlass org/apache/groovy/util/Maps +instanceKlass org/codehaus/groovy/GroovyExceptionInterface +instanceKlass org/codehaus/groovy/control/CompilerConfiguration +instanceKlass groovy/lang/GroovyClassLoader$1 +instanceKlass org/codehaus/groovy/runtime/memoize/CommonCache +instanceKlass java/util/concurrent/locks/StampedLock$WNode +instanceKlass java/util/concurrent/locks/StampedLock +instanceKlass org/codehaus/groovy/runtime/memoize/StampedCommonCache +instanceKlass org/codehaus/groovy/runtime/memoize/ValueConvertable +instanceKlass org/codehaus/groovy/control/CompilationUnit$ClassgenCallback +instanceKlass org/codehaus/groovy/control/CompilationUnit$IPrimaryClassNodeOperation +instanceKlass org/codehaus/groovy/runtime/memoize/UnlimitedConcurrentCache +instanceKlass org/codehaus/groovy/runtime/memoize/EvictableCache +instanceKlass org/codehaus/groovy/ast/expr/MethodCall +instanceKlass org/codehaus/groovy/ast/stmt/LoopingStatement +instanceKlass org/codehaus/groovy/control/messages/Message +instanceKlass org/codehaus/groovy/ast/CodeVisitorSupport +instanceKlass org/codehaus/groovy/ast/GroovyClassVisitor +instanceKlass org/codehaus/groovy/transform/ErrorCollecting +instanceKlass org/codehaus/groovy/ast/expr/ExpressionTransformer +instanceKlass java/util/concurrent/locks/ReentrantReadWriteLock$WriteLock +instanceKlass java/util/concurrent/locks/ReentrantReadWriteLock$ReadLock +instanceKlass org/apache/groovy/plugin/GroovyRunnerRegistry +instanceKlass org/codehaus/groovy/runtime/metaclass/MetaClassRegistryImpl$$Lambda$361 +instanceKlass groovy/lang/MetaClassImpl$$Lambda$360 +instanceKlass org/codehaus/groovy/runtime/GroovyCategorySupport +instanceKlass java/util/concurrent/locks/ReentrantReadWriteLock +instanceKlass org/codehaus/groovy/util/ComplexKeyHashMap$1 +instanceKlass org/codehaus/groovy/reflection/CachedClass$1$$Lambda$359 +instanceKlass org/codehaus/groovy/reflection/CachedClass$1$$Lambda$358 +instanceKlass org/codehaus/groovy/reflection/CachedClass$1$$Lambda$357 +instanceKlass org/codehaus/groovy/reflection/CachedClass$1$$Lambda$356 +instanceKlass java/beans/SimpleBeanInfo +instanceKlass java/beans/BeanProperty +instanceKlass com/sun/beans/WildcardTypeImpl +instanceKlass com/sun/beans/introspect/PropertyInfo +instanceKlass com/sun/beans/introspect/EventSetInfo +instanceKlass com/sun/beans/WeakCache +instanceKlass com/sun/beans/TypeResolver +instanceKlass java/beans/MethodRef +instanceKlass com/sun/beans/introspect/MethodInfo$MethodOrder +instanceKlass com/sun/beans/introspect/MethodInfo +instanceKlass com/sun/beans/util/Cache$Ref +instanceKlass com/sun/beans/util/Cache$CacheEntry +instanceKlass com/sun/beans/util/Cache +instanceKlass com/sun/beans/introspect/ClassInfo +instanceKlass javax/swing/SwingContainer +instanceKlass java/beans/JavaBean +instanceKlass java/util/zip/ZipFile$ZipEntryIterator +instanceKlass java/util/jar/JarFile$$Lambda$355 +instanceKlass com/sun/beans/finder/ClassFinder +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass java/lang/invoke/ClassSpecializer$Factory$1Var +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass com/sun/beans/finder/InstanceFinder +instanceKlass java/beans/WeakIdentityMap +instanceKlass java/beans/ThreadGroupContext +instanceKlass groovy/lang/MetaClassImpl$$Lambda$354 +instanceKlass java/beans/BeanInfo +instanceKlass org/codehaus/groovy/reflection/CachedClass$CachedMethodComparatorWithString +instanceKlass org/codehaus/groovy/util/AbstractConcurrentMapBase +instanceKlass java/lang/reflect/AnnotatedType +instanceKlass groovyjarjarasm/asm/ClassVisitor +instanceKlass org/codehaus/groovy/runtime/MetaClassHelper +instanceKlass org/codehaus/groovy/reflection/CachedClass$2$$Lambda$353 +instanceKlass org/codehaus/groovy/reflection/CachedClass$2$$Lambda$352 +instanceKlass org/codehaus/groovy/reflection/CachedClass$2$$Lambda$351 +instanceKlass org/codehaus/groovy/reflection/CachedClass$2$$Lambda$350 +instanceKlass org/codehaus/groovy/runtime/MethodKey +instanceKlass groovy/lang/ClosureInvokingMethod +instanceKlass groovy/lang/ExpandoMetaClass$Callable +instanceKlass org/codehaus/groovy/reflection/CachedClass$2$$Lambda$349 +instanceKlass org/codehaus/groovy/runtime/metaclass/MetaMethodIndex$Header +instanceKlass org/codehaus/groovy/runtime/metaclass/MetaMethodIndex$Entry +instanceKlass org/codehaus/groovy/runtime/metaclass/MetaMethodIndex$EntryIterator +instanceKlass org/codehaus/groovy/runtime/metaclass/MetaMethodIndex +instanceKlass groovy/lang/MetaClassImpl$$Lambda$348 +instanceKlass groovy/lang/MetaClassImpl$$Lambda$347 +instanceKlass org/codehaus/groovy/util/SingleKeyHashMap$Copier +instanceKlass groovy/lang/MetaClassImpl$$Lambda$346 +instanceKlass groovy/lang/MetaClassImpl$MethodIndexAction +instanceKlass org/codehaus/groovy/runtime/GeneratedClosure +instanceKlass groovy/lang/MetaClassImpl +instanceKlass groovy/lang/MutableMetaClass +instanceKlass org/gradle/api/internal/provider/MapPropertyExtensions +instanceKlass org/w3c/dom/NamedNodeMap +instanceKlass org/w3c/dom/Document +instanceKlass org/w3c/dom/UserDataHandler +instanceKlass org/w3c/dom/TypeInfo +instanceKlass org/w3c/dom/Attr +instanceKlass org/w3c/dom/NodeList +instanceKlass org/w3c/dom/Element +instanceKlass org/w3c/dom/Node +instanceKlass org/apache/groovy/xml/extensions/XmlExtensions +instanceKlass javax/swing/event/TableColumnModelListener +instanceKlass javax/swing/ListSelectionModel +instanceKlass javax/swing/event/TableModelListener +instanceKlass javax/swing/ButtonModel +instanceKlass javax/swing/Icon +instanceKlass java/awt/LayoutManager +instanceKlass javax/swing/AbstractButton$Handler +instanceKlass javax/swing/event/ChangeListener +instanceKlass java/awt/event/ItemListener +instanceKlass javax/swing/MenuSelectionManager +instanceKlass java/awt/peer/ComponentPeer +instanceKlass javax/accessibility/AccessibleStateSet +instanceKlass sun/awt/RequestFocusController +instanceKlass java/awt/im/InputContext +instanceKlass java/awt/im/InputMethodRequests +instanceKlass java/awt/event/InputMethodListener +instanceKlass java/awt/event/MouseWheelListener +instanceKlass java/awt/event/MouseMotionListener +instanceKlass java/awt/event/MouseListener +instanceKlass java/awt/event/KeyListener +instanceKlass java/awt/event/HierarchyBoundsListener +instanceKlass java/awt/event/HierarchyListener +instanceKlass java/awt/event/FocusListener +instanceKlass java/awt/image/BufferStrategy +instanceKlass java/awt/BufferCapabilities +instanceKlass java/awt/ImageCapabilities +instanceKlass java/awt/image/ImageProducer +instanceKlass java/awt/Cursor +instanceKlass java/awt/image/ColorModel +instanceKlass sun/awt/ComponentFactory +instanceKlass java/awt/Toolkit +instanceKlass java/awt/dnd/DropTarget +instanceKlass java/awt/dnd/DropTargetListener +instanceKlass java/awt/PointerInfo +instanceKlass sun/java2d/pipe/Region +instanceKlass java/awt/ComponentOrientation +instanceKlass java/awt/GraphicsConfiguration +instanceKlass java/awt/MenuComponent +instanceKlass java/awt/Event +instanceKlass java/awt/Image +instanceKlass javax/swing/InputVerifier +instanceKlass java/awt/Insets +instanceKlass javax/swing/border/Border +instanceKlass java/awt/geom/Dimension2D +instanceKlass java/awt/FontMetrics +instanceKlass javax/swing/plaf/ComponentUI +instanceKlass java/awt/Graphics +instanceKlass javax/swing/event/AncestorListener +instanceKlass javax/swing/AncestorNotifier +instanceKlass java/beans/PropertyChangeListener +instanceKlass java/awt/event/ComponentListener +instanceKlass java/beans/VetoableChangeListener +instanceKlass javax/swing/ArrayTable +instanceKlass javax/swing/TransferHandler$DropLocation +instanceKlass java/awt/geom/Point2D +instanceKlass java/util/EventObject +instanceKlass java/awt/Font +instanceKlass java/awt/Color +instanceKlass java/awt/Paint +instanceKlass java/awt/Transparency +instanceKlass javax/swing/ActionMap +instanceKlass javax/swing/InputMap +instanceKlass java/awt/AWTKeyStroke +instanceKlass java/awt/geom/RectangularShape +instanceKlass java/awt/Shape +instanceKlass javax/swing/TransferHandler +instanceKlass javax/accessibility/AccessibleContext +instanceKlass javax/swing/tree/DefaultMutableTreeNode +instanceKlass javax/swing/Action +instanceKlass javax/swing/MutableComboBoxModel +instanceKlass javax/swing/ComboBoxModel +instanceKlass javax/swing/table/AbstractTableModel +instanceKlass javax/swing/AbstractListModel +instanceKlass javax/swing/table/TableModel +instanceKlass java/awt/event/ActionListener +instanceKlass javax/swing/event/ListDataListener +instanceKlass javax/swing/tree/TreePath +instanceKlass javax/swing/MenuElement +instanceKlass javax/accessibility/Accessible +instanceKlass javax/swing/table/TableColumn +instanceKlass javax/swing/table/TableColumnModel +instanceKlass java/awt/Component +instanceKlass java/awt/MenuContainer +instanceKlass java/awt/image/ImageObserver +instanceKlass javax/swing/TransferHandler$HasGetTransferHandler +instanceKlass javax/swing/SwingConstants +instanceKlass java/awt/ItemSelectable +instanceKlass javax/swing/ButtonGroup +instanceKlass javax/swing/ListModel +instanceKlass javax/swing/tree/MutableTreeNode +instanceKlass javax/swing/tree/TreeNode +instanceKlass org/apache/groovy/swing/extensions/SwingExtensions +instanceKlass java/sql/Statement +instanceKlass java/sql/SQLType +instanceKlass java/sql/NClob +instanceKlass java/sql/Clob +instanceKlass java/sql/SQLXML +instanceKlass java/sql/RowId +instanceKlass java/sql/Blob +instanceKlass java/sql/Ref +instanceKlass java/sql/Array +instanceKlass java/sql/ResultSetMetaData +instanceKlass groovy/sql/GroovyResultSet +instanceKlass java/sql/ResultSet +instanceKlass java/sql/Wrapper +instanceKlass org/apache/groovy/sql/extensions/SqlExtensions +instanceKlass java/nio/file/WatchEvent$Modifier +instanceKlass java/nio/file/WatchKey +instanceKlass java/nio/file/WatchEvent$Kind +instanceKlass java/nio/file/WatchService +instanceKlass org/apache/groovy/dateutil/extensions/DateUtilStaticExtensions +instanceKlass org/apache/groovy/dateutil/extensions/DateUtilExtensions +instanceKlass org/codehaus/groovy/runtime/metaclass/MetaClassRegistryImpl$DefaultModuleListener$$Lambda$345 +instanceKlass org/codehaus/groovy/runtime/metaclass/MethodHelper +instanceKlass java/time/format/DateTimeFormatter +instanceKlass java/time/chrono/Era +instanceKlass java/time/chrono/Chronology +instanceKlass java/time/temporal/ValueRange +instanceKlass java/time/temporal/TemporalQuery +instanceKlass java/time/zone/ZoneRules +instanceKlass java/time/MonthDay +instanceKlass java/time/LocalTime +instanceKlass java/time/LocalDateTime +instanceKlass java/time/chrono/ChronoLocalDateTime +instanceKlass java/time/LocalDate +instanceKlass java/time/chrono/ChronoLocalDate +instanceKlass java/time/Period +instanceKlass java/time/YearMonth +instanceKlass java/time/Year +instanceKlass java/time/OffsetDateTime +instanceKlass java/time/ZonedDateTime +instanceKlass java/time/chrono/ChronoZonedDateTime +instanceKlass java/time/OffsetTime +instanceKlass java/time/Instant +instanceKlass java/time/temporal/TemporalAdjuster +instanceKlass java/time/chrono/ChronoPeriod +instanceKlass java/time/temporal/Temporal +instanceKlass java/time/temporal/TemporalAccessor +instanceKlass java/time/temporal/TemporalField +instanceKlass org/apache/groovy/datetime/extensions/DateTimeStaticExtensions +instanceKlass org/apache/groovy/datetime/extensions/DateTimeExtensions +instanceKlass org/codehaus/groovy/runtime/m12n/ExtensionModule +instanceKlass org/codehaus/groovy/runtime/m12n/PropertiesModuleFactory +instanceKlass org/codehaus/groovy/util/URLStreams +instanceKlass org/codehaus/groovy/runtime/metaclass/MetaClassRegistryImpl$DefaultModuleListener +instanceKlass org/codehaus/groovy/runtime/m12n/ExtensionModuleScanner +instanceKlass java/util/ResourceBundle$CacheKey +instanceKlass java/time/ZoneId +instanceKlass org/codehaus/groovy/runtime/DefaultGroovyStaticMethods +instanceKlass org/codehaus/groovy/runtime/metaclass/MetaClassRegistryImpl$$Lambda$344 +instanceKlass org/codehaus/groovy/runtime/RangeInfo +instanceKlass java/util/stream/LongStream +instanceKlass java/util/stream/DoubleStream +instanceKlass java/util/function/LongPredicate +instanceKlass java/util/function/DoublePredicate +instanceKlass java/util/function/IntPredicate +instanceKlass java/util/function/ToDoubleFunction +instanceKlass java/util/function/ToLongFunction +instanceKlass java/util/function/ToIntFunction +instanceKlass java/util/OptionalInt +instanceKlass java/util/function/LongFunction +instanceKlass java/util/OptionalLong +instanceKlass java/util/function/DoubleFunction +instanceKlass java/util/OptionalDouble +instanceKlass org/codehaus/groovy/runtime/metaclass/MetaClassRegistryImpl$$Lambda$343 +instanceKlass org/codehaus/groovy/runtime/NumberAwareComparator +instanceKlass org/codehaus/groovy/runtime/EncodingGroovyMethods +instanceKlass java/lang/ProcessHandle$Info +instanceKlass java/lang/ProcessHandle +instanceKlass java/util/concurrent/CompletableFuture +instanceKlass java/util/concurrent/CompletionStage +instanceKlass org/codehaus/groovy/reflection/CachedClass$CachedMethodComparatorByName +instanceKlass org/codehaus/groovy/reflection/CachedMethod$MyComparator +instanceKlass java/lang/SecurityManager$$Lambda$342 +instanceKlass java/lang/SecurityManager$$Lambda$341 +instanceKlass java/lang/SecurityManager$$Lambda$340 +instanceKlass java/lang/SecurityManager$$Lambda$339 +instanceKlass java/lang/SecurityManager$$Lambda$338 +instanceKlass java/lang/SecurityManager$$Lambda$337 +instanceKlass java/lang/SecurityManager$$Lambda$336 +instanceKlass java/lang/SecurityManager$$Lambda$335 +instanceKlass java/lang/SecurityManager$$Lambda$334 +instanceKlass java/lang/SecurityManager$$Lambda$333 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass java/lang/SecurityManager$$Lambda$332 +instanceKlass org/codehaus/groovy/vmplugin/v9/Java9$$Lambda$331 +instanceKlass org/codehaus/groovy/vmplugin/v9/Java9$$Lambda$330 +instanceKlass org/codehaus/groovy/vmplugin/v9/Java9$$Lambda$329 +instanceKlass org/codehaus/groovy/vmplugin/v9/Java9$$Lambda$328 +instanceKlass org/codehaus/groovy/vmplugin/v9/Java9$$Lambda$327 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/codehaus/groovy/vmplugin/v9/Java9$$Lambda$326 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/codehaus/groovy/vmplugin/v9/Java9$$Lambda$325 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/codehaus/groovy/vmplugin/v9/Java9$$Lambda$324 +instanceKlass java/util/Spliterators$IteratorSpliterator +instanceKlass jdk/internal/module/SystemModules$all +instanceKlass sun/nio/fs/ExtendedFileSystemProvider +instanceKlass org/codehaus/groovy/runtime/DefaultGroovyMethodsSupport +instanceKlass org/codehaus/groovy/ast/Variable +instanceKlass groovyjarjarasm/asm/Opcodes +instanceKlass org/codehaus/groovy/vmplugin/v8/Java8 +instanceKlass org/codehaus/groovy/vmplugin/VMPluginFactory$$Lambda$323 +instanceKlass org/codehaus/groovy/vmplugin/VMPlugin +instanceKlass org/codehaus/groovy/vmplugin/VMPluginFactory +instanceKlass org/codehaus/groovy/reflection/ReflectionUtils +instanceKlass org/codehaus/groovy/reflection/CachedClass$3$$Lambda$322 +instanceKlass org/codehaus/groovy/reflection/CachedClass$3$$Lambda$321 +instanceKlass org/codehaus/groovy/reflection/CachedClass$3$$Lambda$320 +instanceKlass org/codehaus/groovy/reflection/CachedClass$3$$Lambda$319 +instanceKlass org/codehaus/groovy/runtime/memoize/MemoizeCache +instanceKlass org/codehaus/groovy/reflection/CachedClass$3$$Lambda$318 +instanceKlass org/codehaus/groovy/reflection/stdclasses/CachedSAMClass$$Lambda$317 +instanceKlass org/codehaus/groovy/reflection/stdclasses/CachedSAMClass$$Lambda$316 +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass org/codehaus/groovy/reflection/stdclasses/InjectedInvoker +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/MethodHandleImpl$BindCaller +instanceKlass org/codehaus/groovy/runtime/metaclass/MetaClassRegistryImpl$$Lambda$315 +instanceKlass org/codehaus/groovy/transform/trait/Traits$Implemented +instanceKlass org/codehaus/groovy/util/ReferenceType$HardRef +instanceKlass org/codehaus/groovy/util/ManagedReference +instanceKlass org/codehaus/groovy/reflection/ClassInfo$GlobalClassSet +instanceKlass org/apache/groovy/util/SystemUtil +instanceKlass org/codehaus/groovy/reflection/GroovyClassValue +instanceKlass org/codehaus/groovy/reflection/GroovyClassValueFactory +instanceKlass org/codehaus/groovy/reflection/ClassInfo$1 +instanceKlass org/codehaus/groovy/reflection/GroovyClassValue$ComputeValue +instanceKlass org/codehaus/groovy/reflection/CachedClass +instanceKlass org/codehaus/groovy/util/ComplexKeyHashMap$Entry +instanceKlass org/codehaus/groovy/util/ComplexKeyHashMap$EntryIterator +instanceKlass org/codehaus/groovy/util/ComplexKeyHashMap +instanceKlass org/codehaus/groovy/reflection/ReflectionCache +instanceKlass java/lang/Process +instanceKlass java/util/Timer +instanceKlass java/util/TimerTask +instanceKlass groovy/lang/groovydoc/Groovydoc +instanceKlass groovy/lang/ListWithDefault +instanceKlass groovy/lang/Range +instanceKlass groovy/util/BufferedIterator +instanceKlass java/util/BitSet +instanceKlass org/codehaus/groovy/reflection/GeneratedMetaMethod$DgmMethodRecord +instanceKlass groovy/lang/MetaClassRegistry$MetaClassCreationHandle +instanceKlass org/codehaus/groovy/runtime/m12n/ExtensionModuleRegistry +instanceKlass org/codehaus/groovy/util/Reference +instanceKlass org/codehaus/groovy/util/ReferenceManager +instanceKlass org/codehaus/groovy/util/ReferenceBundle +instanceKlass org/codehaus/groovy/util/ManagedConcurrentLinkedQueue +instanceKlass org/codehaus/groovy/util/FastArray +instanceKlass groovy/lang/MetaClassRegistryChangeEventListener +instanceKlass java/util/EventListener +instanceKlass org/codehaus/groovy/reflection/ParameterTypes +instanceKlass org/codehaus/groovy/runtime/m12n/ExtensionModuleScanner$ExtensionModuleListener +instanceKlass org/codehaus/groovy/runtime/metaclass/MetaClassRegistryImpl +instanceKlass org/codehaus/groovy/runtime/InvokerHelper +instanceKlass org/gradle/internal/classpath/Instrumented$1 +instanceKlass java/util/stream/Sink$ChainedInt +instanceKlass java/util/stream/Sink$OfInt +instanceKlass java/util/function/IntConsumer +instanceKlass java/util/stream/Nodes$ArrayNode +instanceKlass org/codehaus/groovy/runtime/callsite/CallSiteArray$$Lambda$314 +instanceKlass org/codehaus/groovy/runtime/callsite/CallSiteArray$$Lambda$313 +instanceKlass org/codehaus/groovy/runtime/callsite/AbstractCallSite +instanceKlass java/util/stream/Streams$RangeIntSpliterator +instanceKlass java/util/stream/IntStream +instanceKlass org/gradle/internal/instantiation/generator/AsmBackedClassGenerator$NoOpBuilder +instanceKlass groovy/transform/Internal +instanceKlass java/beans/Transient +instanceKlass org/gradle/api/resources/ResourceHandler +instanceKlass org/gradle/process/ExecResult +instanceKlass org/codehaus/groovy/reflection/ClassInfo +instanceKlass org/codehaus/groovy/util/Finalizable +instanceKlass org/codehaus/groovy/runtime/callsite/CallSite +instanceKlass com/google/common/collect/MapMakerInternalMap$AbstractStrongKeyEntry +instanceKlass com/google/common/collect/MapMakerInternalMap$WeakValueEntry +instanceKlass com/google/common/collect/Count +instanceKlass org/gradle/api/internal/initialization/loadercache/DefaultClassLoaderCache$CachedClassLoader +instanceKlass org/gradle/api/internal/initialization/loadercache/DefaultClassLoaderCache$$Lambda$312 +instanceKlass org/gradle/groovy/scripts/internal/DefaultScriptCompilationHandler$ClassesDirCompiledScript$$Lambda$311 +instanceKlass org/gradle/configuration/DefaultScriptPluginFactory$ScriptPluginImpl$$Lambda$310 +instanceKlass org/gradle/groovy/scripts/internal/BuildScriptData +instanceKlass org/gradle/internal/snapshot/AbstractIncompleteFileSystemNode$2$$Lambda$309 +instanceKlass org/gradle/internal/snapshot/AbstractIncompleteFileSystemNode$$Lambda$308 +instanceKlass org/gradle/internal/snapshot/AbstractIncompleteFileSystemNode$2$$Lambda$307 +instanceKlass org/gradle/internal/snapshot/PathUtil$1 +instanceKlass org/gradle/internal/snapshot/AbstractStorePathRelationshipHandler +instanceKlass org/gradle/internal/snapshot/AbstractIncompleteFileSystemNode$2 +instanceKlass org/gradle/internal/snapshot/AbstractListChildMap +instanceKlass org/gradle/api/internal/changedetection/state/CachingFileHasher$FileInfo +instanceKlass org/gradle/cache/internal/DefaultMultiProcessSafePersistentIndexedCache$$Lambda$306 +instanceKlass org/gradle/cache/internal/CacheAccessWorker$1 +instanceKlass org/gradle/cache/internal/AsyncCacheAccessDecoratedCache$$Lambda$305 +instanceKlass org/gradle/cache/internal/InMemoryDecoratedCache$$Lambda$304 +instanceKlass org/gradle/cache/internal/CrossProcessSynchronizingCache$$Lambda$303 +instanceKlass org/gradle/cache/internal/btree/BTreePersistentIndexedCache$DataBlockUpdateResult +instanceKlass org/gradle/internal/snapshot/SnapshotUtil$1 +instanceKlass org/gradle/internal/io/StreamByteBuffer$StreamByteBufferChunk +instanceKlass org/gradle/internal/snapshot/AbstractIncompleteFileSystemNode$$Lambda$302 +instanceKlass org/gradle/internal/io/StreamByteBuffer +instanceKlass org/gradle/cache/internal/btree/BTreePersistentIndexedCache$Lookup +instanceKlass org/gradle/cache/internal/btree/BTreePersistentIndexedCache$IndexEntry +instanceKlass org/gradle/cache/internal/DefaultMultiProcessSafePersistentIndexedCache$$Lambda$301 +instanceKlass org/gradle/api/internal/initialization/ClassLoaderScopeIdentifier$Id +instanceKlass org/gradle/cache/internal/btree/BTreePersistentIndexedCache$IndexRoot +instanceKlass org/gradle/model/dsl/internal/transform/ClosureCreationInterceptingVerifier +instanceKlass org/gradle/groovy/scripts/internal/FactoryBackedCompileOperation +instanceKlass com/google/common/primitives/Longs +instanceKlass org/gradle/groovy/scripts/internal/BuildScriptTransformer$1 +instanceKlass org/gradle/groovy/scripts/internal/BuildScriptTransformer +instanceKlass org/gradle/api/internal/collections/IterationOrderRetainingSetElementSource$1 +instanceKlass org/gradle/cache/internal/btree/FreeListBlockStore$FreeListEntry +instanceKlass org/gradle/cache/internal/btree/BlockPointer +instanceKlass org/gradle/api/internal/plugins/DefaultPluginManager$3 +instanceKlass org/gradle/cache/internal/btree/ByteInput +instanceKlass org/gradle/cache/internal/btree/ByteOutput +instanceKlass org/gradle/cache/internal/btree/FreeListBlockStore$2 +instanceKlass org/gradle/cache/internal/btree/FreeListBlockStore$1 +instanceKlass org/gradle/cache/internal/btree/BTreePersistentIndexedCache$2 +instanceKlass org/gradle/cache/internal/btree/BTreePersistentIndexedCache$1 +instanceKlass org/gradle/api/plugins/AppliedPlugin +instanceKlass org/gradle/api/internal/plugins/ApplyPluginBuildOperationType$Result +instanceKlass org/gradle/cache/internal/btree/FreeListBlockStore +instanceKlass org/gradle/cache/internal/btree/StateCheckBlockStore +instanceKlass org/gradle/api/internal/plugins/DefaultPluginManager +instanceKlass org/gradle/api/internal/plugins/ImperativeOnlyPluginTarget +instanceKlass org/gradle/api/internal/plugins/PluginTarget +instanceKlass org/gradle/cache/internal/btree/Block +instanceKlass org/gradle/cache/internal/btree/FileBackedBlockStore +instanceKlass org/gradle/cache/internal/btree/CachingBlockStore +instanceKlass org/gradle/groovy/scripts/internal/DefaultScriptRunnerFactory$ScriptRunnerImpl +instanceKlass org/gradle/groovy/scripts/internal/CrossBuildInMemoryCachingScriptClassCache$CachedCompiledScript +instanceKlass org/gradle/cache/internal/btree/KeyHasher +instanceKlass org/gradle/internal/classloader/ImplementationHashAware +instanceKlass org/gradle/cache/internal/btree/BlockPayload +instanceKlass org/gradle/groovy/scripts/internal/DefaultScriptCompilationHandler$ClassesDirCompiledScript +instanceKlass org/gradle/cache/internal/btree/BlockStore +instanceKlass org/gradle/cache/internal/btree/BlockStore$Factory +instanceKlass org/gradle/cache/internal/DefaultMultiProcessSafePersistentIndexedCache$$Lambda$300 +instanceKlass org/gradle/cache/internal/CacheAccessWorker$2 +instanceKlass org/gradle/internal/classpath/DefaultCachedClasspathTransformer$$Lambda$299 +instanceKlass org/gradle/cache/internal/CacheAccessWorker$FlushOperationsCommand +instanceKlass org/gradle/cache/internal/CacheAccessWorker$ShutdownOperationsCommand +instanceKlass org/gradle/cache/internal/AsyncCacheAccessDecoratedCache$$Lambda$298 +instanceKlass sun/nio/fs/WindowsPath$1 +instanceKlass org/gradle/internal/classpath/DefaultCachedClasspathTransformer$$Lambda$297 +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/internal/classpath/DefaultCachedClasspathTransformer$$Lambda$296 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/internal/classpath/DefaultCachedClasspathTransformer$$Lambda$295 +instanceKlass org/gradle/internal/classpath/DefaultCachedClasspathTransformer$$Lambda$294 +instanceKlass org/gradle/internal/classpath/DefaultCachedClasspathTransformer$$Lambda$293 +instanceKlass org/gradle/internal/Either +instanceKlass org/gradle/internal/classpath/DefaultCachedClasspathTransformer$$Lambda$292 +instanceKlass org/gradle/internal/snapshot/ReadOnlyFileSystemNode$1 +instanceKlass org/gradle/internal/snapshot/ChildMap$Entry$$Lambda$291 +instanceKlass org/gradle/internal/snapshot/SnapshotUtil$2 +instanceKlass org/gradle/internal/snapshot/SnapshotUtil +instanceKlass org/gradle/internal/watch/registry/impl/HierarchicalFileWatcherUpdater$$Lambda$290 +instanceKlass org/gradle/internal/watch/vfs/impl/WatchingVirtualFileSystem$$Lambda$289 +instanceKlass org/gradle/internal/snapshot/SnapshotHierarchy$SnapshotDiffListener +instanceKlass org/gradle/internal/watch/vfs/impl/WatchingVirtualFileSystem$$Lambda$288 +instanceKlass org/gradle/internal/watch/vfs/impl/WatchingVirtualFileSystem$$Lambda$287 +instanceKlass org/gradle/internal/watch/registry/impl/SnapshotCollectingDiffListener$$Lambda$286 +instanceKlass org/gradle/internal/snapshot/AbstractIncompleteFileSystemNode$$Lambda$285 +instanceKlass org/gradle/internal/snapshot/AbstractIncompleteFileSystemNode$$Lambda$284 +instanceKlass org/gradle/internal/snapshot/AbstractIncompleteFileSystemNode +instanceKlass org/gradle/internal/snapshot/ChildMap$Entry$PathRelationshipHandler +instanceKlass org/gradle/internal/snapshot/SingletonChildMap +instanceKlass org/gradle/internal/snapshot/PathUtil$$Lambda$283 +instanceKlass org/gradle/internal/snapshot/PathUtil$$Lambda$282 +instanceKlass org/gradle/internal/snapshot/VfsRelativePath +instanceKlass org/gradle/internal/watch/registry/impl/SnapshotCollectingDiffListener +instanceKlass org/gradle/internal/vfs/impl/AbstractVirtualFileSystem$$Lambda$281 +instanceKlass org/gradle/internal/vfs/impl/AbstractVirtualFileSystem$UpdateFunction +instanceKlass org/gradle/internal/vfs/impl/AbstractVirtualFileSystem$$Lambda$280 +instanceKlass org/gradle/internal/snapshot/ChildMapFactory +instanceKlass org/gradle/internal/snapshot/DirectorySnapshot$$Lambda$279 +instanceKlass org/gradle/internal/snapshot/ChildMap$Entry +instanceKlass org/gradle/internal/snapshot/ChildMap$InvalidationHandler +instanceKlass java/util/Comparator$$Lambda$278 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/internal/snapshot/FileSystemLocationSnapshot$$Lambda$277 +instanceKlass org/gradle/internal/snapshot/PathUtil +instanceKlass org/gradle/internal/snapshot/FileSystemLocationSnapshot$$Lambda$276 +instanceKlass org/gradle/internal/snapshot/MerkleDirectorySnapshotBuilder$Directory +instanceKlass java/nio/file/Files$3 +instanceKlass java/nio/file/FileTreeWalker$Event +instanceKlass java/nio/file/FileTreeWalker$DirectoryNode +instanceKlass java/nio/file/FileTreeWalker +instanceKlass org/gradle/internal/snapshot/MerkleDirectorySnapshotBuilder +instanceKlass org/gradle/internal/snapshot/RelativePathTracker +instanceKlass org/gradle/internal/RelativePathSupplier +instanceKlass org/gradle/internal/snapshot/impl/DirectorySnapshotterStatistics$CollectingFileVisitor +instanceKlass org/gradle/internal/vfs/impl/DefaultFileSystemAccess$1 +instanceKlass org/gradle/internal/file/impl/DefaultFileMetadata$1 +instanceKlass org/gradle/internal/file/impl/DefaultFileMetadata +instanceKlass org/gradle/internal/file/FileMetadata +instanceKlass org/gradle/internal/nativeintegration/filesystem/services/NativePlatformBackedFileMetadataAccessor$1 +instanceKlass net/rubygrapefruit/platform/internal/WindowsFileTime +instanceKlass net/rubygrapefruit/platform/internal/jni/WindowsFileFunctions +instanceKlass net/rubygrapefruit/platform/internal/WindowsFileStat +instanceKlass org/gradle/internal/snapshot/SnapshottingFilter$1 +instanceKlass org/gradle/internal/snapshot/SnapshottingFilter +instanceKlass org/gradle/internal/vfs/impl/DefaultFileSystemAccess$$Lambda$275 +instanceKlass org/gradle/internal/vfs/impl/DefaultFileSystemAccess$$Lambda$274 +instanceKlass org/gradle/internal/snapshot/SnapshotHierarchy$$Lambda$273 +instanceKlass org/gradle/internal/snapshot/SnapshotHierarchy$$Lambda$272 +instanceKlass org/gradle/internal/vfs/impl/DefaultFileSystemAccess$$Lambda$271 +instanceKlass org/gradle/internal/classpath/DefaultCachedClasspathTransformer$$Lambda$270 +instanceKlass org/gradle/internal/classpath/DefaultCachedClasspathTransformer$$Lambda$269 +instanceKlass org/gradle/internal/classpath/DefaultCachedClasspathTransformer$$Lambda$268 +instanceKlass org/gradle/internal/classpath/DefaultCachedClasspathTransformer$ValueOrTransformProvider +instanceKlass org/gradle/internal/classpath/InstrumentingClasspathFileTransformer +instanceKlass org/codehaus/groovy/runtime/callsite/CallSiteArray +instanceKlass java/lang/invoke/SerializedLambda +instanceKlass org/gradle/internal/classpath/Instrumented +instanceKlass org/gradle/internal/classpath/InstrumentingTransformer +instanceKlass org/gradle/internal/classpath/CompositeTransformer +instanceKlass org/gradle/groovy/scripts/internal/FileCacheBackedScriptClassCompiler$1 +instanceKlass org/gradle/cache/internal/DefaultPersistentDirectoryCache$Initializer +instanceKlass org/gradle/groovy/scripts/internal/FileCacheBackedScriptClassCompiler$CompileToCrossBuildCacheAction +instanceKlass org/gradle/groovy/scripts/internal/FileCacheBackedScriptClassCompiler$ProgressReportingInitializer +instanceKlass com/google/common/io/ByteArrayDataOutput +instanceKlass com/google/common/io/ByteArrayDataInput +instanceKlass com/google/common/io/ByteStreams +instanceKlass java/math/MutableBigInteger +instanceKlass org/gradle/groovy/scripts/internal/ScriptCacheKey +instanceKlass org/gradle/internal/scripts/GradleScript +instanceKlass org/gradle/api/Script +instanceKlass org/gradle/groovy/scripts/internal/NoDataCompileOperation +instanceKlass com/google/common/collect/MapMakerInternalMap$StrongValueEntry +instanceKlass org/codehaus/groovy/control/CompilationUnit$SourceUnitOperation +instanceKlass org/codehaus/groovy/control/CompilationUnit$ISourceUnitOperation +instanceKlass org/codehaus/groovy/control/CompilationUnit$PhaseOperation +instanceKlass org/gradle/groovy/scripts/internal/Permits +instanceKlass org/codehaus/groovy/ast/GroovyCodeVisitor +instanceKlass org/gradle/plugin/use/internal/PluginUseScriptBlockMetadataCompiler +instanceKlass org/codehaus/groovy/ast/ASTNode +instanceKlass org/codehaus/groovy/ast/NodeMetaDataHandler +instanceKlass groovy/lang/groovydoc/GroovydocHolder +instanceKlass org/gradle/groovy/scripts/internal/InitialPassStatementTransformer +instanceKlass org/gradle/internal/resource/CachingTextResource +instanceKlass org/gradle/groovy/scripts/DelegatingScriptSource +instanceKlass org/gradle/groovy/scripts/DefaultScriptCompilerFactory$ScriptCompilerImpl +instanceKlass org/gradle/configuration/DefaultScriptTarget +instanceKlass org/gradle/tooling/internal/provider/runner/PluginApplicationTracker$$Lambda$267 +instanceKlass org/gradle/util/internal/TextUtil$1 +instanceKlass java/util/regex/CharPredicates$$Lambda$266 +instanceKlass java/util/regex/CharPredicates$$Lambda$265 +instanceKlass org/gradle/util/internal/TextUtil +instanceKlass org/gradle/configuration/BuildOperationScriptPlugin$OperationDetails +instanceKlass org/gradle/configuration/BuildOperationScriptPlugin$1 +instanceKlass org/gradle/configuration/internal/DefaultUserCodeApplicationContext$CurrentApplication +instanceKlass org/gradle/configuration/internal/UserCodeApplicationContext$Application +instanceKlass org/gradle/configuration/BuildOperationScriptPlugin$$Lambda$264 +instanceKlass org/gradle/configuration/internal/UserCodeApplicationId +instanceKlass org/gradle/configuration/BuildOperationScriptPlugin$2 +instanceKlass org/gradle/configuration/ApplyScriptPluginBuildOperationType$Result +instanceKlass org/gradle/configuration/BuildOperationScriptPlugin +instanceKlass org/gradle/configuration/ScriptTarget +instanceKlass org/gradle/configuration/DefaultScriptPluginFactory$ScriptPluginImpl +instanceKlass org/gradle/api/ProjectState +instanceKlass org/gradle/normalization/InputNormalizationHandler +instanceKlass org/gradle/api/attributes/DocsType +instanceKlass org/gradle/api/internal/artifacts/JavaEcosystemAttributesDescriber +instanceKlass org/gradle/api/internal/artifacts/JavaEcosystemSupport$TargetJvmEnvironmentDisambiguationRules +instanceKlass org/gradle/api/internal/artifacts/JavaEcosystemSupport$TargetJvmEnvironmentCompatibilityRules +instanceKlass org/gradle/api/attributes/java/TargetJvmEnvironment +instanceKlass org/gradle/api/internal/attributes/DefaultOrderedDisambiguationRule +instanceKlass org/gradle/api/internal/attributes/DefaultOrderedCompatibilityRule +instanceKlass org/gradle/api/internal/attributes/AttributeMatchingRules +instanceKlass org/gradle/api/attributes/java/TargetJvmVersion +instanceKlass org/gradle/api/internal/artifacts/JavaEcosystemSupport$BundlingDisambiguationRules +instanceKlass org/gradle/api/internal/artifacts/JavaEcosystemSupport$BundlingCompatibilityRules +instanceKlass org/gradle/api/attributes/Bundling +instanceKlass org/gradle/api/internal/artifacts/JavaEcosystemSupport$$Lambda$263 +instanceKlass org/gradle/api/internal/artifacts/JavaEcosystemSupport$LibraryElementsDisambiguationRules +instanceKlass org/gradle/api/internal/artifacts/JavaEcosystemSupport$LibraryElementsCompatibilityRules +instanceKlass org/gradle/api/internal/artifacts/JavaEcosystemSupport$1 +instanceKlass org/gradle/api/internal/artifacts/JavaEcosystemSupport$UsageDisambiguationRules +instanceKlass org/gradle/api/internal/artifacts/JavaEcosystemSupport$UsageCompatibilityRules +instanceKlass org/gradle/api/internal/artifacts/JavaEcosystemSupport +instanceKlass org/gradle/internal/locking/DefaultDependencyLockingHandler$$Lambda$262 +instanceKlass org/gradle/internal/locking/DefaultDependencyLockingHandler$$Lambda$261 +instanceKlass org/gradle/api/internal/artifacts/DefaultDependencyManagementServices$DependencyResolutionScopeServices$$Lambda$260 +instanceKlass org/gradle/internal/locking/DefaultDependencyLockingHandler +instanceKlass org/gradle/api/internal/artifacts/ivyservice/moduleconverter/DefaultRootComponentMetadataBuilder$MetadataHolder +instanceKlass org/gradle/internal/component/local/model/DefaultLocalComponentMetadata +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfigurationContainer$$Lambda$259 +instanceKlass org/gradle/api/artifacts/Configuration$Namer +instanceKlass org/gradle/api/internal/artifacts/configurations/MutationValidator +instanceKlass org/gradle/api/internal/artifacts/configurations/ConfigurationInternal +instanceKlass org/gradle/internal/deprecation/DeprecatableConfiguration +instanceKlass org/gradle/api/internal/artifacts/configurations/ConfigurationsProvider +instanceKlass org/gradle/api/internal/file/copy/CopySpecSource +instanceKlass org/gradle/api/file/CopySpec +instanceKlass org/gradle/api/file/CopyProcessingSpec +instanceKlass org/gradle/api/file/ContentFilterable +instanceKlass org/gradle/api/file/CopySourceSpec +instanceKlass org/gradle/api/artifacts/ConfigurablePublishArtifact +instanceKlass org/gradle/api/internal/attributes/AttributeDesugaring +instanceKlass org/gradle/api/internal/artifacts/transform/ConsumerProvidedVariantFinder +instanceKlass org/gradle/api/internal/artifacts/transform/VariantSelector +instanceKlass org/gradle/api/internal/artifacts/transform/DefaultArtifactTransforms +instanceKlass org/gradle/api/internal/artifacts/ivyservice/DefaultConfigurationResolver$$Lambda$258 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/oldresult/ResolvedConfigurationBuilder +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/DependencyArtifactsVisitor +instanceKlass org/gradle/api/internal/artifacts/ivyservice/DefaultConfigurationResolver +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/projectresult/ResolvedLocalComponentsResult +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ShortCircuitEmptyConfigurationResolver +instanceKlass org/gradle/api/artifacts/result/ResolutionResult +instanceKlass org/gradle/api/internal/artifacts/ResolveContext +instanceKlass org/gradle/api/artifacts/ResolvedConfiguration +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/VisitedArtifactSet +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ErrorHandlingConfigurationResolver +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/ResolvedArtifactSet$TransformSourceVisitor +instanceKlass org/gradle/api/internal/artifacts/transform/DefaultTransformationNodeFactory +instanceKlass org/gradle/api/internal/artifacts/transform/DefaultTransformedVariantFactory$$Lambda$257 +instanceKlass org/gradle/api/internal/artifacts/transform/TransformedProjectArtifactSet +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/ResolvedArtifactSet$Artifacts +instanceKlass org/gradle/api/internal/artifacts/transform/DefaultTransformedVariantFactory$$Lambda$256 +instanceKlass org/gradle/api/internal/artifacts/transform/DefaultTransformedVariantFactory$Factory +instanceKlass org/gradle/api/internal/artifacts/transform/AbstractTransformedArtifactSet +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/ResolvedArtifactSet +instanceKlass org/gradle/api/internal/artifacts/transform/ExtraExecutionGraphDependenciesResolverFactory +instanceKlass org/gradle/api/internal/artifacts/transform/VariantDefinition +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/ResolvedVariant +instanceKlass org/gradle/api/internal/artifacts/type/DefaultArtifactTypeRegistry +instanceKlass org/gradle/api/artifacts/transform/TransformParameters$None +instanceKlass org/gradle/api/artifacts/transform/TransformParameters +instanceKlass org/gradle/api/artifacts/transform/TransformAction +instanceKlass org/gradle/api/artifacts/transform/VariantTransform +instanceKlass org/gradle/api/artifacts/transform/TransformSpec +instanceKlass org/gradle/api/internal/artifacts/transform/DefaultVariantTransformRegistry$RecordingRegistration +instanceKlass org/gradle/api/internal/artifacts/transform/DefaultVariantTransformRegistry +instanceKlass org/gradle/api/internal/artifacts/ArtifactTransformRegistration +instanceKlass org/gradle/api/internal/artifacts/transform/Transformer +instanceKlass org/gradle/api/internal/tasks/properties/PropertyVisitor +instanceKlass org/gradle/api/internal/artifacts/transform/DefaultTransformationRegistrationFactory +instanceKlass sun/reflect/annotation/AnnotationParser$$Lambda$255 +instanceKlass org/gradle/api/reflect/InjectionPointQualifier +instanceKlass org/gradle/api/internal/tasks/properties/AbstractPropertyNode +instanceKlass org/gradle/api/internal/tasks/properties/bean/RuntimeBeanNodeFactory +instanceKlass org/gradle/api/internal/tasks/properties/DefaultPropertyWalker +instanceKlass org/gradle/api/internal/tasks/properties/DefaultTypeMetadataStore$$Lambda$254 +instanceKlass org/gradle/api/internal/tasks/properties/DefaultTypeMetadataStore$$Lambda$253 +instanceKlass org/gradle/api/internal/tasks/properties/TypeMetadata +instanceKlass org/gradle/internal/reflect/PropertyMetadata +instanceKlass org/gradle/api/internal/tasks/properties/DefaultTypeMetadataStore +instanceKlass org/gradle/api/internal/tasks/properties/TypeMetadataStore +instanceKlass org/gradle/api/internal/tasks/properties/InspectionSchemeFactory$InspectionSchemeImpl +instanceKlass org/gradle/api/internal/tasks/properties/InspectionScheme +instanceKlass org/apache/commons/lang/builder/HashCodeBuilder +instanceKlass com/google/common/base/Equivalence$Wrapper +instanceKlass org/gradle/internal/reflect/Methods +instanceKlass org/gradle/internal/reflect/annotations/impl/DefaultTypeAnnotationMetadataStore$$Lambda$252 +instanceKlass org/gradle/internal/service/scopes/ExecutionGlobalServices$$Lambda$251 +instanceKlass org/gradle/internal/scripts/ScriptOrigin +instanceKlass org/gradle/api/internal/PolymorphicDomainObjectContainerInternal +instanceKlass org/gradle/api/ExtensiblePolymorphicDomainObjectContainer +instanceKlass org/gradle/api/internal/rules/NamedDomainObjectFactoryRegistry +instanceKlass org/gradle/util/internal/ConfigureUtil$WrappedConfigureAction +instanceKlass org/gradle/util/internal/ClosureBackedAction +instanceKlass org/gradle/internal/reflect/AnnotationCategory$1 +instanceKlass org/gradle/work/NormalizeLineEndings +instanceKlass org/gradle/api/tasks/IgnoreEmptyDirectories +instanceKlass org/gradle/api/tasks/Optional +instanceKlass org/gradle/api/tasks/PathSensitive +instanceKlass org/gradle/api/tasks/CompileClasspath +instanceKlass org/gradle/api/tasks/Classpath +instanceKlass org/gradle/api/tasks/SkipWhenEmpty +instanceKlass org/gradle/work/Incremental +instanceKlass org/gradle/api/tasks/UntrackedTask +instanceKlass org/gradle/work/DisableCachingByDefault +instanceKlass org/gradle/api/artifacts/transform/CacheableTransform +instanceKlass org/gradle/api/tasks/CacheableTask +instanceKlass org/gradle/internal/reflect/annotations/impl/DefaultTypeAnnotationMetadataStore$1 +instanceKlass org/gradle/internal/reflect/annotations/TypeAnnotationMetadata +instanceKlass org/gradle/internal/reflect/validation/TypeValidationContext +instanceKlass org/gradle/internal/reflect/annotations/impl/DefaultTypeAnnotationMetadataStore +instanceKlass org/gradle/internal/service/scopes/ExecutionGlobalServices$$Lambda$250 +instanceKlass org/gradle/api/internal/AbstractTask +instanceKlass org/gradle/api/internal/TaskInternal +instanceKlass org/gradle/internal/service/scopes/ExecutionGlobalServices$$Lambda$249 +instanceKlass org/gradle/internal/execution/caching/CachingDisabledReason +instanceKlass org/gradle/internal/execution/DeferredExecutionHandler +instanceKlass org/gradle/internal/execution/UnitOfWork +instanceKlass org/gradle/api/internal/artifacts/transform/DefaultTransformerInvocationFactory +instanceKlass org/gradle/api/internal/artifacts/DefaultDependencyManagementServices$ArtifactTransformResolutionGradleUserHomeServices$1 +instanceKlass org/gradle/internal/execution/workspace/impl/DefaultImmutableWorkspaceProvider$$Lambda$248 +instanceKlass org/gradle/internal/execution/workspace/impl/DefaultImmutableWorkspaceProvider +instanceKlass org/gradle/cache/ManualEvictionInMemoryCache +instanceKlass org/gradle/cache/internal/DefaultCrossBuildInMemoryCacheFactory$CrossBuildCacheRetainingDataFromPreviousBuild +instanceKlass org/gradle/api/internal/artifacts/DependencyManagementGradleUserHomeScopeServices$$Lambda$247 +instanceKlass org/gradle/internal/Try +instanceKlass org/gradle/internal/snapshot/impl/ImplementationSnapshotSerializer +instanceKlass org/gradle/internal/execution/history/impl/FileSystemSnapshotSerializer +instanceKlass org/gradle/internal/execution/history/impl/FileCollectionFingerprintSerializer +instanceKlass org/gradle/internal/execution/history/PreviousExecutionState +instanceKlass org/gradle/internal/execution/history/impl/DefaultExecutionHistoryStore +instanceKlass org/gradle/api/internal/changedetection/state/DefaultExecutionHistoryCacheAccess +instanceKlass org/gradle/internal/execution/ExecutionResult +instanceKlass org/gradle/internal/execution/UnitOfWork$ExecutionRequest +instanceKlass org/gradle/internal/execution/steps/ExecuteStep +instanceKlass org/gradle/internal/execution/steps/RemovePreviousOutputsStep +instanceKlass org/gradle/internal/execution/steps/ResolveInputChangesStep +instanceKlass org/gradle/internal/execution/steps/TimeoutStep +instanceKlass org/gradle/internal/execution/steps/CreateOutputsStep +instanceKlass org/gradle/internal/execution/steps/StoreExecutionStateStep +instanceKlass org/gradle/internal/execution/steps/BroadcastChangingOutputsStep +instanceKlass org/gradle/internal/execution/history/AfterExecutionState +instanceKlass org/gradle/internal/execution/history/OutputExecutionState +instanceKlass org/gradle/internal/execution/steps/SkipUpToDateStep +instanceKlass org/gradle/internal/execution/history/changes/IncrementalInputProperties +instanceKlass org/gradle/internal/execution/fingerprint/InputFingerprinter$InputVisitor +instanceKlass org/gradle/internal/execution/steps/IncrementalChangesContext +instanceKlass org/gradle/internal/execution/steps/CachingContext +instanceKlass org/gradle/internal/execution/steps/ValidationFinishedContext +instanceKlass org/gradle/internal/execution/steps/BeforeExecutionContext +instanceKlass org/gradle/internal/execution/steps/PreviousExecutionContext +instanceKlass org/gradle/internal/execution/steps/WorkspaceContext +instanceKlass org/gradle/internal/execution/steps/ResolveChangesStep +instanceKlass org/gradle/internal/execution/steps/CachingResult +instanceKlass org/gradle/internal/execution/ExecutionEngine$Result +instanceKlass org/gradle/internal/execution/steps/UpToDateResult +instanceKlass org/gradle/internal/execution/steps/AfterExecutionResult +instanceKlass org/gradle/api/internal/artifacts/DependencyManagementBuildScopeServices$NoOpCachingStateStep +instanceKlass org/gradle/internal/reflect/validation/ValidationProblemBuilder +instanceKlass org/gradle/internal/execution/steps/ValidateStep +instanceKlass org/gradle/internal/execution/history/BeforeExecutionState +instanceKlass org/gradle/internal/execution/history/InputExecutionState +instanceKlass org/gradle/internal/execution/history/ExecutionState +instanceKlass org/gradle/internal/execution/UnitOfWork$ImplementationVisitor +instanceKlass org/gradle/internal/execution/steps/BuildOperationStep +instanceKlass org/gradle/internal/execution/steps/Result +instanceKlass org/gradle/internal/execution/steps/RemoveUntrackedExecutionStateStep +instanceKlass org/gradle/internal/execution/steps/LoadPreviousExecutionStateStep +instanceKlass org/gradle/internal/execution/steps/AssignWorkspaceStep +instanceKlass org/gradle/internal/execution/steps/IdentityCacheStep +instanceKlass org/gradle/internal/execution/steps/IdentityContext +instanceKlass org/gradle/internal/execution/steps/ExecutionRequestContext +instanceKlass org/gradle/internal/execution/steps/Context +instanceKlass org/gradle/internal/execution/steps/IdentifyStep +instanceKlass org/gradle/internal/execution/ExecutionEngine$Request +instanceKlass org/gradle/internal/execution/impl/DefaultExecutionEngine +instanceKlass org/gradle/internal/id/UniqueId$1 +instanceKlass com/google/common/base/Ascii +instanceKlass com/google/common/io/BaseEncoding$Alphabet +instanceKlass com/google/common/io/BaseEncoding +instanceKlass org/gradle/internal/id/UniqueId +instanceKlass org/gradle/internal/execution/timeout/Timeout +instanceKlass org/gradle/internal/execution/timeout/impl/DefaultTimeoutHandler +instanceKlass org/gradle/internal/execution/history/impl/DefaultOverlappingOutputDetector +instanceKlass org/gradle/internal/execution/UnitOfWork$OutputVisitor +instanceKlass org/gradle/internal/execution/impl/DefaultOutputSnapshotter +instanceKlass org/gradle/internal/execution/fingerprint/impl/DefaultInputFingerprinter +instanceKlass org/gradle/internal/execution/fingerprint/impl/DefaultFileCollectionFingerprinterRegistry$$Lambda$246 +instanceKlass org/gradle/internal/execution/fingerprint/impl/DefaultFileCollectionFingerprinterRegistry +instanceKlass org/gradle/api/internal/changedetection/state/CachingFileSystemLocationSnapshotHasher +instanceKlass org/gradle/api/internal/changedetection/state/LineEndingNormalizingInputStreamHasher +instanceKlass org/gradle/api/tasks/CompileClasspathNormalizer +instanceKlass org/gradle/api/tasks/ClasspathNormalizer +instanceKlass org/gradle/internal/fingerprint/IgnoredPathInputNormalizer +instanceKlass org/gradle/internal/fingerprint/NameOnlyInputNormalizer +instanceKlass org/gradle/internal/fingerprint/RelativePathInputNormalizer +instanceKlass org/gradle/internal/execution/fingerprint/impl/DefaultFileNormalizationSpec +instanceKlass org/gradle/internal/execution/fingerprint/FileNormalizationSpec +instanceKlass org/gradle/internal/fingerprint/AbsolutePathInputNormalizer +instanceKlass org/gradle/api/tasks/FileNormalizer +instanceKlass org/gradle/internal/fingerprint/impl/FileCollectionFingerprinterRegistrations$$Lambda$245 +instanceKlass org/gradle/internal/execution/fingerprint/impl/FingerprinterRegistration +instanceKlass org/gradle/internal/fingerprint/impl/FileCollectionFingerprinterRegistrations$$Lambda$244 +instanceKlass org/gradle/internal/fingerprint/FileSystemLocationFingerprint +instanceKlass org/gradle/internal/fingerprint/impl/AbstractDirectorySensitiveFingerprintingStrategy$$Lambda$243 +instanceKlass org/gradle/internal/fingerprint/DirectorySensitivity$$Lambda$242 +instanceKlass org/gradle/internal/fingerprint/DirectorySensitivity$$Lambda$241 +instanceKlass org/gradle/internal/fingerprint/DirectorySensitivity$$Lambda$240 +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass org/gradle/internal/fingerprint/impl/FileCollectionFingerprinterRegistrations$$Lambda$239 +instanceKlass org/gradle/internal/snapshot/FileSystemLocationSnapshot$FileSystemLocationSnapshotVisitor +instanceKlass org/gradle/internal/fingerprint/impl/FileCollectionFingerprinterRegistrations$1 +instanceKlass org/gradle/api/internal/changedetection/state/LineEndingNormalizingFileSystemLocationSnapshotHasher$1 +instanceKlass org/gradle/api/internal/changedetection/state/LineEndingNormalizingFileSystemLocationSnapshotHasher +instanceKlass org/gradle/internal/fingerprint/hashing/FileSystemLocationSnapshotHasher$1 +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass org/gradle/internal/fingerprint/impl/FileCollectionFingerprinterRegistrations$$Lambda$238 +instanceKlass org/gradle/internal/normalization/java/ApiClassExtractor$$Lambda$237 +instanceKlass org/gradle/internal/normalization/java/ApiMemberWriterFactory +instanceKlass org/gradle/internal/normalization/java/impl/ApiMemberWriter +instanceKlass org/gradle/internal/normalization/java/ApiClassExtractor +instanceKlass org/gradle/api/internal/changedetection/state/AbiExtractingClasspathResourceHasher +instanceKlass org/gradle/internal/fingerprint/classpath/CompileClasspathFingerprinter +instanceKlass org/gradle/internal/fingerprint/hashing/FileSystemLocationSnapshotHasher +instanceKlass org/gradle/api/internal/changedetection/state/SplitResourceSnapshotterCacheService +instanceKlass org/gradle/internal/service/scopes/VirtualFileSystemServices$BuildSessionServices$$Lambda$236 +instanceKlass org/gradle/internal/execution/history/changes/ChangeVisitor +instanceKlass org/gradle/internal/execution/history/changes/InputFileChanges +instanceKlass org/gradle/internal/execution/history/changes/ChangeContainer +instanceKlass org/gradle/internal/execution/history/changes/DefaultExecutionStateChangeDetector +instanceKlass org/gradle/api/internal/artifacts/dsl/dependencies/GradlePluginVariantsSupport$TargetGradleVersionDisambiguationRule +instanceKlass org/gradle/api/internal/attributes/DefaultCompatibilityRuleChain$ExceptionHandler +instanceKlass org/gradle/api/internal/artifacts/dsl/dependencies/GradlePluginVariantsSupport$TargetGradleVersionCompatibilityRule +instanceKlass org/gradle/api/attributes/AttributeCompatibilityRule +instanceKlass org/gradle/api/attributes/plugin/GradlePluginApiVersion +instanceKlass org/gradle/api/internal/artifacts/dsl/dependencies/GradlePluginVariantsSupport +instanceKlass org/gradle/api/internal/attributes/DefaultDisambiguationRuleChain$ExceptionHandler +instanceKlass org/gradle/internal/action/DefaultConfigurableRules +instanceKlass org/gradle/internal/action/ConfigurableRules +instanceKlass org/gradle/api/artifacts/CacheableRule +instanceKlass org/gradle/internal/snapshot/impl/AbstractArraySnapshot +instanceKlass org/gradle/internal/snapshot/impl/AbstractScalarValueSnapshot +instanceKlass org/gradle/api/internal/DefaultActionConfiguration +instanceKlass org/gradle/internal/action/DefaultConfigurableRule +instanceKlass org/gradle/internal/action/InstantiatingAction +instanceKlass org/gradle/api/internal/artifacts/dsl/dependencies/PlatformSupport$$Lambda$235 +instanceKlass org/gradle/api/ActionConfiguration +instanceKlass org/gradle/api/internal/artifacts/dsl/dependencies/PlatformSupport$ComponentCategoryDisambiguationRule +instanceKlass org/gradle/api/internal/ReusableAction +instanceKlass org/gradle/api/attributes/AttributeDisambiguationRule +instanceKlass org/gradle/api/internal/attributes/MultipleCandidatesResult +instanceKlass org/gradle/api/attributes/MultipleCandidatesDetails +instanceKlass org/gradle/api/internal/attributes/DefaultDisambiguationRuleChain +instanceKlass org/gradle/internal/action/InstantiatingAction$ExceptionHandler +instanceKlass org/gradle/api/internal/attributes/DefaultCompatibilityRuleChain +instanceKlass org/gradle/api/attributes/CompatibilityRuleChain +instanceKlass org/gradle/api/attributes/DisambiguationRuleChain +instanceKlass org/gradle/api/internal/attributes/DefaultAttributeMatchingStrategy +instanceKlass org/gradle/api/internal/attributes/CompatibilityCheckResult +instanceKlass org/gradle/api/attributes/CompatibilityCheckDetails +instanceKlass org/gradle/api/internal/attributes/DefaultAttributesSchema$MergedSchema +instanceKlass org/gradle/api/internal/attributes/DefaultAttributesSchema$DefaultAttributeMatcher +instanceKlass org/gradle/api/internal/attributes/AttributeDescriber +instanceKlass org/gradle/api/attributes/AttributeMatchingStrategy +instanceKlass org/gradle/internal/component/model/AttributeMatcher +instanceKlass org/gradle/internal/component/model/AttributeSelectionSchema +instanceKlass org/gradle/internal/component/model/ComponentAttributeMatcher +instanceKlass org/gradle/api/internal/attributes/DefaultAttributesSchema +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/store/StoreSet +instanceKlass org/gradle/api/internal/artifacts/DefaultDependencyManagementServices$DependencyResolutionScopeServices$$Lambda$234 +instanceKlass org/gradle/api/internal/artifacts/DefaultArtifactRepositoryContainer$$Lambda$233 +instanceKlass org/gradle/api/internal/artifacts/DefaultArtifactRepositoryContainer$$Lambda$232 +instanceKlass org/gradle/api/internal/collections/AbstractIterationOrderRetainingElementSource$RealizedElementCollectionIterator +instanceKlass org/gradle/api/internal/collections/ListElementSource$1 +instanceKlass org/gradle/api/internal/collections/AbstractIterationOrderRetainingElementSource +instanceKlass org/gradle/api/internal/artifacts/DefaultArtifactRepositoryContainer$RepositoryNamer +instanceKlass org/gradle/api/artifacts/repositories/RepositoryContentDescriptor +instanceKlass org/gradle/api/artifacts/repositories/InclusiveRepositoryContentDescriptor +instanceKlass org/gradle/api/artifacts/repositories/IvyArtifactRepository +instanceKlass org/gradle/api/artifacts/repositories/FlatDirectoryArtifactRepository +instanceKlass org/gradle/api/artifacts/repositories/MavenArtifactRepository +instanceKlass org/gradle/api/artifacts/repositories/MetadataSupplierAware +instanceKlass org/gradle/api/artifacts/repositories/AuthenticationSupported +instanceKlass org/gradle/api/artifacts/repositories/UrlArtifactRepository +instanceKlass org/gradle/api/internal/collections/IndexedElementSource +instanceKlass org/gradle/api/internal/artifacts/dsl/RepositoryHandlerInternal +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/parser/GradleModuleMetadataParser +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/strategy/MavenVersionSelectorScheme +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/parser/PomParent +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/parser/AbstractModuleDescriptorParser +instanceKlass org/gradle/api/artifacts/repositories/AuthenticationContainer +instanceKlass org/gradle/api/internal/artifacts/repositories/DefaultBaseRepositoryFactory +instanceKlass org/apache/ivy/util/MessageLogger +instanceKlass org/gradle/api/internal/artifacts/ivyservice/DefaultIvyContextManager +instanceKlass org/gradle/internal/resource/local/CompositeLocallyAvailableResourceFinder +instanceKlass org/gradle/internal/resource/local/ivy/PatternBasedLocallyAvailableResourceFinder$1 +instanceKlass org/gradle/util/internal/MavenUtil +instanceKlass org/gradle/api/internal/artifacts/repositories/resolver/AbstractResourcePattern +instanceKlass org/gradle/internal/resource/local/LocallyAvailableResourceFinderSearchableFileStoreAdapter$$Lambda$231 +instanceKlass org/gradle/internal/resource/local/ivy/LocallyAvailableResourceFinderFactory$$Lambda$230 +instanceKlass org/gradle/internal/resource/local/LocallyAvailableResourceCandidates +instanceKlass org/gradle/internal/resource/local/AbstractLocallyAvailableResourceFinder +instanceKlass org/gradle/internal/resource/local/ivy/LocallyAvailableResourceFinderFactory$$Lambda$229 +instanceKlass org/gradle/api/internal/artifacts/repositories/resolver/ResourcePattern +instanceKlass org/gradle/internal/resource/local/ivy/LocallyAvailableResourceFinderFactory +instanceKlass org/gradle/api/internal/artifacts/mvnsettings/DefaultLocalMavenRepositoryLocator$CurrentSystemPropertyAccess +instanceKlass org/gradle/api/internal/artifacts/mvnsettings/DefaultLocalMavenRepositoryLocator$SystemPropertyAccess +instanceKlass org/gradle/api/internal/artifacts/mvnsettings/DefaultLocalMavenRepositoryLocator +instanceKlass org/gradle/api/internal/artifacts/mvnsettings/DefaultMavenFileLocations +instanceKlass org/apache/maven/settings/io/SettingsReader +instanceKlass org/apache/maven/settings/building/SettingsBuildingRequest +instanceKlass org/gradle/api/internal/artifacts/mvnsettings/DefaultMavenSettingsProvider +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/DependencyGraphVisitor +instanceKlass org/gradle/internal/resolve/resolver/ResolveContextToComponentResolver +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/conflicts/CapabilitiesConflictHandler$Resolver +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/conflicts/ModuleConflictHandler +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/conflicts/CapabilitiesConflictHandler +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/conflicts/ConflictHandler +instanceKlass org/gradle/api/internal/artifacts/ivyservice/dependencysubstitution/DependencySubstitutionApplicator +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/DefaultArtifactDependencyResolver +instanceKlass org/gradle/internal/resolve/caching/ComponentMetadataSupplierRuleExecutor$$Lambda$228 +instanceKlass org/gradle/internal/resolve/caching/ComponentMetadataSupplierRuleExecutor$$Lambda$227 +instanceKlass org/gradle/api/internal/artifacts/DependencyManagementBuildScopeServices$1 +instanceKlass org/gradle/api/artifacts/ComponentMetadata +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/excludes/simple/DefaultExcludeNothing +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/excludes/specs/ExcludeNothing +instanceKlass java/util/concurrent/LinkedBlockingDeque$Node +instanceKlass java/lang/management/MemoryUsage +instanceKlass org/gradle/launcher/daemon/server/health/gc/GarbageCollectionEvent +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/excludes/factories/Unions +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/excludes/factories/Intersections +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/excludes/specs/ModuleSetExclude +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/excludes/specs/GroupSetExclude +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/excludes/simple/DefaultExcludeFactory +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/excludes/factories/DelegatingExcludeFactory +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/excludes/factories/CachingExcludeFactory$ConcurrentCache +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/excludes/factories/CachingExcludeFactory$MergeCaches +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/excludes/factories/ExcludeFactory +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/excludes/specs/ExcludeSpec +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ChangingValueDependencyResolutionListener$1 +instanceKlass org/gradle/api/artifacts/component/ModuleComponentSelector +instanceKlass org/gradle/api/internal/artifacts/configurations/dynamicversion/Expiry +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ChangingValueDependencyResolutionListener +instanceKlass org/gradle/api/artifacts/result/ResolvedArtifactResult +instanceKlass org/gradle/api/artifacts/result/ArtifactResult +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ConnectionFailureRepositoryDisabler +instanceKlass org/gradle/api/internal/artifacts/DependencyManagementBuildScopeServices$2 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/verification/DependencyVerificationOverride$$Lambda$226 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/api/internal/artifacts/configurations/ResolutionStrategyInternal +instanceKlass org/gradle/api/artifacts/ResolutionStrategy +instanceKlass org/gradle/api/internal/artifacts/DependencyManagementBuildScopeServices$$Lambda$225 +instanceKlass org/gradle/api/internal/artifacts/verification/signatures/SignatureVerificationService +instanceKlass org/gradle/security/internal/PublicKeyService +instanceKlass org/gradle/api/internal/artifacts/verification/signatures/DefaultSignatureVerificationServiceFactory +instanceKlass org/gradle/api/internal/changedetection/state/SplitFileHasher +instanceKlass org/gradle/api/internal/artifacts/repositories/transport/RepositoryTransport +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolutionstrategy/ExternalResourceCachePolicy +instanceKlass org/gradle/internal/resource/connector/ResourceConnectorSpecification +instanceKlass org/gradle/api/internal/artifacts/DependencyManagementBuildScopeServices$$Lambda$224 +instanceKlass org/gradle/internal/resource/local/LocallyAvailableExternalResource +instanceKlass org/gradle/internal/resource/ExternalResource +instanceKlass org/gradle/internal/resource/local/FileResourceConnector +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/ResolvedArtifactCaches +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/artifacts/InMemoryModuleArtifactCache +instanceKlass org/gradle/api/internal/artifacts/DependencyManagementBuildScopeServices$$Lambda$223 +instanceKlass org/gradle/api/internal/artifacts/DependencyManagementBuildScopeServices$$Lambda$222 +instanceKlass org/gradle/api/internal/artifacts/DependencyManagementBuildScopeServices$$Lambda$221 +instanceKlass org/gradle/api/internal/artifacts/DependencyManagementBuildScopeServices$$Lambda$220 +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass org/gradle/api/internal/artifacts/DependencyManagementBuildScopeServices$$Lambda$219 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/artifacts/DefaultModuleArtifactCache$CachedArtifactSerializer +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/artifacts/DefaultModuleArtifactCache$ArtifactAtRepositoryKeySerializer +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/artifacts/CachedArtifact +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/artifacts/CachedArtifacts +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/ModuleMetadataStore +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/ModuleMetadataCache$CachedMetadata +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/dynamicversions/ModuleVersionsCache$CachedModuleVersionList +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/api/internal/artifacts/DependencyManagementBuildScopeServices$$Lambda$218 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/StartParameterResolutionOverride$$Lambda$217 +instanceKlass org/gradle/api/internal/artifacts/verification/signatures/BuildTreeDefinedKeys +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ModuleComponentRepository +instanceKlass org/gradle/api/internal/file/DefaultFileSystemLocation +instanceKlass org/gradle/api/resources/TextResource +instanceKlass org/gradle/internal/locking/LockFileReaderWriter +instanceKlass org/gradle/api/internal/provider/ValidatingValueCollector +instanceKlass org/gradle/api/internal/provider/AbstractCollectionProperty$EmptySupplier +instanceKlass org/gradle/api/internal/provider/DefaultListProperty$1 +instanceKlass org/gradle/api/internal/provider/AbstractCollectionProperty$NoValueSupplier +instanceKlass org/gradle/api/internal/provider/CollectionSupplier +instanceKlass org/gradle/internal/locking/LockEntryFilterFactory$$Lambda$216 +instanceKlass org/gradle/internal/locking/LockEntryFilterFactory$$Lambda$215 +instanceKlass org/gradle/api/internal/artifacts/dsl/dependencies/LockEntryFilter +instanceKlass org/gradle/internal/locking/LockEntryFilterFactory +instanceKlass org/gradle/internal/locking/DependencyLockingNotationConverter +instanceKlass org/gradle/api/internal/artifacts/dsl/dependencies/DependencyLockingState +instanceKlass org/gradle/internal/locking/DefaultDependencyLockingProvider +instanceKlass org/gradle/api/internal/artifacts/DefaultComponentSelectorConverter +instanceKlass org/gradle/api/internal/artifacts/component/DefaultComponentIdentifierFactory +instanceKlass org/gradle/api/internal/artifacts/DefaultGlobalDependencyResolutionRules$CompositeDependencySubstitutionRules +instanceKlass org/gradle/api/internal/artifacts/DefaultGlobalDependencyResolutionRules +instanceKlass org/gradle/api/artifacts/ComponentModuleMetadataDetails +instanceKlass org/gradle/api/artifacts/ComponentModuleMetadata +instanceKlass org/gradle/api/internal/artifacts/dsl/ComponentModuleMetadataContainer +instanceKlass org/gradle/api/internal/artifacts/dsl/ModuleReplacementsData +instanceKlass org/gradle/api/internal/artifacts/DefaultDependencyManagementServices$DependencyResolutionScopeServices$$Lambda$214 +instanceKlass com/google/common/collect/MapMakerInternalMap$StrongKeyDummyValueEntry$Helper +instanceKlass org/gradle/api/internal/DefaultNamedDomainObjectCollection$UnfilteredIndex +instanceKlass org/gradle/api/internal/DefaultDomainObjectCollection$1 +instanceKlass org/gradle/api/internal/collections/DefaultCollectionEventRegister +instanceKlass org/gradle/api/internal/provider/Collector +instanceKlass org/gradle/api/internal/collections/DefaultPendingSource +instanceKlass org/gradle/api/Namer$Comparator +instanceKlass org/gradle/api/internal/collections/SortedSetElementSource +instanceKlass org/gradle/api/Named$Namer +instanceKlass org/gradle/internal/instantiation/generator/InjectUtil +instanceKlass java/lang/SafeVarargs +instanceKlass com/google/common/reflect/Types$WildcardTypeImpl +instanceKlass java/util/StringJoiner +instanceKlass sun/reflect/generics/tree/ArrayTypeSignature +instanceKlass sun/reflect/generics/tree/IntSignature +instanceKlass java/lang/Class$EnclosingMethodInfo +instanceKlass com/google/common/reflect/Types$ClassOwnership$1LocalClass +instanceKlass com/google/common/reflect/Types$ParameterizedTypeImpl +instanceKlass com/google/common/reflect/Types$1 +instanceKlass com/google/common/reflect/Types +instanceKlass com/google/common/reflect/TypeResolver$TypeVariableKey +instanceKlass com/google/common/reflect/TypeResolver$TypeTable +instanceKlass com/google/common/reflect/TypeResolver +instanceKlass com/google/common/reflect/TypeVisitor +instanceKlass org/gradle/api/internal/collections/CollectionFilter +instanceKlass org/gradle/api/reflect/TypeOf +instanceKlass org/gradle/api/internal/DefaultNamedDomainObjectCollection$Index +instanceKlass org/gradle/api/NamedDomainObjectCollectionSchema +instanceKlass org/gradle/api/Rule +instanceKlass org/gradle/api/NamedDomainObjectProvider +instanceKlass org/gradle/api/internal/collections/CollectionEventRegister +instanceKlass org/gradle/api/internal/collections/ElementSource +instanceKlass org/gradle/api/internal/collections/PendingSource +instanceKlass org/gradle/internal/instantiation/generator/Jsr330ConstructorSelector$$Lambda$213 +instanceKlass org/gradle/internal/instantiation/generator/Jsr330ConstructorSelector$CachedConstructor +instanceKlass groovy/lang/Buildable +instanceKlass groovy/lang/Writable +instanceKlass org/gradle/internal/management/DefaultDependencyResolutionManagement$$Lambda$212 +instanceKlass org/gradle/api/internal/provider/ValueSupplier$Present +instanceKlass org/gradle/api/internal/provider/ValueSupplier$Missing +instanceKlass org/gradle/api/internal/provider/ValueSupplier$Value +instanceKlass org/gradle/api/internal/provider/Providers +instanceKlass org/gradle/api/internal/provider/ValueSanitizers$4 +instanceKlass org/gradle/api/internal/provider/ValueSanitizers$3 +instanceKlass org/gradle/api/internal/provider/ValueSanitizers$2 +instanceKlass org/gradle/api/internal/provider/ValueSanitizers$1 +instanceKlass org/gradle/api/internal/provider/ValueCollector +instanceKlass org/gradle/api/internal/provider/ValueSanitizer +instanceKlass org/gradle/api/internal/provider/ValueSanitizers +instanceKlass org/gradle/api/internal/provider/AbstractProperty$FinalizationState +instanceKlass org/gradle/internal/management/DefaultDependencyResolutionManagement$ComponentMetadataRulesRegistar +instanceKlass org/apache/groovy/util/BeanUtils +instanceKlass groovy/lang/MetaProperty +instanceKlass javax/annotation/meta/TypeQualifier +instanceKlass org/gradle/api/initialization/dsl/VersionCatalogBuilder +instanceKlass org/gradle/api/internal/WithEstimatedSize +instanceKlass org/gradle/internal/metaobject/PropertyMixIn +instanceKlass org/gradle/internal/metaobject/MethodMixIn +instanceKlass org/gradle/api/reflect/HasPublicType +instanceKlass org/gradle/api/artifacts/repositories/ArtifactRepository +instanceKlass org/gradle/api/initialization/resolve/MutableVersionCatalogContainer +instanceKlass org/gradle/internal/management/DefaultDependencyResolutionManagement +instanceKlass org/gradle/api/internal/DefaultCollectionCallbackActionDecorator +instanceKlass org/gradle/api/internal/provider/CredentialsProviderFactory +instanceKlass org/gradle/api/provider/ValueSourceSpec +instanceKlass org/gradle/api/file/FileContents +instanceKlass org/gradle/api/internal/provider/DefaultProviderFactory +instanceKlass org/gradle/api/internal/provider/ValueSourceProviderFactory$Listener +instanceKlass org/gradle/api/provider/ValueSourceParameters$None +instanceKlass org/gradle/api/provider/ValueSourceParameters +instanceKlass org/gradle/api/provider/ValueSource +instanceKlass org/gradle/internal/isolated/IsolationScheme +instanceKlass org/gradle/api/internal/provider/ValueSourceProviderFactory$Listener$ObtainedValue +instanceKlass org/gradle/api/internal/provider/DefaultValueSourceProviderFactory +instanceKlass org/gradle/api/capabilities/CapabilitiesMetadata +instanceKlass org/gradle/internal/component/external/model/AbstractStatelessDerivationStrategy +instanceKlass org/gradle/api/internal/artifacts/dsl/MetadataRuleWrapper +instanceKlass org/gradle/api/internal/notations/ComponentIdentifierParserFactory +instanceKlass org/gradle/api/artifacts/DependencyConstraintMetadata +instanceKlass org/gradle/api/internal/catalog/parser/StrictVersionParser +instanceKlass org/gradle/api/internal/notations/DependencyStringNotationConverter +instanceKlass org/gradle/api/internal/notations/DependencyMetadataNotationParser +instanceKlass org/gradle/api/internal/artifacts/repositories/resolver/AbstractDependencyImpl +instanceKlass org/gradle/api/artifacts/DirectDependencyMetadata +instanceKlass org/gradle/api/artifacts/DependencyMetadata +instanceKlass org/gradle/internal/rules/DefaultRuleActionAdapter +instanceKlass org/gradle/api/artifacts/maven/PomModuleDescriptor +instanceKlass org/gradle/api/artifacts/ivy/IvyModuleDescriptor +instanceKlass org/gradle/internal/rules/DefaultRuleActionValidator +instanceKlass org/gradle/api/internal/artifacts/dsl/ComponentMetadataRuleContainer +instanceKlass org/gradle/api/internal/artifacts/dsl/SpecConfigurableRule +instanceKlass org/gradle/internal/action/ConfigurableRule +instanceKlass org/gradle/internal/rules/RuleAction +instanceKlass org/gradle/api/internal/artifacts/MetadataResolutionContext +instanceKlass org/gradle/internal/rules/SpecRuleAction +instanceKlass org/gradle/internal/rules/RuleActionAdapter +instanceKlass org/gradle/internal/rules/RuleActionValidator +instanceKlass org/gradle/api/internal/artifacts/ComponentMetadataProcessor +instanceKlass org/gradle/api/attributes/Category$Impl +instanceKlass org/gradle/api/attributes/Category +instanceKlass org/gradle/internal/resolve/caching/CrossBuildCachingRuleExecutor$AnySerializer +instanceKlass org/gradle/internal/resolve/caching/ComponentMetadataRuleExecutor$$Lambda$211 +instanceKlass org/gradle/internal/resolve/caching/ComponentMetadataRuleExecutor$$Lambda$210 +instanceKlass org/gradle/internal/resolve/caching/CrossBuildCachingRuleExecutor$EntryValidator +instanceKlass org/gradle/internal/resolve/caching/CrossBuildCachingRuleExecutor$CachedEntry +instanceKlass org/gradle/api/internal/artifacts/configurations/dynamicversion/CachePolicy +instanceKlass org/gradle/api/artifacts/ResolvedModuleVersion +instanceKlass org/gradle/internal/resolve/caching/ImplicitInputRecorder +instanceKlass org/gradle/internal/component/external/model/ModuleDependencyMetadata +instanceKlass org/gradle/internal/component/model/ConfigurationMetadata +instanceKlass org/gradle/internal/component/external/model/CapabilityInternal +instanceKlass org/gradle/internal/component/external/model/AbstractRealisedModuleResolveMetadataSerializationHelper +instanceKlass org/gradle/api/internal/artifacts/ModuleComponentSelectorSerializer +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/ModuleMetadataSerializer +instanceKlass org/gradle/internal/component/external/model/ModuleComponentResolveMetadata +instanceKlass org/gradle/internal/component/external/model/VirtualComponentIdentifier +instanceKlass org/gradle/internal/component/model/ModuleSources +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ModuleDescriptorHashCodec +instanceKlass org/gradle/api/internal/artifacts/repositories/metadata/MetadataFileSource +instanceKlass org/gradle/internal/component/model/PersistentModuleSource +instanceKlass org/gradle/internal/component/model/ModuleSource +instanceKlass org/gradle/api/internal/artifacts/repositories/metadata/DefaultMetadataFileSourceCodec +instanceKlass org/gradle/internal/component/model/PersistentModuleSource$Codec +instanceKlass org/gradle/api/internal/artifacts/DependencyManagementBuildScopeServices$$Lambda$209 +instanceKlass org/gradle/api/internal/artifacts/DependencyManagementBuildScopeServices$$Lambda$208 +instanceKlass org/gradle/api/internal/filestore/DefaultArtifactIdentifierFileStore$$Lambda$207 +instanceKlass org/gradle/api/internal/filestore/DefaultArtifactIdentifierFileStore$1 +instanceKlass org/gradle/api/internal/artifacts/DependencyManagementBuildScopeServices$$Lambda$206 +instanceKlass org/gradle/internal/resource/cached/CachedExternalResource +instanceKlass org/gradle/internal/resource/metadata/ExternalResourceMetaData +instanceKlass org/gradle/internal/resource/cached/DefaultCachedExternalResourceIndex$CachedExternalResourceSerializer +instanceKlass org/gradle/internal/resource/cached/CachedItem +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ArtifactCachesProvider$$Lambda$205 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/api/internal/artifacts/DependencyManagementBuildScopeServices$$Lambda$204 +instanceKlass org/gradle/internal/resource/local/LocallyAvailableResource +instanceKlass org/gradle/internal/resource/local/DefaultPathKeyFileStore +instanceKlass org/gradle/internal/resource/cached/DefaultExternalResourceFileStore$$Lambda$203 +instanceKlass org/gradle/api/Namer +instanceKlass org/gradle/internal/resource/cached/DefaultExternalResourceFileStore$1 +instanceKlass org/gradle/internal/resource/local/GroupedAndNamedUniqueFileStore$Grouper +instanceKlass org/gradle/internal/resource/local/PathKeyFileStore +instanceKlass org/gradle/internal/hash/ChecksumHasher +instanceKlass org/gradle/internal/hash/DefaultChecksumService +instanceKlass org/gradle/internal/component/external/descriptor/Configuration +instanceKlass org/gradle/internal/component/external/model/ivy/MutableIvyModuleResolveMetadata +instanceKlass org/gradle/internal/component/model/IvyArtifactName +instanceKlass org/gradle/api/internal/artifacts/repositories/metadata/DefaultMavenImmutableAttributesFactory +instanceKlass org/gradle/api/internal/artifacts/repositories/metadata/MavenImmutableAttributesFactory +instanceKlass org/gradle/internal/component/external/model/maven/MutableMavenModuleResolveMetadata +instanceKlass org/gradle/internal/component/external/model/MutableModuleComponentResolveMetadata +instanceKlass org/gradle/internal/component/external/model/PreferJavaRuntimeVariant$PreferJarVariantUsageDisambiguationRule +instanceKlass org/gradle/internal/component/external/model/PreferJavaRuntimeVariant$PreferRuntimeVariantUsageDisambiguationRule +instanceKlass org/gradle/api/attributes/LibraryElements$Impl +instanceKlass org/gradle/api/attributes/Usage$Impl +instanceKlass org/gradle/model/internal/type/ClassTypeWrapper +instanceKlass org/gradle/model/internal/type/TypeWrapper +instanceKlass org/gradle/model/internal/type/ModelType +instanceKlass org/gradle/model/internal/inspect/FormattingValidationProblemCollector +instanceKlass org/gradle/api/attributes/LibraryElements +instanceKlass org/gradle/api/attributes/Usage +instanceKlass org/gradle/api/internal/attributes/EmptySchema$DoNothingDisambiguationRule +instanceKlass org/gradle/api/internal/attributes/EmptySchema$DoNothingCompatibilityRule +instanceKlass org/gradle/api/internal/attributes/CompatibilityRule +instanceKlass org/gradle/api/internal/attributes/DisambiguationRule +instanceKlass org/gradle/internal/snapshot/ValueSnapshot +instanceKlass org/gradle/internal/snapshot/impl/DefaultValueSnapshotter$ValueSnapshotVisitor +instanceKlass org/gradle/api/internal/tasks/properties/PropertyValue +instanceKlass org/gradle/api/internal/tasks/properties/annotations/NestedBeanAnnotationHandler +instanceKlass org/gradle/api/internal/tasks/properties/annotations/LocalStatePropertyAnnotationHandler +instanceKlass org/gradle/api/internal/tasks/properties/annotations/DestroysPropertyAnnotationHandler +instanceKlass org/gradle/api/internal/tasks/properties/annotations/InputPropertyAnnotationHandler +instanceKlass org/gradle/api/internal/tasks/properties/annotations/NoOpPropertyAnnotationHandler +instanceKlass org/gradle/api/internal/artifacts/transform/CacheableTransformTypeAnnotationHandler +instanceKlass org/gradle/api/internal/tasks/properties/annotations/UntrackedTaskTypeAnnotationHandler +instanceKlass org/gradle/api/internal/tasks/properties/annotations/CacheableTaskTypeAnnotationHandler +instanceKlass org/gradle/api/internal/tasks/properties/annotations/DisableCachingByDefaultTypeAnnotationHandler +instanceKlass org/gradle/vcs/internal/services/VersionControlServices$VcsResolverFactory +instanceKlass org/gradle/vcs/internal/resolver/OncePerBuildInvocationVcsVersionWorkingDirResolver +instanceKlass org/gradle/vcs/internal/resolver/DefaultVcsVersionWorkingDirResolver +instanceKlass org/gradle/vcs/internal/VersionRef +instanceKlass org/gradle/vcs/internal/resolver/PersistentVcsMetadataCache$VersionRefSerializer +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/strategy/CachingVersionSelectorScheme +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/strategy/VersionSelector +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/strategy/DefaultVersionSelectorScheme +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/strategy/Version +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/strategy/StaticVersionComparator +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/strategy/DefaultVersionComparator +instanceKlass org/gradle/cache/internal/CleanupActionFactory$BuildOperationCacheCleanupDecorator +instanceKlass org/gradle/internal/resource/local/ModificationTimeFileAccessTimeJournal +instanceKlass org/gradle/vcs/internal/VersionControlRepositoryConnection +instanceKlass org/gradle/vcs/internal/VersionControlSystem +instanceKlass org/gradle/vcs/internal/services/DefaultVersionControlRepositoryFactory +instanceKlass org/gradle/vcs/internal/DefaultVcsMappingsStore +instanceKlass org/gradle/vcs/internal/DefaultVcsMappingFactory +instanceKlass org/gradle/vcs/internal/services/DefaultVersionControlSpecFactory +instanceKlass org/gradle/internal/typeconversion/CharSequenceNotationConverter +instanceKlass org/gradle/api/internal/notations/ModuleIdentifierNotationConverter +instanceKlass org/gradle/api/internal/artifacts/ivyservice/projectmodule/DefaultLocalComponentRegistry +instanceKlass org/gradle/composite/internal/IncludedBuildDependencyMetadataBuilder +instanceKlass org/gradle/internal/component/local/model/LocalComponentMetadata +instanceKlass org/gradle/internal/component/local/model/BuildableLocalComponentMetadata +instanceKlass org/gradle/api/internal/artifacts/ivyservice/projectmodule/DefaultProjectLocalComponentProvider +instanceKlass org/gradle/api/artifacts/Configuration +instanceKlass org/gradle/api/attributes/HasConfigurableAttributes +instanceKlass org/gradle/api/internal/artifacts/configurations/ConfigurationInternal$VariantVisitor +instanceKlass org/gradle/api/internal/artifacts/ivyservice/moduleconverter/DefaultLocalComponentMetadataBuilder +instanceKlass org/gradle/internal/component/local/model/LocalFileDependencyMetadata +instanceKlass org/gradle/api/internal/artifacts/ivyservice/moduleconverter/dependencies/DefaultLocalConfigurationMetadataBuilder +instanceKlass org/gradle/util/internal/WrapUtil +instanceKlass org/gradle/api/internal/artifacts/ivyservice/moduleconverter/dependencies/DefaultDependencyDescriptorFactory +instanceKlass org/gradle/internal/component/model/LocalOriginDependencyMetadata +instanceKlass org/gradle/internal/component/model/ForcingDependencyMetadata +instanceKlass org/gradle/internal/component/model/DependencyMetadata +instanceKlass org/gradle/api/artifacts/Dependency +instanceKlass org/gradle/internal/component/model/ExcludeMetadata +instanceKlass org/gradle/api/internal/artifacts/ivyservice/moduleconverter/dependencies/DefaultExcludeRuleConverter +instanceKlass org/gradle/internal/model/CalculatedValueContainerFactory$$Lambda$202 +instanceKlass org/gradle/api/internal/tasks/NodeExecutionContext +instanceKlass org/gradle/internal/resource/transport/sftp/SftpConnectorFactory +instanceKlass com/jcraft/jsch/HostKeyRepository +instanceKlass com/jcraft/jsch/Logger +instanceKlass org/gradle/internal/resource/transport/sftp/LockableSftpClient +instanceKlass org/gradle/internal/resource/transport/sftp/SftpClientFactory$SftpClientCreator +instanceKlass org/gradle/internal/resource/transport/aws/s3/S3ConnectorFactory +instanceKlass org/gradle/internal/resource/transport/gcp/gcs/GcsConnectorFactory +instanceKlass org/gradle/internal/resource/transfer/ExternalResourceConnector +instanceKlass org/gradle/internal/resource/transfer/ExternalResourceAccessor +instanceKlass org/gradle/internal/resource/transfer/ExternalResourceLister +instanceKlass org/gradle/internal/resource/transfer/ExternalResourceUploader +instanceKlass org/gradle/internal/resource/transport/http/HttpConnectorFactory +instanceKlass org/gradle/internal/resource/transport/http/HttpClientHelper$Factory$$Lambda$201 +instanceKlass org/gradle/internal/resource/transport/http/HttpClientHelper +instanceKlass org/gradle/internal/resource/transport/http/HttpSettings +instanceKlass org/gradle/internal/resource/transport/http/DefaultSslContextFactory +instanceKlass org/gradle/internal/resource/transport/file/FileConnectorFactory +instanceKlass org/gradle/composite/internal/CompositeProjectComponentArtifactMetadataSerializer +instanceKlass org/gradle/composite/internal/CompositeProjectComponentArtifactMetadata +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/ResolvedComponentResultSerializer +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/ComponentSelectorSerializer$OptimizingAttributeContainerSerializer +instanceKlass org/gradle/api/internal/artifacts/ImmutableVersionConstraint +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/ComponentSelectionReasonSerializer +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/ComponentSelectionDescriptorSerializer +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/ResolvedVariantResultSerializer +instanceKlass org/gradle/internal/component/external/model/DefaultModuleComponentIdentifier +instanceKlass org/gradle/api/artifacts/component/ModuleComponentIdentifier +instanceKlass org/gradle/api/internal/artifacts/metadata/ModuleComponentFileArtifactIdentifierSerializer +instanceKlass org/gradle/api/internal/artifacts/metadata/ComponentArtifactIdentifierSerializer +instanceKlass org/gradle/api/internal/artifacts/DependencyManagementValueSnapshotterSerializerRegistry$OpaqueComponentArtifactIdentifierSerializer +instanceKlass org/gradle/api/artifacts/PublishArtifact +instanceKlass org/gradle/api/internal/artifacts/metadata/PublishArtifactLocalArtifactMetadataSerializer +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/CapabilitySerializer +instanceKlass org/gradle/api/internal/artifacts/ModuleVersionIdentifierSerializer +instanceKlass org/gradle/internal/resolve/caching/DesugaringAttributeContainerSerializer +instanceKlass org/gradle/api/artifacts/result/ResolvedComponentResult +instanceKlass org/gradle/api/artifacts/result/ComponentResult +instanceKlass org/gradle/api/artifacts/result/ComponentSelectionReason +instanceKlass org/gradle/api/artifacts/result/ResolvedVariantResult +instanceKlass org/gradle/internal/component/local/model/ComponentFileArtifactIdentifier +instanceKlass org/gradle/internal/component/external/model/DefaultModuleComponentArtifactIdentifier +instanceKlass org/gradle/internal/component/external/model/ModuleComponentArtifactIdentifier +instanceKlass org/gradle/internal/component/local/model/OpaqueComponentArtifactIdentifier +instanceKlass org/gradle/internal/component/local/model/PublishArtifactLocalArtifactMetadata +instanceKlass org/gradle/api/artifacts/component/ComponentArtifactIdentifier +instanceKlass org/gradle/internal/component/local/model/LocalComponentArtifactMetadata +instanceKlass org/gradle/api/artifacts/ModuleVersionIdentifier +instanceKlass org/gradle/api/artifacts/result/ComponentSelectionDescriptor +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/CachingComponentSelectionDescriptorFactory +instanceKlass org/gradle/api/internal/initialization/DefaultScriptHandler +instanceKlass org/gradle/api/internal/artifacts/DefaultDependencyManagementServices$DefaultDependencyResolutionServices +instanceKlass org/gradle/api/internal/artifacts/ivyservice/moduleconverter/DefaultRootComponentMetadataBuilder +instanceKlass org/gradle/api/internal/artifacts/ivyservice/moduleconverter/RootComponentMetadataBuilder +instanceKlass org/gradle/api/internal/artifacts/transform/TransformationNodeFactory +instanceKlass org/gradle/api/internal/artifacts/transform/DefaultTransformedVariantFactory$VariantKey +instanceKlass org/gradle/api/internal/artifacts/transform/DefaultTransformedVariantFactory +instanceKlass org/gradle/api/internal/artifacts/dsl/DefaultComponentModuleMetadataHandler +instanceKlass org/gradle/api/internal/artifacts/transform/TransformedVariantFactory +instanceKlass org/gradle/api/artifacts/dsl/DependencyHandler +instanceKlass org/gradle/api/artifacts/dsl/ComponentModuleMetadataHandler +instanceKlass org/gradle/api/internal/artifacts/RepositoriesSupplier +instanceKlass org/gradle/api/internal/artifacts/ComponentModuleMetadataProcessor +instanceKlass org/gradle/api/internal/artifacts/ComponentMetadataProcessorFactory +instanceKlass org/gradle/api/artifacts/dsl/DependencyConstraintHandler +instanceKlass org/gradle/api/artifacts/dsl/ArtifactHandler +instanceKlass org/gradle/api/internal/artifacts/dsl/PublishArtifactNotationParserFactory +instanceKlass org/gradle/api/artifacts/dsl/DependencyLockingHandler +instanceKlass org/gradle/api/internal/artifacts/dsl/DefaultComponentMetadataHandler +instanceKlass org/gradle/api/internal/artifacts/dsl/ComponentMetadataHandlerInternal +instanceKlass org/gradle/api/artifacts/dsl/ComponentMetadataHandler +instanceKlass org/gradle/api/internal/artifacts/configurations/ConfigurationContainerInternal +instanceKlass org/gradle/api/artifacts/ConfigurationContainer +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfigurationFactory +instanceKlass org/gradle/api/internal/artifacts/ivyservice/moduleconverter/DefaultRootComponentMetadataBuilder$Factory +instanceKlass org/gradle/api/internal/artifacts/repositories/DefaultUrlArtifactRepository$Factory +instanceKlass org/gradle/api/internal/artifacts/transform/MutableTransformationWorkspaceServices +instanceKlass org/gradle/internal/file/ReservedFileSystemLocation +instanceKlass org/gradle/api/file/ProjectLayout +instanceKlass org/gradle/api/internal/tasks/TaskResolver +instanceKlass org/gradle/api/internal/artifacts/query/ArtifactResolutionQueryFactory +instanceKlass org/gradle/api/internal/artifacts/transform/TransformationRegistrationFactory +instanceKlass org/gradle/api/internal/artifacts/ConfigurationResolver +instanceKlass org/gradle/api/internal/artifacts/transform/ArtifactTransforms +instanceKlass org/gradle/api/internal/artifacts/dsl/dependencies/DependencyLockingProvider +instanceKlass org/gradle/api/internal/artifacts/GlobalDependencyResolutionRules +instanceKlass org/gradle/api/internal/artifacts/ArtifactPublicationServices +instanceKlass org/gradle/api/internal/artifacts/DependencyResolutionServices +instanceKlass org/gradle/internal/component/external/model/VariantDerivationStrategy +instanceKlass org/gradle/api/internal/artifacts/VariantTransformRegistry +instanceKlass org/gradle/api/internal/artifacts/type/ArtifactTypeRegistry +instanceKlass org/gradle/api/internal/artifacts/BaseRepositoryFactory +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/parser/MetaDataParser +instanceKlass org/gradle/api/internal/artifacts/transform/TransformerInvocationFactory +instanceKlass org/gradle/api/internal/artifacts/DefaultDependencyManagementServices$DependencyResolutionScopeServices +instanceKlass org/gradle/api/internal/artifacts/DefaultDependencyManagementServices$ArtifactTransformResolutionGradleUserHomeServices +instanceKlass org/gradle/internal/model/CalculatedModelValue +instanceKlass org/gradle/api/internal/initialization/RootScriptDomainObjectContext +instanceKlass org/gradle/internal/resource/UriTextResource$UriResourceLocation +instanceKlass org/gradle/invocation/DefaultGradle$$Lambda$200 +instanceKlass org/gradle/groovy/scripts/TextResourceScriptSource +instanceKlass org/gradle/internal/resource/ResourceLocation +instanceKlass org/gradle/internal/resource/UriTextResource +instanceKlass org/gradle/initialization/InitScriptHandler$1 +instanceKlass org/gradle/initialization/DirectoryInitScriptFinder +instanceKlass org/gradle/initialization/CompositeInitScriptFinder +instanceKlass org/gradle/initialization/InitScriptFinder +instanceKlass org/gradle/initialization/DefaultGradleProperties +instanceKlass org/gradle/configurationcache/extensions/CastExtensionsKt +instanceKlass kotlin/text/StringsKt__AppendableKt +instanceKlass org/gradle/configurationcache/extensions/MapExtensionsKt +instanceKlass org/gradle/configurationcache/services/DefaultEnvironment$DefaultProperties +instanceKlass org/gradle/initialization/Environment$Properties +instanceKlass org/gradle/initialization/DefaultGradlePropertiesController$Loaded +instanceKlass org/gradle/initialization/DefaultSettingsLoader +instanceKlass org/gradle/initialization/SettingsAttachingSettingsLoader +instanceKlass org/gradle/internal/composite/CommandLineIncludedBuildSettingsLoader +instanceKlass org/gradle/internal/composite/ChildBuildRegisteringSettingsLoader +instanceKlass org/gradle/internal/composite/CompositeBuildSettingsLoader +instanceKlass org/gradle/initialization/InitScriptHandlingSettingsLoader +instanceKlass org/gradle/initialization/GradlePropertiesHandlingSettingsLoader +instanceKlass org/gradle/initialization/BuildOperationFiringSettingsPreparer$LoadBuild$1 +instanceKlass org/gradle/initialization/LoadBuildBuildOperationType$Details +instanceKlass org/gradle/initialization/BuildOperationFiringSettingsPreparer$LoadBuild +instanceKlass org/gradle/internal/model/StateTransitionController$$Lambda$199 +instanceKlass org/gradle/initialization/VintageBuildModelController$$Lambda$198 +instanceKlass org/gradle/internal/model/StateTransitionController$$Lambda$197 +instanceKlass org/gradle/internal/model/StateTransitionController$$Lambda$196 +instanceKlass org/gradle/internal/build/DefaultBuildLifecycleController$$Lambda$195 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/composite/internal/DefaultBuildControllers$$Lambda$194 +instanceKlass org/gradle/composite/internal/BuildController +instanceKlass org/gradle/composite/internal/DefaultBuildControllers +instanceKlass org/gradle/composite/internal/BuildControllers +instanceKlass org/gradle/composite/internal/DefaultIncludedBuildTaskGraph$DefaultBuildTreeWorkGraph +instanceKlass org/gradle/internal/buildtree/DefaultBuildTreeLifecycleController$$Lambda$193 +instanceKlass org/gradle/internal/buildtree/BuildTreeWorkGraph +instanceKlass org/gradle/internal/model/StateTransitionController$$Lambda$192 +instanceKlass org/gradle/internal/model/StateTransitionController$$Lambda$191 +instanceKlass org/gradle/internal/buildtree/DefaultBuildTreeLifecycleController$$Lambda$190 +instanceKlass org/gradle/internal/buildtree/DefaultBuildTreeLifecycleController$$Lambda$189 +instanceKlass org/gradle/internal/build/ExecutionResult +instanceKlass org/gradle/tooling/internal/provider/runner/BuildModelActionRunner$ModelCreateAction +instanceKlass org/gradle/internal/buildtree/ProblemReportingBuildActionRunner$$Lambda$188 +instanceKlass org/gradle/internal/model/StateTransitionController$$Lambda$187 +instanceKlass org/gradle/internal/model/StateTransitionController$$Lambda$186 +instanceKlass org/gradle/internal/buildtree/DefaultBuildTreeLifecycleController$$Lambda$185 +instanceKlass org/gradle/launcher/exec/BuildOutcomeReportingBuildActionRunner$$Lambda$184 +instanceKlass org/gradle/internal/logging/format/TersePrettyDurationFormatter +instanceKlass org/gradle/internal/buildevents/BuildResultLogger +instanceKlass org/gradle/internal/exceptions/FailureResolutionAware$Context +instanceKlass org/gradle/util/internal/TreeVisitor +instanceKlass org/gradle/internal/buildevents/BuildExceptionReporter +instanceKlass org/gradle/internal/logging/format/DurationFormatter +instanceKlass org/gradle/internal/buildevents/BuildLogger +instanceKlass org/gradle/api/internal/tasks/execution/statistics/TaskExecutionStatisticsEventAdapter +instanceKlass org/gradle/tooling/internal/provider/FileSystemWatchingBuildActionRunner$1 +instanceKlass org/gradle/internal/watch/options/FileSystemWatchingSettingsFinalizedProgressDetails +instanceKlass org/gradle/api/internal/tasks/compile/CompileJavaBuildOperationType$Result +instanceKlass org/gradle/internal/operations/notify/BuildOperationNotificationBridge$Finished +instanceKlass org/gradle/internal/operations/OperationFinishEvent +instanceKlass org/gradle/internal/watch/vfs/impl/WatchingVirtualFileSystem$1$1 +instanceKlass org/gradle/internal/watch/vfs/BuildStartedFileSystemWatchingBuildOperationType$Result +instanceKlass com/google/common/collect/CollectCollectors$$Lambda$183 +instanceKlass com/google/common/collect/CollectCollectors$$Lambda$182 +instanceKlass com/google/common/collect/CollectCollectors$$Lambda$181 +instanceKlass com/google/common/collect/RangeGwtSerializationDependencies +instanceKlass com/google/common/collect/CollectCollectors$$Lambda$180 +instanceKlass com/google/common/collect/ImmutableRangeSet$Builder +instanceKlass com/google/common/collect/SortedIterable +instanceKlass com/google/common/collect/AbstractRangeSet +instanceKlass com/google/common/collect/RangeSet +instanceKlass com/google/common/collect/CollectCollectors$$Lambda$179 +instanceKlass com/google/common/collect/CollectCollectors$$Lambda$178 +instanceKlass com/google/common/collect/CollectCollectors$$Lambda$177 +instanceKlass com/google/common/collect/CollectCollectors$$Lambda$176 +instanceKlass com/google/common/collect/CollectCollectors$$Lambda$175 +instanceKlass com/google/common/collect/CollectCollectors$$Lambda$174 +instanceKlass com/google/common/collect/CollectCollectors$$Lambda$173 +instanceKlass com/google/common/collect/CollectCollectors$$Lambda$172 +instanceKlass com/google/common/collect/CollectCollectors +instanceKlass org/gradle/internal/watch/registry/impl/AbstractFileWatcherUpdater$$Lambda$171 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass java/util/stream/MatchOps$$Lambda$170 +instanceKlass java/util/stream/MatchOps$BooleanTerminalSink +instanceKlass java/util/stream/MatchOps$MatchOp +instanceKlass java/util/stream/MatchOps +instanceKlass org/gradle/internal/watch/registry/impl/AbstractFileWatcherUpdater$$Lambda$169 +instanceKlass org/gradle/internal/watch/registry/impl/AbstractFileWatcherUpdater$$Lambda$168 +instanceKlass org/gradle/internal/watch/registry/impl/AbstractFileWatcherUpdater$$Lambda$167 +instanceKlass org/gradle/internal/watch/registry/impl/AbstractFileWatcherUpdater$$Lambda$166 +instanceKlass java/util/ArrayDeque$DeqSpliterator +instanceKlass org/gradle/internal/watch/registry/impl/WatchableHierarchies$$Lambda$165 +instanceKlass org/gradle/internal/watch/registry/impl/WatchableHierarchies$$Lambda$164 +instanceKlass org/gradle/internal/watch/vfs/impl/WatchingVirtualFileSystem$$Lambda$163 +instanceKlass org/gradle/internal/watch/registry/impl/WatchableHierarchies$$Lambda$162 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/internal/watch/registry/impl/Combiners$$Lambda$161 +instanceKlass org/gradle/internal/watch/registry/impl/Combiners +instanceKlass org/gradle/internal/watch/registry/impl/WatchableHierarchies$$Lambda$160 +instanceKlass org/gradle/internal/watch/registry/impl/DefaultFileWatcherProbeRegistry$$Lambda$159 +instanceKlass org/gradle/internal/watch/registry/impl/DefaultFileWatcherProbeRegistry$$Lambda$158 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/internal/watch/registry/impl/DefaultFileWatcherProbeRegistry$WatchProbe +instanceKlass org/gradle/internal/watch/registry/impl/HierarchicalFileWatcherUpdater$$Lambda$157 +instanceKlass org/gradle/internal/watch/registry/impl/WatchableHierarchies$Invalidator +instanceKlass org/gradle/internal/watch/registry/impl/DefaultFileWatcherRegistry$$Lambda$156 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/internal/watch/registry/impl/DefaultFileWatcherRegistry$$Lambda$155 +instanceKlass org/gradle/internal/watch/registry/impl/DefaultFileWatcherRegistry$MutableFileWatchingStatistics +instanceKlass net/rubygrapefruit/platform/file/FileWatchEvent$Handler +instanceKlass org/gradle/internal/watch/registry/FileWatcherRegistry$FileWatchingStatistics +instanceKlass org/gradle/internal/watch/registry/impl/DefaultFileWatcherRegistry +instanceKlass org/gradle/internal/watch/registry/impl/WindowsFileWatcherRegistryFactory$$Lambda$154 +instanceKlass org/gradle/internal/watch/registry/impl/AbstractFileWatcherUpdater$MovedDirectoryHandler +instanceKlass org/gradle/internal/watch/registry/impl/HierarchicalFileWatcherUpdater$FileSystemLocationToWatchValidator$$Lambda$153 +instanceKlass org/gradle/internal/watch/registry/impl/HierarchicalFileWatcherUpdater$FileSystemLocationToWatchValidator +instanceKlass org/gradle/internal/watch/registry/impl/AbstractFileWatcherUpdater +instanceKlass org/gradle/internal/file/FileHierarchySet$RootVisitor +instanceKlass org/gradle/internal/snapshot/FileSystemSnapshotHierarchyVisitor +instanceKlass org/gradle/internal/watch/registry/impl/WatchableHierarchies +instanceKlass net/rubygrapefruit/platform/internal/jni/AbstractFileEventFunctions$NativeFileWatcher +instanceKlass net/rubygrapefruit/platform/file/FileWatchEvent +instanceKlass net/rubygrapefruit/platform/internal/jni/AbstractFileEventFunctions$NativeFileWatcherCallback +instanceKlass org/gradle/internal/watch/registry/impl/AbstractFileWatcherRegistryFactory$$Lambda$152 +instanceKlass org/gradle/internal/watch/registry/impl/DefaultFileWatcherProbeRegistry +instanceKlass org/gradle/internal/watch/vfs/impl/WatchingVirtualFileSystem$3 +instanceKlass java/util/stream/ForEachOps$ForEachOp +instanceKlass java/util/stream/ForEachOps +instanceKlass org/gradle/internal/watch/vfs/impl/WatchingVirtualFileSystem$1$$Lambda$151 +instanceKlass org/gradle/internal/watch/vfs/impl/DefaultWatchableFileSystemDetector$$Lambda$150 +instanceKlass org/gradle/internal/watch/vfs/impl/DefaultWatchableFileSystemDetector$$Lambda$149 +instanceKlass net/rubygrapefruit/platform/internal/FileSystemList$DefaultCaseSensitivity +instanceKlass net/rubygrapefruit/platform/internal/DefaultFileSystemInfo +instanceKlass net/rubygrapefruit/platform/file/FileSystemInfo +instanceKlass net/rubygrapefruit/platform/internal/jni/PosixFileSystemFunctions +instanceKlass net/rubygrapefruit/platform/file/CaseSensitivity +instanceKlass net/rubygrapefruit/platform/internal/FileSystemList +instanceKlass org/gradle/internal/watch/vfs/BuildStartedFileSystemWatchingBuildOperationType$Details$1 +instanceKlass org/gradle/internal/watch/vfs/BuildStartedFileSystemWatchingBuildOperationType$Details +instanceKlass org/gradle/internal/watch/vfs/FileSystemWatchingStatistics +instanceKlass org/gradle/internal/watch/vfs/impl/WatchingVirtualFileSystem$1 +instanceKlass org/gradle/internal/watch/vfs/impl/WatchingVirtualFileSystem$$Lambda$148 +instanceKlass org/slf4j/helpers/NamedLoggerBase +instanceKlass org/gradle/configuration/internal/DefaultListenerBuildOperationDecorator +instanceKlass org/gradle/api/tasks/util/internal/CachingPatternSpecFactory$CachingSpec +instanceKlass org/gradle/api/internal/file/RelativePathSpec +instanceKlass org/gradle/api/internal/file/pattern/AnythingMatcher +instanceKlass org/gradle/api/internal/file/pattern/FixedPatternStep +instanceKlass org/gradle/api/internal/file/pattern/HasSuffixPatternStep +instanceKlass org/gradle/api/internal/file/pattern/HasPrefixPatternStep +instanceKlass org/gradle/api/internal/file/pattern/HasPrefixAndSuffixPatternStep +instanceKlass org/gradle/api/internal/file/pattern/AnyWildcardPatternStep +instanceKlass org/gradle/api/internal/file/pattern/PatternStep +instanceKlass org/gradle/api/internal/file/pattern/PatternStepFactory +instanceKlass org/gradle/api/internal/file/pattern/FixedStepPathMatcher +instanceKlass org/gradle/api/internal/file/pattern/GreedyPathMatcher +instanceKlass org/gradle/api/internal/file/pattern/EndOfPathMatcher +instanceKlass org/gradle/api/internal/file/pattern/PathMatcher +instanceKlass org/gradle/api/internal/file/pattern/PatternMatcher +instanceKlass org/gradle/api/internal/file/pattern/PatternMatcherFactory +instanceKlass org/gradle/api/tasks/util/internal/CachingPatternSpecFactory$1 +instanceKlass org/gradle/api/tasks/util/internal/CachingPatternSpecFactory$SpecKey +instanceKlass org/gradle/cache/internal/BuildScopeCacheDir +instanceKlass org/gradle/launcher/exec/RootBuildLifecycleBuildActionExecutor$$Lambda$147 +instanceKlass org/gradle/initialization/buildsrc/BuildSrcDetector +instanceKlass org/gradle/internal/watch/vfs/impl/WatchingVirtualFileSystem$$Lambda$146 +instanceKlass java/util/function/UnaryOperator +instanceKlass org/gradle/internal/buildtree/DefaultBuildTreeLifecycleController +instanceKlass org/gradle/internal/buildtree/BuildTreeLifecycleController +instanceKlass org/gradle/internal/buildtree/BuildTreeModelController +instanceKlass org/gradle/internal/buildtree/DefaultBuildTreeModelCreator +instanceKlass org/gradle/internal/buildtree/BuildTreeModelCreator +instanceKlass org/gradle/internal/buildtree/DefaultBuildTreeWorkPreparer +instanceKlass org/gradle/internal/buildtree/BuildTreeWorkPreparer +instanceKlass org/gradle/internal/buildtree/DefaultBuildTreeFinishExecutor +instanceKlass org/gradle/internal/buildtree/DefaultBuildTreeWorkExecutor +instanceKlass org/gradle/internal/buildtree/BuildOperationFiringBuildTreeWorkExecutor +instanceKlass org/gradle/execution/SelectedTaskExecutionAction +instanceKlass org/gradle/execution/DryRunBuildExecutionAction +instanceKlass org/gradle/execution/BuildOperationFiringBuildWorkerExecutor +instanceKlass org/gradle/internal/build/DefaultBuildWorkPreparer +instanceKlass org/gradle/internal/taskgraph/CalculateTaskGraphBuildOperationType$TaskIdentity +instanceKlass org/gradle/internal/build/BuildOperationFiringBuildWorkPreparer +instanceKlass org/gradle/execution/plan/DefaultNodeValidator +instanceKlass org/gradle/execution/plan/ExecutionPlan +instanceKlass org/gradle/internal/snapshot/EmptyChildMap +instanceKlass org/gradle/internal/collect/PersistentList +instanceKlass org/gradle/internal/snapshot/ChildMap$StoreHandler +instanceKlass org/gradle/internal/snapshot/ChildMap$NodeHandler +instanceKlass org/gradle/execution/plan/ValuedVfsHierarchy +instanceKlass org/gradle/execution/plan/ExecutionNodeAccessHierarchy$AbstractNodeAccessVisitor +instanceKlass org/gradle/execution/plan/ValuedVfsHierarchy$ValueVisitor +instanceKlass org/gradle/execution/plan/ExecutionNodeAccessHierarchy +instanceKlass org/gradle/internal/graph/CachingDirectedGraphWalker$GraphWithEmptyEdges +instanceKlass org/gradle/api/internal/tasks/CachingTaskDependencyResolveContext$TaskGraphImpl +instanceKlass org/gradle/internal/graph/DirectedGraphWithEdgeValues +instanceKlass org/gradle/internal/graph/CachingDirectedGraphWalker +instanceKlass org/gradle/internal/graph/DirectedGraph +instanceKlass org/gradle/api/internal/tasks/AbstractTaskDependencyResolveContext +instanceKlass org/gradle/api/internal/tasks/TaskDependencyResolveContext +instanceKlass org/gradle/execution/plan/TaskNodeFactory$DefaultTypeOriginInspectorFactory +instanceKlass org/gradle/initialization/internal/InternalBuildFinishedListener +instanceKlass org/gradle/BuildResult +instanceKlass org/gradle/internal/build/DefaultBuildLifecycleController +instanceKlass org/gradle/internal/work/DefaultSynchronizer +instanceKlass org/gradle/internal/model/StateTransitionController$CurrentState +instanceKlass org/gradle/internal/model/StateTransitionController +instanceKlass org/gradle/internal/Describables$AbstractDescribable +instanceKlass org/gradle/internal/Describables +instanceKlass org/gradle/api/internal/artifacts/DefaultBuildIdentifier +instanceKlass org/gradle/internal/model/StateTransitionController$State +instanceKlass org/gradle/initialization/VintageBuildModelController +instanceKlass org/gradle/initialization/DefaultTaskExecutionPreparer +instanceKlass org/gradle/execution/BuildExecutionContext +instanceKlass org/gradle/execution/DefaultBuildConfigurationActionExecuter +instanceKlass org/gradle/execution/TaskNameResolvingBuildConfigurationAction +instanceKlass org/gradle/execution/DefaultTasksBuildExecutionAction +instanceKlass org/gradle/execution/BuildConfigurationAction +instanceKlass org/gradle/execution/commandline/CommandLineTaskConfigurer +instanceKlass org/gradle/api/internal/tasks/options/OptionValueNotationParserFactory +instanceKlass org/gradle/initialization/DefaultSettingsPreparer +instanceKlass org/gradle/initialization/BuildOperationFiringSettingsPreparer$1 +instanceKlass org/gradle/initialization/LoadBuildBuildOperationType$Result +instanceKlass org/gradle/initialization/BuildOperationFiringSettingsPreparer +instanceKlass org/gradle/internal/id/LongIdGenerator +instanceKlass org/gradle/configuration/DefaultInitScriptProcessor +instanceKlass org/gradle/api/internal/project/ProjectState +instanceKlass org/gradle/internal/model/ModelContainer +instanceKlass org/gradle/initialization/SettingsFactory +instanceKlass org/gradle/initialization/ScriptEvaluatingSettingsProcessor +instanceKlass org/gradle/initialization/SettingsEvaluatedCallbackFiringSettingsProcessor +instanceKlass org/gradle/initialization/RootBuildCacheControllerSettingsProcessor +instanceKlass org/gradle/initialization/BuildOperationSettingsProcessor$1 +instanceKlass org/gradle/initialization/EvaluateSettingsBuildOperationType$Result +instanceKlass org/gradle/initialization/BuildOperationSettingsProcessor +instanceKlass org/gradle/internal/resource/TextResource +instanceKlass org/gradle/internal/resource/DefaultTextFileResourceLoader +instanceKlass org/gradle/api/internal/artifacts/dsl/dependencies/UnknownProjectFinder +instanceKlass org/gradle/api/internal/initialization/ScriptHandlerInternal +instanceKlass org/gradle/api/initialization/dsl/ScriptHandler +instanceKlass org/gradle/api/internal/initialization/DefaultScriptHandlerFactory +instanceKlass org/gradle/api/internal/initialization/DefaultScriptClassPathResolver +instanceKlass org/gradle/configuration/ScriptPluginFactorySelector$1 +instanceKlass org/gradle/configuration/ScriptPluginFactorySelector$ProviderInstantiator +instanceKlass org/gradle/configuration/ScriptPluginFactorySelector +instanceKlass org/gradle/groovy/scripts/internal/CompileOperation +instanceKlass org/gradle/groovy/scripts/Transformer +instanceKlass org/gradle/groovy/scripts/internal/StatementTransformer +instanceKlass org/gradle/configuration/project/DefaultCompileOperationFactory +instanceKlass org/gradle/cache/internal/DefaultCrossBuildInMemoryCacheFactory$DefaultClassMap$$Lambda$145 +instanceKlass org/gradle/plugin/management/internal/DefaultPluginResolutionStrategy +instanceKlass org/gradle/plugin/internal/PluginUsePluginServiceRegistry$BuildScopeServices$1 +instanceKlass org/gradle/api/artifacts/dsl/RepositoryHandler +instanceKlass org/gradle/api/artifacts/ArtifactRepositoryContainer +instanceKlass org/gradle/api/NamedDomainObjectList +instanceKlass org/gradle/plugin/use/resolve/internal/PluginArtifactRepositories +instanceKlass org/gradle/api/internal/artifacts/Module +instanceKlass org/gradle/internal/service/scopes/BuildScopeServices$DependencyMetaDataProviderImpl +instanceKlass org/gradle/api/internal/artifacts/DefaultDependencyManagementServices +instanceKlass org/gradle/api/internal/file/AbstractFileResolver$2 +instanceKlass org/apache/commons/io/FilenameUtils +instanceKlass org/gradle/internal/typeconversion/NotationConverterToNotationParserAdapter$ResultImpl +instanceKlass org/gradle/util/internal/DeferredUtil +instanceKlass org/gradle/plugin/use/resolve/service/internal/ClientInjectedClasspathPluginResolver$$Lambda$144 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/api/internal/plugins/PluginImplementation +instanceKlass org/gradle/api/internal/plugins/DefaultPluginRegistry +instanceKlass org/gradle/api/internal/plugins/PotentialPlugin +instanceKlass org/gradle/model/internal/inspect/ModelRuleSourceDetector$1 +instanceKlass com/google/common/collect/MapMakerInternalMap$StrongKeyWeakValueEntry$Helper +instanceKlass org/gradle/api/internal/initialization/ClassLoaderScopeIdentifier +instanceKlass org/gradle/api/internal/initialization/AbstractClassLoaderScope +instanceKlass org/gradle/api/internal/initialization/loadercache/ClassLoaderId +instanceKlass org/gradle/initialization/ClassLoaderScopeId +instanceKlass org/gradle/initialization/DefaultClassLoaderScopeRegistry +instanceKlass org/gradle/api/internal/initialization/loadercache/DefaultClassLoaderCache$ClassLoaderSpec +instanceKlass org/gradle/api/internal/initialization/loadercache/DefaultClassLoaderCache +instanceKlass org/gradle/composite/internal/plugins/CompositeBuildPluginResolverContributor$CompositeBuildPluginResolver +instanceKlass org/gradle/composite/internal/plugins/CompositeBuildPluginResolverContributor +instanceKlass org/gradle/plugin/management/internal/autoapply/DefaultAutoAppliedPluginHandler +instanceKlass org/gradle/plugin/management/internal/SingletonPluginRequests +instanceKlass java/util/DualPivotQuicksort +instanceKlass org/gradle/plugin/use/internal/DefaultPluginId +instanceKlass org/gradle/plugin/use/PluginId +instanceKlass org/gradle/plugin/management/internal/autoapply/AutoAppliedGradleEnterprisePlugin +instanceKlass org/gradle/plugin/management/internal/DefaultPluginRequest +instanceKlass org/gradle/api/internal/artifacts/DefaultModuleVersionSelector +instanceKlass org/gradle/api/artifacts/ModuleVersionSelector +instanceKlass org/gradle/api/internal/artifacts/DefaultModuleIdentifier +instanceKlass org/gradle/plugin/management/internal/PluginRequestInternal +instanceKlass org/gradle/plugin/management/PluginRequest +instanceKlass org/gradle/plugin/management/internal/autoapply/DefaultAutoAppliedPluginRegistry +instanceKlass org/gradle/workers/internal/DefaultWorkResult +instanceKlass org/gradle/api/tasks/WorkResult +instanceKlass org/gradle/internal/work/ConditionalExecutionQueue +instanceKlass org/gradle/groovy/scripts/internal/BuildScopeInMemoryCachingScriptClassCompiler +instanceKlass org/gradle/groovy/scripts/ScriptCompiler +instanceKlass org/gradle/groovy/scripts/DefaultScriptCompilerFactory +instanceKlass org/gradle/groovy/scripts/ScriptRunner +instanceKlass org/gradle/groovy/scripts/internal/DefaultScriptRunnerFactory +instanceKlass org/gradle/groovy/scripts/internal/BuildOperationBackedScriptCompilationHandler$1 +instanceKlass org/gradle/internal/scripts/CompileScriptBuildOperationType$Result +instanceKlass org/gradle/groovy/scripts/internal/BuildOperationBackedScriptCompilationHandler +instanceKlass org/gradle/groovy/scripts/ScriptSource +instanceKlass org/gradle/groovy/scripts/internal/DefaultScriptCompilationHandler$NoOpGroovyResourceLoader +instanceKlass groovy/lang/GroovyResourceLoader +instanceKlass org/gradle/groovy/scripts/internal/CompiledScript +instanceKlass com/google/common/base/AbstractIterator$1 +instanceKlass com/google/common/base/AbstractIterator +instanceKlass com/google/common/base/Splitter$1 +instanceKlass com/google/common/base/CharMatcher +instanceKlass com/google/common/base/Splitter$Strategy +instanceKlass com/google/common/base/Splitter +instanceKlass org/gradle/configuration/DefaultImportsReader$2 +instanceKlass com/google/common/io/Java8Compatibility +instanceKlass com/google/common/io/LineBuffer +instanceKlass com/google/common/io/LineReader +instanceKlass com/google/common/io/CharStreams +instanceKlass org/gradle/configuration/DefaultImportsReader$1 +instanceKlass com/google/common/io/Resources +instanceKlass org/gradle/configuration/DefaultImportsReader +instanceKlass org/gradle/configuration/ScriptPlugin +instanceKlass org/gradle/api/Plugin +instanceKlass org/gradle/configuration/internal/DefaultUserCodeApplicationContext +instanceKlass org/gradle/composite/internal/CompositeBuildClassPathInitializer +instanceKlass org/gradle/api/tasks/TaskContainer +instanceKlass org/gradle/api/PolymorphicDomainObjectContainer +instanceKlass org/gradle/api/tasks/TaskCollection +instanceKlass org/gradle/execution/TaskSelectionResult +instanceKlass org/gradle/execution/TaskNameResolver +instanceKlass org/gradle/execution/ExcludedTaskFilteringProjectsPreparer +instanceKlass org/gradle/execution/DefaultTaskSchedulingPreparer +instanceKlass org/gradle/initialization/TaskSchedulingPreparer +instanceKlass org/gradle/configuration/DefaultProjectsPreparer +instanceKlass org/gradle/configuration/BuildTreePreparingProjectsPreparer +instanceKlass org/gradle/configuration/BuildOperationFiringProjectsPreparer$1 +instanceKlass org/gradle/initialization/ConfigureBuildBuildOperationType$Result +instanceKlass org/gradle/configuration/BuildOperationFiringProjectsPreparer +instanceKlass org/gradle/initialization/ModelConfigurationListener +instanceKlass org/gradle/internal/resource/local/FileResourceListener +instanceKlass org/gradle/initialization/InstantiatingBuildLoader +instanceKlass org/gradle/initialization/ProjectPropertySettingBuildLoader +instanceKlass org/gradle/initialization/NotifyingBuildLoader$$Lambda$143 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/initialization/NotifyingBuildLoader$1 +instanceKlass org/gradle/initialization/NotifyProjectsLoadedBuildOperationType$Result +instanceKlass org/gradle/initialization/LoadProjectsBuildOperationType$Result$Project +instanceKlass org/gradle/initialization/NotifyingBuildLoader +instanceKlass org/gradle/initialization/DefaultGradlePropertiesController$SharedGradleProperties +instanceKlass org/gradle/initialization/DefaultGradlePropertiesController$NotLoaded +instanceKlass org/gradle/initialization/DefaultGradlePropertiesController$State +instanceKlass org/gradle/initialization/DefaultGradlePropertiesController +instanceKlass org/gradle/initialization/DefaultGradlePropertiesLoader +instanceKlass kotlin/UNINITIALIZED_VALUE +instanceKlass kotlin/SafePublicationLazyImpl$Companion +instanceKlass kotlin/SafePublicationLazyImpl +instanceKlass kotlin/Lazy +instanceKlass kotlin/LazyKt$WhenMappings +instanceKlass kotlin/LazyKt__LazyJVMKt +instanceKlass kotlin/reflect/jvm/internal/pcollections/MapEntry +instanceKlass kotlin/reflect/jvm/internal/ReflectProperties$Val$1 +instanceKlass kotlin/reflect/jvm/internal/ReflectProperties$Val +instanceKlass kotlin/reflect/jvm/internal/ReflectProperties +instanceKlass kotlin/jvm/internal/Lambda +instanceKlass kotlin/text/Regex$Companion +instanceKlass kotlin/text/Regex +instanceKlass kotlin/jvm/internal/DefaultConstructorMarker +instanceKlass kotlin/reflect/jvm/internal/KDeclarationContainerImpl$Companion +instanceKlass kotlin/reflect/jvm/internal/KClassifierImpl +instanceKlass kotlin/reflect/jvm/internal/pcollections/ConsPStack +instanceKlass kotlin/reflect/jvm/internal/pcollections/IntTree +instanceKlass kotlin/reflect/jvm/internal/pcollections/IntTreePMap +instanceKlass kotlin/reflect/jvm/internal/pcollections/HashPMap +instanceKlass kotlin/reflect/jvm/internal/KClassCacheKt +instanceKlass kotlin/reflect/jvm/internal/KPropertyImpl$Companion +instanceKlass kotlin/reflect/jvm/internal/KCallableImpl +instanceKlass kotlin/reflect/jvm/internal/KTypeParameterOwnerImpl +instanceKlass kotlin/reflect/jvm/internal/KDeclarationContainerImpl +instanceKlass kotlin/jvm/internal/ClassBasedDeclarationContainer +instanceKlass kotlin/reflect/KTypeParameter +instanceKlass kotlin/reflect/KMutableProperty2 +instanceKlass kotlin/reflect/KMutableProperty0 +instanceKlass kotlin/reflect/KType +instanceKlass kotlin/reflect/KProperty2 +instanceKlass kotlin/reflect/KMutableProperty1 +instanceKlass kotlin/reflect/KMutableProperty +instanceKlass kotlin/reflect/KProperty1 +instanceKlass kotlin/jvm/functions/Function1 +instanceKlass kotlin/jvm/internal/FunctionBase +instanceKlass kotlin/reflect/KClass +instanceKlass kotlin/jvm/internal/ReflectionFactory +instanceKlass kotlin/reflect/KClassifier +instanceKlass kotlin/jvm/internal/Reflection +instanceKlass kotlin/jvm/internal/CallableReference$NoReceiver +instanceKlass kotlin/reflect/KProperty$Getter +instanceKlass kotlin/reflect/KFunction +instanceKlass kotlin/reflect/KProperty$Accessor +instanceKlass kotlin/reflect/KDeclarationContainer +instanceKlass kotlin/jvm/internal/CallableReference +instanceKlass kotlin/reflect/KProperty0 +instanceKlass kotlin/jvm/functions/Function0 +instanceKlass kotlin/reflect/KProperty +instanceKlass kotlin/reflect/KCallable +instanceKlass kotlin/reflect/KAnnotatedElement +instanceKlass org/gradle/kotlin/dsl/tooling/builders/BuildSrcClassPathModeConfigurationAction +instanceKlass org/gradle/initialization/buildsrc/GroovyBuildSrcProjectConfigurationAction +instanceKlass org/gradle/configuration/project/PluginsProjectConfigureActions +instanceKlass org/gradle/api/internal/InternalAction +instanceKlass org/gradle/configuration/project/ProjectConfigureAction +instanceKlass org/gradle/initialization/buildsrc/BuildSrcProjectConfigurationAction +instanceKlass org/gradle/initialization/buildsrc/BuildSrcBuildListenerFactory +instanceKlass org/gradle/initialization/buildsrc/BuildSourceBuilder$1 +instanceKlass org/gradle/initialization/buildsrc/BuildBuildSrcBuildOperationType$Result +instanceKlass org/gradle/util/internal/GUtil$1 +instanceKlass org/gradle/internal/build/DefaultPublicBuildPath +instanceKlass org/gradle/api/internal/AbstractMutationGuard +instanceKlass org/gradle/internal/operations/RunnableBuildOperation +instanceKlass org/gradle/api/internal/project/BuildOperationCrossProjectConfigurator +instanceKlass org/gradle/api/internal/WithMutationGuard +instanceKlass org/gradle/internal/concurrent/CompositeStoppable$2 +instanceKlass org/gradle/configurationcache/serialization/beans/BeanStateWriterLookup +instanceKlass org/gradle/configurationcache/serialization/beans/BeanStateReaderLookup +instanceKlass org/gradle/configurationcache/ConfigurationCacheClassLoaderScopeRegistryListener +instanceKlass org/gradle/configurationcache/serialization/ScopeLookup +instanceKlass org/gradle/initialization/ClassLoaderScopeRegistryListener +instanceKlass org/gradle/configurationcache/problems/ConfigurationCacheProblems +instanceKlass org/gradle/configurationcache/ConfigurationCacheIO +instanceKlass org/gradle/configurationcache/ConfigurationCacheHost +instanceKlass org/gradle/configurationcache/DefaultConfigurationCache$Host +instanceKlass org/gradle/cache/internal/FileContentCacheFactory$Calculator +instanceKlass org/gradle/language/nativeplatform/internal/incremental/sourceparser/CachingCSourceParser +instanceKlass org/gradle/language/nativeplatform/internal/incremental/sourceparser/CSourceParser +instanceKlass org/gradle/language/nativeplatform/internal/incremental/DefaultCompilationStateCacheFactory +instanceKlass org/gradle/language/nativeplatform/internal/incremental/CompilationStateCacheFactory +instanceKlass org/gradle/internal/scan/config/BuildScanConfig +instanceKlass org/gradle/internal/scan/config/BuildScanConfig$Attributes +instanceKlass org/gradle/internal/enterprise/impl/legacy/LegacyGradleEnterprisePluginCheckInService +instanceKlass org/gradle/internal/scan/eob/BuildScanEndOfBuildNotifier +instanceKlass org/gradle/internal/scan/config/BuildScanConfigProvider +instanceKlass org/gradle/internal/enterprise/impl/legacy/DefaultBuildScanScopeIds +instanceKlass org/gradle/internal/scan/scopeids/BuildScanScopeIds +instanceKlass org/gradle/internal/enterprise/GradleEnterprisePluginCheckInResult +instanceKlass org/gradle/internal/enterprise/impl/DefautGradleEnterprisePluginCheckInService +instanceKlass org/gradle/internal/enterprise/GradleEnterprisePluginCheckInService +instanceKlass org/gradle/internal/enterprise/impl/DefaultGradleEnterprisePluginConfig +instanceKlass org/gradle/internal/enterprise/impl/DefaultGradleEnterprisePluginBuildState +instanceKlass org/gradle/internal/enterprise/impl/DefaultGradleEnterprisePluginServiceRef +instanceKlass org/gradle/internal/enterprise/GradleEnterprisePluginBuildState +instanceKlass org/gradle/internal/enterprise/GradleEnterprisePluginConfig +instanceKlass org/gradle/internal/enterprise/GradleEnterprisePluginServiceRef +instanceKlass org/gradle/internal/enterprise/GradleEnterprisePluginEndOfBuildListener$BuildResult +instanceKlass org/gradle/internal/enterprise/impl/DefaultGradleEnterprisePluginAdapter +instanceKlass org/gradle/internal/enterprise/core/GradleEnterprisePluginAdapter +instanceKlass org/gradle/initialization/DefaultJdkToolsInitializer +instanceKlass org/gradle/api/internal/tasks/compile/incremental/classpath/CachingClassSetAnalyzer +instanceKlass org/gradle/api/internal/tasks/compile/incremental/IncrementalCompilerFactory +instanceKlass org/gradle/api/internal/tasks/compile/incremental/analyzer/CachingClassDependenciesAnalyzer +instanceKlass org/gradle/api/internal/tasks/compile/incremental/classpath/ClassSetAnalyzer +instanceKlass org/gradle/api/internal/tasks/compile/incremental/analyzer/ClassDependenciesAnalyzer +instanceKlass org/gradle/api/internal/tasks/CompileServices$GradleScopeCompileServices +instanceKlass org/gradle/language/java/artifact/JavadocArtifact +instanceKlass org/gradle/language/java/internal/JavaLanguagePluginServiceRegistry$JavaGradleScopeServices +instanceKlass org/gradle/api/internal/artifacts/DependencyServices$DependencyManagementGradleServices +instanceKlass org/gradle/kotlin/dsl/accessors/PluginAccessorClassPathGenerator +instanceKlass org/gradle/kotlin/dsl/accessors/ProjectAccessorsClassPathGenerator +instanceKlass org/gradle/kotlin/dsl/accessors/GradleScopeServices +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/internal/execution/history/OutputsCleaner +instanceKlass org/gradle/internal/execution/OutputChangeListener +instanceKlass org/gradle/internal/execution/history/OutputFilesRepository +instanceKlass org/gradle/internal/service/scopes/ExecutionGradleServices +instanceKlass org/gradle/caching/internal/controller/BuildCacheController +instanceKlass org/gradle/caching/internal/origin/OriginMetadataFactory +instanceKlass org/gradle/caching/internal/packaging/BuildCacheEntryPacker +instanceKlass org/gradle/caching/internal/packaging/impl/FilePermissionAccess +instanceKlass org/gradle/caching/internal/controller/BuildCacheCommandFactory +instanceKlass org/gradle/caching/internal/packaging/impl/TarPackerFileSystemSupport +instanceKlass org/gradle/caching/internal/BuildCacheServices$3 +instanceKlass org/gradle/internal/service/scopes/GradleScopeServices$$Lambda$142 +instanceKlass org/gradle/api/execution/TaskExecutionGraphListener +instanceKlass org/gradle/api/execution/TaskExecutionListener +instanceKlass org/gradle/execution/plan/WorkNodeExecutor +instanceKlass org/gradle/execution/plan/PlanExecutor +instanceKlass org/gradle/execution/commandline/CommandLineTaskParser +instanceKlass org/gradle/api/internal/tasks/options/OptionReader +instanceKlass org/gradle/execution/plan/LocalTaskNodeExecutor +instanceKlass org/gradle/execution/plan/NodeExecutor +instanceKlass org/gradle/api/services/internal/BuildServiceRegistryInternal +instanceKlass org/gradle/execution/BuildConfigurationActionExecuter +instanceKlass org/gradle/initialization/TaskExecutionPreparer +instanceKlass org/gradle/internal/execution/BuildOutputCleanupRegistry +instanceKlass org/gradle/execution/BuildWorkExecutor +instanceKlass org/gradle/internal/ImmutableActionSet +instanceKlass org/gradle/internal/instantiation/generator/AsmBackedClassGenerator$ObjectCreationDetails +instanceKlass com/google/common/collect/Ordering +instanceKlass org/gradle/internal/instantiation/generator/ConstructorComparator +instanceKlass org/gradle/internal/instantiation/generator/AsmBackedClassGenerator$InvokeConstructorStrategy +instanceKlass org/gradle/internal/instantiation/generator/AbstractClassGenerator$GeneratedClassImpl$GeneratedConstructorImpl +instanceKlass org/gradle/internal/instantiation/generator/ClassGenerator$GeneratedConstructor +instanceKlass org/gradle/internal/instantiation/generator/ClassGenerator$SerializationConstructor +instanceKlass java/lang/invoke/MethodHandles$Lookup$$Lambda$141 +instanceKlass jdk/internal/org/objectweb/asm/ClassReader +instanceKlass org/objectweb/asm/Handler +instanceKlass org/objectweb/asm/Attribute +instanceKlass org/gradle/internal/instantiation/generator/AsmBackedClassGenerator$ClassBuilderImpl$ReturnTypeEntry +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass org/gradle/internal/instantiation/generator/AsmBackedClassGenerator$ClassBuilderImpl$$Lambda$140 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/internal/instantiation/generator/AsmBackedClassGenerator$ClassBuilderImpl$$Lambda$139 +instanceKlass com/google/common/collect/LinkedHashMultimap$ValueSet$1 +instanceKlass com/google/common/collect/AbstractMapBasedMultimap$WrappedCollection$WrappedIterator +instanceKlass org/gradle/internal/instantiation/generator/AsmBackedClassGenerator$ClassBuilderImpl$$Lambda$138 +instanceKlass org/gradle/internal/instantiation/generator/AsmBackedClassGenerator$ClassBuilderImpl$$Lambda$137 +instanceKlass org/gradle/internal/instantiation/generator/AsmBackedClassGenerator$ClassBuilderImpl$$Lambda$136 +instanceKlass org/gradle/internal/instantiation/generator/AsmBackedClassGenerator$ClassBuilderImpl$$Lambda$135 +instanceKlass org/gradle/internal/instantiation/generator/AsmBackedClassGenerator$ClassBuilderImpl$$Lambda$134 +instanceKlass org/gradle/internal/instantiation/generator/AsmBackedClassGenerator$ClassBuilderImpl$$Lambda$133 +instanceKlass org/gradle/internal/instantiation/generator/AsmBackedClassGenerator$ClassBuilderImpl$$Lambda$132 +instanceKlass org/gradle/internal/reflect/JavaReflectionUtil +instanceKlass org/gradle/model/internal/asm/AsmClassGeneratorUtils +instanceKlass org/gradle/internal/instantiation/generator/AsmBackedClassGenerator$ClassBuilderImpl$$Lambda$131 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/internal/instantiation/generator/AsmBackedClassGenerator$ClassBuilderImpl$$Lambda$130 +instanceKlass org/gradle/internal/instantiation/generator/AsmBackedClassGenerator$ClassBuilderImpl$$Lambda$129 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/internal/instantiation/generator/AsmBackedClassGenerator$MethodCodeBody +instanceKlass org/objectweb/asm/Edge +instanceKlass org/objectweb/asm/Label +instanceKlass org/objectweb/asm/Frame +instanceKlass org/objectweb/asm/ByteVector +instanceKlass org/objectweb/asm/Symbol +instanceKlass org/objectweb/asm/SymbolTable +instanceKlass org/objectweb/asm/MethodVisitor +instanceKlass org/objectweb/asm/FieldVisitor +instanceKlass org/objectweb/asm/ModuleVisitor +instanceKlass org/objectweb/asm/AnnotationVisitor +instanceKlass org/objectweb/asm/RecordComponentVisitor +instanceKlass org/gradle/model/internal/asm/AsmClassGenerator +instanceKlass org/gradle/internal/DisplayName +instanceKlass org/gradle/internal/instantiation/generator/ManagedObjectFactory +instanceKlass org/gradle/util/internal/ConfigureUtil +instanceKlass org/gradle/internal/metaobject/AbstractDynamicObject +instanceKlass org/gradle/api/plugins/Convention +instanceKlass org/gradle/api/plugins/ExtensionContainer +instanceKlass org/gradle/internal/metaobject/DynamicObject +instanceKlass org/gradle/internal/metaobject/PropertyAccess +instanceKlass org/gradle/internal/metaobject/MethodAccess +instanceKlass org/gradle/internal/extensibility/ConventionAwareHelper +instanceKlass org/gradle/api/internal/HasConvention +instanceKlass org/gradle/api/internal/IConventionAware +instanceKlass org/gradle/api/internal/GeneratedSubclass +instanceKlass org/gradle/api/internal/ConventionMapping +instanceKlass org/gradle/internal/instantiation/generator/AsmBackedClassGenerator$ClassBuilderImpl +instanceKlass javax/annotation/Nullable +instanceKlass java/lang/module/ModuleDescriptor$Builder$$Lambda$128 +instanceKlass jdk/internal/module/Checks +instanceKlass java/lang/module/ModuleDescriptor$Builder +instanceKlass java/lang/reflect/Proxy$ProxyBuilder$$Lambda$127 +instanceKlass jdk/internal/HotSpotIntrinsicCandidate +instanceKlass java/lang/Deprecated +instanceKlass org/gradle/api/internal/DynamicObjectAware +instanceKlass org/gradle/internal/extensibility/NoConventionMapping +instanceKlass sun/reflect/annotation/AnnotationParser$$Lambda$126 +instanceKlass sun/reflect/generics/tree/Wildcard +instanceKlass sun/reflect/generics/tree/BottomSignature +instanceKlass org/gradle/internal/instantiation/generator/AbstractClassGenerator$MethodMetadata +instanceKlass org/gradle/internal/reflect/PropertyAccessor +instanceKlass org/gradle/internal/reflect/PropertyMutator +instanceKlass org/gradle/internal/reflect/JavaPropertyReflectionUtil +instanceKlass org/gradle/internal/instantiation/generator/AbstractClassGenerator$PropertyMetadata +instanceKlass org/gradle/internal/instantiation/generator/AbstractClassGenerator$ClassMetadata +instanceKlass org/gradle/configuration/ConfigurationTargetIdentifier +instanceKlass org/gradle/api/plugins/PluginContainer +instanceKlass org/gradle/api/plugins/PluginCollection +instanceKlass org/gradle/internal/reflect/MutablePropertyDetails +instanceKlass java/beans/Introspector$1 +instanceKlass jdk/internal/access/JavaBeansAccess +instanceKlass java/beans/FeatureDescriptor +instanceKlass java/beans/Introspector +instanceKlass org/gradle/internal/reflect/MethodSet$MethodKey +instanceKlass org/gradle/api/internal/plugins/DefaultObjectConfigurationAction +instanceKlass org/gradle/api/plugins/ObjectConfigurationAction +instanceKlass org/gradle/api/internal/plugins/PluginManagerInternal +instanceKlass org/gradle/execution/taskgraph/TaskExecutionGraphInternal +instanceKlass org/gradle/api/services/BuildServiceRegistry +instanceKlass org/gradle/api/internal/SettingsInternal +instanceKlass org/gradle/api/initialization/Settings +instanceKlass org/gradle/api/internal/initialization/ClassLoaderScope +instanceKlass org/gradle/util/Path +instanceKlass groovy/lang/GroovyObjectSupport +instanceKlass groovy/lang/GroovyCallable +instanceKlass org/gradle/internal/MutableActionSet +instanceKlass org/gradle/api/execution/TaskExecutionGraph +instanceKlass org/gradle/api/plugins/PluginManager +instanceKlass org/gradle/internal/reflect/PropertyDetails +instanceKlass org/gradle/internal/reflect/MutableClassDetails +instanceKlass org/gradle/internal/reflect/ClassDetails +instanceKlass org/gradle/internal/reflect/ClassInspector +instanceKlass org/gradle/internal/instantiation/generator/AbstractClassGenerator$ClassGenerationVisitor +instanceKlass org/gradle/internal/instantiation/generator/AsmBackedClassGenerator$ClassInspectionVisitorImpl +instanceKlass org/gradle/internal/instantiation/generator/AbstractClassGenerator$InjectionAnnotationValidator +instanceKlass org/gradle/internal/instantiation/generator/AbstractClassGenerator$DisabledAnnotationValidator +instanceKlass org/gradle/internal/instantiation/generator/AbstractClassGenerator$ClassValidator +instanceKlass com/google/common/collect/LinkedHashMultimap$ValueSetLink +instanceKlass org/gradle/internal/reflect/MethodSet +instanceKlass org/gradle/internal/instantiation/generator/AbstractClassGenerator$ClassGenerationHandler +instanceKlass org/gradle/api/internal/project/AbstractPluginAware +instanceKlass org/gradle/internal/build/DefaultBuildLifecycleControllerFactory$1 +instanceKlass org/gradle/internal/featurelifecycle/ScriptUsageLocationReporter +instanceKlass org/gradle/configurationcache/DeprecatedFeaturesListenerManagerAction$DeprecatedFeaturesListener +instanceKlass org/gradle/profile/BuildProfileServices$1$1 +instanceKlass org/gradle/api/HasImplicitReceiver +instanceKlass org/gradle/api/NonExtensible +instanceKlass org/gradle/internal/build/AbstractBuildState$$Lambda$125 +instanceKlass org/gradle/internal/build/AbstractBuildState$$Lambda$124 +instanceKlass org/gradle/internal/build/AbstractBuildState$$Lambda$123 +instanceKlass org/gradle/internal/lazy/Lazy$$Lambda$122 +instanceKlass org/gradle/internal/lazy/Lazy$Factory +instanceKlass org/gradle/internal/lazy/LockingLazy +instanceKlass org/gradle/internal/lazy/Lazy +instanceKlass org/gradle/configurationcache/RelevantProjectsRegistry +instanceKlass org/gradle/profile/ProfileEventAdapter +instanceKlass org/gradle/api/internal/artifacts/transform/ArtifactTransformListener +instanceKlass org/gradle/initialization/BuildCompletionListener +instanceKlass org/gradle/api/artifacts/DependencyResolutionListener +instanceKlass org/gradle/execution/taskgraph/TaskListenerInternal +instanceKlass org/gradle/api/ProjectEvaluationListener +instanceKlass org/gradle/profile/ProfileListener +instanceKlass org/gradle/profile/BuildProfileServices$1 +instanceKlass org/gradle/vcs/internal/resolver/VcsDependencyResolver +instanceKlass org/gradle/vcs/internal/resolver/VcsVersionWorkingDirResolver +instanceKlass org/gradle/vcs/internal/services/VersionControlServices$VersionControlBuildServices +instanceKlass org/gradle/tooling/provider/model/ToolingModelBuilder +instanceKlass org/gradle/language/cpp/internal/tooling/ToolingNativeServices$ToolingModelRegistration +instanceKlass org/gradle/authentication/aws/AwsImAuthentication +instanceKlass org/gradle/internal/resource/transport/aws/s3/S3ResourcesPluginServiceRegistry$AuthenticationSchemeAction +instanceKlass org/gradle/nativeplatform/toolchain/internal/metadata/CompilerMetaDataProvider +instanceKlass org/gradle/nativeplatform/toolchain/internal/metadata/CompilerMetaDataProviderFactory +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/nativeplatform/internal/resolve/LibraryBinaryLocator +instanceKlass org/gradle/nativeplatform/internal/resolve/NativeDependencyResolver +instanceKlass org/gradle/nativeplatform/internal/resolve/NativeDependencyResolverServices +instanceKlass org/gradle/language/cpp/internal/NativeDependencyCache +instanceKlass org/gradle/ide/xcode/internal/xcodeproj/GidGenerator +instanceKlass org/gradle/ide/xcode/internal/services/XcodeServices$GlobalIdGeneratorServices +instanceKlass org/gradle/plugins/ide/internal/configurer/UniqueProjectNameProvider +instanceKlass org/gradle/plugins/ide/internal/tooling/ToolingModelServices$BuildScopeToolingServices +instanceKlass org/gradle/plugin/use/resolve/internal/PluginResolverContributor +instanceKlass org/gradle/composite/internal/CompositeBuildServices$CompositeBuildBuildScopeServices +instanceKlass org/gradle/caching/http/internal/HttpBuildCacheServiceServices$$Lambda$121 +instanceKlass org/apache/http/HttpRequest +instanceKlass org/apache/http/HttpMessage +instanceKlass org/gradle/caching/http/internal/HttpBuildCacheRequestCustomizer +instanceKlass org/gradle/caching/http/internal/DefaultHttpBuildCacheServiceFactory +instanceKlass org/gradle/caching/BuildCacheServiceFactory +instanceKlass org/gradle/caching/configuration/AbstractBuildCache +instanceKlass org/gradle/caching/configuration/BuildCache +instanceKlass org/gradle/caching/configuration/internal/DefaultBuildCacheServiceRegistration +instanceKlass org/gradle/maven/MavenPomArtifact +instanceKlass org/gradle/maven/MavenModule +instanceKlass org/gradle/api/publish/maven/internal/publisher/MavenPublishers +instanceKlass org/gradle/api/publish/maven/internal/dependencies/VersionRangeMapper +instanceKlass org/gradle/api/publish/maven/internal/MavenPublishServices$ComponentRegistrationAction +instanceKlass org/gradle/api/publish/internal/validation/DuplicatePublicationTracker +instanceKlass org/gradle/api/internal/artifacts/ivyservice/projectmodule/DefaultProjectDependencyPublicationResolver +instanceKlass org/gradle/api/internal/artifacts/ivyservice/projectmodule/ProjectDependencyPublicationResolver +instanceKlass org/gradle/jvm/toolchain/internal/LocationListInstallationSupplier +instanceKlass org/gradle/jvm/toolchain/internal/EnvironmentVariableListInstallationSupplier +instanceKlass org/gradle/jvm/toolchain/internal/AutoDetectingInstallationSupplier +instanceKlass org/gradle/jvm/toolchain/internal/InstallationSupplier +instanceKlass org/gradle/jvm/toolchain/internal/JavaInstallationRegistry +instanceKlass org/gradle/jvm/toolchain/install/internal/JdkCacheDirectory +instanceKlass org/gradle/language/base/artifact/SourcesArtifact +instanceKlass org/gradle/jvm/JvmLibrary +instanceKlass org/gradle/platform/base/Library +instanceKlass org/gradle/language/jvm/internal/JvmPluginServiceRegistry$ComponentRegistrationAction +instanceKlass org/gradle/ivy/IvyDescriptorArtifact +instanceKlass org/gradle/api/component/Artifact +instanceKlass org/gradle/api/internal/component/DefaultComponentTypeRegistry$DefaultComponentTypeRegistration +instanceKlass org/gradle/ivy/IvyModule +instanceKlass org/gradle/api/component/Component +instanceKlass org/gradle/api/internal/component/ComponentTypeRegistration +instanceKlass org/gradle/api/internal/component/DefaultComponentTypeRegistry +instanceKlass org/gradle/api/publish/ivy/internal/publisher/IvyPublisher +instanceKlass org/gradle/api/publish/ivy/internal/IvyServices$BuildServices +instanceKlass org/gradle/api/internal/resolve/ProjectModelResolver +instanceKlass org/gradle/platform/base/internal/registry/ComponentModelBaseServiceRegistry$BuildScopeServices +instanceKlass org/gradle/plugin/use/tracker/internal/PluginVersionTracker +instanceKlass org/gradle/api/internal/plugins/PluginDescriptorLocator +instanceKlass org/gradle/plugin/use/resolve/internal/PluginResolutionResult +instanceKlass org/gradle/plugin/use/internal/DefaultPluginRequestApplicator +instanceKlass org/gradle/plugin/use/resolve/internal/PluginResolver +instanceKlass org/gradle/plugin/use/internal/PluginResolverFactory +instanceKlass org/gradle/plugin/management/internal/PluginResolutionStrategyInternal +instanceKlass org/gradle/plugin/management/PluginResolutionStrategy +instanceKlass org/gradle/plugin/use/internal/PluginDependencyResolutionServices +instanceKlass org/gradle/plugin/use/resolve/internal/PluginArtifactRepositoriesProvider +instanceKlass org/gradle/plugin/use/internal/PluginRepositoryHandlerProvider +instanceKlass org/gradle/plugin/management/internal/autoapply/AutoAppliedPluginRegistry +instanceKlass org/gradle/api/internal/artifacts/dsl/dependencies/ProjectFinder +instanceKlass org/gradle/plugin/use/resolve/service/internal/ClientInjectedClasspathPluginResolver +instanceKlass org/gradle/plugin/internal/PluginUsePluginServiceRegistry$BuildScopeServices +instanceKlass org/gradle/authentication/http/HttpHeaderAuthentication +instanceKlass org/gradle/authentication/http/DigestAuthentication +instanceKlass org/gradle/internal/authentication/AbstractAuthentication +instanceKlass org/gradle/internal/authentication/AuthenticationInternal +instanceKlass org/gradle/authentication/http/BasicAuthentication +instanceKlass org/gradle/authentication/Authentication +instanceKlass org/gradle/internal/authentication/DefaultAuthenticationSchemeRegistry +instanceKlass org/gradle/internal/resource/transport/http/HttpResourcesPluginServiceRegistry$AuthenticationSchemeAction +instanceKlass org/gradle/api/internal/artifacts/transform/TransformationNodeDependencyResolver +instanceKlass org/gradle/internal/component/model/ComponentResolveMetadata +instanceKlass org/gradle/api/internal/artifacts/ivyservice/projectmodule/ProjectArtifactSetResolver +instanceKlass org/gradle/api/internal/artifacts/ivyservice/projectmodule/ProjectArtifactResolver +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ResolverProviderFactory +instanceKlass org/gradle/internal/component/external/model/ModuleComponentArtifactMetadata +instanceKlass org/gradle/internal/component/model/ComponentArtifactMetadata +instanceKlass org/gradle/api/internal/artifacts/ivyservice/projectmodule/ProjectDependencyResolver +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ComponentResolvers +instanceKlass org/gradle/internal/resolve/resolver/OriginArtifactSelector +instanceKlass org/gradle/internal/resolve/resolver/ArtifactResolver +instanceKlass org/gradle/internal/resolve/resolver/DependencyToComponentIdResolver +instanceKlass org/gradle/internal/resolve/resolver/ComponentMetaDataResolver +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ResolveIvyFactory +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/strategy/VersionParser +instanceKlass org/gradle/api/internal/runtimeshaded/RuntimeShadedJarFactory +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/excludes/ModuleExclusions +instanceKlass org/gradle/internal/resource/TextUriResourceLoader$Factory +instanceKlass org/gradle/internal/resource/local/GroupedAndNamedUniqueFileStore +instanceKlass org/gradle/internal/resource/cached/AbstractCachedIndex +instanceKlass org/gradle/api/internal/filestore/DefaultArtifactIdentifierFileStore$Factory +instanceKlass org/gradle/api/internal/artifacts/DefaultProjectDependencyFactory +instanceKlass org/gradle/internal/resolve/caching/CrossBuildCachingRuleExecutor +instanceKlass org/gradle/internal/resolve/caching/CachingRuleExecutor +instanceKlass org/gradle/internal/verifier/HttpRedirectVerifier +instanceKlass org/gradle/api/internal/artifacts/repositories/transport/RepositoryTransportFactory +instanceKlass org/gradle/internal/resource/cached/DefaultExternalResourceFileStore$Factory +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/verification/DependencyVerificationOverride +instanceKlass org/gradle/internal/management/DependencyResolutionManagementInternal +instanceKlass org/gradle/api/initialization/resolve/DependencyResolutionManagement +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/ModuleRepositoryCacheProvider +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/ModuleRepositoryCaches +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/ModuleSourcesSerializer +instanceKlass org/gradle/api/internal/artifacts/repositories/metadata/IvyMutableModuleMetadataFactory +instanceKlass org/gradle/api/internal/artifacts/repositories/metadata/MavenMutableModuleMetadataFactory +instanceKlass org/gradle/api/internal/artifacts/repositories/metadata/MutableModuleMetadataFactory +instanceKlass org/gradle/internal/resource/local/LocallyAvailableResourceFinder +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/FileStoreAndIndexProvider +instanceKlass org/gradle/util/internal/SimpleMapInterner +instanceKlass org/gradle/api/internal/artifacts/ivyservice/projectmodule/ProjectPublicationRegistry +instanceKlass org/gradle/api/internal/artifacts/ComponentSelectorConverter +instanceKlass org/gradle/internal/execution/steps/DeferredExecutionAwareStep +instanceKlass org/gradle/internal/execution/steps/Step +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/strategy/VersionSelectorScheme +instanceKlass org/gradle/api/internal/artifacts/ArtifactDependencyResolver +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/RepositoryDisabler +instanceKlass org/gradle/api/internal/artifacts/mvnsettings/LocalMavenRepositoryLocator +instanceKlass org/gradle/api/internal/artifacts/mvnsettings/MavenSettingsProvider +instanceKlass org/gradle/api/internal/artifacts/mvnsettings/MavenFileLocations +instanceKlass org/gradle/api/internal/artifacts/component/ComponentIdentifierFactory +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/strategy/VersionComparator +instanceKlass org/gradle/api/internal/artifacts/verification/signatures/SignatureVerificationServiceFactory +instanceKlass org/gradle/api/internal/filestore/ArtifactIdentifierFileStore +instanceKlass org/gradle/internal/resource/cached/CachedExternalResourceIndex +instanceKlass org/gradle/initialization/DependenciesAccessors +instanceKlass org/gradle/internal/resource/TextUriResourceLoader +instanceKlass org/gradle/api/internal/artifacts/repositories/resolver/ExternalResourceAccessor +instanceKlass org/gradle/internal/resource/cached/ExternalResourceFileStore +instanceKlass org/gradle/internal/resource/local/FileStore +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/dynamicversions/AbstractModuleVersionsCache +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/dynamicversions/ModuleVersionsCache +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/AbstractModuleMetadataCache +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/ModuleMetadataCache +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/artifacts/AbstractArtifactsCache +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/artifacts/ModuleArtifactsCache +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/artifacts/ModuleArtifactCache +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/AttributeContainerSerializer +instanceKlass org/gradle/internal/resource/local/FileStoreSearcher +instanceKlass org/gradle/api/internal/artifacts/DependencyManagementBuildScopeServices +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/kotlin/dsl/provider/KotlinScriptEvaluator +instanceKlass org/gradle/internal/execution/ExecutionEngine +instanceKlass org/gradle/kotlin/dsl/provider/PluginRequestsHandler +instanceKlass org/gradle/plugin/management/internal/autoapply/AutoAppliedPluginHandler +instanceKlass org/gradle/plugin/use/internal/PluginRequestApplicator +instanceKlass kotlin/jvm/functions/Function2 +instanceKlass kotlin/Function +instanceKlass org/gradle/kotlin/dsl/provider/KotlinScriptClassPathProvider +instanceKlass org/gradle/api/internal/artifacts/dsl/dependencies/DependencyFactory +instanceKlass org/gradle/kotlin/dsl/provider/ClassPathModeExceptionCollector +instanceKlass org/gradle/kotlin/dsl/provider/BuildServices +instanceKlass org/gradle/kotlin/dsl/concurrent/AsyncIOScopeFactory +instanceKlass org/gradle/kotlin/dsl/concurrent/BuildServices +instanceKlass org/gradle/caching/configuration/internal/BuildCacheConfigurationInternal +instanceKlass org/gradle/caching/configuration/BuildCacheConfiguration +instanceKlass org/gradle/caching/local/internal/DirectoryBuildCacheFileStoreFactory +instanceKlass org/gradle/caching/configuration/internal/BuildCacheServiceRegistration +instanceKlass org/gradle/caching/internal/BuildCacheServices$2 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/projectmodule/LocalComponentRegistry +instanceKlass org/gradle/api/internal/artifacts/ivyservice/projectmodule/LocalComponentProvider +instanceKlass org/gradle/configuration/project/ProjectEvaluator +instanceKlass org/gradle/configurationcache/DefaultBuildModelControllerServices$VintageModelProvider +instanceKlass org/gradle/api/internal/project/CrossProjectModelAccess +instanceKlass org/gradle/configurationcache/DefaultBuildModelControllerServices$VintageIsolatedProjectsProvider +instanceKlass org/gradle/configurationcache/services/DefaultEnvironment +instanceKlass org/gradle/internal/build/BuildModelController +instanceKlass org/gradle/configurationcache/DefaultBuildModelControllerServices$VintageBuildControllerProvider +instanceKlass org/gradle/configurationcache/DeprecatedFeaturesListenerManagerAction +instanceKlass org/gradle/internal/service/scopes/BuildScopeListenerManagerAction +instanceKlass org/gradle/configurationcache/DefaultBuildModelControllerServices$ServicesProvider +instanceKlass org/gradle/internal/composite/DefaultBuildIncluder +instanceKlass org/gradle/internal/build/BuildWorkGraph +instanceKlass org/gradle/internal/build/ExportedTaskNode +instanceKlass org/gradle/internal/build/DefaultBuildWorkGraphController +instanceKlass org/gradle/internal/build/BuildWorkGraphController +instanceKlass org/gradle/execution/plan/WorkNodeDependencyResolver +instanceKlass org/gradle/execution/plan/TaskNodeDependencyResolver +instanceKlass org/gradle/execution/plan/DependencyResolver +instanceKlass org/gradle/api/internal/tasks/WorkDependencyResolver +instanceKlass org/gradle/internal/execution/WorkValidationContext +instanceKlass org/gradle/internal/execution/WorkValidationContext$TypeOriginInspector +instanceKlass org/gradle/initialization/layout/ResolvedBuildLayout +instanceKlass org/gradle/internal/build/BuildIncluder +instanceKlass org/gradle/initialization/SettingsLoader +instanceKlass org/gradle/initialization/DefaultSettingsLoaderFactory +instanceKlass org/gradle/api/internal/project/ProjectFactory +instanceKlass org/gradle/api/internal/project/IProjectFactory +instanceKlass org/gradle/execution/TaskPathProjectEvaluator +instanceKlass org/gradle/api/internal/file/DefaultArchiveOperations +instanceKlass org/gradle/api/file/ArchiveOperations +instanceKlass org/gradle/api/internal/file/DefaultFileSystemOperations +instanceKlass org/gradle/api/file/FileSystemOperations +instanceKlass org/gradle/api/internal/file/delete/DeleteSpecInternal +instanceKlass org/gradle/api/file/DeleteSpec +instanceKlass org/gradle/internal/resource/LocalBinaryResource +instanceKlass org/gradle/internal/resource/ReadableContent +instanceKlass org/gradle/api/resources/internal/ReadableResourceInternal +instanceKlass org/gradle/internal/resource/Resource +instanceKlass org/gradle/api/resources/ReadableResource +instanceKlass org/gradle/api/resources/Resource +instanceKlass org/gradle/api/internal/file/DefaultFileOperations +instanceKlass org/gradle/api/internal/file/FileOperations +instanceKlass org/gradle/process/internal/DefaultExecOperations +instanceKlass org/gradle/process/ExecOperations +instanceKlass org/gradle/internal/service/scopes/BuildScopeServices$$Lambda$120 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/tooling/provider/model/internal/BuildScopeToolingModelBuilderRegistryAction +instanceKlass org/gradle/api/internal/project/ProjectInternal +instanceKlass org/gradle/model/internal/registry/ModelRegistryScope +instanceKlass org/gradle/api/internal/DomainObjectContext +instanceKlass org/gradle/api/internal/file/HasScriptServices +instanceKlass org/gradle/api/internal/project/ProjectIdentifier +instanceKlass org/gradle/api/Project +instanceKlass org/gradle/api/internal/initialization/ScriptClassPathInitializer +instanceKlass org/gradle/tooling/provider/model/internal/DefaultToolingModelBuilderRegistry +instanceKlass org/gradle/tooling/provider/model/internal/ToolingModelBuilderLookup +instanceKlass org/gradle/tooling/provider/model/ToolingModelBuilderRegistry +instanceKlass org/gradle/initialization/InitScriptHandler +instanceKlass org/gradle/groovy/scripts/internal/DefaultScriptCompilationHandler +instanceKlass org/gradle/initialization/SettingsLoaderFactory +instanceKlass org/gradle/api/internal/tasks/TaskStatistics +instanceKlass org/gradle/configuration/DefaultScriptPluginFactory +instanceKlass org/gradle/api/provider/ProviderFactory +instanceKlass org/gradle/api/internal/project/DefaultProjectRegistry +instanceKlass org/gradle/initialization/buildsrc/BuildSourceBuilder +instanceKlass org/gradle/initialization/Environment +instanceKlass org/gradle/groovy/scripts/internal/FileCacheBackedScriptClassCompiler +instanceKlass org/gradle/api/internal/artifacts/DependencyManagementServices +instanceKlass org/gradle/internal/service/scopes/BuildScopeServiceRegistryFactory +instanceKlass org/gradle/internal/service/scopes/ServiceRegistryFactory +instanceKlass org/gradle/api/internal/plugins/PluginInspector +instanceKlass org/gradle/api/internal/resources/DefaultResourceHandler$Factory +instanceKlass org/gradle/api/internal/resources/ApiTextResourceAdapter$Factory +instanceKlass org/gradle/execution/plan/ExecutionPlanFactory +instanceKlass org/gradle/execution/plan/ExecutionNodeAccessHierarchies +instanceKlass org/gradle/execution/plan/TaskDependencyResolver +instanceKlass org/gradle/execution/plan/TaskNodeFactory +instanceKlass org/gradle/execution/ProjectConfigurer +instanceKlass org/gradle/api/internal/GradleInternal +instanceKlass org/gradle/api/internal/plugins/PluginAwareInternal +instanceKlass org/gradle/api/invocation/Gradle +instanceKlass org/gradle/api/plugins/PluginAware +instanceKlass org/gradle/api/internal/properties/GradleProperties +instanceKlass org/gradle/internal/build/BuildWorkPreparer +instanceKlass org/gradle/groovy/scripts/internal/ScriptCompilationHandler +instanceKlass org/gradle/configuration/InitScriptProcessor +instanceKlass org/gradle/internal/authentication/AuthenticationSchemeRegistry +instanceKlass org/gradle/initialization/SettingsProcessor +instanceKlass org/gradle/configuration/CompileOperationFactory +instanceKlass org/gradle/api/internal/tasks/userinput/BuildScanUserInputHandler +instanceKlass org/gradle/api/internal/project/IsolatedAntBuilder +instanceKlass org/gradle/initialization/ProjectDescriptorRegistry +instanceKlass org/gradle/api/internal/project/ProjectRegistry +instanceKlass org/gradle/api/internal/project/ProjectTaskLister +instanceKlass org/gradle/api/internal/component/ComponentTypeRegistry +instanceKlass org/gradle/configuration/ProjectsPreparer +instanceKlass org/gradle/initialization/SettingsPreparer +instanceKlass org/gradle/internal/resource/TextFileResourceLoader +instanceKlass org/gradle/configuration/ScriptPluginFactory +instanceKlass org/gradle/initialization/IGradlePropertiesLoader +instanceKlass org/gradle/internal/operations/logging/BuildOperationLoggerFactory +instanceKlass org/gradle/groovy/scripts/internal/ScriptRunnerFactory +instanceKlass org/gradle/api/invocation/BuildInvocationDetails +instanceKlass org/gradle/api/internal/artifacts/configurations/DependencyMetaDataProvider +instanceKlass org/gradle/groovy/scripts/ScriptCompilerFactory +instanceKlass org/gradle/groovy/scripts/internal/ScriptClassCompiler +instanceKlass org/gradle/api/internal/initialization/ScriptHandlerFactory +instanceKlass org/gradle/api/internal/initialization/ScriptClassPathResolver +instanceKlass org/gradle/api/internal/plugins/PluginRegistry +instanceKlass org/gradle/api/internal/provider/ValueSourceProviderFactory +instanceKlass org/gradle/initialization/GradlePropertiesController +instanceKlass org/gradle/cache/scopes/BuildScopedCache +instanceKlass org/gradle/execution/plan/NodeValidator +instanceKlass org/gradle/internal/build/PublicBuildPath +instanceKlass org/gradle/internal/actor/ActorFactory +instanceKlass org/gradle/execution/TaskSelector +instanceKlass org/gradle/initialization/BuildLoader +instanceKlass org/gradle/api/internal/project/taskfactory/ITaskFactory +instanceKlass org/gradle/configurationcache/DefaultBuildModelControllerServices$servicesForBuild$1 +instanceKlass org/gradle/internal/build/BuildModelControllerServices$Supplier +instanceKlass org/gradle/internal/buildtree/BuildTreeFinishExecutor +instanceKlass org/gradle/internal/buildtree/BuildTreeWorkExecutor +instanceKlass org/gradle/internal/composite/IncludedBuildInternal +instanceKlass org/gradle/api/initialization/IncludedBuild +instanceKlass org/gradle/api/artifacts/component/ProjectComponentIdentifier +instanceKlass org/gradle/api/artifacts/component/ComponentIdentifier +instanceKlass org/gradle/internal/build/AbstractBuildState +instanceKlass org/gradle/internal/Actions$NullAction +instanceKlass org/gradle/internal/Actions +instanceKlass org/gradle/plugin/management/internal/PluginRequests$EmptyPluginRequests +instanceKlass org/gradle/plugin/management/internal/PluginRequests +instanceKlass org/gradle/api/internal/BuildDefinition +instanceKlass java/util/TimSort +instanceKlass org/gradle/internal/buildtree/ProblemReportingBuildActionRunner$$Lambda$119 +instanceKlass org/gradle/launcher/exec/ChainingBuildActionRunner +instanceKlass org/gradle/internal/buildtree/ProblemReportingBuildActionRunner +instanceKlass org/gradle/launcher/exec/BuildOutcomeReportingBuildActionRunner +instanceKlass org/gradle/tooling/internal/provider/FileSystemWatchingBuildActionRunner +instanceKlass org/gradle/launcher/exec/BuildCompletionNotifyingBuildActionRunner +instanceKlass org/gradle/launcher/exec/RootBuildLifecycleBuildActionExecutor +instanceKlass org/gradle/initialization/exception/StackTraceSanitizingExceptionAnalyser +instanceKlass org/gradle/initialization/exception/DefaultExceptionAnalyser +instanceKlass org/gradle/internal/scripts/ScriptExecutionListener +instanceKlass org/gradle/initialization/exception/MultipleBuildFailuresExceptionAnalyser +instanceKlass org/gradle/internal/buildtree/DeprecationsReporter +instanceKlass org/gradle/api/artifacts/component/BuildIdentifier +instanceKlass org/gradle/composite/internal/DefaultIncludedBuildRegistry +instanceKlass org/gradle/api/internal/artifacts/ivyservice/dependencysubstitution/DependencySubstitutionsInternal +instanceKlass org/gradle/api/artifacts/DependencySubstitutions +instanceKlass org/gradle/composite/internal/IncludedBuildDependencySubstitutionsBuilder +instanceKlass org/gradle/internal/typeconversion/CompositeNotationConverter +instanceKlass org/gradle/api/capabilities/Capability +instanceKlass org/gradle/api/internal/artifacts/dsl/CapabilityNotationParserFactory +instanceKlass org/gradle/api/internal/attributes/UsageCompatibilityHandler +instanceKlass java/util/Comparator$$Lambda$118 +instanceKlass org/gradle/api/internal/attributes/DefaultImmutableAttributes$$Lambda$117 +instanceKlass org/gradle/api/attributes/Attribute +instanceKlass org/gradle/api/internal/attributes/DefaultImmutableAttributes +instanceKlass org/gradle/api/internal/attributes/AttributeValue +instanceKlass org/gradle/api/internal/attributes/ImmutableAttributes +instanceKlass org/gradle/api/internal/attributes/AttributeContainerInternal +instanceKlass org/gradle/api/attributes/AttributeContainer +instanceKlass org/gradle/api/attributes/HasAttributes +instanceKlass org/gradle/internal/isolation/Isolatable +instanceKlass org/gradle/internal/hash/Hashable +instanceKlass org/gradle/internal/snapshot/impl/DefaultIsolatableFactory$IsolatableVisitor +instanceKlass org/gradle/internal/snapshot/impl/AbstractValueProcessor$ValueVisitor +instanceKlass org/gradle/internal/snapshot/impl/AbstractValueProcessor +instanceKlass com/google/common/cache/LocalCache$StrongValueReference +instanceKlass org/gradle/api/internal/provider/ManagedFactories$ProviderManagedFactory +instanceKlass org/gradle/api/internal/provider/ManagedFactories$PropertyManagedFactory +instanceKlass org/gradle/api/internal/provider/ManagedFactories$MapPropertyManagedFactory +instanceKlass org/gradle/api/internal/provider/ManagedFactories$ListPropertyManagedFactory +instanceKlass org/gradle/api/internal/provider/AbstractMinimalProvider +instanceKlass org/gradle/api/internal/provider/CollectionPropertyInternal +instanceKlass org/gradle/api/internal/provider/CollectionProviderInternal +instanceKlass org/gradle/api/internal/provider/PropertyInternal +instanceKlass org/gradle/internal/state/OwnerAware +instanceKlass org/gradle/api/internal/provider/HasConfigurableValueInternal +instanceKlass org/gradle/api/internal/provider/ProviderInternal +instanceKlass org/gradle/api/internal/provider/ValueSupplier +instanceKlass org/gradle/api/internal/provider/ManagedFactories$SetPropertyManagedFactory +instanceKlass org/gradle/api/internal/file/ManagedFactories$DirectoryPropertyManagedFactory +instanceKlass org/gradle/api/internal/file/ManagedFactories$DirectoryManagedFactory +instanceKlass org/gradle/api/internal/file/ManagedFactories$RegularFilePropertyManagedFactory +instanceKlass org/gradle/api/internal/file/ManagedFactories$RegularFileManagedFactory +instanceKlass org/gradle/api/internal/file/collections/ManagedFactories$ConfigurableFileCollectionManagedFactory +instanceKlass org/gradle/internal/state/DefaultManagedFactoryRegistry +instanceKlass org/gradle/internal/classloader/ConfigurableClassLoaderHierarchyHasher +instanceKlass org/gradle/internal/classloader/DefaultClassLoaderFactory +instanceKlass org/gradle/api/internal/initialization/loadercache/DefaultClasspathHasher +instanceKlass javax/annotation/meta/TypeQualifierDefault +instanceKlass javax/annotation/Nonnull +instanceKlass org/gradle/api/NonNullApi +instanceKlass org/gradle/api/internal/changedetection/state/PropertiesFileAwareClasspathResourceHasher$$Lambda$116 +instanceKlass org/gradle/api/internal/changedetection/state/PropertiesFileAwareClasspathResourceHasher$$Lambda$115 +instanceKlass org/gradle/internal/fingerprint/impl/EmptyCurrentFileCollectionFingerprint +instanceKlass org/gradle/api/internal/changedetection/state/ZipHasher$$Lambda$114 +instanceKlass org/gradle/api/internal/changedetection/state/ZipHasher$HashingExceptionReporter +instanceKlass org/gradle/internal/snapshot/AbstractFileSystemLocationSnapshot +instanceKlass org/gradle/internal/snapshot/FileSystemLeafSnapshot +instanceKlass org/gradle/api/internal/file/archive/ZipInput +instanceKlass org/gradle/internal/fingerprint/hashing/ZipEntryContext +instanceKlass org/gradle/api/internal/changedetection/state/ZipHasher +instanceKlass org/gradle/api/internal/changedetection/state/IgnoringResourceHasher +instanceKlass org/gradle/api/internal/changedetection/state/MetaInfAwareClasspathResourceHasher +instanceKlass org/gradle/api/internal/changedetection/state/PropertiesFileAwareClasspathResourceHasher$$Lambda$113 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/api/internal/changedetection/state/PropertiesFileAwareClasspathResourceHasher +instanceKlass org/gradle/api/internal/changedetection/state/LineEndingNormalizingResourceHasher$1 +instanceKlass org/gradle/api/internal/changedetection/state/LineEndingNormalizingResourceHasher +instanceKlass org/gradle/internal/snapshot/RelativePathTrackingFileSystemSnapshotHierarchyVisitor +instanceKlass org/gradle/internal/fingerprint/CurrentFileCollectionFingerprint +instanceKlass org/gradle/internal/fingerprint/FileCollectionFingerprint +instanceKlass org/gradle/internal/fingerprint/impl/AbstractFingerprintingStrategy +instanceKlass org/gradle/api/internal/changedetection/state/RuntimeClasspathResourceHasher +instanceKlass org/gradle/api/internal/changedetection/state/PropertiesFileFilter +instanceKlass org/gradle/api/internal/changedetection/state/ResourceEntryFilter$1 +instanceKlass org/gradle/api/internal/changedetection/state/ResourceEntryFilter +instanceKlass org/gradle/api/internal/changedetection/state/ResourceFilter$1 +instanceKlass org/gradle/api/internal/changedetection/state/ResourceFilter +instanceKlass org/gradle/internal/fingerprint/FingerprintingStrategy +instanceKlass org/gradle/internal/fingerprint/impl/AbstractFileCollectionFingerprinter +instanceKlass org/gradle/internal/execution/fingerprint/FileCollectionSnapshotter$Result +instanceKlass org/gradle/internal/fingerprint/impl/DefaultFileCollectionSnapshotter +instanceKlass org/gradle/internal/fingerprint/impl/DefaultGenericFileTreeSnapshotter +instanceKlass org/gradle/api/internal/changedetection/state/CachingResourceHasher +instanceKlass org/gradle/internal/fingerprint/hashing/ResourceHasher +instanceKlass org/gradle/internal/fingerprint/hashing/ZipEntryContextHasher +instanceKlass org/gradle/internal/fingerprint/hashing/RegularFileSnapshotContextHasher +instanceKlass org/gradle/internal/fingerprint/hashing/ConfigurableNormalizer +instanceKlass org/gradle/api/internal/changedetection/state/DefaultResourceSnapshotterCacheService +instanceKlass org/gradle/internal/typeconversion/NotationParserBuilder$LazyDisplayName +instanceKlass org/gradle/internal/typeconversion/JustReturningParser +instanceKlass org/gradle/api/artifacts/VersionConstraint +instanceKlass org/gradle/internal/typeconversion/TypedNotationConverter +instanceKlass org/gradle/internal/typeconversion/CrossBuildCachingNotationConverter +instanceKlass org/gradle/api/internal/artifacts/DefaultImmutableModuleIdentifierFactory +instanceKlass org/gradle/composite/internal/DefaultBuildableCompositeBuildContext +instanceKlass org/gradle/tooling/internal/provider/serialization/DefaultPayloadClassLoaderRegistry$DetailsToClassLoaderTransformer +instanceKlass org/gradle/tooling/internal/provider/serialization/DefaultPayloadClassLoaderRegistry$ClassLoaderToDetailsTransformer +instanceKlass org/gradle/tooling/internal/provider/serialization/DefaultPayloadClassLoaderRegistry +instanceKlass org/gradle/tooling/internal/provider/serialization/ClassLoaderDetails +instanceKlass org/gradle/tooling/internal/provider/serialization/DeserializeMap +instanceKlass org/gradle/tooling/internal/provider/serialization/SerializeMap +instanceKlass org/gradle/tooling/internal/provider/serialization/WellKnownClassLoaderRegistry +instanceKlass java/io/ObjectInput +instanceKlass java/io/ObjectStreamConstants +instanceKlass java/io/ObjectOutput +instanceKlass org/gradle/tooling/internal/provider/serialization/ModelClassLoaderFactory +instanceKlass org/gradle/tooling/internal/provider/serialization/DaemonSidePayloadClassLoaderFactory +instanceKlass org/gradle/internal/file/impl/SingleDepthFileAccessTracker +instanceKlass org/gradle/cache/internal/SingleDepthFilesFinder +instanceKlass org/gradle/cache/internal/UnusedVersionsCacheCleanup$1 +instanceKlass org/gradle/cache/internal/AbstractCacheCleanup +instanceKlass org/gradle/cache/internal/CompositeCleanupAction$Builder +instanceKlass org/gradle/cache/internal/CompositeCleanupAction +instanceKlass org/gradle/internal/service/scopes/VirtualFileSystemServices$GradleUserHomeServices$3 +instanceKlass java/util/function/Predicate$$Lambda$112 +instanceKlass org/gradle/internal/snapshot/impl/DirectorySnapshotter$DefaultExcludes$$Lambda$111 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/internal/snapshot/impl/DirectorySnapshotter$DefaultExcludes$$Lambda$110 +instanceKlass org/gradle/internal/snapshot/impl/DirectorySnapshotter$DefaultExcludes$$Lambda$109 +instanceKlass org/gradle/internal/snapshot/impl/DirectorySnapshotter$DefaultExcludes$$Lambda$108 +instanceKlass java/util/function/Predicate$$Lambda$107 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/internal/snapshot/impl/DirectorySnapshotter$DefaultExcludes$EndMatcher +instanceKlass org/gradle/internal/snapshot/impl/DirectorySnapshotter$DefaultExcludes$StartMatcher +instanceKlass org/gradle/internal/snapshot/impl/DirectorySnapshotter$DefaultExcludes +instanceKlass org/gradle/internal/snapshot/impl/DirectorySnapshotter$1 +instanceKlass org/gradle/internal/snapshot/impl/DirectorySnapshotter$SymbolicLinkMapping +instanceKlass java/nio/file/FileVisitor +instanceKlass org/gradle/internal/snapshot/impl/DirectorySnapshotter +instanceKlass com/google/common/util/concurrent/Striped$1 +instanceKlass com/google/common/util/concurrent/Striped$6 +instanceKlass java/util/concurrent/locks/ReadWriteLock +instanceKlass com/google/common/util/concurrent/Striped$5 +instanceKlass com/google/common/util/concurrent/Striped +instanceKlass org/gradle/internal/vfs/impl/DefaultFileSystemAccess$StripedProducerGuard +instanceKlass java/nio/file/attribute/PosixFilePermissions$1 +instanceKlass java/nio/file/attribute/PosixFilePermissions +instanceKlass org/apache/tools/ant/util/FileUtils +instanceKlass org/apache/tools/ant/taskdefs/condition/Os +instanceKlass org/apache/tools/ant/taskdefs/condition/Condition +instanceKlass org/apache/tools/ant/types/resources/Appendable +instanceKlass org/apache/tools/ant/types/resources/FileProvider +instanceKlass org/apache/tools/ant/types/resources/Touchable +instanceKlass org/apache/tools/ant/ProjectComponent +instanceKlass org/apache/tools/ant/types/ResourceCollection +instanceKlass org/apache/tools/ant/DirectoryScanner +instanceKlass org/apache/tools/ant/types/ResourceFactory +instanceKlass org/apache/tools/ant/types/selectors/SelectorScanner +instanceKlass org/apache/tools/ant/FileScanner +instanceKlass org/gradle/internal/snapshot/FileSystemLocationSnapshot +instanceKlass org/gradle/internal/snapshot/FileSystemSnapshot +instanceKlass org/gradle/internal/snapshot/impl/DirectorySnapshotterStatistics +instanceKlass org/gradle/internal/service/scopes/VirtualFileSystemServices$GradleUserHomeServices$$Lambda$106 +instanceKlass org/gradle/internal/build/BuildAddedListener +instanceKlass org/gradle/internal/service/scopes/VirtualFileSystemServices$GradleUserHomeServices$$Lambda$105 +instanceKlass org/gradle/internal/watch/registry/impl/DaemonDocumentationIndex +instanceKlass org/gradle/internal/watch/registry/FileWatcherRegistry$ChangeHandler +instanceKlass org/gradle/internal/snapshot/SnapshotHierarchy$NodeDiffListener +instanceKlass org/gradle/internal/snapshot/MetadataSnapshot +instanceKlass org/gradle/internal/vfs/impl/AbstractVirtualFileSystem +instanceKlass org/gradle/internal/service/scopes/VirtualFileSystemServices$GradleUserHomeServices$$Lambda$104 +instanceKlass net/rubygrapefruit/platform/internal/jni/AbstractFileEventFunctions$AbstractWatcherBuilder +instanceKlass org/gradle/internal/watch/registry/FileWatcherUpdater +instanceKlass net/rubygrapefruit/platform/file/FileWatcher +instanceKlass org/gradle/internal/watch/registry/FileWatcherRegistry +instanceKlass org/gradle/internal/watch/registry/FileWatcherProbeRegistry +instanceKlass org/gradle/internal/watch/registry/impl/AbstractFileWatcherRegistryFactory +instanceKlass org/gradle/internal/service/scopes/VirtualFileSystemServices$GradleUserHomeServices$$Lambda$103 +instanceKlass org/gradle/internal/snapshot/FileSystemNode +instanceKlass org/gradle/internal/snapshot/ChildMap +instanceKlass org/gradle/internal/vfs/impl/DefaultSnapshotHierarchy$1 +instanceKlass org/gradle/internal/snapshot/ReadOnlyFileSystemNode +instanceKlass org/gradle/internal/vfs/impl/DefaultSnapshotHierarchy +instanceKlass org/gradle/internal/snapshot/SnapshotHierarchy +instanceKlass org/apache/commons/io/filefilter/IOFileFilter +instanceKlass java/io/FilenameFilter +instanceKlass org/apache/commons/io/FileUtils +instanceKlass com/google/common/hash/PrimitiveSink +instanceKlass com/google/common/io/CharSource +instanceKlass com/google/common/io/Closer$SuppressingSuppressor +instanceKlass com/google/common/io/Closer$Suppressor +instanceKlass com/google/common/io/Closer +instanceKlass com/google/common/io/CharSink +instanceKlass java/io/File$TempDirectory +instanceKlass org/gradle/api/internal/file/temp/TempFiles +instanceKlass org/gradle/internal/watch/vfs/impl/DefaultWatchableFileSystemDetector +instanceKlass net/rubygrapefruit/platform/internal/PosixFileSystems +instanceKlass org/gradle/internal/file/FilePathUtil +instanceKlass org/gradle/internal/file/FileHierarchySet$Node +instanceKlass org/gradle/internal/file/FileHierarchySet$NodeVisitor +instanceKlass org/gradle/cache/internal/DefaultGlobalCacheLocations +instanceKlass org/gradle/internal/nativeintegration/services/NativeServices$3 +instanceKlass org/gradle/internal/service/scopes/VirtualFileSystemServices$GradleUserHomeServices$1 +instanceKlass org/gradle/internal/file/FileHierarchySet +instanceKlass org/gradle/internal/hash/DefaultFileHasher +instanceKlass org/gradle/api/internal/changedetection/state/CachingFileHasher +instanceKlass com/google/common/collect/MapMakerInternalMap$WeakKeyDummyValueEntry$Helper +instanceKlass com/google/common/collect/MapMakerInternalMap$InternalEntry +instanceKlass com/google/common/collect/MapMakerInternalMap$1 +instanceKlass com/google/common/collect/MapMakerInternalMap$WeakValueReference +instanceKlass com/google/common/collect/MapMakerInternalMap$InternalEntryHelper +instanceKlass com/google/common/collect/Interners$InternerImpl +instanceKlass com/google/common/collect/MapMaker +instanceKlass com/google/common/collect/Interners$InternerBuilder +instanceKlass com/google/common/collect/Interners +instanceKlass org/gradle/internal/hash/HashCode +instanceKlass com/google/common/base/Charsets +instanceKlass org/gradle/internal/hash/Hashing$MessageDigestHasher +instanceKlass org/gradle/internal/hash/Hashing$DefaultHasher +instanceKlass org/gradle/internal/hash/PrimitiveHasher +instanceKlass org/gradle/internal/hash/Hasher +instanceKlass org/gradle/internal/hash/Hashing$MessageDigestHashFunction +instanceKlass org/gradle/internal/hash/HashFunction +instanceKlass org/gradle/internal/hash/Hashing +instanceKlass org/gradle/internal/hash/DefaultStreamHasher +instanceKlass org/gradle/api/internal/changedetection/state/FileTimeStampInspector$$Lambda$102 +instanceKlass org/gradle/api/internal/changedetection/state/FileHasherStatistics +instanceKlass org/apache/commons/lang/StringUtils +instanceKlass org/gradle/api/internal/artifacts/ivyservice/DefaultArtifactCaches$$Lambda$101 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/WritableArtifactCacheLockingManager +instanceKlass org/gradle/api/internal/artifacts/ivyservice/DefaultArtifactCaches$LateInitWritableArtifactCacheLockingManager +instanceKlass com/google/common/primitives/IntsMethodsForWeb +instanceKlass org/apache/commons/lang/ArrayUtils +instanceKlass org/gradle/cache/internal/CacheVersion +instanceKlass java/lang/Character$CharacterCache +instanceKlass org/gradle/util/internal/DefaultGradleVersion$Stage +instanceKlass org/gradle/cache/internal/CacheVersionMapping$Builder +instanceKlass org/gradle/cache/internal/CacheVersionMapping$1 +instanceKlass org/gradle/cache/internal/CacheVersionMapping +instanceKlass org/gradle/api/internal/artifacts/ivyservice/DefaultArtifactCacheMetadata +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ArtifactCacheLockingManager +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ArtifactCacheMetadata +instanceKlass org/gradle/api/internal/artifacts/ivyservice/DefaultArtifactCaches +instanceKlass org/gradle/api/internal/artifacts/DependencyManagementGradleUserHomeScopeServices$1 +instanceKlass org/gradle/api/internal/changedetection/state/DefaultFileAccessTimeJournal$$Lambda$100 +instanceKlass org/gradle/cache/internal/DefaultCacheAccess$IndexedCacheEntry +instanceKlass java/net/DatagramPacket$1 +instanceKlass org/gradle/cache/internal/locklistener/DefaultFileLockContentionHandler$ContendedAction +instanceKlass org/gradle/cache/internal/locklistener/DefaultFileLockContentionHandler$1 +instanceKlass org/gradle/internal/Factories$1 +instanceKlass org/gradle/internal/Factories +instanceKlass org/gradle/cache/internal/CrossProcessSynchronizingCache +instanceKlass org/gradle/cache/internal/InMemoryDecoratedCache +instanceKlass org/gradle/cache/internal/InMemoryCacheController +instanceKlass com/google/common/cache/LongAddables$1 +instanceKlass com/google/common/cache/Striped64$Cell +instanceKlass com/google/common/cache/Striped64$1 +instanceKlass com/google/common/cache/LongAddable +instanceKlass com/google/common/cache/LongAddables +instanceKlass com/google/common/cache/AbstractCache$SimpleStatsCounter +instanceKlass org/gradle/cache/internal/LoggingEvictionListener +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/cache/internal/DefaultInMemoryCacheDecoratorFactory$$Lambda$99 +instanceKlass org/gradle/cache/internal/DefaultInMemoryCacheDecoratorFactory$CacheDetails +instanceKlass org/gradle/cache/internal/AsyncCacheAccessDecoratedCache +instanceKlass org/gradle/cache/internal/CacheAccessWorker +instanceKlass org/gradle/cache/internal/DefaultMultiProcessSafePersistentIndexedCache +instanceKlass org/gradle/cache/internal/DefaultCacheAccess$$Lambda$98 +instanceKlass org/gradle/cache/internal/btree/BTreePersistentIndexedCache +instanceKlass org/gradle/cache/internal/DefaultInMemoryCacheDecoratorFactory$InMemoryCacheDecorator +instanceKlass org/gradle/cache/PersistentIndexedCacheParameters +instanceKlass org/gradle/api/internal/changedetection/state/DefaultFileAccessTimeJournal +instanceKlass org/gradle/cache/internal/MultiProcessSafeAsyncPersistentIndexedCache +instanceKlass org/gradle/cache/CacheDecorator +instanceKlass org/gradle/cache/internal/DefaultInMemoryCacheDecoratorFactory +instanceKlass org/gradle/cache/internal/DefaultCacheFactory$ReferenceTrackingCache +instanceKlass org/gradle/cache/internal/DefaultCacheFactory$DirCacheReference +instanceKlass org/gradle/cache/internal/cacheops/CacheOperationStack +instanceKlass org/gradle/cache/internal/LockOnDemandCrossProcessCacheAccess$ContendedAction +instanceKlass org/gradle/cache/internal/LockOnDemandCrossProcessCacheAccess$UnlockAction +instanceKlass org/gradle/cache/internal/DefaultCacheAccess$1 +instanceKlass org/gradle/cache/internal/DefaultCacheAccess$$Lambda$97 +instanceKlass org/gradle/cache/internal/DefaultCacheAccess$$Lambda$96 +instanceKlass org/gradle/cache/internal/cacheops/CacheAccessOperationsStack +instanceKlass org/gradle/cache/internal/DefaultPersistentDirectoryStore$Cleanup +instanceKlass org/gradle/cache/internal/DefaultPersistentDirectoryStore$1 +instanceKlass org/gradle/cache/internal/DefaultPersistentDirectoryStore$2 +instanceKlass org/gradle/cache/internal/DefaultCacheAccess$$Lambda$95 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/cache/internal/AbstractCrossProcessCacheAccess +instanceKlass org/gradle/cache/AsyncCacheAccess +instanceKlass org/gradle/cache/CrossProcessCacheAccess +instanceKlass org/gradle/cache/MultiProcessSafePersistentIndexedCache +instanceKlass org/gradle/cache/UnitOfWorkParticipant +instanceKlass org/gradle/cache/PersistentIndexedCache +instanceKlass org/gradle/cache/internal/DefaultCacheAccess +instanceKlass org/gradle/cache/internal/CacheCoordinator +instanceKlass org/gradle/cache/internal/CacheInitializationAction +instanceKlass org/gradle/cache/internal/CacheCleanupAction +instanceKlass org/gradle/cache/internal/DefaultPersistentDirectoryStore +instanceKlass org/gradle/cache/internal/DefaultCacheRepository$PersistentCacheBuilder +instanceKlass org/gradle/cache/internal/scopes/DefaultCacheScopeMapping$1 +instanceKlass org/gradle/internal/operations/notify/BuildOperationNotificationBridge$Progress +instanceKlass org/gradle/internal/operations/OperationProgressEvent +instanceKlass org/gradle/initialization/BuildOptionBuildOperationProgressEventsEmitter$1 +instanceKlass org/gradle/internal/configurationcache/options/ConfigurationCacheSettingsFinalizedProgressDetails +instanceKlass org/gradle/launcher/exec/BuildTreeLifecycleBuildActionExecutor$$Lambda$94 +instanceKlass org/gradle/internal/buildtree/DefaultBuildTreeContext +instanceKlass org/gradle/internal/buildtree/BuildTreeContext +instanceKlass org/gradle/configurationcache/VintageBuildTreeLifecycleControllerFactory +instanceKlass org/gradle/internal/buildtree/BuildTreeLifecycleControllerFactory +instanceKlass org/gradle/configurationcache/initialization/AbstractInjectedClasspathInstrumentationStrategy +instanceKlass org/gradle/plugin/use/resolve/service/internal/InjectedClasspathInstrumentationStrategy +instanceKlass org/gradle/internal/buildtree/BuildInclusionCoordinator +instanceKlass org/gradle/initialization/BuildOptionBuildOperationProgressEventsEmitter +instanceKlass org/gradle/internal/buildtree/BuildTreeLifecycleListener +instanceKlass org/gradle/internal/build/BuildLifecycleController +instanceKlass org/gradle/internal/build/DefaultBuildLifecycleControllerFactory +instanceKlass org/gradle/internal/build/BuildLifecycleControllerFactory +instanceKlass org/gradle/tooling/internal/provider/runner/AbstractClientProvidedBuildActionRunner$ClientAction +instanceKlass org/gradle/tooling/internal/provider/runner/AbstractClientProvidedBuildActionRunner +instanceKlass org/gradle/tooling/internal/provider/runner/TestExecutionRequestActionRunner +instanceKlass org/gradle/internal/buildtree/BuildTreeModelAction +instanceKlass org/gradle/tooling/internal/provider/runner/BuildModelActionRunner +instanceKlass org/gradle/tooling/internal/provider/runner/BuildControllerFactory +instanceKlass kotlin/coroutines/Continuation +instanceKlass org/gradle/configurationcache/fingerprint/ConfigurationCacheFingerprintController +instanceKlass org/gradle/configurationcache/InstrumentedInputAccessListener +instanceKlass org/gradle/internal/classpath/Instrumented$Listener +instanceKlass org/gradle/configurationcache/ConfigurationCacheRepository +instanceKlass org/gradle/configurationcache/DefaultBuildToolingModelControllerFactory +instanceKlass org/gradle/internal/build/BuildToolingModelControllerFactory +instanceKlass org/gradle/configurationcache/DefaultBuildModelControllerServices +instanceKlass org/gradle/internal/build/BuildModelControllerServices +instanceKlass org/gradle/configurationcache/problems/ProblemsListener +instanceKlass org/gradle/configurationcache/initialization/DefaultConfigurationCacheProblemsListener +instanceKlass org/gradle/configurationcache/initialization/ConfigurationCacheProblemsListener +instanceKlass org/gradle/api/internal/BuildScopeListenerRegistrationListener +instanceKlass org/gradle/api/internal/tasks/execution/TaskExecutionAccessListener +instanceKlass org/gradle/configurationcache/problems/ConfigurationCacheReport +instanceKlass org/gradle/configurationcache/initialization/ConfigurationCacheStartParameter +instanceKlass org/gradle/configurationcache/ConfigurationCacheKey +instanceKlass org/gradle/vcs/internal/VcsResolver +instanceKlass org/gradle/vcs/internal/resolver/VcsVersionSelectionCache +instanceKlass org/gradle/vcs/internal/VersionControlSpecFactory +instanceKlass org/gradle/vcs/internal/VcsMappingsStore +instanceKlass org/gradle/vcs/internal/VcsMappingFactory +instanceKlass org/gradle/vcs/internal/services/VersionControlServices$VersionControlBuildTreeServices +instanceKlass org/gradle/plugins/ide/internal/IdeArtifactStore +instanceKlass org/gradle/internal/enterprise/impl/legacy/DefaultBuildScanBuildStartedTime +instanceKlass org/gradle/internal/scan/time/BuildScanBuildStartedTime +instanceKlass org/gradle/internal/enterprise/impl/legacy/DefaultBuildScanClock +instanceKlass org/gradle/internal/scan/time/BuildScanClock +instanceKlass org/gradle/internal/enterprise/impl/DefaultGradleEnterprisePluginRequiredServices +instanceKlass org/gradle/internal/enterprise/GradleEnterprisePluginRequiredServices +instanceKlass org/gradle/composite/internal/DefaultIncludedBuildTaskGraph +instanceKlass org/gradle/composite/internal/BuildTreeWorkGraphController +instanceKlass org/gradle/internal/build/IncludedBuildState +instanceKlass org/gradle/composite/internal/DefaultIncludedBuildFactory +instanceKlass org/gradle/internal/build/StandAloneNestedBuild +instanceKlass org/gradle/internal/build/NestedBuildState +instanceKlass org/gradle/internal/buildtree/NestedBuildTree +instanceKlass org/gradle/internal/build/RootBuildState +instanceKlass org/gradle/internal/build/BuildActionTarget +instanceKlass org/gradle/internal/build/CompositeBuildParticipantBuildState +instanceKlass org/gradle/internal/build/IncludedBuildFactory +instanceKlass org/gradle/composite/internal/BuildStateFactory +instanceKlass org/gradle/composite/internal/DefaultLocalComponentInAnotherBuildProvider +instanceKlass org/gradle/api/internal/artifacts/ivyservice/projectmodule/LocalComponentInAnotherBuildProvider +instanceKlass org/gradle/api/internal/composite/CompositeBuildContext +instanceKlass org/gradle/api/internal/artifacts/ivyservice/dependencysubstitution/DependencySubstitutionRules +instanceKlass org/gradle/composite/internal/CompositeBuildServices$CompositeBuildTreeScopeServices +instanceKlass org/gradle/api/internal/tasks/compile/processing/AnnotationProcessorDetector +instanceKlass org/gradle/language/java/internal/JavaLanguagePluginServiceRegistry$1 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/StartParameterResolutionOverride +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/store/ResolutionResultsStoreFactory +instanceKlass org/gradle/util/internal/BuildCommencedTimeProvider +instanceKlass org/gradle/api/internal/artifacts/DependencyManagementBuildTreeScopeServices +instanceKlass org/gradle/caching/internal/controller/RootBuildCacheControllerRef +instanceKlass org/gradle/caching/internal/BuildCacheServices$1 +instanceKlass org/gradle/internal/enterprise/core/GradleEnterprisePluginManager +instanceKlass org/gradle/internal/build/BuildStateRegistry +instanceKlass org/gradle/internal/buildtree/BuildTreeActionExecutor +instanceKlass org/gradle/tooling/internal/provider/LauncherServices$ToolingBuildTreeScopeServices +instanceKlass org/gradle/api/internal/project/DefaultProjectStateRegistry +instanceKlass org/gradle/api/internal/project/ProjectStateRegistry +instanceKlass org/gradle/api/internal/provider/ConfigurationTimeBarrier +instanceKlass org/gradle/problems/buildtree/ProblemReporter +instanceKlass org/gradle/internal/buildtree/BuildTreeScopeServices +instanceKlass org/gradle/internal/buildtree/BuildTreeState +instanceKlass org/gradle/configurationcache/DefaultBuildTreeModelControllerServices$servicesForBuildTree$1 +instanceKlass org/gradle/internal/buildtree/BuildTreeModelControllerServices$Supplier +instanceKlass org/gradle/internal/buildtree/BuildModelParameters +instanceKlass org/gradle/internal/buildtree/RunTasksRequirements +instanceKlass org/gradle/initialization/layout/BuildLayoutConfiguration +instanceKlass org/gradle/internal/logging/sink/ProgressLogEventGenerator$Operation +instanceKlass org/gradle/internal/logging/progress/DefaultProgressLoggerFactory$ProgressLoggerImpl +instanceKlass org/gradle/internal/operations/notify/BuildOperationNotificationBridge$Started +instanceKlass org/gradle/api/internal/tasks/RegisterTaskBuildOperationType$Details +instanceKlass org/gradle/api/internal/tasks/RealizeTaskBuildOperationType$Details +instanceKlass org/gradle/api/internal/ExecuteDomainObjectCollectionCallbackBuildOperationType$Details +instanceKlass org/gradle/configuration/internal/ExecuteListenerBuildOperationType$Details +instanceKlass org/gradle/configuration/ApplyScriptPluginBuildOperationType$Details +instanceKlass org/gradle/api/internal/plugins/ApplyPluginBuildOperationType$Details +instanceKlass org/gradle/internal/operations/OperationStartEvent +instanceKlass org/gradle/internal/operations/DefaultBuildOperationRunner$DefaultBuildOperationContext +instanceKlass org/gradle/internal/operations/DefaultBuildOperationExecutor$ListenerAdapter +instanceKlass org/gradle/internal/operations/DefaultBuildOperationRunner$BuildOperationTrackingListener +instanceKlass org/gradle/internal/operations/BuildOperationState +instanceKlass org/gradle/internal/operations/OperationIdentifier +instanceKlass org/gradle/internal/operations/DefaultBuildOperationRunner$2 +instanceKlass org/gradle/internal/operations/BuildOperationMetadata$1 +instanceKlass org/gradle/internal/operations/BuildOperationDescriptor$Builder +instanceKlass org/gradle/internal/operations/BuildOperationDescriptor +instanceKlass org/gradle/internal/operations/DefaultBuildOperationRunner$CallableBuildOperationWorker +instanceKlass org/gradle/launcher/exec/RunAsBuildOperationBuildActionExecutor$3 +instanceKlass org/gradle/internal/operations/notify/BuildOperationStartedNotification +instanceKlass org/gradle/internal/operations/notify/BuildOperationProgressNotification +instanceKlass org/gradle/internal/operations/notify/BuildOperationFinishedNotification +instanceKlass org/gradle/internal/operations/notify/BuildOperationNotificationBridge$Adapter +instanceKlass org/gradle/internal/operations/notify/BuildOperationNotificationBridge$RecordingListener +instanceKlass org/gradle/internal/operations/notify/BuildOperationNotificationBridge$ReplayAndAttachListener +instanceKlass org/gradle/internal/operations/notify/BuildOperationNotificationListener +instanceKlass org/gradle/internal/operations/notify/BuildOperationNotificationBridge$State +instanceKlass org/gradle/internal/resources/DefaultResourceLockCoordinationService$AcquireLocks +instanceKlass org/gradle/internal/resources/DefaultResourceLockCoordinationService$2 +instanceKlass org/gradle/internal/resources/DefaultResourceLockCoordinationService$DefaultResourceLockState +instanceKlass org/gradle/internal/resources/ResourceLockState +instanceKlass org/gradle/internal/work/DefaultWorkerLeaseService$3 +instanceKlass com/google/common/collect/Iterables +instanceKlass com/google/common/util/concurrent/AbstractFuture$Failure +instanceKlass com/google/common/util/concurrent/AbstractFuture$Cancellation +instanceKlass com/google/common/util/concurrent/AbstractFuture$SetFuture +instanceKlass com/google/common/util/concurrent/Uninterruptibles +instanceKlass com/google/common/base/CommonPattern +instanceKlass com/google/common/base/Platform$JdkPatternCompiler +instanceKlass com/google/common/base/PatternCompiler +instanceKlass com/google/common/base/Platform +instanceKlass com/google/common/base/Stopwatch +instanceKlass com/google/common/util/concurrent/AbstractFuture$Waiter +instanceKlass com/google/common/util/concurrent/AbstractFuture$Listener +instanceKlass com/google/common/util/concurrent/AbstractFuture$UnsafeAtomicHelper$1 +instanceKlass sun/misc/Unsafe +instanceKlass com/google/common/util/concurrent/AbstractFuture$AtomicHelper +instanceKlass com/google/common/util/concurrent/internal/InternalFutureFailureAccess +instanceKlass com/google/common/util/concurrent/AbstractFuture$Trusted +instanceKlass com/google/common/util/concurrent/ListenableFuture +instanceKlass org/gradle/internal/resources/AbstractResourceLockRegistry$1 +instanceKlass org/gradle/internal/work/DefaultWorkerLeaseService$WorkerLeaseLockRegistry$1 +instanceKlass org/gradle/internal/resources/AbstractResourceLockRegistry$ThreadLockDetails +instanceKlass org/gradle/launcher/exec/RunAsWorkerThreadBuildActionExecutor$$Lambda$93 +instanceKlass org/gradle/internal/buildtree/BuildActionRunner$Result +instanceKlass org/gradle/workers/internal/ExecuteWorkItemBuildOperationType$Details +instanceKlass org/gradle/api/internal/artifacts/transform/ExecuteScheduledTransformationStepBuildOperationDetails +instanceKlass org/gradle/api/internal/artifacts/transform/ExecuteScheduledTransformationStepBuildOperationType$Details +instanceKlass org/gradle/api/internal/tasks/execution/ExecuteTaskBuildOperationDetails +instanceKlass org/gradle/internal/operations/trace/CustomOperationTraceSerialization +instanceKlass org/gradle/api/internal/tasks/execution/ExecuteTaskBuildOperationType$Details +instanceKlass org/gradle/configuration/project/ConfigureProjectBuildOperationType$Details +instanceKlass org/gradle/api/internal/tasks/testing/operations/ExecuteTestBuildOperationType$Details +instanceKlass org/gradle/internal/resource/ExternalResourceReadBuildOperationType$Details +instanceKlass org/gradle/tooling/internal/provider/runner/ClientBuildEventGenerator$Mapper +instanceKlass org/gradle/tooling/internal/provider/runner/ClientBuildEventGenerator$Operation +instanceKlass org/gradle/tooling/internal/provider/runner/ClientBuildEventGenerator +instanceKlass org/gradle/tooling/internal/protocol/events/InternalWorkItemDescriptor +instanceKlass org/gradle/tooling/internal/provider/runner/WorkItemOperationMapper +instanceKlass org/gradle/tooling/internal/protocol/events/InternalProjectConfigurationResult +instanceKlass org/gradle/tooling/internal/protocol/events/InternalProjectConfigurationDescriptor +instanceKlass org/gradle/tooling/internal/provider/runner/ProjectConfigurationOperationMapper +instanceKlass org/gradle/tooling/internal/protocol/events/InternalTestFailureResult +instanceKlass org/gradle/tooling/internal/protocol/events/InternalTestSkippedResult +instanceKlass org/gradle/tooling/internal/protocol/events/InternalTestSuccessResult +instanceKlass org/gradle/tooling/internal/protocol/events/InternalTestResult +instanceKlass org/gradle/tooling/internal/provider/runner/TestOperationMapper +instanceKlass org/gradle/tooling/internal/protocol/events/InternalFileDownloadResult +instanceKlass org/gradle/tooling/internal/protocol/events/InternalFileDownloadDescriptor +instanceKlass org/gradle/tooling/internal/provider/runner/FileDownloadOperationMapper +instanceKlass org/gradle/tooling/internal/provider/runner/TaskOperationMapper$PostProcessors +instanceKlass org/gradle/tooling/internal/protocol/events/InternalTaskFailureResult +instanceKlass org/gradle/tooling/internal/protocol/events/InternalFailureResult +instanceKlass org/gradle/tooling/internal/protocol/events/InternalTaskSkippedResult +instanceKlass org/gradle/tooling/internal/provider/runner/TaskOperationMapper +instanceKlass org/gradle/tooling/internal/protocol/events/InternalJavaCompileTaskOperationResult$InternalAnnotationProcessorResult +instanceKlass org/gradle/tooling/internal/protocol/events/InternalTaskCachedResult +instanceKlass org/gradle/tooling/internal/protocol/events/InternalTaskSuccessResult +instanceKlass org/gradle/tooling/internal/protocol/events/InternalSuccessResult +instanceKlass org/gradle/tooling/internal/protocol/events/InternalJavaCompileTaskOperationResult +instanceKlass org/gradle/internal/build/event/types/AbstractResult +instanceKlass org/gradle/tooling/internal/protocol/events/InternalIncrementalTaskResult +instanceKlass org/gradle/tooling/internal/protocol/events/InternalTaskResult +instanceKlass org/gradle/tooling/internal/protocol/events/InternalOperationResult +instanceKlass org/gradle/api/internal/tasks/compile/tooling/JavaCompileTaskSuccessResultPostProcessor +instanceKlass org/gradle/internal/build/event/OperationResultPostProcessor +instanceKlass org/gradle/tooling/internal/protocol/events/InternalOperationFinishedProgressEvent +instanceKlass org/gradle/tooling/internal/protocol/events/InternalOperationStartedProgressEvent +instanceKlass org/gradle/tooling/internal/protocol/events/InternalProgressEvent +instanceKlass org/gradle/tooling/internal/protocol/events/InternalTransformDescriptor +instanceKlass org/gradle/internal/build/event/types/DefaultOperationDescriptor +instanceKlass org/gradle/tooling/internal/protocol/events/InternalOperationDescriptor +instanceKlass org/gradle/execution/plan/SelfExecutingNode +instanceKlass org/gradle/execution/plan/Node +instanceKlass org/gradle/tooling/internal/provider/runner/TransformOperationMapper +instanceKlass org/gradle/tooling/internal/provider/runner/BuildOperationMapper +instanceKlass org/gradle/tooling/internal/provider/runner/TaskOriginTracker +instanceKlass org/gradle/tooling/internal/provider/runner/ProjectConfigurationTracker +instanceKlass org/gradle/api/Task +instanceKlass org/gradle/api/plugins/ExtensionAware +instanceKlass org/gradle/tooling/internal/provider/runner/TestTaskExecutionTracker +instanceKlass org/gradle/tooling/internal/protocol/events/InternalScriptPluginIdentifier +instanceKlass org/gradle/tooling/internal/protocol/events/InternalBinaryPluginIdentifier +instanceKlass org/gradle/tooling/internal/protocol/events/InternalPluginIdentifier +instanceKlass org/gradle/tooling/internal/provider/runner/PluginApplicationTracker +instanceKlass org/gradle/tooling/internal/provider/runner/BuildOperationTracker +instanceKlass org/gradle/tooling/internal/provider/runner/OperationDependenciesResolver +instanceKlass org/gradle/tooling/internal/provider/runner/ProgressEventConsumer +instanceKlass org/gradle/internal/buildtree/BuildActionModelRequirements +instanceKlass org/gradle/launcher/exec/BuildTreeLifecycleBuildActionExecutor +instanceKlass org/gradle/launcher/exec/RunAsBuildOperationBuildActionExecutor$2 +instanceKlass org/gradle/launcher/exec/RunAsBuildOperationBuildActionExecutor$1 +instanceKlass org/gradle/launcher/exec/RunBuildBuildOperationType$Result +instanceKlass org/gradle/launcher/exec/RunBuildBuildOperationType$Details +instanceKlass org/gradle/launcher/exec/RunAsBuildOperationBuildActionExecutor +instanceKlass org/gradle/launcher/exec/RunAsWorkerThreadBuildActionExecutor +instanceKlass org/gradle/internal/filewatch/FileWatcherEventListener +instanceKlass org/gradle/execution/CancellableOperationManager +instanceKlass org/gradle/tooling/internal/provider/ContinuousBuildActionExecutor +instanceKlass org/gradle/tooling/internal/provider/SubscribableBuildActionExecutor +instanceKlass org/gradle/internal/scripts/ScriptingLanguages$1 +instanceKlass org/gradle/scripts/ScriptingLanguage +instanceKlass org/gradle/internal/scripts/ScriptingLanguages +instanceKlass org/gradle/BuildAdapter +instanceKlass org/gradle/internal/InternalBuildListener +instanceKlass org/gradle/internal/InternalListener +instanceKlass org/gradle/internal/operations/notify/BuildOperationNotificationBridge$1 +instanceKlass org/gradle/BuildListener +instanceKlass org/gradle/deployment/internal/DefaultDeploymentRegistry$PendingChanges +instanceKlass org/gradle/initialization/ContinuousExecutionGate$GateKeeper +instanceKlass org/gradle/initialization/DefaultContinuousExecutionGate +instanceKlass org/gradle/internal/operations/CallableBuildOperation +instanceKlass org/gradle/initialization/ContinuousExecutionGate +instanceKlass org/gradle/api/file/SourceDirectorySet +instanceKlass org/gradle/api/internal/model/DefaultObjectFactory +instanceKlass org/gradle/api/internal/model/NamedObjectInstantiator$$Lambda$92 +instanceKlass org/gradle/internal/state/Managed +instanceKlass com/google/common/base/ExtraObjectsMethodsForWeb +instanceKlass org/gradle/model/internal/inspect/ValidationProblemCollector +instanceKlass org/gradle/api/internal/MutationGuards$1 +instanceKlass org/gradle/api/internal/MutationGuard +instanceKlass org/gradle/api/internal/MutationGuards +instanceKlass org/gradle/api/internal/CollectionCallbackActionDecorator$1 +instanceKlass org/gradle/api/internal/collections/DefaultDomainObjectCollectionFactory +instanceKlass org/gradle/api/file/Directory +instanceKlass org/gradle/api/file/RegularFile +instanceKlass org/gradle/api/file/FileSystemLocation +instanceKlass org/gradle/api/internal/tasks/DefaultTaskDependencyFactory +instanceKlass org/gradle/api/internal/file/FileCollectionInternal$1 +instanceKlass org/gradle/api/tasks/TaskDependency +instanceKlass org/gradle/api/internal/file/FileCollectionStructureVisitor +instanceKlass org/gradle/api/file/FileVisitor +instanceKlass org/gradle/api/internal/file/FileCollectionInternal$Source +instanceKlass org/gradle/api/internal/file/AbstractFileCollection +instanceKlass org/gradle/api/internal/file/FileTreeInternal +instanceKlass org/gradle/api/internal/file/collections/MinimalFileTree +instanceKlass org/gradle/api/internal/file/collections/MinimalFileCollection +instanceKlass org/gradle/api/internal/file/DefaultFileCollectionFactory +instanceKlass org/gradle/internal/exceptions/DiagnosticsVisitor +instanceKlass org/gradle/internal/typeconversion/ErrorHandlingNotationParser +instanceKlass org/gradle/internal/typeconversion/NotationConvertResult +instanceKlass org/gradle/internal/typeconversion/NotationConverterToNotationParserAdapter +instanceKlass org/gradle/internal/typeconversion/TypeInfo +instanceKlass org/gradle/internal/typeconversion/NotationParserBuilder +instanceKlass org/gradle/api/internal/file/FileOrUriNotationConverter +instanceKlass org/gradle/api/internal/file/AbstractFileResolver +instanceKlass org/gradle/api/internal/provider/DefaultPropertyFactory +instanceKlass org/gradle/api/internal/provider/PropertyHost$$Lambda$91 +instanceKlass org/gradle/internal/state/ModelObject +instanceKlass org/gradle/api/internal/file/collections/DefaultDirectoryFileTreeFactory +instanceKlass org/gradle/api/tasks/util/internal/PatternSets$PatternSetFactory +instanceKlass org/gradle/api/tasks/util/internal/PatternSets +instanceKlass com/google/common/cache/LocalCache$AbstractReferenceEntry +instanceKlass org/gradle/cache/internal/HeapProportionalCacheSizer +instanceKlass org/gradle/internal/instantiation/generator/DefaultInstantiationScheme$DefaultDeserializationInstantiator +instanceKlass org/gradle/internal/instantiation/InstanceFactory +instanceKlass org/gradle/internal/instantiation/generator/DependencyInjectingInstantiator +instanceKlass javax/inject/Inject +instanceKlass org/gradle/internal/instantiation/DeserializationInstantiator +instanceKlass org/gradle/internal/instantiation/generator/DefaultInstantiationScheme +instanceKlass org/gradle/internal/instantiation/generator/ParamsMatchingConstructorSelector +instanceKlass org/gradle/internal/instantiation/generator/Jsr330ConstructorSelector +instanceKlass com/google/common/collect/ImmutableMultimap$Builder +instanceKlass com/google/common/collect/Multiset +instanceKlass org/gradle/internal/instantiation/generator/AbstractClassGenerator$$Lambda$90 +instanceKlass org/gradle/internal/instantiation/generator/AbstractClassGenerator$GeneratedClassImpl +instanceKlass org/gradle/internal/instantiation/generator/ClassGenerator$GeneratedClass +instanceKlass org/gradle/cache/internal/DefaultCrossBuildInMemoryCacheFactory$AbstractCrossBuildInMemoryCache +instanceKlass org/gradle/model/internal/asm/ClassGeneratorSuffixRegistry +instanceKlass org/gradle/api/DomainObjectSet +instanceKlass org/gradle/api/NamedDomainObjectContainer +instanceKlass org/gradle/util/Configurable +instanceKlass org/gradle/api/NamedDomainObjectSet +instanceKlass org/gradle/api/NamedDomainObjectCollection +instanceKlass org/gradle/api/DomainObjectCollection +instanceKlass org/gradle/api/file/DirectoryProperty +instanceKlass org/gradle/api/file/RegularFileProperty +instanceKlass org/gradle/api/file/FileSystemLocationProperty +instanceKlass org/gradle/api/provider/Property +instanceKlass org/gradle/api/provider/MapProperty +instanceKlass org/gradle/api/provider/SetProperty +instanceKlass org/gradle/api/provider/ListProperty +instanceKlass org/gradle/api/provider/HasMultipleValues +instanceKlass org/gradle/api/provider/Provider +instanceKlass org/gradle/api/file/ConfigurableFileTree +instanceKlass org/gradle/api/file/DirectoryTree +instanceKlass org/gradle/api/file/FileTree +instanceKlass org/gradle/api/file/ConfigurableFileCollection +instanceKlass org/gradle/api/provider/HasConfigurableValue +instanceKlass org/gradle/internal/instantiation/generator/AbstractClassGenerator$ClassInspectionVisitor +instanceKlass org/gradle/internal/instantiation/generator/AbstractClassGenerator$InstantiationStrategy +instanceKlass com/google/common/collect/AbstractMultimap +instanceKlass org/gradle/internal/instantiation/generator/AbstractClassGenerator$UnclaimedPropertyHandler +instanceKlass com/google/common/reflect/TypeCapture +instanceKlass org/gradle/internal/instantiation/generator/AbstractClassGenerator +instanceKlass org/gradle/internal/instantiation/generator/ClassGenerator +instanceKlass org/gradle/api/internal/tasks/properties/annotations/OutputPropertyRoleAnnotationHandler +instanceKlass org/gradle/internal/instantiation/generator/DefaultInstantiatorFactory$ClassGeneratorBackedManagedFactory +instanceKlass org/gradle/internal/instantiation/generator/ConstructorSelector +instanceKlass org/gradle/internal/instantiation/InstantiationScheme +instanceKlass org/gradle/internal/instantiation/generator/DefaultInstantiatorFactory +instanceKlass org/gradle/cache/internal/CrossBuildInMemoryCache +instanceKlass org/gradle/cache/internal/DefaultCrossBuildInMemoryCacheFactory +instanceKlass org/gradle/internal/filewatch/FileSystemChangeWaiter +instanceKlass org/gradle/internal/filewatch/DefaultFileSystemChangeWaiterFactory +instanceKlass org/gradle/internal/filewatch/DefaultFileWatcherFactory +instanceKlass org/gradle/api/execution/internal/TaskInputsListener +instanceKlass org/gradle/api/execution/internal/DefaultTaskInputsListeners +instanceKlass org/gradle/internal/operations/DefaultBuildOperationExecutor$$Lambda$89 +instanceKlass org/gradle/internal/operations/DefaultBuildOperationRunner$BuildOperationExecutionListenerFactory +instanceKlass org/gradle/internal/operations/DefaultBuildOperationExecutor$$Lambda$88 +instanceKlass org/gradle/internal/operations/DefaultBuildOperationRunner$TimeSupplier +instanceKlass org/gradle/internal/operations/DefaultBuildOperationRunner$1 +instanceKlass org/gradle/internal/operations/DefaultBuildOperationRunner$ReadableBuildOperationContext +instanceKlass org/gradle/internal/operations/BuildOperationContext +instanceKlass org/gradle/internal/operations/DefaultBuildOperationRunner$BuildOperationExecution +instanceKlass org/gradle/internal/operations/BuildOperation +instanceKlass org/gradle/internal/operations/BuildOperationWorker +instanceKlass org/gradle/internal/operations/DefaultBuildOperationRunner +instanceKlass org/gradle/internal/operations/BuildOperationQueue +instanceKlass org/gradle/internal/operations/DefaultBuildOperationQueueFactory +instanceKlass org/gradle/internal/operations/BuildOperationRef +instanceKlass org/gradle/internal/operations/BuildOperationQueue$QueueWorker +instanceKlass org/gradle/internal/operations/DefaultBuildOperationRunner$BuildOperationExecutionListener +instanceKlass org/gradle/internal/operations/DefaultBuildOperationExecutor +instanceKlass org/gradle/internal/resources/AbstractTrackedResourceLock +instanceKlass java/util/concurrent/atomic/AtomicReferenceArray +instanceKlass com/google/common/cache/LocalCache$LoadingValueReference +instanceKlass com/google/common/cache/RemovalListener +instanceKlass com/google/common/cache/Weigher +instanceKlass com/google/common/base/Equivalence +instanceKlass java/util/function/BiPredicate +instanceKlass com/google/common/base/MoreObjects +instanceKlass com/google/common/cache/LocalCache$1 +instanceKlass com/google/common/cache/ReferenceEntry +instanceKlass com/google/common/cache/CacheLoader +instanceKlass com/google/common/cache/LocalCache$LocalManualCache +instanceKlass com/google/common/cache/LocalCache$ValueReference +instanceKlass com/google/common/cache/CacheBuilder$2 +instanceKlass com/google/common/cache/CacheStats +instanceKlass com/google/common/base/Suppliers$SupplierOfInstance +instanceKlass com/google/common/base/Suppliers +instanceKlass com/google/common/cache/CacheBuilder$1 +instanceKlass com/google/common/cache/AbstractCache$StatsCounter +instanceKlass com/google/common/cache/LoadingCache +instanceKlass com/google/common/cache/Cache +instanceKlass com/google/common/base/Ticker +instanceKlass com/google/common/base/Supplier +instanceKlass com/google/common/cache/CacheBuilder +instanceKlass org/gradle/internal/resources/AbstractResourceLockRegistry$ResourceLockProducer +instanceKlass org/gradle/internal/resources/AbstractResourceLockRegistry +instanceKlass org/gradle/internal/resources/ResourceLockContainer +instanceKlass org/gradle/internal/resources/ResourceLockRegistry +instanceKlass org/gradle/internal/work/DefaultWorkerLeaseService$ProjectLockStatisticsImpl +instanceKlass org/gradle/internal/resources/ProjectLockStatistics +instanceKlass org/gradle/internal/work/DefaultWorkerLeaseService$Root +instanceKlass org/gradle/internal/resources/DefaultResourceLockCoordinationService +instanceKlass org/gradle/tooling/internal/provider/runner/ToolingApiBuildEventListenerFactory$1 +instanceKlass org/gradle/internal/operations/DefaultBuildOperationListenerManager$ProgressShieldingBuildOperationListener +instanceKlass org/gradle/internal/operations/DefaultBuildOperationAncestryTracker +instanceKlass org/gradle/internal/reflect/AnnotationCategory +instanceKlass org/gradle/language/java/internal/JavaLanguagePluginServiceRegistry$JavaGlobalScopeServices$$Lambda$87 +instanceKlass sun/invoke/util/VerifyAccess$1 +instanceKlass org/gradle/internal/session/BuildSessionLifecycleListener +instanceKlass org/gradle/internal/session/DefaultBuildSessionContext +instanceKlass org/gradle/internal/session/BuildSessionContext +instanceKlass org/gradle/internal/scopeids/PersistentScopeIdStoreFactory +instanceKlass org/gradle/internal/scopeids/ScopeIdsServices +instanceKlass com/google/common/collect/ListMultimap +instanceKlass org/gradle/internal/work/DefaultAsyncWorkTracker +instanceKlass org/gradle/internal/work/AsyncWorkTracker +instanceKlass org/gradle/internal/exceptions/FailureResolutionAware +instanceKlass org/gradle/internal/model/StateTransitionControllerFactory +instanceKlass org/gradle/internal/model/ValueCalculator +instanceKlass org/gradle/internal/model/CalculatedValueContainerFactory +instanceKlass org/gradle/plugin/use/internal/InjectedPluginClasspath +instanceKlass org/gradle/configurationcache/DefaultBuildTreeModelControllerServices +instanceKlass org/gradle/api/artifacts/ModuleIdentifier +instanceKlass org/gradle/vcs/internal/resolver/PersistentVcsMetadataCache +instanceKlass org/gradle/vcs/internal/VcsDirectoryLayout +instanceKlass org/gradle/vcs/internal/VersionControlRepositoryConnectionFactory +instanceKlass org/gradle/vcs/internal/services/VersionControlServices$VersionControlBuildSessionServices +instanceKlass org/gradle/nativeplatform/toolchain/internal/gcc/metadata/SystemLibraryDiscovery +instanceKlass org/gradle/nativeplatform/toolchain/internal/xcode/AbstractLocator +instanceKlass org/gradle/nativeplatform/toolchain/internal/msvcpp/WindowsKitInstall +instanceKlass com/google/common/collect/SetMultimap +instanceKlass com/google/common/collect/Multimap +instanceKlass org/gradle/platform/base/internal/toolchain/SearchResult +instanceKlass org/gradle/platform/base/internal/toolchain/ToolSearchResult +instanceKlass org/gradle/nativeplatform/toolchain/internal/msvcpp/AbstractWindowsKitComponentLocator +instanceKlass org/gradle/nativeplatform/toolchain/internal/msvcpp/UcrtLocator +instanceKlass org/gradle/nativeplatform/toolchain/internal/msvcpp/version/SystemPathVersionLocator +instanceKlass org/gradle/nativeplatform/toolchain/internal/msvcpp/version/AbstractVisualStudioVersionLocator +instanceKlass org/gradle/nativeplatform/toolchain/internal/msvcpp/WindowsSdkLocator +instanceKlass org/gradle/nativeplatform/toolchain/internal/msvcpp/version/VisualStudioMetaDataProvider +instanceKlass org/gradle/nativeplatform/toolchain/internal/msvcpp/version/VswhereVersionLocator +instanceKlass org/gradle/nativeplatform/toolchain/internal/msvcpp/version/VisualCppMetadataProvider +instanceKlass org/gradle/nativeplatform/toolchain/internal/msvcpp/VisualStudioLocator +instanceKlass org/gradle/nativeplatform/toolchain/internal/msvcpp/WindowsComponentLocator +instanceKlass org/gradle/nativeplatform/toolchain/internal/msvcpp/version/VisualStudioVersionLocator +instanceKlass org/gradle/nativeplatform/internal/services/NativeBinaryServices$BuildSessionScopeServices +instanceKlass org/gradle/composite/internal/CompositeBuildServices$CompositeBuildSessionScopeServices +instanceKlass org/gradle/api/tasks/testing/TestDescriptor +instanceKlass org/gradle/api/internal/tasks/testing/operations/TestListenerBuildOperationAdapter +instanceKlass org/gradle/api/internal/tasks/testing/results/TestListenerInternal +instanceKlass org/gradle/api/internal/tasks/testing/operations/TestExecutionBuildOperationBuildSessionScopeServices +instanceKlass org/gradle/api/internal/catalog/DependenciesAccessorsWorkspaceProvider +instanceKlass org/gradle/internal/execution/workspace/WorkspaceProvider +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/ComponentSelectionDescriptorFactory +instanceKlass org/gradle/api/internal/artifacts/DependencyManagementBuildSessionScopeServices +instanceKlass org/gradle/api/internal/file/FileCollectionInternal +instanceKlass org/gradle/api/internal/tasks/TaskDependencyContainer +instanceKlass org/gradle/api/file/FileCollection +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/ArtifactVisitor +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/ArtifactSetToFileCollectionFactory +instanceKlass org/gradle/workers/internal/WorkerExecutionQueueFactory +instanceKlass org/gradle/process/internal/worker/child/WorkerDirectoryProvider +instanceKlass org/gradle/internal/work/ConditionalExecutionQueueFactory +instanceKlass org/gradle/workers/internal/WorkersServices$BuildSessionScopeServices +instanceKlass org/gradle/internal/vfs/impl/DefaultFileSystemAccess +instanceKlass org/gradle/internal/fingerprint/impl/FileCollectionFingerprinterRegistrations +instanceKlass org/gradle/internal/execution/OutputSnapshotter +instanceKlass org/gradle/internal/execution/fingerprint/InputFingerprinter +instanceKlass org/gradle/internal/execution/fingerprint/FileCollectionFingerprinterRegistry +instanceKlass org/gradle/internal/service/scopes/VirtualFileSystemServices$BuildSessionServices +instanceKlass org/gradle/internal/build/BuildLayoutValidator +instanceKlass org/gradle/internal/buildtree/BuildTreeModelControllerServices +instanceKlass org/gradle/internal/session/BuildSessionActionExecutor +instanceKlass org/gradle/tooling/internal/provider/LauncherServices$ToolingBuildSessionScopeServices +instanceKlass org/gradle/internal/service/DefaultServiceRegistry$CollectionService +instanceKlass org/gradle/internal/service/DefaultServiceRegistry$CollectingVisitor +instanceKlass sun/reflect/generics/tree/VoidDescriptor +instanceKlass org/gradle/internal/snapshot/impl/ValueSnapshotterSerializerRegistry +instanceKlass org/gradle/internal/session/BuildSessionScopeServices$CrossBuildFileHashCacheWrapper +instanceKlass org/gradle/cache/internal/CleanupActionFactory +instanceKlass org/gradle/api/internal/FeaturePreviews +instanceKlass org/gradle/api/internal/attributes/DefaultImmutableAttributesFactory +instanceKlass org/gradle/api/internal/attributes/ImmutableAttributesFactory +instanceKlass org/gradle/deployment/internal/DefaultDeploymentRegistry +instanceKlass org/gradle/internal/filewatch/PendingChangesListener +instanceKlass org/gradle/deployment/internal/DeploymentRegistryInternal +instanceKlass org/gradle/deployment/internal/DeploymentRegistry +instanceKlass org/gradle/internal/filewatch/PendingChangesManager +instanceKlass org/gradle/internal/buildevents/BuildStartedTime +instanceKlass org/gradle/internal/scopeids/id/ScopeId +instanceKlass org/gradle/internal/scopeids/PersistentScopeIdLoader +instanceKlass org/gradle/initialization/layout/ProjectCacheDir +instanceKlass org/gradle/initialization/SettingsLocation +instanceKlass org/gradle/api/internal/tasks/userinput/UserInputReader +instanceKlass org/gradle/api/internal/tasks/userinput/UserInputHandler +instanceKlass org/gradle/internal/hash/ChecksumService +instanceKlass org/gradle/api/internal/project/CrossProjectConfigurator +instanceKlass org/gradle/cache/scopes/BuildTreeScopedCache +instanceKlass org/gradle/internal/snapshot/ValueSnapshotter +instanceKlass org/gradle/internal/service/scopes/WorkerSharedBuildSessionScopeServices +instanceKlass org/gradle/internal/service/scopes/DefaultGradleUserHomeScopeServiceRegistry$Services +instanceKlass org/gradle/api/internal/tasks/compile/incremental/cache/UserHomeScopedCompileCaches +instanceKlass org/gradle/api/internal/tasks/compile/incremental/cache/GeneralCompileCaches +instanceKlass org/gradle/api/internal/tasks/CompileServices$UserHomeScopeServices +instanceKlass org/gradle/kotlin/dsl/provider/plugins/DefaultProjectSchemaProvider +instanceKlass org/gradle/kotlin/dsl/accessors/ProjectSchemaProvider +instanceKlass org/gradle/kotlin/dsl/provider/plugins/DefaultKotlinScriptBasePluginsApplicator +instanceKlass org/gradle/kotlin/dsl/provider/KotlinScriptBasePluginsApplicator +instanceKlass org/gradle/kotlin/dsl/provider/plugins/precompiled/DefaultPrecompiledScriptPluginsSupport +instanceKlass org/gradle/kotlin/dsl/provider/PrecompiledScriptPluginsSupport +instanceKlass org/gradle/kotlin/dsl/provider/plugins/GradleUserHomeServices +instanceKlass org/gradle/api/internal/artifacts/transform/ImmutableTransformationWorkspaceServices +instanceKlass org/gradle/api/internal/artifacts/transform/TransformationWorkspaceServices +instanceKlass org/gradle/internal/execution/history/ExecutionHistoryCacheAccess +instanceKlass org/gradle/internal/execution/history/ExecutionHistoryStore +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ArtifactCachesProvider +instanceKlass org/gradle/api/internal/artifacts/ivyservice/DefaultArtifactCaches$WritableArtifactCacheLockingParameters +instanceKlass org/gradle/api/internal/artifacts/DependencyManagementGradleUserHomeScopeServices +instanceKlass org/gradle/workers/internal/WorkerDaemonClientsManager +instanceKlass org/gradle/workers/internal/ClassLoaderStructureProvider +instanceKlass org/gradle/workers/internal/ActionExecutionSpecFactory +instanceKlass org/gradle/workers/internal/WorkersServices$GradleUserHomeServices +instanceKlass org/gradle/kotlin/dsl/provider/KotlinScriptClassloadingCache +instanceKlass org/gradle/kotlin/dsl/provider/GradleUserHomeServices +instanceKlass org/gradle/kotlin/dsl/support/EmbeddedKotlinProvider +instanceKlass org/gradle/kotlin/dsl/support/GradleUserHomeServices +instanceKlass org/gradle/kotlin/dsl/cache/KotlinDslWorkspaceProvider +instanceKlass org/gradle/kotlin/dsl/cache/GradleUserHomeServices +instanceKlass org/gradle/internal/build/BuildState +instanceKlass org/gradle/internal/watch/registry/FileWatcherRegistryFactory +instanceKlass org/gradle/internal/vfs/impl/VfsRootReference +instanceKlass org/gradle/api/internal/changedetection/state/CrossBuildFileHashCache +instanceKlass org/gradle/internal/watch/vfs/impl/LocationsWrittenByCurrentBuild +instanceKlass org/gradle/internal/vfs/FileSystemAccess$WriteListener +instanceKlass org/gradle/internal/fingerprint/GenericFileTreeSnapshotter +instanceKlass org/gradle/internal/fingerprint/classpath/ClasspathFingerprinter +instanceKlass org/gradle/internal/execution/fingerprint/FileCollectionFingerprinter +instanceKlass org/gradle/internal/watch/vfs/BuildLifecycleAwareVirtualFileSystem +instanceKlass org/gradle/internal/vfs/VirtualFileSystem +instanceKlass org/gradle/internal/execution/fingerprint/FileCollectionSnapshotter +instanceKlass org/gradle/internal/hash/FileHasher +instanceKlass org/gradle/internal/watch/vfs/WatchableFileSystemDetector +instanceKlass org/gradle/api/internal/changedetection/state/ResourceSnapshotterCacheService +instanceKlass org/gradle/internal/service/scopes/VirtualFileSystemServices$GradleUserHomeServices +instanceKlass org/gradle/tooling/internal/provider/serialization/PayloadSerializer +instanceKlass org/gradle/tooling/internal/provider/serialization/PayloadClassLoaderFactory +instanceKlass org/gradle/tooling/internal/provider/serialization/PayloadClassLoaderRegistry +instanceKlass org/gradle/tooling/internal/provider/LauncherServices$ToolingGradleUserHomeScopeServices +instanceKlass org/gradle/internal/service/DefaultServiceRegistry$InstanceUnpackingVisitor +instanceKlass org/gradle/internal/classpath/ClasspathFileTransformer +instanceKlass org/gradle/internal/classpath/CachedClasspathTransformer$Transform +instanceKlass org/gradle/internal/classpath/DefaultCachedClasspathTransformer +instanceKlass org/gradle/internal/classpath/CachedClasspathTransformer +instanceKlass org/gradle/api/internal/changedetection/state/FileTimeStampInspector +instanceKlass org/gradle/initialization/RootBuildLifecycleListener +instanceKlass org/gradle/cache/CleanupAction +instanceKlass org/gradle/cache/internal/FilesFinder +instanceKlass org/gradle/internal/file/FileAccessTracker +instanceKlass org/gradle/internal/classpath/DefaultClasspathTransformerCacheFactory +instanceKlass org/gradle/internal/classpath/ClasspathTransformerCacheFactory +instanceKlass org/gradle/internal/classpath/ClasspathBuilder$EntryBuilder +instanceKlass org/gradle/internal/classpath/ClasspathBuilder +instanceKlass org/gradle/internal/classpath/ClasspathEntryVisitor$Entry +instanceKlass org/gradle/internal/classpath/ClasspathWalker +instanceKlass org/gradle/cache/internal/DirectoryCleanupAction +instanceKlass org/gradle/cache/CleanupProgressMonitor +instanceKlass org/gradle/cache/internal/GradleUserHomeCleanupService +instanceKlass org/gradle/cache/internal/VersionSpecificCacheDirectoryScanner +instanceKlass org/gradle/cache/internal/UsedGradleVersionsFromGradleUserHomeCaches +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$BMH +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/internal/service/scopes/WorkerSharedGlobalScopeServices$$Lambda$86 +instanceKlass org/gradle/internal/service/scopes/WorkerSharedGlobalScopeServices$$Lambda$85 +instanceKlass java/util/function/LongSupplier +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/internal/file/impl/DefaultDeleter +instanceKlass org/gradle/cache/internal/scopes/DefaultCacheScopeMapping +instanceKlass org/gradle/cache/CacheBuilder +instanceKlass org/gradle/cache/internal/DefaultCacheRepository +instanceKlass org/gradle/cache/internal/ReferencablePersistentCache +instanceKlass org/gradle/cache/PersistentCache +instanceKlass org/gradle/cache/CleanableStore +instanceKlass org/gradle/cache/CacheAccess +instanceKlass org/gradle/cache/internal/DefaultCacheFactory +instanceKlass org/gradle/internal/logging/services/ProgressLoggingBridge +instanceKlass org/gradle/internal/logging/progress/ProgressLogger +instanceKlass org/gradle/internal/logging/progress/DefaultProgressLoggerFactory +instanceKlass org/gradle/internal/operations/DefaultBuildOperationIdFactory +instanceKlass org/gradle/internal/service/scopes/DefaultGradleUserHomeScopeServiceRegistry$1$$Lambda$84 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/cache/internal/UsedGradleVersions +instanceKlass org/gradle/cache/internal/GradleUserHomeCleanupServices +instanceKlass org/gradle/internal/vfs/FileSystemAccess +instanceKlass org/gradle/initialization/ClassLoaderScopeRegistryListenerManager +instanceKlass org/gradle/cache/internal/DefaultGeneratedGradleJarCache +instanceKlass org/gradle/cache/internal/GeneratedGradleJarCache +instanceKlass org/gradle/groovy/scripts/internal/CrossBuildInMemoryCachingScriptClassCache +instanceKlass org/gradle/cache/internal/scopes/AbstractScopedCache +instanceKlass org/gradle/cache/scopes/GlobalScopedCache +instanceKlass org/gradle/initialization/layout/GlobalCacheDir +instanceKlass org/gradle/internal/classloader/ClasspathHasher +instanceKlass org/gradle/process/internal/worker/child/WorkerProcessClassPathProvider +instanceKlass org/gradle/internal/jvm/JavaModuleDetector +instanceKlass org/gradle/internal/service/scopes/DefaultGradleUserHomeScopeServiceRegistry$1 +instanceKlass org/gradle/internal/session/BuildSessionState +instanceKlass org/gradle/internal/operations/trace/SerializedOperation +instanceKlass org/gradle/internal/operations/trace/BuildOperationTrace$1 +instanceKlass org/gradle/internal/operations/DefaultBuildOperationListenerManager$1 +instanceKlass org/gradle/internal/operations/DefaultBuildOperationListenerManager +instanceKlass org/gradle/internal/work/DefaultWorkerLeaseService$LeaseHolder +instanceKlass org/gradle/internal/work/WorkerLeaseRegistry$WorkerLeaseCompletion +instanceKlass org/gradle/internal/work/WorkerLeaseRegistry$WorkerLease +instanceKlass org/gradle/internal/resources/ResourceLock +instanceKlass org/gradle/internal/work/Synchronizer +instanceKlass org/gradle/internal/work/DefaultWorkerLeaseService +instanceKlass org/gradle/internal/operations/trace/BuildOperationTrace +instanceKlass org/gradle/internal/work/WorkerLeaseService +instanceKlass org/gradle/internal/work/WorkerThreadRegistry +instanceKlass org/gradle/internal/resources/ProjectLeaseRegistry +instanceKlass org/gradle/internal/work/WorkerLeaseRegistry +instanceKlass org/gradle/internal/operations/notify/BuildOperationNotificationValve +instanceKlass org/gradle/internal/operations/notify/BuildOperationNotificationBridge +instanceKlass org/gradle/internal/operations/notify/BuildOperationNotificationListenerRegistrar +instanceKlass org/gradle/internal/operations/logging/LoggingBuildOperationProgressBroadcaster +instanceKlass org/gradle/configuration/internal/UserCodeApplicationContext +instanceKlass org/gradle/internal/operations/BuildOperationExecutor +instanceKlass org/gradle/internal/operations/BuildOperationRunner +instanceKlass org/gradle/internal/operations/BuildOperationQueueFactory +instanceKlass org/gradle/configuration/internal/ListenerBuildOperationDecorator +instanceKlass org/gradle/api/internal/CollectionCallbackActionDecorator +instanceKlass org/gradle/internal/session/CrossBuildSessionState$Services +instanceKlass org/gradle/internal/service/ServiceRegistryBuilder +instanceKlass org/gradle/internal/session/CrossBuildSessionState +instanceKlass org/gradle/tooling/internal/provider/BuildSessionLifecycleBuildActionExecuter$ActionImpl +instanceKlass org/gradle/tooling/internal/protocol/ModelIdentifier +instanceKlass org/gradle/tooling/internal/protocol/InternalProtocolInterface +instanceKlass org/gradle/internal/logging/sink/OutputEventRenderer$3 +instanceKlass org/gradle/internal/logging/sink/ProgressLogEventGenerator +instanceKlass org/gradle/internal/logging/console/BuildLogLevelFilterRenderer +instanceKlass org/gradle/launcher/daemon/server/exec/ExecuteBuild$1 +instanceKlass org/gradle/initialization/DefaultBuildRequestMetaData +instanceKlass org/gradle/initialization/DefaultBuildRequestContext +instanceKlass org/gradle/launcher/daemon/server/exec/DaemonConnectionBackedEventConsumer +instanceKlass org/gradle/launcher/daemon/server/exec/WatchForDisconnection$1 +instanceKlass org/gradle/internal/featurelifecycle/LoggingIncubatingFeatureHandler +instanceKlass org/gradle/util/internal/IncubationLogger +instanceKlass org/gradle/internal/featurelifecycle/UsageLocationReporter +instanceKlass org/gradle/internal/featurelifecycle/FeatureUsage +instanceKlass org/gradle/internal/featurelifecycle/LoggingDeprecatedFeatureHandler +instanceKlass org/gradle/internal/featurelifecycle/FeatureHandler +instanceKlass org/gradle/internal/deprecation/DeprecationMessageBuilder +instanceKlass org/gradle/internal/deprecation/DeprecationLogger +instanceKlass org/gradle/launcher/daemon/server/exec/ForwardClientInput$2 +instanceKlass org/gradle/util/internal/StdinSwapper$2 +instanceKlass org/gradle/util/internal/StdinSwapper$1 +instanceKlass org/gradle/util/internal/Swapper +instanceKlass org/gradle/launcher/daemon/server/exec/ForwardClientInput$1 +instanceKlass java/math/MathContext +instanceKlass org/gradle/internal/util/NumberUtil +instanceKlass org/gradle/launcher/daemon/server/exec/LogToClient$AsynchronousLogDispatcher$1 +instanceKlass java/util/concurrent/CountDownLatch +instanceKlass jdk/internal/reflect/UnsafeFieldAccessorFactory +instanceKlass java/lang/reflect/AccessibleObject$$Lambda$83 +instanceKlass com/google/common/collect/AbstractIterator$1 +instanceKlass java/util/Collections$UnmodifiableMap$UnmodifiableEntrySet$UnmodifiableEntry +instanceKlass java/util/Collections$UnmodifiableMap$UnmodifiableEntrySet$1 +instanceKlass org/gradle/launcher/daemon/server/DaemonStateCoordinator$1 +instanceKlass org/gradle/launcher/daemon/registry/PersistentDaemonRegistry$5 +instanceKlass org/gradle/launcher/daemon/server/exec/StartBuildOrRespondWithBusy$1 +instanceKlass org/gradle/launcher/daemon/server/DefaultDaemonConnection$CommandQueue$1 +instanceKlass org/gradle/launcher/daemon/server/exec/HandleCancel$1 +instanceKlass com/google/common/collect/Platform +instanceKlass org/gradle/launcher/daemon/server/api/DaemonCommandExecution +instanceKlass java/lang/Long$LongCache +instanceKlass org/gradle/launcher/exec/DefaultBuildActionParameters +instanceKlass org/gradle/configuration/GradleLauncherMetaData +instanceKlass com/google/common/collect/Maps$EntryTransformer +instanceKlass com/google/common/base/Converter +instanceKlass com/google/common/collect/SortedMapDifference +instanceKlass com/google/common/collect/MapDifference +instanceKlass com/google/common/collect/Maps +instanceKlass java/util/AbstractMap$SimpleImmutableEntry +instanceKlass com/google/common/collect/AbstractMapEntry +instanceKlass com/google/common/collect/ImmutableMap$Builder +instanceKlass com/google/common/collect/BiMap +instanceKlass com/google/common/collect/ImmutableMap +instanceKlass org/gradle/internal/DefaultTaskExecutionRequest +instanceKlass org/gradle/TaskExecutionRequest +instanceKlass com/google/common/collect/CollectPreconditions +instanceKlass org/gradle/internal/buildoption/BuildOption$Value +instanceKlass org/gradle/internal/concurrent/DefaultParallelismConfiguration +instanceKlass org/gradle/internal/logging/DefaultLoggingConfiguration +instanceKlass org/gradle/initialization/BuildLayoutParameters +instanceKlass java/nio/channels/spi/AbstractSelector$1 +instanceKlass sun/nio/ch/WindowsSelectorImpl$MapEntry +instanceKlass org/gradle/launcher/daemon/server/DefaultDaemonConnection$1 +instanceKlass org/gradle/launcher/daemon/server/DefaultDaemonConnection$ReceiveQueue +instanceKlass org/gradle/launcher/daemon/server/DefaultDaemonConnection$DisconnectQueue +instanceKlass org/gradle/launcher/daemon/server/DefaultDaemonConnection$CommandQueue +instanceKlass org/gradle/launcher/daemon/server/DefaultDaemonConnection +instanceKlass org/gradle/launcher/daemon/server/api/DaemonConnection +instanceKlass org/gradle/launcher/daemon/server/DefaultIncomingConnectionHandler$ConnectionWorker +instanceKlass org/gradle/launcher/daemon/server/SynchronizedDispatchConnection +instanceKlass org/gradle/internal/serialize/Serializers$StatefulSerializerAdapter$2 +instanceKlass org/gradle/internal/serialize/Serializers$StatefulSerializerAdapter$1 +instanceKlass org/gradle/internal/remote/internal/inet/SocketInetAddress$Serializer +instanceKlass org/gradle/internal/io/BufferCaster +instanceKlass java/lang/invoke/ConstantBootstraps +instanceKlass java/util/concurrent/atomic/AtomicReferenceFieldUpdater$AtomicReferenceFieldUpdaterImpl$1 +instanceKlass java/util/concurrent/atomic/AtomicReferenceFieldUpdater +instanceKlass sun/nio/ch/OptionKey +instanceKlass sun/nio/ch/SocketOptionRegistry$LazyInitialization +instanceKlass sun/nio/ch/SocketOptionRegistry$RegistryKey +instanceKlass sun/nio/ch/SocketOptionRegistry +instanceKlass java/util/stream/Collectors$$Lambda$82 +instanceKlass java/util/stream/Collectors$$Lambda$81 +instanceKlass java/util/stream/Collectors$$Lambda$80 +instanceKlass java/util/stream/Collectors$$Lambda$79 +instanceKlass sun/net/ext/ExtendedSocketOptions$$Lambda$78 +instanceKlass sun/nio/ch/ExtendedSocketOption$1 +instanceKlass sun/nio/ch/ExtendedSocketOption +instanceKlass sun/nio/ch/SocketChannelImpl$DefaultOptionsHolder +instanceKlass java/nio/BufferMismatch +instanceKlass sun/nio/ch/IOStatus +instanceKlass sun/nio/ch/Util$BufferCache +instanceKlass sun/nio/ch/PipeImpl$Initializer$LoopbackConnector +instanceKlass sun/nio/ch/PipeImpl$Initializer +instanceKlass java/nio/channels/Pipe +instanceKlass sun/nio/ch/NativeObject +instanceKlass sun/nio/ch/PollArrayWrapper +instanceKlass sun/nio/ch/WindowsSelectorImpl$FinishLock +instanceKlass sun/nio/ch/WindowsSelectorImpl$StartLock +instanceKlass sun/nio/ch/WindowsSelectorImpl$SubSelector +instanceKlass java/nio/channels/SelectionKey +instanceKlass sun/nio/ch/Util$2 +instanceKlass sun/nio/ch/Util +instanceKlass java/nio/channels/Selector +instanceKlass java/nio/DirectByteBuffer$Deallocator +instanceKlass org/gradle/internal/remote/internal/KryoBackedMessageSerializer +instanceKlass org/gradle/internal/remote/internal/inet/SocketConnection +instanceKlass org/gradle/internal/serialize/ObjectWriter +instanceKlass org/gradle/internal/serialize/ObjectReader +instanceKlass org/gradle/internal/serialize/Serializers$StatefulSerializerAdapter +instanceKlass org/gradle/internal/serialize/StatefulSerializer +instanceKlass org/gradle/internal/serialize/Serializers +instanceKlass org/gradle/internal/remote/internal/RemoteConnection +instanceKlass org/gradle/internal/remote/internal/Connection +instanceKlass org/gradle/internal/dispatch/Receive +instanceKlass org/gradle/internal/remote/internal/MessageSerializer +instanceKlass org/gradle/internal/remote/internal/inet/SocketConnectCompletion +instanceKlass org/gradle/internal/remote/internal/ConnectCompletion +instanceKlass org/gradle/launcher/daemon/server/DaemonStateCoordinator$2 +instanceKlass org/gradle/launcher/daemon/server/Daemon$DefaultDaemonExpirationListener +instanceKlass org/gradle/launcher/daemon/server/Daemon$DaemonExpirationPeriodicCheck +instanceKlass java/net/Socket +instanceKlass org/gradle/launcher/daemon/server/DaemonRegistryUnavailableExpirationStrategy +instanceKlass org/gradle/internal/event/DefaultListenerManager$ListenerDetails +instanceKlass org/gradle/launcher/daemon/server/health/LowMemoryDaemonExpirationStrategy +instanceKlass org/gradle/process/internal/health/memory/OsMemoryStatusListener +instanceKlass org/gradle/launcher/daemon/server/NotMostRecentlyUsedDaemonExpirationStrategy +instanceKlass com/google/common/base/Functions$ConstantFunction +instanceKlass com/google/common/base/Functions +instanceKlass org/gradle/launcher/daemon/server/DaemonIdleTimeoutExpirationStrategy +instanceKlass org/gradle/launcher/daemon/context/DaemonCompatibilitySpec +instanceKlass org/gradle/api/internal/specs/ExplainingSpec +instanceKlass org/gradle/launcher/daemon/server/CompatibleDaemonExpirationStrategy +instanceKlass org/gradle/launcher/daemon/server/expiry/AllDaemonExpirationStrategy +instanceKlass org/gradle/internal/stream/EncodedStream +instanceKlass org/gradle/launcher/daemon/bootstrap/DaemonStartupCommunication +instanceKlass org/gradle/cache/internal/DefaultFileLockManager$DefaultFileLock$3 +instanceKlass org/gradle/cache/internal/DefaultFileLockManager$DefaultFileLock$2 +instanceKlass org/gradle/cache/internal/DefaultFileLockManager$DefaultFileLock$1 +instanceKlass java/io/FileOutputStream$1 +instanceKlass org/gradle/internal/remote/internal/inet/SocketInetAddress +instanceKlass org/gradle/internal/serialize/AbstractEncoder +instanceKlass org/gradle/internal/serialize/FlushableEncoder +instanceKlass org/gradle/launcher/daemon/registry/DaemonRegistryContent$$Lambda$77 +instanceKlass org/gradle/launcher/daemon/registry/DaemonStopEvent$Serializer +instanceKlass org/gradle/launcher/daemon/registry/DaemonStopEvent +instanceKlass org/gradle/launcher/daemon/registry/DaemonInfo$Serializer +instanceKlass org/gradle/cache/internal/filelock/LockInfo +instanceKlass org/gradle/cache/internal/DefaultFileLockManager$DefaultFileLock$$Lambda$76 +instanceKlass org/gradle/cache/internal/filelock/DefaultLockStateSerializer$SequenceNumberLockState +instanceKlass org/gradle/internal/io/IOQuery$Result +instanceKlass org/gradle/cache/internal/filelock/FileLockOutcome +instanceKlass org/gradle/cache/internal/DefaultFileLockManager$DefaultFileLock$4 +instanceKlass org/gradle/internal/io/ExponentialBackoff +instanceKlass org/gradle/cache/internal/DefaultFileLockManager$AwaitableFileLockReleasedSignal +instanceKlass org/gradle/cache/FileLockReleasedSignal +instanceKlass org/gradle/cache/internal/filelock/LockInfoSerializer +instanceKlass org/gradle/cache/internal/filelock/LockInfoAccess +instanceKlass org/gradle/cache/internal/filelock/LockStateAccess +instanceKlass org/gradle/cache/internal/filelock/LockFileAccess +instanceKlass org/gradle/cache/internal/filelock/LockState +instanceKlass org/gradle/cache/internal/filelock/DefaultLockStateSerializer +instanceKlass org/gradle/cache/FileLock$State +instanceKlass org/gradle/cache/internal/filelock/LockStateSerializer +instanceKlass org/gradle/internal/io/IOQuery +instanceKlass sun/net/ResourceManager +instanceKlass java/net/DatagramPacket +instanceKlass java/net/DatagramSocket$1 +instanceKlass java/net/AbstractPlainDatagramSocketImpl$1 +instanceKlass java/net/DatagramSocketImpl +instanceKlass java/net/DefaultDatagramSocketImplFactory +instanceKlass java/net/DatagramSocket +instanceKlass org/gradle/cache/internal/locklistener/FileLockCommunicator +instanceKlass org/gradle/cache/internal/filelock/LockOptionsBuilder +instanceKlass org/gradle/cache/internal/SimpleStateCache$1Updater +instanceKlass org/gradle/cache/internal/FileIntegrityViolationSuppressingPersistentStateCacheDecorator$1 +instanceKlass org/gradle/launcher/daemon/registry/PersistentDaemonRegistry$8 +instanceKlass org/gradle/launcher/daemon/registry/DaemonInfo +instanceKlass org/gradle/launcher/daemon/context/DaemonConnectDetails +instanceKlass sun/util/resources/provider/NonBaseLocaleDataMetaInfo +instanceKlass sun/util/locale/provider/JRELocaleProviderAdapter$$Lambda$75 +instanceKlass sun/util/locale/provider/BaseLocaleDataMetaInfo +instanceKlass sun/util/locale/provider/JRELocaleProviderAdapter$$Lambda$74 +instanceKlass sun/util/cldr/CLDRLocaleProviderAdapter$$Lambda$73 +instanceKlass sun/util/locale/provider/TimeZoneNameUtility$TimeZoneNameGetter +instanceKlass sun/util/locale/provider/TimeZoneNameUtility +instanceKlass org/gradle/internal/remote/internal/inet/TcpIncomingConnector$1 +instanceKlass org/gradle/internal/remote/internal/inet/TcpIncomingConnector$Receiver +instanceKlass org/gradle/internal/remote/internal/inet/MultiChoiceAddress +instanceKlass org/gradle/internal/remote/internal/inet/InetEndpoint +instanceKlass java/util/UUID$Holder +instanceKlass java/util/UUID +instanceKlass sun/net/NetHooks +instanceKlass java/net/InetSocketAddress$InetSocketAddressHolder +instanceKlass java/net/Inet4AddressImpl +instanceKlass org/gradle/internal/remote/internal/inet/InetAddresses +instanceKlass java/net/AbstractPlainSocketImpl$1 +instanceKlass java/net/StandardSocketOptions$StdSocketOption +instanceKlass java/net/StandardSocketOptions +instanceKlass java/net/SocketImpl +instanceKlass java/net/SocketOptions +instanceKlass java/net/SocksConsts +instanceKlass java/net/ServerSocket$2 +instanceKlass jdk/internal/access/JavaNetSocketAccess +instanceKlass java/net/ServerSocket +instanceKlass jdk/net/ExtendedSocketOptions$PlatformSocketOptions$1 +instanceKlass jdk/net/ExtendedSocketOptions$PlatformSocketOptions +instanceKlass jdk/net/SocketFlow +instanceKlass jdk/net/ExtendedSocketOptions$ExtSocketOption +instanceKlass java/net/SocketOption +instanceKlass jdk/net/ExtendedSocketOptions +instanceKlass sun/net/ext/ExtendedSocketOptions +instanceKlass sun/nio/ch/Net$1 +instanceKlass java/net/ProtocolFamily +instanceKlass sun/nio/ch/Net +instanceKlass sun/nio/ch/SelChImpl +instanceKlass sun/nio/ch/DefaultSelectorProvider +instanceKlass java/nio/channels/spi/SelectorProvider$1 +instanceKlass java/nio/channels/spi/SelectorProvider +instanceKlass java/nio/channels/NetworkChannel +instanceKlass org/gradle/launcher/daemon/server/DaemonTcpServerConnector$1 +instanceKlass org/gradle/launcher/daemon/server/Daemon$5 +instanceKlass org/gradle/launcher/daemon/server/DefaultIncomingConnectionHandler +instanceKlass org/gradle/initialization/DefaultBuildCancellationToken +instanceKlass java/util/concurrent/SynchronousQueue$TransferStack$SNode +instanceKlass java/util/concurrent/SynchronousQueue$Transferer +instanceKlass org/gradle/initialization/BuildCancellationToken +instanceKlass org/gradle/launcher/daemon/server/DaemonStateCoordinator +instanceKlass org/gradle/launcher/daemon/server/Daemon$4 +instanceKlass org/gradle/launcher/daemon/server/Daemon$3 +instanceKlass org/gradle/launcher/daemon/server/Daemon$2 +instanceKlass org/gradle/launcher/daemon/server/Daemon$1 +instanceKlass org/gradle/launcher/daemon/server/DaemonRegistryUpdater +instanceKlass sun/security/provider/AbstractDrbg$NonceProvider +instanceKlass sun/security/provider/AbstractDrbg$SeederHolder$$Lambda$72 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass sun/nio/fs/BasicFileAttributesHolder +instanceKlass sun/nio/fs/WindowsDirectoryStream$WindowsDirectoryIterator +instanceKlass sun/nio/fs/WindowsDirectoryStream +instanceKlass java/nio/file/DirectoryStream +instanceKlass java/nio/file/Files$AcceptAllFilter +instanceKlass java/nio/file/DirectoryStream$Filter +instanceKlass java/net/NetworkInterface$2 +instanceKlass java/net/DefaultInterface +instanceKlass java/net/Inet6Address$Inet6AddressHolder +instanceKlass java/net/InetAddress$PlatformNameService +instanceKlass java/net/InetAddress$NameService +instanceKlass java/net/Inet6AddressImpl +instanceKlass java/net/InetAddressImpl +instanceKlass java/net/InetAddressImplFactory +instanceKlass java/util/concurrent/ConcurrentSkipListMap$Node +instanceKlass java/util/concurrent/ConcurrentSkipListMap$Index +instanceKlass java/util/concurrent/ConcurrentNavigableMap +instanceKlass java/net/InetAddress$InetAddressHolder +instanceKlass java/net/InetAddress$2 +instanceKlass jdk/internal/access/JavaNetInetAddressAccess +instanceKlass java/net/InetAddress$1 +instanceKlass java/net/InetAddress +instanceKlass java/net/InterfaceAddress +instanceKlass java/net/NetworkInterface$1 +instanceKlass java/net/NetworkInterface +instanceKlass sun/nio/cs/StringUTF16 +instanceKlass sun/security/provider/ByteArrayAccess +instanceKlass sun/security/provider/SeedGenerator$1 +instanceKlass sun/security/util/MessageDigestSpi2 +instanceKlass sun/security/jca/GetInstance$Instance +instanceKlass sun/security/jca/GetInstance +instanceKlass java/security/MessageDigestSpi +instanceKlass sun/security/provider/SeedGenerator +instanceKlass sun/security/provider/AbstractDrbg$SeederHolder +instanceKlass java/security/DrbgParameters$NextBytes +instanceKlass sun/security/provider/AbstractDrbg$$Lambda$71 +instanceKlass sun/security/provider/EntropySource +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass sun/security/provider/AbstractDrbg +instanceKlass java/security/DrbgParameters$Instantiation +instanceKlass java/security/DrbgParameters +instanceKlass sun/security/provider/MoreDrbgParameters +instanceKlass sun/security/provider/DRBG$$Lambda$70 +instanceKlass java/security/SecureRandomSpi +instanceKlass java/security/SecureRandomParameters +instanceKlass java/security/Provider$UString +instanceKlass java/security/Provider$Service +instanceKlass sun/security/provider/NativePRNG$NonBlocking +instanceKlass sun/security/provider/NativePRNG$Blocking +instanceKlass sun/security/provider/NativePRNG +instanceKlass sun/security/provider/SunEntries$1 +instanceKlass sun/security/provider/SunEntries +instanceKlass sun/security/jca/ProviderList$2 +instanceKlass jdk/internal/math/FloatingDecimal$ASCIIToBinaryBuffer +instanceKlass jdk/internal/math/FloatingDecimal$PreparedASCIIToBinaryBuffer +instanceKlass jdk/internal/math/FloatingDecimal$ASCIIToBinaryConverter +instanceKlass jdk/internal/math/FloatingDecimal$BinaryToASCIIBuffer +instanceKlass jdk/internal/math/FloatingDecimal$ExceptionalBinaryToASCIIBuffer +instanceKlass jdk/internal/math/FloatingDecimal$BinaryToASCIIConverter +instanceKlass jdk/internal/math/FloatingDecimal +instanceKlass java/security/Provider$EngineDescription +instanceKlass java/security/Provider$ServiceKey +instanceKlass sun/security/jca/ProviderConfig +instanceKlass sun/security/jca/ProviderList +instanceKlass sun/security/jca/Providers +instanceKlass com/google/common/base/Joiner +instanceKlass org/gradle/launcher/daemon/server/exec/DaemonCommandExecuter +instanceKlass org/gradle/internal/remote/internal/inet/MultiChoiceAddressSerializer +instanceKlass org/gradle/launcher/daemon/registry/DaemonRegistryContent$Serializer +instanceKlass org/gradle/launcher/daemon/registry/DaemonRegistryContent +instanceKlass org/gradle/cache/LockOptions +instanceKlass org/gradle/cache/internal/AbstractFileAccess +instanceKlass org/gradle/internal/serialize/Encoder +instanceKlass org/gradle/cache/internal/SimpleStateCache +instanceKlass org/gradle/cache/internal/FileIntegrityViolationSuppressingPersistentStateCacheDecorator +instanceKlass org/gradle/cache/PersistentStateCache +instanceKlass org/gradle/cache/PersistentStateCache$UpdateAction +instanceKlass org/gradle/launcher/daemon/registry/PersistentDaemonRegistry +instanceKlass org/gradle/cache/internal/CacheAccessSerializer$$Lambda$69 +instanceKlass org/gradle/cache/Cache$$Lambda$68 +instanceKlass org/gradle/launcher/daemon/registry/DaemonRegistryServices$$Lambda$67 +instanceKlass org/gradle/internal/nativeintegration/filesystem/services/FallbackStat +instanceKlass org/gradle/internal/nativeintegration/filesystem/services/EmptyChmod +instanceKlass org/gradle/internal/nativeintegration/filesystem/jdk7/Jdk7Symlink +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass net/rubygrapefruit/platform/file/PosixFileInfo +instanceKlass org/gradle/internal/nativeintegration/services/NativeServices$BrokenService +instanceKlass org/gradle/internal/nativeintegration/filesystem/services/UnavailablePosixFiles +instanceKlass net/rubygrapefruit/platform/terminal/Terminals +instanceKlass org/gradle/api/internal/file/temp/GradleUserHomeTemporaryFileProvider$1 +instanceKlass org/gradle/internal/nativeintegration/services/NativeServices$2 +instanceKlass net/rubygrapefruit/platform/file/WindowsFileInfo +instanceKlass net/rubygrapefruit/platform/file/FileInfo +instanceKlass net/rubygrapefruit/platform/internal/DirList +instanceKlass net/rubygrapefruit/platform/internal/AbstractFiles +instanceKlass org/gradle/internal/nativeintegration/filesystem/services/NativePlatformBackedFileMetadataAccessor +instanceKlass java/util/Random +instanceKlass org/gradle/internal/id/RandomLongIdGenerator +instanceKlass org/gradle/cache/internal/DefaultProcessMetaDataProvider +instanceKlass org/gradle/cache/FileLock +instanceKlass org/gradle/cache/FileAccess +instanceKlass org/gradle/internal/io/ExponentialBackoff$Signal +instanceKlass org/gradle/cache/internal/DefaultFileLockManager +instanceKlass org/gradle/internal/remote/ConnectionAcceptor +instanceKlass org/gradle/internal/remote/Address +instanceKlass java/net/SocketAddress +instanceKlass org/gradle/internal/remote/internal/inet/TcpIncomingConnector +instanceKlass org/gradle/launcher/daemon/protocol/DaemonMessageSerializer$OutputMessageSerializer +instanceKlass org/gradle/internal/logging/serializer/LogLevelChangeEventSerializer +instanceKlass org/gradle/internal/logging/serializer/ProgressEventSerializer +instanceKlass org/gradle/internal/logging/serializer/ProgressCompleteEventSerializer +instanceKlass org/gradle/internal/operations/BuildOperationMetadata +instanceKlass org/gradle/internal/logging/serializer/ProgressStartEventSerializer +instanceKlass org/gradle/internal/logging/serializer/SpanSerializer +instanceKlass org/gradle/internal/logging/serializer/StyledTextOutputEventSerializer +instanceKlass org/gradle/internal/logging/serializer/UserInputResumeEventSerializer +instanceKlass org/gradle/internal/logging/serializer/PromptOutputEventSerializer +instanceKlass org/gradle/internal/logging/serializer/UserInputRequestEventSerializer +instanceKlass org/gradle/internal/logging/serializer/LogEventSerializer +instanceKlass org/gradle/launcher/daemon/protocol/DaemonMessageSerializer$CloseInputSerializer +instanceKlass org/gradle/launcher/daemon/protocol/DaemonMessageSerializer$ForwardInputSerializer +instanceKlass org/gradle/launcher/daemon/protocol/DaemonMessageSerializer$BuildEventSerializer +instanceKlass org/gradle/launcher/daemon/protocol/DaemonMessageSerializer$FinishedSerializer +instanceKlass org/gradle/launcher/daemon/protocol/DaemonMessageSerializer$SuccessSerializer +instanceKlass org/gradle/launcher/daemon/protocol/DaemonMessageSerializer$FailureSerializer +instanceKlass org/gradle/launcher/daemon/protocol/DaemonMessageSerializer$BuildStartedSerializer +instanceKlass org/gradle/launcher/daemon/protocol/DaemonMessageSerializer$DaemonUnavailableSerializer +instanceKlass org/gradle/launcher/daemon/protocol/DaemonMessageSerializer$CancelSerializer +instanceKlass org/gradle/launcher/exec/BuildActionParameters +instanceKlass org/gradle/launcher/daemon/protocol/DaemonMessageSerializer$BuildActionParametersSerializer +instanceKlass org/gradle/launcher/daemon/protocol/DaemonMessageSerializer$BuildSerializer +instanceKlass org/gradle/launcher/daemon/protocol/DaemonMessageSerializer +instanceKlass org/gradle/launcher/daemon/server/DaemonTcpServerConnector +instanceKlass org/gradle/launcher/daemon/server/IncomingConnectionHandler +instanceKlass org/gradle/launcher/daemon/server/api/DaemonStateControl +instanceKlass org/gradle/internal/serialize/DefaultSerializerRegistry$TypeInfo +instanceKlass java/util/TreeMap$PrivateEntryIterator +instanceKlass org/gradle/tooling/internal/provider/action/BuildActionSerializer$TestExecutionRequestActionSerializer +instanceKlass org/gradle/tooling/internal/provider/action/BuildActionSerializer$ClientProvidedPhasedActionSerializer +instanceKlass org/gradle/tooling/internal/provider/serialization/SerializedPayloadSerializer +instanceKlass org/gradle/tooling/internal/provider/action/BuildActionSerializer$ClientProvidedBuildActionSerializer +instanceKlass org/gradle/tooling/internal/provider/action/BuildActionSerializer$BuildEventSubscriptionsSerializer +instanceKlass org/gradle/tooling/internal/provider/action/BuildActionSerializer$BuildModelActionSerializer +instanceKlass org/gradle/tooling/internal/provider/action/SubscribableBuildAction +instanceKlass org/gradle/tooling/internal/provider/action/BuildActionSerializer$ValueSerializer +instanceKlass org/gradle/internal/serialize/AbstractSerializer +instanceKlass org/gradle/internal/serialize/BaseSerializerFactory +instanceKlass org/gradle/internal/serialize/AbstractCollectionSerializer +instanceKlass org/gradle/tooling/internal/provider/action/BuildActionSerializer$NullableFileSerializer +instanceKlass org/gradle/tooling/internal/provider/action/BuildActionSerializer$StartParameterSerializer +instanceKlass org/gradle/tooling/internal/provider/action/BuildActionSerializer$ExecuteBuildActionSerializer +instanceKlass org/gradle/tooling/internal/provider/action/ExecuteBuildAction +instanceKlass org/gradle/internal/serialize/DefaultSerializerRegistry$HierarchySerializerMatcher +instanceKlass org/gradle/internal/serialize/DefaultSerializerRegistry$StrictSerializerMatcher +instanceKlass org/gradle/internal/serialize/DefaultSerializerRegistry$SerializerClassMatcherStrategy +instanceKlass org/gradle/internal/serialize/DefaultSerializerRegistry$1 +instanceKlass org/gradle/internal/serialize/DefaultSerializerRegistry +instanceKlass org/gradle/internal/serialize/SerializerRegistry +instanceKlass org/gradle/tooling/internal/provider/action/BuildActionSerializer +instanceKlass org/gradle/initialization/BuildRequestContext +instanceKlass org/gradle/launcher/daemon/server/exec/WatchForDisconnection +instanceKlass org/gradle/launcher/daemon/server/exec/ResetDeprecationLogger +instanceKlass org/gradle/launcher/daemon/server/exec/RequestStopIfSingleUsedDaemon +instanceKlass org/gradle/launcher/daemon/server/api/StdinHandler +instanceKlass org/gradle/launcher/daemon/server/exec/ForwardClientInput +instanceKlass org/gradle/launcher/daemon/server/health/HealthLogger +instanceKlass org/gradle/launcher/daemon/server/exec/LogAndCheckHealth +instanceKlass org/gradle/launcher/daemon/server/exec/BuildCommandOnly +instanceKlass org/gradle/launcher/daemon/server/exec/ReturnResult +instanceKlass org/gradle/launcher/daemon/server/api/HandleReportStatus +instanceKlass org/gradle/launcher/daemon/server/exec/HandleCancel +instanceKlass org/gradle/launcher/daemon/server/api/HandleInvalidateVirtualFileSystem +instanceKlass org/gradle/launcher/daemon/protocol/Message +instanceKlass org/gradle/launcher/daemon/server/api/HandleStop +instanceKlass org/gradle/launcher/daemon/diagnostics/DaemonDiagnostics +instanceKlass org/gradle/tooling/internal/provider/BuildSessionLifecycleBuildActionExecuter +instanceKlass org/gradle/tooling/internal/provider/StartParamsValidatingActionExecuter +instanceKlass org/gradle/initialization/BuildRequestMetaData +instanceKlass org/gradle/initialization/exception/ExceptionAnalyser +instanceKlass org/gradle/initialization/exception/ExceptionCollector +instanceKlass org/gradle/tooling/internal/provider/SessionFailureReportingActionExecuter +instanceKlass org/gradle/StartParameter +instanceKlass org/gradle/concurrent/ParallelismConfiguration +instanceKlass org/gradle/tooling/internal/provider/SetupLoggingActionExecuter +instanceKlass org/gradle/internal/file/FileAccessTimeJournal +instanceKlass org/gradle/internal/classloader/HashingClassLoaderFactory +instanceKlass org/gradle/internal/execution/timeout/TimeoutHandler +instanceKlass org/gradle/cache/internal/FileContentCacheFactory +instanceKlass org/gradle/cache/scopes/ScopedCache +instanceKlass org/gradle/cache/GlobalCacheLocations +instanceKlass org/gradle/process/internal/worker/WorkerProcessFactory +instanceKlass org/gradle/initialization/ClassLoaderScopeRegistry +instanceKlass org/gradle/groovy/scripts/internal/ScriptSourceHasher +instanceKlass org/gradle/cache/CacheRepository +instanceKlass org/gradle/cache/internal/CacheScopeMapping +instanceKlass org/gradle/internal/hash/ClassLoaderHierarchyHasher +instanceKlass org/gradle/api/internal/initialization/loadercache/ClassLoaderCache +instanceKlass org/gradle/internal/isolation/IsolatableFactory +instanceKlass org/gradle/internal/service/scopes/WorkerSharedUserHomeScopeServices +instanceKlass org/gradle/internal/service/scopes/DefaultGradleUserHomeScopeServiceRegistry +instanceKlass org/gradle/internal/logging/text/AbstractStyledTextOutputFactory +instanceKlass org/gradle/launcher/daemon/server/expiry/DaemonExpirationResult +instanceKlass org/gradle/internal/event/DefaultListenerManager$EventBroadcast +instanceKlass org/gradle/launcher/daemon/server/expiry/DaemonExpirationListener +instanceKlass com/google/common/collect/ObjectArrays +instanceKlass org/gradle/launcher/daemon/server/health/LowNonHeapDaemonExpirationStrategy +instanceKlass org/gradle/launcher/daemon/server/health/LowHeapSpaceDaemonExpirationStrategy +instanceKlass org/gradle/launcher/daemon/server/health/GcThrashingDaemonExpirationStrategy +instanceKlass org/gradle/launcher/daemon/server/expiry/AnyDaemonExpirationStrategy +instanceKlass java/lang/FunctionalInterface +instanceKlass org/gradle/internal/service/DefaultServiceRegistry$RegistrationWrapper +instanceKlass org/gradle/internal/service/scopes/Scopes$Build +instanceKlass org/gradle/internal/service/scopes/EventScope +instanceKlass kotlin/annotation/Target +instanceKlass kotlin/annotation/Retention +instanceKlass kotlin/Metadata +instanceKlass java/lang/annotation/Documented +instanceKlass org/gradle/api/Incubating +instanceKlass jdk/internal/reflect/ClassDefiner$1 +instanceKlass jdk/internal/reflect/ClassDefiner +instanceKlass jdk/internal/reflect/MethodAccessorGenerator$1 +instanceKlass jdk/internal/reflect/Label$PatchInfo +instanceKlass jdk/internal/reflect/Label +instanceKlass jdk/internal/reflect/UTF8 +instanceKlass jdk/internal/reflect/ClassFileAssembler +instanceKlass jdk/internal/reflect/ByteVectorImpl +instanceKlass jdk/internal/reflect/ByteVector +instanceKlass jdk/internal/reflect/ByteVectorFactory +instanceKlass jdk/internal/reflect/AccessorGenerator +instanceKlass jdk/internal/reflect/ClassFileConstants +instanceKlass org/gradle/internal/service/scopes/Scopes$BuildTree +instanceKlass org/gradle/internal/service/scopes/Scopes$BuildSession +instanceKlass org/gradle/internal/service/scopes/Scopes$UserHome +instanceKlass java/lang/annotation/Target +instanceKlass sun/reflect/annotation/AnnotationInvocationHandler +instanceKlass sun/reflect/annotation/AnnotationParser$1 +instanceKlass sun/reflect/annotation/ExceptionProxy +instanceKlass java/lang/annotation/Inherited +instanceKlass java/lang/annotation/Retention +instanceKlass sun/reflect/annotation/AnnotationType$1 +instanceKlass sun/reflect/annotation/AnnotationType +instanceKlass java/lang/reflect/GenericArrayType +instanceKlass org/gradle/internal/service/scopes/ServiceScope +instanceKlass java/lang/Class$AnnotationData +instanceKlass org/gradle/internal/service/scopes/StatefulListener +instanceKlass java/time/Duration +instanceKlass java/time/temporal/TemporalAmount +instanceKlass org/gradle/internal/service/scopes/Scope$Global +instanceKlass org/gradle/internal/service/scopes/Scope +instanceKlass java/time/temporal/TemporalUnit +instanceKlass java/util/concurrent/TimeUnit$1 +instanceKlass java/util/concurrent/Executors$RunnableAdapter +instanceKlass java/util/concurrent/Executors +instanceKlass java/util/concurrent/FutureTask$WaitNode +instanceKlass java/util/concurrent/FutureTask +instanceKlass org/gradle/internal/concurrent/ManagedExecutorImpl$1 +instanceKlass org/gradle/launcher/daemon/server/health/gc/GarbageCollectionCheck +instanceKlass org/gradle/launcher/daemon/server/health/gc/DefaultGarbageCollectionMonitor$1 +instanceKlass java/util/concurrent/BlockingDeque +instanceKlass org/gradle/launcher/daemon/server/health/gc/DefaultSlidingWindow +instanceKlass org/gradle/launcher/daemon/server/health/gc/SlidingWindow +instanceKlass org/gradle/launcher/daemon/server/health/gc/DefaultGarbageCollectionMonitor +instanceKlass org/gradle/launcher/daemon/server/health/gc/GarbageCollectionInfo +instanceKlass org/gradle/internal/concurrent/ExecutorPolicy$CatchAndRecordFailures +instanceKlass java/util/concurrent/RunnableScheduledFuture +instanceKlass java/util/concurrent/ScheduledFuture +instanceKlass java/util/concurrent/Delayed +instanceKlass java/util/concurrent/RunnableFuture +instanceKlass java/util/concurrent/Future +instanceKlass org/gradle/internal/concurrent/ThreadFactoryImpl +instanceKlass java/util/concurrent/ThreadPoolExecutor$AbortPolicy +instanceKlass java/util/concurrent/RejectedExecutionHandler +instanceKlass java/util/concurrent/AbstractExecutorService +instanceKlass org/gradle/internal/concurrent/ManagedScheduledExecutor +instanceKlass java/util/concurrent/ScheduledExecutorService +instanceKlass org/gradle/internal/concurrent/ManagedExecutor +instanceKlass java/util/concurrent/ExecutorService +instanceKlass java/util/concurrent/Executor +instanceKlass org/gradle/internal/concurrent/AsyncStoppable +instanceKlass org/gradle/internal/concurrent/ExecutorPolicy +instanceKlass org/gradle/internal/concurrent/DefaultExecutorFactory +instanceKlass org/gradle/launcher/daemon/server/health/gc/GarbageCollectorMonitoringStrategy$3 +instanceKlass sun/management/Sensor +instanceKlass sun/management/MemoryPoolImpl +instanceKlass java/lang/management/MemoryPoolMXBean +instanceKlass org/gradle/launcher/daemon/server/health/gc/GarbageCollectorMonitoringStrategy$2 +instanceKlass org/gradle/util/internal/CollectionUtils +instanceKlass org/gradle/launcher/daemon/server/health/gc/GarbageCollectorMonitoringStrategy$1 +instanceKlass sun/management/spi/PlatformMBeanProvider$PlatformComponent$$Lambda$66 +instanceKlass sun/management/spi/PlatformMBeanProvider$PlatformComponent$$Lambda$65 +instanceKlass com/sun/jmx/mbeanserver/Util +instanceKlass javax/management/ObjectName$Property +instanceKlass com/sun/jmx/mbeanserver/GetPropertyAction +instanceKlass javax/management/ObjectName +instanceKlass javax/management/QueryExp +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass sun/management/Util +instanceKlass com/sun/management/GarbageCollectorMXBean +instanceKlass java/lang/management/MemoryMXBean +instanceKlass java/util/stream/Collectors$$Lambda$64 +instanceKlass java/util/stream/Collectors$$Lambda$63 +instanceKlass java/util/stream/Collectors$$Lambda$62 +instanceKlass java/lang/management/ManagementFactory$$Lambda$61 +instanceKlass java/lang/management/ManagementFactory$PlatformMBeanFinder$$Lambda$60 +instanceKlass java/util/HashMap$HashMapSpliterator +instanceKlass java/lang/management/ManagementFactory$PlatformMBeanFinder$$Lambda$59 +instanceKlass java/lang/management/ManagementFactory$PlatformMBeanFinder$$Lambda$58 +instanceKlass java/util/Collections$2 +instanceKlass jdk/management/jfr/internal/FlightRecorderMXBeanProvider$SingleMBeanComponent +instanceKlass jdk/management/jfr/FlightRecorderMXBean +instanceKlass java/util/stream/Collectors$$Lambda$57 +instanceKlass java/util/stream/Collectors$$Lambda$56 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass java/util/stream/Collectors$$Lambda$55 +instanceKlass java/lang/management/ManagementFactory$PlatformMBeanFinder$$Lambda$54 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass java/util/function/Function$$Lambda$53 +instanceKlass java/lang/management/ManagementFactory$PlatformMBeanFinder$$Lambda$52 +instanceKlass java/lang/management/ManagementFactory$PlatformMBeanFinder$$Lambda$51 +instanceKlass java/lang/management/DefaultPlatformMBeanProvider$11 +instanceKlass java/lang/management/DefaultPlatformMBeanProvider$10 +instanceKlass java/lang/management/DefaultPlatformMBeanProvider$9 +instanceKlass sun/management/ManagementFactoryHelper$LoggingMXBeanAccess$1 +instanceKlass sun/management/ManagementFactoryHelper$LoggingMXBeanAccess +instanceKlass java/lang/management/DefaultPlatformMBeanProvider$8 +instanceKlass java/lang/management/DefaultPlatformMBeanProvider$7 +instanceKlass java/lang/management/DefaultPlatformMBeanProvider$6 +instanceKlass java/lang/management/DefaultPlatformMBeanProvider$5 +instanceKlass java/lang/management/DefaultPlatformMBeanProvider$4 +instanceKlass java/lang/management/DefaultPlatformMBeanProvider$3 +instanceKlass java/lang/management/DefaultPlatformMBeanProvider$2 +instanceKlass java/lang/management/DefaultPlatformMBeanProvider$1 +instanceKlass com/sun/management/internal/PlatformMBeanProviderImpl$5 +instanceKlass sun/management/VMManagementImpl +instanceKlass sun/management/VMManagement +instanceKlass sun/management/ManagementFactoryHelper +instanceKlass sun/management/NotificationEmitterSupport +instanceKlass javax/management/NotificationEmitter +instanceKlass javax/management/NotificationBroadcaster +instanceKlass com/sun/management/DiagnosticCommandMBean +instanceKlass javax/management/DynamicMBean +instanceKlass com/sun/management/internal/PlatformMBeanProviderImpl$4 +instanceKlass com/sun/management/internal/PlatformMBeanProviderImpl$3 +instanceKlass com/sun/management/internal/PlatformMBeanProviderImpl$2 +instanceKlass java/util/stream/ReduceOps$Box +instanceKlass java/util/stream/ReduceOps$AccumulatingSink +instanceKlass java/util/stream/ReduceOps$ReduceOp +instanceKlass java/util/stream/ReduceOps +instanceKlass java/util/stream/Collectors$$Lambda$50 +instanceKlass java/util/stream/Collectors$$Lambda$49 +instanceKlass java/util/function/BinaryOperator +instanceKlass java/util/stream/Collectors$$Lambda$48 +instanceKlass java/util/function/BiConsumer +instanceKlass java/util/stream/Collectors$$Lambda$47 +instanceKlass java/util/stream/Collectors$CollectorImpl +instanceKlass java/util/stream/Collector +instanceKlass java/util/stream/Collectors +instanceKlass com/sun/management/internal/PlatformMBeanProviderImpl$1 +instanceKlass sun/management/spi/PlatformMBeanProvider$PlatformComponent +instanceKlass com/sun/management/internal/PlatformMBeanProviderImpl$$Lambda$46 +instanceKlass java/util/concurrent/Callable +instanceKlass java/lang/management/ManagementFactory$PlatformMBeanFinder$$Lambda$45 +instanceKlass sun/management/spi/PlatformMBeanProvider +instanceKlass java/lang/management/ManagementFactory$PlatformMBeanFinder$$Lambda$44 +instanceKlass java/lang/management/ManagementFactory$PlatformMBeanFinder +instanceKlass java/lang/management/GarbageCollectorMXBean +instanceKlass java/lang/management/MemoryManagerMXBean +instanceKlass java/lang/management/PlatformManagedObject +instanceKlass java/lang/management/ManagementFactory$$Lambda$43 +instanceKlass java/lang/management/ManagementFactory +instanceKlass org/gradle/launcher/daemon/server/health/gc/GarbageCollectionMonitor +instanceKlass org/gradle/internal/time/DefaultTimer +instanceKlass org/gradle/internal/logging/text/AbstractLineChoppingStyledTextOutput$StateContext +instanceKlass java/text/DontCareFieldPosition$1 +instanceKlass java/text/Format$FieldDelegate +instanceKlass java/util/Date +instanceKlass java/text/DigitList +instanceKlass java/text/FieldPosition +instanceKlass sun/util/locale/provider/JRELocaleProviderAdapter$$Lambda$42 +instanceKlass sun/util/locale/provider/JRELocaleProviderAdapter$$Lambda$41 +instanceKlass java/text/DateFormatSymbols +instanceKlass sun/util/calendar/CalendarUtils +instanceKlass sun/util/calendar/CalendarDate +instanceKlass sun/util/cldr/CLDRLocaleProviderAdapter$$Lambda$40 +instanceKlass sun/util/locale/provider/CalendarDataUtility$CalendarWeekParameterGetter +instanceKlass sun/util/locale/provider/LocaleServiceProviderPool$LocalizedObjectGetter +instanceKlass sun/util/locale/provider/LocaleServiceProviderPool +instanceKlass sun/util/calendar/CalendarSystem$GregorianHolder +instanceKlass sun/util/calendar/CalendarSystem +instanceKlass java/util/Calendar$Builder +instanceKlass sun/util/locale/provider/JRELocaleProviderAdapter$$Lambda$39 +instanceKlass sun/util/calendar/ZoneInfoFile$ZoneOffsetTransitionRule +instanceKlass sun/util/calendar/ZoneInfoFile$1 +instanceKlass sun/util/calendar/ZoneInfoFile +instanceKlass java/util/TimeZone +instanceKlass java/util/Calendar +instanceKlass java/text/AttributedCharacterIterator$Attribute +instanceKlass java/text/Format +instanceKlass org/gradle/internal/logging/sink/LogEventDispatcher +instanceKlass org/gradle/internal/logging/text/AbstractLineChoppingStyledTextOutput$SeenFromEol +instanceKlass org/gradle/internal/logging/text/AbstractLineChoppingStyledTextOutput$4 +instanceKlass org/gradle/internal/logging/text/AbstractLineChoppingStyledTextOutput$3 +instanceKlass org/gradle/internal/logging/text/AbstractLineChoppingStyledTextOutput$2 +instanceKlass org/gradle/internal/logging/text/AbstractLineChoppingStyledTextOutput$1 +instanceKlass org/gradle/internal/logging/text/AbstractLineChoppingStyledTextOutput$State +instanceKlass org/gradle/internal/logging/text/StreamBackedStandardOutputListener +instanceKlass org/gradle/internal/logging/text/AbstractStyledTextOutput +instanceKlass org/gradle/internal/logging/console/StyledTextOutputBackedRenderer +instanceKlass org/slf4j/helpers/FormattingTuple +instanceKlass org/slf4j/helpers/MessageFormatter +instanceKlass net/rubygrapefruit/platform/internal/FunctionResult +instanceKlass org/gradle/internal/logging/source/PrintStreamLoggingSystem$PrintStreamDestination +instanceKlass java/util/logging/ErrorManager +instanceKlass org/gradle/internal/logging/source/JavaUtilLoggingSystem$SnapshotImpl +instanceKlass org/gradle/internal/logging/config/LoggingSystemAdapter$SnapshotImpl +instanceKlass org/gradle/internal/dispatch/MethodInvocation +instanceKlass org/gradle/internal/logging/sink/OutputEventRenderer$SnapshotImpl +instanceKlass org/gradle/process/internal/shutdown/ShutdownHooks +instanceKlass org/gradle/launcher/daemon/bootstrap/DaemonMain$1 +instanceKlass com/google/common/io/Files$2 +instanceKlass com/google/common/graph/SuccessorsFunction +instanceKlass com/google/common/io/LineProcessor +instanceKlass com/google/common/io/ByteSource +instanceKlass com/google/common/io/ByteSink +instanceKlass com/google/common/base/Predicate +instanceKlass com/google/common/io/Files +instanceKlass org/gradle/util/internal/GFileUtils +instanceKlass java/util/regex/CharPredicates$$Lambda$38 +instanceKlass org/gradle/util/GradleVersion +instanceKlass org/gradle/launcher/daemon/context/DefaultDaemonContext$Serializer +instanceKlass org/gradle/launcher/daemon/context/DefaultDaemonContext +instanceKlass net/rubygrapefruit/platform/internal/jni/PosixProcessFunctions +instanceKlass org/gradle/internal/FileUtils$1 +instanceKlass org/gradle/internal/FileUtils +instanceKlass com/google/common/collect/Lists +instanceKlass org/gradle/internal/nativeintegration/ReflectiveEnvironment +instanceKlass org/gradle/internal/nativeintegration/processenvironment/AbstractProcessEnvironment +instanceKlass net/rubygrapefruit/platform/internal/DefaultProcess +instanceKlass net/rubygrapefruit/platform/internal/WrapperProcess +instanceKlass net/rubygrapefruit/platform/file/WindowsFiles +instanceKlass org/gradle/launcher/daemon/context/DaemonContextBuilder +instanceKlass org/gradle/internal/id/UUIDGenerator +instanceKlass org/gradle/internal/id/IdGenerator +instanceKlass org/gradle/internal/remote/MessagingServer +instanceKlass org/gradle/internal/remote/internal/IncomingConnector +instanceKlass org/gradle/internal/remote/MessagingClient +instanceKlass org/gradle/internal/remote/internal/OutgoingConnector +instanceKlass org/gradle/internal/remote/services/MessagingServices +instanceKlass org/gradle/api/internal/file/DefaultFileLookup +instanceKlass org/gradle/internal/scripts/DefaultScriptFileResolver +instanceKlass org/gradle/internal/scripts/ScriptFileResolver +instanceKlass org/gradle/initialization/layout/BuildLayoutFactory +instanceKlass org/gradle/tooling/internal/provider/runner/OperationDependencyLookup +instanceKlass org/gradle/tooling/internal/provider/runner/ToolingApiBuildEventListenerFactory +instanceKlass org/gradle/configurationcache/serialization/beans/BeanConstructors +instanceKlass org/gradle/nativeplatform/NativeBinarySpec +instanceKlass org/gradle/platform/base/BinarySpec +instanceKlass org/gradle/platform/base/Binary +instanceKlass org/gradle/api/CheckableComponentSpec +instanceKlass org/gradle/api/BuildableComponentSpec +instanceKlass org/gradle/platform/base/ComponentSpec +instanceKlass org/gradle/model/ModelElement +instanceKlass org/gradle/api/Buildable +instanceKlass org/gradle/internal/resource/transport/sftp/SftpClientFactory +instanceKlass org/gradle/internal/resource/transport/sftp/SftpResourcesPluginServiceRegistry$GlobalScopeServices +instanceKlass org/gradle/internal/resource/transport/aws/s3/S3ResourcesPluginServiceRegistry$GlobalScopeServices +instanceKlass org/gradle/internal/resource/transport/gcp/gcs/GcsResourcesPluginServiceRegistry$GlobalScopeServices +instanceKlass org/gradle/nativeplatform/TargetMachineBuilder +instanceKlass org/gradle/nativeplatform/TargetMachine +instanceKlass org/gradle/nativeplatform/internal/DefaultTargetMachineFactory +instanceKlass org/gradle/nativeplatform/TargetMachineFactory +instanceKlass org/gradle/nativeplatform/internal/NativePlatformResolver +instanceKlass org/gradle/platform/base/internal/PlatformResolver +instanceKlass org/gradle/nativeplatform/platform/internal/NativePlatformInternal +instanceKlass org/gradle/nativeplatform/platform/NativePlatform +instanceKlass org/gradle/platform/base/Platform +instanceKlass org/gradle/nativeplatform/platform/internal/OperatingSystemInternal +instanceKlass org/gradle/nativeplatform/platform/OperatingSystem +instanceKlass org/gradle/api/Named +instanceKlass org/gradle/nativeplatform/platform/internal/NativePlatforms +instanceKlass org/gradle/internal/logging/text/DiagnosticsVisitor +instanceKlass org/gradle/buildinit/plugins/internal/action/InitBuiltInCommand +instanceKlass org/gradle/api/component/SoftwareComponentFactory +instanceKlass org/gradle/api/plugins/internal/PluginAuthorServices$GlobalScopeServices +instanceKlass org/gradle/internal/build/event/BuildEventSubscriptions +instanceKlass org/gradle/internal/build/event/OperationResultPostProcessorFactory +instanceKlass org/gradle/language/java/internal/JavaLanguagePluginServiceRegistry$JavaGlobalScopeServices +instanceKlass org/gradle/platform/base/internal/registry/ComponentModelBaseServiceRegistry$GlobalScopeServices +instanceKlass org/gradle/reporting/ReportRenderer +instanceKlass org/gradle/api/reporting/components/internal/DiagnosticsServices$1 +instanceKlass org/gradle/api/plugins/internal/HelpBuiltInCommand +instanceKlass org/gradle/configuration/project/BuiltInCommand +instanceKlass org/gradle/internal/resource/transport/http/HttpClientHelper$Factory +instanceKlass org/gradle/internal/resource/transport/http/SslContextFactory +instanceKlass org/gradle/internal/resource/transport/http/HttpResourcesPluginServiceRegistry$GlobalScopeServices +instanceKlass org/gradle/api/internal/artifacts/configurations/MarkConfigurationObservedListener +instanceKlass org/gradle/api/internal/artifacts/configurations/ProjectDependencyObservedListener +instanceKlass org/gradle/internal/resource/ExternalResourceName +instanceKlass org/gradle/api/Describable +instanceKlass org/gradle/api/artifacts/component/ComponentSelector +instanceKlass org/gradle/api/internal/attributes/EmptySchema +instanceKlass org/gradle/api/internal/attributes/AttributesSchemaInternal +instanceKlass org/gradle/api/internal/attributes/DescribableAttributesSchema +instanceKlass org/gradle/api/attributes/AttributesSchema +instanceKlass org/gradle/cache/internal/ProducerGuard +instanceKlass org/gradle/internal/typeconversion/NotationParser +instanceKlass org/gradle/api/internal/artifacts/dsl/dependencies/PlatformSupport +instanceKlass org/gradle/api/internal/artifacts/transform/ArtifactTransformActionScheme +instanceKlass org/gradle/api/internal/artifacts/transform/ArtifactTransformParameterScheme +instanceKlass org/gradle/api/internal/tasks/properties/annotations/AbstractInputFilePropertyAnnotationHandler +instanceKlass org/gradle/api/internal/artifacts/ivyservice/moduleconverter/dependencies/AbstractIvyDependencyDescriptorFactory +instanceKlass org/gradle/api/internal/artifacts/ivyservice/moduleconverter/dependencies/IvyDependencyDescriptorFactory +instanceKlass org/gradle/api/internal/artifacts/ivyservice/moduleconverter/dependencies/ExcludeRuleConverter +instanceKlass org/gradle/internal/resource/local/FileResourceRepository +instanceKlass org/gradle/internal/resource/ExternalResourceRepository +instanceKlass org/gradle/internal/resource/connector/ResourceConnectorFactory +instanceKlass org/gradle/api/internal/artifacts/ivyservice/moduleconverter/dependencies/DependencyDescriptorFactory +instanceKlass org/gradle/api/internal/artifacts/ivyservice/IvyContextManager +instanceKlass org/gradle/api/internal/artifacts/ImmutableModuleIdentifierFactory +instanceKlass org/gradle/internal/typeconversion/NotationConverter +instanceKlass org/gradle/api/internal/artifacts/ivyservice/moduleconverter/LocalComponentMetadataBuilder +instanceKlass org/gradle/api/internal/artifacts/ivyservice/moduleconverter/dependencies/LocalConfigurationMetadataBuilder +instanceKlass org/gradle/api/internal/artifacts/DependencyManagementGlobalScopeServices +instanceKlass org/gradle/kotlin/dsl/support/ImplicitImports +instanceKlass org/gradle/kotlin/dsl/support/GlobalServices +instanceKlass org/gradle/internal/build/event/BuildEventServices$1 +instanceKlass org/gradle/internal/build/event/BuildEventListenerFactory +instanceKlass org/gradle/initialization/BuildEventConsumer +instanceKlass org/gradle/internal/operations/BuildOperationListener +instanceKlass org/gradle/internal/build/event/DefaultBuildEventsListenerRegistry +instanceKlass org/gradle/internal/build/event/BuildEventListenerRegistryInternal +instanceKlass org/gradle/build/event/BuildEventsListenerRegistry +instanceKlass org/gradle/api/internal/changedetection/state/FileHasherStatistics$Collector +instanceKlass org/gradle/internal/snapshot/impl/DirectorySnapshotterStatistics$Collector +instanceKlass org/gradle/internal/service/scopes/VirtualFileSystemServices$GlobalScopeServices +instanceKlass org/gradle/api/internal/tasks/properties/InspectionSchemeFactory +instanceKlass org/gradle/api/internal/tasks/properties/PropertyWalker +instanceKlass org/gradle/api/internal/tasks/properties/TaskScheme +instanceKlass org/gradle/api/internal/tasks/properties/TypeScheme +instanceKlass org/gradle/internal/service/scopes/ExecutionGlobalServices$AnnotationHandlerRegistar +instanceKlass org/gradle/internal/operations/BuildOperationAncestryTracker +instanceKlass org/gradle/internal/service/scopes/ExecutionGlobalServices$AnnotationHandlerRegistration +instanceKlass org/gradle/api/model/ReplacedBy +instanceKlass org/gradle/api/tasks/Internal +instanceKlass org/gradle/api/tasks/OutputFiles +instanceKlass org/gradle/api/tasks/OutputFile +instanceKlass org/gradle/api/tasks/OutputDirectory +instanceKlass org/gradle/api/tasks/OutputDirectories +instanceKlass org/gradle/api/tasks/options/OptionValues +instanceKlass org/gradle/api/tasks/Nested +instanceKlass org/gradle/api/tasks/LocalState +instanceKlass org/gradle/api/tasks/InputFiles +instanceKlass org/gradle/api/tasks/InputFile +instanceKlass org/gradle/api/tasks/InputDirectory +instanceKlass org/gradle/api/artifacts/transform/InputArtifactDependencies +instanceKlass org/gradle/api/artifacts/transform/InputArtifact +instanceKlass org/gradle/api/tasks/Input +instanceKlass org/gradle/api/tasks/Destroys +instanceKlass org/gradle/api/tasks/Console +instanceKlass org/gradle/api/internal/project/taskfactory/TaskClassInfoStore +instanceKlass org/gradle/internal/reflect/annotations/TypeAnnotationMetadataStore +instanceKlass org/gradle/internal/execution/TaskExecutionTracker +instanceKlass org/gradle/api/internal/tasks/properties/annotations/TypeAnnotationHandler +instanceKlass org/gradle/internal/service/scopes/ExecutionGlobalServices +instanceKlass org/gradle/tooling/internal/provider/serialization/ClassLoaderCache +instanceKlass org/gradle/tooling/internal/provider/ExecuteBuildActionRunner +instanceKlass org/gradle/internal/buildtree/BuildActionRunner +instanceKlass org/gradle/internal/filewatch/FileSystemChangeWaiterFactory +instanceKlass org/gradle/tooling/internal/provider/LauncherServices$ToolingGlobalScopeServices +instanceKlass org/gradle/internal/service/DefaultServiceLocator$ServiceFactory +instanceKlass org/gradle/internal/service/scopes/AbstractPluginServiceRegistry +instanceKlass org/gradle/internal/service/scopes/PluginServiceRegistry +instanceKlass org/gradle/api/internal/classpath/DefaultModuleRegistry$DefaultModule +instanceKlass org/gradle/internal/IoActions +instanceKlass org/gradle/api/Transformer +instanceKlass org/gradle/util/internal/GUtil +instanceKlass org/gradle/api/internal/classpath/DefaultModuleRegistry$$Lambda$37 +instanceKlass java/util/NavigableSet +instanceKlass java/util/SortedSet +instanceKlass com/google/common/collect/Sets +instanceKlass groovy/lang/MetaClass +instanceKlass groovy/lang/MetaObjectProtocol +instanceKlass groovy/lang/GroovySystem +instanceKlass groovy/lang/MetaClassRegistry +instanceKlass groovy/lang/GroovyObject +instanceKlass org/objectweb/asm/ClassVisitor +instanceKlass java/util/ComparableTimSort +instanceKlass java/util/Arrays$LegacyMergeSort +instanceKlass org/gradle/internal/util/Trie$Builder +instanceKlass org/gradle/internal/util/Trie +instanceKlass org/gradle/internal/classloader/FilteringClassLoader$TrieSet +instanceKlass java/lang/ClassLoader$$Lambda$36 +instanceKlass jdk/internal/loader/BootLoader$PackageHelper$$Lambda$35 +instanceKlass jdk/internal/loader/BootLoader$PackageHelper +instanceKlass java/util/stream/StreamSpliterators$WrappingSpliterator$$Lambda$34 +instanceKlass java/util/stream/AbstractSpinedBuffer +instanceKlass java/util/stream/Node$Builder +instanceKlass java/util/stream/Node$OfDouble +instanceKlass java/util/stream/Node$OfLong +instanceKlass java/util/stream/Node$OfInt +instanceKlass java/util/stream/Node$OfPrimitive +instanceKlass java/util/stream/Nodes$EmptyNode +instanceKlass java/util/stream/Node +instanceKlass java/util/stream/Nodes +instanceKlass java/lang/ClassLoader$$Lambda$33 +instanceKlass java/util/function/IntFunction +instanceKlass jdk/internal/loader/BootLoader$$Lambda$32 +instanceKlass java/util/stream/Streams$2 +instanceKlass java/util/stream/StreamSpliterators$AbstractWrappingSpliterator +instanceKlass java/util/stream/AbstractPipeline$$Lambda$31 +instanceKlass java/util/stream/Streams$ConcatSpliterator +instanceKlass java/lang/ClassLoader$$Lambda$30 +instanceKlass org/gradle/internal/classloader/ClassLoaderUtils$AbstractClassLoaderLookuper +instanceKlass org/gradle/internal/classloader/ClassLoaderUtils$ClassLoaderPackagesFetcher +instanceKlass org/gradle/internal/classloader/ClassLoaderUtils$ClassDefiner +instanceKlass org/gradle/internal/classloader/ClassLoaderUtils +instanceKlass org/gradle/initialization/GradleApiSpecAggregator$DefaultSpec +instanceKlass kotlin/jvm/internal/Intrinsics +instanceKlass kotlin/collections/SetsKt__SetsJVMKt +instanceKlass com/google/common/collect/PeekingIterator +instanceKlass com/google/common/collect/UnmodifiableIterator +instanceKlass com/google/common/collect/Iterators +instanceKlass com/google/common/collect/Hashing +instanceKlass com/google/common/base/Java8Usage$$Lambda$29 +instanceKlass com/google/common/base/Java8Usage +instanceKlass com/google/common/base/Preconditions +instanceKlass org/apache/groovy/json/DefaultFastStringServiceFactory +instanceKlass org/apache/groovy/json/FastStringServiceFactory +instanceKlass org/gradle/internal/reflect/ReflectionCache$CacheEntry +instanceKlass com/google/common/math/IntMath$1 +instanceKlass com/google/common/math/MathPreconditions +instanceKlass com/google/common/math/IntMath +instanceKlass com/google/common/collect/ImmutableCollection$Builder +instanceKlass com/google/common/collect/ImmutableSet$SetBuilderImpl +instanceKlass org/gradle/kotlin/dsl/provider/KotlinGradleApiSpecProvider +instanceKlass org/gradle/initialization/GradleApiSpecProvider$SpecAdapter +instanceKlass org/gradle/initialization/GradleApiSpecProvider +instanceKlass org/gradle/internal/service/DefaultServiceLocator +instanceKlass org/gradle/initialization/GradleApiSpecProvider$Spec +instanceKlass org/gradle/initialization/GradleApiSpecAggregator +instanceKlass org/gradle/internal/reflect/CachedInvokable +instanceKlass com/google/common/base/Function +instanceKlass org/gradle/internal/reflect/ReflectionCache +instanceKlass org/gradle/internal/reflect/DirectInstantiator +instanceKlass org/gradle/initialization/DefaultClassLoaderRegistry +instanceKlass org/gradle/internal/installation/GradleRuntimeShadedJarDetector +instanceKlass sun/net/www/protocol/jar/URLJarFileCallBack +instanceKlass sun/net/www/protocol/jar/JarFileFactory +instanceKlass sun/net/www/protocol/jar/URLJarFile$URLJarFileCloseController +instanceKlass java/net/URLClassLoader$2 +instanceKlass org/objectweb/asm/Type +instanceKlass org/gradle/initialization/DefaultLegacyTypesSupport +instanceKlass org/gradle/api/internal/DynamicModulesClassPathProvider +instanceKlass org/gradle/api/internal/DefaultClassPathProvider +instanceKlass org/gradle/api/internal/ClassPathProvider +instanceKlass org/gradle/api/internal/DefaultClassPathRegistry +instanceKlass org/gradle/api/internal/classpath/DefaultPluginModuleRegistry +instanceKlass org/gradle/api/internal/classpath/ManifestUtil +instanceKlass org/gradle/internal/classloader/ClassLoaderSpec +instanceKlass org/gradle/internal/classloader/ClassLoaderHierarchy +instanceKlass org/gradle/internal/classloader/ClassLoaderVisitor +instanceKlass org/gradle/api/internal/classpath/DefaultModuleRegistry$$Lambda$28 +instanceKlass org/gradle/api/internal/classpath/Module +instanceKlass org/gradle/internal/installation/GradleInstallation$1 +instanceKlass org/gradle/internal/installation/GradleInstallation +instanceKlass org/gradle/internal/classloader/ClasspathUtil +instanceKlass org/gradle/internal/installation/CurrentGradleInstallationLocator +instanceKlass org/gradle/api/tasks/util/PatternSet +instanceKlass org/gradle/api/tasks/util/PatternFilterable +instanceKlass org/gradle/api/tasks/AntBuilderAware +instanceKlass org/gradle/api/internal/tasks/properties/annotations/AbstractOutputPropertyAnnotationHandler +instanceKlass org/gradle/api/internal/tasks/properties/annotations/PropertyAnnotationHandler +instanceKlass org/gradle/internal/instantiation/InjectAnnotationHandler +instanceKlass org/gradle/model/internal/manage/schema/extract/ModelSchemaAspectExtractionStrategy +instanceKlass org/gradle/model/internal/manage/schema/extract/ModelSchemaExtractionStrategy +instanceKlass org/gradle/model/internal/inspect/MethodModelRuleExtractor +instanceKlass org/gradle/api/internal/DocumentationRegistry +instanceKlass org/gradle/internal/event/DefaultListenerManager +instanceKlass org/gradle/cache/internal/locklistener/DefaultFileLockContentionHandler +instanceKlass org/gradle/internal/remote/internal/inet/InetAddressFactory +instanceKlass org/gradle/cache/internal/locklistener/FileLockContentionHandler +instanceKlass org/gradle/api/internal/file/FileLookup +instanceKlass org/gradle/api/internal/tasks/TaskDependencyFactory +instanceKlass org/gradle/internal/state/ManagedFactoryRegistry +instanceKlass org/gradle/api/internal/file/DefaultFilePropertyFactory +instanceKlass org/gradle/api/internal/file/FileFactory +instanceKlass org/gradle/api/internal/file/FileResolver +instanceKlass org/gradle/internal/file/PathToFileResolver +instanceKlass org/gradle/internal/file/RelativeFilePathResolver +instanceKlass org/gradle/api/internal/provider/PropertyHost +instanceKlass org/gradle/internal/operations/BuildOperationProgressEventEmitter +instanceKlass org/gradle/execution/DefaultWorkValidationWarningRecorder +instanceKlass org/gradle/execution/WorkValidationWarningReporter +instanceKlass org/gradle/internal/execution/steps/ValidateStep$ValidationWarningRecorder +instanceKlass org/gradle/api/internal/cache/StringInterner +instanceKlass com/google/common/collect/Interner +instanceKlass org/gradle/api/internal/model/NamedObjectInstantiator +instanceKlass org/gradle/internal/state/ManagedFactory +instanceKlass org/gradle/api/internal/file/FilePropertyFactory +instanceKlass org/gradle/api/internal/classpath/DefaultModuleRegistry +instanceKlass org/gradle/cache/GlobalCache +instanceKlass org/gradle/internal/installation/CurrentGradleInstallation +instanceKlass org/gradle/api/internal/classpath/ModuleRegistry +instanceKlass org/gradle/model/internal/inspect/ModelRuleSourceDetector +instanceKlass org/gradle/internal/operations/CurrentBuildOperationRef +instanceKlass org/gradle/internal/service/CachingServiceLocator +instanceKlass org/gradle/model/internal/manage/schema/extract/ModelSchemaAspectExtractor +instanceKlass org/gradle/model/internal/inspect/ModelRuleExtractor +instanceKlass org/gradle/model/internal/manage/instance/ManagedProxyFactory +instanceKlass org/gradle/internal/instantiation/InstanceGenerator +instanceKlass org/gradle/internal/service/scopes/GlobalScopeServices$$Lambda$27 +instanceKlass org/gradle/internal/environment/GradleBuildEnvironment +instanceKlass org/gradle/process/internal/health/memory/MemoryManager +instanceKlass org/gradle/internal/operations/BuildOperationListenerManager +instanceKlass org/gradle/api/internal/collections/DomainObjectCollectionFactory +instanceKlass org/gradle/internal/service/scopes/GradleUserHomeScopeServiceRegistry +instanceKlass org/gradle/internal/resources/ResourceLockCoordinationService +instanceKlass org/gradle/api/internal/ClassPathRegistry +instanceKlass org/gradle/initialization/ClassLoaderRegistry +instanceKlass org/gradle/internal/execution/history/changes/ExecutionStateChangeDetector +instanceKlass org/gradle/process/internal/health/memory/JvmMemoryInfo +instanceKlass org/gradle/api/model/ObjectFactory +instanceKlass org/gradle/internal/reflect/Instantiator +instanceKlass org/gradle/api/tasks/util/internal/PatternSpecFactory +instanceKlass org/gradle/internal/execution/history/OverlappingOutputDetector +instanceKlass org/gradle/api/execution/internal/TaskInputsListeners +instanceKlass org/gradle/internal/instantiation/InstantiatorFactory +instanceKlass org/gradle/internal/instantiation/PropertyRoleAnnotationHandler +instanceKlass org/gradle/api/internal/classpath/PluginModuleRegistry +instanceKlass org/gradle/configuration/ImportsReader +instanceKlass org/gradle/model/internal/manage/binding/StructBindingsStore +instanceKlass org/gradle/model/internal/manage/schema/ModelSchemaStore +instanceKlass org/gradle/cache/internal/InMemoryCacheDecoratorFactory +instanceKlass org/gradle/initialization/JdkToolsInitializer +instanceKlass org/gradle/internal/classloader/ClassLoaderFactory +instanceKlass org/gradle/internal/filewatch/FileWatcherFactory +instanceKlass org/gradle/internal/service/ServiceLocator +instanceKlass org/gradle/model/internal/manage/schema/extract/ModelSchemaExtractor +instanceKlass org/gradle/process/internal/health/memory/OsMemoryInfo +instanceKlass org/gradle/cache/internal/CrossBuildInMemoryCacheFactory +instanceKlass org/gradle/initialization/LegacyTypesSupport +instanceKlass org/gradle/internal/logging/progress/ProgressLoggerFactory +instanceKlass org/gradle/internal/logging/progress/ProgressListener +instanceKlass org/gradle/api/internal/provider/PropertyFactory +instanceKlass org/gradle/internal/operations/BuildOperationIdFactory +instanceKlass org/gradle/internal/file/Deleter +instanceKlass org/gradle/internal/hash/StreamHasher +instanceKlass org/gradle/cache/internal/CacheFactory +instanceKlass org/gradle/api/internal/file/FileCollectionFactory +instanceKlass org/gradle/api/internal/file/collections/DirectoryFileTreeFactory +instanceKlass org/gradle/internal/jvm/inspection/JvmVersionDetector +instanceKlass org/gradle/internal/jvm/inspection/JvmMetadataDetector +instanceKlass org/gradle/cache/internal/ProcessMetaDataProvider +instanceKlass org/gradle/process/internal/ExecFactory +instanceKlass org/gradle/api/internal/ProcessOperations +instanceKlass org/gradle/process/internal/JavaForkOptionsFactory +instanceKlass org/gradle/process/internal/JavaExecHandleFactory +instanceKlass org/gradle/process/internal/ExecHandleFactory +instanceKlass org/gradle/process/internal/ExecActionFactory +instanceKlass org/gradle/internal/service/scopes/BasicGlobalScopeServices +instanceKlass org/gradle/cache/FileLockManager +instanceKlass org/gradle/launcher/daemon/registry/DaemonDir +instanceKlass org/gradle/internal/concurrent/Synchronizer +instanceKlass org/gradle/cache/internal/CacheSupport +instanceKlass org/gradle/cache/internal/CacheAccessSerializer +instanceKlass org/gradle/cache/Cache +instanceKlass org/gradle/launcher/daemon/registry/DaemonRegistry +instanceKlass org/gradle/launcher/daemon/registry/DaemonRegistryServices +instanceKlass org/gradle/internal/invocation/BuildAction +instanceKlass sun/reflect/generics/tree/TypeVariableSignature +instanceKlass org/gradle/launcher/daemon/server/api/DaemonCommandAction +instanceKlass sun/reflect/generics/tree/MethodTypeSignature +instanceKlass org/gradle/launcher/daemon/server/health/DaemonMemoryStatus +instanceKlass org/gradle/launcher/daemon/server/MasterExpirationStrategy +instanceKlass org/gradle/launcher/daemon/server/health/HealthExpirationStrategy +instanceKlass org/gradle/internal/event/ListenerManager +instanceKlass org/gradle/launcher/exec/BuildExecuter +instanceKlass org/gradle/launcher/daemon/server/health/DaemonHealthCheck +instanceKlass org/gradle/launcher/daemon/server/health/DaemonHealthStats +instanceKlass org/gradle/internal/concurrent/ExecutorFactory +instanceKlass org/gradle/launcher/daemon/server/stats/DaemonRunningStats +instanceKlass org/gradle/launcher/daemon/context/DaemonContext +instanceKlass org/gradle/launcher/daemon/server/Daemon +instanceKlass org/gradle/internal/serialize/Serializer +instanceKlass org/gradle/internal/service/DefaultServiceRegistry$CompositeServiceProvider +instanceKlass org/gradle/internal/service/DefaultServiceRegistry$ParentServices +instanceKlass org/gradle/api/specs/Spec +instanceKlass org/gradle/internal/classpath/DefaultClassPath +instanceKlass org/gradle/internal/classpath/ClassPath +instanceKlass org/gradle/launcher/daemon/server/scaninfo/DaemonScanInfo +instanceKlass org/gradle/launcher/daemon/server/expiry/DaemonExpirationStrategy +instanceKlass org/gradle/launcher/exec/BuildActionExecuter +instanceKlass org/gradle/launcher/daemon/server/DaemonServerConnector +instanceKlass java/lang/reflect/WildcardType +instanceKlass sun/reflect/generics/reflectiveObjects/LazyReflectiveObjectGenerator +instanceKlass java/lang/reflect/TypeVariable +instanceKlass sun/reflect/generics/reflectiveObjects/ParameterizedTypeImpl +instanceKlass sun/reflect/generics/visitor/Reifier +instanceKlass sun/reflect/generics/visitor/TypeTreeVisitor +instanceKlass sun/reflect/generics/tree/ClassSignature +instanceKlass sun/reflect/generics/tree/Signature +instanceKlass sun/reflect/generics/tree/ClassTypeSignature +instanceKlass sun/reflect/generics/tree/SimpleClassTypeSignature +instanceKlass sun/reflect/generics/tree/FieldTypeSignature +instanceKlass sun/reflect/generics/tree/BaseType +instanceKlass sun/reflect/generics/tree/TypeSignature +instanceKlass sun/reflect/generics/tree/ReturnType +instanceKlass sun/reflect/generics/tree/TypeArgument +instanceKlass sun/reflect/generics/tree/FormalTypeParameter +instanceKlass sun/reflect/generics/tree/TypeTree +instanceKlass sun/reflect/generics/tree/Tree +instanceKlass sun/reflect/generics/parser/SignatureParser +instanceKlass sun/reflect/generics/repository/AbstractRepository +instanceKlass sun/reflect/generics/factory/CoreReflectionFactory +instanceKlass sun/reflect/generics/factory/GenericsFactory +instanceKlass sun/reflect/generics/scope/AbstractScope +instanceKlass sun/reflect/generics/scope/Scope +instanceKlass org/gradle/internal/logging/services/DefaultLoggingManager$StartableLoggingSystem +instanceKlass org/gradle/internal/logging/services/DefaultLoggingManager$StartableLoggingRouter +instanceKlass org/gradle/internal/logging/services/DefaultLoggingManager +instanceKlass org/gradle/internal/logging/source/JavaUtilLoggingSystem +instanceKlass org/gradle/internal/logging/slf4j/Slf4jLoggingConfigurer +instanceKlass org/gradle/internal/logging/config/LoggingSystemAdapter +instanceKlass org/gradle/internal/logging/LoggingManagerInternal +instanceKlass org/gradle/internal/logging/StandardOutputCapture +instanceKlass org/gradle/api/logging/LoggingManager +instanceKlass org/gradle/internal/logging/source/StdErrLoggingSystem +instanceKlass org/gradle/internal/logging/source/PrintStreamLoggingSystem$SnapshotImpl +instanceKlass org/gradle/internal/logging/source/PrintStreamLoggingSystem$OutputEventDestination +instanceKlass org/gradle/internal/SystemProperties +instanceKlass org/gradle/internal/logging/source/PrintStreamLoggingSystem$1 +instanceKlass org/gradle/internal/service/AnnotatedServiceLifecycleHandler +instanceKlass org/gradle/internal/logging/events/operations/StyledTextBuildOperationProgressDetails +instanceKlass org/gradle/internal/operations/logging/StyledTextBuildOperationProgressDetails +instanceKlass org/gradle/internal/io/TextStream +instanceKlass org/gradle/internal/logging/source/PrintStreamLoggingSystem +instanceKlass org/gradle/internal/logging/source/StdOutLoggingSystem +instanceKlass java/lang/reflect/ParameterizedType +instanceKlass org/gradle/internal/logging/sink/OutputEventListenerManager$1 +instanceKlass org/gradle/internal/logging/services/TextStreamOutputEventListener +instanceKlass org/gradle/internal/logging/services/DefaultLoggingManagerFactory +instanceKlass org/gradle/internal/logging/sink/OutputEventListenerManager +instanceKlass org/gradle/internal/logging/services/LoggingServiceRegistry$1 +instanceKlass org/gradle/internal/logging/config/LoggingConfigurer +instanceKlass org/gradle/internal/logging/config/LoggingSourceSystem +instanceKlass org/gradle/launcher/daemon/configuration/DefaultDaemonServerConfiguration +instanceKlass org/gradle/internal/nativeintegration/jansi/JansiStorage +instanceKlass org/fusesource/jansi/Ansi +instanceKlass org/gradle/internal/nativeintegration/jansi/JansiLibrary +instanceKlass org/gradle/internal/nativeintegration/jansi/JansiLibraryFactory$1 +instanceKlass net/rubygrapefruit/platform/internal/jni/AbstractFileEventFunctions +instanceKlass jdk/internal/logger/DefaultLoggerFinder$1 +instanceKlass java/util/logging/Logger$SystemLoggerHelper$1 +instanceKlass java/util/logging/Logger$SystemLoggerHelper +instanceKlass java/util/logging/LogManager$4 +instanceKlass jdk/internal/logger/BootstrapLogger$BootstrapExecutors +instanceKlass jdk/internal/logger/BootstrapLogger$RedirectedLoggers +instanceKlass java/lang/ModuleLayer$$Lambda$26 +instanceKlass java/util/Spliterators$1Adapter +instanceKlass java/util/Spliterators$ArraySpliterator +instanceKlass java/util/Spliterator$OfDouble +instanceKlass java/util/Spliterator$OfLong +instanceKlass java/util/Spliterator$OfInt +instanceKlass java/util/Spliterator$OfPrimitive +instanceKlass java/util/Spliterators$EmptySpliterator +instanceKlass java/util/Spliterators +instanceKlass jdk/internal/logger/BootstrapLogger$DetectBackend$1 +instanceKlass jdk/internal/logger/BootstrapLogger$DetectBackend +instanceKlass jdk/internal/logger/BootstrapLogger +instanceKlass sun/util/logging/PlatformLogger$ConfigurableBridge +instanceKlass sun/util/logging/PlatformLogger$Bridge +instanceKlass java/lang/System$Logger +instanceKlass java/util/stream/Streams +instanceKlass java/util/stream/Streams$AbstractStreamBuilderImpl +instanceKlass java/util/stream/Stream$Builder +instanceKlass java/util/stream/Sink$ChainedReference +instanceKlass java/util/stream/FindOps$FindSink$OfRef$$Lambda$25 +instanceKlass java/util/stream/FindOps$FindSink$OfRef$$Lambda$24 +instanceKlass java/util/stream/FindOps$FindSink$OfRef$$Lambda$23 +instanceKlass java/util/stream/FindOps$FindSink$OfRef$$Lambda$22 +instanceKlass java/util/stream/FindOps$FindOp +instanceKlass java/util/stream/TerminalOp +instanceKlass java/util/stream/FindOps$FindSink +instanceKlass java/util/stream/TerminalSink +instanceKlass java/util/stream/Sink +instanceKlass java/util/function/Consumer +instanceKlass java/util/stream/FindOps +instanceKlass java/util/logging/Level$KnownLevel$$Lambda$21 +instanceKlass sun/reflect/annotation/AnnotationParser +instanceKlass java/util/EnumMap$1 +instanceKlass java/util/stream/StreamOpFlag$MaskBuilder +instanceKlass java/util/stream/PipelineHelper +instanceKlass java/util/stream/Stream +instanceKlass java/util/stream/BaseStream +instanceKlass java/util/stream/StreamSupport +instanceKlass java/util/ArrayList$ArrayListSpliterator +instanceKlass java/util/Spliterator +instanceKlass java/util/logging/Level$$Lambda$20 +instanceKlass java/util/Hashtable$Enumerator +instanceKlass java/util/Collections$3 +instanceKlass java/util/logging/LogManager$LoggerContext$1 +instanceKlass java/util/logging/LogManager$VisitedLoggers +instanceKlass java/util/function/Predicate +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass sun/invoke/util/ValueConversions$WrapperCache +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/MethodHandles$1 +instanceKlass java/lang/Byte$ByteCache +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/StringConcatFactory$Stringifiers +instanceKlass java/lang/StringConcatHelper +instanceKlass java/lang/invoke/StringConcatFactory$MethodHandleInlineCopyStrategy$3 +instanceKlass java/lang/invoke/StringConcatFactory$MethodHandleInlineCopyStrategy$2 +instanceKlass java/lang/invoke/StringConcatFactory$MethodHandleInlineCopyStrategy$1 +instanceKlass java/lang/invoke/StringConcatFactory$MethodHandleInlineCopyStrategy +instanceKlass java/lang/invoke/StringConcatFactory$RecipeElement +instanceKlass java/lang/invoke/StringConcatFactory$Recipe +instanceKlass java/lang/invoke/StringConcatFactory$1 +instanceKlass java/lang/invoke/StringConcatFactory +instanceKlass java/util/logging/LogManager$2 +instanceKlass java/lang/System$LoggerFinder +instanceKlass sun/security/util/SecurityConstants +instanceKlass java/security/AccessController$1 +instanceKlass java/util/logging/LogManager$LoggingProviderAccess +instanceKlass sun/util/logging/internal/LoggingProviderImpl$LogManagerAccess +instanceKlass java/lang/Shutdown$Lock +instanceKlass java/lang/Shutdown +instanceKlass java/lang/ApplicationShutdownHooks$1 +instanceKlass java/lang/ApplicationShutdownHooks +instanceKlass java/util/Collections$SynchronizedMap +instanceKlass java/util/logging/LogManager$LogNode +instanceKlass java/util/logging/LogManager$LoggerContext +instanceKlass java/util/logging/LogManager$1 +instanceKlass java/util/logging/LogManager +instanceKlass java/util/logging/Logger$ConfigurationData +instanceKlass java/util/logging/Logger$LoggerBundle +instanceKlass java/util/logging/Level +instanceKlass java/util/logging/Handler +instanceKlass java/util/logging/Logger +instanceKlass net/rubygrapefruit/platform/internal/jni/NativeLogger +instanceKlass net/rubygrapefruit/platform/file/FileEvents +instanceKlass java/util/RegularEnumSet$EnumSetIterator +instanceKlass net/rubygrapefruit/platform/internal/jni/NativeLibraryFunctions +instanceKlass java/lang/ClassLoader$NativeLibrary$Unloader +instanceKlass java/nio/channels/spi/AbstractInterruptibleChannel$1 +instanceKlass sun/nio/ch/Interruptible +instanceKlass sun/nio/ch/FileKey +instanceKlass sun/nio/ch/FileLockTable +instanceKlass sun/nio/ch/NativeThread +instanceKlass java/nio/channels/FileLock +instanceKlass sun/nio/ch/NativeDispatcher +instanceKlass sun/nio/ch/NativeThreadSet +instanceKlass sun/nio/ch/IOUtil$1 +instanceKlass sun/nio/ch/IOUtil +instanceKlass java/nio/file/attribute/FileAttribute +instanceKlass java/nio/channels/spi/AbstractInterruptibleChannel +instanceKlass java/nio/channels/InterruptibleChannel +instanceKlass java/nio/channels/ScatteringByteChannel +instanceKlass java/nio/channels/GatheringByteChannel +instanceKlass java/nio/channels/SeekableByteChannel +instanceKlass java/nio/channels/ByteChannel +instanceKlass java/nio/channels/WritableByteChannel +instanceKlass java/nio/channels/ReadableByteChannel +instanceKlass java/nio/channels/Channel +instanceKlass java/util/Formattable +instanceKlass java/util/Formatter$Conversion +instanceKlass java/util/Formatter$Flags +instanceKlass java/util/Formatter$FormatSpecifier +instanceKlass java/util/Formatter$FixedString +instanceKlass java/util/Formatter$FormatString +instanceKlass sun/util/resources/Bundles$2 +instanceKlass sun/util/resources/Bundles$CacheKeyReference +instanceKlass java/util/ResourceBundle$ResourceBundleProviderHelper$$Lambda$19 +instanceKlass java/util/ResourceBundle$ResourceBundleProviderHelper +instanceKlass java/util/ArrayList$SubList$1 +instanceKlass sun/util/resources/LocaleData$LocaleDataResourceBundleProvider +instanceKlass java/util/spi/ResourceBundleProvider +instanceKlass sun/util/resources/Bundles$CacheKey +instanceKlass java/util/ResourceBundle$1 +instanceKlass jdk/internal/access/JavaUtilResourceBundleAccess +instanceKlass sun/util/resources/Bundles +instanceKlass sun/util/resources/LocaleData$LocaleDataStrategy +instanceKlass sun/util/resources/Bundles$Strategy +instanceKlass sun/util/resources/LocaleData$1 +instanceKlass sun/util/locale/provider/CalendarDataUtility +instanceKlass sun/util/locale/provider/AvailableLanguageTags +instanceKlass sun/util/locale/provider/JRELocaleProviderAdapter$$Lambda$18 +instanceKlass java/util/ServiceLoader$ProviderImpl +instanceKlass java/util/ServiceLoader$Provider +instanceKlass java/util/ServiceLoader$1 +instanceKlass sun/util/resources/cldr/provider/CLDRLocaleDataMetaInfo +instanceKlass jdk/internal/module/ModulePatcher$PatchedModuleReader +instanceKlass java/util/ServiceLoader$3 +instanceKlass java/util/ServiceLoader$2 +instanceKlass java/util/ServiceLoader$LazyClassPathLookupIterator +instanceKlass java/util/concurrent/CopyOnWriteArrayList$COWIterator +instanceKlass java/util/ServiceLoader$ModuleServicesLookupIterator +instanceKlass java/util/ServiceLoader +instanceKlass sun/util/cldr/CLDRLocaleProviderAdapter$1 +instanceKlass sun/util/locale/StringTokenIterator +instanceKlass sun/util/locale/ParseStatus +instanceKlass sun/util/cldr/CLDRBaseLocaleDataMetaInfo +instanceKlass sun/util/locale/provider/LocaleDataMetaInfo +instanceKlass sun/util/locale/provider/LocaleProviderAdapter$1 +instanceKlass java/util/ResourceBundle +instanceKlass java/util/ResourceBundle$Control +instanceKlass sun/util/resources/LocaleData +instanceKlass sun/util/locale/provider/LocaleResources +instanceKlass sun/util/locale/LanguageTag +instanceKlass sun/util/locale/provider/ResourceBundleBasedAdapter +instanceKlass sun/util/locale/provider/LocaleProviderAdapter +instanceKlass java/util/spi/LocaleServiceProvider +instanceKlass java/text/DecimalFormatSymbols +instanceKlass java/util/Locale$1 +instanceKlass java/util/regex/Pattern$$Lambda$17 +instanceKlass java/util/Formatter +instanceKlass net/rubygrapefruit/platform/internal/LibraryDef +instanceKlass net/rubygrapefruit/platform/internal/NativeLibraryLocator +instanceKlass net/rubygrapefruit/platform/internal/NativeLibraryLoader +instanceKlass net/rubygrapefruit/platform/Process +instanceKlass net/rubygrapefruit/platform/internal/Platform +instanceKlass net/rubygrapefruit/platform/Native +instanceKlass java/util/TreeMap$Entry +instanceKlass java/lang/ProcessEnvironment$CheckedEntry +instanceKlass java/lang/ProcessEnvironment$CheckedEntrySet$1 +instanceKlass java/util/NavigableMap +instanceKlass java/util/SortedMap +instanceKlass java/lang/ProcessEnvironment$EntryComparator +instanceKlass java/lang/ProcessEnvironment$NameComparator +instanceKlass org/gradle/api/internal/file/temp/DefaultTemporaryFileProvider +instanceKlass org/gradle/internal/nativeintegration/services/NativeServices$1 +instanceKlass org/gradle/internal/file/StatStatistics +instanceKlass org/gradle/internal/file/StatStatistics$Collector +instanceKlass org/gradle/internal/nativeintegration/filesystem/services/GenericFileSystem +instanceKlass org/gradle/internal/service/InjectUtil +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass java/lang/ClassValue$Version +instanceKlass java/lang/ClassValue$Identity +instanceKlass java/lang/ClassValue +instanceKlass java/lang/invoke/MethodHandleImpl$ArrayAccessor +instanceKlass java/lang/invoke/MethodHandleImpl$2 +instanceKlass java/lang/invoke/MethodHandleImpl$LoopClauses +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/internal/service/DefaultServiceRegistry$1 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/internal/nativeintegration/filesystem/FileCanonicalizer +instanceKlass org/gradle/internal/nativeintegration/filesystem/services/GenericFileSystem$Factory +instanceKlass org/gradle/api/internal/file/temp/TemporaryFileProvider +instanceKlass org/gradle/internal/nativeintegration/filesystem/FileSystem +instanceKlass org/gradle/internal/file/Stat +instanceKlass org/gradle/internal/file/Chmod +instanceKlass org/gradle/internal/nativeintegration/filesystem/FileModeMutator +instanceKlass org/gradle/internal/nativeintegration/filesystem/FileModeAccessor +instanceKlass org/gradle/internal/nativeintegration/filesystem/Symlink +instanceKlass org/gradle/internal/nativeintegration/filesystem/services/FileSystemServices +instanceKlass org/gradle/internal/nativeintegration/jansi/DefaultJansiRuntimeResolver +instanceKlass org/gradle/internal/nativeintegration/jansi/JansiRuntimeResolver +instanceKlass org/gradle/internal/nativeintegration/jansi/JansiLibraryFactory +instanceKlass org/gradle/internal/nativeintegration/jansi/JansiStorageLocator +instanceKlass org/gradle/internal/nativeintegration/jansi/JansiBootPathConfigurer +instanceKlass java/lang/Class$3 +instanceKlass org/gradle/internal/service/DefaultServiceRegistry$ClassInspector$ClassDetails +instanceKlass java/util/concurrent/ConcurrentLinkedQueue$Node +instanceKlass org/gradle/internal/reflect/JavaMethod +instanceKlass org/gradle/internal/service/AbstractServiceMethod +instanceKlass java/util/LinkedList$ListItr +instanceKlass net/rubygrapefruit/platform/file/FileSystems +instanceKlass net/rubygrapefruit/platform/SystemInfo +instanceKlass net/rubygrapefruit/platform/file/PosixFiles +instanceKlass net/rubygrapefruit/platform/file/Files +instanceKlass net/rubygrapefruit/platform/memory/Memory +instanceKlass org/gradle/internal/jvm/Jvm +instanceKlass org/gradle/internal/jvm/JavaInfo +instanceKlass net/rubygrapefruit/platform/WindowsRegistry +instanceKlass org/gradle/internal/os/OperatingSystem +instanceKlass org/gradle/internal/service/RelevantMethodsBuilder +instanceKlass org/gradle/internal/Cast +instanceKlass org/gradle/internal/service/ServiceMethod +instanceKlass org/gradle/internal/service/MethodHandleBasedServiceMethodFactory +instanceKlass org/gradle/internal/service/DefaultServiceMethodFactory +instanceKlass org/gradle/internal/service/ServiceMethodFactory +instanceKlass org/gradle/internal/service/RelevantMethods +instanceKlass org/gradle/internal/service/DefaultServiceRegistry$ClassInspector +instanceKlass org/gradle/internal/service/DefaultServiceRegistry$ThisAsService +instanceKlass org/gradle/internal/concurrent/CompositeStoppable$1 +instanceKlass org/gradle/internal/concurrent/CompositeStoppable +instanceKlass org/gradle/internal/service/AnnotatedServiceLifecycleHandler$Registration +instanceKlass org/gradle/internal/service/DefaultServiceRegistry$OwnServices +instanceKlass org/gradle/internal/nativeintegration/console/ConsoleDetector +instanceKlass org/gradle/internal/nativeintegration/NativeCapabilities +instanceKlass org/gradle/internal/nativeintegration/network/HostnameLookup +instanceKlass net/rubygrapefruit/platform/ProcessLauncher +instanceKlass net/rubygrapefruit/platform/NativeIntegration +instanceKlass org/gradle/internal/nativeintegration/ProcessEnvironment +instanceKlass org/gradle/internal/nativeintegration/filesystem/FileMetadataAccessor +instanceKlass org/gradle/initialization/GradleUserHomeDirProvider +instanceKlass org/gradle/internal/service/ServiceRegistration +instanceKlass org/gradle/internal/service/DefaultServiceRegistry$ManagedObjectServiceProvider +instanceKlass org/gradle/internal/service/Service +instanceKlass org/gradle/internal/service/ServiceProvider +instanceKlass org/gradle/internal/concurrent/Stoppable +instanceKlass org/gradle/internal/service/ServiceProvider$Visitor +instanceKlass org/gradle/internal/service/DefaultServiceRegistry +instanceKlass org/gradle/internal/service/ContainsServices +instanceKlass org/gradle/internal/serialize/AbstractDecoder +instanceKlass org/gradle/internal/serialize/Decoder +instanceKlass org/gradle/launcher/bootstrap/EntryPoint$RecordingExecutionListener +instanceKlass org/gradle/internal/logging/events/operations/LogEventBuildOperationProgressDetails +instanceKlass org/gradle/internal/operations/logging/LogEventBuildOperationProgressDetails +instanceKlass org/gradle/internal/logging/slf4j/BuildOperationAwareLogger +instanceKlass org/gradle/internal/logging/sink/OutputEventRenderer$2 +instanceKlass org/gradle/internal/dispatch/ReflectionDispatch +instanceKlass org/gradle/internal/logging/sink/OutputEventRenderer$1 +instanceKlass org/gradle/internal/logging/sink/OutputEventRenderer$LazyListener +instanceKlass org/gradle/internal/logging/events/OutputEventListener$1 +instanceKlass java/lang/reflect/Proxy$ProxyBuilder$1 +instanceKlass java/lang/reflect/ProxyGenerator$ExceptionTableEntry +instanceKlass java/lang/reflect/ProxyGenerator$PrimitiveTypeInfo +instanceKlass java/lang/reflect/ProxyGenerator$FieldInfo +instanceKlass java/lang/reflect/ProxyGenerator$ConstantPool$Entry +instanceKlass java/lang/reflect/ProxyGenerator$MethodInfo +instanceKlass java/lang/reflect/ProxyGenerator$ProxyMethod +instanceKlass java/lang/reflect/ProxyGenerator$ConstantPool +instanceKlass java/lang/reflect/ProxyGenerator +instanceKlass java/lang/reflect/Proxy$$Lambda$16 +instanceKlass java/lang/PublicMethods +instanceKlass java/lang/reflect/Proxy$ProxyBuilder +instanceKlass jdk/internal/loader/AbstractClassLoaderValue$Memoizer +instanceKlass java/lang/reflect/Proxy$$Lambda$15 +instanceKlass java/lang/reflect/Proxy +instanceKlass org/gradle/internal/dispatch/ProxyDispatchAdapter$DispatchingInvocationHandler +instanceKlass java/lang/reflect/InvocationHandler +instanceKlass org/gradle/internal/dispatch/ProxyDispatchAdapter +instanceKlass org/gradle/internal/logging/events/operations/ProgressStartBuildOperationProgressDetails +instanceKlass org/gradle/internal/operations/logging/ProgressStartBuildOperationProgressDetails +instanceKlass org/gradle/internal/logging/sink/OutputEventTransformer +instanceKlass org/gradle/internal/exceptions/MultiCauseException +instanceKlass org/gradle/internal/event/AbstractBroadcastDispatch +instanceKlass org/gradle/internal/event/ListenerBroadcast +instanceKlass org/gradle/internal/dispatch/Dispatch +instanceKlass org/gradle/internal/Factory +instanceKlass org/gradle/internal/logging/format/LogHeaderFormatter +instanceKlass org/gradle/internal/nativeintegration/console/ConsoleMetaData +instanceKlass org/gradle/internal/logging/console/ColorMap +instanceKlass org/gradle/api/logging/StandardOutputListener +instanceKlass org/gradle/internal/logging/text/StyledTextOutput +instanceKlass org/gradle/internal/logging/events/OutputEvent +instanceKlass org/gradle/internal/logging/config/LoggingSystem$Snapshot +instanceKlass org/gradle/internal/logging/sink/OutputEventRenderer +instanceKlass org/gradle/internal/logging/config/LoggingRouter +instanceKlass org/gradle/internal/logging/LoggingOutputInternal +instanceKlass org/gradle/api/logging/LoggingOutput +instanceKlass org/gradle/internal/logging/config/LoggingSystem +instanceKlass org/gradle/internal/logging/slf4j/OutputEventListenerBackedLoggerContext$NoOpLogger +instanceKlass org/gradle/api/logging/Logger +instanceKlass java/util/concurrent/atomic/AtomicReference +instanceKlass org/gradle/internal/time/TimeSource$1 +instanceKlass org/gradle/internal/time/TimeSource +instanceKlass org/gradle/internal/time/MonotonicClock +instanceKlass org/gradle/internal/time/Clock +instanceKlass org/gradle/internal/time/CountdownTimer +instanceKlass org/gradle/internal/time/Timer +instanceKlass org/gradle/internal/time/Time +instanceKlass org/gradle/internal/logging/events/OutputEventListener +instanceKlass org/gradle/internal/logging/slf4j/OutputEventListenerBackedLoggerContext +instanceKlass org/slf4j/impl/StaticLoggerBinder +instanceKlass org/slf4j/spi/LoggerFactoryBinder +instanceKlass java/net/URLClassLoader$3$1 +instanceKlass java/net/URLClassLoader$3 +instanceKlass jdk/internal/loader/URLClassPath$1 +instanceKlass java/lang/CompoundEnumeration +instanceKlass jdk/internal/loader/BuiltinClassLoader$1 +instanceKlass java/util/Collections$EmptyEnumeration +instanceKlass org/slf4j/helpers/Util +instanceKlass org/slf4j/helpers/NOPLoggerFactory +instanceKlass java/util/concurrent/LinkedBlockingQueue$Node +instanceKlass java/util/concurrent/locks/AbstractQueuedSynchronizer$ConditionObject +instanceKlass java/util/concurrent/locks/Condition +instanceKlass java/util/concurrent/locks/AbstractQueuedSynchronizer$Node +instanceKlass java/util/concurrent/BlockingQueue +instanceKlass org/slf4j/Logger +instanceKlass org/slf4j/helpers/SubstituteLoggerFactory +instanceKlass org/slf4j/event/LoggingEvent +instanceKlass org/slf4j/ILoggerFactory +instanceKlass org/slf4j/LoggerFactory +instanceKlass org/slf4j/helpers/BasicMarker +instanceKlass org/slf4j/Marker +instanceKlass org/slf4j/helpers/BasicMarkerFactory +instanceKlass org/slf4j/IMarkerFactory +instanceKlass org/slf4j/MarkerFactory +instanceKlass org/gradle/api/logging/Logging +instanceKlass org/gradle/launcher/daemon/configuration/DaemonServerConfiguration +instanceKlass org/gradle/internal/service/ServiceRegistry +instanceKlass org/gradle/internal/service/ServiceLookup +instanceKlass org/gradle/launcher/bootstrap/ExecutionListener +instanceKlass org/gradle/api/Action +instanceKlass org/gradle/internal/logging/text/StyledTextOutputFactory +instanceKlass org/gradle/api/logging/configuration/LoggingConfiguration +instanceKlass org/gradle/initialization/BuildClientMetaData +instanceKlass org/gradle/launcher/bootstrap/ExecutionCompleter +instanceKlass org/gradle/launcher/bootstrap/EntryPoint +instanceKlass java/io/FilePermissionCollection$1 +instanceKlass java/io/FileInputStream$1 +instanceKlass java/security/Security$1 +instanceKlass java/security/Security +instanceKlass sun/security/util/SecurityProperties +instanceKlass sun/security/util/FilePermCompat +instanceKlass java/io/FilePermission$1 +instanceKlass jdk/internal/access/JavaIOFilePermissionAccess +instanceKlass sun/net/www/MessageHeader +instanceKlass java/net/URLConnection +instanceKlass java/util/LinkedList$Node +instanceKlass java/net/URLClassLoader$1 +instanceKlass java/net/URLClassLoader$7 +instanceKlass jdk/internal/access/JavaNetURLClassLoaderAccess +instanceKlass jdk/internal/jimage/ImageLocation +instanceKlass jdk/internal/jimage/decompressor/Decompressor +instanceKlass jdk/internal/jimage/ImageStringsReader +instanceKlass jdk/internal/jimage/ImageStrings +instanceKlass jdk/internal/jimage/ImageHeader +instanceKlass jdk/internal/jimage/NativeImageBuffer$1 +instanceKlass jdk/internal/jimage/NativeImageBuffer +instanceKlass jdk/internal/jimage/BasicImageReader$1 +instanceKlass jdk/internal/jimage/BasicImageReader +instanceKlass jdk/internal/jimage/ImageReader +instanceKlass jdk/internal/jimage/ImageReaderFactory$1 +instanceKlass java/nio/file/Paths +instanceKlass jdk/internal/jimage/ImageReaderFactory +instanceKlass jdk/internal/module/SystemModuleFinders$SystemImage +instanceKlass jdk/internal/module/SystemModuleFinders$SystemModuleReader +instanceKlass java/lang/module/ModuleReader +instanceKlass jdk/internal/loader/BuiltinClassLoader$5 +instanceKlass jdk/internal/loader/BuiltinClassLoader$2 +instanceKlass jdk/internal/module/Resources +instanceKlass jdk/internal/util/ArraysSupport +instanceKlass java/io/RandomAccessFile$1 +instanceKlass java/lang/invoke/VarHandle$AccessDescriptor +instanceKlass org/gradle/api/Action +instanceKlass org/gradle/internal/IoActions +instanceKlass java/util/Properties$LineReader +instanceKlass java/util/regex/Pattern$BmpCharPredicate$$Lambda$14 +instanceKlass java/util/regex/Pattern$$Lambda$13 +instanceKlass java/util/regex/Pattern$$Lambda$12 +instanceKlass java/util/regex/Pattern$BitClass$$Lambda$11 +instanceKlass java/util/regex/Pattern$TreeInfo +instanceKlass java/util/regex/Pattern$CharPredicate$$Lambda$10 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass java/util/regex/CharPredicates$$Lambda$9 +instanceKlass org/gradle/api/Transformer +instanceKlass org/gradle/util/internal/GUtil +instanceKlass java/util/zip/ZipFile$$Lambda$8 +instanceKlass org/gradle/api/internal/classpath/DefaultModuleRegistry$$Lambda$7 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass java/util/LinkedHashMap$LinkedHashIterator +instanceKlass java/util/Collections$1 +instanceKlass org/gradle/api/internal/classpath/DefaultModuleRegistry$DefaultModule +instanceKlass java/util/regex/IntHashSet +instanceKlass java/util/regex/Matcher +instanceKlass java/util/regex/MatchResult +instanceKlass java/util/regex/Pattern$$Lambda$6 +instanceKlass java/util/regex/CharPredicates$$Lambda$5 +instanceKlass java/util/regex/Pattern$BmpCharPredicate +instanceKlass java/util/regex/Pattern$CharPredicate +instanceKlass java/util/regex/CharPredicates +instanceKlass java/util/regex/ASCII +instanceKlass java/util/regex/Pattern$Node +instanceKlass java/util/regex/Pattern +instanceKlass org/gradle/internal/service/CachingServiceLocator +instanceKlass java/io/Reader +instanceKlass org/gradle/internal/service/DefaultServiceLocator +instanceKlass org/gradle/internal/service/ServiceLocator +instanceKlass org/gradle/internal/classloader/DefaultClassLoaderFactory +instanceKlass org/gradle/api/internal/classpath/ManifestUtil +instanceKlass org/gradle/internal/Cast +instanceKlass java/util/AbstractList$Itr +instanceKlass org/gradle/internal/classloader/ClassLoaderSpec +instanceKlass org/gradle/internal/classloader/ClassLoaderVisitor +instanceKlass java/util/Collections$EmptyIterator +instanceKlass org/gradle/internal/classpath/DefaultClassPath +instanceKlass org/gradle/internal/classpath/ClassPath +instanceKlass org/gradle/internal/installation/GradleInstallation$1 +instanceKlass java/io/FileFilter +instanceKlass org/gradle/internal/installation/GradleInstallation +instanceKlass org/gradle/internal/classloader/ClasspathUtil +instanceKlass org/gradle/internal/installation/CurrentGradleInstallationLocator +instanceKlass org/gradle/internal/installation/CurrentGradleInstallation +instanceKlass org/gradle/api/internal/classpath/DefaultModuleRegistry$$Lambda$4 +instanceKlass org/gradle/api/specs/Spec +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass sun/reflect/misc/ReflectUtil +instanceKlass org/gradle/api/internal/classpath/Module +instanceKlass org/gradle/api/internal/classpath/DefaultModuleRegistry +instanceKlass org/gradle/cache/GlobalCache +instanceKlass org/gradle/api/internal/DefaultClassPathProvider +instanceKlass org/gradle/api/internal/ClassPathProvider +instanceKlass org/gradle/api/internal/DefaultClassPathRegistry +instanceKlass org/gradle/internal/classloader/ClassLoaderHierarchy +instanceKlass org/gradle/internal/classloader/ClassLoaderFactory +instanceKlass org/gradle/api/internal/ClassPathRegistry +instanceKlass org/gradle/api/internal/classpath/ModuleRegistry +instanceKlass org/gradle/launcher/bootstrap/ProcessBootstrap +instanceKlass java/lang/PublicMethods$Key +instanceKlass java/lang/PublicMethods$MethodList +instanceKlass org/gradle/launcher/daemon/bootstrap/GradleDaemon +instanceKlass java/security/SecureClassLoader$DebugHolder +instanceKlass java/security/Permissions$1 +instanceKlass java/security/PermissionCollection +instanceKlass java/security/SecureClassLoader$1 +instanceKlass java/security/SecureClassLoader$CodeSourceKey +instanceKlass java/util/zip/Checksum$1 +instanceKlass java/util/zip/CRC32 +instanceKlass java/util/zip/Checksum +instanceKlass sun/nio/ByteBuffered +instanceKlass java/lang/Package$VersionInfo +instanceKlass java/lang/NamedPackage +instanceKlass sun/security/util/ManifestEntryVerifier +instanceKlass jdk/internal/loader/Resource +instanceKlass java/util/StringTokenizer +instanceKlass java/util/jar/Attributes$Name +instanceKlass java/util/jar/Attributes +instanceKlass java/security/CodeSigner +instanceKlass sun/security/util/Debug +instanceKlass java/util/jar/JarVerifier +instanceKlass java/util/zip/ZipFile$InflaterCleanupAction +instanceKlass java/util/zip/Inflater$InflaterZStreamRef +instanceKlass java/util/zip/Inflater +instanceKlass java/util/zip/ZipEntry +instanceKlass java/util/jar/JarFile$1 +instanceKlass jdk/internal/util/jar/JarIndex +instanceKlass java/nio/Bits$1 +instanceKlass jdk/internal/access/JavaNioAccess$BufferPool +instanceKlass java/nio/Bits +instanceKlass sun/nio/ch/DirectBuffer +instanceKlass jdk/internal/perf/PerfCounter$CoreCounters +instanceKlass jdk/internal/perf/Perf +instanceKlass jdk/internal/perf/Perf$GetPerfAction +instanceKlass jdk/internal/perf/PerfCounter +instanceKlass java/util/zip/ZipUtils +instanceKlass java/util/zip/ZipFile$Source$End +instanceKlass java/lang/invoke/VarForm +instanceKlass java/lang/invoke/VarHandleGuards +instanceKlass jdk/internal/util/Preconditions$1 +instanceKlass java/lang/invoke/VarHandle$1 +instanceKlass java/lang/invoke/VarHandles +instanceKlass java/util/concurrent/atomic/AtomicBoolean +instanceKlass java/io/RandomAccessFile$2 +instanceKlass jdk/internal/access/JavaIORandomAccessFileAccess +instanceKlass java/io/RandomAccessFile +instanceKlass java/io/DataInput +instanceKlass java/io/DataOutput +instanceKlass java/nio/file/attribute/FileTime +instanceKlass sun/nio/fs/WindowsNativeDispatcher$CompletionStatus +instanceKlass sun/nio/fs/WindowsNativeDispatcher$AclInformation +instanceKlass sun/nio/fs/WindowsNativeDispatcher$Account +instanceKlass sun/nio/fs/WindowsNativeDispatcher$DiskFreeSpace +instanceKlass sun/nio/fs/WindowsNativeDispatcher$VolumeInformation +instanceKlass sun/nio/fs/WindowsNativeDispatcher$FirstStream +instanceKlass sun/nio/fs/WindowsNativeDispatcher$FirstFile +instanceKlass java/util/Enumeration +instanceKlass java/util/ArrayDeque$DeqIterator +instanceKlass java/lang/ClassLoaderHelper +instanceKlass java/lang/ClassLoader$NativeLibrary +instanceKlass java/lang/ClassLoader$2 +instanceKlass sun/nio/fs/WindowsNativeDispatcher$1 +instanceKlass sun/nio/fs/WindowsNativeDispatcher +instanceKlass sun/nio/fs/NativeBuffer$Deallocator +instanceKlass sun/nio/fs/NativeBuffer +instanceKlass sun/nio/fs/NativeBuffers +instanceKlass sun/nio/fs/WindowsFileAttributes +instanceKlass java/nio/file/attribute/DosFileAttributes +instanceKlass sun/nio/fs/AbstractBasicFileAttributeView +instanceKlass sun/nio/fs/DynamicFileAttributeView +instanceKlass sun/nio/fs/WindowsFileAttributeViews +instanceKlass sun/nio/fs/Util +instanceKlass java/nio/file/attribute/BasicFileAttributeView +instanceKlass java/nio/file/attribute/FileAttributeView +instanceKlass java/nio/file/attribute/AttributeView +instanceKlass java/nio/file/Files +instanceKlass java/nio/file/CopyOption +instanceKlass java/nio/file/attribute/BasicFileAttributes +instanceKlass sun/nio/fs/WindowsPath +instanceKlass java/nio/file/Path +instanceKlass java/nio/file/Watchable +instanceKlass java/net/URI$Parser +instanceKlass sun/nio/fs/WindowsPathParser$Result +instanceKlass sun/nio/fs/WindowsPathParser +instanceKlass java/util/Arrays$ArrayItr +instanceKlass java/nio/file/FileSystem +instanceKlass java/nio/file/OpenOption +instanceKlass java/nio/file/spi/FileSystemProvider +instanceKlass sun/nio/fs/DefaultFileSystemProvider +instanceKlass java/nio/file/FileSystems$DefaultFileSystemHolder$1 +instanceKlass java/nio/file/FileSystems$DefaultFileSystemHolder +instanceKlass java/nio/file/FileSystems +instanceKlass java/util/zip/ZipFile$Source$Key +instanceKlass java/util/zip/ZipFile$Source +instanceKlass java/util/zip/ZipFile$CleanableResource +instanceKlass java/util/zip/ZipCoder +instanceKlass java/lang/Runtime$Version +instanceKlass java/util/jar/JavaUtilJarAccessImpl +instanceKlass jdk/internal/access/JavaUtilJarAccess +instanceKlass sun/nio/cs/ThreadLocalCoders$Cache +instanceKlass sun/nio/cs/ThreadLocalCoders +instanceKlass jdk/internal/loader/FileURLMapper +instanceKlass jdk/internal/loader/URLClassPath$JarLoader$1 +instanceKlass java/util/zip/ZipFile$1 +instanceKlass jdk/internal/access/JavaUtilZipFileAccess +instanceKlass java/util/zip/ZipFile +instanceKlass java/util/zip/ZipConstants +instanceKlass jdk/internal/loader/URLClassPath$Loader +instanceKlass jdk/internal/loader/URLClassPath$3 +instanceKlass java/security/PrivilegedExceptionAction +instanceKlass sun/net/util/URLUtil +instanceKlass sun/launcher/LauncherHelper +instanceKlass jdk/internal/vm/PostVMInitHook$1 +instanceKlass java/lang/StringCoding$StringEncoder +instanceKlass jdk/internal/util/EnvUtils +instanceKlass jdk/internal/vm/PostVMInitHook$2 +instanceKlass sun/util/locale/InternalLocaleBuilder$CaseInsensitiveChar +instanceKlass sun/util/locale/InternalLocaleBuilder +instanceKlass sun/util/locale/LocaleUtils +instanceKlass sun/util/locale/BaseLocale$Key +instanceKlass sun/util/locale/BaseLocale +instanceKlass sun/util/locale/LocaleObjectCache +instanceKlass java/util/Locale +instanceKlass jdk/internal/vm/PostVMInitHook +instanceKlass jdk/internal/module/ModuleBootstrap$2 +instanceKlass jdk/internal/module/IllegalAccessLogger$Builder +instanceKlass jdk/internal/module/IllegalAccessLogger +instanceKlass java/lang/WeakPairMap$$Lambda$3 +instanceKlass jdk/internal/org/objectweb/asm/FieldVisitor +instanceKlass java/lang/Module$$Lambda$2 +instanceKlass java/util/function/BiFunction +instanceKlass java/lang/WeakPairMap$Pair$Lookup +instanceKlass java/lang/WeakPairMap$Pair +instanceKlass java/lang/WeakPairMap +instanceKlass java/lang/Module$ReflectionData +instanceKlass jdk/internal/misc/InnocuousThread$2 +instanceKlass jdk/internal/misc/InnocuousThread$3 +instanceKlass jdk/internal/ref/CleanerFactory$1$1 +instanceKlass java/lang/ref/Cleaner$Cleanable +instanceKlass jdk/internal/ref/CleanerImpl +instanceKlass java/lang/ref/Cleaner$1 +instanceKlass java/lang/ref/Cleaner +instanceKlass jdk/internal/ref/CleanerFactory$1 +instanceKlass java/util/concurrent/ThreadFactory +instanceKlass jdk/internal/ref/CleanerFactory +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/InvokerBytecodeGenerator$CpPatch +instanceKlass java/lang/invoke/LambdaFormBuffer +instanceKlass java/lang/invoke/LambdaFormEditor +instanceKlass java/lang/invoke/DelegatingMethodHandle$Holder +instanceKlass sun/invoke/util/Wrapper$1 +instanceKlass java/lang/invoke/DirectMethodHandle$1 +instanceKlass sun/invoke/empty/Empty +instanceKlass sun/invoke/util/VerifyType +instanceKlass java/lang/invoke/ClassSpecializer$Factory +instanceKlass java/lang/invoke/ClassSpecializer$SpeciesData +instanceKlass java/lang/invoke/ClassSpecializer$1 +instanceKlass java/lang/invoke/ClassSpecializer +instanceKlass java/lang/invoke/InnerClassLambdaMetafactory$1 +instanceKlass jdk/internal/module/ModuleBootstrap$$Lambda$1 +instanceKlass jdk/internal/org/objectweb/asm/AnnotationVisitor +instanceKlass jdk/internal/org/objectweb/asm/Frame +instanceKlass jdk/internal/org/objectweb/asm/Label +instanceKlass jdk/internal/org/objectweb/asm/MethodVisitor +instanceKlass jdk/internal/org/objectweb/asm/Item +instanceKlass jdk/internal/org/objectweb/asm/ByteVector +instanceKlass jdk/internal/org/objectweb/asm/ClassVisitor +instanceKlass sun/invoke/util/BytecodeDescriptor +instanceKlass java/lang/invoke/InfoFromMemberName +instanceKlass java/lang/invoke/MethodHandleInfo +instanceKlass sun/security/action/GetBooleanAction +instanceKlass jdk/internal/org/objectweb/asm/Type +instanceKlass java/lang/invoke/AbstractValidatingLambdaMetafactory +instanceKlass java/lang/invoke/MethodHandleImpl$1 +instanceKlass jdk/internal/access/JavaLangInvokeAccess +instanceKlass java/lang/invoke/Invokers$Holder +instanceKlass java/lang/invoke/BootstrapMethodInvoker +instanceKlass java/lang/invoke/InvokerBytecodeGenerator$2 +instanceKlass java/lang/invoke/InvokerBytecodeGenerator +instanceKlass java/lang/invoke/LambdaForm$Holder +instanceKlass java/lang/invoke/LambdaForm$Name +instanceKlass java/lang/invoke/Invokers +instanceKlass java/lang/invoke/MethodHandleImpl +instanceKlass sun/invoke/util/ValueConversions +instanceKlass java/lang/invoke/DirectMethodHandle$Holder +instanceKlass java/lang/invoke/LambdaForm$NamedFunction +instanceKlass sun/invoke/util/Wrapper$Format +instanceKlass sun/invoke/util/VerifyAccess +instanceKlass java/security/Permission +instanceKlass java/security/Guard +instanceKlass java/lang/invoke/MemberName$Factory +instanceKlass java/lang/invoke/MethodHandles +instanceKlass java/lang/invoke/MethodTypeForm +instanceKlass java/lang/Void +instanceKlass java/lang/invoke/MethodType$ConcurrentWeakInternSet +instanceKlass java/lang/invoke/MethodHandles$Lookup +instanceKlass java/lang/invoke/LambdaMetafactory +instanceKlass java/lang/ModuleLayer$Controller +instanceKlass java/util/HashMap$HashIterator +instanceKlass jdk/internal/module/ServicesCatalog$ServiceProvider +instanceKlass java/util/concurrent/CopyOnWriteArrayList +instanceKlass java/util/Collections$UnmodifiableCollection$1 +instanceKlass java/util/Collections$UnmodifiableCollection +instanceKlass java/util/ArrayList$Itr +instanceKlass java/util/ImmutableCollections$ListItr +instanceKlass java/util/ListIterator +instanceKlass java/lang/ModuleLayer +instanceKlass jdk/internal/module/ModuleLoaderMap$Mapper +instanceKlass java/util/function/Function +instanceKlass jdk/internal/module/ModuleLoaderMap +instanceKlass java/util/ImmutableCollections$Set12$1 +instanceKlass java/util/ImmutableCollections$MapN$MapNIterator +instanceKlass java/util/AbstractMap$1$1 +instanceKlass java/lang/module/ResolvedModule +instanceKlass java/lang/module/Configuration +instanceKlass java/util/ImmutableCollections$SetN$SetNIterator +instanceKlass jdk/internal/loader/BuiltinClassLoader$LoadedModule +instanceKlass jdk/internal/util/Preconditions +instanceKlass java/util/Deque +instanceKlass java/util/Queue +instanceKlass sun/net/util/IPAddressUtil +instanceKlass java/net/URLStreamHandler +instanceKlass sun/net/www/ParseUtil +instanceKlass java/io/ExpiringCache$Entry +instanceKlass java/net/URL$3 +instanceKlass jdk/internal/access/JavaNetURLAccess +instanceKlass java/net/URL$DefaultFactory +instanceKlass java/net/URLStreamHandlerFactory +instanceKlass jdk/internal/loader/URLClassPath +instanceKlass java/security/Principal +instanceKlass java/security/ProtectionDomain$Key +instanceKlass java/security/ProtectionDomain$JavaSecurityAccessImpl +instanceKlass jdk/internal/access/JavaSecurityAccess +instanceKlass java/lang/ClassLoader$ParallelLoaders +instanceKlass jdk/internal/loader/AbstractClassLoaderValue +instanceKlass jdk/internal/module/ServicesCatalog +instanceKlass jdk/internal/loader/BootLoader +instanceKlass java/util/Optional +instanceKlass jdk/internal/module/ModuleBootstrap$Counters +instanceKlass jdk/internal/module/SystemModuleFinders$SystemModuleFinder +instanceKlass java/lang/module/ModuleFinder +instanceKlass jdk/internal/module/SystemModuleFinders$3 +instanceKlass jdk/internal/module/ModuleHashes$HashSupplier +instanceKlass java/util/KeyValueHolder +instanceKlass jdk/internal/module/SystemModuleFinders$2 +instanceKlass java/util/function/Supplier +instanceKlass java/lang/module/ModuleReference +instanceKlass jdk/internal/module/ModuleResolution +instanceKlass java/util/Collections$UnmodifiableMap +instanceKlass jdk/internal/module/ModuleHashes$Builder +instanceKlass jdk/internal/module/ModuleHashes +instanceKlass jdk/internal/module/ModuleTarget +instanceKlass java/lang/Enum +instanceKlass java/lang/module/ModuleDescriptor$Version +instanceKlass java/lang/module/ModuleDescriptor$Provides +instanceKlass java/lang/module/ModuleDescriptor$Opens +instanceKlass java/lang/module/ModuleDescriptor$Exports +instanceKlass java/lang/module/ModuleDescriptor$Requires +instanceKlass jdk/internal/module/Builder +instanceKlass jdk/internal/module/SystemModules$default +instanceKlass jdk/internal/module/SystemModules +instanceKlass jdk/internal/module/SystemModulesMap +instanceKlass java/net/URI$1 +instanceKlass jdk/internal/access/JavaNetUriAccess +instanceKlass java/net/URI +instanceKlass jdk/internal/module/SystemModuleFinders +instanceKlass jdk/internal/module/ModulePatcher +instanceKlass java/util/ImmutableCollections +instanceKlass java/io/ExpiringCache +instanceKlass java/io/FileSystem +instanceKlass java/io/DefaultFileSystem +instanceKlass java/io/File +instanceKlass java/lang/module/ModuleDescriptor$1 +instanceKlass jdk/internal/access/JavaLangModuleAccess +instanceKlass java/lang/module/ModuleDescriptor +instanceKlass jdk/internal/module/ModuleBootstrap +instanceKlass java/lang/CharacterData +instanceKlass java/lang/invoke/MethodHandleStatics +instanceKlass java/lang/System$2 +instanceKlass jdk/internal/access/JavaLangAccess +instanceKlass sun/io/Win32ErrorMode +instanceKlass jdk/internal/misc/OSEnvironment +instanceKlass java/lang/Integer$IntegerCache +instanceKlass jdk/internal/misc/Signal$NativeHandler +instanceKlass java/util/Hashtable$Entry +instanceKlass jdk/internal/misc/Signal +instanceKlass java/lang/Terminator$1 +instanceKlass jdk/internal/misc/Signal$Handler +instanceKlass java/lang/Terminator +instanceKlass java/nio/charset/CoderResult +instanceKlass java/lang/Readable +instanceKlass java/nio/ByteOrder +instanceKlass java/nio/Buffer$1 +instanceKlass jdk/internal/access/JavaNioAccess +instanceKlass java/nio/charset/CharsetEncoder +instanceKlass sun/nio/cs/ArrayEncoder +instanceKlass sun/security/action/GetPropertyAction +instanceKlass java/io/Writer +instanceKlass java/io/OutputStream +instanceKlass java/io/Flushable +instanceKlass java/io/FileDescriptor$1 +instanceKlass jdk/internal/access/JavaIOFileDescriptorAccess +instanceKlass java/io/FileDescriptor +instanceKlass jdk/internal/util/StaticProperty +instanceKlass java/util/concurrent/ConcurrentHashMap$MapEntry +instanceKlass java/util/concurrent/ConcurrentHashMap$Traverser +instanceKlass java/util/Iterator +instanceKlass java/lang/reflect/Array +instanceKlass java/util/Collections$SynchronizedCollection +instanceKlass java/util/List +instanceKlass java/util/RandomAccess +instanceKlass java/util/Collections +instanceKlass java/util/concurrent/ConcurrentHashMap$CollectionView +instanceKlass java/util/Properties$EntrySet +instanceKlass java/lang/VersionProps +instanceKlass java/lang/StringCoding$Result +instanceKlass java/nio/charset/CodingErrorAction +instanceKlass java/nio/charset/CharsetDecoder +instanceKlass sun/nio/cs/ArrayDecoder +instanceKlass sun/nio/cs/DelegatableDecoder +instanceKlass java/lang/StringUTF16 +instanceKlass sun/nio/cs/DoubleByte +instanceKlass java/lang/StringCoding$StringDecoder +instanceKlass java/lang/ThreadLocal$ThreadLocalMap +instanceKlass java/lang/StringCoding +instanceKlass java/util/HashMap$Node +instanceKlass jdk/internal/reflect/Reflection +instanceKlass java/lang/Class$1 +instanceKlass java/lang/reflect/ReflectAccess +instanceKlass jdk/internal/reflect/LangReflectAccess +instanceKlass java/lang/reflect/Modifier +instanceKlass java/lang/Class$Atomic +instanceKlass java/lang/Class$ReflectionData +instanceKlass java/nio/charset/StandardCharsets +instanceKlass sun/nio/cs/HistoricallyNamedCharset +instanceKlass java/lang/Math +instanceKlass java/util/Arrays +instanceKlass java/lang/ThreadLocal +instanceKlass java/nio/charset/spi/CharsetProvider +instanceKlass java/nio/charset/Charset +instanceKlass java/lang/StringLatin1 +instanceKlass jdk/internal/misc/VM +instanceKlass jdk/internal/access/SharedSecrets +instanceKlass java/lang/ref/Reference$1 +instanceKlass jdk/internal/access/JavaLangRefAccess +instanceKlass java/lang/ref/ReferenceQueue$Lock +instanceKlass java/lang/ref/ReferenceQueue +instanceKlass jdk/internal/reflect/ReflectionFactory +instanceKlass java/util/concurrent/locks/LockSupport +instanceKlass java/util/concurrent/ConcurrentHashMap$Node +instanceKlass java/util/Map$Entry +instanceKlass java/util/concurrent/ConcurrentHashMap$CounterCell +instanceKlass java/util/concurrent/locks/ReentrantLock +instanceKlass java/util/concurrent/locks/Lock +instanceKlass java/lang/Runtime +instanceKlass java/util/concurrent/ConcurrentMap +instanceKlass java/util/AbstractMap +instanceKlass java/security/cert/Certificate +instanceKlass jdk/internal/reflect/ReflectionFactory$GetReflectionFactoryAction +instanceKlass java/security/PrivilegedAction +instanceKlass java/util/Objects +instanceKlass java/util/AbstractCollection +instanceKlass java/util/Set +instanceKlass java/util/Collection +instanceKlass java/lang/Iterable +instanceKlass java/security/AccessController +instanceKlass java/lang/String$CaseInsensitiveComparator +instanceKlass java/util/Comparator +instanceKlass java/io/ObjectStreamField +instanceKlass java/lang/Number +instanceKlass java/lang/Character +instanceKlass java/lang/Boolean +instanceKlass java/util/concurrent/locks/AbstractOwnableSynchronizer +instanceKlass java/lang/LiveStackFrame +instanceKlass java/lang/StackFrameInfo +instanceKlass java/lang/StackWalker$StackFrame +instanceKlass java/lang/StackStreamFactory$AbstractStackWalker +instanceKlass java/lang/StackWalker +instanceKlass java/nio/Buffer +instanceKlass java/lang/StackTraceElement +instanceKlass java/security/CodeSource +instanceKlass jdk/internal/loader/ClassLoaders +instanceKlass java/util/jar/Manifest +instanceKlass java/net/URL +instanceKlass java/io/InputStream +instanceKlass java/io/Closeable +instanceKlass java/lang/AutoCloseable +instanceKlass jdk/internal/module/Modules +instanceKlass jdk/internal/misc/Unsafe +instanceKlass java/lang/AbstractStringBuilder +instanceKlass java/lang/Appendable +instanceKlass java/lang/AssertionStatusDirectives +instanceKlass java/lang/invoke/MethodHandleNatives$CallSiteContext +instanceKlass java/lang/invoke/CallSite +instanceKlass java/lang/invoke/MethodType +instanceKlass java/lang/invoke/LambdaForm +instanceKlass java/lang/invoke/MethodHandleNatives +instanceKlass java/lang/invoke/ResolvedMethodName +instanceKlass java/lang/invoke/MemberName +instanceKlass java/lang/invoke/VarHandle +instanceKlass java/lang/invoke/MethodHandle +instanceKlass jdk/internal/reflect/CallerSensitive +instanceKlass java/lang/annotation/Annotation +instanceKlass jdk/internal/reflect/FieldAccessor +instanceKlass jdk/internal/reflect/ConstantPool +instanceKlass jdk/internal/reflect/ConstructorAccessor +instanceKlass jdk/internal/reflect/MethodAccessor +instanceKlass jdk/internal/reflect/MagicAccessorImpl +instanceKlass java/lang/reflect/Parameter +instanceKlass java/lang/reflect/Member +instanceKlass java/lang/reflect/AccessibleObject +instanceKlass java/lang/Module +instanceKlass java/util/Dictionary +instanceKlass java/util/Map +instanceKlass java/lang/ThreadGroup +instanceKlass java/lang/Thread$UncaughtExceptionHandler +instanceKlass java/lang/Thread +instanceKlass java/lang/Runnable +instanceKlass java/lang/ref/Reference +instanceKlass java/security/AccessControlContext +instanceKlass java/security/ProtectionDomain +instanceKlass java/lang/SecurityManager +instanceKlass java/lang/Throwable +instanceKlass java/lang/System +instanceKlass java/lang/ClassLoader +instanceKlass java/lang/Cloneable +instanceKlass java/lang/Class +instanceKlass java/lang/reflect/Type +instanceKlass java/lang/reflect/GenericDeclaration +instanceKlass java/lang/reflect/AnnotatedElement +instanceKlass java/lang/String +instanceKlass java/lang/CharSequence +instanceKlass java/lang/Comparable +instanceKlass java/io/Serializable +ciInstanceKlass java/lang/Object 1 1 92 7 10 10 10 10 8 10 10 10 10 100 8 10 3 8 10 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 7 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 12 12 7 12 12 1 12 7 12 12 12 1 1 12 1 12 1 1 1 1 1 1 1 1 1 1 1 1 +ciInstanceKlass java/io/Serializable 1 0 7 100 100 1 1 1 1 +ciInstanceKlass java/lang/String 1 1 878 10 8 9 9 9 10 10 10 9 10 7 10 10 10 10 10 100 8 10 10 9 9 8 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 100 10 10 100 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 100 100 10 10 11 11 10 10 10 10 10 10 9 11 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 11 10 10 10 10 10 10 100 10 7 10 10 10 10 10 8 10 10 100 3 3 7 10 10 10 10 10 11 7 10 10 7 10 10 10 11 11 11 7 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 100 100 10 100 10 10 100 10 10 10 7 10 10 10 10 8 10 10 10 8 8 10 10 10 10 10 10 10 100 10 8 10 10 10 7 3 8 8 8 10 10 10 10 10 10 8 8 10 8 8 8 8 8 10 10 10 8 7 10 10 10 7 9 7 10 100 100 1 1 1 1 1 1 1 1 1 1 1 1 1 5 0 1 1 1 1 1 1 1 1 1 3 1 3 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 7 1 1 1 100 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 100 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 1 12 12 12 12 12 12 12 7 12 1 7 7 12 12 12 12 1 12 7 12 12 12 12 12 12 12 12 12 12 12 12 12 12 1 12 12 1 12 12 12 12 7 12 12 12 12 12 12 12 12 12 12 1 1 12 12 12 12 12 12 12 12 12 7 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 7 12 12 12 12 7 12 12 12 12 7 12 12 7 12 1 1 12 12 12 1 12 1 1 12 12 12 12 7 12 12 12 1 12 12 100 12 12 12 1 12 7 12 12 12 12 12 12 12 12 12 12 12 1 1 1 12 1 100 12 1 1 12 1 12 12 1 12 12 1 1 12 12 12 100 12 100 12 100 12 1 1 12 12 1 1 1 1 12 12 12 12 1 1 1 1 1 1 1 12 12 12 1 1 12 12 12 1 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/lang/String COMPACT_STRINGS Z 1 +staticfield java/lang/String serialPersistentFields [Ljava/io/ObjectStreamField; 0 [Ljava/io/ObjectStreamField; +staticfield java/lang/String CASE_INSENSITIVE_ORDER Ljava/util/Comparator; java/lang/String$CaseInsensitiveComparator +ciInstanceKlass java/lang/Class 1 1 1435 10 9 9 7 10 10 8 10 8 8 10 10 10 10 10 10 10 10 10 10 10 8 10 8 8 10 7 8 8 8 10 11 10 10 8 10 10 10 10 9 10 10 10 18 10 7 10 10 10 100 10 9 7 100 8 10 10 10 10 7 10 7 100 10 10 9 10 10 7 10 100 10 10 10 9 10 10 10 9 10 10 100 10 10 10 10 9 8 10 10 10 10 10 10 9 10 7 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 100 8 10 10 7 10 7 11 10 10 10 10 10 10 8 10 10 8 9 10 10 10 10 100 9 10 9 10 10 10 8 10 10 10 10 100 10 10 10 10 10 10 10 100 10 10 10 10 10 10 10 10 10 7 10 10 11 10 10 10 10 10 10 100 10 10 10 100 100 10 10 10 10 10 10 10 10 11 10 10 9 10 9 7 10 9 10 7 10 9 10 10 10 10 10 10 10 8 10 10 9 9 10 7 9 10 10 7 10 10 10 10 9 10 9 10 10 9 9 10 10 9 100 10 10 7 10 100 11 9 9 7 10 9 9 10 10 9 7 10 10 10 10 10 10 10 9 10 10 10 10 8 7 10 7 8 8 8 8 10 9 9 10 7 9 7 10 7 10 10 9 8 10 7 10 7 10 9 100 8 10 7 4 10 10 11 10 100 10 10 8 8 10 9 11 7 11 9 10 10 10 9 9 10 10 10 10 10 11 11 11 11 7 11 10 10 7 11 10 10 10 11 11 7 10 10 9 9 10 10 10 10 100 10 10 7 9 100 100 100 100 1 1 1 7 1 1 1 1 1 3 1 3 1 3 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 100 100 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 1 12 1 12 1 1 12 12 12 12 12 12 7 12 12 12 12 1 12 1 1 12 1 1 1 1 12 12 12 1 7 12 12 12 7 12 7 12 12 7 12 12 1 15 16 15 16 12 7 12 1 12 12 7 1 12 12 1 1 1 12 12 12 12 1 12 1 1 12 12 12 12 1 100 12 12 12 12 12 12 12 12 12 1 12 12 12 12 1 12 12 12 12 12 12 12 7 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 1 1 12 1 12 1 12 100 12 12 12 12 12 1 12 12 1 12 12 12 12 12 1 12 12 12 12 12 1 12 12 12 12 1 12 12 12 12 12 12 12 1 12 12 12 12 12 12 12 1 7 12 12 12 12 100 12 12 12 1 12 12 1 1 12 12 12 12 12 12 100 12 7 12 12 12 12 12 12 1 12 12 1 12 12 100 12 12 12 100 12 12 12 12 1 12 12 12 12 12 1 12 12 12 1 12 12 7 12 7 12 12 12 12 12 12 12 12 12 12 12 1 12 1 12 100 12 12 1 12 12 12 12 12 12 1 12 12 12 12 12 12 12 12 12 1 7 1 1 1 1 12 12 12 12 1 12 1 1 1 12 7 12 12 1 12 1 12 12 1 1 1 12 12 12 1 12 1 1 12 12 12 1 12 12 100 12 7 12 12 12 12 12 12 12 12 12 12 12 12 1 12 7 12 12 1 12 100 12 12 12 12 1 12 12 12 100 12 12 100 12 12 12 1 12 12 1 12 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 10 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 12 1 1 100 1 1 100 1 1 +staticfield java/lang/Class EMPTY_CLASS_ARRAY [Ljava/lang/Class; 0 [Ljava/lang/Class; +staticfield java/lang/Class serialPersistentFields [Ljava/io/ObjectStreamField; 0 [Ljava/io/ObjectStreamField; +ciInstanceKlass java/lang/Cloneable 1 0 7 100 100 1 1 1 1 +instanceKlass org/codehaus/groovy/reflection/ClassLoaderForClassArtifacts +instanceKlass org/codehaus/groovy/reflection/SunClassLoader +instanceKlass org/gradle/internal/classloader/CachingClassLoader +instanceKlass org/gradle/internal/classloader/MultiParentClassLoader +instanceKlass org/gradle/internal/classloader/FilteringClassLoader$RetrieveSystemPackagesClassLoader +instanceKlass org/gradle/internal/classloader/FilteringClassLoader +instanceKlass org/gradle/internal/classloader/FilteringClassLoader +instanceKlass jdk/internal/reflect/DelegatingClassLoader +instanceKlass java/security/SecureClassLoader +ciInstanceKlass java/lang/ClassLoader 1 1 1189 9 10 9 10 7 10 10 9 10 100 10 10 10 100 8 10 10 10 10 7 10 7 7 7 10 10 9 7 10 9 9 9 9 9 7 10 9 10 10 9 9 7 9 7 10 10 9 10 7 10 8 10 10 10 7 10 10 8 10 10 10 10 10 10 10 10 7 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 100 10 100 10 10 10 10 10 100 8 10 8 10 10 100 8 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 8 11 9 11 10 8 8 10 100 10 10 10 10 10 10 10 10 10 7 10 10 10 7 10 100 18 10 10 10 7 10 10 10 7 10 10 10 10 8 100 10 10 9 10 10 100 8 10 10 8 8 10 10 7 10 10 100 100 10 100 100 10 10 10 10 10 10 9 10 10 10 10 10 8 10 7 18 10 10 10 10 8 10 10 18 11 7 10 10 10 11 10 18 10 11 18 11 10 10 9 7 10 10 8 10 9 8 10 9 8 7 10 10 100 8 10 10 10 8 8 10 10 10 8 8 10 10 10 7 10 10 10 10 10 11 11 11 11 11 7 10 9 9 9 10 10 100 10 100 10 10 10 9 9 9 9 9 9 8 10 10 10 10 10 11 10 100 10 10 10 7 7 10 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 12 12 12 12 1 12 12 12 12 1 12 12 12 1 1 12 7 12 12 1 1 1 12 12 12 1 12 12 12 12 12 1 12 12 12 12 12 12 1 12 1 12 12 12 1 1 12 12 1 12 7 12 1 12 12 12 12 12 12 12 12 1 12 7 12 12 12 12 12 12 12 12 12 100 12 12 12 12 1 12 1 12 7 12 12 12 1 1 1 12 12 1 1 12 12 12 12 12 12 12 12 12 12 12 12 7 12 12 12 12 12 12 12 12 12 12 1 12 12 12 1 1 12 1 12 12 12 12 12 7 12 12 7 1 12 12 1 12 1 1 15 16 15 16 12 100 12 100 12 7 12 1 12 12 12 1 12 12 7 12 12 1 1 12 12 7 12 12 1 1 12 1 1 12 12 1 12 100 12 1 1 12 1 1 12 12 12 12 12 12 100 12 12 12 12 12 12 1 12 1 16 15 16 12 12 12 12 12 1 12 12 16 15 16 12 12 1 12 12 12 15 12 7 12 16 15 16 12 12 12 12 12 1 12 12 1 12 12 1 12 12 1 1 12 1 1 12 12 1 1 12 12 100 12 1 1 100 12 12 1 12 12 12 12 12 12 12 12 1 12 12 12 12 12 12 1 1 12 12 12 12 12 12 12 12 12 12 7 12 12 12 12 12 100 12 1 12 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 10 1 10 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 10 1 1 1 1 1 1 1 1 10 1 1 1 1 1 10 1 1 1 10 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 12 12 12 12 12 12 1 1 100 1 1 100 1 1 +staticfield java/lang/ClassLoader nocerts [Ljava/security/cert/Certificate; 0 [Ljava/security/cert/Certificate; +staticfield java/lang/ClassLoader loadedLibraryNames Ljava/util/Set; java/util/HashSet +staticfield java/lang/ClassLoader $assertionsDisabled Z 1 +ciInstanceKlass java/lang/System 1 1 628 10 10 10 10 10 9 7 10 11 10 10 10 100 8 10 10 9 100 8 10 10 8 10 100 10 8 10 10 100 10 10 10 9 9 7 10 10 10 10 10 10 10 100 100 8 10 10 7 10 100 8 10 8 10 100 8 10 100 10 8 10 10 10 8 10 10 10 100 8 10 10 10 100 18 100 9 10 100 10 10 10 10 10 10 10 10 7 7 10 10 100 10 10 100 8 10 9 9 10 10 10 10 8 10 10 8 10 10 8 10 7 9 10 7 9 10 9 7 10 8 10 8 10 10 10 10 10 10 10 10 9 100 8 10 8 10 10 8 100 10 10 10 10 100 10 10 10 10 10 8 10 10 10 10 8 10 10 10 7 10 10 10 9 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 100 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 100 12 12 12 12 12 12 1 7 12 100 12 100 12 12 12 1 1 12 12 12 1 1 12 100 12 1 12 1 12 12 12 1 12 100 12 12 12 12 1 12 7 12 12 12 12 12 1 1 1 12 12 1 12 1 1 1 12 1 1 1 1 12 12 7 12 1 12 100 12 7 12 1 1 12 100 12 1 1 15 16 15 16 12 1 12 12 1 12 12 7 12 12 12 12 12 12 1 1 12 12 1 12 7 12 1 1 12 12 12 12 12 12 1 12 12 1 12 12 1 7 12 1 7 12 12 1 12 12 1 12 1 12 1 7 12 12 7 12 12 7 12 12 12 7 12 12 1 1 12 1 12 1 1 12 7 12 12 1 12 12 12 100 12 1 12 12 1 12 12 12 1 12 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 10 1 10 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 12 12 1 1 100 1 1 100 1 1 +staticfield java/lang/System in Ljava/io/InputStream; java/io/PipedInputStream +staticfield java/lang/System out Ljava/io/PrintStream; org/gradle/internal/io/LinePerThreadBufferingOutputStream +staticfield java/lang/System err Ljava/io/PrintStream; org/gradle/internal/io/LinePerThreadBufferingOutputStream +instanceKlass java/lang/Exception +instanceKlass java/lang/Error +ciInstanceKlass java/lang/Throwable 1 1 395 10 9 9 9 9 9 10 9 10 10 100 100 10 8 10 8 10 10 10 100 8 10 10 10 10 8 9 10 100 10 10 100 10 10 11 10 10 10 8 10 10 7 8 8 10 10 8 8 9 10 100 10 11 8 8 10 8 10 8 100 10 9 10 10 100 9 10 10 100 8 10 10 10 10 100 10 10 11 11 11 8 8 10 10 10 9 8 7 10 10 100 8 10 11 8 9 10 11 9 11 100 10 7 10 100 1 1 1 100 1 100 1 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 100 100 1 100 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 12 12 12 12 12 12 12 1 1 1 12 1 100 12 12 1 1 12 7 12 12 1 100 12 12 1 12 12 1 7 12 12 12 12 12 1 12 12 1 1 1 12 12 1 1 12 100 12 1 12 1 1 12 1 12 1 1 12 12 12 100 12 12 12 100 1 1 12 12 100 12 1 100 12 12 12 12 12 1 1 100 12 1 1 12 1 1 12 1 12 100 12 12 12 12 1 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/lang/Throwable UNASSIGNED_STACK [Ljava/lang/StackTraceElement; 0 [Ljava/lang/StackTraceElement; +staticfield java/lang/Throwable SUPPRESSED_SENTINEL Ljava/util/List; java/util/Collections$EmptyList +staticfield java/lang/Throwable EMPTY_THROWABLE_ARRAY [Ljava/lang/Throwable; 0 [Ljava/lang/Throwable; +staticfield java/lang/Throwable $assertionsDisabled Z 1 +instanceKlass kotlin/jvm/KotlinReflectionNotSupportedError +instanceKlass java/util/ServiceConfigurationError +instanceKlass com/google/common/util/concurrent/ExecutionError +instanceKlass java/lang/AssertionError +instanceKlass java/lang/VirtualMachineError +instanceKlass java/lang/LinkageError +instanceKlass java/lang/ThreadDeath +ciInstanceKlass java/lang/Error 1 1 40 10 10 10 10 10 100 7 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 12 12 1 1 +ciInstanceKlass java/lang/ThreadDeath 0 0 21 10 100 100 1 1 1 5 0 1 1 1 1 1 1 1 1 1 12 1 1 +instanceKlass javax/naming/NamingException +instanceKlass java/awt/AWTException +instanceKlass java/beans/PropertyVetoException +instanceKlass java/sql/SQLException +instanceKlass org/apache/maven/settings/building/SettingsBuildingException +instanceKlass com/jcraft/jsch/JSchException +instanceKlass javax/xml/xpath/XPathException +instanceKlass org/xml/sax/SAXException +instanceKlass javax/xml/parsers/ParserConfigurationException +instanceKlass org/gradle/api/internal/attributes/AttributeMergingException +instanceKlass java/lang/CloneNotSupportedException +instanceKlass java/security/GeneralSecurityException +instanceKlass java/util/concurrent/TimeoutException +instanceKlass java/util/concurrent/ExecutionException +instanceKlass java/text/ParseException +instanceKlass java/security/PrivilegedActionException +instanceKlass java/lang/InterruptedException +instanceKlass java/net/URISyntaxException +instanceKlass java/io/IOException +instanceKlass java/lang/ReflectiveOperationException +instanceKlass java/lang/RuntimeException +ciInstanceKlass java/lang/Exception 1 1 40 10 10 10 10 10 100 7 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 12 12 1 1 +instanceKlass org/gradle/internal/component/NoMatchingCapabilitiesException +instanceKlass org/gradle/internal/component/model/ConfigurationNotFoundException +instanceKlass org/gradle/internal/resource/transport/http/HttpErrorStatusCodeException +instanceKlass org/gradle/api/internal/NoFactoryRegisteredForTypeException +instanceKlass org/gradle/util/internal/ConfigureUtil$IncompleteInputException +instanceKlass org/gradle/internal/reflect/UnsupportedPropertyValueException +instanceKlass org/gradle/model/internal/manage/schema/extract/InvalidManagedModelElementTypeException +instanceKlass java/time/DateTimeException +instanceKlass java/nio/file/FileSystemNotFoundException +instanceKlass java/nio/file/FileSystemAlreadyExistsException +instanceKlass org/codehaus/groovy/vmplugin/v9/ClassFindFailedException +instanceKlass org/codehaus/groovy/control/ConfigurationException +instanceKlass org/w3c/dom/DOMException +instanceKlass groovy/lang/StringWriterIOException +instanceKlass java/lang/IllegalCallerException +instanceKlass java/lang/reflect/MalformedParameterizedTypeException +instanceKlass org/gradle/cache/internal/btree/CorruptedCacheException +instanceKlass org/gradle/internal/execution/fingerprint/InputFingerprinter$InputFileFingerprintingException +instanceKlass org/gradle/internal/execution/OutputSnapshotter$OutputFileSnapshottingException +instanceKlass org/gradle/api/internal/attributes/AttributeMatchException +instanceKlass org/gradle/internal/locking/MissingLockStateException +instanceKlass org/gradle/internal/locking/InvalidLockFileException +instanceKlass org/gradle/api/internal/provider/AbstractProperty$PropertyQueryException +instanceKlass org/gradle/cli/CommandLineArgumentException +instanceKlass groovy/lang/GroovyRuntimeException +instanceKlass kotlin/NoWhenBranchMatchedException +instanceKlass java/util/ConcurrentModificationException +instanceKlass org/gradle/internal/reflect/NoSuchPropertyException +instanceKlass org/gradle/internal/snapshot/impl/IsolationException +instanceKlass org/gradle/internal/snapshot/ValueSnapshottingException +instanceKlass org/apache/tools/ant/BuildException +instanceKlass java/io/UncheckedIOException +instanceKlass org/gradle/tooling/internal/protocol/InternalBuildActionFailureException +instanceKlass org/gradle/tooling/internal/protocol/test/InternalTestExecutionException +instanceKlass org/gradle/internal/typeconversion/TypeConversionException +instanceKlass com/google/common/util/concurrent/UncheckedExecutionException +instanceKlass com/google/common/cache/CacheLoader$InvalidCacheLoadException +instanceKlass org/gradle/internal/work/NoAvailableWorkerLeaseException +instanceKlass org/gradle/launcher/daemon/server/BadlyFormedRequestException +instanceKlass org/gradle/internal/remote/internal/MessageIOException +instanceKlass org/gradle/cache/LockTimeoutException +instanceKlass org/gradle/cache/InsufficientLockModeException +instanceKlass org/gradle/cache/internal/locklistener/GracefullyStoppedException +instanceKlass org/gradle/launcher/daemon/registry/DaemonRegistry$EmptyRegistryException +instanceKlass org/gradle/cache/FileIntegrityViolationException +instanceKlass org/gradle/internal/file/FileException +instanceKlass org/gradle/launcher/daemon/server/api/DaemonStoppedException +instanceKlass org/gradle/launcher/daemon/server/api/DaemonUnavailableException +instanceKlass java/lang/TypeNotPresentException +instanceKlass java/util/MissingResourceException +instanceKlass org/gradle/util/internal/GFileUtils$TailReadingException +instanceKlass org/gradle/internal/jvm/JavaHomeException +instanceKlass kotlin/UninitializedPropertyAccessException +instanceKlass java/util/NoSuchElementException +instanceKlass org/gradle/api/reflect/ObjectInstantiationException +instanceKlass org/gradle/api/internal/classpath/UnknownModuleException +instanceKlass org/gradle/internal/nativeintegration/NativeIntegrationException +instanceKlass org/gradle/internal/reflect/NoSuchMethodException +instanceKlass net/rubygrapefruit/platform/NativeException +instanceKlass org/gradle/internal/service/ServiceLookupException +instanceKlass com/esotericsoftware/kryo/KryoException +instanceKlass java/lang/reflect/UndeclaredThrowableException +instanceKlass org/gradle/internal/operations/BuildOperationInvocationException +instanceKlass org/gradle/internal/UncheckedException +instanceKlass org/gradle/api/GradleException +instanceKlass java/lang/UnsupportedOperationException +instanceKlass java/lang/SecurityException +instanceKlass org/gradle/api/UncheckedIOException +instanceKlass org/gradle/internal/service/ServiceLookupException +instanceKlass java/lang/IndexOutOfBoundsException +instanceKlass org/gradle/api/GradleException +instanceKlass org/gradle/api/internal/classpath/UnknownModuleException +instanceKlass org/gradle/api/UncheckedIOException +instanceKlass java/lang/IllegalStateException +instanceKlass java/lang/IllegalArgumentException +instanceKlass java/lang/ArithmeticException +instanceKlass java/lang/NullPointerException +instanceKlass java/lang/IllegalMonitorStateException +instanceKlass java/lang/ArrayStoreException +instanceKlass java/lang/ClassCastException +ciInstanceKlass java/lang/RuntimeException 1 1 40 10 10 10 10 10 100 7 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 12 12 1 1 +instanceKlass org/codehaus/groovy/reflection/ReflectionUtils$ClassContextHelper +ciInstanceKlass java/lang/SecurityManager 1 1 572 10 9 7 10 100 8 10 10 10 10 100 10 100 10 9 10 10 10 100 8 10 9 9 8 9 100 10 8 10 10 10 100 10 10 100 100 8 10 8 8 8 8 8 8 10 8 8 8 8 8 10 10 8 100 8 10 8 8 8 8 8 10 8 100 8 8 10 8 8 10 100 8 10 10 100 10 10 10 10 10 10 11 18 11 18 11 18 18 11 18 11 9 9 9 9 7 10 10 10 18 18 10 18 10 18 18 8 10 9 11 8 100 10 10 10 9 10 10 8 100 10 9 8 8 100 10 10 10 9 11 10 11 10 7 7 10 10 10 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 12 12 1 7 12 1 1 12 12 100 12 1 1 12 7 12 12 12 1 1 12 12 1 12 1 1 12 12 12 1 12 1 1 1 12 1 1 1 1 1 1 12 1 1 1 1 1 12 12 1 1 1 1 1 1 1 1 100 12 1 1 1 1 1 1 12 1 1 12 1 12 12 12 7 12 12 7 12 7 12 1 15 16 15 16 12 7 12 16 15 16 12 12 15 16 15 16 12 16 15 16 12 12 12 12 12 12 1 7 12 12 12 15 16 12 15 16 7 12 15 12 12 15 16 15 16 1 12 12 7 12 1 1 12 12 12 12 12 12 1 1 12 1 1 1 12 7 12 12 12 12 12 1 1 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 10 1 10 1 1 1 1 1 1 10 1 1 1 1 1 10 11 1 1 1 10 1 1 1 1 1 1 10 1 10 1 1 1 11 1 1 10 10 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 12 7 12 12 12 7 12 12 12 12 12 1 1 100 1 1 1 1 1 1 1 1 100 1 1 +staticfield java/lang/SecurityManager packageAccessLock Ljava/lang/Object; java/lang/Object +staticfield java/lang/SecurityManager packageDefinitionLock Ljava/lang/Object; java/lang/Object +staticfield java/lang/SecurityManager nonExportedPkgs Ljava/util/Map; java/util/concurrent/ConcurrentHashMap +ciInstanceKlass java/security/ProtectionDomain 1 1 331 10 9 7 10 9 9 9 10 7 9 9 7 9 9 10 100 10 10 10 10 9 9 10 7 10 100 10 9 8 100 8 10 10 10 10 8 11 8 10 8 8 10 10 10 10 8 10 8 8 10 9 10 9 10 100 100 10 10 7 10 100 10 10 11 11 100 11 10 10 11 11 10 10 10 11 10 8 8 10 7 10 10 7 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 7 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 100 100 100 1 1 1 1 1 100 12 12 1 12 12 12 12 12 1 12 12 1 12 12 100 12 100 12 12 12 12 100 12 12 1 1 12 100 12 1 1 1 12 12 12 1 1 12 1 1 12 12 12 12 1 12 1 1 100 12 12 12 12 12 1 1 100 12 1 1 12 12 12 12 1 12 12 12 12 12 12 100 12 12 12 1 1 7 12 1 7 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/security/ProtectionDomain filePermCompatInPD Z 0 +ciInstanceKlass java/security/AccessControlContext 1 1 367 9 9 10 8 10 10 9 9 9 10 7 100 10 11 11 11 11 7 11 10 10 9 10 11 10 7 100 8 10 10 7 10 9 9 9 9 9 9 9 10 9 10 10 8 10 10 10 100 10 10 10 10 8 10 8 10 8 8 10 8 10 8 10 10 10 8 8 100 10 10 100 10 8 10 10 10 8 10 10 10 7 10 10 10 10 10 10 10 10 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 100 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 100 12 1 100 12 12 12 12 12 7 12 1 12 12 12 12 12 1 12 12 7 12 100 12 12 12 1 1 1 12 12 1 7 12 12 12 12 12 12 12 12 7 12 12 12 12 1 12 12 100 12 1 12 100 12 1 12 1 100 12 1 1 12 1 12 1 12 12 12 1 1 1 12 12 1 12 1 12 12 1 12 12 12 1 12 12 12 12 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +instanceKlass java/net/URLClassLoader +instanceKlass jdk/internal/loader/BuiltinClassLoader +ciInstanceKlass java/security/SecureClassLoader 1 1 127 10 7 10 9 10 10 9 10 10 10 10 10 10 7 10 7 10 7 10 11 7 100 8 10 10 7 7 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 1 12 12 7 12 12 12 12 12 12 12 12 12 1 1 12 1 12 7 12 1 1 1 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +instanceKlass java/lang/InstantiationException +instanceKlass java/lang/IllegalAccessException +instanceKlass java/lang/reflect/InvocationTargetException +instanceKlass java/lang/NoSuchFieldException +instanceKlass java/lang/NoSuchMethodException +instanceKlass java/lang/ClassNotFoundException +ciInstanceKlass java/lang/ReflectiveOperationException 1 1 34 10 10 10 10 100 7 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 12 1 1 +ciInstanceKlass java/lang/ClassNotFoundException 1 1 37 100 10 10 9 100 7 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 1 1 1 +instanceKlass java/lang/ClassFormatError +instanceKlass java/lang/UnsatisfiedLinkError +instanceKlass java/lang/IncompatibleClassChangeError +instanceKlass java/lang/BootstrapMethodError +instanceKlass java/lang/NoClassDefFoundError +ciInstanceKlass java/lang/LinkageError 1 1 31 10 10 10 100 7 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 1 1 +ciInstanceKlass java/lang/NoClassDefFoundError 1 1 26 10 10 100 7 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 12 12 1 1 +instanceKlass org/codehaus/groovy/runtime/typehandling/GroovyCastException +ciInstanceKlass java/lang/ClassCastException 1 1 26 10 10 100 100 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 12 12 1 1 +ciInstanceKlass java/lang/ArrayStoreException 1 1 26 10 10 100 100 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 12 12 1 1 +instanceKlass java/lang/InternalError +instanceKlass java/lang/StackOverflowError +instanceKlass java/lang/OutOfMemoryError +ciInstanceKlass java/lang/VirtualMachineError 1 1 34 10 10 10 10 100 100 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 12 1 1 +ciInstanceKlass java/lang/OutOfMemoryError 1 1 26 10 10 100 100 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 12 12 1 1 +ciInstanceKlass java/lang/StackOverflowError 1 1 26 10 10 100 100 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 12 12 1 1 +ciInstanceKlass java/lang/IllegalMonitorStateException 1 1 26 10 10 100 100 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 12 12 1 1 +instanceKlass java/lang/ref/PhantomReference +instanceKlass java/lang/ref/FinalReference +instanceKlass java/lang/ref/WeakReference +instanceKlass java/lang/ref/SoftReference +ciInstanceKlass java/lang/ref/Reference 1 1 159 10 9 10 9 9 7 10 10 9 9 10 10 10 9 9 100 10 10 10 7 10 10 10 7 8 10 7 10 10 10 7 10 10 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 7 1 1 1 1 12 12 12 12 12 1 12 12 12 12 12 12 12 12 12 1 12 12 1 12 12 12 1 1 12 1 12 12 12 1 7 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/lang/ref/Reference processPendingLock Ljava/lang/Object; java/lang/Object +instanceKlass com/sun/beans/util/Cache$Kind$Soft +instanceKlass org/codehaus/groovy/util/ReferenceType$SoftRef +instanceKlass sun/util/locale/provider/LocaleResources$ResourceReference +instanceKlass sun/util/resources/Bundles$BundleReference +instanceKlass sun/util/locale/LocaleObjectCache$CacheEntry +instanceKlass jdk/internal/ref/SoftCleanable +instanceKlass java/lang/invoke/LambdaFormEditor$Transform +ciInstanceKlass java/lang/ref/SoftReference 1 1 47 10 9 9 10 10 7 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 12 12 12 12 12 1 1 1 +instanceKlass com/google/common/cache/LocalCache$WeakEntry +instanceKlass jdk/internal/jimage/ImageBufferCache$BufferReference +instanceKlass java/beans/WeakIdentityMap$Entry +instanceKlass org/codehaus/groovy/util/ReferenceType$WeakRef +instanceKlass com/google/common/collect/MapMakerInternalMap$WeakValueReferenceImpl +instanceKlass com/google/common/collect/MapMakerInternalMap$AbstractWeakKeyEntry +instanceKlass com/google/common/cache/LocalCache$WeakValueReference +instanceKlass java/util/logging/LogManager$LoggerWeakRef +instanceKlass java/util/logging/Level$KnownLevel +instanceKlass sun/nio/ch/FileLockTable$FileLockReference +instanceKlass java/lang/ClassValue$Entry +instanceKlass java/lang/WeakPairMap$WeakRefPeer +instanceKlass jdk/internal/ref/WeakCleanable +instanceKlass java/lang/invoke/MethodType$ConcurrentWeakInternSet$WeakEntry +instanceKlass java/util/WeakHashMap$Entry +instanceKlass java/lang/ThreadLocal$ThreadLocalMap$Entry +ciInstanceKlass java/lang/ref/WeakReference 1 1 31 10 10 100 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 1 1 +instanceKlass java/lang/ref/Finalizer +ciInstanceKlass java/lang/ref/FinalReference 1 1 36 10 100 8 10 100 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 1 1 12 1 1 1 +instanceKlass jdk/internal/ref/PhantomCleanable +instanceKlass jdk/internal/ref/Cleaner +ciInstanceKlass java/lang/ref/PhantomReference 1 1 30 10 100 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 1 1 +ciInstanceKlass java/lang/ref/Finalizer 1 1 139 9 10 9 9 9 9 7 10 10 7 11 100 10 100 10 10 10 100 10 10 7 10 7 10 10 10 10 7 10 7 10 10 10 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 12 12 12 12 12 12 1 12 12 1 7 12 1 12 1 12 100 12 100 12 1 12 12 1 1 12 12 12 1 12 1 12 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/lang/ref/Finalizer lock Ljava/lang/Object; java/lang/Object +instanceKlass net/rubygrapefruit/platform/internal/jni/AbstractFileEventFunctions$NativeFileWatcher$1 +instanceKlass org/gradle/launcher/daemon/server/exec/DaemonConnectionBackedEventConsumer$ForwardEvents +instanceKlass org/gradle/launcher/daemon/server/exec/LogToClient$AsynchronousLogDispatcher +instanceKlass java/util/logging/LogManager$Cleaner +instanceKlass jdk/internal/misc/InnocuousThread +instanceKlass java/lang/ref/Finalizer$FinalizerThread +instanceKlass java/lang/ref/Reference$ReferenceHandler +ciInstanceKlass java/lang/Thread 1 1 592 9 9 10 9 9 100 8 10 3 8 3 10 10 9 9 9 9 7 100 8 10 9 10 10 10 10 10 10 9 10 10 9 10 10 9 10 9 10 9 9 10 10 9 10 9 100 10 7 10 8 10 10 10 10 10 10 9 100 10 10 10 10 100 11 9 10 10 10 9 10 9 10 100 10 10 10 11 10 10 10 7 10 10 10 10 10 10 10 10 10 10 100 8 10 10 10 8 10 8 10 8 8 10 10 100 8 10 9 9 10 10 10 9 10 100 10 11 9 9 10 100 10 11 100 10 10 11 10 100 10 10 10 8 9 10 11 10 11 10 7 7 1 1 100 1 100 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 3 1 3 1 3 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 7 100 100 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 100 1 1 1 1 1 1 1 1 1 100 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 12 12 1 1 12 1 12 12 12 12 12 12 1 1 1 12 7 12 12 12 12 12 100 12 12 12 12 12 12 12 12 12 7 12 12 12 12 100 12 12 12 12 1 1 1 12 12 12 12 12 12 12 1 12 12 12 1 12 100 12 12 12 12 12 12 12 1 12 12 12 12 12 12 1 12 12 12 12 12 12 12 12 12 1 1 12 12 1 12 1 1 1 100 12 100 12 1 12 12 12 12 12 12 1 12 12 12 12 12 1 12 100 12 1 12 12 12 12 1 12 12 7 12 12 12 12 100 12 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/lang/Thread EMPTY_STACK_TRACE [Ljava/lang/StackTraceElement; 0 [Ljava/lang/StackTraceElement; +ciInstanceKlass java/lang/ThreadGroup 1 1 289 10 9 8 9 7 9 9 10 10 10 10 10 9 10 10 9 10 9 9 10 100 10 10 10 9 10 10 9 10 10 10 10 10 10 10 10 10 10 10 100 10 10 10 7 10 7 10 9 10 8 10 10 10 10 11 100 9 100 10 8 10 10 8 10 10 10 10 8 10 8 10 8 7 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 1 12 1 12 12 12 12 12 12 12 12 12 12 12 100 12 12 12 7 12 12 7 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 1 12 12 1 12 12 12 12 1 12 12 12 12 1 12 1 1 12 12 1 12 12 12 100 1 1 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +instanceKlass java/util/Hashtable +ciInstanceKlass java/util/Dictionary 1 1 36 10 100 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 1 1 +instanceKlass java/util/Properties +ciInstanceKlass java/util/Hashtable 1 1 512 100 10 9 100 100 10 8 10 10 10 10 10 8 10 9 7 9 7 4 10 9 4 10 11 10 10 9 10 100 10 9 10 9 10 10 3 9 9 3 10 10 10 11 11 11 11 7 11 11 10 10 10 9 9 9 10 100 100 10 10 8 10 10 8 10 8 10 7 10 10 100 10 10 7 10 100 10 10 7 11 11 100 10 10 10 11 100 10 11 11 10 10 10 10 10 10 10 8 10 100 8 10 4 10 4 10 8 10 10 100 11 10 10 10 10 7 100 100 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 3 1 3 1 3 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 100 100 1 1 1 1 1 1 100 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 12 12 1 1 1 12 12 12 12 7 12 1 12 12 1 12 1 7 12 12 12 12 12 12 12 12 1 12 12 12 12 12 12 12 12 12 12 12 7 12 12 12 1 12 12 12 12 12 12 12 12 1 1 12 1 12 1 1 7 12 1 12 12 1 12 12 1 1 12 1 12 12 1 100 12 12 1 12 12 12 12 12 12 12 12 100 12 12 1 1 12 12 1 12 100 12 1 100 12 12 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +instanceKlass org/gradle/internal/classpath/AccessTrackingProperties +instanceKlass java/security/Provider +ciInstanceKlass java/util/Properties 1 1 645 10 100 10 7 10 9 9 9 10 10 8 10 7 10 10 8 10 7 10 10 9 10 7 10 10 10 100 8 10 10 10 10 100 3 10 10 10 8 10 10 10 10 10 100 100 10 10 100 9 10 10 10 100 10 10 10 11 11 11 7 11 11 10 8 10 10 100 10 10 10 9 10 10 100 100 100 10 8 8 10 10 10 7 10 10 10 7 10 10 11 10 8 10 11 8 10 11 9 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 7 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 7 10 100 10 11 4 11 10 10 11 10 10 10 100 8 10 10 10 100 6 0 10 11 10 10 1 1 1 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 100 7 100 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 100 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 100 1 1 1 1 100 1 1 1 1 1 12 1 12 1 12 12 12 12 7 12 12 1 7 12 1 12 12 1 12 1 12 12 12 12 1 12 12 12 1 1 12 12 12 12 1 12 12 1 12 12 12 12 12 1 1 12 12 1 100 12 12 12 12 1 12 7 12 12 12 1 12 12 12 1 12 12 1 12 100 12 100 12 12 100 12 1 1 1 1 1 12 12 12 1 12 12 1 12 12 7 12 1 12 1 12 12 12 12 12 12 12 12 12 12 12 12 12 12 1 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 1 12 1 12 12 12 12 12 100 12 12 1 1 12 100 12 1 12 100 12 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/util/Properties UNSAFE Ljdk/internal/misc/Unsafe; jdk/internal/misc/Unsafe +staticfield java/util/Properties hexDigit [C 16 +ciInstanceKlass java/lang/Module 1 1 907 10 9 10 9 9 9 10 10 10 10 7 10 10 7 11 7 10 10 9 10 10 8 10 10 10 9 11 9 10 9 10 10 100 100 10 10 8 10 10 10 10 10 10 9 10 10 9 10 10 9 11 7 10 9 9 10 7 7 10 100 8 10 10 10 8 10 10 10 10 8 8 10 10 10 18 10 11 9 11 10 100 8 10 7 10 10 11 11 9 11 10 10 9 10 10 10 10 18 11 10 11 10 11 4 10 7 10 11 7 10 11 7 10 7 8 10 10 7 10 10 7 7 10 9 100 10 11 10 10 10 11 7 10 11 10 11 10 10 10 10 10 10 10 10 18 11 11 18 10 10 10 7 10 10 10 9 7 10 10 10 10 10 10 10 10 10 9 18 10 7 100 8 10 10 10 100 10 100 8 100 10 100 100 3 10 100 10 10 10 100 10 10 100 100 10 8 10 10 10 10 10 10 10 100 10 10 10 100 8 10 10 8 10 8 10 10 10 8 10 7 10 10 10 11 100 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 7 7 7 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 100 100 1 100 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 12 12 12 12 12 12 12 12 12 12 1 7 12 12 1 12 12 7 12 100 12 12 12 1 12 12 12 12 12 12 7 12 12 100 12 12 1 1 12 1 12 12 12 12 12 12 12 12 12 12 12 12 12 12 1 12 12 12 12 1 1 12 1 1 12 12 1 12 12 12 12 1 1 12 12 12 1 15 16 15 16 12 12 12 12 12 7 12 1 1 1 12 12 12 12 12 12 12 12 12 12 7 12 16 15 16 12 12 100 12 12 12 12 12 1 12 1 12 1 7 12 100 1 1 1 12 12 1 12 12 1 1 12 12 1 12 12 12 12 1 12 12 12 12 12 12 12 12 12 12 12 16 15 16 12 12 12 15 16 12 12 12 12 1 12 12 12 12 1 12 12 12 12 12 12 12 16 15 16 12 100 12 1 1 1 12 12 12 1 12 1 1 1 1 1 12 1 12 12 12 1 12 12 1 1 12 1 12 12 100 12 12 12 12 12 1 12 12 1 1 12 100 12 1 12 1 12 12 12 1 1 12 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 10 10 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 10 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 10 1 1 1 1 1 1 10 1 1 1 1 1 1 10 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 12 12 100 12 12 12 1 1 100 1 1 1 100 1 1 +staticfield java/lang/Module ALL_UNNAMED_MODULE Ljava/lang/Module; java/lang/Module +staticfield java/lang/Module ALL_UNNAMED_MODULE_SET Ljava/util/Set; java/util/ImmutableCollections$Set12 +staticfield java/lang/Module EVERYONE_MODULE Ljava/lang/Module; java/lang/Module +staticfield java/lang/Module EVERYONE_SET Ljava/util/Set; java/util/ImmutableCollections$Set12 +staticfield java/lang/Module $assertionsDisabled Z 1 +instanceKlass com/google/common/reflect/Element +instanceKlass java/lang/reflect/Executable +instanceKlass java/lang/reflect/Field +ciInstanceKlass java/lang/reflect/AccessibleObject 1 1 405 10 9 10 10 10 10 100 10 10 9 7 10 11 7 100 10 7 100 10 10 7 10 10 100 10 100 10 10 10 10 10 10 10 10 10 10 8 100 10 10 8 10 10 8 8 8 8 8 8 100 10 10 9 10 10 10 18 10 10 10 11 100 100 8 10 10 10 8 10 8 10 10 100 8 10 11 10 10 10 10 10 9 100 10 10 9 10 8 10 8 10 9 100 10 7 10 10 7 9 7 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 12 100 12 12 12 7 12 100 12 12 12 12 1 12 12 1 1 12 1 1 12 12 1 12 12 1 12 1 7 12 12 12 12 12 12 12 12 1 1 12 1 12 12 1 1 1 1 1 1 1 12 12 12 12 12 7 12 1 15 16 15 16 12 12 12 1 1 1 12 12 1 12 1 12 1 1 12 12 12 12 12 12 12 12 12 12 100 12 1 100 12 1 12 12 1 1 1 1 7 12 1 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 10 10 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 12 12 1 1 100 1 1 100 1 1 +staticfield java/lang/reflect/AccessibleObject reflectionFactory Ljdk/internal/reflect/ReflectionFactory; jdk/internal/reflect/ReflectionFactory +ciInstanceKlass java/lang/reflect/Field 1 1 433 9 10 10 10 9 10 10 10 10 9 9 9 9 9 9 9 100 8 10 7 10 9 9 10 10 10 10 10 10 100 10 10 10 10 10 10 10 100 10 8 10 10 8 10 10 8 8 10 11 9 10 10 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 10 10 10 10 10 9 10 10 10 10 11 10 100 10 10 9 10 11 10 10 9 10 10 7 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 100 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 100 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 100 1 1 1 1 1 1 1 1 12 12 100 12 100 12 12 12 12 100 12 12 12 12 12 12 12 12 12 1 1 12 1 12 12 12 12 7 12 12 12 12 12 1 12 12 12 12 12 12 1 1 12 12 1 12 12 1 1 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 7 12 12 7 12 12 12 1 100 12 7 12 12 7 12 7 12 12 12 100 12 100 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 +ciInstanceKlass java/lang/reflect/Parameter 0 0 226 10 9 9 9 9 100 10 10 10 100 10 10 11 10 10 10 10 10 8 8 10 10 10 8 10 8 10 9 10 9 10 10 10 10 10 10 10 10 11 10 100 10 10 10 10 10 9 100 10 11 11 100 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 100 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 12 12 12 12 12 1 12 12 100 12 1 12 12 12 100 12 12 12 12 1 1 12 12 12 1 1 12 12 12 12 12 12 12 12 12 100 12 12 100 12 12 1 100 12 12 12 12 12 12 1 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +instanceKlass java/lang/reflect/Constructor +instanceKlass java/lang/reflect/Method +ciInstanceKlass java/lang/reflect/Executable 1 1 458 10 10 10 11 10 10 10 10 10 7 8 7 10 10 10 7 8 10 10 10 10 8 8 10 10 100 8 10 8 10 8 11 10 10 11 10 8 8 10 10 100 10 10 10 10 10 10 7 10 10 10 10 10 100 10 100 8 10 10 3 100 8 10 10 10 10 10 8 8 8 9 10 100 8 9 10 10 10 10 10 10 100 10 10 100 10 7 10 10 11 10 10 10 9 10 7 10 10 9 10 10 9 10 9 10 9 7 100 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 100 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 100 100 1 1 1 1 1 1 1 1 1 1 1 1 12 7 12 12 7 12 7 12 12 12 12 12 1 1 1 12 12 1 1 12 7 12 12 12 1 1 12 1 1 12 1 12 1 7 12 12 12 1 1 12 12 1 12 12 7 12 12 12 1 12 12 12 12 100 12 12 1 1 12 12 1 1 12 12 12 12 1 1 1 12 12 1 1 12 12 12 12 12 12 12 12 12 1 100 12 1 7 12 12 12 12 100 12 12 12 12 1 12 12 100 12 100 12 12 12 12 12 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +ciInstanceKlass java/lang/reflect/Method 1 1 441 9 10 10 9 10 10 10 10 9 9 9 9 9 9 9 9 9 9 9 100 8 10 7 10 9 8 10 10 10 10 10 10 10 7 10 10 10 7 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 7 8 10 100 8 10 10 10 10 10 10 10 11 9 10 10 10 10 11 10 7 10 10 10 10 9 10 10 10 10 10 11 10 7 100 100 10 10 10 100 10 8 10 10 10 10 10 8 10 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 100 7 7 1 100 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 7 12 7 12 12 12 12 7 12 12 12 12 12 12 12 12 12 12 12 12 12 1 1 12 1 12 12 1 7 12 7 12 12 12 12 12 12 1 12 12 7 12 12 7 12 12 12 12 12 7 12 12 12 12 12 12 12 1 1 1 1 12 12 12 12 12 12 12 7 12 12 12 12 12 12 12 1 12 12 12 12 12 7 12 12 7 12 7 12 7 12 7 12 7 12 1 1 1 12 12 12 1 1 12 12 12 12 1 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +ciInstanceKlass java/lang/reflect/Constructor 1 1 415 10 10 9 10 10 10 9 10 9 9 9 9 9 9 9 9 100 8 10 7 10 9 10 10 10 10 10 7 100 8 10 10 10 10 10 7 10 7 10 10 10 10 10 10 10 10 10 100 8 10 10 100 8 10 10 10 10 10 10 10 9 10 10 100 8 10 11 10 10 10 9 10 10 10 10 10 10 10 10 10 100 8 10 10 10 10 10 10 10 11 9 10 10 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 100 100 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 12 7 12 12 12 12 7 12 12 12 12 12 12 12 12 12 12 12 1 1 12 1 12 12 7 12 7 12 12 12 12 1 1 1 12 12 12 12 1 7 12 12 7 12 12 100 12 12 12 12 12 1 1 12 1 1 12 12 12 12 12 12 12 12 12 12 1 1 12 12 12 12 12 12 7 12 12 12 12 12 12 12 12 12 1 1 12 12 12 12 100 12 100 12 100 12 100 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 +instanceKlass jdk/internal/reflect/FieldAccessorImpl +instanceKlass jdk/internal/reflect/ConstructorAccessorImpl +instanceKlass jdk/internal/reflect/MethodAccessorImpl +ciInstanceKlass jdk/internal/reflect/MagicAccessorImpl 1 1 16 10 100 7 1 1 1 1 1 1 1 1 1 12 1 1 +instanceKlass jdk/internal/reflect/GeneratedMethodAccessor1 +instanceKlass jdk/internal/reflect/DelegatingMethodAccessorImpl +instanceKlass jdk/internal/reflect/NativeMethodAccessorImpl +ciInstanceKlass jdk/internal/reflect/MethodAccessorImpl 1 1 25 10 100 7 100 1 1 1 1 1 1 1 1 1 1 100 100 1 1 12 1 1 1 1 1 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor11 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor10 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor9 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor8 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor7 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor6 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor5 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor4 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor3 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor2 +instanceKlass jdk/internal/reflect/BootstrapConstructorAccessorImpl +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor1 +instanceKlass jdk/internal/reflect/DelegatingConstructorAccessorImpl +instanceKlass jdk/internal/reflect/NativeConstructorAccessorImpl +ciInstanceKlass jdk/internal/reflect/ConstructorAccessorImpl 1 1 27 10 100 7 100 1 1 1 1 1 1 1 1 1 1 100 100 100 1 1 12 1 1 1 1 1 1 +ciInstanceKlass jdk/internal/reflect/DelegatingClassLoader 1 1 18 10 100 7 1 1 1 1 1 1 1 1 1 1 1 12 1 1 +ciInstanceKlass jdk/internal/reflect/ConstantPool 1 1 138 10 9 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 7 7 8 10 100 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 1 1 7 12 1 1 1 1 1 1 1 +instanceKlass jdk/internal/reflect/UnsafeFieldAccessorImpl +ciInstanceKlass jdk/internal/reflect/FieldAccessorImpl 1 1 59 10 100 7 100 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 1 1 1 1 1 +instanceKlass jdk/internal/reflect/UnsafeObjectFieldAccessorImpl +instanceKlass jdk/internal/reflect/UnsafeQualifiedFieldAccessorImpl +instanceKlass jdk/internal/reflect/UnsafeStaticFieldAccessorImpl +ciInstanceKlass jdk/internal/reflect/UnsafeFieldAccessorImpl 1 1 254 10 9 10 10 9 10 9 10 10 9 10 10 10 10 100 10 10 10 8 10 10 100 8 10 8 10 8 10 100 10 10 8 10 8 10 8 10 8 10 8 10 8 10 8 10 8 10 8 10 10 8 8 8 8 8 8 10 8 8 8 10 10 7 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 7 12 12 7 12 12 12 12 12 12 12 7 12 12 1 12 12 1 12 1 1 12 1 12 1 12 1 12 1 12 1 100 12 1 100 12 1 100 12 1 100 12 1 100 12 1 100 12 1 100 12 1 100 12 12 1 1 1 1 1 1 12 1 1 1 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield jdk/internal/reflect/UnsafeFieldAccessorImpl unsafe Ljdk/internal/misc/Unsafe; jdk/internal/misc/Unsafe +instanceKlass jdk/internal/reflect/UnsafeStaticIntegerFieldAccessorImpl +instanceKlass jdk/internal/reflect/UnsafeQualifiedStaticFieldAccessorImpl +ciInstanceKlass jdk/internal/reflect/UnsafeStaticFieldAccessorImpl 1 1 43 10 9 10 9 7 7 8 10 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 7 12 12 1 1 7 12 1 1 1 1 1 1 1 1 1 +ciInstanceKlass jdk/internal/reflect/CallerSensitive 0 0 17 100 100 100 1 1 1 1 1 1 1 1 1 1 1 1 1 +instanceKlass java/lang/invoke/DelegatingMethodHandle +instanceKlass java/lang/invoke/BoundMethodHandle +instanceKlass java/lang/invoke/DirectMethodHandle +ciInstanceKlass java/lang/invoke/MethodHandle 1 1 489 9 10 10 7 7 10 9 10 10 10 10 10 10 11 10 10 10 9 10 100 100 10 8 10 10 8 10 10 10 10 10 10 10 10 10 10 7 10 10 10 8 10 8 10 10 10 10 8 10 8 10 8 10 9 100 10 9 9 8 10 10 10 10 10 10 10 10 10 10 10 8 10 8 10 10 10 10 10 9 8 10 10 8 10 10 10 10 10 100 8 10 10 9 10 7 10 10 9 10 10 8 9 9 9 10 10 10 10 7 10 8 10 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 7 12 1 1 12 12 12 12 12 7 12 12 12 100 12 12 12 12 12 12 1 1 1 12 12 1 12 12 7 12 12 12 12 12 12 12 7 12 1 12 12 12 1 7 12 1 12 12 12 12 1 12 1 12 1 100 12 12 1 100 12 100 1 12 12 12 12 12 12 12 12 12 12 12 1 12 1 12 12 12 12 12 12 1 12 12 1 12 12 7 12 12 1 1 12 12 12 1 100 12 12 12 12 12 1 12 12 12 7 12 12 12 12 1 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/lang/invoke/MethodHandle FORM_OFFSET J 20 +staticfield java/lang/invoke/MethodHandle $assertionsDisabled Z 1 +instanceKlass java/lang/invoke/DirectMethodHandle$Interface +instanceKlass java/lang/invoke/DirectMethodHandle$Constructor +instanceKlass java/lang/invoke/DirectMethodHandle$Special +instanceKlass java/lang/invoke/DirectMethodHandle$Accessor +ciInstanceKlass java/lang/invoke/DirectMethodHandle 1 1 922 7 7 100 7 7 10 10 100 10 10 10 10 10 10 7 7 10 10 10 10 10 10 9 100 10 9 10 10 10 10 10 10 7 10 10 10 8 10 7 10 7 10 10 10 10 10 10 100 10 10 7 10 10 10 10 8 10 10 10 10 10 9 7 10 10 10 100 10 8 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 8 9 8 9 9 8 9 9 8 9 9 8 10 10 7 9 7 10 100 10 10 10 10 7 10 10 10 7 10 10 10 10 10 9 10 9 9 10 10 7 7 7 9 10 10 10 10 9 10 100 10 100 10 10 8 9 9 10 9 10 9 9 10 10 10 10 10 10 10 9 10 10 10 10 10 9 10 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 8 9 9 10 100 10 9 10 7 9 10 10 10 10 10 8 8 8 8 10 9 10 7 10 8 9 10 8 8 8 9 8 8 8 8 8 8 7 8 10 10 8 8 10 10 10 10 7 7 1 1 1 1 1 1 1 100 1 1 1 1 7 1 1 1 1 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 1 3 1 1 3 1 3 1 1 1 1 1 1 1 1 1 1 1 1 1 1 3 1 3 1 1 1 1 3 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 12 12 1 12 12 12 12 12 12 1 1 12 12 12 12 12 12 12 1 12 12 12 12 12 12 12 1 12 12 12 1 12 1 12 1 12 12 12 12 12 1 12 12 1 12 12 12 12 12 12 12 12 12 7 12 1 12 7 12 12 1 1 12 12 12 12 12 12 12 12 12 12 12 12 7 12 12 12 12 12 1 12 1 12 12 1 12 12 1 12 12 1 12 12 1 12 1 12 1 12 12 12 12 1 12 12 12 12 7 12 12 12 12 12 12 12 7 12 12 1 1 1 12 12 12 12 12 12 12 1 12 1 12 12 1 12 12 12 12 100 12 12 12 12 12 12 12 12 12 7 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 1 12 12 12 1 12 7 12 1 12 12 12 12 12 1 1 1 1 12 12 12 1 100 12 12 12 12 1 1 12 12 1 12 12 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/lang/invoke/DirectMethodHandle IMPL_NAMES Ljava/lang/invoke/MemberName$Factory; java/lang/invoke/MemberName$Factory +staticfield java/lang/invoke/DirectMethodHandle FT_UNCHECKED_REF I 8 +staticfield java/lang/invoke/DirectMethodHandle ACCESSOR_FORMS [Ljava/lang/invoke/LambdaForm; 132 [Ljava/lang/invoke/LambdaForm; +staticfield java/lang/invoke/DirectMethodHandle ALL_WRAPPERS [Lsun/invoke/util/Wrapper; 10 [Lsun/invoke/util/Wrapper; +staticfield java/lang/invoke/DirectMethodHandle NFS [Ljava/lang/invoke/LambdaForm$NamedFunction; 12 [Ljava/lang/invoke/LambdaForm$NamedFunction; +staticfield java/lang/invoke/DirectMethodHandle OBJ_OBJ_TYPE Ljava/lang/invoke/MethodType; java/lang/invoke/MethodType +staticfield java/lang/invoke/DirectMethodHandle LONG_OBJ_TYPE Ljava/lang/invoke/MethodType; java/lang/invoke/MethodType +staticfield java/lang/invoke/DirectMethodHandle $assertionsDisabled Z 1 +instanceKlass java/lang/invoke/VarHandleLongs$FieldInstanceReadOnly +instanceKlass java/lang/invoke/VarHandleObjects$Array +instanceKlass java/lang/invoke/VarHandleObjects$FieldInstanceReadOnly +instanceKlass java/lang/invoke/VarHandleInts$FieldInstanceReadOnly +ciInstanceKlass java/lang/invoke/VarHandle 1 1 298 10 9 100 10 9 10 10 10 9 10 10 9 9 10 10 10 10 10 10 10 9 100 10 9 10 10 7 7 10 10 10 9 10 9 10 10 10 100 10 9 9 10 10 10 10 10 10 10 7 10 10 9 8 10 7 10 7 100 1 1 100 1 100 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 100 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 12 12 1 12 12 12 12 12 12 12 12 12 12 12 12 12 12 100 12 12 1 12 12 12 1 1 12 100 12 12 12 12 12 12 12 12 1 7 12 12 7 12 12 12 12 12 12 12 1 7 12 12 12 1 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/lang/invoke/VarHandle AIOOBE_SUPPLIER Ljava/util/function/BiFunction; jdk/internal/util/Preconditions$1 +staticfield java/lang/invoke/VarHandle VFORM_OFFSET J 12 +staticfield java/lang/invoke/VarHandle $assertionsDisabled Z 1 +ciInstanceKlass java/lang/invoke/MemberName 1 1 747 7 7 100 9 10 9 10 10 10 10 10 10 10 9 10 100 100 10 8 10 10 10 10 9 8 10 7 7 10 10 7 7 7 10 9 100 8 10 10 10 10 10 10 10 10 10 10 8 8 8 10 10 9 3 10 10 10 10 10 10 10 10 10 7 8 10 10 8 9 8 9 10 8 10 10 10 10 10 100 10 10 8 10 10 8 10 10 7 10 10 8 8 100 10 10 100 10 10 10 10 10 10 10 10 10 3 10 3 10 3 3 3 3 3 3 100 10 10 10 3 9 10 3 10 10 10 10 10 10 10 10 10 10 10 10 10 10 100 10 10 10 100 10 10 10 10 10 10 8 10 10 10 10 10 10 10 10 10 10 10 10 10 100 10 100 8 10 7 10 10 10 10 10 8 8 8 8 10 10 10 8 8 10 8 10 10 10 8 8 10 10 8 10 8 10 10 10 8 8 8 100 10 8 8 8 8 10 100 100 100 10 100 10 100 10 9 10 100 100 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 3 1 3 1 3 1 3 1 3 1 3 1 1 1 1 1 1 1 1 3 1 1 1 1 3 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 100 1 1 1 1 1 1 1 1 1 7 1 1 12 12 12 12 12 12 12 12 12 12 100 12 12 1 1 12 1 12 12 12 12 12 1 100 12 1 1 12 1 12 12 1 1 12 12 12 12 12 12 12 12 12 12 1 1 1 100 12 12 12 12 12 12 12 12 12 12 12 1 12 12 100 100 12 1 12 12 12 12 12 1 12 12 1 12 12 1 12 12 1 12 12 1 1 1 12 100 12 1 12 12 12 12 12 12 12 12 12 12 100 1 12 7 12 12 12 12 12 7 12 12 12 12 12 12 12 12 12 1 12 1 12 12 12 12 12 12 12 12 12 12 12 12 12 1 12 1 1 1 12 12 12 12 12 1 1 1 1 12 12 12 1 1 12 1 12 12 1 1 12 1 12 1 12 12 12 1 1 1 1 1 1 1 1 12 1 1 1 1 1 12 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/lang/invoke/MemberName $assertionsDisabled Z 1 +ciInstanceKlass java/lang/invoke/ResolvedMethodName 1 1 16 10 100 100 1 1 1 1 1 1 1 1 1 12 1 1 +ciInstanceKlass java/lang/invoke/MethodHandleNatives 1 1 660 100 10 9 10 100 10 10 10 10 8 8 8 8 8 8 8 8 8 8 7 10 7 10 10 7 10 10 8 10 8 10 8 10 9 8 10 100 10 100 100 8 7 7 10 10 7 9 10 10 10 7 10 10 10 10 10 9 8 10 8 10 8 8 8 100 10 8 10 10 10 100 8 10 7 8 10 8 8 8 8 8 10 10 10 10 10 7 10 100 100 10 10 8 8 10 10 10 8 10 8 8 10 10 100 10 7 9 10 10 10 9 10 9 9 10 10 10 7 7 10 10 10 10 10 8 10 10 10 10 10 10 100 8 10 9 10 10 100 10 10 100 100 10 10 100 100 10 100 10 10 10 10 10 10 10 10 10 10 10 10 8 100 10 10 10 10 10 10 7 10 10 10 10 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 1 12 12 12 1 1 1 1 1 1 1 1 1 1 1 12 1 12 12 1 12 1 12 1 12 1 12 100 12 1 100 12 1 12 1 1 1 1 1 12 1 7 12 12 12 12 1 12 7 12 12 12 12 12 1 12 1 12 1 1 1 1 12 1 12 12 100 12 1 100 12 1 1 12 1 1 1 1 1 12 12 12 12 12 1 12 1 1 12 12 1 1 12 12 1 100 12 1 1 12 12 1 12 1 12 7 12 12 12 12 12 12 12 12 12 1 1 12 12 12 7 12 12 1 12 12 12 12 7 12 12 1 1 12 12 12 1 12 12 1 1 1 1 1 12 12 12 12 12 12 12 12 12 1 1 12 12 12 12 12 12 1 12 12 12 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/lang/invoke/MethodHandleNatives $assertionsDisabled Z 1 +ciInstanceKlass java/lang/invoke/LambdaForm 1 1 1075 100 9 10 10 9 9 10 100 10 9 10 9 10 7 9 9 9 9 10 7 10 7 10 10 10 10 10 10 9 100 10 9 10 10 10 10 10 7 10 10 8 10 10 10 7 10 10 7 10 10 9 9 9 10 9 10 10 100 10 9 10 10 100 10 10 10 10 10 10 10 8 10 10 8 8 9 9 9 10 10 10 9 10 10 10 10 10 10 9 10 8 8 8 8 8 8 8 8 10 9 7 10 9 10 10 10 10 10 10 10 10 10 10 10 10 10 10 100 8 10 10 10 10 8 10 8 8 10 9 10 10 100 10 10 10 10 9 8 10 10 10 10 10 9 8 10 100 10 10 9 9 8 10 10 100 100 10 10 8 8 100 8 10 10 10 8 8 9 10 10 8 8 8 100 8 100 8 100 8 10 8 9 10 10 9 10 10 10 10 10 10 10 10 10 10 8 100 10 10 9 10 8 8 100 8 8 8 8 8 8 8 8 10 10 10 10 8 8 8 10 8 10 8 8 8 8 8 10 10 10 10 10 10 10 10 10 10 10 9 8 10 9 10 9 9 9 9 7 10 9 10 10 7 8 10 9 7 10 8 100 10 9 9 10 7 10 10 10 9 10 10 10 9 10 10 10 9 10 9 7 9 10 9 10 100 10 7 9 100 1 1 100 1 100 1 1 1 7 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 3 1 3 1 1 1 1 1 3 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 100 1 1 12 12 12 12 12 12 1 12 12 12 7 12 12 12 12 12 12 1 12 1 12 12 100 12 100 12 12 12 12 1 12 12 12 12 12 12 12 1 12 1 12 12 12 1 12 12 1 12 12 12 12 12 12 12 12 12 1 12 12 12 12 1 12 12 12 12 12 12 12 1 12 12 1 1 12 12 12 12 7 12 12 12 7 12 12 12 12 12 12 12 1 1 1 1 1 1 1 1 12 12 1 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 1 1 12 12 12 1 12 1 1 12 12 12 12 1 12 12 7 12 12 12 1 100 12 12 12 12 12 12 1 12 12 7 12 12 1 12 12 1 1 12 1 1 1 1 12 12 12 1 1 12 12 12 1 1 1 1 1 1 1 1 1 12 1 12 12 12 12 12 12 12 12 12 12 12 12 1 12 12 12 12 1 1 1 1 1 1 1 1 1 1 1 12 12 12 12 1 1 1 12 1 12 1 1 1 1 1 12 12 12 7 12 12 12 12 12 12 12 12 12 1 12 12 12 12 12 12 12 1 7 12 12 12 12 1 1 12 12 1 12 1 1 12 12 12 12 1 12 7 12 12 7 12 12 12 12 12 12 12 12 12 12 12 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/lang/invoke/LambdaForm COMPILE_THRESHOLD I 0 +staticfield java/lang/invoke/LambdaForm INTERNED_ARGUMENTS [[Ljava/lang/invoke/LambdaForm$Name; 5 [[Ljava/lang/invoke/LambdaForm$Name; +staticfield java/lang/invoke/LambdaForm IMPL_NAMES Ljava/lang/invoke/MemberName$Factory; java/lang/invoke/MemberName$Factory +staticfield java/lang/invoke/LambdaForm LF_identity [Ljava/lang/invoke/LambdaForm; 6 [Ljava/lang/invoke/LambdaForm; +staticfield java/lang/invoke/LambdaForm LF_zero [Ljava/lang/invoke/LambdaForm; 6 [Ljava/lang/invoke/LambdaForm; +staticfield java/lang/invoke/LambdaForm NF_identity [Ljava/lang/invoke/LambdaForm$NamedFunction; 6 [Ljava/lang/invoke/LambdaForm$NamedFunction; +staticfield java/lang/invoke/LambdaForm NF_zero [Ljava/lang/invoke/LambdaForm$NamedFunction; 6 [Ljava/lang/invoke/LambdaForm$NamedFunction; +staticfield java/lang/invoke/LambdaForm createFormsLock Ljava/lang/Object; java/lang/Object +staticfield java/lang/invoke/LambdaForm DEBUG_NAME_COUNTERS Ljava/util/HashMap; null +staticfield java/lang/invoke/LambdaForm DEBUG_NAMES Ljava/util/HashMap; null +staticfield java/lang/invoke/LambdaForm TRACE_INTERPRETER Z 0 +staticfield java/lang/invoke/LambdaForm $assertionsDisabled Z 1 +ciInstanceKlass java/lang/invoke/MethodType 1 1 674 7 10 9 9 9 10 9 8 10 10 9 9 10 100 10 8 10 10 10 100 8 10 100 10 10 10 10 11 9 11 7 7 10 10 9 10 10 10 10 10 10 9 7 10 7 10 10 10 10 10 10 10 10 10 8 8 10 9 100 10 10 10 10 10 10 10 10 10 8 10 10 10 10 10 10 10 10 10 9 10 10 10 10 9 7 10 10 10 10 10 10 10 10 100 8 8 8 10 10 10 10 11 11 10 9 10 10 10 10 10 10 10 10 10 10 10 10 9 7 10 10 10 10 10 10 10 8 10 11 9 10 10 10 10 10 9 9 10 9 10 10 100 10 7 10 7 7 9 100 1 1 100 1 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 3 1 3 1 3 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 100 100 1 100 100 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 100 1 1 1 1 1 1 1 100 1 12 12 12 12 7 12 7 12 1 100 12 12 7 7 12 1 1 12 12 12 1 1 12 1 12 12 12 12 12 12 1 7 12 12 12 12 12 12 7 12 12 12 12 1 12 1 12 12 7 12 12 12 12 12 12 12 1 1 12 12 1 12 12 12 12 100 12 12 12 1 12 7 12 12 12 12 12 12 12 12 12 12 12 12 12 1 12 7 12 12 7 12 12 12 1 1 1 1 12 12 12 12 12 100 12 12 12 12 12 12 12 12 12 12 12 12 12 12 1 12 12 12 12 12 12 12 1 7 12 12 12 12 12 100 12 12 12 12 12 100 12 12 100 12 12 12 1 1 1 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/lang/invoke/MethodType internTable Ljava/lang/invoke/MethodType$ConcurrentWeakInternSet; java/lang/invoke/MethodType$ConcurrentWeakInternSet +staticfield java/lang/invoke/MethodType NO_PTYPES [Ljava/lang/Class; 0 [Ljava/lang/Class; +staticfield java/lang/invoke/MethodType objectOnlyTypes [Ljava/lang/invoke/MethodType; 20 [Ljava/lang/invoke/MethodType; +staticfield java/lang/invoke/MethodType METHOD_HANDLE_ARRAY [Ljava/lang/Class; 1 [Ljava/lang/Class; +staticfield java/lang/invoke/MethodType serialPersistentFields [Ljava/io/ObjectStreamField; 0 [Ljava/io/ObjectStreamField; +staticfield java/lang/invoke/MethodType $assertionsDisabled Z 1 +ciInstanceKlass java/lang/BootstrapMethodError 0 0 45 10 10 10 10 10 100 100 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 100 1 1 12 12 12 12 12 1 1 1 1 1 1 1 1 +instanceKlass java/lang/invoke/VolatileCallSite +instanceKlass java/lang/invoke/MutableCallSite +instanceKlass java/lang/invoke/ConstantCallSite +ciInstanceKlass java/lang/invoke/CallSite 1 1 299 10 10 9 10 9 10 10 100 7 10 7 10 10 10 100 100 10 10 10 8 10 10 10 10 10 10 10 10 9 9 7 8 10 10 100 10 9 8 100 10 10 100 8 10 10 10 100 10 10 10 10 10 9 9 8 10 9 100 10 10 10 10 10 10 100 8 10 10 100 100 100 8 10 10 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 7 1 1 1 1 1 1 12 12 12 12 12 12 12 1 1 12 1 12 12 12 1 1 12 12 1 12 12 12 12 12 100 12 12 12 100 12 1 12 12 1 100 12 12 12 12 1 1 12 12 1 12 12 12 12 12 12 12 100 12 12 1 100 12 12 12 12 7 12 1 1 12 1 1 1 1 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/lang/invoke/CallSite $assertionsDisabled Z 1 +ciInstanceKlass java/lang/invoke/MethodHandleNatives$CallSiteContext 1 1 49 10 7 10 10 10 10 7 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 12 1 7 12 7 12 12 1 1 1 1 1 1 1 1 100 1 1 1 1 1 +ciInstanceKlass java/lang/invoke/ConstantCallSite 1 1 49 10 9 10 100 10 9 100 10 10 7 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 12 12 12 1 12 12 1 12 1 1 1 1 +ciInstanceKlass java/lang/invoke/MutableCallSite 0 0 67 10 10 9 10 10 10 9 10 10 100 10 100 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 12 12 12 12 12 12 12 12 100 12 1 12 1 1 1 1 1 1 1 1 1 1 1 +ciInstanceKlass java/lang/invoke/VolatileCallSite 0 0 41 10 10 10 10 10 10 100 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 12 12 12 1 1 1 1 1 1 1 +ciInstanceKlass java/lang/AssertionStatusDirectives 0 0 24 10 100 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 1 1 +instanceKlass java/lang/StringBuilder +instanceKlass java/lang/StringBuffer +ciInstanceKlass java/lang/AbstractStringBuilder 1 1 522 7 7 10 9 9 9 9 10 9 10 10 10 10 10 10 10 10 7 3 10 3 100 10 10 100 10 10 10 10 10 10 10 100 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 11 10 10 8 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 18 100 10 18 10 10 10 11 10 10 10 100 10 8 10 10 8 8 10 10 10 10 100 10 100 10 100 10 7 100 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 7 1 1 1 100 1 1 1 1 1 1 1 1 1 12 12 12 12 12 7 12 12 12 7 12 12 12 12 12 7 12 1 12 1 12 1 12 12 12 12 12 12 1 12 100 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 1 12 12 12 12 12 12 7 12 12 12 7 12 12 12 12 12 12 12 12 12 7 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 1 15 16 15 16 12 1 100 12 15 12 12 12 12 12 12 1 1 12 12 1 1 12 12 12 1 1 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 10 1 10 1 1 1 1 1 10 1 1 1 1 1 1 1 1 1 1 100 12 12 12 1 1 100 1 1 100 1 1 +staticfield java/lang/AbstractStringBuilder EMPTYVALUE [B 0 +ciInstanceKlass java/lang/StringBuffer 1 1 471 10 10 10 11 10 10 10 9 10 10 10 9 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 9 10 10 100 10 10 10 10 10 8 10 8 10 8 10 10 10 10 7 10 100 8 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 7 10 7 10 9 9 9 7 100 100 100 1 1 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 100 1 1 1 100 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 7 12 100 1 12 100 12 12 1 12 1 12 1 12 12 100 12 12 12 1 1 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 1 12 1 12 7 12 7 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/lang/StringBuffer serialPersistentFields [Ljava/io/ObjectStreamField; 3 [Ljava/io/ObjectStreamField; +ciInstanceKlass java/lang/StringBuilder 1 1 409 10 10 10 11 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 9 9 10 10 10 10 10 10 10 10 10 10 10 100 100 8 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 7 10 7 100 100 100 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 100 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 7 12 100 100 12 12 12 12 12 100 12 12 12 1 1 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 1 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +ciInstanceKlass jdk/internal/misc/Unsafe 1 1 1196 10 9 9 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 100 10 10 10 5 0 10 10 10 10 10 10 10 10 10 100 10 10 10 10 10 10 10 10 10 10 10 10 10 10 5 0 5 0 5 0 10 10 10 100 10 10 10 10 10 10 10 10 10 100 10 10 10 10 8 10 8 8 10 9 9 9 9 9 9 9 9 10 10 10 10 5 0 5 0 9 10 10 10 10 10 8 3 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 100 10 100 10 9 5 0 10 5 0 10 5 0 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 5 0 5 0 5 0 10 10 10 10 10 8 100 11 8 11 10 10 7 10 7 10 9 7 9 7 9 7 9 7 9 7 9 7 9 7 9 7 9 10 9 9 9 9 9 9 9 9 9 10 10 10 7 1 1 1 1 1 3 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 12 12 12 12 7 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 1 12 12 12 12 12 12 12 12 12 12 12 1 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 1 12 12 12 12 12 12 12 12 1 12 12 12 1 12 1 1 12 7 12 100 7 100 100 7 100 12 12 12 12 12 12 12 12 12 12 1 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 1 1 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 100 12 1 1 12 1 12 12 12 1 1 12 12 12 1 12 1 12 1 12 1 12 1 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield jdk/internal/misc/Unsafe theUnsafe Ljdk/internal/misc/Unsafe; jdk/internal/misc/Unsafe +staticfield jdk/internal/misc/Unsafe ARRAY_BOOLEAN_BASE_OFFSET I 16 +staticfield jdk/internal/misc/Unsafe ARRAY_BYTE_BASE_OFFSET I 16 +staticfield jdk/internal/misc/Unsafe ARRAY_SHORT_BASE_OFFSET I 16 +staticfield jdk/internal/misc/Unsafe ARRAY_CHAR_BASE_OFFSET I 16 +staticfield jdk/internal/misc/Unsafe ARRAY_INT_BASE_OFFSET I 16 +staticfield jdk/internal/misc/Unsafe ARRAY_LONG_BASE_OFFSET I 16 +staticfield jdk/internal/misc/Unsafe ARRAY_FLOAT_BASE_OFFSET I 16 +staticfield jdk/internal/misc/Unsafe ARRAY_DOUBLE_BASE_OFFSET I 16 +staticfield jdk/internal/misc/Unsafe ARRAY_OBJECT_BASE_OFFSET I 16 +staticfield jdk/internal/misc/Unsafe ARRAY_BOOLEAN_INDEX_SCALE I 1 +staticfield jdk/internal/misc/Unsafe ARRAY_BYTE_INDEX_SCALE I 1 +staticfield jdk/internal/misc/Unsafe ARRAY_SHORT_INDEX_SCALE I 2 +staticfield jdk/internal/misc/Unsafe ARRAY_CHAR_INDEX_SCALE I 2 +staticfield jdk/internal/misc/Unsafe ARRAY_INT_INDEX_SCALE I 4 +staticfield jdk/internal/misc/Unsafe ARRAY_LONG_INDEX_SCALE I 8 +staticfield jdk/internal/misc/Unsafe ARRAY_FLOAT_INDEX_SCALE I 4 +staticfield jdk/internal/misc/Unsafe ARRAY_DOUBLE_INDEX_SCALE I 8 +staticfield jdk/internal/misc/Unsafe ARRAY_OBJECT_INDEX_SCALE I 4 +staticfield jdk/internal/misc/Unsafe ADDRESS_SIZE I 8 +staticfield jdk/internal/misc/Unsafe BE Z 0 +staticfield jdk/internal/misc/Unsafe unalignedAccess Z 1 +ciInstanceKlass jdk/internal/module/Modules 1 1 483 10 9 11 11 11 11 11 11 11 11 10 10 18 10 100 10 10 10 10 11 10 10 10 10 9 10 10 10 100 100 11 10 11 10 10 10 10 10 11 18 11 10 11 100 11 11 11 10 10 18 11 18 11 10 18 18 10 9 11 100 10 11 11 7 11 10 100 10 10 10 11 10 100 10 18 10 100 8 10 10 18 11 11 10 10 10 18 10 10 7 10 10 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 100 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 100 100 100 100 100 100 100 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 12 12 7 12 12 12 12 12 12 12 12 12 100 12 1 15 16 15 16 12 100 12 1 100 12 100 12 12 12 12 12 12 12 12 12 100 12 1 1 12 100 12 12 12 12 100 12 12 12 12 16 15 16 12 12 100 12 100 12 1 12 12 12 12 100 12 16 15 16 12 12 16 15 16 12 12 12 15 16 15 16 12 12 12 1 12 12 1 12 1 12 12 12 12 12 1 15 16 12 12 1 1 12 12 15 16 12 12 12 15 12 1 12 7 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 10 1 10 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 10 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 10 1 1 1 1 1 1 10 1 1 1 1 1 1 10 1 10 1 1 1 1 1 1 1 1 1 1 1 1 1 10 1 1 1 1 1 10 1 1 10 1 1 1 1 1 100 12 12 12 12 12 12 12 12 12 1 1 100 1 1 1 1 1 100 1 1 +staticfield jdk/internal/module/Modules JLA Ljdk/internal/access/JavaLangAccess; java/lang/System$2 +staticfield jdk/internal/module/Modules $assertionsDisabled Z 1 +instanceKlass org/apache/commons/compress/archivers/ArchiveInputStream +instanceKlass jdk/nio/zipfs/ZipFileSystem$EntryInputStream +instanceKlass org/gradle/internal/io/StreamByteBuffer$StreamByteBufferInputStream +instanceKlass com/google/common/io/BaseEncoding$StandardBaseEncoding$2 +instanceKlass java/io/ObjectInputStream +instanceKlass org/apache/tools/ant/util/FileUtils$1 +instanceKlass org/gradle/util/internal/BulkReadInputStream +instanceKlass java/io/PipedInputStream +instanceKlass org/gradle/internal/remote/internal/inet/SocketConnection$SocketInputStream +instanceKlass org/gradle/internal/io/RandomAccessFileInputStream +instanceKlass com/esotericsoftware/kryo/io/Input +instanceKlass org/gradle/internal/serialize/kryo/KryoBackedDecoder$1 +instanceKlass org/gradle/internal/serialize/AbstractDecoder$DecoderStream +instanceKlass org/gradle/internal/stream/EncodedStream$EncodedInput +instanceKlass java/util/zip/ZipFile$ZipFileInputStream +instanceKlass java/io/FilterInputStream +instanceKlass java/io/FileInputStream +instanceKlass java/io/ByteArrayInputStream +ciInstanceKlass java/io/InputStream 1 1 170 100 10 100 10 10 10 10 7 3 10 100 8 10 7 10 3 100 8 10 7 10 11 10 11 11 11 7 10 5 0 10 8 10 8 10 10 7 100 1 1 1 1 3 1 3 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 1 12 7 12 12 1 12 1 1 12 1 7 12 1 1 1 12 100 12 12 12 12 7 12 12 1 12 100 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +ciInstanceKlass java/io/ByteArrayInputStream 1 1 96 10 9 9 9 9 10 10 10 10 10 10 7 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 12 12 7 12 7 12 7 12 100 12 12 100 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +ciInstanceKlass java/net/URL 1 1 744 10 10 10 9 9 10 10 10 9 10 8 10 100 10 10 8 10 9 100 8 10 10 8 9 10 9 10 10 9 9 8 9 10 8 9 10 10 8 10 7 10 10 10 10 10 8 10 10 8 9 8 10 10 100 10 10 10 100 8 10 10 8 10 10 10 10 10 10 8 10 7 10 10 10 9 10 9 10 10 100 100 10 10 10 10 10 10 7 10 10 10 100 10 10 8 9 10 10 9 10 100 10 10 10 10 10 10 10 10 10 10 10 9 9 100 8 10 10 9 10 8 10 8 10 10 8 8 10 100 10 10 10 7 100 10 9 10 8 10 100 10 10 8 9 10 10 10 10 10 11 10 10 9 10 10 10 8 10 7 100 10 8 8 10 8 8 8 100 10 9 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 100 8 10 10 10 10 10 8 7 10 7 10 7 10 7 7 10 9 9 7 10 10 100 1 1 1 1 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 100 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 12 12 100 12 12 12 12 12 1 12 1 12 1 12 12 1 1 12 12 1 12 12 12 12 12 12 12 1 12 12 1 12 12 7 12 1 12 1 12 12 12 12 12 1 12 12 1 12 1 12 12 1 12 12 12 1 1 12 1 12 12 12 12 12 12 1 12 1 7 12 12 100 12 12 12 12 100 12 1 1 12 12 12 12 12 12 1 12 1 12 12 1 12 100 12 12 100 12 12 1 12 12 12 12 12 12 12 7 12 12 12 12 12 1 1 12 12 12 1 7 12 1 12 12 1 1 12 1 100 12 12 12 1 1 12 12 1 12 1 100 12 100 12 12 12 12 12 7 12 12 12 12 12 12 100 12 12 12 1 1 12 1 12 12 12 12 12 12 12 12 12 12 12 12 12 12 1 1 12 12 12 1 1 1 1 1 1 12 7 12 12 1 7 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/net/URL defaultFactory Ljava/net/URLStreamHandlerFactory; java/net/URL$DefaultFactory +staticfield java/net/URL streamHandlerLock Ljava/lang/Object; java/lang/Object +staticfield java/net/URL serialPersistentFields [Ljava/io/ObjectStreamField; 7 [Ljava/io/ObjectStreamField; +ciInstanceKlass java/util/jar/Manifest 1 1 301 10 7 10 9 7 10 9 9 10 10 10 10 10 11 11 10 10 100 100 10 8 10 10 10 10 11 100 10 10 11 11 11 11 100 100 8 10 11 7 9 10 10 10 10 8 10 10 11 10 10 10 8 10 7 10 10 10 100 8 10 10 8 10 10 10 10 11 10 10 10 7 10 11 10 11 10 7 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 1 12 1 12 12 12 12 12 12 12 7 12 12 100 12 1 1 1 12 12 12 12 1 12 12 12 100 12 12 12 1 1 1 12 1 7 12 12 12 12 12 1 12 12 12 12 12 1 12 1 12 12 12 1 1 12 1 12 100 12 12 12 12 12 7 12 12 1 12 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +ciInstanceKlass jdk/internal/loader/ClassLoaders 1 1 143 10 9 9 9 7 11 100 11 11 10 10 100 100 10 9 8 10 7 10 7 10 10 7 10 8 10 8 8 7 10 7 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 12 1 100 12 1 12 12 100 12 100 12 1 1 7 12 12 1 7 12 1 12 1 12 12 1 12 1 7 12 1 1 1 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield jdk/internal/loader/ClassLoaders JLA Ljdk/internal/access/JavaLangAccess; java/lang/System$2 +staticfield jdk/internal/loader/ClassLoaders BOOT_LOADER Ljdk/internal/loader/ClassLoaders$BootClassLoader; jdk/internal/loader/ClassLoaders$BootClassLoader +staticfield jdk/internal/loader/ClassLoaders PLATFORM_LOADER Ljdk/internal/loader/ClassLoaders$PlatformClassLoader; jdk/internal/loader/ClassLoaders$PlatformClassLoader +staticfield jdk/internal/loader/ClassLoaders APP_LOADER Ljdk/internal/loader/ClassLoaders$AppClassLoader; jdk/internal/loader/ClassLoaders$AppClassLoader +instanceKlass jdk/internal/loader/ClassLoaders$BootClassLoader +instanceKlass jdk/internal/loader/ClassLoaders$PlatformClassLoader +instanceKlass jdk/internal/loader/ClassLoaders$AppClassLoader +ciInstanceKlass jdk/internal/loader/BuiltinClassLoader 1 1 717 10 10 9 9 7 10 9 9 10 10 11 100 100 10 10 8 10 10 7 10 10 11 11 11 7 9 8 8 10 10 9 11 7 10 10 10 10 10 10 10 11 10 100 10 10 10 100 8 10 10 8 10 10 11 11 7 7 10 11 11 10 7 10 10 7 7 10 7 7 10 10 100 10 11 100 100 10 10 100 100 10 10 18 10 10 18 100 10 7 10 10 10 10 10 9 100 10 10 10 10 10 10 10 10 10 10 18 7 10 10 10 10 100 10 7 10 10 10 11 7 10 7 100 10 10 11 10 10 10 10 10 10 10 10 8 10 10 10 100 8 8 10 10 8 8 10 11 9 10 9 9 9 9 9 9 10 8 10 7 10 10 7 7 10 11 10 10 10 100 10 10 10 7 10 10 8 10 7 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 7 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 100 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 7 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 7 12 12 12 12 1 12 12 12 12 12 12 1 1 12 1 12 12 1 12 12 7 12 12 12 1 12 1 1 12 7 12 12 12 1 12 12 12 7 12 12 12 12 12 7 12 1 7 12 12 1 1 12 1 12 12 12 12 1 1 12 12 1 12 12 1 1 12 1 1 12 7 12 1 12 12 1 1 12 12 1 1 12 12 1 15 16 15 16 12 12 12 15 16 1 7 12 1 12 12 12 12 12 1 12 12 12 12 12 12 12 12 12 15 16 12 1 12 12 12 12 1 12 100 1 1 12 12 12 12 1 12 1 12 12 12 12 12 12 12 12 12 12 12 1 12 12 12 1 1 1 12 1 1 7 12 7 12 7 12 12 12 12 12 12 12 12 12 1 12 1 12 12 1 1 12 12 12 12 1 12 12 1 12 12 1 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 10 10 1 1 1 1 10 1 1 1 1 1 1 1 1 1 1 1 1 1 10 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 12 12 12 12 1 1 100 1 1 100 1 1 +staticfield jdk/internal/loader/BuiltinClassLoader packageToModule Ljava/util/Map; java/util/concurrent/ConcurrentHashMap +staticfield jdk/internal/loader/BuiltinClassLoader $assertionsDisabled Z 1 +ciInstanceKlass jdk/internal/loader/ClassLoaders$AppClassLoader 1 1 134 8 10 9 10 10 10 10 10 10 7 8 10 10 10 9 11 10 10 100 10 7 7 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 12 12 7 12 100 12 12 12 12 12 1 1 12 7 12 100 12 12 100 12 12 7 12 1 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +ciInstanceKlass jdk/internal/loader/ClassLoaders$PlatformClassLoader 1 1 57 8 10 9 11 10 100 10 100 7 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 12 12 100 12 7 12 1 12 1 1 1 1 1 1 1 1 1 1 1 1 +ciInstanceKlass java/security/CodeSource 1 1 402 10 9 9 9 9 10 9 10 100 10 100 10 7 10 10 10 100 10 10 10 10 10 100 10 10 10 10 10 10 10 10 10 10 10 10 10 8 10 10 10 10 8 10 10 100 10 10 8 10 10 10 8 8 9 100 8 10 10 8 10 8 8 8 10 10 10 10 10 10 100 100 10 10 10 10 10 100 10 10 8 10 10 10 100 10 100 100 8 8 10 10 10 100 10 10 11 10 10 11 10 10 8 100 10 10 100 10 11 11 7 100 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 100 100 1 1 1 1 1 1 1 1 1 12 12 12 12 12 7 12 12 100 12 100 12 1 12 12 100 1 12 100 12 12 12 1 12 100 100 12 100 12 12 12 12 12 12 1 12 12 12 12 1 12 1 12 1 12 12 12 1 1 12 1 1 12 12 1 12 1 1 1 12 12 12 12 12 12 1 1 12 12 12 12 12 1 12 1 12 12 12 1 12 1 1 1 1 12 100 12 1 12 12 12 12 12 100 1 1 12 12 1 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +ciInstanceKlass java/lang/StackTraceElement 0 0 224 10 10 9 9 9 9 8 10 100 9 8 9 9 9 8 10 10 100 10 10 8 10 10 8 8 8 10 8 8 10 8 8 100 10 10 10 10 9 10 10 100 10 10 10 10 10 10 10 10 10 100 100 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 3 1 3 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 100 100 100 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 12 12 12 12 12 12 1 100 12 1 12 1 12 12 12 1 12 12 1 12 1 12 12 1 1 1 12 1 1 12 1 1 1 12 12 12 12 12 12 12 1 12 100 12 100 12 12 12 12 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +instanceKlass java/nio/IntBuffer +instanceKlass java/nio/LongBuffer +instanceKlass java/nio/CharBuffer +instanceKlass java/nio/ByteBuffer +ciInstanceKlass java/nio/Buffer 1 1 195 100 10 9 9 10 9 10 10 100 100 10 8 10 10 8 8 10 10 8 9 100 8 10 8 8 9 10 8 8 8 10 8 8 8 100 10 100 10 100 10 100 10 7 10 10 9 7 10 10 7 1 1 1 1 1 1 3 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 12 12 12 12 1 1 1 12 12 1 1 12 12 1 12 1 1 12 1 1 12 12 1 1 1 12 1 1 1 1 1 1 1 1 7 12 7 12 12 1 7 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/nio/Buffer UNSAFE Ljdk/internal/misc/Unsafe; jdk/internal/misc/Unsafe +staticfield java/nio/Buffer $assertionsDisabled Z 1 +ciInstanceKlass java/lang/StackWalker 0 0 235 9 10 100 10 10 11 10 10 100 10 100 8 10 10 10 10 9 9 9 9 10 9 10 11 100 8 10 10 9 10 10 10 18 100 8 10 10 10 9 11 10 100 100 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 100 12 1 100 12 12 100 12 12 12 1 12 1 1 12 12 12 12 12 12 12 12 12 12 100 12 12 1 1 12 12 12 100 12 100 12 1 15 16 15 16 12 1 1 12 100 12 12 100 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 10 10 1 1 1 1 1 1 1 1 1 1 1 1 100 12 12 1 1 100 1 1 100 1 1 +ciInstanceKlass java/lang/StackStreamFactory$AbstractStackWalker 1 0 306 100 100 3 10 10 10 9 10 9 9 9 9 9 10 10 9 10 10 9 9 100 10 8 10 10 8 10 10 100 8 10 8 10 9 10 9 8 5 0 8 8 9 10 10 10 9 10 10 10 10 10 10 8 10 10 10 10 8 100 10 10 10 10 10 10 9 8 10 10 10 10 10 10 10 10 10 10 8 100 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 100 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 100 12 12 12 12 12 12 12 100 12 100 12 12 12 12 12 12 100 12 1 1 12 12 1 12 100 12 1 1 12 1 12 100 12 12 12 1 1 1 12 12 12 12 12 12 12 12 12 12 12 1 12 12 12 12 1 1 12 12 12 12 12 100 12 12 1 12 12 12 12 12 12 12 12 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +instanceKlass java/lang/LiveStackFrameInfo +ciInstanceKlass java/lang/StackFrameInfo 0 0 132 10 9 9 9 11 9 11 10 10 10 11 11 11 10 9 10 10 10 11 10 9 10 100 8 10 10 100 100 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 100 1 1 1 1 1 12 100 12 12 100 12 12 12 12 100 12 12 12 12 12 12 12 12 12 12 12 12 12 12 1 1 12 100 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +ciInstanceKlass java/lang/LiveStackFrameInfo 0 0 97 10 9 9 9 9 9 100 10 10 8 10 100 8 8 8 10 100 10 100 10 100 100 100 1 1 1 1 1 1 1 1 3 1 3 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 12 12 12 12 12 12 1 12 12 1 12 1 1 1 1 1 12 1 12 1 1 1 1 1 1 1 1 1 +instanceKlass java/util/concurrent/locks/AbstractQueuedSynchronizer +ciInstanceKlass java/util/concurrent/locks/AbstractOwnableSynchronizer 1 1 32 10 9 7 7 100 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 1 1 1 +ciInstanceKlass java/lang/Boolean 1 1 128 10 9 10 10 8 10 9 9 8 10 7 10 10 100 100 10 10 8 10 9 7 100 100 1 1 1 1 1 1 1 1 1 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 12 1 12 12 12 1 12 1 12 7 12 1 1 12 12 1 7 12 12 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/lang/Boolean TRUE Ljava/lang/Boolean; java/lang/Boolean +staticfield java/lang/Boolean FALSE Ljava/lang/Boolean; java/lang/Boolean +staticfield java/lang/Boolean TYPE Ljava/lang/Class; java/lang/Class +ciInstanceKlass java/lang/Character 1 1 551 7 100 10 9 9 10 10 10 10 10 10 3 3 3 3 3 10 10 3 11 11 10 10 100 10 10 3 10 10 10 100 8 7 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 5 0 10 10 10 10 10 10 10 10 10 10 9 100 10 10 10 3 10 10 10 100 10 10 10 10 8 10 9 10 10 10 10 10 10 10 10 10 100 8 10 10 8 10 9 100 100 7 1 1 100 1 100 1 100 1 1 1 1 3 1 3 1 1 3 1 3 1 1 1 1 1 1 1 3 1 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 3 1 1 1 1 1 1 1 3 1 1 3 1 1 1 1 1 3 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 12 12 12 12 12 12 12 12 7 12 12 12 12 1 12 12 12 12 1 1 1 100 12 12 12 12 12 12 12 12 12 7 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 1 12 12 100 12 12 12 1 12 12 12 1 12 100 12 12 12 12 12 12 12 1 1 12 7 12 1 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/lang/Character TYPE Ljava/lang/Class; java/lang/Class +staticfield java/lang/Character $assertionsDisabled Z 1 +instanceKlass com/google/common/cache/Striped64 +instanceKlass java/math/BigDecimal +instanceKlass java/util/concurrent/atomic/Striped64 +instanceKlass java/math/BigInteger +instanceKlass java/util/concurrent/atomic/AtomicLong +instanceKlass java/util/concurrent/atomic/AtomicInteger +instanceKlass java/lang/Long +instanceKlass java/lang/Integer +instanceKlass java/lang/Short +instanceKlass java/lang/Byte +instanceKlass java/lang/Double +instanceKlass java/lang/Float +ciInstanceKlass java/lang/Number 1 1 37 10 10 100 7 100 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 1 1 1 +ciInstanceKlass java/lang/Float 1 1 192 7 100 10 10 4 100 10 10 8 8 10 10 10 10 4 4 4 10 9 10 10 10 10 10 10 3 10 10 10 10 8 10 9 7 100 1 1 1 1 1 4 1 1 1 4 1 1 3 1 3 1 3 1 3 1 1 1 1 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 12 100 12 1 12 12 1 1 100 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 1 7 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/lang/Float TYPE Ljava/lang/Class; java/lang/Class +ciInstanceKlass java/lang/Double 1 1 254 7 100 10 10 10 100 10 10 6 0 8 10 8 10 8 6 0 10 100 5 0 5 0 8 8 10 10 8 10 8 8 8 10 10 10 10 10 10 10 10 6 0 6 0 6 0 10 9 10 10 10 10 5 0 10 10 10 10 8 10 9 7 100 1 1 1 1 1 6 0 1 1 1 6 0 1 1 3 1 3 1 3 1 3 1 1 1 1 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 12 12 12 1 12 100 12 1 12 1 12 1 12 1 1 1 100 12 12 1 12 1 1 1 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 1 7 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/lang/Double TYPE Ljava/lang/Class; java/lang/Class +ciInstanceKlass java/lang/Byte 1 1 178 7 10 9 10 100 100 10 8 10 8 10 10 10 10 10 10 10 10 8 8 10 9 10 10 10 10 10 5 0 10 8 10 9 7 100 7 1 1 1 1 1 3 1 3 1 1 1 1 1 1 1 3 1 3 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 12 12 12 1 1 12 1 12 1 12 12 12 12 12 12 12 12 1 1 12 12 12 12 12 12 12 1 7 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/lang/Byte TYPE Ljava/lang/Class; java/lang/Class +ciInstanceKlass java/lang/Short 1 1 186 7 100 10 10 100 100 10 8 10 8 10 10 10 10 10 10 9 10 10 10 8 8 10 9 10 10 10 10 10 3 3 5 0 10 8 10 9 100 100 100 1 1 1 1 1 3 1 3 1 1 1 1 1 1 1 3 1 3 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 12 12 1 1 12 1 12 1 12 12 12 12 12 12 12 12 12 12 1 1 12 12 12 12 12 12 12 1 7 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/lang/Short TYPE Ljava/lang/Class; java/lang/Class +ciInstanceKlass java/lang/Integer 1 1 417 7 100 7 7 10 9 9 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 9 9 100 8 10 100 10 8 10 10 8 10 8 10 3 10 3 10 10 10 7 11 100 10 11 10 8 10 8 100 10 10 5 0 8 10 10 10 10 7 9 9 10 10 9 10 10 10 10 100 100 10 10 8 8 10 8 8 8 8 8 8 10 10 10 5 0 3 3 3 3 10 3 10 10 8 10 9 3 3 3 3 3 3 9 7 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 3 1 3 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 100 12 12 100 12 12 100 12 12 12 7 12 12 12 12 12 12 12 12 12 1 1 12 1 12 1 12 12 1 12 1 12 12 12 12 7 12 1 1 12 1 12 1 1 12 12 1 12 12 12 12 1 12 12 12 12 12 12 12 7 12 1 1 12 12 1 1 12 1 1 1 1 1 1 12 12 12 12 12 12 1 7 12 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/lang/Integer TYPE Ljava/lang/Class; java/lang/Class +staticfield java/lang/Integer digits [C 36 +staticfield java/lang/Integer DigitTens [B 100 +staticfield java/lang/Integer DigitOnes [B 100 +staticfield java/lang/Integer sizeTable [I 10 +ciInstanceKlass java/lang/Long 1 1 482 7 100 7 7 10 9 9 10 10 10 10 10 10 10 10 5 0 5 0 7 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 7 5 0 5 0 9 9 5 0 100 8 10 8 10 8 8 10 5 0 10 5 0 10 10 10 100 11 100 10 11 10 8 10 8 100 10 10 8 8 11 10 10 10 5 0 5 0 9 10 10 8 8 10 8 8 8 8 8 8 10 10 10 10 9 10 10 10 100 100 10 10 10 10 10 10 10 5 0 5 0 5 0 10 5 0 5 0 10 10 10 8 10 9 7 100 7 1 1 1 1 1 1 5 0 1 1 1 1 1 1 1 3 1 3 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 7 12 12 100 12 12 12 12 12 1 12 12 12 12 12 12 100 12 12 12 12 12 12 100 12 12 12 12 12 12 12 1 12 12 1 1 12 1 12 1 1 12 12 12 12 100 12 1 1 12 1 12 1 1 12 12 1 1 12 12 12 12 12 12 12 1 1 12 1 1 1 1 1 1 12 12 12 12 12 12 7 12 1 1 12 12 12 12 12 12 12 12 12 12 1 7 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/lang/Long TYPE Ljava/lang/Class; java/lang/Class +instanceKlass kotlin/KotlinNullPointerException +ciInstanceKlass java/lang/NullPointerException 1 1 26 10 10 100 100 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 12 12 1 1 +ciInstanceKlass java/lang/ArithmeticException 1 1 26 10 10 100 100 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 12 12 1 1 +ciInstanceKlass java/util/Objects 1 1 140 10 100 8 10 10 10 10 10 10 10 11 100 10 10 8 10 8 100 11 8 100 10 10 10 7 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 1 1 12 12 7 12 12 12 12 12 100 12 1 12 12 1 12 1 1 7 12 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +instanceKlass java/util/Collections$SingletonMap +instanceKlass com/google/common/collect/MapMakerInternalMap +instanceKlass com/google/common/cache/LocalCache +instanceKlass java/util/concurrent/ConcurrentSkipListMap +instanceKlass java/util/EnumMap +instanceKlass java/util/TreeMap +instanceKlass java/util/IdentityHashMap +instanceKlass java/util/WeakHashMap +instanceKlass java/util/ImmutableCollections$AbstractImmutableMap +instanceKlass java/util/Collections$EmptyMap +instanceKlass sun/util/PreHashedMap +instanceKlass java/util/concurrent/ConcurrentHashMap +instanceKlass java/util/HashMap +ciInstanceKlass java/util/AbstractMap 1 1 192 10 10 11 10 11 11 11 7 11 10 11 100 10 11 11 10 11 9 7 10 9 100 10 7 11 11 11 100 100 11 8 100 10 10 8 10 10 10 7 7 100 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 100 100 12 12 12 12 12 12 1 12 12 12 1 12 12 12 12 1 12 12 1 1 12 12 1 1 12 1 1 12 1 12 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +ciInstanceKlass java/util/concurrent/ConcurrentMap 1 1 208 11 10 11 11 11 11 100 11 11 100 11 18 11 11 11 11 11 11 100 100 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 100 12 12 100 12 12 12 1 12 12 1 12 1 15 16 15 12 12 100 12 12 100 12 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 10 11 1 1 1 1 100 12 12 1 1 100 1 1 100 1 1 1 100 1 8 1 1 12 10 1 1 1 8 1 1 8 1 1 1 8 1 1 1 8 1 1 1 8 1 1 1 8 1 1 1 8 1 1 1 8 1 1 1 8 1 1 1 8 1 1 8 1 +ciInstanceKlass java/util/concurrent/ConcurrentHashMap 1 1 1210 7 7 3 10 3 100 10 100 10 100 11 11 11 9 9 9 10 7 10 10 10 4 10 9 10 100 10 5 0 10 10 5 0 10 10 9 10 9 9 10 9 10 9 10 100 10 100 10 10 10 10 10 10 10 100 10 7 100 8 10 10 10 11 10 11 11 11 11 7 11 11 10 10 9 10 9 10 9 10 5 0 9 7 10 9 7 10 9 7 10 100 10 10 8 10 10 7 11 100 10 10 8 10 8 10 8 10 10 10 10 10 100 10 9 9 10 9 11 11 100 10 11 10 11 10 100 10 100 10 10 9 10 3 10 9 10 9 9 10 10 9 9 10 10 3 9 9 10 7 9 3 9 100 10 9 10 9 7 10 9 10 100 10 100 5 0 10 100 10 10 10 100 10 10 100 100 10 10 10 100 10 10 100 10 10 100 10 100 10 10 10 100 10 10 10 100 10 10 100 10 10 100 10 10 100 10 10 100 10 10 100 10 10 100 10 10 100 10 10 100 10 10 100 10 10 100 10 10 100 10 10 100 10 10 100 10 10 100 10 10 100 10 10 100 10 10 100 10 10 100 10 10 100 10 10 100 10 10 100 10 10 100 10 10 100 10 10 10 10 10 7 7 10 9 9 10 8 10 8 8 8 8 7 10 10 100 8 10 7 7 100 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 100 1 100 1 100 1 100 1 100 1 100 1 1 1 100 1 1 100 1 1 1 1 1 1 1 1 1 1 1 5 0 1 1 1 3 1 3 1 1 1 1 3 1 3 1 3 1 1 1 1 1 3 1 3 1 3 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 7 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 100 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 100 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 1 12 1 12 1 12 12 12 12 12 12 12 1 12 12 12 12 12 12 1 12 12 12 12 12 12 12 12 12 12 12 12 12 1 1 12 12 12 12 12 12 12 1 12 1 1 1 12 12 12 12 12 12 7 12 12 12 1 12 12 12 12 12 12 12 12 12 12 1 12 12 1 12 12 1 1 12 1 12 12 1 1 12 12 12 12 12 12 12 12 12 1 12 12 12 12 100 12 12 1 1 12 100 12 12 12 1 12 1 7 12 12 100 12 12 12 12 12 12 7 12 12 12 12 12 12 12 12 1 12 1 12 12 12 12 1 12 12 100 12 12 1 100 12 1 12 12 12 1 12 1 1 12 1 12 1 12 1 12 1 12 12 1 12 12 1 12 1 12 1 12 1 12 1 12 1 12 1 12 1 12 1 1 1 1 12 1 12 1 12 1 12 1 12 1 1 1 1 12 1 12 1 12 1 12 1 12 12 7 12 12 1 12 12 12 12 12 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/util/concurrent/ConcurrentHashMap NCPU I 16 +staticfield java/util/concurrent/ConcurrentHashMap serialPersistentFields [Ljava/io/ObjectStreamField; 3 [Ljava/io/ObjectStreamField; +staticfield java/util/concurrent/ConcurrentHashMap U Ljdk/internal/misc/Unsafe; jdk/internal/misc/Unsafe +staticfield java/util/concurrent/ConcurrentHashMap SIZECTL J 20 +staticfield java/util/concurrent/ConcurrentHashMap TRANSFERINDEX J 32 +staticfield java/util/concurrent/ConcurrentHashMap BASECOUNT J 24 +staticfield java/util/concurrent/ConcurrentHashMap CELLSBUSY J 36 +staticfield java/util/concurrent/ConcurrentHashMap CELLVALUE J 144 +staticfield java/util/concurrent/ConcurrentHashMap ABASE I 16 +staticfield java/util/concurrent/ConcurrentHashMap ASHIFT I 2 +instanceKlass java/util/concurrent/ConcurrentHashMap$ForwardingNode +instanceKlass java/util/concurrent/ConcurrentHashMap$ReservationNode +ciInstanceKlass java/util/concurrent/ConcurrentHashMap$Node 1 1 97 10 9 9 9 10 9 10 10 100 10 100 11 11 10 7 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 12 12 12 12 12 12 12 100 12 1 100 1 12 12 12 1 1 1 1 1 1 1 1 +ciInstanceKlass java/util/concurrent/ConcurrentHashMap$ReservationNode 1 1 34 100 10 100 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 1 1 1 +instanceKlass java/lang/ref/ReferenceQueue$Null +ciInstanceKlass java/lang/ref/ReferenceQueue 1 1 140 10 7 10 9 9 9 9 9 9 100 10 9 9 7 10 10 10 100 8 10 10 10 5 0 10 11 7 10 7 10 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 100 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 12 1 12 12 12 12 12 12 1 12 12 1 7 12 12 12 1 1 12 7 12 12 12 100 12 1 7 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/lang/ref/ReferenceQueue NULL Ljava/lang/ref/ReferenceQueue; java/lang/ref/ReferenceQueue$Null +staticfield java/lang/ref/ReferenceQueue ENQUEUED Ljava/lang/ref/ReferenceQueue; java/lang/ref/ReferenceQueue$Null +staticfield java/lang/ref/ReferenceQueue $assertionsDisabled Z 1 +ciInstanceKlass java/lang/ref/ReferenceQueue$Null 1 1 28 10 100 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 1 1 +ciInstanceKlass java/lang/ref/ReferenceQueue$Lock 1 1 21 10 100 7 1 1 1 1 1 1 1 1 1 1 1 1 7 12 1 1 1 +ciInstanceKlass jdk/internal/misc/VM 1 1 279 10 9 9 7 100 100 10 8 10 10 10 10 10 10 10 10 9 9 10 9 100 8 10 11 7 8 10 7 11 7 11 8 10 8 10 10 10 10 5 0 8 8 8 8 8 10 9 9 9 9 9 9 9 9 10 10 10 10 10 7 5 0 10 1 1 1 3 1 3 1 3 1 3 1 3 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 3 1 3 1 3 1 1 1 1 1 1 1 1 1 1 100 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 7 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 1 1 1 1 12 12 12 12 12 12 12 12 12 12 12 12 1 1 12 1 1 7 12 1 1 7 12 1 12 1 12 1 12 7 12 12 100 12 1 1 1 1 1 7 12 12 12 12 12 12 12 12 12 12 12 12 12 12 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield jdk/internal/misc/VM lock Ljava/lang/Object; java/lang/Object +ciInstanceKlass java/util/Arrays 1 1 1057 10 100 100 10 8 10 10 8 8 10 10 100 10 10 10 10 10 10 10 10 10 7 10 100 10 10 100 10 10 100 10 10 100 10 10 100 10 10 100 10 10 100 10 10 9 10 100 10 10 10 100 10 10 7 9 10 10 10 10 10 10 7 11 10 10 10 10 10 10 10 10 11 10 100 10 10 100 10 10 100 10 10 100 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 7 10 10 8 7 10 10 10 10 9 100 10 9 100 10 9 100 10 9 100 10 9 100 10 9 100 10 9 100 10 100 10 10 9 100 10 10 10 10 10 10 10 10 10 10 10 8 8 10 10 8 10 10 10 10 100 3 10 100 10 10 11 10 10 10 10 10 10 10 10 10 11 8 10 11 11 11 11 18 11 11 18 11 18 11 18 100 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 100 1 1 1 7 1 100 1 1 1 1 3 1 3 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 100 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 1 1 1 12 12 1 1 12 12 1 12 7 12 12 12 12 12 12 12 12 1 100 12 100 1 1 1 12 12 100 1 1 12 100 1 1 12 100 1 1 12 100 1 1 12 100 1 1 12 100 1 1 12 12 7 12 100 1 1 12 12 7 12 12 12 12 7 12 100 12 12 12 12 1 12 12 7 12 12 12 100 12 12 12 12 7 12 100 1 1 12 1 1 12 1 1 12 1 1 12 12 12 12 12 12 12 100 12 12 100 12 12 12 7 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 1 7 12 12 1 1 12 12 12 12 100 12 12 12 100 12 100 12 100 12 100 12 12 12 12 12 1 12 12 12 12 12 12 12 12 12 12 1 1 12 12 1 12 12 12 100 12 1 1 12 100 12 12 12 12 12 12 12 12 12 12 12 1 12 100 12 100 12 12 1 15 16 15 12 12 100 12 15 12 100 12 15 12 100 12 15 12 1 7 12 12 12 12 12 12 12 12 12 12 7 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 10 10 1 1 1 1 1 1 1 10 1 1 1 1 10 1 1 1 1 10 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 12 12 12 12 12 1 1 100 1 1 100 1 1 +staticfield java/util/Arrays $assertionsDisabled Z 1 +ciInstanceKlass java/lang/invoke/MethodHandleStatics 1 1 228 10 9 9 9 9 9 100 10 10 10 100 10 10 100 10 10 100 100 8 100 10 10 8 10 10 8 100 10 8 10 10 10 9 10 8 10 10 8 8 8 8 9 8 8 10 10 9 8 8 8 8 9 8 9 8 8 9 8 8 9 8 9 8 8 9 8 10 7 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 12 12 12 12 12 12 1 12 12 12 1 12 1 12 1 1 1 1 12 1 12 12 1 1 12 1 12 7 12 12 7 12 1 12 7 12 1 1 1 1 12 1 1 12 7 12 12 1 1 1 1 12 1 12 1 1 12 1 1 12 1 12 1 1 12 1 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/lang/invoke/MethodHandleStatics UNSAFE Ljdk/internal/misc/Unsafe; jdk/internal/misc/Unsafe +staticfield java/lang/invoke/MethodHandleStatics DEBUG_METHOD_HANDLE_NAMES Z 0 +staticfield java/lang/invoke/MethodHandleStatics DUMP_CLASS_FILES Z 0 +staticfield java/lang/invoke/MethodHandleStatics TRACE_INTERPRETER Z 0 +staticfield java/lang/invoke/MethodHandleStatics TRACE_METHOD_LINKAGE Z 0 +staticfield java/lang/invoke/MethodHandleStatics TRACE_RESOLVE Z 0 +staticfield java/lang/invoke/MethodHandleStatics COMPILE_THRESHOLD I 0 +staticfield java/lang/invoke/MethodHandleStatics LOG_LF_COMPILATION_FAILURE Z 0 +staticfield java/lang/invoke/MethodHandleStatics DONT_INLINE_THRESHOLD I 30 +staticfield java/lang/invoke/MethodHandleStatics PROFILE_LEVEL I 0 +staticfield java/lang/invoke/MethodHandleStatics PROFILE_GWT Z 1 +staticfield java/lang/invoke/MethodHandleStatics CUSTOMIZE_THRESHOLD I 127 +staticfield java/lang/invoke/MethodHandleStatics VAR_HANDLE_GUARDS Z 1 +staticfield java/lang/invoke/MethodHandleStatics MAX_ARITY I 255 +ciInstanceKlass java/lang/module/ModuleDescriptor 1 1 482 10 9 100 10 9 9 9 11 9 9 11 9 9 9 11 18 11 11 11 11 9 9 9 9 9 9 9 9 10 10 10 100 10 10 10 8 10 10 10 10 10 10 10 10 7 10 11 10 10 10 11 10 8 8 10 11 8 8 8 8 8 8 7 10 100 8 10 7 10 11 11 10 100 10 10 10 10 8 10 18 11 11 8 10 11 7 100 11 11 10 10 11 11 11 100 10 10 10 9 10 10 7 10 10 7 1 1 100 1 7 1 7 1 7 1 7 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 100 100 100 12 12 1 12 12 12 12 12 12 12 12 12 12 12 1 15 16 15 16 12 100 12 12 12 12 12 12 12 12 12 12 12 12 7 12 12 12 1 12 12 1 12 12 12 12 12 100 12 12 1 12 100 12 12 12 12 1 1 12 12 1 1 1 1 1 1 1 12 1 1 12 1 12 12 12 12 1 100 12 100 12 12 12 1 12 15 16 12 12 1 100 12 12 1 1 12 12 100 12 12 12 12 12 1 12 12 100 12 12 7 12 1 7 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 10 1 10 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 10 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 12 12 1 1 100 1 1 100 1 1 +staticfield java/lang/module/ModuleDescriptor $assertionsDisabled Z 1 +ciInstanceKlass jdk/internal/loader/ClassLoaderValue 1 1 44 10 10 10 10 100 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 100 12 100 12 12 1 1 1 1 1 1 1 1 +ciInstanceKlass java/util/WeakHashMap$Entry 1 1 112 10 9 9 9 10 10 100 10 11 10 10 11 10 100 10 10 8 10 10 7 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 100 12 12 12 12 12 12 100 1 12 12 12 100 12 1 12 12 1 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +ciInstanceKlass java/util/concurrent/ConcurrentHashMap$ForwardingNode 1 1 71 100 10 9 10 9 9 10 7 10 9 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 100 1 1 1 1 1 1 12 12 12 12 12 12 1 12 12 1 1 1 1 1 1 1 1 1 1 +ciInstanceKlass java/lang/invoke/MethodType$ConcurrentWeakInternSet 1 1 96 10 7 10 9 7 10 9 100 10 10 7 10 11 10 10 11 10 11 7 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 100 12 1 12 12 1 12 1 12 1 12 7 12 12 12 12 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +ciInstanceKlass java/lang/invoke/MethodType$ConcurrentWeakInternSet$WeakEntry 1 1 61 10 10 9 10 7 10 10 7 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 100 12 12 12 12 1 12 12 1 1 1 1 1 1 +ciInstanceKlass java/lang/Void 1 1 31 10 8 10 9 7 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 1 7 12 12 1 1 1 1 1 +staticfield java/lang/Void TYPE Ljava/lang/Class; java/lang/Class +ciInstanceKlass java/lang/invoke/MethodTypeForm 1 1 355 9 9 9 100 100 10 8 10 10 8 10 10 10 10 9 10 100 7 10 9 7 10 10 7 10 10 10 9 10 7 10 9 10 10 9 9 9 9 10 10 10 8 10 7 3 10 10 10 10 10 10 10 10 10 10 10 10 7 10 9 9 9 10 8 10 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 3 1 3 1 3 1 3 1 1 1 1 1 1 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 100 7 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 1 1 12 1 12 12 1 12 12 12 12 12 1 1 12 1 12 1 12 12 12 7 12 7 12 12 12 12 12 12 12 12 12 12 12 1 100 12 1 12 12 12 12 12 12 12 12 12 12 12 12 1 12 100 100 100 7 1 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/lang/invoke/MethodTypeForm $assertionsDisabled Z 1 +ciInstanceKlass sun/invoke/util/Wrapper 1 1 559 9 10 7 7 10 10 9 9 9 9 9 9 9 100 10 10 7 10 10 8 10 10 10 10 7 10 10 10 10 10 9 10 10 100 10 10 10 9 9 9 9 9 9 10 9 10 10 10 10 9 9 10 10 10 100 10 8 10 9 9 9 9 9 10 9 10 10 8 9 10 9 10 8 10 10 10 10 8 10 10 10 100 8 10 10 10 10 10 10 10 10 10 7 10 10 10 10 10 10 10 10 10 10 8 10 8 100 7 10 7 10 100 10 10 10 10 10 10 8 8 9 8 10 10 8 7 8 9 8 10 8 7 8 9 8 8 8 9 8 8 7 8 9 8 8 7 8 9 8 8 7 8 9 8 10 8 7 8 9 8 8 8 10 8 8 9 8 10 7 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 3 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 7 12 1 12 12 12 12 12 12 12 12 12 1 12 12 1 12 12 1 12 12 100 12 12 1 12 12 12 12 12 12 12 12 1 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 1 1 12 12 12 12 12 12 12 12 12 12 1 12 12 12 12 1 12 12 12 12 1 12 12 12 1 1 12 12 12 12 12 12 12 12 12 1 12 12 12 12 12 12 12 12 12 12 1 1 1 1 12 1 12 1 100 12 12 12 12 12 1 12 1 12 12 1 1 1 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 1 1 1 1 12 1 1 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield sun/invoke/util/Wrapper BOOLEAN Lsun/invoke/util/Wrapper; sun/invoke/util/Wrapper +staticfield sun/invoke/util/Wrapper BYTE Lsun/invoke/util/Wrapper; sun/invoke/util/Wrapper +staticfield sun/invoke/util/Wrapper SHORT Lsun/invoke/util/Wrapper; sun/invoke/util/Wrapper +staticfield sun/invoke/util/Wrapper CHAR Lsun/invoke/util/Wrapper; sun/invoke/util/Wrapper +staticfield sun/invoke/util/Wrapper INT Lsun/invoke/util/Wrapper; sun/invoke/util/Wrapper +staticfield sun/invoke/util/Wrapper LONG Lsun/invoke/util/Wrapper; sun/invoke/util/Wrapper +staticfield sun/invoke/util/Wrapper FLOAT Lsun/invoke/util/Wrapper; sun/invoke/util/Wrapper +staticfield sun/invoke/util/Wrapper DOUBLE Lsun/invoke/util/Wrapper; sun/invoke/util/Wrapper +staticfield sun/invoke/util/Wrapper OBJECT Lsun/invoke/util/Wrapper; sun/invoke/util/Wrapper +staticfield sun/invoke/util/Wrapper VOID Lsun/invoke/util/Wrapper; sun/invoke/util/Wrapper +staticfield sun/invoke/util/Wrapper DOUBLE_ZERO Ljava/lang/Object; java/lang/Double +staticfield sun/invoke/util/Wrapper FLOAT_ZERO Ljava/lang/Object; java/lang/Float +staticfield sun/invoke/util/Wrapper FROM_PRIM [Lsun/invoke/util/Wrapper; 16 [Lsun/invoke/util/Wrapper; +staticfield sun/invoke/util/Wrapper FROM_WRAP [Lsun/invoke/util/Wrapper; 16 [Lsun/invoke/util/Wrapper; +staticfield sun/invoke/util/Wrapper FROM_CHAR [Lsun/invoke/util/Wrapper; 16 [Lsun/invoke/util/Wrapper; +staticfield sun/invoke/util/Wrapper $VALUES [Lsun/invoke/util/Wrapper; 10 [Lsun/invoke/util/Wrapper; +staticfield sun/invoke/util/Wrapper $assertionsDisabled Z 1 +ciInstanceKlass jdk/internal/ref/CleanerImpl$PhantomCleanableRef 1 1 51 10 9 10 11 100 8 10 8 7 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 12 12 12 7 12 1 12 1 1 1 1 1 1 1 +ciInstanceKlass java/lang/WeakPairMap$Pair$Lookup 1 1 62 10 10 9 9 11 7 11 7 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 12 7 12 12 12 12 1 12 1 1 1 1 1 1 1 1 1 +instanceKlass java/nio/file/ClosedDirectoryStreamException +instanceKlass java/nio/file/ClosedFileSystemException +instanceKlass org/gradle/api/internal/provider/MissingValueException +instanceKlass org/apache/http/ssl/SSLInitializationException +instanceKlass org/gradle/api/internal/AbstractMutationGuard$IllegalMutationException +instanceKlass org/gradle/internal/enterprise/impl/legacy/UnsupportedBuildScanPluginVersionException +instanceKlass java/util/concurrent/CancellationException +instanceKlass java/nio/channels/ClosedSelectorException +instanceKlass java/nio/channels/OverlappingFileLockException +ciInstanceKlass java/lang/IllegalStateException 0 0 35 10 10 10 10 100 100 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 12 1 1 +instanceKlass org/codehaus/groovy/runtime/powerassert/PowerAssertionError +instanceKlass org/codehaus/groovy/GroovyBugError +ciInstanceKlass java/lang/AssertionError 0 0 79 10 10 10 10 100 10 10 10 10 10 10 10 10 100 100 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 100 12 1 12 12 12 12 12 12 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +ciInstanceKlass jdk/internal/loader/AbstractClassLoaderValue$Sub 1 1 75 9 10 9 10 10 10 10 7 10 10 10 10 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 7 12 12 12 12 1 7 12 12 12 1 1 1 1 1 1 1 1 +ciMethod java/lang/Object ()V 4097 1 661369 0 96 +ciMethod java/lang/Object getClass ()Ljava/lang/Class; 2049 1 256 0 -1 +ciMethod java/lang/Object hashCode ()I 2049 1 256 0 -1 +ciMethod java/lang/Object equals (Ljava/lang/Object;)Z 2113 1 28599 0 64 +ciMethod java/lang/Object clone ()Ljava/lang/Object; 2049 1 256 0 -1 +ciMethod java/lang/Class isPrimitive ()Z 2049 1 256 0 -1 +ciMethod java/lang/ref/Reference get ()Ljava/lang/Object; 0 0 1 0 -1 +ciMethod java/lang/ref/Reference (Ljava/lang/Object;)V 2049 1 13711 0 0 +ciMethod java/lang/ref/Reference (Ljava/lang/Object;Ljava/lang/ref/ReferenceQueue;)V 2097 1 23726 0 448 +ciMethod java/lang/ref/WeakReference (Ljava/lang/Object;)V 2097 1 9345 0 448 +ciMethod java/lang/ref/WeakReference (Ljava/lang/Object;Ljava/lang/ref/ReferenceQueue;)V 2049 1 7459 0 448 +ciMethod java/lang/invoke/MethodType (Ljava/lang/Class;[Ljava/lang/Class;)V 2065 1 5820 0 0 +ciMethod java/lang/invoke/MethodType form ()Ljava/lang/invoke/MethodTypeForm; 1025 1 128 0 0 +ciMethod java/lang/invoke/MethodType ptypes ()[Ljava/lang/Class; 1033 1 129 0 0 +ciMethod java/lang/invoke/MethodType checkRtype (Ljava/lang/Class;)V 881 1 1607 0 0 +ciMethod java/lang/invoke/MethodType checkPtype (Ljava/lang/Class;)V 2137 1 7587 0 0 +ciMethod java/lang/invoke/MethodType checkPtypes ([Ljava/lang/Class;)I 1345 2609 3748 0 0 +ciMethod java/lang/invoke/MethodType checkSlotCount (I)V 2121 1 6291 0 0 +ciMethod java/lang/invoke/MethodType makeImpl (Ljava/lang/Class;[Ljava/lang/Class;Z)Ljava/lang/invoke/MethodType; 2065 1 5778 0 0 +ciMethod java/lang/invoke/MethodType genericMethodType (I)Ljava/lang/invoke/MethodType; 1073 1 129 0 -1 +ciMethod java/lang/invoke/MethodType returnType ()Ljava/lang/Class; 1049 1 131 0 0 +ciMethod java/lang/invoke/MethodType equals (Ljava/lang/Object;)Z 2065 1 4912 0 0 +ciMethod java/lang/invoke/MethodType equals (Ljava/lang/invoke/MethodType;)Z 1937 1 4296 0 0 +ciMethod java/lang/invoke/MethodType hashCode ()I 2081 5241 5414 0 320 +ciMethod jdk/internal/misc/Unsafe getObjectAcquire (Ljava/lang/Object;J)Ljava/lang/Object; 2049 1 70820 0 -1 +ciMethod java/util/Objects equals (Ljava/lang/Object;Ljava/lang/Object;)Z 2121 1 33638 0 128 +ciMethod java/util/Objects requireNonNull (Ljava/lang/Object;)Ljava/lang/Object; 2129 1 140967 0 64 +ciMethod java/util/concurrent/ConcurrentMap putIfAbsent (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; 0 0 1 0 -1 +ciMethod java/util/concurrent/ConcurrentMap remove (Ljava/lang/Object;)Ljava/lang/Object; 0 0 1 0 -1 +ciMethod java/util/concurrent/ConcurrentMap get (Ljava/lang/Object;)Ljava/lang/Object; 0 0 1 0 -1 +ciMethod java/util/concurrent/ConcurrentHashMap spread (I)I 2329 1 31244 0 64 +ciMethod java/util/concurrent/ConcurrentHashMap tabAt ([Ljava/util/concurrent/ConcurrentHashMap$Node;I)Ljava/util/concurrent/ConcurrentHashMap$Node; 2049 1 70820 0 64 +ciMethod java/util/concurrent/ConcurrentHashMap casTabAt ([Ljava/util/concurrent/ConcurrentHashMap$Node;ILjava/util/concurrent/ConcurrentHashMap$Node;Ljava/util/concurrent/ConcurrentHashMap$Node;)Z 3473 1 18480 0 -1 +ciMethod java/util/concurrent/ConcurrentHashMap setTabAt ([Ljava/util/concurrent/ConcurrentHashMap$Node;ILjava/util/concurrent/ConcurrentHashMap$Node;)V 2193 1 27823 0 -1 +ciMethod java/util/concurrent/ConcurrentHashMap get (Ljava/lang/Object;)Ljava/lang/Object; 2105 25 10523 0 608 +ciMethod java/util/concurrent/ConcurrentHashMap putVal (Ljava/lang/Object;Ljava/lang/Object;Z)Ljava/lang/Object; 3425 57 13044 0 -1 +ciMethod java/util/concurrent/ConcurrentHashMap remove (Ljava/lang/Object;)Ljava/lang/Object; 185 1 1537 0 0 +ciMethod java/util/concurrent/ConcurrentHashMap replaceNode (Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; 201 33 1766 0 -1 +ciMethod java/util/concurrent/ConcurrentHashMap putIfAbsent (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; 4097 1 27855 0 64 +ciMethod java/util/concurrent/ConcurrentHashMap initTable ()[Ljava/util/concurrent/ConcurrentHashMap$Node; 41 1 536 0 -1 +ciMethod java/util/concurrent/ConcurrentHashMap addCount (JI)V 4097 1 7508 0 -1 +ciMethod java/util/concurrent/ConcurrentHashMap helpTransfer ([Ljava/util/concurrent/ConcurrentHashMap$Node;Ljava/util/concurrent/ConcurrentHashMap$Node;)[Ljava/util/concurrent/ConcurrentHashMap$Node; 0 0 1 0 -1 +ciMethod java/util/concurrent/ConcurrentHashMap treeifyBin ([Ljava/util/concurrent/ConcurrentHashMap$Node;I)V 0 0 1 0 -1 +ciMethod java/util/concurrent/ConcurrentHashMap$Node (ILjava/lang/Object;Ljava/lang/Object;)V 3945 1 15772 0 -1 +ciMethod java/util/concurrent/ConcurrentHashMap$Node find (ILjava/lang/Object;)Ljava/util/concurrent/ConcurrentHashMap$Node; 0 0 1 0 -1 +ciMethod java/lang/ref/ReferenceQueue reallyPoll ()Ljava/lang/ref/Reference; 17 1 1099 0 0 +ciMethod java/lang/ref/ReferenceQueue poll ()Ljava/lang/ref/Reference; 4097 1 17774 0 1504 +ciMethod jdk/internal/misc/VM addFinalRefCount (I)V 81 1 40 0 0 +ciMethod java/util/Arrays equals ([Ljava/lang/Object;[Ljava/lang/Object;)Z 2025 4281 5380 0 352 +ciMethod java/util/Arrays copyOf ([Ljava/lang/Object;I)[Ljava/lang/Object; 705 1 10245 0 0 +ciMethod java/util/Arrays copyOf ([Ljava/lang/Object;ILjava/lang/Class;)[Ljava/lang/Object; 1177 1 6939 0 -1 +ciMethodData java/lang/Object ()V 2 661411 orig 80 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 4 0x0 0x9 0x1 0x0 oops 0 methods 0 +ciMethod java/lang/invoke/MethodHandleStatics newIllegalArgumentException (Ljava/lang/String;)Ljava/lang/RuntimeException; 0 0 1 0 -1 +ciMethodData java/util/Objects equals (Ljava/lang/Object;Ljava/lang/Object;)Z 2 33638 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 32 0x20007 0x6075 0x98 0x21e9 0x60007 0x0 0x90 0x21ea 0xb0005 0x1f33 0x0 0x19292aa50b0 0x24e 0x192940289f0 0x69 0xe0007 0xb1e 0x38 0x16cd 0x120003 0x7740 0x18 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x2 0x0 0x0 oops 2 11 java/lang/String 13 java/lang/module/ModuleDescriptor methods 0 +ciMethodData java/util/Objects requireNonNull (Ljava/lang/Object;)Ljava/lang/Object; 2 140967 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 15 0x10007 0x225a1 0x30 0x0 0x80002 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x1 0x0 oops 0 methods 0 +ciMethodData java/util/concurrent/ConcurrentHashMap tabAt ([Ljava/util/concurrent/ConcurrentHashMap$Node;I)Ljava/util/concurrent/ConcurrentHashMap$Node; 2 70820 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 146 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 27 0xf000b 0x113a4 0x0 0x0 0x0 0x0 0x0 0x2 0x1 0x192951fb9e0 0x120104 0x0 0x0 0x192951fb930 0xaa0c 0x192943ddf60 0x1808 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x2 0x0 0x0 oops 3 9 [Ljava/util/concurrent/ConcurrentHashMap$Node; 13 java/util/concurrent/ConcurrentHashMap$Node 15 java/util/concurrent/ConcurrentHashMap$ForwardingNode methods 0 +ciMethodData java/util/concurrent/ConcurrentHashMap spread (I)I 2 31244 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 5 0x0 0x0 0x9 0x1 0x0 oops 0 methods 0 +ciMethodData java/util/concurrent/ConcurrentHashMap putVal (Ljava/lang/Object;Ljava/lang/Object;Z)Ljava/lang/Object; 2 13067 orig 80 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 250 0x10007 0x0 0x40 0x315f 0x50007 0x315e 0x30 0x0 0xc0002 0x0 0x110005 0xae6 0x0 0x19292aa50b0 0x2676 0x192981f10f0 0x2 0x140002 0x315e 0x240007 0x114 0x40 0x3161 0x2d0007 0x3160 0x70 0x0 0x310005 0x114 0x0 0x0 0x0 0x0 0x0 0x360003 0x114 0x5f8 0x450002 0x315f 0x4b0007 0x1699 0x78 0x1ac6 0x5b0002 0x1ac6 0x5e0002 0x1ac7 0x610007 0x1 0x590 0x1ac6 0x640003 0x1ac6 0x588 0x700007 0x1699 0x70 0x1 0x780005 0x1 0x0 0x0 0x0 0x0 0x0 0x7d0003 0x1 0x500 0x810007 0x3b 0xf8 0x165e 0x880007 0x11d0 0xd8 0x48e 0x940007 0x2 0x98 0x48b 0x990007 0x0 0x98 0x48b 0x9f0005 0x0 0x0 0x19292aa50b0 0x487 0x192993e6900 0x4 0xa20007 0x0 0x40 0x48b 0xad0007 0x0 0x20 0x48d 0xc00002 0x120b 0xc50007 0x0 0x330 0x120b 0xca0007 0x0 0x188 0x120b 0xdb0007 0x16df 0xf0 0x231 0x8000000600e70007 0xc 0x98 0x226 0xec0007 0x0 0xb0 0x226 0xf20005 0x0 0x0 0x19292aa50b0 0x225 0x192993e6900 0x1 0xf50007 0x0 0x58 0x226 0x1000007 0x225 0x98 0xd 0x1090003 0xd 0x78 0x1180007 0x705 0x48 0xfda 0x1250002 0xfda 0x12b0003 0xfda 0x30 0x1310003 0x705 0xfffffffffffffec8 0x1340003 0x120c 0x1a0 0x1390004 0x0 0x0 0x0 0x0 0x0 0x0 0x13c0007 0x0 0xe8 0x0 0x1440004 0x0 0x0 0x0 0x0 0x0 0x0 0x14b0005 0x0 0x0 0x0 0x0 0x0 0x0 0x1510007 0x0 0x40 0x0 0x15c0007 0x0 0x20 0x0 0x1650003 0x0 0x80 0x16a0004 0x0 0x0 0x0 0x0 0x0 0x0 0x16d0007 0x0 0x30 0x0 0x1760002 0x0 0x17d0003 0x120c 0x18 0x18a0007 0x0 0x98 0x120c 0x1910007 0x120c 0x58 0x0 0x1990005 0x0 0x0 0x0 0x0 0x0 0x0 0x19e0007 0xfda 0x38 0x232 0x1a40003 0x116 0xfffffffffffff990 0x1ab0005 0x2aa0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x4 0x0 0x0 0x0 0x0 oops 6 13 java/lang/String 15 jdk/internal/loader/ClassLoaderValue 87 java/lang/String 89 java/lang/invoke/MethodType$ConcurrentWeakInternSet$WeakEntry 124 java/lang/String 126 java/lang/invoke/MethodType$ConcurrentWeakInternSet$WeakEntry methods 0 +ciMethodData java/util/concurrent/ConcurrentHashMap putIfAbsent (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; 2 27855 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 146 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 18 0x40005 0x6acf 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x3 0xffffffffffffffff 0xffffffffffffffff 0xffffffffffffffff oops 0 methods 0 +ciMethod java/lang/invoke/MethodType$ConcurrentWeakInternSet get (Ljava/lang/Object;)Ljava/lang/Object; 2065 1 5779 0 0 +ciMethod java/lang/invoke/MethodType$ConcurrentWeakInternSet add (Ljava/lang/Object;)Ljava/lang/Object; 881 1 1607 0 0 +ciMethod java/lang/invoke/MethodType$ConcurrentWeakInternSet expungeStaleElements ()V 2065 1 7445 0 0 +ciMethod java/lang/invoke/MethodType$ConcurrentWeakInternSet$WeakEntry (Ljava/lang/Object;Ljava/lang/ref/ReferenceQueue;)V 2129 1 1615 0 0 +ciMethod java/lang/invoke/MethodType$ConcurrentWeakInternSet$WeakEntry (Ljava/lang/Object;)V 2081 1 5835 0 0 +ciMethod java/lang/invoke/MethodType$ConcurrentWeakInternSet$WeakEntry equals (Ljava/lang/Object;)Z 2081 1 4296 0 0 +ciMethod java/lang/invoke/MethodType$ConcurrentWeakInternSet$WeakEntry hashCode ()I 1073 1 134 0 0 +ciMethod java/lang/invoke/MethodTypeForm (Ljava/lang/invoke/MethodType;)V 289 1249 264 0 -1 +ciMethod java/lang/invoke/MethodTypeForm pack (IIII)J 2049 1 390 0 -1 +ciMethod java/lang/invoke/MethodTypeForm findForm (Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodTypeForm; 881 1 1607 0 0 +ciMethod java/lang/invoke/MethodTypeForm canonicalize (Ljava/lang/invoke/MethodType;II)Ljava/lang/invoke/MethodType; 881 1 1615 0 0 +ciMethod java/lang/invoke/MethodTypeForm canonicalize (Ljava/lang/Class;I)Ljava/lang/Class; 2089 1 5433 0 192 +ciMethod java/lang/invoke/MethodTypeForm canonicalizeAll ([Ljava/lang/Class;I)[Ljava/lang/Class; 2065 5969 1615 0 0 +ciMethod sun/invoke/util/Wrapper isDoubleWord ()Z 2049 1 654 0 -1 +ciMethod sun/invoke/util/Wrapper isSubwordOrInt ()Z 1945 1 507 0 -1 +ciMethod sun/invoke/util/Wrapper forPrimitiveType (Ljava/lang/Class;)Lsun/invoke/util/Wrapper; 257 1 2562 0 -1 +ciMethod sun/invoke/util/Wrapper forBasicType (Ljava/lang/Class;)Lsun/invoke/util/Wrapper; 2081 1 5908 0 -1 +ciMethod sun/invoke/util/Wrapper asWrapperType (Ljava/lang/Class;)Ljava/lang/Class; 0 0 1 0 -1 +ciMethod sun/invoke/util/Wrapper asPrimitiveType (Ljava/lang/Class;)Ljava/lang/Class; 0 0 3 0 -1 +ciMethodData java/util/concurrent/ConcurrentHashMap get (Ljava/lang/Object;)Ljava/lang/Object; 2 10523 orig 80 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 101 0x10005 0xe88 0x0 0x19295be0be0 0x6e9 0x19292aa50b0 0x12a3 0x40002 0x2814 0xf0007 0xbf 0x290 0x2755 0x170007 0x0 0x270 0x2755 0x220002 0x2755 0x270007 0xab3 0x240 0x1ca2 0x330007 0x8c5 0xb8 0x13dd 0x3e0007 0x769 0x98 0xc74 0x430007 0x0 0x108 0xc74 0x490005 0x557 0x0 0x19295be0be0 0x90 0x19292aa50b0 0x68d 0x80000006004c0007 0x2 0xb0 0xc73 0x560007 0x8c5 0x90 0x0 0x5d0005 0x0 0x0 0x0 0x0 0x0 0x0 0x630007 0x0 0x38 0x0 0x6b0003 0x0 0x18 0x760007 0x3d8 0xd8 0x633 0x7f0007 0x144 0xffffffffffffffe0 0x4ef 0x8a0007 0x285 0x98 0x26a 0x8f0007 0x0 0xffffffffffffffa0 0x26a 0x950005 0xe 0x0 0x19292aa50b0 0x1a8 0x192993e6900 0xb4 0x980007 0x0 0xffffffffffffff48 0x26a 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x2 0x0 0x0 oops 6 3 java/lang/WeakPairMap$Pair$Lookup 5 java/lang/String 38 java/lang/WeakPairMap$Pair$Lookup 40 java/lang/String 83 java/lang/String 85 java/lang/invoke/MethodType$ConcurrentWeakInternSet$WeakEntry methods 0 +ciMethodData java/lang/ref/ReferenceQueue poll ()Ljava/lang/ref/Reference; 2 17774 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 254 127 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 20 0x40007 0x16e 0x20 0x4200 0x110005 0x16e 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x1 0x0 oops 0 methods 0 +ciMethodData java/lang/ref/ReferenceQueue reallyPoll ()Ljava/lang/ref/Reference; 2 1099 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 33 0x60007 0x9 0xc0 0x440 0x180007 0x3e5 0x38 0x5b 0x1c0003 0x5b 0x18 0x330004 0xfffffffffffffbd4 0x0 0x19295ba8020 0xcd 0x19295ba80d0 0xe 0x360007 0x42c 0x30 0x14 0x3a0002 0x14 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x1 0xc oops 2 14 jdk/internal/ref/CleanerImpl$PhantomCleanableRef 16 java/util/WeakHashMap$Entry methods 0 +ciMethodData java/util/concurrent/ConcurrentHashMap remove (Ljava/lang/Object;)Ljava/lang/Object; 2 1537 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 254 127 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 17 0x40005 0x5ea 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x2 0x0 0x0 oops 0 methods 0 +ciMethodData java/util/concurrent/ConcurrentHashMap replaceNode (Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; 2 1878 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 254 127 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 258 0x10005 0x6f0 0x0 0x192981f1d30 0x32 0x19292aa50b0 0x1b 0x40002 0x73d 0x110007 0x43 0x758 0x6fa 0x1a0007 0x0 0x738 0x6fa 0x290002 0x6fa 0x2f0007 0x691 0x38 0x69 0x320003 0x69 0x6e8 0x3e0007 0x691 0x70 0x0 0x460005 0x0 0x0 0x0 0x0 0x0 0x0 0x4b0003 0x0 0x660 0x5e0002 0x691 0x630007 0x0 0x588 0x691 0x680007 0x0 0x278 0x691 0x7c0007 0x135 0x208 0x68a 0x880007 0x68a 0x98 0x0 0x8d0007 0x0 0x1c8 0x0 0x930005 0x0 0x0 0x0 0x0 0x0 0x0 0x960007 0x0 0x170 0x0 0xa10007 0x63d 0xb8 0x4d 0xa70007 0x4d 0x98 0x0 0xac0007 0x0 0x148 0x0 0xb20005 0x0 0x0 0x0 0x0 0x0 0x0 0xb50007 0x0 0xf0 0x0 0xbd0007 0x63d 0x38 0x4d 0xc60003 0x4d 0xb0 0xcb0007 0x571 0x38 0xcc 0xd80003 0xcc 0x78 0xe40002 0x571 0xe70003 0x571 0x50 0xf60007 0x12e 0xfffffffffffffdf8 0x7 0xf90003 0x7 0x18 0xfc0003 0x691 0x308 0x1010004 0x0 0x0 0x0 0x0 0x0 0x0 0x1040007 0x0 0x250 0x0 0x10c0004 0x0 0x0 0x0 0x0 0x0 0x0 0x1190007 0x0 0x1e0 0x0 0x1220005 0x0 0x0 0x0 0x0 0x0 0x0 0x1280007 0x0 0x188 0x0 0x1330007 0x0 0xb8 0x0 0x1390007 0x0 0x98 0x0 0x13e0007 0x0 0x128 0x0 0x1440005 0x0 0x0 0x0 0x0 0x0 0x0 0x1470007 0x0 0xd0 0x0 0x14f0007 0x0 0x38 0x0 0x1580003 0x0 0x90 0x15f0005 0x0 0x0 0x0 0x0 0x0 0x0 0x1620007 0x0 0x40 0x0 0x16e0002 0x0 0x1710002 0x0 0x1740003 0x0 0x80 0x1790004 0x0 0x0 0x0 0x0 0x0 0x0 0x17c0007 0x0 0x30 0x0 0x1850002 0x0 0x18c0003 0x691 0x18 0x1990007 0x0 0x98 0x691 0x19e0007 0x7 0x90 0x68a 0x1a20007 0x4d 0x58 0x63d 0x1aa0005 0x63d 0x0 0x0 0x0 0x0 0x0 0x1b00003 0x0 0xfffffffffffff8c0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x4 0x0 0x0 0x0 0x0 oops 2 3 jdk/internal/loader/AbstractClassLoaderValue$Sub 5 java/lang/String methods 0 +ciMethodData java/lang/ref/Reference (Ljava/lang/Object;Ljava/lang/ref/ReferenceQueue;)V 2 23726 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 20 0x10002 0x5ba8 0xb0007 0x3c0f 0x38 0x1f99 0x110003 0x1f99 0x18 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x3 0x6 0x0 0x0 oops 0 methods 0 +ciMethodData java/lang/invoke/MethodTypeForm canonicalize (Ljava/lang/Class;I)Ljava/lang/Class; 2 5433 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 117 0x30007 0xd6f 0x38 0x6c5 0x60003 0x6c5 0x300 0xa0005 0xd6f 0x0 0x0 0x0 0x0 0x0 0xd0007 0x3c1 0xb8 0x9ae 0x110008 0x8 0x0 0x80 0x9ae 0x80 0x0 0x50 0x0 0x80 0x350002 0x0 0x3b0007 0x0 0x20 0x0 0x430003 0x0 0x210 0x4a0007 0x2ae 0x78 0x113 0x4e0008 0x6 0x113 0x40 0x0 0x40 0x0 0x40 0x6f0003 0x113 0x198 0x730008 0xc 0x2ae 0x180 0x0 0x70 0x0 0x180 0x0 0x80 0x0 0xe0 0x0 0x100 0x950002 0x0 0x9d0007 0x0 0x40 0x0 0xa40007 0x0 0x20 0x0 0xad0007 0x0 0x20 0x0 0xbc0007 0x0 0x20 0x0 0xc90007 0x0 0x80 0x0 0xd00007 0x0 0x60 0x0 0xd70007 0x0 0x40 0x0 0xde0007 0x0 0x20 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x2 0x0 0x0 oops 0 methods 0 +ciMethodData java/lang/invoke/MethodType hashCode ()I 2 13972 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 30 0x60005 0x0 0x0 0x19292aa5140 0x1422 0x0 0x0 0x190007 0x1422 0x70 0x3405 0x280005 0x0 0x0 0x19292aa5140 0x3405 0x0 0x0 0x300003 0x3405 0xffffffffffffffa8 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x1 0x0 oops 2 3 java/lang/Class 14 java/lang/Class methods 0 +ciMethodData java/lang/invoke/MethodType$ConcurrentWeakInternSet expungeStaleElements ()V 2 7445 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 30 0x40005 0x0 0x0 0x192993e9390 0x1d77 0x0 0x0 0x90007 0x1c13 0x70 0x164 0x110005 0x0 0x0 0x192993e7ee0 0x164 0x0 0x0 0x170003 0x164 0xffffffffffffff70 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x1 0x0 oops 2 3 java/lang/ref/ReferenceQueue 14 java/util/concurrent/ConcurrentHashMap methods 0 +ciMethodData java/lang/ref/Reference (Ljava/lang/Object;)V 2 13711 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 8 0x30002 0x348f 0x0 0x0 0x9 0x2 0x6 0x0 oops 0 methods 0 +ciMethodData java/lang/invoke/MethodType checkPtype (Ljava/lang/Class;)V 2 7587 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 17 0x10002 0x1c98 0x90007 0x1c98 0x30 0x0 0xe0002 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x1 0x0 oops 0 methods 0 +ciMethodData java/lang/ref/WeakReference (Ljava/lang/Object;)V 2 9345 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 8 0x20002 0x237b 0x0 0x0 0x9 0x2 0x6 0x0 oops 0 methods 0 +ciMethodData java/lang/invoke/MethodType (Ljava/lang/Class;[Ljava/lang/Class;)V 2 5844 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 11 0x10002 0x15d1 0x0 0x0 0x0 0x0 0x9 0x3 0x6 0x0 0x0 oops 0 methods 0 +ciMethodData java/lang/invoke/MethodType makeImpl (Ljava/lang/Class;[Ljava/lang/Class;Z)Ljava/lang/invoke/MethodType; 2 5780 orig 80 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 75 0x20007 0x1107 0x20 0x48b 0x110002 0x1592 0x190005 0x0 0x0 0x192952fcef0 0x1591 0x0 0x0 0x1c0104 0x0 0x0 0x19292aa7280 0xfb9 0x0 0x0 0x230007 0x5d9 0x20 0xfb8 0x2a0002 0x5d9 0x2e0007 0x23 0x48 0x5b6 0x320002 0x5b6 0x390003 0x5b6 0x80 0x3f0002 0x23 0x420004 0x0 0x0 0x192952fcb80 0x23 0x0 0x0 0x470002 0x23 0x510002 0x23 0x5a0002 0x5d9 0x650005 0x0 0x0 0x192952fcef0 0x5d9 0x0 0x0 0x680004 0x0 0x0 0x19292aa7280 0x5d9 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x3 0x0 0x0 0x0 oops 5 9 java/lang/invoke/MethodType$ConcurrentWeakInternSet 16 java/lang/invoke/MethodType 40 [Ljava/lang/Class; 53 java/lang/invoke/MethodType$ConcurrentWeakInternSet 60 java/lang/invoke/MethodType methods 0 +ciMethodData java/lang/invoke/MethodType$ConcurrentWeakInternSet get (Ljava/lang/Object;)Ljava/lang/Object; 2 5835 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 54 0x10007 0x15c9 0x30 0x0 0x80002 0x0 0xd0005 0x15c9 0x0 0x0 0x0 0x0 0x0 0x190002 0x15ca 0x1c0005 0x0 0x0 0x192993e7ee0 0x15cc 0x0 0x0 0x210104 0x0 0x0 0x192993e6900 0xfef 0x0 0x0 0x260007 0x5dc 0x78 0xfef 0x2a0005 0x0 0x0 0x192993e6900 0xfef 0x0 0x0 0x2f0007 0x0 0x20 0xfef 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x2 0x0 0x0 oops 3 18 java/util/concurrent/ConcurrentHashMap 25 java/lang/invoke/MethodType$ConcurrentWeakInternSet$WeakEntry 36 java/lang/invoke/MethodType$ConcurrentWeakInternSet$WeakEntry methods 0 +ciMethodData java/lang/invoke/MethodType checkRtype (Ljava/lang/Class;)V 2 1615 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 11 0x10002 0x5e1 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x1 0x0 oops 0 methods 0 +ciMethodData java/lang/invoke/MethodType checkPtypes ([Ljava/lang/Class;)I 2 7574 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 28 0xd0007 0xe19 0x88 0x1c50 0x180002 0x1c50 0x200007 0x4 0x40 0x1c4c 0x280007 0x1c2a 0x20 0x22 0x310003 0x1c50 0xffffffffffffff90 0x380002 0xe1a 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x1 0x0 oops 0 methods 0 +ciMethodData java/lang/invoke/MethodType$ConcurrentWeakInternSet$WeakEntry (Ljava/lang/Object;)V 2 5905 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 19 0x20002 0x160e 0x70005 0x0 0x0 0x19292aa7280 0x1610 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x2 0x1e 0x0 oops 1 5 java/lang/invoke/MethodType methods 0 +ciMethodData java/util/Arrays copyOf ([Ljava/lang/Object;I)[Ljava/lang/Object; 2 10255 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 19 0x30005 0x27b7 0x0 0x0 0x0 0x0 0x0 0x60002 0x27b7 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x2 0x0 0x0 oops 0 methods 0 +ciMethodData java/lang/invoke/MethodTypeForm findForm (Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodTypeForm; 2 1615 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 24 0x30002 0x5e1 0x80007 0x50a 0x30 0xd7 0x100002 0xd7 0x150005 0x50a 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x1 0x0 oops 0 methods 0 +ciMethodData java/lang/invoke/MethodTypeForm canonicalize (Ljava/lang/invoke/MethodType;II)Ljava/lang/invoke/MethodType; 2 1615 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 47 0x10005 0x5e1 0x0 0x0 0x0 0x0 0x0 0x70002 0x5e1 0xd0005 0x5e1 0x0 0x0 0x0 0x0 0x0 0x150002 0x5e1 0x1c0007 0x492 0x40 0x14f 0x210007 0x78 0x20 0xd7 0x280007 0x2b6 0x20 0x254 0x310007 0x492 0x20 0x78 0x3c0002 0x50a 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x3 0x0 0x0 0x0 oops 0 methods 0 +ciMethodData java/lang/invoke/MethodTypeForm (Ljava/lang/invoke/MethodType;)V 1 2160 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 278 0x10002 0xe4 0xa0005 0xe4 0x0 0x0 0x0 0x0 0x0 0x3b0007 0xe4 0x200 0x5e5 0x490007 0x468 0x1c8 0x17d 0x510002 0x17d 0x580005 0x17d 0x0 0x0 0x0 0x0 0x0 0x5b0007 0x161 0x20 0x1c 0x630005 0x17d 0x0 0x0 0x0 0x0 0x0 0x660007 0x20 0x108 0x15d 0x6e0007 0x126 0xe8 0x37 0x750007 0xa 0x90 0x2d 0x7a0005 0x0 0x0 0x192952fcb80 0x2d 0x0 0x0 0x7d0004 0x0 0x0 0x192952fcb80 0x2d 0x0 0x0 0x890004 0x0 0x0 0x19292aa5140 0x37 0x0 0x0 0x8d0003 0x5e5 0xfffffffffffffe18 0x980005 0xe4 0x0 0x0 0x0 0x0 0x0 0xa50007 0x8d 0x138 0x57 0xad0002 0x57 0xb40005 0x57 0x0 0x0 0x0 0x0 0x0 0xb70007 0x52 0x20 0x5 0xbf0005 0x57 0x0 0x0 0x0 0x0 0x0 0xc20007 0x23 0x40 0x34 0xca0007 0x20 0x20 0x14 0xd70007 0x3a 0x38 0x1d 0xe00003 0x1d 0x18 0xee0007 0x2d 0x58 0xb7 0xf50007 0x12 0x38 0xa5 0xfd0003 0xa5 0xb0 0x1060002 0x3f 0x1100005 0x3f 0x0 0x0 0x0 0x0 0x0 0x1180007 0x3f 0x50 0x0 0x11e0007 0x0 0x30 0x0 0x1250002 0x0 0x15a0007 0x93 0x128 0x12 0x1800007 0x12 0xa0 0x8b 0x18c0002 0x8b 0x1930005 0x8b 0x0 0x0 0x0 0x0 0x0 0x1960007 0x75 0x20 0x16 0x1b40003 0x8b 0xffffffffffffff78 0x1ba0007 0x12 0x50 0x0 0x1bf0007 0x0 0x30 0x0 0x1c60002 0x0 0x1ca0003 0x12 0x170 0x1cf0007 0x23 0x120 0x70 0x1d50007 0x70 0x50 0x0 0x1db0007 0x0 0x30 0x0 0x1e20002 0x0 0x1e70002 0x70 0x1ea0005 0x70 0x0 0x0 0x0 0x0 0x0 0x1f20007 0x70 0x50 0x0 0x1f80007 0x0 0x30 0x0 0x1ff0002 0x0 0x2110003 0x70 0x50 0x2320007 0x23 0x38 0x164 0x24d0003 0x164 0xffffffffffffffe0 0x2590002 0xa5 0x2670002 0xa5 0x27e0007 0xa5 0x30 0x0 0x2830002 0x0 0x28a0007 0xa5 0x50 0x0 0x2920007 0x0 0x30 0x0 0x2990002 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x2 0x0 0x0 oops 3 52 [Ljava/lang/Class; 59 [Ljava/lang/Class; 66 java/lang/Class methods 0 +ciMethodData java/lang/invoke/MethodType$ConcurrentWeakInternSet add (Ljava/lang/Object;)Ljava/lang/Object; 2 1615 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 254 127 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 57 0x10007 0x5e1 0x30 0x0 0x80002 0x0 0x150002 0x5e1 0x1a0005 0x5e1 0x0 0x0 0x0 0x0 0x0 0x230005 0x0 0x0 0x192993e7ee0 0x5e1 0x0 0x0 0x280104 0x0 0x0 0x192993e6900 0x4 0x0 0x0 0x2f0007 0x5 0x38 0x5dd 0x330003 0x5dd 0x50 0x380005 0x0 0x0 0x192993e6900 0x5 0x0 0x0 0x3d0007 0x0 0xfffffffffffffee8 0x5e2 0x80000002002f000d 0x192952fca20 0x0 0x0 0x0 0x0 0x9 0x2 0x0 0x0 oops 3 18 java/util/concurrent/ConcurrentHashMap 25 java/lang/invoke/MethodType$ConcurrentWeakInternSet$WeakEntry 39 java/lang/invoke/MethodType$ConcurrentWeakInternSet$WeakEntry methods 1 48 java/lang/invoke/MethodType makeImpl (Ljava/lang/Class;[Ljava/lang/Class;Z)Ljava/lang/invoke/MethodType; +ciMethodData java/lang/invoke/MethodType checkSlotCount (I)V 2 6291 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 38 0x60007 0x178a 0xe8 0x0 0xd0002 0x0 0x120005 0x0 0x0 0x0 0x0 0x0 0x0 0x160005 0x0 0x0 0x0 0x0 0x0 0x0 0x190005 0x0 0x0 0x0 0x0 0x0 0x0 0x1c0002 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x1 0x0 oops 0 methods 0 +ciMethodData java/lang/ref/WeakReference (Ljava/lang/Object;Ljava/lang/ref/ReferenceQueue;)V 2 7459 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 9 0x30002 0x1c23 0x0 0x0 0x9 0x3 0x6 0x0 0x0 oops 0 methods 0 +ciMethodData java/lang/Object equals (Ljava/lang/Object;)Z 2 28618 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 17 0x20007 0x5793 0x38 0x1735 0x60003 0x1735 0x18 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x2 0x0 0x0 oops 0 methods 0 +ciMethodData java/lang/invoke/MethodType equals (Ljava/lang/Object;)Z 2 4912 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 46 0x20007 0x259 0x108 0xfd6 0x60004 0x0 0x0 0x19292aa7280 0xfd5 0x0 0x0 0x90007 0x0 0xc8 0xfd6 0xe0004 0x0 0x0 0x19292aa7280 0xfd6 0x0 0x0 0x110005 0xfd6 0x0 0x0 0x0 0x0 0x0 0x140007 0x0 0x38 0xfd6 0x180003 0x122f 0x18 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x2 0x0 0x0 oops 2 7 java/lang/invoke/MethodType 18 java/lang/invoke/MethodType methods 0 +ciMethodData java/lang/invoke/MethodType equals (Ljava/lang/invoke/MethodType;)Z 2 4296 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 23 0x80007 0x0 0x68 0xfd6 0x130002 0xfd6 0x160007 0x0 0x38 0xfd6 0x1a0003 0xfd6 0x18 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x2 0x0 0x0 oops 0 methods 0 +ciMethodData java/util/Arrays equals ([Ljava/lang/Object;[Ljava/lang/Object;)Z 2 7872 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 39 0x20007 0x10ab 0x20 0x35c 0x80007 0x2 0x40 0x10a9 0xc0007 0x10a9 0x20 0x0 0x170007 0x1059 0x20 0x50 0x200007 0xf03 0x68 0x1dff 0x290002 0x1dff 0x2c0007 0x1ca9 0x20 0x156 0x340003 0x1ca9 0xffffffffffffffb0 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x2 0x0 0x0 oops 0 methods 0 +ciMethodData java/lang/invoke/MethodType$ConcurrentWeakInternSet$WeakEntry equals (Ljava/lang/Object;)Z 2 4296 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 67 0x10004 0x0 0x0 0x192993e6900 0xfc4 0x0 0x0 0x40007 0x0 0x190 0xfc4 0x80004 0x0 0x0 0x192993e6900 0xfc4 0x0 0x0 0xb0005 0x0 0x0 0x192993e6900 0xfc4 0x0 0x0 0x100005 0x0 0x0 0x192993e6900 0xfc4 0x0 0x0 0x150007 0x0 0x40 0xfc4 0x190007 0xfc4 0x70 0x0 0x1e0007 0x0 0x38 0x0 0x220003 0x0 0x68 0x260003 0x0 0x50 0x2b0005 0x0 0x0 0x19292aa7280 0xfc4 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x2 0x0 0x0 oops 5 3 java/lang/invoke/MethodType$ConcurrentWeakInternSet$WeakEntry 14 java/lang/invoke/MethodType$ConcurrentWeakInternSet$WeakEntry 21 java/lang/invoke/MethodType$ConcurrentWeakInternSet$WeakEntry 28 java/lang/invoke/MethodType$ConcurrentWeakInternSet$WeakEntry 53 java/lang/invoke/MethodType methods 0 +ciMethodData java/lang/invoke/MethodTypeForm canonicalizeAll ([Ljava/lang/Class;I)[Ljava/lang/Class; 2 5161 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 52 0xb0007 0x54d 0x150 0x113f 0x130002 0x113f 0x1d0007 0x113f 0x20 0x0 0x250007 0x91b 0xe8 0x824 0x290007 0x3e9 0x90 0x43b 0x2d0005 0x0 0x0 0x192952fcb80 0x43b 0x0 0x0 0x300004 0x0 0x0 0x192952fcb80 0x43b 0x0 0x0 0x390004 0x0 0x0 0x19292aa5140 0x824 0x0 0x0 0x3d0003 0x113f 0xfffffffffffffec8 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x2 0x0 0x0 oops 3 21 [Ljava/lang/Class; 28 [Ljava/lang/Class; 35 java/lang/Class methods 0 +ciMethodData java/lang/invoke/MethodType$ConcurrentWeakInternSet$WeakEntry (Ljava/lang/Object;Ljava/lang/ref/ReferenceQueue;)V 2 1615 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 20 0x30002 0x545 0x80005 0x0 0x0 0x19292aa7280 0x545 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x3 0x1e 0x0 0x0 oops 1 5 java/lang/invoke/MethodType methods 0 +ciMethodData jdk/internal/misc/VM addFinalRefCount (I)V 1 40 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 11 0xe0007 0x18 0x20 0x6 0x0 0x0 0x0 0x0 0x9 0x1 0x0 oops 0 methods 0 +compile java/lang/invoke/MethodType makeImpl (Ljava/lang/Class;[Ljava/lang/Class;Z)Ljava/lang/invoke/MethodType; -1 4 inline 111 0 -1 java/lang/invoke/MethodType makeImpl (Ljava/lang/Class;[Ljava/lang/Class;Z)Ljava/lang/invoke/MethodType; 1 17 java/lang/invoke/MethodType (Ljava/lang/Class;[Ljava/lang/Class;)V 2 1 java/lang/Object ()V 1 25 java/lang/invoke/MethodType$ConcurrentWeakInternSet get (Ljava/lang/Object;)Ljava/lang/Object; 2 13 java/lang/invoke/MethodType$ConcurrentWeakInternSet expungeStaleElements ()V 3 4 java/lang/ref/ReferenceQueue poll ()Ljava/lang/ref/Reference; 4 17 java/lang/ref/ReferenceQueue reallyPoll ()Ljava/lang/ref/Reference; 3 17 java/util/concurrent/ConcurrentHashMap remove (Ljava/lang/Object;)Ljava/lang/Object; 2 25 java/lang/invoke/MethodType$ConcurrentWeakInternSet$WeakEntry (Ljava/lang/Object;)V 3 2 java/lang/ref/WeakReference (Ljava/lang/Object;)V 4 2 java/lang/ref/Reference (Ljava/lang/Object;)V 5 3 java/lang/ref/Reference (Ljava/lang/Object;Ljava/lang/ref/ReferenceQueue;)V 6 1 java/lang/Object ()V 3 7 java/lang/invoke/MethodType hashCode ()I 2 28 java/util/concurrent/ConcurrentHashMap get (Ljava/lang/Object;)Ljava/lang/Object; 3 1 java/lang/invoke/MethodType$ConcurrentWeakInternSet$WeakEntry hashCode ()I 3 4 java/util/concurrent/ConcurrentHashMap spread (I)I 3 34 java/util/concurrent/ConcurrentHashMap tabAt ([Ljava/util/concurrent/ConcurrentHashMap$Node;I)Ljava/util/concurrent/ConcurrentHashMap$Node; 3 73 java/lang/invoke/MethodType$ConcurrentWeakInternSet$WeakEntry equals (Ljava/lang/Object;)Z 4 43 java/lang/invoke/MethodType equals (Ljava/lang/Object;)Z 5 17 java/lang/invoke/MethodType equals (Ljava/lang/invoke/MethodType;)Z 6 19 java/util/Arrays equals ([Ljava/lang/Object;[Ljava/lang/Object;)Z 7 41 java/util/Objects equals (Ljava/lang/Object;Ljava/lang/Object;)Z 8 11 java/lang/Object equals (Ljava/lang/Object;)Z 3 149 java/lang/invoke/MethodType$ConcurrentWeakInternSet$WeakEntry equals (Ljava/lang/Object;)Z 4 43 java/lang/invoke/MethodType equals (Ljava/lang/Object;)Z 5 17 java/lang/invoke/MethodType equals (Ljava/lang/invoke/MethodType;)Z 6 19 java/util/Arrays equals ([Ljava/lang/Object;[Ljava/lang/Object;)Z 7 41 java/util/Objects equals (Ljava/lang/Object;Ljava/lang/Object;)Z 8 11 java/lang/Object equals (Ljava/lang/Object;)Z 1 42 java/lang/invoke/MethodType checkRtype (Ljava/lang/Class;)V 2 1 java/util/Objects requireNonNull (Ljava/lang/Object;)Ljava/lang/Object; 1 50 java/lang/invoke/MethodType checkPtypes ([Ljava/lang/Class;)I 2 24 java/lang/invoke/MethodType checkPtype (Ljava/lang/Class;)V 3 1 java/util/Objects requireNonNull (Ljava/lang/Object;)Ljava/lang/Object; 2 56 java/lang/invoke/MethodType checkSlotCount (I)V 1 63 java/util/Arrays copyOf ([Ljava/lang/Object;I)[Ljava/lang/Object; 1 81 java/lang/invoke/MethodType (Ljava/lang/Class;[Ljava/lang/Class;)V 2 1 java/lang/Object ()V 1 90 java/lang/invoke/MethodTypeForm findForm (Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodTypeForm; 2 3 java/lang/invoke/MethodTypeForm canonicalize (Ljava/lang/invoke/MethodType;II)Ljava/lang/invoke/MethodType; 3 1 java/lang/invoke/MethodType ptypes ()[Ljava/lang/Class; 3 7 java/lang/invoke/MethodTypeForm canonicalizeAll ([Ljava/lang/Class;I)[Ljava/lang/Class; 4 19 java/lang/invoke/MethodTypeForm canonicalize (Ljava/lang/Class;I)Ljava/lang/Class; 3 13 java/lang/invoke/MethodType returnType ()Ljava/lang/Class; 3 21 java/lang/invoke/MethodTypeForm canonicalize (Ljava/lang/Class;I)Ljava/lang/Class; 3 60 java/lang/invoke/MethodType makeImpl (Ljava/lang/Class;[Ljava/lang/Class;Z)Ljava/lang/invoke/MethodType; 4 17 java/lang/invoke/MethodType (Ljava/lang/Class;[Ljava/lang/Class;)V 5 1 java/lang/Object ()V 4 25 java/lang/invoke/MethodType$ConcurrentWeakInternSet get (Ljava/lang/Object;)Ljava/lang/Object; 5 13 java/lang/invoke/MethodType$ConcurrentWeakInternSet expungeStaleElements ()V 6 4 java/lang/ref/ReferenceQueue poll ()Ljava/lang/ref/Reference; 7 17 java/lang/ref/ReferenceQueue reallyPoll ()Ljava/lang/ref/Reference; 6 17 java/util/concurrent/ConcurrentHashMap remove (Ljava/lang/Object;)Ljava/lang/Object; 5 25 java/lang/invoke/MethodType$ConcurrentWeakInternSet$WeakEntry (Ljava/lang/Object;)V 6 2 java/lang/ref/WeakReference (Ljava/lang/Object;)V 7 2 java/lang/ref/Reference (Ljava/lang/Object;)V 8 3 java/lang/ref/Reference (Ljava/lang/Object;Ljava/lang/ref/ReferenceQueue;)V 9 1 java/lang/Object ()V 6 7 java/lang/invoke/MethodType hashCode ()I 5 28 java/util/concurrent/ConcurrentHashMap get (Ljava/lang/Object;)Ljava/lang/Object; 6 1 java/lang/invoke/MethodType$ConcurrentWeakInternSet$WeakEntry hashCode ()I 6 4 java/util/concurrent/ConcurrentHashMap spread (I)I 6 34 java/util/concurrent/ConcurrentHashMap tabAt ([Ljava/util/concurrent/ConcurrentHashMap$Node;I)Ljava/util/concurrent/ConcurrentHashMap$Node; 6 73 java/lang/invoke/MethodType$ConcurrentWeakInternSet$WeakEntry equals (Ljava/lang/Object;)Z 7 43 java/lang/invoke/MethodType equals (Ljava/lang/Object;)Z 8 17 java/lang/invoke/MethodType equals (Ljava/lang/invoke/MethodType;)Z 9 19 java/util/Arrays equals ([Ljava/lang/Object;[Ljava/lang/Object;)Z 10 41 java/util/Objects equals (Ljava/lang/Object;Ljava/lang/Object;)Z 6 149 java/lang/invoke/MethodType$ConcurrentWeakInternSet$WeakEntry equals (Ljava/lang/Object;)Z 7 43 java/lang/invoke/MethodType equals (Ljava/lang/Object;)Z 8 17 java/lang/invoke/MethodType equals (Ljava/lang/invoke/MethodType;)Z 9 19 java/util/Arrays equals ([Ljava/lang/Object;[Ljava/lang/Object;)Z 10 41 java/util/Objects equals (Ljava/lang/Object;Ljava/lang/Object;)Z 4 42 java/lang/invoke/MethodType checkRtype (Ljava/lang/Class;)V 5 1 java/util/Objects requireNonNull (Ljava/lang/Object;)Ljava/lang/Object; 4 50 java/lang/invoke/MethodType checkPtypes ([Ljava/lang/Class;)I 5 24 java/lang/invoke/MethodType checkPtype (Ljava/lang/Class;)V 6 1 java/util/Objects requireNonNull (Ljava/lang/Object;)Ljava/lang/Object; 5 56 java/lang/invoke/MethodType checkSlotCount (I)V 4 90 java/lang/invoke/MethodTypeForm findForm (Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodTypeForm; 5 3 java/lang/invoke/MethodTypeForm canonicalize (Ljava/lang/invoke/MethodType;II)Ljava/lang/invoke/MethodType; 6 1 java/lang/invoke/MethodType ptypes ()[Ljava/lang/Class; 6 7 java/lang/invoke/MethodTypeForm canonicalizeAll ([Ljava/lang/Class;I)[Ljava/lang/Class; 7 19 java/lang/invoke/MethodTypeForm canonicalize (Ljava/lang/Class;I)Ljava/lang/Class; 6 13 java/lang/invoke/MethodType returnType ()Ljava/lang/Class; 6 21 java/lang/invoke/MethodTypeForm canonicalize (Ljava/lang/Class;I)Ljava/lang/Class; 5 21 java/lang/invoke/MethodType form ()Ljava/lang/invoke/MethodTypeForm; 4 101 java/lang/invoke/MethodType$ConcurrentWeakInternSet add (Ljava/lang/Object;)Ljava/lang/Object; 5 21 java/lang/invoke/MethodType$ConcurrentWeakInternSet$WeakEntry (Ljava/lang/Object;Ljava/lang/ref/ReferenceQueue;)V 6 3 java/lang/ref/WeakReference (Ljava/lang/Object;Ljava/lang/ref/ReferenceQueue;)V 7 3 java/lang/ref/Reference (Ljava/lang/Object;Ljava/lang/ref/ReferenceQueue;)V 8 1 java/lang/Object ()V 6 8 java/lang/invoke/MethodType hashCode ()I 5 26 java/lang/invoke/MethodType$ConcurrentWeakInternSet expungeStaleElements ()V 6 4 java/lang/ref/ReferenceQueue poll ()Ljava/lang/ref/Reference; 7 17 java/lang/ref/ReferenceQueue reallyPoll ()Ljava/lang/ref/Reference; 6 17 java/util/concurrent/ConcurrentHashMap remove (Ljava/lang/Object;)Ljava/lang/Object; 5 35 java/util/concurrent/ConcurrentHashMap putIfAbsent (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; 2 21 java/lang/invoke/MethodType form ()Ljava/lang/invoke/MethodTypeForm; 1 101 java/lang/invoke/MethodType$ConcurrentWeakInternSet add (Ljava/lang/Object;)Ljava/lang/Object; 2 21 java/lang/invoke/MethodType$ConcurrentWeakInternSet$WeakEntry (Ljava/lang/Object;Ljava/lang/ref/ReferenceQueue;)V 3 3 java/lang/ref/WeakReference (Ljava/lang/Object;Ljava/lang/ref/ReferenceQueue;)V 4 3 java/lang/ref/Reference (Ljava/lang/Object;Ljava/lang/ref/ReferenceQueue;)V 5 1 java/lang/Object ()V 3 8 java/lang/invoke/MethodType hashCode ()I 2 26 java/lang/invoke/MethodType$ConcurrentWeakInternSet expungeStaleElements ()V 3 4 java/lang/ref/ReferenceQueue poll ()Ljava/lang/ref/Reference; 4 17 java/lang/ref/ReferenceQueue reallyPoll ()Ljava/lang/ref/Reference; 3 17 java/util/concurrent/ConcurrentHashMap remove (Ljava/lang/Object;)Ljava/lang/Object; 2 35 java/util/concurrent/ConcurrentHashMap putIfAbsent (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; diff --git a/replay_pid3436.log b/replay_pid3436.log new file mode 100644 index 0000000000..4f3477c6b7 --- /dev/null +++ b/replay_pid3436.log @@ -0,0 +1,8117 @@ +JvmtiExport can_access_local_variables 0 +JvmtiExport can_hotswap_or_post_breakpoint 0 +JvmtiExport can_post_on_exceptions 0 +# 313 ciObject found +instanceKlass org/gradle/api/plugins/ApplicationPlugin$$Lambda$754 +instanceKlass org/gradle/api/plugins/ApplicationPlugin$$Lambda$753 +instanceKlass org/gradle/api/plugins/ApplicationPlugin$$Lambda$752 +instanceKlass org/gradle/api/tasks/JavaExec$$Lambda$751 +instanceKlass org/gradle/api/internal/provider/Providers$SerializableCallable +instanceKlass org/gradle/process/internal/ProcessArgumentsSpec +instanceKlass org/gradle/process/internal/ProcessStreamsSpec +instanceKlass org/gradle/process/internal/ProcessArgumentsSpec$HasExecutable +instanceKlass org/gradle/api/specs/internal/ClosureSpec +instanceKlass org/codehaus/groovy/runtime/metaclass/ClosureMetaClass$$Lambda$750 +instanceKlass org/gradle/api/artifacts/FileCollectionDependency +instanceKlass org/gradle/api/internal/artifacts/dependencies/SelfResolvingDependencyInternal +instanceKlass org/gradle/api/internal/notations/DependencyClassPathNotationConverter$GeneratedFileCollection +instanceKlass org/gradle/api/internal/AbstractTask$ClosureTaskAction +instanceKlass org/gradle/api/internal/AbstractTask$13 +instanceKlass org/codehaus/groovy/runtime/metaclass/ClosureMetaClass$$Lambda$749 +instanceKlass org/gradle/util/ConfigureUtil +instanceKlass org/gradle/api/java/archives/internal/DefaultManifestMergeDetails +instanceKlass org/gradle/api/java/archives/ManifestMergeDetails +instanceKlass org/gradle/api/java/archives/internal/DefaultManifestMergeSpec +instanceKlass com/github/jengelman/gradle/plugins/shadow/relocation/SimpleRelocator +instanceKlass com/github/jengelman/gradle/plugins/shadow/transformers/ServiceFileTransformer +instanceKlass com/github/jengelman/gradle/plugins/shadow/relocation/RelocateClassContext +instanceKlass com/github/jengelman/gradle/plugins/shadow/relocation/RelocatePathContext +instanceKlass com/github/jengelman/gradle/plugins/shadow/transformers/TransformerContext +instanceKlass org/gradle/api/plugins/BasePlugin$$Lambda$748 +instanceKlass com/github/jengelman/gradle/plugins/shadow/tasks/ShadowJar$3 +instanceKlass com/github/jengelman/gradle/plugins/shadow/tasks/ShadowJar$2 +instanceKlass org/gradle/api/java/archives/ManifestMergeSpec +instanceKlass com/github/jengelman/gradle/plugins/shadow/tasks/DefaultInheritManifest +instanceKlass org/codehaus/groovy/runtime/powerassert/Value +instanceKlass org/codehaus/groovy/runtime/powerassert/ValueRecorder +instanceKlass com/github/jengelman/gradle/plugins/shadow/internal/AbstractDependencyFilter +instanceKlass com/github/jengelman/gradle/plugins/shadow/tasks/ShadowJar$1 +instanceKlass org/slf4j/event/SubstituteLoggingEvent +instanceKlass org/gradle/jvm/tasks/Jar$ExcludeManifestAction +instanceKlass org/gradle/api/file/FileVisitDetails +instanceKlass org/gradle/api/internal/file/collections/GeneratedSingletonFileTree +instanceKlass org/gradle/api/internal/file/collections/GeneratedFiles +instanceKlass org/gradle/api/internal/file/collections/MinimalFileTree$MinimalFileTreeStructureVisitor +instanceKlass org/gradle/jvm/tasks/Jar$$Lambda$747 +instanceKlass org/gradle/jvm/tasks/Jar$$Lambda$746 +instanceKlass org/gradle/api/internal/lambdas/SerializableLambdas$SerializableAction +instanceKlass org/gradle/jvm/tasks/Jar$$Lambda$745 +instanceKlass org/gradle/api/java/archives/internal/DefaultAttributes +instanceKlass org/gradle/api/java/archives/Attributes +instanceKlass org/gradle/api/java/archives/internal/DefaultManifest +instanceKlass org/gradle/api/tasks/bundling/AbstractArchiveTask$$Lambda$744 +instanceKlass org/gradle/api/tasks/AbstractCopyTask$$Lambda$743 +instanceKlass org/gradle/api/tasks/AbstractCopyTask$$Lambda$742 +instanceKlass org/gradle/api/tasks/AbstractCopyTask$$Lambda$741 +instanceKlass org/gradle/api/tasks/AbstractCopyTask$$Lambda$740 +instanceKlass org/gradle/api/tasks/AbstractCopyTask$$Lambda$739 +instanceKlass org/gradle/api/tasks/AbstractCopyTask$$Lambda$738 +instanceKlass org/gradle/api/internal/tasks/DefaultTaskInputPropertyRegistration +instanceKlass org/gradle/api/internal/tasks/TaskInputPropertyRegistration +instanceKlass org/gradle/api/internal/tasks/DefaultTaskInputs$$Lambda$737 +instanceKlass org/gradle/api/tasks/AbstractCopyTask$$Lambda$736 +instanceKlass org/gradle/api/internal/tasks/properties/FileParameterUtils$2 +instanceKlass org/gradle/api/internal/tasks/properties/FileParameterUtils +instanceKlass org/gradle/api/internal/tasks/TaskPropertyUtils +instanceKlass org/gradle/api/internal/tasks/properties/ValidationAction +instanceKlass org/gradle/api/internal/tasks/AbstractTaskFilePropertyRegistration +instanceKlass org/gradle/api/internal/tasks/StaticValue +instanceKlass org/gradle/api/internal/tasks/DefaultTaskInputs$$Lambda$735 +instanceKlass org/gradle/api/tasks/AbstractCopyTask$$Lambda$734 +instanceKlass org/gradle/api/internal/tasks/DefaultTaskOutputs$$Lambda$733 +instanceKlass org/gradle/api/tasks/AbstractCopyTask$$Lambda$732 +instanceKlass org/gradle/api/tasks/AbstractCopyTask$$Lambda$731 +instanceKlass org/gradle/api/internal/file/copy/CopyActionExecuter +instanceKlass com/github/jengelman/gradle/plugins/shadow/internal/GradleVersionUtil +instanceKlass com/github/jengelman/gradle/plugins/shadow/ShadowStats +instanceKlass com/github/jengelman/gradle/plugins/shadow/internal/ZipCompressor +instanceKlass com/github/jengelman/gradle/plugins/shadow/transformers/Transformer +instanceKlass com/github/jengelman/gradle/plugins/shadow/tasks/InheritManifest +instanceKlass com/github/jengelman/gradle/plugins/shadow/relocation/Relocator +instanceKlass com/github/jengelman/gradle/plugins/shadow/internal/DependencyFilter +instanceKlass org/gradle/api/java/archives/internal/ManifestInternal +instanceKlass org/gradle/api/internal/file/copy/ZipCompressor +instanceKlass org/gradle/api/internal/file/archive/compression/ArchiveOutputStreamFactory +instanceKlass org/gradle/util/internal/GUtil$4 +instanceKlass org/gradle/api/internal/tasks/testing/junitplatform/JUnitPlatformTestFramework +instanceKlass org/gradle/api/plugins/JvmTestSuitePlugin$$Lambda$730 +instanceKlass org/gradle/api/plugins/JvmTestSuitePlugin$$Lambda$729 +instanceKlass org/gradle/api/plugins/jvm/internal/DefaultJvmTestSuite$$Lambda$728 +instanceKlass org/gradle/api/plugins/JvmTestSuitePlugin$$Lambda$727 +instanceKlass org/gradle/api/plugins/JvmTestSuitePlugin$$Lambda$726 +instanceKlass org/gradle/jvm/toolchain/internal/JavaToolchainQueryService$$Lambda$725 +instanceKlass org/gradle/jvm/toolchain/internal/DefaultJavaToolchainService$$Lambda$724 +instanceKlass org/gradle/jvm/toolchain/JavaCompiler +instanceKlass org/gradle/jvm/toolchain/internal/JavaToolchain +instanceKlass org/gradle/jvm/toolchain/JavaInstallationMetadata +instanceKlass org/gradle/api/plugins/JavaBasePlugin$$Lambda$723 +instanceKlass org/gradle/api/internal/project/taskfactory/AnnotationProcessingTaskFactory$$Lambda$722 +instanceKlass org/gradle/api/internal/tasks/execution/SelfDescribingSpec +instanceKlass org/gradle/api/internal/tasks/DefaultTaskOutputs$$Lambda$721 +instanceKlass org/gradle/api/internal/project/taskfactory/StandardTaskAction +instanceKlass org/gradle/api/internal/project/taskfactory/DefaultTaskClassInfoStore$StandardTaskActionFactory +instanceKlass org/gradle/api/internal/project/taskfactory/DefaultTaskClassInfoStore$$Lambda$720 +instanceKlass org/gradle/api/internal/AbstractTask$$Lambda$719 +instanceKlass org/gradle/api/internal/lambdas/SerializableLambdas$SerializableFactory +instanceKlass org/gradle/api/internal/AbstractTask$$Lambda$718 +instanceKlass org/gradle/api/internal/tasks/testing/detection/JarFilePackageListener +instanceKlass org/gradle/api/internal/tasks/testing/detection/ClassFileExtractionManager +instanceKlass org/gradle/api/internal/tasks/testing/TestClassRunInfo +instanceKlass org/gradle/api/internal/tasks/testing/detection/AbstractTestFrameworkDetector +instanceKlass org/gradle/api/internal/tasks/testing/detection/TestFrameworkDetector +instanceKlass org/gradle/api/internal/tasks/testing/WorkerTestClassProcessorFactory +instanceKlass org/gradle/api/internal/tasks/testing/junit/JUnitTestFramework +instanceKlass org/gradle/process/internal/JvmOptions +instanceKlass org/gradle/process/internal/DefaultProcessForkOptions +instanceKlass org/gradle/process/internal/DefaultJavaDebugOptions +instanceKlass org/gradle/api/tasks/testing/Test$1 +instanceKlass org/gradle/api/internal/file/DefaultProjectLayout$2 +instanceKlass org/gradle/api/reporting/internal/TaskGeneratedSingleDirectoryReport$$Lambda$717 +instanceKlass org/gradle/api/reporting/internal/TaskGeneratedReport$1 +instanceKlass org/gradle/api/reporting/internal/SimpleReport +instanceKlass org/gradle/api/internal/DefaultCollectionCallbackActionDecorator$1 +instanceKlass org/gradle/api/reporting/internal/DefaultReportContainer$1 +instanceKlass org/gradle/api/reporting/Report$1 +instanceKlass org/gradle/api/tasks/testing/JUnitXmlReport +instanceKlass org/gradle/api/internal/tasks/testing/logging/DefaultTestLogging +instanceKlass org/gradle/api/internal/tasks/testing/logging/DefaultTestLoggingContainer +instanceKlass org/gradle/api/internal/tasks/DefaultTaskLocalState +instanceKlass org/gradle/api/internal/tasks/DefaultTaskDestroyables +instanceKlass org/gradle/api/internal/tasks/TaskDestroyablesInternal +instanceKlass org/gradle/api/internal/tasks/properties/OutputUnpacker$UnpackedOutputConsumer +instanceKlass org/gradle/api/tasks/TaskOutputFilePropertyBuilder +instanceKlass org/gradle/api/internal/tasks/DefaultTaskOutputs +instanceKlass org/gradle/api/internal/tasks/TaskInputsDeprecationSupport +instanceKlass org/gradle/api/internal/FilePropertyContainer +instanceKlass org/gradle/api/internal/tasks/TaskInputFilePropertyRegistration +instanceKlass org/gradle/api/internal/tasks/TaskPropertyRegistration +instanceKlass org/gradle/api/internal/tasks/TaskInputFilePropertyBuilderInternal +instanceKlass org/gradle/api/internal/tasks/TaskFilePropertyBuilderInternal +instanceKlass org/gradle/api/tasks/TaskInputPropertyBuilder +instanceKlass org/gradle/api/tasks/TaskInputFilePropertyBuilder +instanceKlass org/gradle/api/tasks/TaskFilePropertyBuilder +instanceKlass org/gradle/api/tasks/TaskPropertyBuilder +instanceKlass org/gradle/api/internal/tasks/DefaultTaskInputs +instanceKlass org/gradle/internal/logging/slf4j/DefaultContextAwareTaskLogger +instanceKlass org/gradle/api/internal/AbstractTask$8 +instanceKlass org/gradle/api/tasks/TaskAction +instanceKlass org/gradle/api/tasks/options/Option +instanceKlass org/gradle/process/CommandLineArgumentProvider +instanceKlass org/gradle/jvm/toolchain/JavaLauncher +instanceKlass org/gradle/api/internal/tasks/testing/filter/DefaultTestFilter +instanceKlass org/gradle/api/internal/tasks/testing/logging/TestCountLogger +instanceKlass org/gradle/api/internal/tasks/testing/junit/result/TestOutputStore +instanceKlass org/gradle/api/tasks/testing/logging/TestLoggingContainer +instanceKlass org/gradle/api/tasks/testing/logging/TestLogging +instanceKlass org/gradle/api/tasks/testing/TestTaskReports +instanceKlass org/gradle/api/internal/tasks/testing/JvmTestExecutionSpec +instanceKlass org/gradle/api/tasks/testing/TestFrameworkOptions +instanceKlass org/gradle/api/internal/tasks/testing/TestExecutionSpec +instanceKlass org/gradle/api/internal/tasks/testing/TestExecuter +instanceKlass org/gradle/api/internal/project/taskfactory/TaskFactory$1 +instanceKlass org/gradle/api/internal/tasks/DefaultTaskContainer$TaskCreatingProvider$1 +instanceKlass org/gradle/internal/typeconversion/MapKey +instanceKlass org/gradle/api/internal/artifacts/dsl/dependencies/ModuleFactoryHelper +instanceKlass org/gradle/api/internal/artifacts/DependencyResolveContext +instanceKlass org/gradle/api/internal/artifacts/dependencies/DefaultDependencyArtifact +instanceKlass org/gradle/api/artifacts/repositories/ExclusiveContentRepository +instanceKlass org/gradle/api/internal/plugins/DefaultPluginContainer$2 +instanceKlass org/codehaus/groovy/runtime/ConversionHandler +instanceKlass groovy/transform/SelfType +instanceKlass groovy/lang/GeneratedGroovyProxy +instanceKlass groovy/transform/Trait +instanceKlass org/codehaus/groovy/transform/trait/Traits$TraitBridge +instanceKlass org/codehaus/groovy/transform/trait/Traits +instanceKlass org/gradle/api/internal/file/collections/DefaultConfigurableFileCollection$UnresolvedItemsCollector$$Lambda$716 +instanceKlass org/gradle/api/internal/file/copy/CopySpecWrapper +instanceKlass org/gradle/api/internal/file/copy/DefaultCopySpec$DefaultCopySpecResolver +instanceKlass org/gradle/api/file/ExpandDetails +instanceKlass org/gradle/api/file/RelativePath +instanceKlass com/github/jengelman/gradle/plugins/shadow/ShadowApplicationPlugin +instanceKlass org/gradle/api/internal/component/UsageContext +instanceKlass org/gradle/api/component/SoftwareComponentVariant +instanceKlass org/gradle/api/internal/artifacts/dsl/DefaultArtifactHandler$DynamicMethods +instanceKlass org/gradle/api/internal/artifacts/dsl/DefaultArtifactHandler +instanceKlass com/github/jengelman/gradle/plugins/shadow/tasks/ShadowSpec +instanceKlass org/gradle/configuration/project/DefaultProjectConfigurationActionContainer +instanceKlass com/github/jengelman/gradle/plugins/shadow/ShadowJavaPlugin +instanceKlass org/gradle/model/internal/inspect/ExtractedRuleSource +instanceKlass org/gradle/model/internal/core/ModelView +instanceKlass org/gradle/model/internal/core/NodePredicate +instanceKlass org/gradle/api/services/BuildService +instanceKlass org/gradle/api/internal/AbstractTask$TaskInfo +instanceKlass org/gradle/api/specs/CompositeSpec +instanceKlass org/gradle/api/internal/tasks/TaskMutator +instanceKlass org/gradle/api/internal/tasks/TaskStateInternal +instanceKlass org/gradle/api/publish/maven/MavenPublication +instanceKlass org/gradle/api/publish/Publication +instanceKlass org/gradle/api/plugins/ExtensionsSchema +instanceKlass com/github/jengelman/gradle/plugins/shadow/ShadowExtension +instanceKlass org/codehaus/groovy/runtime/callsite/CallSiteArray$$Lambda$715 +instanceKlass sun/reflect/generics/reflectiveObjects/GenericArrayTypeImpl +instanceKlass com/github/jengelman/gradle/plugins/shadow/ShadowBasePlugin +instanceKlass org/xml/sax/Attributes +instanceKlass org/apache/tools/ant/BuildLogger +instanceKlass org/apache/tools/ant/BuildListener +instanceKlass org/xml/sax/Locator +instanceKlass sun/reflect/generics/tree/BooleanSignature +instanceKlass com/github/jengelman/gradle/plugins/shadow/ShadowPlugin +instanceKlass sun/security/util/SignatureFileVerifier +instanceKlass org/gradle/internal/fingerprint/impl/IgnoredPathFileSystemLocationFingerprint$1 +instanceKlass org/gradle/internal/fingerprint/impl/IgnoredPathFileSystemLocationFingerprint +instanceKlass org/gradle/api/internal/changedetection/state/DefaultResourceSnapshotterCacheService$$Lambda$714 +instanceKlass org/gradle/internal/io/IoSupplier +instanceKlass org/gradle/internal/fingerprint/classpath/impl/ClasspathFingerprintingStrategy$ClasspathFingerprintingVisitor$$Lambda$713 +instanceKlass org/gradle/api/internal/changedetection/state/DefaultRegularFileSnapshotContext +instanceKlass org/gradle/internal/fingerprint/classpath/impl/ClasspathFingerprintingStrategy$ClasspathFingerprintingVisitor$1 +instanceKlass org/gradle/internal/fingerprint/hashing/RegularFileSnapshotContext +instanceKlass org/gradle/internal/fingerprint/classpath/impl/ClasspathFingerprintingStrategy$ClasspathFingerprintingVisitor +instanceKlass org/gradle/internal/snapshot/SnapshotUtil$$Lambda$712 +instanceKlass org/gradle/internal/snapshot/FileSystemSnapshot$1 +instanceKlass org/gradle/internal/fingerprint/impl/DefaultCurrentFileCollectionFingerprint +instanceKlass org/gradle/internal/fingerprint/impl/DefaultFileCollectionSnapshotter$1 +instanceKlass org/gradle/internal/snapshot/CompositeFileSystemSnapshot +instanceKlass org/gradle/internal/fingerprint/impl/DefaultFileCollectionSnapshotter$SnapshottingVisitor$$Lambda$711 +instanceKlass org/gradle/internal/fingerprint/impl/DefaultFileCollectionSnapshotter$SnapshottingVisitor +instanceKlass org/gradle/api/internal/initialization/loadercache/DefaultClassLoaderCache$$Lambda$710 +instanceKlass org/gradle/plugin/use/internal/DefaultPluginRequestApplicator$$Lambda$709 +instanceKlass org/gradle/api/plugins/quality/internal/AbstractCodeQualityPlugin$7 +instanceKlass org/gradle/api/plugins/quality/internal/AbstractCodeQualityPlugin$6 +instanceKlass org/gradle/api/plugins/quality/internal/AbstractCodeQualityPlugin$5$1 +instanceKlass org/gradle/api/plugins/quality/internal/AbstractCodeQualityPlugin$5 +instanceKlass org/gradle/api/plugins/quality/internal/AbstractCodeQualityPlugin$4 +instanceKlass org/gradle/api/plugins/quality/internal/AbstractCodeQualityPlugin$3 +instanceKlass org/gradle/api/plugins/quality/internal/AbstractCodeQualityPlugin$2$1 +instanceKlass org/gradle/api/plugins/quality/internal/AbstractCodeQualityPlugin$2 +instanceKlass org/gradle/api/plugins/quality/internal/AbstractCodeQualityPlugin$1 +instanceKlass com/google/common/util/concurrent/Callables$1 +instanceKlass com/google/common/util/concurrent/AsyncCallable +instanceKlass com/google/common/util/concurrent/Callables +instanceKlass org/gradle/api/internal/resources/FileCollectionBackedTextResource +instanceKlass org/gradle/api/resources/internal/TextResourceInternal +instanceKlass org/gradle/api/internal/file/DefaultFilePropertyFactory$PathToFileTransformer +instanceKlass org/gradle/api/internal/project/DefaultCrossProjectModelAccess +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfiguration$$Lambda$708 +instanceKlass org/gradle/api/plugins/quality/CheckstylePlugin$$Lambda$707 +instanceKlass org/gradle/internal/deprecation/DeprecationMessageBuilder$WithDeprecationTimeline +instanceKlass org/gradle/internal/deprecation/DeprecationTimeline +instanceKlass org/gradle/internal/deprecation/Documentation +instanceKlass org/gradle/internal/deprecation/DeprecationMessageBuilder$ConfigurationDeprecationTypeSelector +instanceKlass org/gradle/api/plugins/quality/internal/AbstractCodeQualityPlugin$$Lambda$706 +instanceKlass org/gradle/api/reporting/SingleFileReport +instanceKlass org/gradle/api/plugins/quality/CodeQualityExtension +instanceKlass org/gradle/api/internal/file/copy/DefaultCopySpec$$Lambda$705 +instanceKlass org/gradle/api/internal/file/copy/DefaultCopySpec$DefaultCopySpecAddress +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass org/gradle/api/internal/file/copy/DefaultCopySpec$$Lambda$704 +instanceKlass org/gradle/api/plugins/ApplicationPlugin$$Lambda$703 +instanceKlass org/gradle/api/plugins/ApplicationPlugin$$Lambda$702 +instanceKlass org/gradle/api/plugins/ApplicationPlugin$$Lambda$701 +instanceKlass org/gradle/api/plugins/ApplicationPlugin$$Lambda$700 +instanceKlass org/gradle/api/plugins/ApplicationPlugin$$Lambda$699 +instanceKlass org/gradle/api/plugins/ApplicationPlugin$$Lambda$698 +instanceKlass org/gradle/api/plugins/internal/DefaultJavaApplication$$Lambda$697 +instanceKlass org/gradle/api/plugins/internal/DefaultJavaApplication +instanceKlass org/gradle/configuration/internal/DefaultListenerBuildOperationDecorator$BuildOperationEmittingAction +instanceKlass org/gradle/api/distribution/plugins/DistributionPlugin$$Lambda$696 +instanceKlass org/gradle/api/distribution/plugins/DistributionPlugin$$Lambda$695 +instanceKlass org/gradle/api/distribution/plugins/DistributionPlugin$$Lambda$694 +instanceKlass org/gradle/api/distribution/plugins/DistributionPlugin$$Lambda$693 +instanceKlass org/gradle/api/internal/file/copy/PathNotationConverter +instanceKlass org/gradle/api/file/FileCopyDetails +instanceKlass org/gradle/api/internal/file/copy/CopySpecInternal$CopySpecListener +instanceKlass org/gradle/api/internal/file/copy/CopySpecInternal$CopySpecVisitor +instanceKlass org/gradle/api/internal/file/copy/CopySpecInternal$CopySpecAddress +instanceKlass org/gradle/api/internal/file/copy/CopySpecResolver +instanceKlass org/gradle/api/internal/file/copy/DefaultCopySpec +instanceKlass org/gradle/api/distribution/internal/DefaultDistribution +instanceKlass org/gradle/api/distribution/plugins/DistributionPlugin$$Lambda$692 +instanceKlass org/gradle/api/distribution/DistributionContainer +instanceKlass org/gradle/api/distribution/plugins/DistributionPlugin +instanceKlass org/gradle/api/distribution/Distribution +instanceKlass org/gradle/api/plugins/JavaApplication +instanceKlass org/gradle/api/plugins/ApplicationPluginConvention +instanceKlass org/gradle/api/plugins/JavaPlugin$$Lambda$691 +instanceKlass org/gradle/api/plugins/JavaPlugin$$Lambda$690 +instanceKlass org/gradle/api/internal/java/usagecontext/ConfigurationVariantDetailsInternal +instanceKlass org/gradle/api/component/ConfigurationVariantDetails +instanceKlass org/gradle/api/internal/java/usagecontext/ConfigurationVariantMapping +instanceKlass org/gradle/api/plugins/internal/JavaConfigurationVariantMapping +instanceKlass org/gradle/api/plugins/internal/DefaultAdhocSoftwareComponent +instanceKlass org/gradle/api/plugins/jvm/internal/DefaultJvmPluginServices$1 +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultVariant +instanceKlass org/gradle/api/internal/artifacts/ConfigurationVariantInternal +instanceKlass org/gradle/api/internal/DynamicPropertyNamer +instanceKlass org/gradle/api/plugins/jvm/internal/DefaultJvmPluginServices$$Lambda$689 +instanceKlass org/gradle/api/internal/collections/AbstractIterationOrderRetainingElementSource$$Lambda$688 +instanceKlass org/gradle/api/internal/provider/ChangingValueHandler +instanceKlass org/gradle/api/plugins/JavaPlugin$$Lambda$687 +instanceKlass org/gradle/api/plugins/internal/JvmPluginsHelper$$Lambda$686 +instanceKlass org/gradle/api/internal/provider/Collectors$ElementsFromCollectionProvider +instanceKlass org/gradle/api/internal/provider/AbstractCollectionProperty$CollectingSupplier +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfigurationPublications$$Lambda$685 +instanceKlass org/gradle/api/plugins/JavaPlugin$$Lambda$684 +instanceKlass org/gradle/api/plugins/JavaPlugin$$Lambda$683 +instanceKlass org/gradle/api/internal/file/AbstractFileCollection$FileCollectionElementsFactory +instanceKlass org/gradle/api/plugins/JavaPlugin$$Lambda$682 +instanceKlass org/gradle/api/plugins/JavaPlugin$$Lambda$681 +instanceKlass org/gradle/api/plugins/jvm/internal/DefaultJvmPluginServices$DefaultElementsConfigurationBuilder$$Lambda$680 +instanceKlass org/gradle/api/component/AdhocComponentWithVariants +instanceKlass org/gradle/api/plugins/jvm/internal/ResolvableConfigurationBuilder +instanceKlass org/gradle/api/plugins/jvm/internal/AbstractConfigurationBuilder +instanceKlass org/gradle/api/plugins/JavaPlugin$$Lambda$679 +instanceKlass org/gradle/api/plugins/JavaPlugin$$Lambda$678 +instanceKlass org/gradle/api/plugins/JavaPlugin$$Lambda$677 +instanceKlass org/gradle/api/internal/artifacts/dsl/LazyPublishArtifact +instanceKlass org/gradle/api/internal/artifacts/publish/AbstractPublishArtifact +instanceKlass org/gradle/api/internal/artifacts/PublishArtifactInternal +instanceKlass org/gradle/api/plugins/JvmTestSuitePlugin$$Lambda$676 +instanceKlass org/gradle/api/plugins/JvmTestSuitePlugin$$Lambda$675 +instanceKlass org/gradle/api/attributes/VerificationType$Impl +instanceKlass org/gradle/api/attributes/VerificationType +instanceKlass org/gradle/api/plugins/JvmTestSuitePlugin$$Lambda$674 +instanceKlass org/gradle/api/attributes/TestSuiteTargetName$Impl +instanceKlass org/gradle/api/attributes/TestSuiteTargetName +instanceKlass org/gradle/api/attributes/TestSuiteName$Impl +instanceKlass org/gradle/api/attributes/TestSuiteName +instanceKlass org/gradle/api/plugins/JvmTestSuitePlugin$$Lambda$673 +instanceKlass org/gradle/api/plugins/JvmTestSuitePlugin$$Lambda$672 +instanceKlass org/gradle/api/plugins/JvmTestSuitePlugin$$Lambda$671 +instanceKlass org/gradle/api/plugins/jvm/internal/DefaultJvmTestSuite$$Lambda$670 +instanceKlass org/gradle/api/plugins/jvm/internal/DefaultJvmTestSuiteTarget$$Lambda$669 +instanceKlass org/gradle/internal/reflect/MethodSet$1 +instanceKlass org/gradle/api/plugins/JvmTestSuitePlugin$$Lambda$668 +instanceKlass org/gradle/api/plugins/jvm/internal/DefaultJvmTestSuite$$Lambda$667 +instanceKlass org/gradle/api/plugins/jvm/internal/DefaultJvmComponentDependencies +instanceKlass org/gradle/api/plugins/jvm/internal/DefaultJvmTestSuiteTarget +instanceKlass org/gradle/api/plugins/jvm/internal/DefaultJvmTestSuite$$Lambda$666 +instanceKlass org/gradle/api/plugins/jvm/internal/DefaultJvmTestSuite$VersionedTestingFramework +instanceKlass org/gradle/api/plugins/jvm/JvmComponentDependencies +instanceKlass org/gradle/api/internal/tasks/testing/TestFramework +instanceKlass org/gradle/api/plugins/JavaPlugin$$Lambda$665 +instanceKlass org/gradle/api/internal/provider/TypeSanitizingTransformer +instanceKlass org/gradle/api/internal/file/DefaultSourceDirectorySet$$Lambda$664 +instanceKlass org/gradle/api/internal/file/DefaultSourceDirectorySet$$Lambda$663 +instanceKlass org/gradle/api/plugins/internal/JvmPluginsHelper$$Lambda$662 +instanceKlass org/gradle/api/plugins/internal/JvmPluginsHelper$$Lambda$661 +instanceKlass org/gradle/api/plugins/JavaBasePlugin$$Lambda$660 +instanceKlass org/gradle/api/tasks/compile/AbstractOptions +instanceKlass org/gradle/api/internal/tasks/compile/JavaCompileSpec +instanceKlass org/gradle/api/internal/tasks/compile/JvmLanguageCompileSpec +instanceKlass org/gradle/language/base/internal/compile/CompileSpec +instanceKlass org/gradle/api/internal/tasks/compile/incremental/recomp/RecompilationSpecProvider +instanceKlass org/gradle/internal/Actions$CompositeAction +instanceKlass org/gradle/api/plugins/jvm/internal/DefaultJvmPluginServices$$Lambda$659 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/api/plugins/jvm/internal/DefaultJvmPluginServices$$Lambda$658 +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/api/plugins/internal/JvmPluginsHelper$$Lambda$657 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/api/plugins/internal/JvmPluginsHelper +instanceKlass org/gradle/api/plugins/JavaBasePlugin$$Lambda$656 +instanceKlass org/gradle/api/plugins/JavaBasePlugin$$Lambda$655 +instanceKlass org/gradle/api/plugins/JavaBasePlugin$$Lambda$654 +instanceKlass org/gradle/api/plugins/JavaBasePlugin$$Lambda$653 +instanceKlass org/gradle/api/plugins/jvm/internal/DefaultJvmPluginServices$$Lambda$652 +instanceKlass org/gradle/api/attributes/java/TargetJvmEnvironment$Impl +instanceKlass org/gradle/api/plugins/jvm/internal/DefaultJvmEcosystemAttributesDetails +instanceKlass org/gradle/api/plugins/jvm/internal/DefaultJvmPluginServices$$Lambda$651 +instanceKlass org/gradle/internal/extensibility/ConventionAwareHelper$MappedPropertyImpl +instanceKlass org/gradle/api/internal/ConventionMapping$MappedProperty +instanceKlass org/gradle/api/internal/file/collections/DefaultConfigurableFileCollection$UnresolvedItemsCollector +instanceKlass org/gradle/api/internal/tasks/DefaultSourceSetOutput$$Lambda$650 +instanceKlass org/gradle/api/internal/tasks/DefaultTaskDependency$TaskDependencySet +instanceKlass org/gradle/api/internal/file/collections/DefaultConfigurableFileCollection$EmptyCollector +instanceKlass org/gradle/api/internal/file/collections/DefaultConfigurableFileCollection$ValueCollector +instanceKlass org/gradle/api/internal/lambdas/SerializableLambdas +instanceKlass org/gradle/api/internal/tasks/DefaultSourceSet$$Lambda$649 +instanceKlass org/gradle/api/internal/lambdas/SerializableLambdas$SerializableSpec +instanceKlass org/gradle/api/internal/file/DefaultSourceDirectorySet$SourceDirectories +instanceKlass org/gradle/internal/typeconversion/CharSequenceNotationParser +instanceKlass org/gradle/api/internal/jvm/ClassDirectoryBinaryNamingScheme +instanceKlass org/gradle/api/file/FileTreeElement +instanceKlass org/gradle/api/tasks/SourceSetOutput +instanceKlass org/gradle/api/internal/tasks/DefaultSourceSet +instanceKlass org/gradle/api/plugins/JvmTestSuitePlugin$$Lambda$648 +instanceKlass org/gradle/api/plugins/JvmTestSuitePlugin$$Lambda$647 +instanceKlass org/gradle/api/plugins/JvmTestSuitePlugin$$Lambda$646 +instanceKlass org/gradle/api/plugins/jvm/internal/DefaultJvmTestSuite +instanceKlass org/gradle/testing/base/internal/DefaultTestingExtension +instanceKlass org/gradle/testing/base/plugins/TestSuiteBasePlugin +instanceKlass org/gradle/api/attributes/TestSuiteType +instanceKlass org/gradle/api/plugins/jvm/JvmTestSuiteTarget +instanceKlass org/gradle/testing/base/TestSuiteTarget +instanceKlass org/gradle/api/plugins/JvmTestSuitePlugin +instanceKlass org/gradle/api/plugins/JavaBasePlugin$$Lambda$645 +instanceKlass org/gradle/api/plugins/JavaBasePlugin$$Lambda$644 +instanceKlass org/gradle/api/plugins/JavaBasePlugin$$Lambda$643 +instanceKlass org/gradle/api/plugins/JavaBasePlugin$$Lambda$642 +instanceKlass org/gradle/api/plugins/JavaBasePlugin$$Lambda$641 +instanceKlass org/gradle/api/plugins/JavaBasePlugin$$Lambda$640 +instanceKlass org/gradle/jvm/toolchain/internal/JavaToolchainQueryService$$Lambda$639 +instanceKlass org/gradle/jvm/toolchain/internal/JavaToolchainQueryService$$Lambda$638 +instanceKlass org/gradle/jvm/toolchain/install/internal/DefaultJavaToolchainProvisioningService$$Lambda$637 +instanceKlass org/gradle/language/java/internal/JavaLanguagePluginServiceRegistry$JavaProjectScopeServices$1 +instanceKlass org/gradle/language/base/internal/compile/Compiler +instanceKlass org/gradle/api/internal/tasks/compile/DefaultJavaCompilerFactory +instanceKlass org/gradle/api/internal/tasks/compile/processing/AnnotationProcessorDeclarationSerializer +instanceKlass org/gradle/api/internal/tasks/compile/processing/AnnotationProcessorDetector$ProcessorServiceLocator +instanceKlass org/gradle/process/internal/worker/child/DefaultWorkerDirectoryProvider +instanceKlass org/gradle/workers/internal/WorkerDaemonExpiration +instanceKlass org/gradle/workers/internal/WorkerDaemonClientsManager$LogLevelChangeEventListener +instanceKlass org/gradle/workers/internal/WorkerDaemonClientsManager$StopSessionScopedWorkers +instanceKlass org/gradle/workers/internal/WorkerDaemonClientsManager$WorkerProcessCleanupAction +instanceKlass org/gradle/workers/internal/WorkerDaemonStarter +instanceKlass org/gradle/process/internal/health/memory/MemoryHolder +instanceKlass org/gradle/workers/internal/DefaultActionExecutionSpecFactory +instanceKlass org/gradle/internal/snapshot/impl/AbstractSetSnapshot +instanceKlass org/gradle/internal/snapshot/impl/AbstractListSnapshot +instanceKlass org/gradle/internal/snapshot/impl/EnumValueSnapshot +instanceKlass org/gradle/internal/snapshot/impl/JavaSerializedValueSnapshot +instanceKlass org/gradle/internal/snapshot/impl/NullValueSnapshot +instanceKlass org/gradle/internal/snapshot/impl/AbstractManagedValueSnapshot +instanceKlass org/gradle/workers/internal/IsolatableSerializerRegistry$IsolatedSetSerializer +instanceKlass org/gradle/workers/internal/IsolatableSerializerRegistry$IsolatedListSerializer +instanceKlass org/gradle/workers/internal/IsolatableSerializerRegistry$IsolatedArraySerializer +instanceKlass org/gradle/internal/snapshot/impl/AbstractMapSnapshot +instanceKlass org/gradle/workers/internal/IsolatableSerializerRegistry$AbstractIsolatedMapSerializer +instanceKlass org/gradle/workers/internal/IsolatableSerializerRegistry$IsolatedEnumValueSnapshotSerializer +instanceKlass org/gradle/workers/internal/IsolatableSerializerRegistry$NullValueSnapshotSerializer +instanceKlass org/gradle/workers/internal/IsolatableSerializerRegistry$IsolatedJavaSerializedValueSnapshotSerializer +instanceKlass org/gradle/workers/internal/IsolatableSerializerRegistry$FileValueSnapshotSerializer +instanceKlass org/gradle/workers/internal/IsolatableSerializerRegistry$IsolatedImmutableManagedValueSerializer +instanceKlass org/gradle/workers/internal/IsolatableSerializerRegistry$IsolatedManagedValueSerializer +instanceKlass org/gradle/workers/internal/IsolatableSerializerRegistry$AttributeDefinitionSnapshotSerializer +instanceKlass org/gradle/workers/internal/IsolatableSerializerRegistry$LongValueSnapshotSerializer +instanceKlass org/gradle/workers/internal/IsolatableSerializerRegistry$IntegerValueSnapshotSerializer +instanceKlass org/gradle/workers/internal/IsolatableSerializerRegistry$ShortValueSnapshotSerializer +instanceKlass org/gradle/workers/internal/IsolatableSerializerRegistry$BooleanValueSnapshotSerializer +instanceKlass org/gradle/workers/internal/IsolatableSerializerRegistry$StringValueSnapshotSerializer +instanceKlass org/gradle/workers/internal/IsolatableSerializerRegistry$IsolatableSerializer +instanceKlass org/gradle/process/internal/worker/child/ApplicationClassesInSystemClassLoaderWorkerImplementationFactory +instanceKlass org/gradle/process/internal/worker/child/WorkerImplementationFactory +instanceKlass org/gradle/process/internal/worker/SingleRequestWorkerProcessBuilder +instanceKlass org/gradle/process/internal/worker/MultiRequestWorkerProcessBuilder +instanceKlass org/gradle/process/internal/worker/WorkerProcessBuilder +instanceKlass org/gradle/process/internal/worker/WorkerProcessSettings +instanceKlass org/gradle/process/internal/worker/DefaultWorkerProcessFactory +instanceKlass org/gradle/process/internal/health/memory/DefaultMemoryManager$MemoryCheck +instanceKlass org/gradle/process/internal/health/memory/DefaultMemoryManager$OsMemoryListener +instanceKlass org/gradle/process/internal/health/memory/OsMemoryStatusSnapshot +instanceKlass java/lang/reflect/AccessibleObject$$Lambda$636 +instanceKlass sun/reflect/misc/Trampoline +instanceKlass jdk/internal/module/SystemModuleFinders$SystemModuleReader$$Lambda$635 +instanceKlass sun/reflect/misc/MethodUtil$1 +instanceKlass jdk/management/jfr/FlightRecorderMXBeanImpl$MXBeanListener +instanceKlass jdk/jfr/FlightRecorderListener +instanceKlass jdk/jfr/FlightRecorder +instanceKlass jdk/jfr/Recording +instanceKlass javax/management/NotificationFilter +instanceKlass javax/management/NotificationListener +instanceKlass javax/management/StandardMBean$MBeanInfoSafeAction +instanceKlass jdk/management/jfr/StreamManager +instanceKlass jdk/management/jfr/EventTypeInfo +instanceKlass jdk/management/jfr/RecordingInfo +instanceKlass jdk/management/jfr/ConfigurationInfo +instanceKlass sun/reflect/generics/tree/LongSignature +instanceKlass jdk/management/jfr/SettingDescriptorInfo$1 +instanceKlass jdk/management/jfr/SettingDescriptorInfo +instanceKlass com/sun/management/VMOption +instanceKlass com/sun/management/internal/HotSpotDiagnostic +instanceKlass com/sun/management/HotSpotDiagnosticMXBean +instanceKlass java/lang/management/DefaultPlatformMBeanProvider$10$$Lambda$634 +instanceKlass sun/nio/ch/FileChannelImpl$1 +instanceKlass sun/management/ManagementFactoryHelper$1 +instanceKlass java/lang/management/BufferPoolMXBean +instanceKlass com/sun/management/GcInfo +instanceKlass javax/management/openmbean/CompositeDataView +instanceKlass com/sun/management/internal/DiagnosticCommandImpl$Wrapper +instanceKlass com/sun/management/internal/DiagnosticCommandArgumentInfo +instanceKlass com/sun/management/internal/DiagnosticCommandInfo +instanceKlass com/sun/management/internal/DiagnosticCommandImpl$OperationInfoComparator +instanceKlass sun/management/ClassLoadingImpl +instanceKlass java/lang/management/ClassLoadingMXBean +instanceKlass javax/management/MBeanInfo$ArrayGettersSafeAction +instanceKlass javax/management/openmbean/OpenMBeanOperationInfo +instanceKlass java/util/logging/Logging +instanceKlass java/util/logging/LoggingMXBean +instanceKlass sun/management/ManagementFactoryHelper$PlatformLoggingImpl +instanceKlass java/lang/management/PlatformLoggingMXBean +instanceKlass sun/management/CompilationImpl +instanceKlass java/lang/management/CompilationMXBean +instanceKlass sun/management/VMManagementImpl$1 +instanceKlass java/lang/management/DefaultPlatformMBeanProvider$5$$Lambda$633 +instanceKlass java/lang/management/DefaultPlatformMBeanProvider$5$$Lambda$632 +instanceKlass sun/management/BaseOperatingSystemImpl +instanceKlass com/sun/management/OperatingSystemMXBean +instanceKlass java/lang/management/OperatingSystemMXBean +instanceKlass com/sun/jmx/mbeanserver/PerInterface$MethodAndSig +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/management/LockInfo +instanceKlass java/lang/management/ThreadInfo +instanceKlass sun/management/ThreadImpl +instanceKlass com/sun/management/ThreadMXBean +instanceKlass java/lang/management/ThreadMXBean +instanceKlass com/sun/jmx/mbeanserver/WeakIdentityHashMap +instanceKlass com/sun/jmx/mbeanserver/MXBeanLookup +instanceKlass com/sun/jmx/mbeanserver/PerInterface$InitMaps +instanceKlass com/sun/jmx/mbeanserver/PerInterface +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass javax/management/openmbean/OpenMBeanAttributeInfo +instanceKlass javax/management/openmbean/OpenMBeanParameterInfo +instanceKlass com/sun/jmx/mbeanserver/MBeanIntrospector$MBeanInfoMaker +instanceKlass com/sun/jmx/mbeanserver/MBeanAnalyzer$MBeanVisitor +instanceKlass com/sun/jmx/mbeanserver/MBeanAnalyzer$AttrMethods +instanceKlass com/sun/jmx/mbeanserver/MXBeanMapping +instanceKlass javax/management/openmbean/TabularData +instanceKlass javax/management/openmbean/CompositeData +instanceKlass javax/management/openmbean/OpenType +instanceKlass com/sun/jmx/mbeanserver/MXBeanMappingFactory +instanceKlass com/sun/jmx/mbeanserver/ConvertingMethod +instanceKlass com/sun/jmx/mbeanserver/MBeanAnalyzer$MethodOrder +instanceKlass com/sun/jmx/mbeanserver/MBeanAnalyzer +instanceKlass com/sun/jmx/mbeanserver/MBeanIntrospector +instanceKlass javax/management/MXBean +instanceKlass com/sun/jmx/mbeanserver/MBeanSupport +instanceKlass com/sun/jmx/mbeanserver/DescriptorCache +instanceKlass javax/management/JMX +instanceKlass javax/management/StandardMBean +instanceKlass java/lang/management/ManagementFactory$$Lambda$631 +instanceKlass sun/management/RuntimeImpl +instanceKlass java/lang/management/RuntimeMXBean +instanceKlass java/lang/management/ManagementFactory$$Lambda$630 +instanceKlass java/lang/management/ManagementFactory$$Lambda$629 +instanceKlass java/lang/management/ManagementFactory$$Lambda$628 +instanceKlass com/sun/jmx/mbeanserver/JmxMBeanServer$3 +instanceKlass javax/management/ObjectInstance +instanceKlass com/sun/jmx/mbeanserver/NamedObject +instanceKlass com/sun/jmx/interceptor/DefaultMBeanServerInterceptor$ResourceContext$1 +instanceKlass com/sun/jmx/interceptor/DefaultMBeanServerInterceptor$ResourceContext +instanceKlass com/sun/jmx/mbeanserver/Repository$RegistrationContext +instanceKlass com/sun/jmx/mbeanserver/DynamicMBean2 +instanceKlass com/sun/jmx/defaults/JmxProperties +instanceKlass com/sun/jmx/mbeanserver/Introspector +instanceKlass com/sun/jmx/mbeanserver/JmxMBeanServer$2 +instanceKlass com/sun/jmx/interceptor/DefaultMBeanServerInterceptor +instanceKlass com/sun/jmx/interceptor/MBeanServerInterceptor +instanceKlass com/sun/jmx/mbeanserver/Repository +instanceKlass com/sun/jmx/mbeanserver/JmxMBeanServer$1 +instanceKlass com/sun/jmx/mbeanserver/SecureClassLoaderRepository +instanceKlass com/sun/jmx/mbeanserver/MBeanInstantiator +instanceKlass com/sun/jmx/mbeanserver/ClassLoaderRepositorySupport$LoaderEntry +instanceKlass com/sun/jmx/mbeanserver/ClassLoaderRepositorySupport +instanceKlass com/sun/jmx/mbeanserver/ModifiableClassLoaderRepository +instanceKlass javax/management/loading/ClassLoaderRepository +instanceKlass javax/management/ImmutableDescriptor +instanceKlass javax/management/Descriptor +instanceKlass sun/util/logging/PlatformLogger$ConfigurableBridge$LoggerConfiguration +instanceKlass jdk/internal/logger/LoggerFinderLoader +instanceKlass java/lang/System$LoggerFinder$$Lambda$627 +instanceKlass jdk/internal/logger/LazyLoggers$LazyLoggerFactories +instanceKlass jdk/internal/logger/LazyLoggers$1 +instanceKlass jdk/internal/logger/LazyLoggers +instanceKlass com/sun/jmx/remote/util/ClassLogger +instanceKlass javax/management/NotificationBroadcasterSupport$1 +instanceKlass javax/management/NotificationBroadcasterSupport +instanceKlass javax/management/MBeanInfo +instanceKlass javax/management/MBeanFeatureInfo +instanceKlass javax/management/DescriptorRead +instanceKlass javax/management/MBeanServerDelegate +instanceKlass javax/management/MBeanServerDelegateMBean +instanceKlass javax/management/MBeanRegistration +instanceKlass com/sun/jmx/mbeanserver/JmxMBeanServer +instanceKlass com/sun/jmx/mbeanserver/SunJmxMBeanServer +instanceKlass javax/management/MBeanServer +instanceKlass javax/management/MBeanServerConnection +instanceKlass javax/management/MBeanServerBuilder +instanceKlass javax/management/MBeanServerFactory +instanceKlass org/gradle/process/internal/health/memory/MBeanAttributeProvider +instanceKlass org/gradle/process/internal/health/memory/JvmMemoryStatusListener +instanceKlass org/gradle/process/internal/health/memory/DefaultMemoryManager +instanceKlass org/gradle/process/internal/health/memory/JvmMemoryStatus +instanceKlass org/gradle/process/internal/health/memory/DefaultJvmMemoryInfo +instanceKlass org/gradle/process/internal/health/memory/OsMemoryStatus +instanceKlass org/gradle/process/internal/health/memory/MBeanOsMemoryInfo +instanceKlass org/gradle/process/internal/health/memory/DefaultOsMemoryInfo +instanceKlass org/gradle/internal/jvm/inspection/DefaultJvmVersionDetector +instanceKlass org/gradle/internal/remote/internal/hub/MessageHubBackedServer +instanceKlass org/gradle/internal/jvm/inspection/JvmInstallationMetadata$DefaultJvmInstallationMetadata$$Lambda$626 +instanceKlass org/gradle/internal/jvm/inspection/JvmInstallationMetadata$DefaultJvmInstallationMetadata +instanceKlass org/gradle/internal/jvm/inspection/CachingJvmMetadataDetector$$Lambda$625 +instanceKlass org/gradle/internal/jvm/inspection/JvmInstallationMetadata +instanceKlass org/gradle/internal/jvm/inspection/DefaultJvmMetadataDetector +instanceKlass org/gradle/internal/jvm/inspection/CachingJvmMetadataDetector +instanceKlass org/gradle/jvm/toolchain/internal/JavaInstallationRegistry$$Lambda$624 +instanceKlass net/rubygrapefruit/platform/internal/DefaultWindowsRegistry +instanceKlass org/apache/xerces/jaxp/JAXPConstants +instanceKlass javax/xml/parsers/DocumentBuilder +instanceKlass javax/xml/parsers/FactoryFinder$1 +instanceKlass javax/xml/parsers/FactoryFinder$$Lambda$623 +instanceKlass javax/xml/parsers/FactoryFinder +instanceKlass javax/xml/parsers/DocumentBuilderFactory +instanceKlass javax/xml/xpath/XPathFactoryFinder$$Lambda$622 +instanceKlass jdk/xml/internal/XMLSecurityManager +instanceKlass jdk/xml/internal/SecuritySupport$$Lambda$621 +instanceKlass jdk/xml/internal/JdkXmlFeatures +instanceKlass javax/xml/xpath/XPathFactoryFinder$$Lambda$620 +instanceKlass javax/xml/xpath/XPathFactoryFinder$2 +instanceKlass javax/xml/xpath/XPathFactoryFinder$$Lambda$619 +instanceKlass jdk/xml/internal/SecuritySupport$$Lambda$618 +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$BMH +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass javax/xml/xpath/XPathFactoryFinder$$Lambda$617 +instanceKlass javax/xml/xpath/XPathFactoryFinder$$Lambda$616 +instanceKlass jdk/xml/internal/SecuritySupport$$Lambda$615 +instanceKlass javax/xml/xpath/XPathFactoryFinder +instanceKlass jdk/xml/internal/SecuritySupport$$Lambda$614 +instanceKlass jdk/xml/internal/SecuritySupport +instanceKlass javax/xml/xpath/XPathFactory +instanceKlass org/gradle/jvm/toolchain/internal/AutoInstalledInstallationSupplier$$Lambda$613 +instanceKlass org/gradle/jvm/toolchain/internal/AsdfInstallationSupplier$$Lambda$612 +instanceKlass org/gradle/api/internal/provider/sources/SystemPropertyValueSource$Parameters_Decorated +instanceKlass org/gradle/api/internal/provider/sources/SystemPropertyValueSource$Parameters +instanceKlass org/gradle/api/internal/provider/DefaultProviderFactory$$Lambda$611 +instanceKlass org/gradle/api/internal/provider/sources/EnvironmentVariableValueSource$Parameters_Decorated +instanceKlass org/gradle/api/internal/provider/sources/EnvironmentVariableValueSource$Parameters +instanceKlass org/gradle/api/internal/provider/DefaultProviderFactory$$Lambda$610 +instanceKlass org/gradle/api/internal/provider/sources/EnvironmentVariableValueSource +instanceKlass org/gradle/jvm/toolchain/internal/AutoDetectingInstallationSupplier$$Lambda$609 +instanceKlass org/gradle/api/internal/provider/DefaultValueSourceProviderFactory$LazilyObtainedValue +instanceKlass org/gradle/api/internal/provider/DefaultValueSourceProviderFactory$DefaultObtainedValue +instanceKlass org/gradle/api/internal/provider/DefaultValueSourceProviderFactory$DefaultValueSourceSpec +instanceKlass org/gradle/api/internal/provider/sources/GradlePropertyValueSource$Parameters_Decorated +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/internal/instantiation/generator/AsmBackedClassGenerator$ClassBuilderImpl$$Lambda$608 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/api/internal/provider/sources/GradlePropertyValueSource$Parameters +instanceKlass org/gradle/api/internal/provider/sources/AbstractPropertyValueSource$Parameters +instanceKlass org/gradle/api/internal/provider/DefaultProviderFactory$$Lambda$607 +instanceKlass org/gradle/api/internal/provider/sources/AbstractPropertyValueSource +instanceKlass org/gradle/api/plugins/JavaPluginConvention +instanceKlass org/gradle/internal/jvm/DefaultModularitySpec +instanceKlass org/gradle/api/jvm/ModularitySpec +instanceKlass org/gradle/api/java/archives/Manifest +instanceKlass org/gradle/jvm/toolchain/internal/DefaultJvmVendorSpec$$Lambda$606 +instanceKlass org/gradle/jvm/toolchain/internal/DefaultJvmVendorSpec$$Lambda$605 +instanceKlass org/gradle/internal/jvm/inspection/JvmVendor +instanceKlass org/gradle/jvm/toolchain/JvmVendorSpec +instanceKlass org/gradle/jvm/toolchain/JavaLanguageVersion +instanceKlass org/gradle/jvm/toolchain/JvmImplementation +instanceKlass org/gradle/jvm/toolchain/internal/DefaultToolchainSpec +instanceKlass org/gradle/jvm/toolchain/internal/ToolchainSpecInternal +instanceKlass org/gradle/api/reporting/ReportSpec +instanceKlass org/gradle/api/reporting/ReportingExtension +instanceKlass org/gradle/api/plugins/ReportingBasePlugin +instanceKlass org/gradle/api/internal/artifacts/type/DefaultArtifactTypeContainer$DefaultArtifactTypeDefinition +instanceKlass org/gradle/api/internal/tasks/DefaultSourceSetContainer$1 +instanceKlass org/gradle/api/plugins/JvmEcosystemPlugin +instanceKlass org/gradle/api/plugins/BasePlugin$$Lambda$604 +instanceKlass org/gradle/api/plugins/BasePlugin$$Lambda$603 +instanceKlass org/gradle/api/internal/ExecuteDomainObjectCollectionCallbackBuildOperationType$1 +instanceKlass org/gradle/api/internal/ExecuteDomainObjectCollectionCallbackBuildOperationType$Result +instanceKlass org/gradle/api/internal/ExecuteDomainObjectCollectionCallbackBuildOperationType +instanceKlass org/gradle/api/internal/DefaultCollectionCallbackActionDecorator$OperationDetails +instanceKlass org/gradle/api/internal/DefaultCollectionCallbackActionDecorator$Operation +instanceKlass org/gradle/api/plugins/BasePlugin$$Lambda$602 +instanceKlass org/gradle/api/internal/GeneratedSubclasses +instanceKlass org/gradle/api/internal/plugins/DslObject +instanceKlass org/gradle/api/plugins/BasePlugin$$Lambda$601 +instanceKlass org/gradle/api/internal/plugins/AbstractRule +instanceKlass org/gradle/api/internal/file/DefaultFilePropertyFactory$PathToDirectoryTransformer +instanceKlass org/gradle/api/plugins/BasePluginConvention +instanceKlass org/gradle/api/plugins/internal/DefaultBasePluginExtension +instanceKlass org/gradle/language/base/plugins/LifecycleBasePlugin$$Lambda$600 +instanceKlass org/gradle/language/base/plugins/LifecycleBasePlugin$$Lambda$599 +instanceKlass org/gradle/language/base/plugins/LifecycleBasePlugin$$Lambda$598 +instanceKlass org/gradle/language/base/internal/plugins/CleanRule +instanceKlass org/gradle/language/base/plugins/LifecycleBasePlugin$$Lambda$597 +instanceKlass org/gradle/language/base/plugins/LifecycleBasePlugin$$Lambda$596 +instanceKlass org/gradle/language/base/plugins/LifecycleBasePlugin +instanceKlass org/gradle/api/internal/plugins/DefaultArtifactPublicationSet +instanceKlass org/gradle/api/plugins/BasePluginExtension +instanceKlass org/gradle/api/plugins/BasePlugin +instanceKlass org/gradle/api/internal/tasks/compile/HasCompileOptions +instanceKlass org/gradle/api/plugins/internal/DefaultJavaPluginExtension +instanceKlass org/gradle/api/plugins/JavaBasePlugin +instanceKlass org/gradle/api/plugins/JavaPlatformPlugin +instanceKlass org/gradle/api/internal/plugins/PluginManagerInternal$PluginWithId +instanceKlass org/gradle/api/plugins/jvm/internal/JvmEcosystemAttributesDetails +instanceKlass org/gradle/api/plugins/jvm/internal/DefaultJvmPluginServices +instanceKlass org/gradle/api/internal/component/SoftwareComponentInternal +instanceKlass org/gradle/api/plugins/internal/DefaultSoftwareComponentFactory +instanceKlass org/gradle/api/plugins/jvm/JvmTestSuite +instanceKlass org/gradle/testing/base/TestSuite +instanceKlass org/gradle/api/plugins/jvm/internal/OutgoingElementsBuilder +instanceKlass org/gradle/testing/base/TestingExtension +instanceKlass org/gradle/api/tasks/SourceSet +instanceKlass org/gradle/api/plugins/JavaPluginExtension +instanceKlass org/gradle/plugin/use/internal/DefaultPluginRequestApplicator$$Lambda$595 +instanceKlass org/gradle/plugin/use/internal/DefaultPluginRequestApplicator$$Lambda$594 +instanceKlass org/gradle/internal/snapshot/MetadataSnapshot$1 +instanceKlass org/gradle/internal/classpath/DefaultCachedClasspathTransformer$1 +instanceKlass org/gradle/api/internal/artifacts/DownloadArtifactBuildOperationType$1 +instanceKlass org/gradle/api/internal/artifacts/DownloadArtifactBuildOperationType$Result +instanceKlass org/gradle/api/internal/artifacts/DownloadArtifactBuildOperationType +instanceKlass org/gradle/api/internal/artifacts/DefaultArtifactIdentifier +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/artifacts/DefaultCachedArtifact +instanceKlass org/gradle/internal/resource/cached/AbstractCachedIndex$$Lambda$588 +instanceKlass org/gradle/internal/resource/cached/AbstractCachedIndex$$Lambda$593 +instanceKlass org/gradle/internal/resource/cached/AbstractCachedIndex$$Lambda$586 +instanceKlass org/gradle/internal/resource/cached/AbstractCachedIndex$$Lambda$591 +instanceKlass org/gradle/internal/resource/cached/AbstractCachedIndex$$Lambda$589 +instanceKlass org/gradle/internal/resource/cached/AbstractCachedIndex$$Lambda$585 +instanceKlass org/gradle/internal/resource/cached/AbstractCachedIndex$$Lambda$592 +instanceKlass org/gradle/internal/resource/cached/AbstractCachedIndex$$Lambda$587 +instanceKlass org/gradle/internal/resource/cached/AbstractCachedIndex$$Lambda$590 +instanceKlass org/gradle/internal/resource/cached/AbstractCachedIndex$$Lambda$584 +instanceKlass org/gradle/internal/resource/cached/AbstractCachedIndex$$Lambda$581 +instanceKlass org/gradle/internal/resource/cached/AbstractCachedIndex$$Lambda$583 +instanceKlass org/gradle/internal/resource/cached/AbstractCachedIndex$$Lambda$582 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/artifacts/ArtifactAtRepositoryKey +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$580 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$576 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$575 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$577 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$579 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$578 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$574 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$573 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$571 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$572 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$570 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$569 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$568 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$562 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$565 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$564 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$566 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$567 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$561 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$563 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$558 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$560 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$559 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$557 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$556 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$555 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$554 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$553 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$551 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$552 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$550 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$549 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$548 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$547 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$544 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$545 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$546 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$543 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$542 +instanceKlass org/gradle/internal/resources/DefaultResourceLockCoordinationService$ReleaseLocks +instanceKlass org/gradle/internal/operations/DefaultBuildOperationQueue$$Lambda$541 +instanceKlass org/gradle/internal/model/CalculatedValueContainer$CalculationState$$Lambda$540 +instanceKlass org/gradle/internal/model/CalculatedValueContainer$CalculationState$$Lambda$537 +instanceKlass org/gradle/internal/model/CalculatedValueContainer$CalculationState$$Lambda$539 +instanceKlass org/gradle/internal/model/CalculatedValueContainer$CalculationState$$Lambda$538 +instanceKlass org/gradle/internal/model/CalculatedValueContainer$CalculationState$$Lambda$536 +instanceKlass org/gradle/api/internal/artifacts/DownloadArtifactBuildOperationType$DetailsImpl +instanceKlass org/gradle/api/internal/artifacts/DownloadArtifactBuildOperationType$Details +instanceKlass org/gradle/internal/operations/DefaultBuildOperationQueue$WorkerRunnable$$Lambda$535 +instanceKlass org/gradle/internal/operations/DefaultBuildOperationQueue$WorkerRunnable$$Lambda$533 +instanceKlass org/gradle/internal/operations/DefaultBuildOperationQueue$WorkerRunnable$$Lambda$534 +instanceKlass org/gradle/internal/operations/DefaultBuildOperationQueue$WorkerRunnable$$Lambda$532 +instanceKlass org/gradle/internal/operations/DefaultBuildOperationQueue$WorkerRunnable$$Lambda$531 +instanceKlass org/gradle/internal/operations/DefaultBuildOperationQueue$WorkerRunnable$$Lambda$530 +instanceKlass org/gradle/internal/operations/DefaultBuildOperationQueue$WorkerRunnable$$Lambda$529 +instanceKlass org/gradle/internal/operations/DefaultBuildOperationQueue$WorkerRunnable$$Lambda$528 +instanceKlass org/gradle/internal/operations/DefaultBuildOperationQueue$WorkerRunnable$$Lambda$527 +instanceKlass org/gradle/internal/operations/DefaultBuildOperationQueue$WorkerRunnable +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/ArtifactBackedResolvedVariant$DownloadArtifactFile +instanceKlass org/gradle/internal/operations/DefaultBuildOperationQueue +instanceKlass org/gradle/internal/operations/DefaultBuildOperationExecutor$$Lambda$526 +instanceKlass org/gradle/internal/operations/DefaultBuildOperationExecutor$QueueWorker +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/ParallelResolveArtifactSet$VisitingSet$StartVisitAction +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/ResolvedArtifactSet$Visitor +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/ParallelResolveArtifactSet +instanceKlass org/gradle/api/internal/artifacts/ivyservice/DefaultLenientConfiguration$ResolveArtifactsDetails +instanceKlass org/gradle/api/internal/artifacts/ResolveArtifactsBuildOperationType$Details +instanceKlass org/gradle/api/internal/artifacts/ivyservice/DefaultLenientConfiguration$3 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/DefaultLenientConfiguration$2 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/DefaultVisitedArtifactResults$DefaultSelectedArtifactResults +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/CompositeResolvedArtifactSet +instanceKlass org/gradle/internal/component/local/model/OpaqueComponentIdentifier +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/ArtifactBackedResolvedVariant$SingleArtifactSet +instanceKlass org/gradle/api/internal/artifacts/PreResolvedResolvableArtifact +instanceKlass org/gradle/api/internal/artifacts/DefaultResolvableArtifact$1 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/DefaultArtifactSet$$Lambda$525 +instanceKlass org/gradle/api/artifacts/ResolvedArtifact +instanceKlass org/gradle/api/internal/tasks/FinalizeAction +instanceKlass org/gradle/api/internal/artifacts/DefaultResolvableArtifact +instanceKlass org/gradle/internal/model/CalculatedValueContainer$CalculationState +instanceKlass org/gradle/internal/model/CalculatedValueContainer +instanceKlass org/gradle/api/internal/tasks/WorkNodeAction +instanceKlass org/gradle/internal/resolve/result/BuildableArtifactResolveResult +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/DefaultArtifactSet$LazyArtifactSupplier +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/excludes/specs/ExcludeEverything +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/excludes/simple/DefaultGroupExclude +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/excludes/specs/GroupExclude +instanceKlass org/apache/ivy/plugins/matcher/PatternMatcher +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/excludes/PatternMatchers +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/excludes/ModuleExclusions$$Lambda$524 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/selectors/SelectorStateResolverResults$Registration +instanceKlass com/google/common/primitives/Longs$AsciiDigits +instanceKlass org/gradle/internal/component/external/descriptor/DefaultExclude +instanceKlass org/gradle/internal/component/model/Exclude +instanceKlass org/gradle/internal/component/external/model/ConfigurationBoundExternalDependencyMetadata +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/excludes/factories/Optimizations +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/excludes/factories/OptimizingExcludeFactory$$Lambda$523 +instanceKlass org/gradle/internal/component/model/DefaultCompatibilityCheckResult +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ResolvedFilesCollectingVisitor +instanceKlass org/gradle/api/internal/file/AbstractFileCollection$2 +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfiguration$ConfigurationResolvableDependencies$ConfigurationArtifactView +instanceKlass org/gradle/api/internal/initialization/DefaultScriptClassPathResolver$$Lambda$522 +instanceKlass org/gradle/api/internal/initialization/DefaultScriptClassPathResolver$$Lambda$521 +instanceKlass org/gradle/api/internal/tasks/FailureCollectingTaskDependencyResolveContext +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/BuildDependenciesOnlyVisitedArtifactSet$BuildDependenciesOnlySelectedArtifactSet +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/DefaultVisitedArtifactResults$NoArtifactResults +instanceKlass org/gradle/api/internal/artifacts/transform/AttributeMatchingVariantSelector +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/DefaultResolutionResultBuilder$RootFactory +instanceKlass org/gradle/api/internal/artifacts/result/DefaultResolvedComponentResult +instanceKlass org/gradle/api/internal/artifacts/result/ResolvedComponentResultInternal +instanceKlass org/gradle/internal/service/scopes/ProjectScopeServices$$Lambda$520 +instanceKlass org/gradle/internal/service/scopes/DefaultProjectFinder +instanceKlass org/gradle/internal/execution/steps/CancelExecutionStep +instanceKlass org/gradle/caching/internal/CacheableEntity +instanceKlass org/gradle/internal/execution/steps/BuildCacheStep +instanceKlass org/gradle/internal/execution/steps/RecordOutputsStep +instanceKlass org/gradle/internal/execution/steps/legacy/MarkSnapshottingInputsFinishedStep +instanceKlass org/gradle/internal/execution/caching/CachingState$Disabled +instanceKlass org/gradle/internal/execution/caching/CachingState +instanceKlass org/gradle/internal/execution/caching/CachingStateFactory +instanceKlass org/gradle/internal/execution/steps/ResolveCachingStateStep +instanceKlass org/gradle/internal/execution/steps/SkipEmptyWorkStep +instanceKlass org/gradle/internal/execution/steps/legacy/MarkSnapshottingInputsStartedStep +instanceKlass org/gradle/internal/service/scopes/ExecutionGradleServices$$Lambda$519 +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$BMH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$BMH +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/internal/execution/history/impl/DefaultOutputFilesRepository +instanceKlass org/gradle/internal/cleanup/DefaultBuildOutputCleanupRegistry +instanceKlass org/gradle/caching/internal/controller/BuildCacheLoadCommand +instanceKlass org/gradle/caching/internal/controller/BuildCacheStoreCommand +instanceKlass org/gradle/caching/internal/controller/impl/DefaultBuildCacheCommandFactory +instanceKlass org/gradle/caching/internal/BuildCacheServices$3$$Lambda$518 +instanceKlass org/gradle/caching/internal/origin/OriginMetadataFactory$HostnameLookup +instanceKlass org/gradle/caching/internal/BuildCacheServices$3$$Lambda$517 +instanceKlass org/gradle/caching/internal/origin/OriginMetadataFactory$PropertiesConfigurator +instanceKlass org/gradle/internal/nativeintegration/services/NativeServices$FixedHostname +instanceKlass net/rubygrapefruit/platform/internal/MutableSystemInfo +instanceKlass net/rubygrapefruit/platform/internal/DefaultSystemInfo +instanceKlass org/gradle/caching/internal/BuildCacheServices$FilePermissionsAccessAdapter +instanceKlass org/gradle/caching/internal/packaging/impl/TarBuildCacheEntryPacker$$Lambda$516 +instanceKlass org/apache/commons/compress/archivers/ArchiveEntry +instanceKlass org/gradle/caching/internal/packaging/impl/TarBuildCacheEntryPacker +instanceKlass org/gradle/caching/internal/packaging/impl/GZipBuildCacheEntryPacker +instanceKlass org/gradle/caching/internal/packaging/impl/DefaultTarPackerFileSystemSupport +instanceKlass org/gradle/api/internal/artifacts/dsl/DefaultComponentMetadataHandler$$Lambda$515 +instanceKlass org/gradle/api/internal/artifacts/dsl/DefaultComponentMetadataHandler$$Lambda$514 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/moduleconverter/DefaultRootComponentMetadataBuilder$$Lambda$513 +instanceKlass org/gradle/api/internal/artifacts/ProjectBackedModule +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/NoRepositoriesResolver +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/CachingDependencyResultFactory +instanceKlass org/gradle/api/artifacts/result/DependencyResult +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/DefaultResolutionResultBuilder +instanceKlass org/gradle/api/internal/artifacts/ivyservice/InMemoryResolutionResultBuilder +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfiguration$$Lambda$512 +instanceKlass org/gradle/api/internal/tasks/TaskDependencyContainer$$Lambda$511 +instanceKlass org/gradle/internal/graph/CachingDirectedGraphWalker$NodeDetails +instanceKlass java/util/ArrayDeque$$Lambda$510 +instanceKlass org/gradle/api/internal/tasks/WorkDependencyResolver$1 +instanceKlass org/gradle/plugin/use/tracker/internal/PluginVersionTracker$$Lambda$509 +instanceKlass org/gradle/api/internal/initialization/DefaultScriptHandler$$Lambda$508 +instanceKlass org/gradle/api/internal/catalog/parser/StrictVersionParser$RichVersion +instanceKlass org/gradle/api/internal/artifacts/dsl/ParsedModuleStringNotation +instanceKlass org/gradle/api/internal/initialization/DefaultScriptHandler$$Lambda$507 +instanceKlass org/gradle/api/attributes/plugin/GradlePluginApiVersion$Impl +instanceKlass org/gradle/api/attributes/Bundling$Impl +instanceKlass org/gradle/api/internal/project/DefaultProjectStateRegistry$CalculatedModelValueImpl +instanceKlass org/gradle/api/internal/artifacts/dsl/dependencies/DefaultDependencyHandler$DirectDependencyAdder +instanceKlass org/gradle/api/artifacts/dsl/ExternalModuleDependencyVariantSpec +instanceKlass org/gradle/api/internal/artifacts/dsl/dependencies/DefaultDependencyHandler +instanceKlass org/gradle/api/artifacts/query/ArtifactResolutionQuery +instanceKlass org/gradle/api/internal/artifacts/query/DefaultArtifactResolutionQueryFactory +instanceKlass org/gradle/api/internal/artifacts/dsl/dependencies/DefaultDependencyConstraintHandler$DependencyConstraintAdder +instanceKlass org/gradle/api/internal/artifacts/dsl/dependencies/DefaultDependencyConstraintHandler$1 +instanceKlass org/gradle/api/internal/artifacts/dsl/dependencies/DynamicAddDependencyMethods +instanceKlass org/gradle/api/internal/artifacts/dsl/dependencies/DynamicAddDependencyMethods$DependencyAdder +instanceKlass org/gradle/api/internal/artifacts/dsl/dependencies/DefaultDependencyConstraintHandler +instanceKlass org/gradle/api/internal/notations/ClientModuleNotationParserFactory +instanceKlass org/gradle/api/internal/notations/DependencyConstraintProjectNotationConverter +instanceKlass org/gradle/api/internal/artifacts/dependencies/DefaultDependencyConstraint +instanceKlass org/gradle/api/internal/artifacts/dependencies/DependencyConstraintInternal +instanceKlass org/gradle/api/internal/notations/DependencyConstraintNotationParser$MinimalExternalDependencyNotationConverter +instanceKlass org/gradle/api/internal/notations/DependencyConstraintNotationParser +instanceKlass org/gradle/api/internal/notations/DependencyClassPathNotationConverter +instanceKlass org/gradle/api/internal/notations/DependencyProjectNotationConverter +instanceKlass org/gradle/api/internal/notations/DependencyFilesNotationConverter +instanceKlass org/gradle/internal/typeconversion/TypeFilteringNotationConverter +instanceKlass org/gradle/api/internal/notations/DependencyNotationParser$MinimalExternalDependencyNotationConverter +instanceKlass org/gradle/api/artifacts/MinimalExternalModuleDependency +instanceKlass org/gradle/api/internal/notations/DependencyNotationParser +instanceKlass org/gradle/api/internal/artifacts/DefaultDependencyFactory +instanceKlass org/gradle/api/internal/notations/ProjectDependencyFactory +instanceKlass org/gradle/plugin/use/internal/DefaultPluginRequestApplicator$1$1$$Lambda$506 +instanceKlass org/gradle/plugin/use/internal/DefaultPluginRequestApplicator$1$1$$Lambda$505 +instanceKlass org/gradle/plugin/use/internal/DefaultPluginRequestApplicator$1$1 +instanceKlass org/gradle/plugin/use/resolve/internal/PluginResolveContext +instanceKlass org/gradle/plugin/use/internal/DefaultPluginRequestApplicator$1 +instanceKlass org/gradle/plugin/use/resolve/internal/ArtifactRepositoriesPluginResolver$1 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ErrorHandlingConfigurationResolver$ErrorHandlingResolvedConfiguration +instanceKlass org/gradle/api/internal/artifacts/ivyservice/DefaultResolvedConfiguration +instanceKlass org/gradle/api/internal/artifacts/ivyservice/DefaultLenientConfiguration$1 +instanceKlass org/gradle/api/internal/artifacts/ResolveArtifactsBuildOperationType$Result +instanceKlass org/gradle/api/internal/artifacts/ivyservice/DefaultLenientConfiguration +instanceKlass org/gradle/api/artifacts/LenientConfiguration +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/oldresult/TransientConfigurationResultsLoader +instanceKlass org/gradle/api/internal/artifacts/configurations/ResolveConfigurationResolutionBuildOperationResult$LazyDesugaringAttributeContainer +instanceKlass org/gradle/api/internal/artifacts/configurations/ResolveConfigurationResolutionBuildOperationResult +instanceKlass org/gradle/api/internal/artifacts/configurations/ResolveConfigurationDependenciesBuildOperationType$Result +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ErrorHandlingConfigurationResolver$ErrorHandlingResolutionResult +instanceKlass org/gradle/api/internal/artifacts/ivyservice/DefaultConfigurationResolver$ArtifactResolveState +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfiguration$$Lambda$504 +instanceKlass org/gradle/api/internal/artifacts/transform/FilteredResultFactory +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfiguration$DefaultResolutionResultProvider +instanceKlass org/gradle/api/internal/artifacts/transform/DefaultExtraExecutionGraphDependenciesResolverFactory$$Lambda$503 +instanceKlass org/gradle/api/internal/artifacts/transform/TransformUpstreamDependencies +instanceKlass org/gradle/api/internal/artifacts/transform/TransformationStep +instanceKlass org/gradle/api/internal/artifacts/transform/Transformation +instanceKlass org/gradle/api/internal/artifacts/transform/TransformUpstreamDependenciesResolver +instanceKlass org/gradle/api/internal/artifacts/transform/DefaultExtraExecutionGraphDependenciesResolverFactory +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/SelectedArtifactSet +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/BuildDependenciesOnlyVisitedArtifactSet +instanceKlass org/gradle/api/internal/artifacts/result/DefaultResolutionResult +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/StreamingResolutionResultBuilder$RootFactory +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/oldresult/DefaultResolvedGraphResults +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/DefaultVisitedFileDependencyResults +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/SelectedArtifactResults +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/DefaultVisitedArtifactResults +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/store/DefaultBinaryStore$SimpleBinaryData +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/oldresult/TransientConfigurationResultsBuilder$$Lambda$502 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/StreamingResolutionResultBuilder$$Lambda$501 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/oldresult/TransientConfigurationResultsBuilder$$Lambda$500 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/ResolvedArtifactsGraphVisitor$ArtifactsForNode +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/ResolvedArtifactSet$1 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/ArtifactBackedResolvedVariant +instanceKlass org/gradle/api/artifacts/type/ArtifactTypeDefinition +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/ResolvableArtifact +instanceKlass org/gradle/internal/model/CalculatedValue +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/DefaultArtifactSet +instanceKlass org/gradle/api/internal/artifacts/transform/VariantSelector$Factory +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/ResolvedVariantSet +instanceKlass org/gradle/internal/component/external/model/FixedComponentArtifacts +instanceKlass org/gradle/internal/component/model/ComponentArtifacts +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/CachingModuleComponentRepository$$Lambda$499 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/artifacts/DefaultCachedArtifacts +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/artifacts/AbstractArtifactsCache$ModuleArtifactsCacheEntry +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/artifacts/ArtifactsAtRepositoryKey +instanceKlass org/gradle/internal/component/model/WrappedComponentResolveMetadata +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$498 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$497 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$496 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/StreamingResolutionResultBuilder$$Lambda$495 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/oldresult/TransientConfigurationResultsBuilder$$Lambda$494 +instanceKlass org/gradle/api/internal/attributes/AttributeDesugaring$$Lambda$493 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/conflicts/VersionConflictResolutionDetails +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/oldresult/TransientConfigurationResultsBuilder$$Lambda$492 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/ComponentState$$Lambda$491 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/ComponentState$$Lambda$490 +instanceKlass org/gradle/api/internal/artifacts/result/DefaultResolvedVariantResult +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/ComponentSelectionReasons$DefaultComponentSelectionReason +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/StreamingResolutionResultBuilder$$Lambda$489 +instanceKlass org/gradle/internal/component/local/model/DefaultProjectComponentSelector +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/StreamingResolutionResultBuilder$$Lambda$488 +instanceKlass org/gradle/cache/internal/BinaryStore$WriteAction +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/ResolveState$$Lambda$487 +instanceKlass org/gradle/internal/component/model/DefaultSelectedByVariantMatchingConfigurationMetadata +instanceKlass org/gradle/internal/component/model/DefaultMultipleCandidateResult +instanceKlass org/gradle/internal/component/model/AttributeSelectionUtils +instanceKlass org/gradle/api/internal/attributes/DefaultAttributesSchema$ExtraAttributesEntry +instanceKlass org/gradle/internal/component/model/MultipleCandidateMatcher +instanceKlass org/gradle/internal/component/model/ComponentAttributeMatcher$CachedQuery +instanceKlass org/gradle/internal/component/model/LoggingAttributeMatchingExplanationBuilder +instanceKlass org/gradle/internal/component/model/AttributeMatchingExplanationBuilder$$Lambda$486 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/internal/component/model/AttributeMatchingExplanationBuilder +instanceKlass org/gradle/internal/component/model/AttributeConfigurationSelector +instanceKlass org/gradle/internal/component/external/model/DefaultConfigurationMetadata$1 +instanceKlass org/gradle/internal/component/external/model/DefaultConfigurationMetadata$2 +instanceKlass org/gradle/internal/component/external/model/DefaultConfigurationMetadata$Builder +instanceKlass org/gradle/api/internal/artifacts/repositories/metadata/DefaultMavenImmutableAttributesFactory$ComponentTypeEntry +instanceKlass org/gradle/internal/component/external/model/DefaultShadowedCapability +instanceKlass org/gradle/internal/component/external/model/ShadowedCapability +instanceKlass org/gradle/internal/component/external/model/maven/DefaultMavenModuleResolveMetadata$1 +instanceKlass org/gradle/internal/component/external/model/AbstractConfigurationMetadata +instanceKlass org/gradle/internal/component/model/ModuleConfigurationMetadata +instanceKlass org/gradle/internal/component/model/DefaultIvyArtifactName +instanceKlass org/gradle/api/artifacts/ArtifactIdentifier +instanceKlass org/gradle/internal/component/external/model/DefaultModuleComponentArtifactMetadata +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/RepositoryChainModuleSource +instanceKlass org/gradle/internal/resolve/ResolveExceptionAnalyzer +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/RepositoryChainModuleResolution +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/RepositoryChainComponentMetaDataResolver$1 +instanceKlass org/gradle/api/internal/artifacts/DefaultComponentSelection +instanceKlass org/gradle/api/internal/artifacts/repositories/resolver/ComponentMetadataAdapter +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/CachedMetadataProvider +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$485 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$484 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$483 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess$$Lambda$482 +instanceKlass org/gradle/internal/resolve/result/BuildableModuleComponentMetaDataResolveResult +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ComponentMetaDataResolveState +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolutionstrategy/DefaultCachePolicy$AbstractResolutionControl +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/dynamicversions/DefaultResolvedModuleVersion +instanceKlass org/gradle/internal/component/external/model/AbstractModuleComponentResolveMetadata +instanceKlass org/gradle/api/internal/artifacts/repositories/metadata/DefaultMetadataFileSource +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ModuleDescriptorHashModuleSource +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/parser/data/PomDependencyMgt +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/parser/GradlePomModuleDescriptorBuilder +instanceKlass org/gradle/internal/component/model/MutableModuleSources +instanceKlass org/gradle/api/capabilities/MutableCapabilitiesMetadata +instanceKlass org/gradle/internal/component/external/model/VariantMetadataRules +instanceKlass org/gradle/internal/component/external/model/maven/MavenModuleResolveMetadata +instanceKlass org/gradle/internal/component/external/model/MutableComponentVariant +instanceKlass org/gradle/internal/component/external/model/AbstractMutableModuleComponentResolveMetadata +instanceKlass org/gradle/internal/component/external/model/ExternalDependencyDescriptor +instanceKlass org/gradle/api/internal/attributes/DefaultImmutableAttributesFactory$$Lambda$481 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/ModuleMetadataSerializer$Reader +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/StringDeduplicatingDecoder +instanceKlass org/gradle/internal/resource/local/DefaultLocallyAvailableResource$$Lambda$480 +instanceKlass org/gradle/internal/resource/local/AbstractLocallyAvailableResource +instanceKlass org/gradle/api/internal/artifacts/ivyservice/WritableArtifactCacheLockingManager$CacheLockingPersistentCache$$Lambda$479 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/PersistentModuleMetadataCache$$Lambda$478 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/DefaultCachedMetadata +instanceKlass org/gradle/api/internal/artifacts/ivyservice/WritableArtifactCacheLockingManager$CacheLockingPersistentCache +instanceKlass org/gradle/cache/internal/CompositeCleanupAction$ScopedCleanupAction +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/ModuleMetadataCacheEntry +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/ModuleComponentAtRepositoryKey +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/conflicts/PotentialConflictFactory$NoConflict +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/conflicts/PotentialConflictFactory +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/conflicts/DefaultConflictHandler$$Lambda$477 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/selectors/SelectorStateResolverResults +instanceKlass org/gradle/api/artifacts/component/ProjectComponentSelector +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/strategy/AbstractVersionSelector +instanceKlass org/gradle/api/internal/artifacts/dependencies/DefaultResolvedVersionConstraint +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/ResolveState$$Lambda$476 +instanceKlass org/gradle/api/artifacts/ClientModule +instanceKlass org/gradle/internal/component/model/DefaultComponentOverrideMetadata +instanceKlass org/gradle/internal/component/model/ComponentOverrideMetadata +instanceKlass org/gradle/internal/resolve/result/BuildableComponentIdResolveResult +instanceKlass org/gradle/internal/resolve/result/ComponentIdResolveResult +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/ResolveState$$Lambda$475 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/SelectorState +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/ResolveState$SelectorCacheKey +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/LenientPlatformDependencyMetadata +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/DependencyGraphSelector +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/NodeState$$Lambda$474 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/NodeState$$Lambda$473 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/DependencyState +instanceKlass org/gradle/api/internal/attributes/AttributeValue$1 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/strict/StrictVersionConstraints +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/DefaultPendingDependenciesVisitor +instanceKlass org/gradle/internal/component/local/model/DslOriginDependencyMetadataWrapper +instanceKlass org/gradle/internal/component/local/model/DslOriginDependencyMetadata +instanceKlass org/gradle/internal/component/model/LocalComponentDependencyMetadata +instanceKlass org/gradle/api/internal/artifacts/ivyservice/moduleconverter/dependencies/AbstractIvyDependencyDescriptorFactory$$Lambda$472 +instanceKlass org/gradle/internal/component/external/model/DefaultModuleComponentSelector +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/DependencyGraphBuilder$1 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/selectors/SelectorStateResolver +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/ReplaceSelectionWithConflictResultAction +instanceKlass org/gradle/internal/component/model/SelectedByVariantMatchingConfigurationMetadata +instanceKlass org/gradle/api/internal/artifacts/ResolvedConfigurationIdentifier +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/ComponentState +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/DependencyGraphComponent +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/ModuleSelectors$$Lambda$471 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/ModuleSelectors$$Lambda$470 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/ModuleSelectors$$Lambda$469 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/ModuleSelectors$$Lambda$468 +instanceKlass java/util/Comparator$$Lambda$467 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/ModuleSelectors$$Lambda$466 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/ModuleSelectors$$Lambda$465 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass java/util/Collections$ReverseComparator2 +instanceKlass java/util/Collections$ReverseComparator +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/strategy/VersionParser$DefaultVersion +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/strategy/VersionParser$$Lambda$464 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/ModuleSelectors +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/PendingDependencies +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/selectors/ResolvableSelectorState +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/ResolveState$$Lambda$463 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/ModuleResolveState +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/conflicts/CandidateModule +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/ResolveOptimizations +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/DeselectVersionAction +instanceKlass org/gradle/api/internal/artifacts/ResolvedVersionConstraint +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/PendingDependenciesVisitor +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/ComponentResolutionState +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/StringVersioned +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/ResolveState +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/selectors/ComponentStateFactory +instanceKlass org/gradle/api/internal/WithEstimatedSize$Estimates +instanceKlass org/gradle/internal/component/model/DefaultVariantMetadata +instanceKlass org/gradle/internal/component/model/VariantResolveMetadata +instanceKlass org/gradle/api/internal/artifacts/ivyservice/moduleconverter/DefaultLocalComponentMetadataBuilder$1 +instanceKlass org/gradle/internal/component/model/ComponentConfigurationIdentifier +instanceKlass org/gradle/internal/component/model/VariantResolveMetadata$Identifier +instanceKlass org/gradle/internal/component/local/model/RootLocalComponentMetadata$RootLocalConfigurationMetadata$$Lambda$462 +instanceKlass org/gradle/internal/component/external/model/ShadowedCapabilityOnly +instanceKlass org/gradle/internal/component/external/model/ImmutableCapabilities +instanceKlass org/gradle/api/internal/artifacts/configurations/Configurations +instanceKlass org/gradle/internal/component/model/ImmutableModuleSources +instanceKlass org/gradle/internal/component/local/model/RootConfigurationMetadata +instanceKlass org/gradle/internal/component/local/model/DefaultLocalComponentMetadata$DefaultLocalConfigurationMetadata +instanceKlass org/gradle/internal/component/local/model/LocalConfigurationMetadata +instanceKlass org/gradle/internal/component/local/model/BuildableLocalConfigurationMetadata +instanceKlass org/gradle/api/internal/artifacts/DefaultModuleVersionIdentifier +instanceKlass org/gradle/api/internal/artifacts/DefaultImmutableModuleIdentifierFactory$$Lambda$461 +instanceKlass org/gradle/api/internal/artifacts/DefaultImmutableModuleIdentifierFactory$$Lambda$460 +instanceKlass org/gradle/api/internal/artifacts/DefaultModule +instanceKlass org/gradle/internal/resolve/result/DefaultResourceAwareResolveResult +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/ResolvedArtifactsGraphVisitor +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/ResolutionConflictTracker +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/DependencyGraphBuilder$$Lambda$459 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/DependencyGraphBuilder$$Lambda$458 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/EdgeState +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/DependencyGraphEdge +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/RootGraphNode +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/NodeState +instanceKlass org/gradle/internal/resolve/result/BuildableComponentResolveResult +instanceKlass org/gradle/internal/resolve/result/ComponentResolveResult +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/builder/DependencyGraphBuilder +instanceKlass org/gradle/api/internal/artifacts/ivyservice/dependencysubstitution/DependencySubstitutionApplicator$$Lambda$457 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/dependencysubstitution/DependencySubstitutionApplicator$SubstitutionResult +instanceKlass org/gradle/api/internal/artifacts/ivyservice/dependencysubstitution/NoOpSubstitution +instanceKlass org/gradle/api/internal/artifacts/DependencySubstitutionInternal +instanceKlass org/gradle/api/internal/artifacts/DefaultGlobalDependencyResolutionRules$CompositeDependencySubstitutionRules$$Lambda$456 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/conflicts/RejectRemainingCandidates +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/conflicts/LastCandidateCapabilityResolver +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/conflicts/UserConfiguredCapabilityResolver +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/conflicts/PotentialConflict +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/conflicts/CapabilitiesConflictHandler$Candidate +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/conflicts/DefaultCapabilitiesConflictHandler +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/conflicts/ConflictContainer +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/conflicts/CompositeConflictResolver +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/ConflictResolverDetails +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/conflicts/DefaultConflictHandler +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/LatestModuleConflictResolver +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/ModuleConflictResolver +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/ConflictResolverFactory +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/DefaultArtifactDependencyResolver$DefaultResolveContextToComponentResolver +instanceKlass org/gradle/api/internal/artifacts/ivyservice/clientmodule/ClientModuleResolver +instanceKlass org/gradle/internal/resolve/resolver/DefaultArtifactSelector +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/ComponentResolversChain$ArtifactResolverChain +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingArtifactResolver +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/ComponentResolversChain$ComponentMetaDataResolverChain +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/ComponentResolversChain$DependencyToComponentIdResolverChain +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/VirtualComponentMetadataResolver +instanceKlass org/gradle/internal/resolve/resolver/ArtifactSelector +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/ComponentResolversChain +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/FilteredModuleComponentRepository +instanceKlass org/gradle/api/internal/artifacts/repositories/DefaultMavenArtifactRepository$$Lambda$455 +instanceKlass org/gradle/api/internal/artifacts/repositories/DefaultRepositoryContentDescriptor +instanceKlass org/gradle/api/artifacts/repositories/MavenRepositoryContentDescriptor +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository$ErrorHandlingModuleComponentRepositoryAccess +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ErrorHandlingModuleComponentRepository +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/BaseModuleComponentRepository +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/CachingModuleComponentRepository$ResolveAndCacheRepositoryAccess +instanceKlass org/gradle/internal/resolve/result/BuildableArtifactSetResolveResult +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/CachingModuleComponentRepository$LocateInCacheRepositoryAccess +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/CachingModuleComponentRepository +instanceKlass org/gradle/api/internal/artifacts/dsl/DefaultComponentMetadataProcessor$$Lambda$454 +instanceKlass org/gradle/api/internal/artifacts/dsl/WrappingComponentMetadataContext +instanceKlass org/gradle/api/artifacts/ComponentMetadataContext +instanceKlass org/gradle/api/artifacts/ComponentMetadataDetails +instanceKlass org/gradle/api/internal/artifacts/dsl/DefaultComponentMetadataProcessor +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ResolveIvyFactory$DefaultMetadataResolutionContext +instanceKlass org/gradle/api/internal/artifacts/repositories/resolver/ExternalResourceResolver$AbstractRepositoryAccess +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ModuleComponentRepositoryAccess +instanceKlass org/gradle/api/internal/artifacts/repositories/resolver/VersionLister +instanceKlass org/gradle/api/internal/artifacts/repositories/AbstractArtifactRepository$1 +instanceKlass org/gradle/api/internal/artifacts/repositories/metadata/DefaultImmutableMetadataSources +instanceKlass org/gradle/api/internal/artifacts/repositories/metadata/MavenMetadataArtifactProvider +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/parser/DescriptorParseContext +instanceKlass org/gradle/internal/component/model/ModuleDescriptorArtifactMetadata +instanceKlass org/gradle/api/internal/artifacts/repositories/metadata/GradleModuleMetadataCompatibilityConverter +instanceKlass org/gradle/api/internal/artifacts/repositories/DefaultMavenArtifactRepository$MavenSnapshotDecoratingSource +instanceKlass org/gradle/internal/resource/transfer/CacheAwareExternalResourceAccessor$ResourceFileStore +instanceKlass org/gradle/internal/resource/ExternalResource$ContentAndMetadataAction +instanceKlass org/gradle/internal/resource/transfer/DefaultCacheAwareExternalResourceAccessor +instanceKlass org/gradle/internal/resource/transport/DefaultExternalResourceRepository +instanceKlass org/gradle/internal/resource/transfer/ProgressLoggingExternalResourceLister$1 +instanceKlass org/gradle/internal/resource/ExternalResourceListBuildOperationType$Result +instanceKlass org/gradle/internal/resource/transfer/ProgressLoggingExternalResourceAccessor$1 +instanceKlass org/gradle/internal/resource/ExternalResourceReadMetadataBuildOperationType$Result +instanceKlass org/gradle/internal/resource/transfer/AbstractProgressLoggingHandler +instanceKlass org/gradle/internal/resource/transfer/CacheAwareExternalResourceAccessor +instanceKlass org/gradle/internal/resource/transport/AbstractRepositoryTransport +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolutionstrategy/DefaultExternalResourceCachePolicy +instanceKlass org/gradle/internal/resource/transfer/DefaultExternalResourceConnector$NoOpStats +instanceKlass org/gradle/internal/resource/transfer/DefaultExternalResourceConnector$1 +instanceKlass org/gradle/internal/resource/transfer/DefaultExternalResourceConnector$ExternalResourceAccessStats +instanceKlass org/gradle/internal/resource/transfer/DefaultExternalResourceConnector +instanceKlass org/apache/http/HttpEntityEnclosingRequest +instanceKlass org/apache/http/HttpEntity +instanceKlass org/gradle/internal/resource/transport/http/HttpResourceUploader +instanceKlass org/gradle/internal/resource/transport/http/HttpResourceLister +instanceKlass org/gradle/internal/resource/transfer/ExternalResourceReadResponse +instanceKlass org/gradle/internal/resource/transfer/AbstractExternalResourceAccessor +instanceKlass org/apache/http/message/AbstractHttpMessage +instanceKlass org/apache/http/client/methods/AbortableHttpRequest +instanceKlass org/apache/http/client/methods/HttpExecutionAware +instanceKlass org/apache/http/client/methods/Configurable +instanceKlass org/apache/http/client/methods/HttpUriRequest +instanceKlass org/apache/http/protocol/HttpContext +instanceKlass org/slf4j/spi/LocationAwareLogger +instanceKlass org/apache/commons/logging/impl/SLF4JLog +instanceKlass org/apache/commons/logging/impl/SLF4JLocationAwareLog +instanceKlass org/apache/commons/logging/Log +instanceKlass org/apache/commons/logging/LogFactory +instanceKlass org/apache/http/conn/ssl/DefaultHostnameVerifier +instanceKlass org/gradle/internal/resource/transport/http/DefaultHttpSettings$Builder +instanceKlass org/gradle/internal/resource/transport/http/DefaultHttpSettings$2$2 +instanceKlass javax/net/ssl/X509TrustManager +instanceKlass javax/net/ssl/TrustManager +instanceKlass org/gradle/internal/resource/transport/http/DefaultHttpSettings$2$1 +instanceKlass org/gradle/internal/resource/transport/http/DefaultHttpSettings$2 +instanceKlass org/gradle/internal/resource/transport/http/DefaultHttpSettings$1 +instanceKlass org/gradle/internal/resource/transport/http/HttpTimeoutSettings +instanceKlass org/gradle/internal/resource/transport/http/HttpProxySettings +instanceKlass javax/net/ssl/HostnameVerifier +instanceKlass org/gradle/internal/resource/transport/http/DefaultHttpSettings +instanceKlass org/gradle/api/internal/artifacts/repositories/transport/RepositoryTransportFactory$DefaultResourceConnectorSpecification +instanceKlass org/gradle/internal/verifier/HttpRedirectVerifierFactory$$Lambda$453 +instanceKlass org/gradle/internal/verifier/HttpRedirectVerifierFactory +instanceKlass org/gradle/api/internal/artifacts/repositories/DefaultUrlArtifactRepository$$Lambda$452 +instanceKlass org/gradle/api/internal/artifacts/repositories/DefaultUrlArtifactRepository$$Lambda$451 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ResolveIvyFactory$ParentModuleLookupResolver +instanceKlass org/gradle/internal/resolve/result/BuildableComponentArtifactsResolveResult +instanceKlass org/gradle/internal/resolve/result/BuildableTypedResolveResult +instanceKlass org/gradle/internal/resolve/result/ErroringResolveResult +instanceKlass org/gradle/internal/resolve/result/ResolveResult +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/RepositoryChainArtifactResolver +instanceKlass org/gradle/internal/resolve/result/ResourceAwareResolveResult +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/RepositoryChainComponentMetaDataResolver +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/DynamicVersionResolver +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/RepositoryChainDependencyToComponentIdResolver +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/UserResolverChain$ModuleTransformer +instanceKlass org/gradle/api/specs/NotSpec +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ComponentSelectionRulesProcessor$$Lambda$450 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ComponentSelectionRulesProcessor +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/MetadataProvider +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/Versioned +instanceKlass org/gradle/api/internal/artifacts/ComponentSelectionInternal +instanceKlass org/gradle/api/artifacts/ComponentSelection +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/DefaultVersionedComponentChooser +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/VersionedComponentChooser +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/UserResolverChain +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/CompositeDependencyArtifactsVisitor +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/ValidatingArtifactsVisitor +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/CompositeDependencyGraphVisitor +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/oldresult/ResolutionFailureCollector +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/VisitedFileDependencyResults +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/FileDependencyCollectingGraphVisitor +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/ArtifactSet +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/VisitedArtifactsResults +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/DefaultResolvedArtifactsBuilder +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/DefaultComponentSelectionDescriptor +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/ComponentSelectionReasonInternal +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/ComponentSelectionDescriptorInternal +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/ComponentSelectionReasons +instanceKlass org/gradle/api/internal/artifacts/ivyservice/dependencysubstitution/DefaultDependencySubstitutions$ProjectPathConverter +instanceKlass org/gradle/api/artifacts/DependencySubstitutions$Substitution +instanceKlass org/gradle/api/internal/artifacts/ivyservice/dependencysubstitution/DefaultDependencySubstitutions +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolutionstrategy/DefaultCachePolicy$$Lambda$449 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolutionstrategy/DefaultCachePolicy$$Lambda$448 +instanceKlass org/gradle/api/internal/artifacts/cache/ArtifactResolutionControl +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolutionstrategy/DefaultCachePolicy$$Lambda$447 +instanceKlass org/gradle/api/internal/artifacts/cache/ModuleResolutionControl +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolutionstrategy/DefaultCachePolicy$$Lambda$446 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/api/internal/artifacts/cache/DependencyResolutionControl +instanceKlass org/gradle/api/internal/artifacts/cache/ResolutionControl +instanceKlass org/gradle/api/internal/artifacts/configurations/MutationValidator$$Lambda$445 +instanceKlass org/gradle/internal/typeconversion/FlatteningNotationParser +instanceKlass org/gradle/api/artifacts/DependencySubstitution +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolutionstrategy/DefaultComponentSelectionRules +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolutionstrategy/DefaultCachePolicy +instanceKlass org/gradle/api/internal/artifacts/ComponentSelectionRulesInternal +instanceKlass org/gradle/api/artifacts/ComponentSelectionRules +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolutionstrategy/DefaultResolutionStrategy +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/conflicts/UpgradeCapabilityResolver +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolutionstrategy/DefaultCapabilitiesResolution$DefaultCapabilityResolutionDetails +instanceKlass org/gradle/api/artifacts/CapabilityResolutionDetails +instanceKlass org/gradle/internal/component/external/model/DefaultComponentVariantIdentifier +instanceKlass org/gradle/api/artifacts/ComponentVariantIdentifier +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/conflicts/CapabilitiesConflictHandler$CandidateDetails +instanceKlass org/gradle/internal/component/external/model/ImmutableCapability +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/conflicts/CapabilitiesConflictHandler$ResolutionDetails +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/conflicts/ConflictResolutionResult +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolutionstrategy/DefaultCapabilitiesResolution +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolutionstrategy/CapabilitiesResolutionInternal +instanceKlass org/gradle/api/artifacts/CapabilitiesResolution +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/projectresult/ResolvedLocalComponentsResultGraphVisitor +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/ComponentResultSerializer +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/ResolvedGraphDependency +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/DependencyResultSerializer +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/ResolvedGraphComponent +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/StreamingResolutionResultBuilder +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/DependencyGraphNode +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/oldresult/ResolvedConfigurationDependencyGraphVisitor +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/oldresult/ResolvedGraphResults +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/oldresult/DefaultResolvedConfigurationBuilder +instanceKlass org/gradle/api/internal/artifacts/ResolvedConfigurationIdentifierSerializer +instanceKlass org/gradle/api/artifacts/ResolvedDependency +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/oldresult/TransientConfigurationResults +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/oldresult/TransientConfigurationResultsBuilder +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/store/CachedStoreFactory$SimpleStore +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/store/CachedStoreFactory$Stats +instanceKlass org/gradle/cache/internal/Store +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/store/CachedStoreFactory +instanceKlass org/gradle/cache/internal/BinaryStore$BinaryData +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/store/DefaultBinaryStore +instanceKlass java/io/DeleteOnExitHook$1 +instanceKlass java/io/DeleteOnExitHook +instanceKlass org/gradle/cache/internal/BinaryStore +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/store/ResolutionResultsStoreFactory$1 +instanceKlass org/gradle/api/internal/CompositeDomainObjectSet$2 +instanceKlass org/gradle/api/internal/CompositeDomainObjectSet$1 +instanceKlass org/gradle/api/internal/CompositeDomainObjectSet$ItemNotInCompositeSpec +instanceKlass org/gradle/api/internal/CompositeDomainObjectSet$ItemIsUniqueInCompositeSpec +instanceKlass org/gradle/api/internal/CompositeDomainObjectSet$DomainObjectCompositeCollection +instanceKlass org/gradle/api/internal/artifacts/DefaultResolverResults +instanceKlass org/gradle/api/internal/attributes/ImmutableAttributeContainerWithErrorMessage +instanceKlass org/gradle/api/internal/artifacts/repositories/AbstractAuthenticationSupportedRepository$$Lambda$444 +instanceKlass org/gradle/api/internal/artifacts/repositories/descriptor/UrlRepositoryDescriptor$Builder +instanceKlass org/gradle/api/internal/artifacts/configurations/ResolveConfigurationResolutionBuildOperationDetails$RepositoryImpl$$Lambda$443 +instanceKlass org/gradle/api/internal/artifacts/configurations/ResolveConfigurationResolutionBuildOperationDetails$RepositoryImpl +instanceKlass org/gradle/api/internal/artifacts/configurations/ResolveConfigurationDependenciesBuildOperationType$Repository +instanceKlass org/gradle/api/internal/artifacts/DefaultDependencyManagementServices$DependencyResolutionScopeServices$$Lambda$442 +instanceKlass org/gradle/api/internal/artifacts/configurations/ResolveConfigurationResolutionBuildOperationDetails +instanceKlass org/gradle/api/internal/artifacts/configurations/ResolveConfigurationDependenciesBuildOperationType$Details +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfiguration$1 +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfiguration$$Lambda$441 +instanceKlass org/gradle/api/internal/artifacts/dependencies/AbstractExternalModuleDependency$$Lambda$440 +instanceKlass org/gradle/api/internal/initialization/RootScriptDomainObjectContext$CalculatedModelValueImpl +instanceKlass org/gradle/api/artifacts/ConfigurationVariant +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfigurationPublications$ConfigurationVariantFactory +instanceKlass org/gradle/api/internal/artifacts/DefaultPublishArtifactSet$ArtifactsFileCollection +instanceKlass org/gradle/api/internal/tasks/AbstractTaskDependency$1 +instanceKlass org/gradle/api/internal/tasks/AbstractTaskDependency +instanceKlass org/gradle/api/internal/file/collections/MinimalFileSet +instanceKlass org/gradle/api/internal/artifacts/DefaultDependencySet$MutationValidationAction +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfiguration$$Lambda$439 +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfiguration$ConfigurationDescription +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfiguration$ArtifactSetResult +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfiguration$ArtifactCollectionResolvedArtifactsFactory +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfiguration$AllArtifactsProvider +instanceKlass org/gradle/api/internal/artifacts/configurations/PublishArtifactSetProvider +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfiguration$ArtifactViewConfiguration +instanceKlass org/gradle/api/artifacts/ArtifactView$ViewConfiguration +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfiguration$DefaultResolutionHost +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfiguration$SelectedArtifactsProvider +instanceKlass org/gradle/api/internal/attributes/DefaultMutableAttributeContainer +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfiguration$$Lambda$438 +instanceKlass org/gradle/internal/lazy/Lazy$$Lambda$437 +instanceKlass org/gradle/internal/lazy/UnsafeLazy +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfiguration$$Lambda$436 +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfiguration$$Lambda$435 +instanceKlass org/gradle/api/artifacts/DependencyConstraint +instanceKlass org/gradle/api/artifacts/ExcludeRule +instanceKlass org/gradle/api/internal/file/collections/FileSystemMirroringFileTree +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfigurationPublications +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfiguration$ConfigurationResolvableDependencies +instanceKlass org/gradle/api/internal/artifacts/configurations/ResolvableDependenciesInternal +instanceKlass org/gradle/api/internal/DelegatingDomainObjectSet +instanceKlass org/gradle/api/internal/artifacts/configurations/OutgoingVariant +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfiguration$ConfigurationArtifactCollection +instanceKlass org/gradle/api/internal/artifacts/configurations/ArtifactCollectionInternal +instanceKlass org/gradle/api/artifacts/ArtifactCollection +instanceKlass org/gradle/internal/deprecation/DeprecationMessageBuilder$WithDocumentation +instanceKlass org/gradle/internal/logging/text/TreeFormatter +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfiguration$ResolveState +instanceKlass org/gradle/api/internal/artifacts/ResolverResults +instanceKlass org/gradle/api/internal/artifacts/configurations/ResolutionResultProvider +instanceKlass org/gradle/api/internal/artifacts/configurations/ResolutionHost +instanceKlass org/gradle/api/artifacts/ResolvableDependencies +instanceKlass org/gradle/api/artifacts/ArtifactView +instanceKlass org/gradle/api/artifacts/ConfigurationPublications +instanceKlass org/gradle/api/artifacts/DependencyConstraintSet +instanceKlass org/gradle/api/artifacts/DependencySet +instanceKlass org/gradle/api/artifacts/PublishArtifactSet +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/projectresult/ResolvedProjectConfiguration +instanceKlass org/gradle/api/internal/artifacts/configurations/DetachedConfigurationsProvider +instanceKlass org/gradle/internal/locking/NoOpDependencyLockingProvider +instanceKlass org/gradle/api/internal/artifacts/dependencies/AbstractVersionConstraint +instanceKlass org/gradle/api/internal/artifacts/VersionConstraintInternal +instanceKlass org/gradle/api/artifacts/MutableVersionConstraint +instanceKlass org/gradle/api/internal/artifacts/DefaultExcludeRuleContainer +instanceKlass org/gradle/api/artifacts/ExcludeRuleContainer +instanceKlass org/gradle/api/internal/artifacts/dependencies/ModuleDependencyCapabilitiesInternal +instanceKlass org/gradle/api/artifacts/ModuleDependencyCapabilitiesHandler +instanceKlass org/gradle/api/artifacts/DependencyArtifact +instanceKlass org/gradle/api/internal/artifacts/dependencies/AbstractDependency +instanceKlass org/gradle/api/internal/artifacts/ResolvableDependency +instanceKlass org/gradle/api/artifacts/ExternalModuleDependency +instanceKlass org/gradle/api/artifacts/ExternalDependency +instanceKlass org/gradle/internal/composite/DefaultBuildIncluder$$Lambda$434 +instanceKlass org/gradle/plugin/use/internal/DefaultPluginRequestApplicator$NotFound +instanceKlass org/gradle/api/plugins/quality/internal/AbstractCodeQualityPlugin +instanceKlass org/gradle/api/plugins/ApplicationPlugin$PreventDestinationOverwrite +instanceKlass org/gradle/api/plugins/ApplicationPlugin +instanceKlass org/gradle/plugin/use/resolve/internal/SimplePluginResolution +instanceKlass org/gradle/api/plugins/JavaPlugin$BuildableJavaComponentImpl +instanceKlass org/gradle/api/internal/component/BuildableJavaComponent +instanceKlass org/gradle/api/plugins/JavaPlugin +instanceKlass org/gradle/api/internal/artifacts/dsl/ModuleVersionSelectorParsers$StringConverter +instanceKlass org/gradle/api/internal/artifacts/dsl/ModuleVersionSelectorParsers +instanceKlass org/gradle/plugin/management/internal/DefaultPluginResolveDetails +instanceKlass org/gradle/plugin/management/PluginResolveDetails +instanceKlass org/gradle/plugin/use/internal/DefaultPluginRequestApplicator$$Lambda$433 +instanceKlass org/gradle/plugin/use/internal/DefaultPluginRequestApplicator$Result +instanceKlass org/gradle/plugin/use/resolve/internal/AlreadyOnClasspathPluginResolver +instanceKlass org/gradle/plugin/use/resolve/internal/ArtifactRepositoriesPluginResolver +instanceKlass org/gradle/plugin/use/internal/PluginResolverFactory$$Lambda$432 +instanceKlass org/gradle/plugin/use/resolve/internal/CorePluginResolver +instanceKlass org/gradle/plugin/use/resolve/internal/PluginResolution +instanceKlass org/gradle/plugin/use/resolve/internal/NoopPluginResolver +instanceKlass org/gradle/plugin/use/resolve/internal/CompositePluginResolver +instanceKlass org/gradle/api/internal/DefaultNamedDomainObjectCollection$ObjectBackedElementInfo +instanceKlass org/gradle/api/internal/artifacts/repositories/DefaultBaseRepositoryFactory$$Lambda$431 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/api/internal/artifacts/repositories/DefaultMavenArtifactRepository$$Lambda$430 +instanceKlass org/gradle/api/internal/artifacts/repositories/AbstractArtifactRepository$$Lambda$429 +instanceKlass com/google/common/base/Suppliers$MemoizingSupplier +instanceKlass com/google/common/base/Suppliers$NonSerializableMemoizingSupplier +instanceKlass org/gradle/api/internal/artifacts/repositories/AbstractArtifactRepository$$Lambda$428 +instanceKlass org/gradle/api/internal/artifacts/repositories/DefaultMavenArtifactRepository$$Lambda$427 +instanceKlass org/gradle/api/internal/artifacts/repositories/ArtifactResolutionDetails +instanceKlass org/gradle/internal/resolve/caching/ImplicitInputsCapturingInstantiator +instanceKlass org/gradle/api/internal/artifacts/repositories/AuthenticationSupporter +instanceKlass org/gradle/api/artifacts/repositories/PasswordCredentials +instanceKlass org/gradle/api/credentials/PasswordCredentials +instanceKlass org/gradle/api/credentials/Credentials +instanceKlass org/gradle/api/internal/artifacts/repositories/DefaultMavenArtifactRepository$MavenMetadataSources +instanceKlass org/gradle/api/internal/artifacts/repositories/DefaultUrlArtifactRepository +instanceKlass org/gradle/api/internal/artifacts/repositories/metadata/AbstractMetadataSource +instanceKlass org/gradle/api/internal/artifacts/repositories/metadata/DefaultMavenPomMetadataSource$MavenMetadataValidator +instanceKlass org/gradle/api/internal/artifacts/repositories/maven/MavenMetadataLoader +instanceKlass org/gradle/api/internal/artifacts/repositories/resolver/ExternalResourceResolver +instanceKlass org/gradle/api/internal/artifacts/repositories/resolver/ExternalResourceArtifactResolver +instanceKlass org/gradle/api/internal/artifacts/ModuleVersionPublisher +instanceKlass org/gradle/api/internal/artifacts/repositories/metadata/ImmutableMetadataSources +instanceKlass org/gradle/api/internal/artifacts/repositories/metadata/MetadataSource +instanceKlass org/gradle/api/artifacts/repositories/MavenArtifactRepository$MetadataSources +instanceKlass org/gradle/api/internal/artifacts/repositories/metadata/MetadataArtifactProvider +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ConfiguredModuleComponentRepository +instanceKlass org/gradle/api/internal/artifacts/repositories/descriptor/RepositoryDescriptor +instanceKlass org/gradle/api/internal/artifacts/repositories/RepositoryContentDescriptorInternal +instanceKlass org/gradle/api/artifacts/repositories/RepositoryResourceAccessor +instanceKlass org/gradle/api/internal/DefaultPolymorphicDomainObjectContainer$2 +instanceKlass org/gradle/api/internal/DefaultPolymorphicNamedEntityInstantiator +instanceKlass org/gradle/api/internal/PolymorphicNamedEntityInstantiator +instanceKlass org/gradle/api/internal/artifacts/repositories/AbstractArtifactRepository +instanceKlass org/gradle/api/internal/artifacts/repositories/ContentFilteringRepository +instanceKlass org/gradle/api/internal/artifacts/repositories/ArtifactRepositoryInternal +instanceKlass org/gradle/internal/artifacts/repositories/AuthenticationSupportedInternal +instanceKlass org/gradle/api/internal/artifacts/repositories/PublicationAwareRepository +instanceKlass org/gradle/api/internal/artifacts/repositories/ResolutionAwareRepository +instanceKlass org/gradle/api/internal/artifacts/repositories/DefaultBaseRepositoryFactory$NamedMavenRepositoryDescriber +instanceKlass org/gradle/plugin/use/internal/DefaultPluginArtifactRepositories +instanceKlass org/gradle/plugin/management/internal/MultiPluginRequests +instanceKlass org/gradle/plugin/use/internal/PluginRequestCollector$2 +instanceKlass org/gradle/plugin/use/internal/PluginRequestCollector$1 +instanceKlass com/google/common/base/Strings +instanceKlass org/gradle/plugin/use/internal/PluginRequestCollector$PluginDependencySpecImpl +instanceKlass org/gradle/plugin/use/PluginDependency +instanceKlass org/gradle/api/provider/ProviderConvertible +instanceKlass org/gradle/plugin/use/PluginDependencySpec +instanceKlass org/gradle/plugin/use/internal/PluginRequestCollector$PluginDependenciesSpecImpl +instanceKlass org/gradle/plugin/use/PluginDependenciesSpec +instanceKlass org/codehaus/groovy/runtime/metaclass/ClosureMetaClass$StandardClosureChooser +instanceKlass org/gradle/internal/service/scopes/ProjectScopeServices$$Lambda$426 +instanceKlass org/gradle/plugin/use/internal/PluginRequestCollector +instanceKlass org/gradle/api/artifacts/VersionCatalogsExtension +instanceKlass org/gradle/configuration/ProjectScriptTarget +instanceKlass org/gradle/internal/build/event/types/DefaultScriptPluginIdentifier +instanceKlass org/gradle/configuration/project/BuildScriptProcessor$$Lambda$425 +instanceKlass org/gradle/internal/service/scopes/ProjectScopeServices$ScriptScopedContext +instanceKlass org/gradle/internal/service/scopes/ProjectScopeServices$ProjectBackedModuleMetaDataProvider +instanceKlass org/gradle/internal/service/scopes/ProjectBackedPropertyHost +instanceKlass org/gradle/nativeplatform/internal/CompilerOutputFileNamingScheme +instanceKlass org/gradle/api/artifacts/type/ArtifactTypeContainer +instanceKlass org/gradle/buildinit/plugins/WrapperPlugin$$Lambda$424 +instanceKlass org/gradle/buildinit/plugins/WrapperPlugin +instanceKlass org/gradle/buildinit/plugins/BuildInitPlugin$$Lambda$423 +instanceKlass org/gradle/api/internal/collections/AbstractIterationOrderRetainingElementSource$ValuePointer +instanceKlass org/gradle/buildinit/plugins/BuildInitPlugin$InitBuildOnlyIfSpec +instanceKlass org/gradle/buildinit/plugins/BuildInitPlugin$InitBuildDependsOnCallable +instanceKlass org/gradle/buildinit/plugins/BuildInitPlugin$FileDetails +instanceKlass org/gradle/buildinit/plugins/BuildInitPlugin +instanceKlass org/gradle/kotlin/dsl/tooling/builders/KotlinDslScriptsModelBuilder +instanceKlass kotlin/collections/ArraysUtilJVM +instanceKlass kotlin/collections/ArraysKt__ArraysJVMKt +instanceKlass kotlin/collections/CollectionsKt__CollectionsJVMKt +instanceKlass org/gradle/kotlin/dsl/tooling/builders/KotlinBuildScriptTemplateModelBuilder +instanceKlass org/gradle/kotlin/dsl/tooling/builders/KotlinBuildScriptModelBuilder +instanceKlass org/gradle/tooling/internal/protocol/cpp/InternalCppTestSuite +instanceKlass org/gradle/tooling/internal/protocol/cpp/InternalCppLibrary +instanceKlass org/gradle/tooling/internal/protocol/cpp/InternalCppApplication +instanceKlass org/gradle/language/cpp/internal/tooling/DefaultCppComponentModel +instanceKlass org/gradle/language/cpp/CppComponent +instanceKlass org/gradle/language/ComponentWithTargetMachines +instanceKlass org/gradle/language/ComponentWithDependencies +instanceKlass org/gradle/language/ComponentWithBinaries +instanceKlass org/gradle/api/component/SoftwareComponent +instanceKlass org/gradle/language/cpp/internal/tooling/CppModelBuilder +instanceKlass org/gradle/plugins/ide/internal/tooling/BuildEnvironmentBuilder +instanceKlass org/gradle/plugins/ide/internal/tooling/PublicationsBuilder +instanceKlass org/gradle/plugins/ide/internal/tooling/model/TaskNameComparator +instanceKlass org/gradle/plugins/ide/internal/tooling/BuildInvocationsBuilder +instanceKlass org/gradle/plugins/ide/internal/tooling/BasicIdeaModelBuilder +instanceKlass org/gradle/plugins/ide/internal/tooling/model/PartialBasicGradleProject +instanceKlass org/gradle/plugins/ide/internal/tooling/GradleBuildBuilder +instanceKlass org/gradle/tooling/provider/model/internal/BuildScopeModelBuilder +instanceKlass org/gradle/plugins/ide/internal/configurer/HierarchicalElementAdapter +instanceKlass org/gradle/plugins/ide/internal/configurer/EclipseModelAwareUniqueProjectNameProvider +instanceKlass org/gradle/plugins/ide/eclipse/model/AbstractClasspathEntry +instanceKlass org/gradle/plugins/ide/eclipse/model/ClasspathEntry +instanceKlass org/objectweb/asm/Opcodes +instanceKlass org/gradle/plugins/ide/internal/tooling/EclipseModelBuilder +instanceKlass org/gradle/plugins/ide/internal/tooling/RunEclipseTasksBuilder +instanceKlass org/gradle/plugins/ide/internal/tooling/RunBuildDependenciesTaskBuilder +instanceKlass org/gradle/tooling/provider/model/ParameterizedToolingModelBuilder +instanceKlass org/gradle/tooling/model/GradleModuleVersion +instanceKlass org/gradle/tooling/model/idea/IdeaDependencyScope +instanceKlass org/gradle/tooling/model/idea/IdeaCompilerOutput +instanceKlass org/gradle/tooling/model/idea/IdeaLanguageLevel +instanceKlass org/gradle/plugins/ide/internal/tooling/IdeaModelBuilder +instanceKlass org/gradle/plugins/ide/internal/tooling/model/LaunchableGradleTask +instanceKlass org/gradle/tooling/internal/protocol/InternalLaunchable +instanceKlass org/gradle/tooling/internal/gradle/GradleProjectIdentity +instanceKlass org/gradle/tooling/internal/gradle/GradleBuildIdentity +instanceKlass org/gradle/plugins/ide/internal/tooling/GradleProjectBuilder +instanceKlass org/gradle/internal/service/scopes/BuildScopeServices$$Lambda$422 +instanceKlass org/gradle/tooling/provider/model/internal/DefaultToolingModelBuilderRegistry$RegistrationImpl +instanceKlass org/gradle/tooling/provider/model/internal/DefaultToolingModelBuilderRegistry$VoidToolingModelBuilder +instanceKlass org/gradle/tooling/provider/model/internal/ToolingModelBuilderLookup$Builder +instanceKlass org/gradle/tooling/provider/model/internal/ToolingModelBuilderLookup$Registration +instanceKlass org/gradle/plugins/ide/internal/tooling/ToolingModelServices$BuildScopeToolingServices$1 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/projectmodule/DefaultProjectPublicationRegistry +instanceKlass org/gradle/api/internal/project/DefaultProjectTaskLister +instanceKlass org/gradle/jvm/toolchain/internal/task/ShowToolchainsTaskConfigurator$$Lambda$421 +instanceKlass org/gradle/api/internal/provider/Collectors$SingleElement +instanceKlass org/gradle/api/internal/collections/FilteredCollection$FilteringIterator +instanceKlass org/gradle/api/internal/collections/CollectionFilter$1 +instanceKlass org/gradle/api/plugins/HelpTasksPlugin$$Lambda$420 +instanceKlass org/gradle/api/internal/DefaultNamedDomainObjectCollection$FilteredIndex +instanceKlass org/gradle/api/internal/collections/DefaultCollectionEventRegister$FilteredEventRegister +instanceKlass org/gradle/api/internal/collections/FilteredCollection +instanceKlass org/gradle/api/specs/Specs$2 +instanceKlass org/gradle/api/specs/Specs$1 +instanceKlass org/gradle/api/specs/Specs +instanceKlass org/gradle/api/internal/tasks/DefaultRealizableTaskCollection +instanceKlass org/gradle/api/plugins/HelpTasksPlugin$$Lambda$419 +instanceKlass org/apache/commons/lang/text/StrTokenizer +instanceKlass org/apache/commons/lang/text/StrBuilder +instanceKlass org/objectweb/asm/Handle +instanceKlass org/objectweb/asm/Context +instanceKlass org/objectweb/asm/ClassReader +instanceKlass org/gradle/api/internal/DefaultNamedDomainObjectCollection$ProviderBackedElementInfo +instanceKlass org/gradle/api/internal/DefaultNamedDomainObjectCollection$ElementInfo +instanceKlass org/gradle/api/internal/provider/Collectors$ElementFromProvider +instanceKlass org/gradle/api/internal/provider/Collectors$TypedCollector +instanceKlass org/gradle/api/internal/provider/Collectors$ProvidedCollector +instanceKlass org/gradle/api/internal/provider/ChangingValue +instanceKlass org/gradle/configuration/internal/DefaultUserCodeApplicationContext$CurrentApplication$1 +instanceKlass org/gradle/api/internal/DefaultCollectionCallbackActionDecorator$BuildOperationEmittingAction +instanceKlass org/gradle/api/internal/DefaultMutationGuard$2 +instanceKlass org/gradle/api/internal/tasks/DefaultTaskContainer$RealizeDetails +instanceKlass com/google/common/reflect/Reflection +instanceKlass com/google/common/reflect/Types$TypeVariableInvocationHandler +instanceKlass com/google/common/reflect/Types$TypeVariableImpl +instanceKlass com/google/common/reflect/Types$NativeTypeVariableEquals +instanceKlass org/gradle/api/internal/provider/ValueSupplier$ExecutionTimeValue +instanceKlass org/gradle/api/internal/provider/ValueSupplier$ValueProducer +instanceKlass org/gradle/tooling/internal/provider/runner/PluginApplicationTracker$$Lambda$418 +instanceKlass org/gradle/tooling/internal/provider/runner/TaskOriginTracker$$Lambda$417 +instanceKlass org/gradle/api/internal/tasks/DefaultTaskContainer$RegisterDetails +instanceKlass org/gradle/api/internal/tasks/DefaultTaskContainer$3 +instanceKlass org/gradle/model/internal/registry/RuleBindings$ScopeIndex +instanceKlass org/gradle/model/internal/registry/RuleBindings$PredicateMatches +instanceKlass org/gradle/internal/service/scopes/ProjectScopeServices$$Lambda$416 +instanceKlass org/gradle/model/internal/registry/DefaultModelRegistry$$Lambda$415 +instanceKlass org/gradle/model/internal/registry/DefaultModelRegistry$5 +instanceKlass org/gradle/model/internal/registry/NodeAtState +instanceKlass org/gradle/model/internal/registry/DefaultModelRegistry$GoalGraph +instanceKlass org/gradle/model/internal/registry/RuleBindings$NodeAtStateIndex +instanceKlass org/gradle/model/internal/registry/RuleBindings$TypePredicateIndex +instanceKlass org/gradle/model/internal/registry/RuleBindings$PathPredicateIndex +instanceKlass org/gradle/model/internal/registry/RuleBindings +instanceKlass org/gradle/model/internal/registry/ModelGraph +instanceKlass org/gradle/model/internal/core/DefaultModelRegistration +instanceKlass org/gradle/model/internal/core/AbstractModelAction +instanceKlass org/gradle/model/internal/core/EmptyModelProjection +instanceKlass org/gradle/model/internal/core/ModelProjection +instanceKlass org/gradle/model/internal/core/ModelAdapter +instanceKlass org/gradle/model/internal/core/ModelPromise +instanceKlass org/gradle/model/internal/core/ModelRegistrations$Builder$DescriptorReference +instanceKlass org/gradle/model/internal/core/ModelRegistration +instanceKlass org/gradle/model/internal/core/ModelAction +instanceKlass org/gradle/model/internal/core/ModelRegistrations$Builder +instanceKlass org/gradle/model/internal/core/ModelRegistrations +instanceKlass org/gradle/internal/service/scopes/ProjectScopeServices$$Lambda$414 +instanceKlass org/gradle/model/internal/registry/BoringProjectState +instanceKlass org/gradle/model/internal/registry/DefaultModelRegistry$ModelGoal +instanceKlass org/gradle/model/internal/core/ModelPredicate +instanceKlass org/gradle/model/internal/registry/ModelNodeInternal +instanceKlass org/gradle/model/internal/registry/DefaultModelRegistry +instanceKlass org/gradle/model/internal/registry/ModelRegistryInternal +instanceKlass org/gradle/tooling/internal/provider/runner/PluginApplicationTracker$PluginApplication +instanceKlass org/gradle/internal/build/event/types/DefaultBinaryPluginIdentifier +instanceKlass org/gradle/tooling/internal/provider/runner/PluginApplicationTracker$$Lambda$413 +instanceKlass org/gradle/api/internal/plugins/DefaultPluginManager$OperationDetails +instanceKlass org/gradle/api/internal/plugins/DefaultPluginManager$AddPluginBuildOperation +instanceKlass org/gradle/api/internal/plugins/DefaultPluginManager$$Lambda$412 +instanceKlass org/gradle/api/internal/plugins/DefaultPluginManager$1 +instanceKlass org/gradle/api/internal/plugins/DefaultPotentialPluginWithId +instanceKlass org/gradle/api/internal/plugins/PluginInspector$PotentialImperativeClassPlugin +instanceKlass com/google/common/collect/TransformedIterator +instanceKlass com/google/common/base/Predicates +instanceKlass org/gradle/model/internal/inspect/ModelRuleSourceDetector$3 +instanceKlass org/gradle/api/plugins/HelpTasksPlugin$HelpAction +instanceKlass org/gradle/api/plugins/HelpTasksPlugin$ProjectReportTaskAction +instanceKlass org/gradle/api/plugins/HelpTasksPlugin$TaskReportTaskAction +instanceKlass org/gradle/api/plugins/HelpTasksPlugin$PropertyReportTaskAction +instanceKlass org/gradle/api/plugins/HelpTasksPlugin$DependencyInsightReportTaskAction +instanceKlass org/gradle/api/plugins/HelpTasksPlugin$DependencyReportTaskAction +instanceKlass org/gradle/api/plugins/HelpTasksPlugin$BuildEnvironmentReportTaskAction +instanceKlass org/gradle/api/plugins/HelpTasksPlugin$ComponentReportAction +instanceKlass org/gradle/api/plugins/HelpTasksPlugin$ModelReportAction +instanceKlass org/gradle/api/plugins/HelpTasksPlugin$DependentComponentsReportAction +instanceKlass org/gradle/api/plugins/HelpTasksPlugin +instanceKlass org/gradle/api/internal/plugins/PluginDescriptor +instanceKlass org/gradle/api/internal/plugins/ClassloaderBackedPluginDescriptorLocator +instanceKlass org/gradle/api/internal/plugins/DefaultPluginRegistry$PluginIdLookupCacheKey +instanceKlass com/google/common/base/Optional +instanceKlass com/google/common/collect/FluentIterable +instanceKlass org/gradle/model/internal/inspect/ModelRuleExtractor$CachedRuleSource +instanceKlass org/gradle/model/internal/inspect/MethodModelRuleExtractionContext +instanceKlass org/gradle/model/Rules +instanceKlass org/gradle/model/Validate +instanceKlass org/gradle/model/Finalize +instanceKlass org/gradle/model/Mutate +instanceKlass org/gradle/model/Defaults +instanceKlass org/gradle/model/internal/core/NodeInitializerRegistry +instanceKlass org/gradle/model/Model +instanceKlass org/gradle/model/internal/inspect/MethodModelRuleExtractors +instanceKlass org/gradle/model/internal/manage/instance/ManagedInstance +instanceKlass org/gradle/model/internal/manage/schema/extract/ManagedProxyClassGenerator$GeneratedView +instanceKlass org/gradle/model/internal/manage/instance/ModelElementState +instanceKlass org/gradle/model/internal/manage/instance/GeneratedViewState +instanceKlass org/gradle/model/internal/manage/binding/StructMethodBinding +instanceKlass org/gradle/internal/reflect/Types$TypeVisitor +instanceKlass org/gradle/model/internal/manage/binding/StructBindings +instanceKlass org/gradle/model/internal/manage/binding/StructBindingValidationProblemCollector +instanceKlass org/gradle/model/internal/manage/binding/DefaultStructBindingsStore +instanceKlass org/gradle/platform/base/ComponentBinaries +instanceKlass org/gradle/platform/base/ComponentType +instanceKlass org/gradle/platform/base/VariantComponentSpec +instanceKlass org/gradle/platform/base/VariantComponent +instanceKlass org/gradle/platform/base/SourceComponentSpec +instanceKlass org/gradle/language/base/LanguageSourceSet +instanceKlass org/gradle/model/internal/typeregistration/BaseInstanceFactory +instanceKlass org/gradle/model/internal/typeregistration/InstanceFactory +instanceKlass org/gradle/model/internal/manage/schema/cache/ModelSchemaCache +instanceKlass org/gradle/model/internal/manage/schema/extract/DefaultModelSchemaStore +instanceKlass org/gradle/model/RuleSource +instanceKlass org/gradle/model/internal/manage/schema/extract/StructSchemaExtractionStrategySupport +instanceKlass org/gradle/model/internal/manage/schema/extract/JavaUtilCollectionStrategy +instanceKlass org/gradle/model/internal/manage/schema/extract/ModelMapStrategy +instanceKlass org/gradle/model/internal/manage/schema/extract/AbstractProxyClassGenerator +instanceKlass org/gradle/model/internal/manage/schema/extract/SpecializedMapStrategy +instanceKlass org/gradle/model/internal/type/WildcardTypeWrapper +instanceKlass org/gradle/model/internal/type/WildcardWrapper +instanceKlass org/gradle/model/ModelSet +instanceKlass org/gradle/model/internal/manage/schema/CompositeSchema +instanceKlass org/gradle/model/internal/manage/schema/AbstractModelSchema +instanceKlass org/gradle/model/internal/manage/schema/ManagedImplSchema +instanceKlass org/gradle/model/internal/manage/schema/extract/ModelSetStrategy +instanceKlass org/gradle/model/internal/manage/schema/extract/JdkValueTypeStrategy +instanceKlass org/gradle/model/internal/manage/schema/extract/EnumStrategy +instanceKlass org/gradle/model/internal/manage/schema/ModelSchema +instanceKlass org/gradle/model/internal/manage/schema/extract/PrimitiveStrategy +instanceKlass org/gradle/model/internal/manage/schema/extract/ModelSchemaExtractionContext +instanceKlass org/gradle/model/internal/manage/schema/extract/DefaultModelSchemaExtractor +instanceKlass org/gradle/platform/base/BinaryTasks +instanceKlass org/gradle/model/internal/core/ModelPath$Cache +instanceKlass org/gradle/platform/base/BinaryContainer +instanceKlass org/gradle/model/ModelMap +instanceKlass org/gradle/model/internal/type/ParameterizedTypeWrapper +instanceKlass org/gradle/model/internal/inspect/ExtractedModelRule +instanceKlass org/gradle/model/internal/inspect/RuleSourceValidationProblemCollector +instanceKlass org/gradle/model/internal/inspect/AbstractAnnotationDrivenModelRuleExtractor +instanceKlass org/gradle/model/internal/manage/schema/extract/ModelSchemaAspect +instanceKlass org/gradle/platform/base/internal/VariantAspectExtractionStrategy +instanceKlass org/gradle/api/internal/plugins/RuleBasedPluginTarget +instanceKlass org/gradle/configuration/project/NotifyProjectBeforeEvaluatedBuildOperationType$1 +instanceKlass org/gradle/configuration/project/NotifyProjectBeforeEvaluatedBuildOperationType$Result +instanceKlass org/gradle/configuration/project/NotifyProjectBeforeEvaluatedBuildOperationType +instanceKlass org/gradle/internal/operations/BuildOperationType +instanceKlass org/gradle/util/internal/NameValidator +instanceKlass org/gradle/configuration/project/LifecycleProjectEvaluator$NotifyProjectBeforeEvaluatedDetails +instanceKlass org/gradle/configuration/project/NotifyProjectBeforeEvaluatedBuildOperationType$Details +instanceKlass org/gradle/configuration/project/LifecycleProjectEvaluator$NotifyBeforeEvaluate +instanceKlass org/gradle/internal/work/DefaultWorkerLeaseService$2 +instanceKlass org/gradle/api/internal/project/DefaultProjectStateRegistry$ProjectStateImpl$$Lambda$411 +instanceKlass org/gradle/api/internal/project/DefaultProjectStateRegistry$ProjectStateImpl$$Lambda$410 +instanceKlass org/gradle/configuration/project/LifecycleProjectEvaluator$EvaluateProject$$Lambda$409 +instanceKlass org/gradle/configuration/project/LifecycleProjectEvaluator$ConfigureProjectDetails +instanceKlass org/gradle/configuration/project/LifecycleProjectEvaluator$EvaluateProject +instanceKlass org/gradle/configuration/project/LifecycleProjectEvaluator +instanceKlass org/gradle/configuration/project/DelayedConfigurationActions +instanceKlass org/gradle/configuration/project/BuildScriptProcessor +instanceKlass org/gradle/buildinit/plugins/internal/action/WrapperPluginAutoApplyAction +instanceKlass org/gradle/buildinit/plugins/internal/action/BuildInitAutoApplyAction +instanceKlass org/gradle/kotlin/dsl/tooling/builders/KotlinScriptingModelBuildersRegistrationAction +instanceKlass org/gradle/jvm/toolchain/internal/task/ShowToolchainsTaskConfigurator +instanceKlass org/gradle/api/plugins/internal/HelpTasksAutoApplyAction +instanceKlass org/gradle/configuration/project/ConfigureActionsProjectEvaluator +instanceKlass org/gradle/initialization/NotifyingBuildLoader$3$1 +instanceKlass org/gradle/initialization/NotifyProjectsLoadedBuildOperationType$Details +instanceKlass org/gradle/initialization/NotifyingBuildLoader$3 +instanceKlass org/gradle/initialization/NotifyingBuildLoader$BuildStructureOperationResult +instanceKlass org/gradle/initialization/LoadProjectsBuildOperationType$Result +instanceKlass org/gradle/initialization/NotifyingBuildLoader$BuildStructureOperationProject +instanceKlass org/gradle/api/internal/project/DefaultProjectStateRegistry$ProjectStateImpl$$Lambda$408 +instanceKlass org/gradle/initialization/ProjectPropertySettingBuildLoader$CachingPropertyApplicator +instanceKlass org/gradle/api/internal/project/ProjectFactory$$Lambda$407 +instanceKlass org/gradle/api/internal/project/DefaultProject$$Lambda$406 +instanceKlass org/gradle/internal/extensibility/ExtensibleDynamicObject$2 +instanceKlass org/gradle/internal/BiAction +instanceKlass org/gradle/api/internal/tasks/DefaultTaskContainerFactory$1 +instanceKlass org/gradle/api/internal/tasks/DefaultTaskContainer$7 +instanceKlass org/gradle/api/internal/tasks/DefaultTaskContainer$6 +instanceKlass org/gradle/api/Task$Namer +instanceKlass org/gradle/model/internal/core/MutableModelNode +instanceKlass org/gradle/model/internal/core/ModelNode +instanceKlass org/gradle/model/internal/core/ModelPath +instanceKlass org/gradle/api/internal/project/taskfactory/TaskIdentity +instanceKlass org/gradle/api/tasks/TaskProvider +instanceKlass org/gradle/api/internal/tasks/RealizeTaskBuildOperationType$Result +instanceKlass org/gradle/api/internal/tasks/RegisterTaskBuildOperationType$Result +instanceKlass org/gradle/api/internal/project/taskfactory/TaskFactory +instanceKlass org/gradle/api/internal/project/taskfactory/AnnotationProcessingTaskFactory +instanceKlass org/gradle/api/internal/project/taskfactory/DefaultTaskClassInfoStore$$Lambda$405 +instanceKlass org/gradle/api/internal/project/taskfactory/TaskClassInfo +instanceKlass org/gradle/api/internal/project/taskfactory/DefaultTaskClassInfoStore$AbstractIncrementalTaskActionFactory +instanceKlass org/gradle/api/internal/project/taskfactory/TaskActionFactory +instanceKlass org/gradle/api/internal/project/taskfactory/DefaultTaskClassInfoStore +instanceKlass org/gradle/model/internal/core/rule/describe/SimpleModelRuleDescriptor$1 +instanceKlass org/gradle/internal/Factories$2 +instanceKlass org/gradle/model/internal/core/rule/describe/AbstractModelRuleDescriptor +instanceKlass org/gradle/model/internal/core/rule/describe/ModelRuleDescriptor +instanceKlass org/gradle/model/internal/core/ModelReference +instanceKlass org/gradle/api/internal/tasks/DefaultTaskContainerFactory +instanceKlass org/gradle/internal/service/scopes/WorkerSharedProjectScopeServices +instanceKlass org/gradle/nativeplatform/internal/CompilerOutputFileNamingSchemeFactory +instanceKlass org/gradle/nativeplatform/internal/services/NativeBinaryServices$ProjectCompilerServices +instanceKlass org/gradle/language/internal/DefaultNativeComponentFactory +instanceKlass org/gradle/language/internal/NativeComponentFactory +instanceKlass org/gradle/language/nativeplatform/internal/toolchains/ToolChainSelector$Result +instanceKlass org/gradle/language/nativeplatform/internal/toolchains/DefaultToolChainSelector +instanceKlass org/gradle/language/nativeplatform/internal/toolchains/ToolChainSelector +instanceKlass org/gradle/language/nativeplatform/internal/incremental/IncrementalCompilerBuilder$IncrementalCompiler +instanceKlass org/gradle/language/nativeplatform/internal/incremental/DefaultIncrementalCompilerBuilder +instanceKlass org/gradle/language/nativeplatform/internal/incremental/IncrementalCompilerBuilder +instanceKlass org/gradle/plugins/ide/internal/DefaultIdeArtifactRegistry +instanceKlass org/gradle/plugins/ide/internal/IdeArtifactRegistry +instanceKlass org/gradle/internal/snapshot/Snapshot +instanceKlass org/gradle/internal/snapshot/impl/DefaultSnapshottingService +instanceKlass org/gradle/internal/snapshot/SnapshottingService +instanceKlass org/gradle/internal/enterprise/test/TestTaskForkOptions +instanceKlass org/gradle/internal/enterprise/test/TestTaskProperties +instanceKlass org/gradle/internal/enterprise/test/TestTaskFilters +instanceKlass org/gradle/internal/enterprise/test/impl/DefaultTestTaskPropertiesService +instanceKlass org/gradle/internal/enterprise/test/TestTaskPropertiesService +instanceKlass org/gradle/buildinit/plugins/internal/ProjectLayoutSetupRegistry +instanceKlass org/gradle/buildinit/plugins/internal/services/BuildInitServices$ProjectScopeBuildInitServices +instanceKlass org/gradle/api/publish/maven/internal/publisher/MavenDuplicatePublicationTracker +instanceKlass org/gradle/api/plugins/jvm/internal/JvmPluginServices +instanceKlass org/gradle/api/plugins/jvm/internal/JvmModelingServices +instanceKlass org/gradle/api/plugins/jvm/internal/JvmEcosystemUtilities +instanceKlass org/gradle/api/tasks/SourceSetContainer +instanceKlass org/gradle/api/plugins/internal/PluginAuthorServices$ProjectScopeServices +instanceKlass org/gradle/jvm/toolchain/JavaToolchainSpec +instanceKlass org/gradle/jvm/toolchain/internal/DefaultJavaToolchainService +instanceKlass org/gradle/jvm/toolchain/JavaToolchainService +instanceKlass org/gradle/jvm/toolchain/internal/JavaToolchainQueryService +instanceKlass org/gradle/jvm/toolchain/install/internal/AdoptOpenJdkDownloader +instanceKlass org/gradle/jvm/toolchain/install/internal/AdoptOpenJdkRemoteBinary +instanceKlass org/gradle/jvm/toolchain/install/internal/DefaultJavaToolchainProvisioningService +instanceKlass org/gradle/jvm/toolchain/install/internal/JavaToolchainProvisioningService +instanceKlass org/gradle/jvm/toolchain/internal/JavaToolchainFactory +instanceKlass org/gradle/jvm/toolchain/internal/ToolchainToolFactory +instanceKlass org/gradle/language/java/internal/JavaLanguagePluginServiceRegistry$JavaProjectScopeServices +instanceKlass org/gradle/jvm/toolchain/internal/JavaCompilerFactory +instanceKlass org/gradle/language/java/internal/JavaToolChainServiceRegistry$ProjectScopeCompileServices +instanceKlass org/gradle/api/internal/tasks/compile/GroovyCompilerFactory +instanceKlass org/gradle/language/base/internal/compile/CompilerFactory +instanceKlass org/gradle/api/internal/tasks/compile/GroovyServices$ProjectServices +instanceKlass org/gradle/api/publish/ivy/internal/publisher/IvyDuplicatePublicationTracker +instanceKlass org/gradle/workers/internal/BuildOperationAwareWorker +instanceKlass org/gradle/workers/internal/IsolatedClassloaderWorkerFactory +instanceKlass org/gradle/workers/internal/WorkerDaemonFactory +instanceKlass org/gradle/workers/internal/WorkerFactory +instanceKlass org/gradle/workers/WorkerExecutor +instanceKlass org/gradle/workers/internal/WorkersServices$ProjectScopeServices +instanceKlass org/gradle/internal/service/scopes/ProjectScopeServices$$Lambda$404 +instanceKlass org/gradle/api/internal/project/taskfactory/TaskInstantiator +instanceKlass org/gradle/model/internal/core/NamedEntityInstantiator +instanceKlass org/gradle/api/internal/component/ComponentRegistry +instanceKlass org/gradle/normalization/internal/RuntimeClasspathNormalizationInternal +instanceKlass org/gradle/normalization/RuntimeClasspathNormalization +instanceKlass org/gradle/normalization/InputNormalization +instanceKlass org/gradle/api/internal/project/ant/AntLoggingAdapterFactory +instanceKlass org/gradle/api/internal/file/SourceDirectorySetFactory +instanceKlass org/gradle/internal/typeconversion/TypeConverter +instanceKlass org/gradle/api/internal/project/DeferredProjectConfiguration +instanceKlass org/gradle/api/internal/file/DefaultProjectLayout +instanceKlass org/gradle/api/internal/file/TaskFileVarFactory +instanceKlass org/gradle/internal/service/scopes/GradleScopeServices$1 +instanceKlass org/gradle/initialization/NotifyingBuildLoader$2$1 +instanceKlass org/gradle/initialization/LoadProjectsBuildOperationType$Details +instanceKlass org/gradle/initialization/NotifyingBuildLoader$2 +instanceKlass org/gradle/api/internal/catalog/DefaultDependenciesAccessors$$Lambda$403 +instanceKlass org/gradle/api/internal/catalog/DefaultVersionCatalog +instanceKlass org/gradle/api/internal/DefaultDomainObjectCollection$IteratorImpl +instanceKlass org/gradle/internal/serialization/Cached +instanceKlass org/gradle/internal/instantiation/generator/ManagedObjectFactory$$Lambda$402 +instanceKlass org/gradle/internal/instantiation/generator/ManagedObjectFactory$ManagedPropertyName +instanceKlass org/gradle/api/internal/catalog/DefaultDependenciesAccessors +instanceKlass org/gradle/api/artifacts/ProjectDependency +instanceKlass org/gradle/api/artifacts/SelfResolvingDependency +instanceKlass org/gradle/api/artifacts/ModuleDependency +instanceKlass org/gradle/internal/execution/workspace/impl/DefaultImmutableWorkspaceProvider$$Lambda$401 +instanceKlass org/gradle/internal/execution/workspace/impl/DefaultImmutableWorkspaceProvider$$Lambda$400 +instanceKlass org/gradle/api/internal/DependencyClassPathProvider +instanceKlass org/gradle/configuration/BuildOperationFiringProjectsPreparer$ConfigureBuild$1 +instanceKlass org/gradle/initialization/ConfigureBuildBuildOperationType$Details +instanceKlass org/gradle/configuration/BuildOperationFiringProjectsPreparer$ConfigureBuild +instanceKlass org/gradle/initialization/VintageBuildModelController$$Lambda$399 +instanceKlass org/gradle/internal/resources/TaskExecutionLockRegistry$2 +instanceKlass org/gradle/internal/resources/ProjectLockRegistry$1 +instanceKlass org/gradle/api/internal/project/DefaultProjectStateRegistry$ProjectStateImpl +instanceKlass org/gradle/api/internal/artifacts/DefaultProjectComponentIdentifier +instanceKlass org/gradle/api/internal/project/DefaultProjectStateRegistry$DefaultBuildProjectRegistry +instanceKlass org/gradle/internal/build/BuildProjectRegistry +instanceKlass org/gradle/initialization/AbstractProjectSpec +instanceKlass org/gradle/initialization/ProjectSpec +instanceKlass org/gradle/initialization/ProjectSpecs +instanceKlass org/gradle/initialization/DefaultSettingsLoader$$Lambda$398 +instanceKlass org/gradle/caching/internal/controller/RootBuildCacheControllerRef$CloseShieldBuildCacheController +instanceKlass org/gradle/caching/internal/controller/NoOpBuildCacheController +instanceKlass org/gradle/caching/internal/services/BuildCacheControllerFactory$ResultImpl +instanceKlass org/gradle/caching/internal/FinalizeBuildCacheConfigurationBuildOperationType$Result +instanceKlass org/gradle/caching/internal/services/BuildCacheControllerFactory$DetailsImpl +instanceKlass org/gradle/caching/internal/FinalizeBuildCacheConfigurationBuildOperationType$Details +instanceKlass org/gradle/caching/internal/FinalizeBuildCacheConfigurationBuildOperationType$Result$BuildCacheDescription +instanceKlass org/gradle/caching/internal/services/BuildCacheControllerFactory$1 +instanceKlass org/gradle/caching/BuildCacheServiceFactory$Describer +instanceKlass org/gradle/caching/internal/services/BuildCacheControllerFactory +instanceKlass org/gradle/caching/configuration/internal/DefaultBuildCacheConfiguration +instanceKlass org/gradle/caching/local/internal/DirectoryBuildCacheServiceFactory +instanceKlass org/gradle/internal/management/DefaultDependencyResolutionManagement$$Lambda$397 +instanceKlass org/gradle/internal/management/DefaultDependencyResolutionManagement$$Lambda$396 +instanceKlass jdk/internal/math/FDBigInteger +instanceKlass org/gradle/internal/time/TimeFormatting +instanceKlass org/gradle/groovy/scripts/internal/FileCacheBackedScriptClassCompiler$EmptyCompiledScript +instanceKlass org/gradle/internal/event/BroadcastDispatch$ActionInvocationHandler +instanceKlass org/gradle/internal/operations/notify/BuildOperationNotificationBridge$2$$Lambda$395 +instanceKlass org/gradle/vcs/VcsMappings +instanceKlass org/gradle/vcs/internal/services/VersionControlServices$VersionControlSettingsServices +instanceKlass org/gradle/plugin/internal/PluginUsePluginServiceRegistry$SettingsScopeServices +instanceKlass org/gradle/internal/service/scopes/SettingsScopeServices$1 +instanceKlass org/gradle/initialization/IncludedBuildSpec +instanceKlass org/gradle/initialization/BuildOperationSettingsProcessor$2$1 +instanceKlass org/gradle/initialization/EvaluateSettingsBuildOperationType$Details +instanceKlass org/gradle/initialization/BuildOperationSettingsProcessor$2 +instanceKlass org/gradle/internal/logging/sink/ProgressLogEventGenerator$1 +instanceKlass org/gradle/configuration/internal/DefaultListenerBuildOperationDecorator$1 +instanceKlass org/gradle/listener/ClosureBackedMethodInvocationDispatch +instanceKlass org/codehaus/groovy/ast/ClassNode$$Lambda$394 +instanceKlass org/codehaus/groovy/ast/ClassNode$MapOfLists +instanceKlass org/codehaus/groovy/util/AbstractConcurrentMap$Entry +instanceKlass org/codehaus/groovy/util/AbstractConcurrentMapBase$Entry +instanceKlass org/codehaus/groovy/ast/ClassHelper$ClassHelperCache +instanceKlass org/codehaus/groovy/runtime/GeneratedLambda +instanceKlass org/codehaus/groovy/ast/ClassHelper +instanceKlass org/codehaus/groovy/classgen/asm/util/TypeUtil +instanceKlass org/gradle/api/internal/tasks/testing/logging/TestExceptionFormatter +instanceKlass org/gradle/api/reporting/DirectoryReport +instanceKlass org/gradle/api/reporting/ConfigurableReport +instanceKlass org/gradle/api/reporting/Report +instanceKlass org/gradle/api/internal/tasks/testing/TestResultProcessor +instanceKlass org/gradle/api/tasks/testing/TestOutputListener +instanceKlass org/gradle/api/tasks/testing/TestListener +instanceKlass org/gradle/api/internal/tasks/testing/report/TestReporter +instanceKlass org/gradle/api/internal/tasks/testing/junit/result/TestResultsProvider +instanceKlass org/gradle/api/reporting/ReportContainer +instanceKlass org/gradle/api/tasks/testing/TestFilter +instanceKlass org/gradle/api/internal/tasks/TaskDependencyInternal +instanceKlass org/gradle/api/internal/tasks/InputChangesAwareTaskAction +instanceKlass org/gradle/api/internal/tasks/ImplementationAwareTaskAction +instanceKlass groovy/util/ObservableList +instanceKlass org/gradle/api/internal/tasks/TaskLocalStateInternal +instanceKlass org/gradle/api/internal/TaskOutputsInternal +instanceKlass org/gradle/api/internal/TaskInputsInternal +instanceKlass org/gradle/internal/logging/slf4j/ContextAwareTaskLogger +instanceKlass org/gradle/api/reporting/Reporting +instanceKlass org/gradle/api/tasks/VerificationTask +instanceKlass org/gradle/configuration/internal/DefaultListenerBuildOperationDecorator$BuildOperationEmittingInvocationHandler +instanceKlass org/apache/commons/lang/ClassUtils +instanceKlass org/gradle/execution/taskgraph/DefaultTaskExecutionGraph$$Lambda$393 +instanceKlass org/gradle/execution/ProjectExecutionServiceRegistry +instanceKlass org/gradle/api/tasks/TaskLocalState +instanceKlass org/gradle/api/tasks/TaskInputs +instanceKlass org/gradle/api/tasks/TaskDestroyables +instanceKlass org/gradle/api/tasks/TaskOutputs +instanceKlass org/gradle/api/tasks/TaskState +instanceKlass groovy/transform/Generated +instanceKlass SetupUtpTestResultListenerAction +instanceKlass org/gradle/execution/plan/ExecutionPlan$1 +instanceKlass org/gradle/execution/taskgraph/DefaultTaskExecutionGraph +instanceKlass org/gradle/execution/plan/DefaultPlanExecutor +instanceKlass org/gradle/api/internal/tasks/TaskExecutionContext +instanceKlass org/codehaus/groovy/reflection/AccessPermissionChecker +instanceKlass org/codehaus/groovy/reflection/ReflectionUtils$$Lambda$392 +instanceKlass org/gradle/internal/snapshot/SearchUtil +instanceKlass org/gradle/internal/snapshot/AbstractListChildMap$$Lambda$391 +instanceKlass org/codehaus/groovy/runtime/ScriptBytecodeAdapter +instanceKlass org/codehaus/groovy/runtime/metaclass/ClosureMetaClass$$Lambda$390 +instanceKlass org/codehaus/groovy/runtime/metaclass/ClosureMetaClass$MethodChooser +instanceKlass org/codehaus/groovy/runtime/callsite/BooleanClosureWrapper +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass com/sun/beans/finder/FinderUtils +instanceKlass com/sun/beans/finder/AbstractFinder +instanceKlass org/codehaus/groovy/reflection/ClassLoaderForClassArtifacts$$Lambda$389 +instanceKlass groovyjarjarasm/asm/Attribute +instanceKlass groovyjarjarasm/asm/Handler +instanceKlass org/codehaus/groovy/runtime/typehandling/DefaultTypeTransformation +instanceKlass org/codehaus/groovy/classgen/asm/BytecodeHelper +instanceKlass groovyjarjarasm/asm/Edge +instanceKlass groovyjarjarasm/asm/Label +instanceKlass groovyjarjarasm/asm/Type +instanceKlass groovyjarjarasm/asm/Frame +instanceKlass org/codehaus/groovy/reflection/CachedClass$5$$Lambda$388 +instanceKlass groovyjarjarasm/asm/ByteVector +instanceKlass groovyjarjarasm/asm/Symbol +instanceKlass groovyjarjarasm/asm/SymbolTable +instanceKlass groovyjarjarasm/asm/MethodVisitor +instanceKlass groovyjarjarasm/asm/FieldVisitor +instanceKlass groovyjarjarasm/asm/ModuleVisitor +instanceKlass groovyjarjarasm/asm/AnnotationVisitor +instanceKlass groovyjarjarasm/asm/RecordComponentVisitor +instanceKlass org/codehaus/groovy/classgen/GeneratorContext +instanceKlass org/codehaus/groovy/reflection/android/AndroidSupport +instanceKlass org/codehaus/groovy/runtime/callsite/GroovySunClassLoader$$Lambda$387 +instanceKlass org/codehaus/groovy/reflection/SunClassLoader$$Lambda$386 +instanceKlass org/codehaus/groovy/runtime/callsite/CallSiteGenerator +instanceKlass org/codehaus/groovy/runtime/metaclass/MetaMethodIndex$CacheEntry +instanceKlass org/codehaus/groovy/runtime/wrappers/Wrapper +instanceKlass groovy/lang/AdaptingMetaClass +instanceKlass groovy/lang/GroovyInterceptable +instanceKlass org/codehaus/groovy/runtime/ArrayUtil +instanceKlass org/codehaus/groovy/syntax/Types +instanceKlass org/codehaus/groovy/syntax/CSTNode +instanceKlass org/codehaus/groovy/ast/tools/GeneralUtils +instanceKlass org/gradle/api/component/SoftwareComponentContainer +instanceKlass org/gradle/api/NamedDomainObjectFactory +instanceKlass org/gradle/model/internal/registry/ModelRegistry +instanceKlass org/gradle/normalization/internal/InputNormalizationHandlerInternal +instanceKlass org/gradle/configuration/project/ProjectConfigurationActionContainer +instanceKlass org/gradle/api/internal/project/ProjectInternal$DetachedResolver +instanceKlass org/gradle/internal/model/RuleBasedPluginListener +instanceKlass org/gradle/api/internal/tasks/TaskContainerInternal +instanceKlass org/gradle/api/internal/project/ProjectStateInternal +instanceKlass org/gradle/plugin/management/PluginManagementSpec +instanceKlass org/gradle/vcs/SourceControl +instanceKlass org/gradle/initialization/DefaultProjectDescriptor +instanceKlass org/gradle/api/initialization/ProjectDescriptor +instanceKlass org/gradle/internal/metaobject/DynamicInvokeResult +instanceKlass org/gradle/cache/internal/DefaultFileContentCacheFactory$DefaultFileContentCache +instanceKlass org/gradle/internal/jvm/JavaModuleDetector$ModuleInfoLocator +instanceKlass org/gradle/internal/jvm/JavaModuleDetector$$Lambda$385 +instanceKlass org/gradle/internal/jvm/JavaModuleDetector$$Lambda$384 +instanceKlass org/gradle/cache/internal/FileContentCache +instanceKlass org/gradle/cache/internal/DefaultFileContentCacheFactory +instanceKlass org/gradle/api/internal/model/InstantiatorBackedObjectFactory +instanceKlass org/gradle/process/internal/ExecAction +instanceKlass org/gradle/process/internal/ExecHandleBuilder +instanceKlass org/gradle/process/internal/JavaExecAction +instanceKlass org/gradle/process/internal/JavaForkOptionsInternal +instanceKlass org/gradle/process/JavaDebugOptions +instanceKlass org/gradle/process/internal/DefaultExecActionFactory +instanceKlass org/gradle/api/internal/file/copy/CopySpecInternal +instanceKlass org/gradle/api/internal/file/copy/CopyAction +instanceKlass org/gradle/api/internal/file/copy/FileCopier +instanceKlass org/gradle/api/internal/resources/DefaultResourceHandler +instanceKlass org/gradle/api/internal/resources/DefaultTextResourceFactory +instanceKlass org/gradle/api/internal/resources/DefaultResourceResolver +instanceKlass org/gradle/api/internal/resources/ResourceResolver +instanceKlass org/gradle/api/resources/TextResourceFactory +instanceKlass org/gradle/api/internal/resources/DefaultResourceHandler$Factory$FactoryImpl +instanceKlass org/gradle/api/internal/artifacts/DependencyManagementBuildScopeServices$$Lambda$383 +instanceKlass org/gradle/internal/extensibility/ExtensionsStorage$ExtensionHolder +instanceKlass org/gradle/api/plugins/ExtensionsSchema$ExtensionSchema +instanceKlass org/gradle/api/NamedDomainObjectCollectionSchema$NamedDomainObjectSchema +instanceKlass org/gradle/internal/extensibility/ExtensionsStorage +instanceKlass org/gradle/api/plugins/ExtraPropertiesExtension +instanceKlass org/gradle/internal/extensibility/DefaultConvention +instanceKlass org/gradle/api/internal/plugins/ExtensionContainerInternal +instanceKlass org/gradle/internal/metaobject/DynamicObjectUtil +instanceKlass org/gradle/api/internal/coerce/StringToEnumTransformer +instanceKlass org/gradle/internal/metaobject/BeanDynamicObject$MetaClassAdapter +instanceKlass org/gradle/api/internal/coerce/PropertySetTransformer +instanceKlass org/gradle/api/internal/coerce/MethodArgumentsTransformer +instanceKlass org/gradle/process/JavaExecSpec +instanceKlass org/gradle/process/JavaForkOptions +instanceKlass org/gradle/process/ExecSpec +instanceKlass org/gradle/process/BaseExecSpec +instanceKlass org/gradle/process/ProcessForkOptions +instanceKlass org/codehaus/groovy/runtime/memoize/StampedCommonCache$$Lambda$382 +instanceKlass org/codehaus/groovy/runtime/memoize/EvictableCache$Action +instanceKlass java/util/WeakHashMap$HashIterator +instanceKlass java/util/stream/StreamSpliterators$WrappingSpliterator$$Lambda$381 +instanceKlass java/util/function/BooleanSupplier +instanceKlass java/util/stream/StreamSpliterators$WrappingSpliterator$$Lambda$380 +instanceKlass jdk/internal/jrtfs/JrtDirectoryStream$1 +instanceKlass jdk/internal/jrtfs/JrtFileSystem$$Lambda$379 +instanceKlass jdk/internal/jrtfs/JrtFileSystem$$Lambda$378 +instanceKlass jdk/internal/jrtfs/JrtDirectoryStream +instanceKlass jdk/internal/jrtfs/JrtFileAttributes +instanceKlass jdk/internal/jimage/ImageReader$SharedImageReader$$Lambda$377 +instanceKlass jdk/internal/jimage/ImageReader$SharedImageReader$LocationVisitor +instanceKlass jdk/internal/jimage/ImageReader$Node +instanceKlass jdk/internal/jrtfs/SystemImage$2 +instanceKlass jdk/internal/jrtfs/SystemImage$$Lambda$376 +instanceKlass jdk/internal/jrtfs/SystemImage +instanceKlass jdk/internal/jrtfs/JrtPath +instanceKlass groovy/grape/GrapeIvy +instanceKlass groovy/grape/GrapeEngine +instanceKlass org/codehaus/groovy/vmplugin/v9/Java9$$Lambda$375 +instanceKlass org/codehaus/groovy/vmplugin/v9/Java9$$Lambda$374 +instanceKlass org/codehaus/groovy/vmplugin/v9/Java9$$Lambda$373 +instanceKlass java/util/stream/Collectors$$Lambda$372 +instanceKlass java/util/stream/Collectors$$Lambda$371 +instanceKlass java/util/stream/Collectors$$Lambda$370 +instanceKlass org/codehaus/groovy/vmplugin/v9/Java9$$Lambda$369 +instanceKlass org/codehaus/groovy/vmplugin/v9/Java9$$Lambda$368 +instanceKlass org/codehaus/groovy/vmplugin/v9/Java9$$Lambda$367 +instanceKlass jdk/nio/zipfs/ZipFileSystem$$Lambda$366 +instanceKlass org/codehaus/groovy/vmplugin/v9/ClassFinder$1$$Lambda$365 +instanceKlass jdk/nio/zipfs/ZipDirectoryStream$1 +instanceKlass jdk/nio/zipfs/ZipDirectoryStream +instanceKlass java/time/chrono/AbstractChronology +instanceKlass java/time/zone/ZoneOffsetTransition +instanceKlass java/time/zone/ZoneOffsetTransitionRule +instanceKlass java/time/zone/Ser +instanceKlass java/io/Externalizable +instanceKlass java/time/zone/ZoneRulesProvider$1 +instanceKlass java/time/zone/ZoneRulesProvider +instanceKlass jdk/nio/zipfs/ZipUtils +instanceKlass java/nio/file/SimpleFileVisitor +instanceKlass jdk/nio/zipfs/ZipFileSystem$END +instanceKlass jdk/nio/zipfs/ZipConstants +instanceKlass sun/nio/fs/WindowsChannelFactory$2 +instanceKlass sun/nio/fs/WindowsSecurityDescriptor +instanceKlass jdk/nio/zipfs/ZipPath +instanceKlass jdk/nio/zipfs/ZipCoder +instanceKlass sun/nio/fs/WindowsSecurity +instanceKlass sun/nio/fs/AbstractAclFileAttributeView +instanceKlass java/nio/file/attribute/AclFileAttributeView +instanceKlass java/nio/file/attribute/FileOwnerAttributeView +instanceKlass jdk/nio/zipfs/ZipFileSystem$$Lambda$364 +instanceKlass sun/nio/fs/WindowsFileSystemProvider$1 +instanceKlass jdk/nio/zipfs/ZipFileSystem$$Lambda$363 +instanceKlass java/nio/file/PathMatcher +instanceKlass jdk/nio/zipfs/ZipFileAttributes +instanceKlass jdk/nio/zipfs/ZipFileSystem$IndexNode +instanceKlass sun/nio/fs/WindowsLinkSupport +instanceKlass jdk/internal/jimage/ImageBufferCache$2 +instanceKlass jdk/internal/jimage/ImageBufferCache +instanceKlass sun/net/www/protocol/jrt/JavaRuntimeURLConnection$$Lambda$362 +instanceKlass java/nio/file/FileStore +instanceKlass java/nio/channels/AsynchronousFileChannel +instanceKlass java/nio/channels/AsynchronousChannel +instanceKlass java/nio/file/spi/FileSystemProvider$1 +instanceKlass sun/nio/ch/FileChannelImpl$Closer +instanceKlass sun/nio/fs/WindowsChannelFactory$Flags +instanceKlass sun/nio/fs/WindowsChannelFactory$1 +instanceKlass sun/nio/fs/WindowsChannelFactory +instanceKlass sun/nio/fs/WindowsUriSupport +instanceKlass org/codehaus/groovy/vmplugin/v9/ClassFinder +instanceKlass org/apache/groovy/util/Maps +instanceKlass org/codehaus/groovy/GroovyExceptionInterface +instanceKlass org/codehaus/groovy/control/CompilerConfiguration +instanceKlass groovy/lang/GroovyClassLoader$1 +instanceKlass org/codehaus/groovy/runtime/memoize/CommonCache +instanceKlass java/util/concurrent/locks/StampedLock$WNode +instanceKlass java/util/concurrent/locks/StampedLock +instanceKlass org/codehaus/groovy/runtime/memoize/StampedCommonCache +instanceKlass org/codehaus/groovy/runtime/memoize/ValueConvertable +instanceKlass org/codehaus/groovy/control/CompilationUnit$IPrimaryClassNodeOperation +instanceKlass org/codehaus/groovy/control/CompilationUnit$ClassgenCallback +instanceKlass org/codehaus/groovy/runtime/memoize/UnlimitedConcurrentCache +instanceKlass org/codehaus/groovy/runtime/memoize/EvictableCache +instanceKlass org/codehaus/groovy/ast/expr/MethodCall +instanceKlass org/codehaus/groovy/ast/stmt/LoopingStatement +instanceKlass org/codehaus/groovy/control/messages/Message +instanceKlass org/codehaus/groovy/ast/CodeVisitorSupport +instanceKlass org/codehaus/groovy/ast/GroovyClassVisitor +instanceKlass org/codehaus/groovy/transform/ErrorCollecting +instanceKlass org/codehaus/groovy/ast/expr/ExpressionTransformer +instanceKlass java/util/concurrent/locks/ReentrantReadWriteLock$WriteLock +instanceKlass java/util/concurrent/locks/ReentrantReadWriteLock$ReadLock +instanceKlass org/apache/groovy/plugin/GroovyRunnerRegistry +instanceKlass org/codehaus/groovy/runtime/metaclass/MetaClassRegistryImpl$$Lambda$361 +instanceKlass groovy/lang/MetaClassImpl$$Lambda$360 +instanceKlass org/codehaus/groovy/runtime/GroovyCategorySupport +instanceKlass java/util/concurrent/locks/ReentrantReadWriteLock +instanceKlass org/codehaus/groovy/util/ComplexKeyHashMap$1 +instanceKlass org/codehaus/groovy/reflection/CachedClass$1$$Lambda$359 +instanceKlass org/codehaus/groovy/reflection/CachedClass$1$$Lambda$358 +instanceKlass org/codehaus/groovy/reflection/CachedClass$1$$Lambda$357 +instanceKlass org/codehaus/groovy/reflection/CachedClass$1$$Lambda$356 +instanceKlass java/beans/SimpleBeanInfo +instanceKlass java/beans/BeanProperty +instanceKlass com/sun/beans/WildcardTypeImpl +instanceKlass com/sun/beans/introspect/PropertyInfo +instanceKlass com/sun/beans/introspect/EventSetInfo +instanceKlass com/sun/beans/WeakCache +instanceKlass com/sun/beans/TypeResolver +instanceKlass java/beans/MethodRef +instanceKlass com/sun/beans/introspect/MethodInfo$MethodOrder +instanceKlass com/sun/beans/introspect/MethodInfo +instanceKlass com/sun/beans/util/Cache$Ref +instanceKlass com/sun/beans/util/Cache$CacheEntry +instanceKlass com/sun/beans/util/Cache +instanceKlass com/sun/beans/introspect/ClassInfo +instanceKlass javax/swing/SwingContainer +instanceKlass java/beans/JavaBean +instanceKlass java/util/zip/ZipFile$ZipEntryIterator +instanceKlass java/util/jar/JarFile$$Lambda$355 +instanceKlass com/sun/beans/finder/ClassFinder +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass java/lang/invoke/ClassSpecializer$Factory$1Var +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass com/sun/beans/finder/InstanceFinder +instanceKlass java/beans/WeakIdentityMap +instanceKlass java/beans/ThreadGroupContext +instanceKlass groovy/lang/MetaClassImpl$$Lambda$354 +instanceKlass java/beans/BeanInfo +instanceKlass org/codehaus/groovy/reflection/CachedClass$CachedMethodComparatorWithString +instanceKlass org/codehaus/groovy/util/AbstractConcurrentMapBase +instanceKlass java/lang/reflect/AnnotatedType +instanceKlass groovyjarjarasm/asm/ClassVisitor +instanceKlass org/codehaus/groovy/runtime/MetaClassHelper +instanceKlass org/codehaus/groovy/reflection/CachedClass$2$$Lambda$353 +instanceKlass org/codehaus/groovy/reflection/CachedClass$2$$Lambda$352 +instanceKlass org/codehaus/groovy/reflection/CachedClass$2$$Lambda$351 +instanceKlass org/codehaus/groovy/reflection/CachedClass$2$$Lambda$350 +instanceKlass groovy/lang/ExpandoMetaClass$Callable +instanceKlass groovy/lang/ClosureInvokingMethod +instanceKlass org/codehaus/groovy/runtime/MethodKey +instanceKlass org/codehaus/groovy/reflection/CachedClass$2$$Lambda$349 +instanceKlass org/codehaus/groovy/runtime/metaclass/MetaMethodIndex$Header +instanceKlass org/codehaus/groovy/runtime/metaclass/MetaMethodIndex$Entry +instanceKlass org/codehaus/groovy/runtime/metaclass/MetaMethodIndex$EntryIterator +instanceKlass org/codehaus/groovy/runtime/metaclass/MetaMethodIndex +instanceKlass groovy/lang/MetaClassImpl$$Lambda$348 +instanceKlass groovy/lang/MetaClassImpl$$Lambda$347 +instanceKlass org/codehaus/groovy/util/SingleKeyHashMap$Copier +instanceKlass groovy/lang/MetaClassImpl$$Lambda$346 +instanceKlass groovy/lang/MetaClassImpl$MethodIndexAction +instanceKlass org/codehaus/groovy/runtime/GeneratedClosure +instanceKlass groovy/lang/MetaClassImpl +instanceKlass groovy/lang/MutableMetaClass +instanceKlass org/gradle/api/internal/provider/MapPropertyExtensions +instanceKlass org/w3c/dom/UserDataHandler +instanceKlass org/w3c/dom/Document +instanceKlass org/w3c/dom/NamedNodeMap +instanceKlass org/w3c/dom/TypeInfo +instanceKlass org/w3c/dom/Attr +instanceKlass org/w3c/dom/Element +instanceKlass org/w3c/dom/Node +instanceKlass org/w3c/dom/NodeList +instanceKlass org/apache/groovy/xml/extensions/XmlExtensions +instanceKlass java/awt/LayoutManager +instanceKlass javax/swing/ButtonModel +instanceKlass javax/swing/AbstractButton$Handler +instanceKlass javax/swing/event/ChangeListener +instanceKlass javax/swing/Icon +instanceKlass javax/swing/event/TableModelListener +instanceKlass javax/swing/MenuSelectionManager +instanceKlass javax/swing/event/TableColumnModelListener +instanceKlass javax/swing/ListSelectionModel +instanceKlass javax/swing/AncestorNotifier +instanceKlass java/beans/VetoableChangeListener +instanceKlass javax/swing/ArrayTable +instanceKlass javax/swing/TransferHandler$DropLocation +instanceKlass javax/swing/ActionMap +instanceKlass javax/swing/InputMap +instanceKlass javax/swing/InputVerifier +instanceKlass javax/swing/border/Border +instanceKlass javax/swing/event/AncestorListener +instanceKlass java/awt/AWTKeyStroke +instanceKlass javax/swing/plaf/ComponentUI +instanceKlass javax/swing/TransferHandler +instanceKlass java/awt/event/ItemListener +instanceKlass java/awt/BufferCapabilities +instanceKlass java/awt/ImageCapabilities +instanceKlass java/awt/image/ImageProducer +instanceKlass java/awt/Insets +instanceKlass java/awt/Cursor +instanceKlass java/awt/image/ColorModel +instanceKlass sun/awt/ComponentFactory +instanceKlass java/awt/Toolkit +instanceKlass java/awt/dnd/DropTarget +instanceKlass java/awt/dnd/DropTargetListener +instanceKlass java/awt/PointerInfo +instanceKlass java/awt/GraphicsConfiguration +instanceKlass java/awt/peer/ComponentPeer +instanceKlass sun/java2d/pipe/Region +instanceKlass javax/accessibility/AccessibleStateSet +instanceKlass java/awt/ComponentOrientation +instanceKlass sun/awt/RequestFocusController +instanceKlass java/awt/im/InputContext +instanceKlass java/awt/im/InputMethodRequests +instanceKlass java/awt/event/InputMethodListener +instanceKlass java/awt/event/MouseWheelListener +instanceKlass java/awt/event/MouseMotionListener +instanceKlass java/awt/event/MouseListener +instanceKlass java/awt/event/KeyListener +instanceKlass java/awt/event/HierarchyBoundsListener +instanceKlass java/awt/event/HierarchyListener +instanceKlass java/awt/event/FocusListener +instanceKlass java/awt/event/ComponentListener +instanceKlass java/awt/image/BufferStrategy +instanceKlass java/awt/geom/RectangularShape +instanceKlass java/awt/Shape +instanceKlass java/awt/Color +instanceKlass java/awt/Paint +instanceKlass java/awt/Transparency +instanceKlass java/awt/FontMetrics +instanceKlass java/beans/PropertyChangeListener +instanceKlass javax/accessibility/AccessibleContext +instanceKlass java/util/EventObject +instanceKlass java/awt/geom/Dimension2D +instanceKlass java/awt/geom/Point2D +instanceKlass java/awt/Graphics +instanceKlass java/awt/Event +instanceKlass java/awt/Font +instanceKlass java/awt/MenuComponent +instanceKlass java/awt/Image +instanceKlass javax/swing/table/TableColumn +instanceKlass javax/swing/Action +instanceKlass javax/swing/table/AbstractTableModel +instanceKlass javax/swing/ButtonGroup +instanceKlass javax/swing/table/TableModel +instanceKlass javax/swing/MenuElement +instanceKlass javax/swing/tree/TreePath +instanceKlass javax/swing/table/TableColumnModel +instanceKlass javax/swing/tree/DefaultMutableTreeNode +instanceKlass javax/swing/MutableComboBoxModel +instanceKlass javax/swing/ComboBoxModel +instanceKlass javax/swing/AbstractListModel +instanceKlass javax/swing/SwingConstants +instanceKlass java/awt/Component +instanceKlass java/awt/MenuContainer +instanceKlass java/awt/image/ImageObserver +instanceKlass javax/swing/TransferHandler$HasGetTransferHandler +instanceKlass javax/accessibility/Accessible +instanceKlass java/awt/event/ActionListener +instanceKlass javax/swing/event/ListDataListener +instanceKlass java/awt/ItemSelectable +instanceKlass javax/swing/tree/MutableTreeNode +instanceKlass javax/swing/tree/TreeNode +instanceKlass javax/swing/ListModel +instanceKlass org/apache/groovy/swing/extensions/SwingExtensions +instanceKlass java/sql/Statement +instanceKlass java/sql/SQLXML +instanceKlass java/sql/SQLType +instanceKlass java/sql/NClob +instanceKlass java/sql/Clob +instanceKlass java/sql/RowId +instanceKlass java/sql/Blob +instanceKlass java/sql/Array +instanceKlass java/sql/Ref +instanceKlass groovy/sql/GroovyResultSet +instanceKlass java/sql/ResultSet +instanceKlass java/sql/ResultSetMetaData +instanceKlass java/sql/Wrapper +instanceKlass org/apache/groovy/sql/extensions/SqlExtensions +instanceKlass java/nio/file/WatchEvent$Modifier +instanceKlass java/nio/file/WatchKey +instanceKlass java/nio/file/WatchEvent$Kind +instanceKlass java/nio/file/WatchService +instanceKlass org/apache/groovy/dateutil/extensions/DateUtilStaticExtensions +instanceKlass org/apache/groovy/dateutil/extensions/DateUtilExtensions +instanceKlass org/codehaus/groovy/runtime/metaclass/MetaClassRegistryImpl$DefaultModuleListener$$Lambda$345 +instanceKlass org/codehaus/groovy/runtime/metaclass/MethodHelper +instanceKlass java/time/zone/ZoneRules +instanceKlass java/time/chrono/Era +instanceKlass java/time/chrono/Chronology +instanceKlass java/time/format/DateTimeFormatter +instanceKlass java/time/temporal/ValueRange +instanceKlass java/time/temporal/TemporalQuery +instanceKlass java/time/MonthDay +instanceKlass java/time/OffsetDateTime +instanceKlass java/time/LocalDate +instanceKlass java/time/chrono/ChronoLocalDate +instanceKlass java/time/Instant +instanceKlass java/time/LocalTime +instanceKlass java/time/Year +instanceKlass java/time/YearMonth +instanceKlass java/time/ZonedDateTime +instanceKlass java/time/chrono/ChronoZonedDateTime +instanceKlass java/time/LocalDateTime +instanceKlass java/time/chrono/ChronoLocalDateTime +instanceKlass java/time/OffsetTime +instanceKlass java/time/temporal/TemporalAdjuster +instanceKlass java/time/Period +instanceKlass java/time/chrono/ChronoPeriod +instanceKlass java/time/temporal/Temporal +instanceKlass java/time/temporal/TemporalAccessor +instanceKlass java/time/temporal/TemporalField +instanceKlass org/apache/groovy/datetime/extensions/DateTimeStaticExtensions +instanceKlass org/apache/groovy/datetime/extensions/DateTimeExtensions +instanceKlass org/codehaus/groovy/runtime/m12n/ExtensionModule +instanceKlass org/codehaus/groovy/runtime/m12n/PropertiesModuleFactory +instanceKlass org/codehaus/groovy/util/URLStreams +instanceKlass org/codehaus/groovy/runtime/metaclass/MetaClassRegistryImpl$DefaultModuleListener +instanceKlass org/codehaus/groovy/runtime/m12n/ExtensionModuleScanner +instanceKlass java/util/ResourceBundle$CacheKey +instanceKlass java/time/ZoneId +instanceKlass org/codehaus/groovy/runtime/DefaultGroovyStaticMethods +instanceKlass org/codehaus/groovy/runtime/metaclass/MetaClassRegistryImpl$$Lambda$344 +instanceKlass org/codehaus/groovy/runtime/RangeInfo +instanceKlass java/util/function/ToDoubleFunction +instanceKlass java/util/function/ToLongFunction +instanceKlass java/util/function/ToIntFunction +instanceKlass java/util/function/DoubleFunction +instanceKlass java/util/function/LongFunction +instanceKlass java/util/stream/DoubleStream +instanceKlass java/util/stream/LongStream +instanceKlass java/util/function/DoublePredicate +instanceKlass java/util/function/LongPredicate +instanceKlass java/util/function/IntPredicate +instanceKlass java/util/OptionalInt +instanceKlass java/util/OptionalLong +instanceKlass java/util/OptionalDouble +instanceKlass org/codehaus/groovy/runtime/metaclass/MetaClassRegistryImpl$$Lambda$343 +instanceKlass org/codehaus/groovy/runtime/NumberAwareComparator +instanceKlass org/codehaus/groovy/runtime/EncodingGroovyMethods +instanceKlass java/lang/ProcessHandle +instanceKlass java/util/concurrent/CompletableFuture +instanceKlass java/util/concurrent/CompletionStage +instanceKlass java/lang/ProcessHandle$Info +instanceKlass org/codehaus/groovy/reflection/CachedClass$CachedMethodComparatorByName +instanceKlass org/codehaus/groovy/reflection/CachedMethod$MyComparator +instanceKlass java/lang/SecurityManager$$Lambda$342 +instanceKlass java/lang/SecurityManager$$Lambda$341 +instanceKlass java/lang/SecurityManager$$Lambda$340 +instanceKlass java/lang/SecurityManager$$Lambda$339 +instanceKlass java/lang/SecurityManager$$Lambda$338 +instanceKlass java/lang/SecurityManager$$Lambda$337 +instanceKlass java/lang/SecurityManager$$Lambda$336 +instanceKlass java/lang/SecurityManager$$Lambda$335 +instanceKlass java/lang/SecurityManager$$Lambda$334 +instanceKlass java/lang/SecurityManager$$Lambda$333 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass java/lang/SecurityManager$$Lambda$332 +instanceKlass org/codehaus/groovy/vmplugin/v9/Java9$$Lambda$331 +instanceKlass org/codehaus/groovy/vmplugin/v9/Java9$$Lambda$330 +instanceKlass org/codehaus/groovy/vmplugin/v9/Java9$$Lambda$329 +instanceKlass org/codehaus/groovy/vmplugin/v9/Java9$$Lambda$328 +instanceKlass org/codehaus/groovy/vmplugin/v9/Java9$$Lambda$327 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/codehaus/groovy/vmplugin/v9/Java9$$Lambda$326 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/codehaus/groovy/vmplugin/v9/Java9$$Lambda$325 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/codehaus/groovy/vmplugin/v9/Java9$$Lambda$324 +instanceKlass java/util/Spliterators$IteratorSpliterator +instanceKlass jdk/internal/module/SystemModules$all +instanceKlass sun/nio/fs/ExtendedFileSystemProvider +instanceKlass org/codehaus/groovy/runtime/DefaultGroovyMethodsSupport +instanceKlass org/codehaus/groovy/ast/Variable +instanceKlass groovyjarjarasm/asm/Opcodes +instanceKlass org/codehaus/groovy/vmplugin/v8/Java8 +instanceKlass org/codehaus/groovy/vmplugin/VMPluginFactory$$Lambda$323 +instanceKlass org/codehaus/groovy/vmplugin/VMPlugin +instanceKlass org/codehaus/groovy/vmplugin/VMPluginFactory +instanceKlass org/codehaus/groovy/reflection/ReflectionUtils +instanceKlass org/codehaus/groovy/reflection/CachedClass$3$$Lambda$322 +instanceKlass org/codehaus/groovy/reflection/CachedClass$3$$Lambda$321 +instanceKlass org/codehaus/groovy/reflection/CachedClass$3$$Lambda$320 +instanceKlass org/codehaus/groovy/reflection/CachedClass$3$$Lambda$319 +instanceKlass org/codehaus/groovy/runtime/memoize/MemoizeCache +instanceKlass org/codehaus/groovy/reflection/CachedClass$3$$Lambda$318 +instanceKlass org/codehaus/groovy/reflection/stdclasses/CachedSAMClass$$Lambda$317 +instanceKlass org/codehaus/groovy/reflection/stdclasses/CachedSAMClass$$Lambda$316 +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass org/codehaus/groovy/reflection/stdclasses/InjectedInvoker +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/MethodHandleImpl$BindCaller +instanceKlass org/codehaus/groovy/runtime/metaclass/MetaClassRegistryImpl$$Lambda$315 +instanceKlass org/codehaus/groovy/transform/trait/Traits$Implemented +instanceKlass org/codehaus/groovy/util/ReferenceType$HardRef +instanceKlass org/codehaus/groovy/util/ManagedReference +instanceKlass org/codehaus/groovy/reflection/ClassInfo$GlobalClassSet +instanceKlass org/apache/groovy/util/SystemUtil +instanceKlass org/codehaus/groovy/reflection/GroovyClassValue +instanceKlass org/codehaus/groovy/reflection/GroovyClassValueFactory +instanceKlass org/codehaus/groovy/reflection/ClassInfo$1 +instanceKlass org/codehaus/groovy/reflection/CachedClass +instanceKlass org/codehaus/groovy/reflection/GroovyClassValue$ComputeValue +instanceKlass org/codehaus/groovy/util/ComplexKeyHashMap$Entry +instanceKlass org/codehaus/groovy/util/ComplexKeyHashMap$EntryIterator +instanceKlass org/codehaus/groovy/util/ComplexKeyHashMap +instanceKlass org/codehaus/groovy/reflection/ReflectionCache +instanceKlass java/lang/Process +instanceKlass java/util/Timer +instanceKlass java/util/TimerTask +instanceKlass groovy/lang/groovydoc/Groovydoc +instanceKlass groovy/lang/ListWithDefault +instanceKlass groovy/lang/Range +instanceKlass groovy/util/BufferedIterator +instanceKlass java/util/BitSet +instanceKlass org/codehaus/groovy/reflection/GeneratedMetaMethod$DgmMethodRecord +instanceKlass groovy/lang/MetaClassRegistry$MetaClassCreationHandle +instanceKlass org/codehaus/groovy/runtime/m12n/ExtensionModuleRegistry +instanceKlass org/codehaus/groovy/util/Reference +instanceKlass org/codehaus/groovy/util/ReferenceManager +instanceKlass org/codehaus/groovy/util/ReferenceBundle +instanceKlass org/codehaus/groovy/util/ManagedConcurrentLinkedQueue +instanceKlass org/codehaus/groovy/util/FastArray +instanceKlass groovy/lang/MetaClassRegistryChangeEventListener +instanceKlass java/util/EventListener +instanceKlass org/codehaus/groovy/reflection/ParameterTypes +instanceKlass org/codehaus/groovy/runtime/m12n/ExtensionModuleScanner$ExtensionModuleListener +instanceKlass org/codehaus/groovy/runtime/metaclass/MetaClassRegistryImpl +instanceKlass org/codehaus/groovy/runtime/InvokerHelper +instanceKlass org/gradle/internal/classpath/Instrumented$1 +instanceKlass java/util/stream/Sink$ChainedInt +instanceKlass java/util/stream/Sink$OfInt +instanceKlass java/util/function/IntConsumer +instanceKlass java/util/stream/Nodes$ArrayNode +instanceKlass org/codehaus/groovy/runtime/callsite/CallSiteArray$$Lambda$314 +instanceKlass org/codehaus/groovy/runtime/callsite/CallSiteArray$$Lambda$313 +instanceKlass org/codehaus/groovy/runtime/callsite/AbstractCallSite +instanceKlass java/util/stream/Streams$RangeIntSpliterator +instanceKlass java/util/stream/IntStream +instanceKlass org/gradle/internal/instantiation/generator/AsmBackedClassGenerator$NoOpBuilder +instanceKlass groovy/transform/Internal +instanceKlass java/beans/Transient +instanceKlass org/gradle/process/ExecResult +instanceKlass org/gradle/api/resources/ResourceHandler +instanceKlass org/codehaus/groovy/reflection/ClassInfo +instanceKlass org/codehaus/groovy/util/Finalizable +instanceKlass org/codehaus/groovy/runtime/callsite/CallSite +instanceKlass com/google/common/collect/MapMakerInternalMap$AbstractStrongKeyEntry +instanceKlass com/google/common/collect/MapMakerInternalMap$WeakValueEntry +instanceKlass com/google/common/collect/Count +instanceKlass org/gradle/api/internal/initialization/loadercache/DefaultClassLoaderCache$CachedClassLoader +instanceKlass org/gradle/api/internal/initialization/loadercache/DefaultClassLoaderCache$$Lambda$312 +instanceKlass org/gradle/groovy/scripts/internal/DefaultScriptCompilationHandler$ClassesDirCompiledScript$$Lambda$311 +instanceKlass org/gradle/configuration/DefaultScriptPluginFactory$ScriptPluginImpl$$Lambda$310 +instanceKlass org/gradle/groovy/scripts/internal/BuildScriptData +instanceKlass org/gradle/internal/snapshot/AbstractIncompleteFileSystemNode$2$$Lambda$309 +instanceKlass org/gradle/internal/snapshot/AbstractIncompleteFileSystemNode$$Lambda$308 +instanceKlass org/gradle/internal/snapshot/AbstractIncompleteFileSystemNode$2$$Lambda$307 +instanceKlass org/gradle/internal/snapshot/PathUtil$1 +instanceKlass org/gradle/internal/snapshot/AbstractStorePathRelationshipHandler +instanceKlass org/gradle/internal/snapshot/AbstractIncompleteFileSystemNode$2 +instanceKlass org/gradle/internal/snapshot/AbstractListChildMap +instanceKlass org/gradle/api/internal/changedetection/state/CachingFileHasher$FileInfo +instanceKlass org/gradle/cache/internal/DefaultMultiProcessSafePersistentIndexedCache$$Lambda$306 +instanceKlass org/gradle/cache/internal/CacheAccessWorker$1 +instanceKlass org/gradle/cache/internal/AsyncCacheAccessDecoratedCache$$Lambda$305 +instanceKlass org/gradle/cache/internal/InMemoryDecoratedCache$$Lambda$304 +instanceKlass org/gradle/cache/internal/CrossProcessSynchronizingCache$$Lambda$303 +instanceKlass org/gradle/cache/internal/btree/BTreePersistentIndexedCache$DataBlockUpdateResult +instanceKlass org/gradle/internal/io/StreamByteBuffer$StreamByteBufferChunk +instanceKlass org/gradle/internal/snapshot/SnapshotUtil$1 +instanceKlass org/gradle/internal/snapshot/AbstractIncompleteFileSystemNode$$Lambda$302 +instanceKlass org/gradle/internal/io/StreamByteBuffer +instanceKlass org/gradle/cache/internal/btree/BTreePersistentIndexedCache$Lookup +instanceKlass org/gradle/cache/internal/btree/BTreePersistentIndexedCache$IndexEntry +instanceKlass org/gradle/cache/internal/DefaultMultiProcessSafePersistentIndexedCache$$Lambda$301 +instanceKlass org/gradle/cache/internal/btree/BTreePersistentIndexedCache$IndexRoot +instanceKlass com/google/common/primitives/Longs +instanceKlass org/gradle/api/internal/initialization/ClassLoaderScopeIdentifier$Id +instanceKlass org/gradle/model/dsl/internal/transform/ClosureCreationInterceptingVerifier +instanceKlass org/gradle/groovy/scripts/internal/FactoryBackedCompileOperation +instanceKlass org/gradle/groovy/scripts/internal/BuildScriptTransformer$1 +instanceKlass org/gradle/groovy/scripts/internal/BuildScriptTransformer +instanceKlass org/gradle/cache/internal/btree/FreeListBlockStore$FreeListEntry +instanceKlass org/gradle/api/internal/collections/IterationOrderRetainingSetElementSource$1 +instanceKlass org/gradle/cache/internal/btree/BlockPointer +instanceKlass org/gradle/api/internal/plugins/DefaultPluginManager$3 +instanceKlass org/gradle/cache/internal/btree/ByteInput +instanceKlass org/gradle/cache/internal/btree/ByteOutput +instanceKlass org/gradle/cache/internal/btree/FreeListBlockStore$2 +instanceKlass org/gradle/cache/internal/btree/FreeListBlockStore$1 +instanceKlass org/gradle/cache/internal/btree/BTreePersistentIndexedCache$2 +instanceKlass org/gradle/api/plugins/AppliedPlugin +instanceKlass org/gradle/cache/internal/btree/BTreePersistentIndexedCache$1 +instanceKlass org/gradle/cache/internal/btree/FreeListBlockStore +instanceKlass org/gradle/cache/internal/btree/StateCheckBlockStore +instanceKlass org/gradle/api/internal/plugins/ApplyPluginBuildOperationType$Result +instanceKlass org/gradle/api/internal/plugins/DefaultPluginManager +instanceKlass org/gradle/api/internal/plugins/ImperativeOnlyPluginTarget +instanceKlass org/gradle/api/internal/plugins/PluginTarget +instanceKlass org/gradle/cache/internal/btree/Block +instanceKlass org/gradle/cache/internal/btree/FileBackedBlockStore +instanceKlass org/gradle/groovy/scripts/internal/DefaultScriptRunnerFactory$ScriptRunnerImpl +instanceKlass org/gradle/cache/internal/btree/CachingBlockStore +instanceKlass org/gradle/groovy/scripts/internal/CrossBuildInMemoryCachingScriptClassCache$CachedCompiledScript +instanceKlass org/gradle/cache/internal/btree/KeyHasher +instanceKlass org/gradle/cache/internal/btree/BlockStore$Factory +instanceKlass org/gradle/internal/classloader/ImplementationHashAware +instanceKlass org/gradle/groovy/scripts/internal/DefaultScriptCompilationHandler$ClassesDirCompiledScript +instanceKlass org/gradle/cache/internal/btree/BlockPayload +instanceKlass org/gradle/cache/internal/btree/BlockStore +instanceKlass org/gradle/cache/internal/DefaultMultiProcessSafePersistentIndexedCache$$Lambda$300 +instanceKlass org/gradle/cache/internal/CacheAccessWorker$2 +instanceKlass org/gradle/cache/internal/CacheAccessWorker$FlushOperationsCommand +instanceKlass org/gradle/cache/internal/CacheAccessWorker$ShutdownOperationsCommand +instanceKlass org/gradle/internal/classpath/DefaultCachedClasspathTransformer$$Lambda$299 +instanceKlass org/gradle/cache/internal/AsyncCacheAccessDecoratedCache$$Lambda$298 +instanceKlass sun/nio/fs/WindowsPath$1 +instanceKlass org/gradle/internal/classpath/DefaultCachedClasspathTransformer$$Lambda$297 +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/internal/classpath/DefaultCachedClasspathTransformer$$Lambda$296 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/internal/classpath/DefaultCachedClasspathTransformer$$Lambda$295 +instanceKlass org/gradle/internal/classpath/DefaultCachedClasspathTransformer$$Lambda$294 +instanceKlass org/gradle/internal/classpath/DefaultCachedClasspathTransformer$$Lambda$293 +instanceKlass org/gradle/internal/Either +instanceKlass org/gradle/internal/classpath/DefaultCachedClasspathTransformer$$Lambda$292 +instanceKlass org/gradle/internal/snapshot/ReadOnlyFileSystemNode$1 +instanceKlass org/gradle/internal/snapshot/ChildMap$Entry$$Lambda$291 +instanceKlass org/gradle/internal/snapshot/SnapshotUtil$2 +instanceKlass org/gradle/internal/snapshot/SnapshotUtil +instanceKlass org/gradle/internal/watch/registry/impl/HierarchicalFileWatcherUpdater$$Lambda$290 +instanceKlass org/gradle/internal/watch/vfs/impl/WatchingVirtualFileSystem$$Lambda$289 +instanceKlass org/gradle/internal/snapshot/SnapshotHierarchy$SnapshotDiffListener +instanceKlass org/gradle/internal/watch/vfs/impl/WatchingVirtualFileSystem$$Lambda$288 +instanceKlass org/gradle/internal/watch/vfs/impl/WatchingVirtualFileSystem$$Lambda$287 +instanceKlass org/gradle/internal/watch/registry/impl/SnapshotCollectingDiffListener$$Lambda$286 +instanceKlass org/gradle/internal/snapshot/AbstractIncompleteFileSystemNode$$Lambda$285 +instanceKlass org/gradle/internal/snapshot/AbstractIncompleteFileSystemNode$$Lambda$284 +instanceKlass org/gradle/internal/snapshot/AbstractIncompleteFileSystemNode +instanceKlass org/gradle/internal/snapshot/ChildMap$Entry$PathRelationshipHandler +instanceKlass org/gradle/internal/snapshot/SingletonChildMap +instanceKlass org/gradle/internal/snapshot/PathUtil$$Lambda$283 +instanceKlass org/gradle/internal/snapshot/PathUtil$$Lambda$282 +instanceKlass org/gradle/internal/snapshot/VfsRelativePath +instanceKlass org/gradle/internal/watch/registry/impl/SnapshotCollectingDiffListener +instanceKlass org/gradle/internal/vfs/impl/AbstractVirtualFileSystem$$Lambda$281 +instanceKlass org/gradle/internal/vfs/impl/AbstractVirtualFileSystem$UpdateFunction +instanceKlass org/gradle/internal/vfs/impl/AbstractVirtualFileSystem$$Lambda$280 +instanceKlass org/gradle/internal/snapshot/ChildMapFactory +instanceKlass org/gradle/internal/snapshot/DirectorySnapshot$$Lambda$279 +instanceKlass org/gradle/internal/snapshot/ChildMap$Entry +instanceKlass org/gradle/internal/snapshot/ChildMap$InvalidationHandler +instanceKlass java/util/Comparator$$Lambda$278 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/internal/snapshot/FileSystemLocationSnapshot$$Lambda$277 +instanceKlass org/gradle/internal/snapshot/PathUtil +instanceKlass org/gradle/internal/snapshot/FileSystemLocationSnapshot$$Lambda$276 +instanceKlass org/gradle/internal/snapshot/MerkleDirectorySnapshotBuilder$Directory +instanceKlass java/nio/file/Files$3 +instanceKlass java/nio/file/FileTreeWalker$Event +instanceKlass java/nio/file/FileTreeWalker$DirectoryNode +instanceKlass java/nio/file/FileTreeWalker +instanceKlass org/gradle/internal/snapshot/MerkleDirectorySnapshotBuilder +instanceKlass org/gradle/internal/snapshot/RelativePathTracker +instanceKlass org/gradle/internal/RelativePathSupplier +instanceKlass org/gradle/internal/snapshot/impl/DirectorySnapshotterStatistics$CollectingFileVisitor +instanceKlass org/gradle/internal/vfs/impl/DefaultFileSystemAccess$1 +instanceKlass org/gradle/internal/file/impl/DefaultFileMetadata$1 +instanceKlass org/gradle/internal/file/impl/DefaultFileMetadata +instanceKlass org/gradle/internal/file/FileMetadata +instanceKlass org/gradle/internal/nativeintegration/filesystem/services/NativePlatformBackedFileMetadataAccessor$1 +instanceKlass net/rubygrapefruit/platform/internal/WindowsFileTime +instanceKlass net/rubygrapefruit/platform/internal/jni/WindowsFileFunctions +instanceKlass net/rubygrapefruit/platform/internal/WindowsFileStat +instanceKlass org/gradle/internal/snapshot/SnapshottingFilter$1 +instanceKlass org/gradle/internal/snapshot/SnapshottingFilter +instanceKlass org/gradle/internal/vfs/impl/DefaultFileSystemAccess$$Lambda$275 +instanceKlass org/gradle/internal/vfs/impl/DefaultFileSystemAccess$$Lambda$274 +instanceKlass org/gradle/internal/snapshot/SnapshotHierarchy$$Lambda$273 +instanceKlass org/gradle/internal/snapshot/SnapshotHierarchy$$Lambda$272 +instanceKlass org/gradle/internal/vfs/impl/DefaultFileSystemAccess$$Lambda$271 +instanceKlass org/gradle/internal/classpath/DefaultCachedClasspathTransformer$$Lambda$270 +instanceKlass org/gradle/internal/classpath/DefaultCachedClasspathTransformer$$Lambda$269 +instanceKlass org/gradle/internal/classpath/DefaultCachedClasspathTransformer$$Lambda$268 +instanceKlass org/gradle/internal/classpath/DefaultCachedClasspathTransformer$ValueOrTransformProvider +instanceKlass org/gradle/internal/classpath/InstrumentingClasspathFileTransformer +instanceKlass org/codehaus/groovy/runtime/callsite/CallSiteArray +instanceKlass java/lang/invoke/SerializedLambda +instanceKlass org/gradle/internal/classpath/Instrumented +instanceKlass org/gradle/internal/classpath/InstrumentingTransformer +instanceKlass org/gradle/internal/classpath/CompositeTransformer +instanceKlass org/gradle/groovy/scripts/internal/FileCacheBackedScriptClassCompiler$1 +instanceKlass org/gradle/cache/internal/DefaultPersistentDirectoryCache$Initializer +instanceKlass org/gradle/groovy/scripts/internal/FileCacheBackedScriptClassCompiler$CompileToCrossBuildCacheAction +instanceKlass org/gradle/groovy/scripts/internal/FileCacheBackedScriptClassCompiler$ProgressReportingInitializer +instanceKlass com/google/common/io/ByteArrayDataInput +instanceKlass com/google/common/io/ByteArrayDataOutput +instanceKlass com/google/common/io/ByteStreams +instanceKlass java/math/MutableBigInteger +instanceKlass org/gradle/groovy/scripts/internal/ScriptCacheKey +instanceKlass org/gradle/internal/scripts/GradleScript +instanceKlass org/gradle/api/Script +instanceKlass org/gradle/groovy/scripts/internal/NoDataCompileOperation +instanceKlass com/google/common/collect/MapMakerInternalMap$StrongValueEntry +instanceKlass org/codehaus/groovy/control/CompilationUnit$SourceUnitOperation +instanceKlass org/codehaus/groovy/control/CompilationUnit$ISourceUnitOperation +instanceKlass org/codehaus/groovy/control/CompilationUnit$PhaseOperation +instanceKlass org/gradle/groovy/scripts/internal/Permits +instanceKlass org/codehaus/groovy/ast/GroovyCodeVisitor +instanceKlass org/gradle/plugin/use/internal/PluginUseScriptBlockMetadataCompiler +instanceKlass org/codehaus/groovy/ast/ASTNode +instanceKlass org/codehaus/groovy/ast/NodeMetaDataHandler +instanceKlass groovy/lang/groovydoc/GroovydocHolder +instanceKlass org/gradle/groovy/scripts/internal/InitialPassStatementTransformer +instanceKlass org/gradle/internal/resource/CachingTextResource +instanceKlass org/gradle/groovy/scripts/DelegatingScriptSource +instanceKlass org/gradle/groovy/scripts/DefaultScriptCompilerFactory$ScriptCompilerImpl +instanceKlass org/gradle/configuration/DefaultScriptTarget +instanceKlass org/gradle/tooling/internal/provider/runner/PluginApplicationTracker$$Lambda$267 +instanceKlass org/gradle/util/internal/TextUtil$1 +instanceKlass java/util/regex/CharPredicates$$Lambda$266 +instanceKlass java/util/regex/CharPredicates$$Lambda$265 +instanceKlass org/gradle/util/internal/TextUtil +instanceKlass org/gradle/configuration/BuildOperationScriptPlugin$OperationDetails +instanceKlass org/gradle/configuration/BuildOperationScriptPlugin$1 +instanceKlass org/gradle/configuration/internal/DefaultUserCodeApplicationContext$CurrentApplication +instanceKlass org/gradle/configuration/internal/UserCodeApplicationContext$Application +instanceKlass org/gradle/configuration/BuildOperationScriptPlugin$$Lambda$264 +instanceKlass org/gradle/configuration/internal/UserCodeApplicationId +instanceKlass org/gradle/configuration/BuildOperationScriptPlugin$2 +instanceKlass org/gradle/configuration/ApplyScriptPluginBuildOperationType$Result +instanceKlass org/gradle/configuration/BuildOperationScriptPlugin +instanceKlass org/gradle/configuration/ScriptTarget +instanceKlass org/gradle/configuration/DefaultScriptPluginFactory$ScriptPluginImpl +instanceKlass org/gradle/normalization/InputNormalizationHandler +instanceKlass org/gradle/api/ProjectState +instanceKlass org/gradle/api/attributes/DocsType +instanceKlass org/gradle/api/internal/artifacts/JavaEcosystemAttributesDescriber +instanceKlass org/gradle/api/internal/artifacts/JavaEcosystemSupport$TargetJvmEnvironmentDisambiguationRules +instanceKlass org/gradle/api/internal/artifacts/JavaEcosystemSupport$TargetJvmEnvironmentCompatibilityRules +instanceKlass org/gradle/api/attributes/java/TargetJvmEnvironment +instanceKlass org/gradle/api/internal/attributes/DefaultOrderedDisambiguationRule +instanceKlass org/gradle/api/internal/attributes/DefaultOrderedCompatibilityRule +instanceKlass org/gradle/api/internal/attributes/AttributeMatchingRules +instanceKlass org/gradle/api/attributes/java/TargetJvmVersion +instanceKlass org/gradle/api/internal/artifacts/JavaEcosystemSupport$BundlingDisambiguationRules +instanceKlass org/gradle/api/internal/artifacts/JavaEcosystemSupport$BundlingCompatibilityRules +instanceKlass org/gradle/api/attributes/Bundling +instanceKlass org/gradle/api/internal/artifacts/JavaEcosystemSupport$$Lambda$263 +instanceKlass org/gradle/api/internal/artifacts/JavaEcosystemSupport$LibraryElementsDisambiguationRules +instanceKlass org/gradle/api/internal/artifacts/JavaEcosystemSupport$LibraryElementsCompatibilityRules +instanceKlass org/gradle/api/internal/artifacts/JavaEcosystemSupport$1 +instanceKlass org/gradle/api/internal/artifacts/JavaEcosystemSupport$UsageDisambiguationRules +instanceKlass org/gradle/api/internal/artifacts/JavaEcosystemSupport$UsageCompatibilityRules +instanceKlass org/gradle/api/internal/artifacts/JavaEcosystemSupport +instanceKlass org/gradle/internal/locking/DefaultDependencyLockingHandler$$Lambda$262 +instanceKlass org/gradle/internal/locking/DefaultDependencyLockingHandler$$Lambda$261 +instanceKlass org/gradle/api/internal/artifacts/DefaultDependencyManagementServices$DependencyResolutionScopeServices$$Lambda$260 +instanceKlass org/gradle/internal/locking/DefaultDependencyLockingHandler +instanceKlass org/gradle/api/internal/artifacts/ivyservice/moduleconverter/DefaultRootComponentMetadataBuilder$MetadataHolder +instanceKlass org/gradle/internal/component/local/model/DefaultLocalComponentMetadata +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfigurationContainer$$Lambda$259 +instanceKlass org/gradle/api/artifacts/Configuration$Namer +instanceKlass org/gradle/api/internal/artifacts/configurations/MutationValidator +instanceKlass org/gradle/api/internal/artifacts/configurations/ConfigurationInternal +instanceKlass org/gradle/internal/deprecation/DeprecatableConfiguration +instanceKlass org/gradle/api/internal/artifacts/configurations/ConfigurationsProvider +instanceKlass org/gradle/api/internal/file/copy/CopySpecSource +instanceKlass org/gradle/api/file/CopySpec +instanceKlass org/gradle/api/file/CopyProcessingSpec +instanceKlass org/gradle/api/file/ContentFilterable +instanceKlass org/gradle/api/file/CopySourceSpec +instanceKlass org/gradle/api/artifacts/ConfigurablePublishArtifact +instanceKlass org/gradle/api/internal/attributes/AttributeDesugaring +instanceKlass org/gradle/api/internal/artifacts/transform/ConsumerProvidedVariantFinder +instanceKlass org/gradle/api/internal/artifacts/transform/VariantSelector +instanceKlass org/gradle/api/internal/artifacts/transform/DefaultArtifactTransforms +instanceKlass org/gradle/api/internal/artifacts/ivyservice/DefaultConfigurationResolver$$Lambda$258 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/oldresult/ResolvedConfigurationBuilder +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/DependencyArtifactsVisitor +instanceKlass org/gradle/api/internal/artifacts/ivyservice/DefaultConfigurationResolver +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/projectresult/ResolvedLocalComponentsResult +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ShortCircuitEmptyConfigurationResolver +instanceKlass org/gradle/api/artifacts/result/ResolutionResult +instanceKlass org/gradle/api/artifacts/ResolvedConfiguration +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/VisitedArtifactSet +instanceKlass org/gradle/api/internal/artifacts/ResolveContext +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ErrorHandlingConfigurationResolver +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/ResolvedArtifactSet$TransformSourceVisitor +instanceKlass org/gradle/api/internal/artifacts/transform/DefaultTransformationNodeFactory +instanceKlass org/gradle/api/internal/artifacts/transform/DefaultTransformedVariantFactory$$Lambda$257 +instanceKlass org/gradle/api/internal/artifacts/transform/TransformedProjectArtifactSet +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/ResolvedArtifactSet$Artifacts +instanceKlass org/gradle/api/internal/artifacts/transform/DefaultTransformedVariantFactory$$Lambda$256 +instanceKlass org/gradle/api/internal/artifacts/transform/DefaultTransformedVariantFactory$Factory +instanceKlass org/gradle/api/internal/artifacts/transform/AbstractTransformedArtifactSet +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/ResolvedArtifactSet +instanceKlass org/gradle/api/internal/artifacts/transform/ExtraExecutionGraphDependenciesResolverFactory +instanceKlass org/gradle/api/internal/artifacts/transform/VariantDefinition +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/ResolvedVariant +instanceKlass org/gradle/api/internal/artifacts/type/DefaultArtifactTypeRegistry +instanceKlass org/gradle/api/artifacts/transform/TransformParameters$None +instanceKlass org/gradle/api/artifacts/transform/TransformParameters +instanceKlass org/gradle/api/artifacts/transform/TransformAction +instanceKlass org/gradle/api/artifacts/transform/VariantTransform +instanceKlass org/gradle/api/artifacts/transform/TransformSpec +instanceKlass org/gradle/api/internal/artifacts/transform/DefaultVariantTransformRegistry$RecordingRegistration +instanceKlass org/gradle/api/internal/artifacts/transform/DefaultVariantTransformRegistry +instanceKlass org/gradle/api/internal/artifacts/ArtifactTransformRegistration +instanceKlass org/gradle/api/internal/artifacts/transform/Transformer +instanceKlass org/gradle/api/internal/tasks/properties/PropertyVisitor +instanceKlass org/gradle/api/internal/artifacts/transform/DefaultTransformationRegistrationFactory +instanceKlass sun/reflect/annotation/AnnotationParser$$Lambda$255 +instanceKlass org/gradle/api/reflect/InjectionPointQualifier +instanceKlass org/gradle/api/internal/tasks/properties/AbstractPropertyNode +instanceKlass org/gradle/api/internal/tasks/properties/bean/RuntimeBeanNodeFactory +instanceKlass org/gradle/api/internal/tasks/properties/DefaultPropertyWalker +instanceKlass org/gradle/api/internal/tasks/properties/DefaultTypeMetadataStore$$Lambda$254 +instanceKlass org/gradle/api/internal/tasks/properties/DefaultTypeMetadataStore$$Lambda$253 +instanceKlass org/gradle/api/internal/tasks/properties/TypeMetadata +instanceKlass org/gradle/internal/reflect/PropertyMetadata +instanceKlass org/gradle/api/internal/tasks/properties/DefaultTypeMetadataStore +instanceKlass org/gradle/api/internal/tasks/properties/TypeMetadataStore +instanceKlass org/gradle/api/internal/tasks/properties/InspectionSchemeFactory$InspectionSchemeImpl +instanceKlass org/gradle/api/internal/tasks/properties/InspectionScheme +instanceKlass org/apache/commons/lang/builder/HashCodeBuilder +instanceKlass com/google/common/base/Equivalence$Wrapper +instanceKlass org/gradle/internal/reflect/Methods +instanceKlass org/gradle/internal/reflect/annotations/impl/DefaultTypeAnnotationMetadataStore$$Lambda$252 +instanceKlass org/gradle/internal/service/scopes/ExecutionGlobalServices$$Lambda$251 +instanceKlass org/gradle/internal/scripts/ScriptOrigin +instanceKlass org/gradle/api/internal/PolymorphicDomainObjectContainerInternal +instanceKlass org/gradle/api/ExtensiblePolymorphicDomainObjectContainer +instanceKlass org/gradle/api/internal/rules/NamedDomainObjectFactoryRegistry +instanceKlass org/gradle/util/internal/ConfigureUtil$WrappedConfigureAction +instanceKlass org/gradle/util/internal/ClosureBackedAction +instanceKlass org/gradle/internal/reflect/AnnotationCategory$1 +instanceKlass org/gradle/work/NormalizeLineEndings +instanceKlass org/gradle/api/tasks/IgnoreEmptyDirectories +instanceKlass org/gradle/api/tasks/Optional +instanceKlass org/gradle/api/tasks/PathSensitive +instanceKlass org/gradle/api/tasks/CompileClasspath +instanceKlass org/gradle/api/tasks/Classpath +instanceKlass org/gradle/api/tasks/SkipWhenEmpty +instanceKlass org/gradle/work/Incremental +instanceKlass org/gradle/api/tasks/UntrackedTask +instanceKlass org/gradle/work/DisableCachingByDefault +instanceKlass org/gradle/api/artifacts/transform/CacheableTransform +instanceKlass org/gradle/api/tasks/CacheableTask +instanceKlass org/gradle/internal/reflect/annotations/impl/DefaultTypeAnnotationMetadataStore$1 +instanceKlass org/gradle/internal/reflect/validation/TypeValidationContext +instanceKlass org/gradle/internal/reflect/annotations/TypeAnnotationMetadata +instanceKlass org/gradle/internal/reflect/annotations/impl/DefaultTypeAnnotationMetadataStore +instanceKlass org/gradle/internal/service/scopes/ExecutionGlobalServices$$Lambda$250 +instanceKlass org/gradle/api/internal/AbstractTask +instanceKlass org/gradle/api/internal/TaskInternal +instanceKlass org/gradle/internal/service/scopes/ExecutionGlobalServices$$Lambda$249 +instanceKlass org/gradle/internal/execution/caching/CachingDisabledReason +instanceKlass org/gradle/internal/execution/DeferredExecutionHandler +instanceKlass org/gradle/internal/execution/UnitOfWork +instanceKlass org/gradle/api/internal/artifacts/transform/DefaultTransformerInvocationFactory +instanceKlass org/gradle/api/internal/artifacts/DefaultDependencyManagementServices$ArtifactTransformResolutionGradleUserHomeServices$1 +instanceKlass org/gradle/internal/execution/workspace/impl/DefaultImmutableWorkspaceProvider$$Lambda$248 +instanceKlass org/gradle/internal/execution/workspace/impl/DefaultImmutableWorkspaceProvider +instanceKlass org/gradle/cache/ManualEvictionInMemoryCache +instanceKlass org/gradle/cache/internal/DefaultCrossBuildInMemoryCacheFactory$CrossBuildCacheRetainingDataFromPreviousBuild +instanceKlass org/gradle/api/internal/artifacts/DependencyManagementGradleUserHomeScopeServices$$Lambda$247 +instanceKlass org/gradle/internal/Try +instanceKlass org/gradle/internal/snapshot/impl/ImplementationSnapshotSerializer +instanceKlass org/gradle/internal/execution/history/impl/FileSystemSnapshotSerializer +instanceKlass org/gradle/internal/execution/history/impl/FileCollectionFingerprintSerializer +instanceKlass org/gradle/internal/execution/history/PreviousExecutionState +instanceKlass org/gradle/internal/execution/history/impl/DefaultExecutionHistoryStore +instanceKlass org/gradle/api/internal/changedetection/state/DefaultExecutionHistoryCacheAccess +instanceKlass org/gradle/internal/execution/ExecutionResult +instanceKlass org/gradle/internal/execution/UnitOfWork$ExecutionRequest +instanceKlass org/gradle/internal/execution/steps/ExecuteStep +instanceKlass org/gradle/internal/execution/steps/RemovePreviousOutputsStep +instanceKlass org/gradle/internal/execution/steps/ResolveInputChangesStep +instanceKlass org/gradle/internal/execution/steps/TimeoutStep +instanceKlass org/gradle/internal/execution/steps/CreateOutputsStep +instanceKlass org/gradle/internal/execution/steps/StoreExecutionStateStep +instanceKlass org/gradle/internal/execution/steps/BroadcastChangingOutputsStep +instanceKlass org/gradle/internal/execution/history/AfterExecutionState +instanceKlass org/gradle/internal/execution/history/OutputExecutionState +instanceKlass org/gradle/internal/execution/steps/SkipUpToDateStep +instanceKlass org/gradle/internal/execution/steps/IncrementalChangesContext +instanceKlass org/gradle/internal/execution/steps/CachingContext +instanceKlass org/gradle/internal/execution/steps/ValidationFinishedContext +instanceKlass org/gradle/internal/execution/steps/BeforeExecutionContext +instanceKlass org/gradle/internal/execution/steps/PreviousExecutionContext +instanceKlass org/gradle/internal/execution/steps/WorkspaceContext +instanceKlass org/gradle/internal/execution/history/changes/IncrementalInputProperties +instanceKlass org/gradle/internal/execution/fingerprint/InputFingerprinter$InputVisitor +instanceKlass org/gradle/internal/execution/steps/ResolveChangesStep +instanceKlass org/gradle/internal/execution/steps/CachingResult +instanceKlass org/gradle/internal/execution/ExecutionEngine$Result +instanceKlass org/gradle/internal/execution/steps/UpToDateResult +instanceKlass org/gradle/internal/execution/steps/AfterExecutionResult +instanceKlass org/gradle/api/internal/artifacts/DependencyManagementBuildScopeServices$NoOpCachingStateStep +instanceKlass org/gradle/internal/reflect/validation/ValidationProblemBuilder +instanceKlass org/gradle/internal/execution/steps/ValidateStep +instanceKlass org/gradle/internal/execution/history/BeforeExecutionState +instanceKlass org/gradle/internal/execution/history/InputExecutionState +instanceKlass org/gradle/internal/execution/history/ExecutionState +instanceKlass org/gradle/internal/execution/UnitOfWork$ImplementationVisitor +instanceKlass org/gradle/internal/execution/steps/BuildOperationStep +instanceKlass org/gradle/internal/execution/steps/Result +instanceKlass org/gradle/internal/execution/steps/RemoveUntrackedExecutionStateStep +instanceKlass org/gradle/internal/execution/steps/LoadPreviousExecutionStateStep +instanceKlass org/gradle/internal/execution/steps/AssignWorkspaceStep +instanceKlass org/gradle/internal/execution/steps/IdentityCacheStep +instanceKlass org/gradle/internal/execution/steps/IdentityContext +instanceKlass org/gradle/internal/execution/steps/ExecutionRequestContext +instanceKlass org/gradle/internal/execution/steps/Context +instanceKlass org/gradle/internal/execution/steps/IdentifyStep +instanceKlass org/gradle/internal/execution/ExecutionEngine$Request +instanceKlass org/gradle/internal/execution/impl/DefaultExecutionEngine +instanceKlass org/gradle/internal/id/UniqueId$1 +instanceKlass com/google/common/base/Ascii +instanceKlass com/google/common/io/BaseEncoding$Alphabet +instanceKlass com/google/common/io/BaseEncoding +instanceKlass org/gradle/internal/id/UniqueId +instanceKlass org/gradle/internal/execution/timeout/Timeout +instanceKlass org/gradle/internal/execution/timeout/impl/DefaultTimeoutHandler +instanceKlass org/gradle/internal/execution/history/impl/DefaultOverlappingOutputDetector +instanceKlass java/util/concurrent/LinkedBlockingDeque$Node +instanceKlass java/lang/management/MemoryUsage +instanceKlass org/gradle/internal/execution/UnitOfWork$OutputVisitor +instanceKlass org/gradle/launcher/daemon/server/health/gc/GarbageCollectionEvent +instanceKlass org/gradle/internal/execution/impl/DefaultOutputSnapshotter +instanceKlass org/gradle/internal/execution/fingerprint/impl/DefaultInputFingerprinter +instanceKlass org/gradle/internal/execution/fingerprint/impl/DefaultFileCollectionFingerprinterRegistry$$Lambda$246 +instanceKlass org/gradle/internal/execution/fingerprint/impl/DefaultFileCollectionFingerprinterRegistry +instanceKlass org/gradle/api/internal/changedetection/state/CachingFileSystemLocationSnapshotHasher +instanceKlass org/gradle/api/internal/changedetection/state/LineEndingNormalizingInputStreamHasher +instanceKlass org/gradle/api/tasks/CompileClasspathNormalizer +instanceKlass org/gradle/api/tasks/ClasspathNormalizer +instanceKlass org/gradle/internal/fingerprint/IgnoredPathInputNormalizer +instanceKlass org/gradle/internal/fingerprint/NameOnlyInputNormalizer +instanceKlass org/gradle/internal/fingerprint/RelativePathInputNormalizer +instanceKlass org/gradle/internal/execution/fingerprint/impl/DefaultFileNormalizationSpec +instanceKlass org/gradle/internal/execution/fingerprint/FileNormalizationSpec +instanceKlass org/gradle/internal/fingerprint/AbsolutePathInputNormalizer +instanceKlass org/gradle/api/tasks/FileNormalizer +instanceKlass org/gradle/internal/fingerprint/impl/FileCollectionFingerprinterRegistrations$$Lambda$245 +instanceKlass org/gradle/internal/execution/fingerprint/impl/FingerprinterRegistration +instanceKlass org/gradle/internal/fingerprint/impl/FileCollectionFingerprinterRegistrations$$Lambda$244 +instanceKlass org/gradle/internal/fingerprint/FileSystemLocationFingerprint +instanceKlass org/gradle/internal/fingerprint/impl/AbstractDirectorySensitiveFingerprintingStrategy$$Lambda$243 +instanceKlass org/gradle/internal/fingerprint/DirectorySensitivity$$Lambda$242 +instanceKlass org/gradle/internal/fingerprint/DirectorySensitivity$$Lambda$241 +instanceKlass org/gradle/internal/fingerprint/DirectorySensitivity$$Lambda$240 +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass org/gradle/internal/fingerprint/impl/FileCollectionFingerprinterRegistrations$$Lambda$239 +instanceKlass org/gradle/internal/snapshot/FileSystemLocationSnapshot$FileSystemLocationSnapshotVisitor +instanceKlass org/gradle/internal/fingerprint/impl/FileCollectionFingerprinterRegistrations$1 +instanceKlass org/gradle/api/internal/changedetection/state/LineEndingNormalizingFileSystemLocationSnapshotHasher$1 +instanceKlass org/gradle/api/internal/changedetection/state/LineEndingNormalizingFileSystemLocationSnapshotHasher +instanceKlass org/gradle/internal/fingerprint/hashing/FileSystemLocationSnapshotHasher$1 +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass org/gradle/internal/fingerprint/impl/FileCollectionFingerprinterRegistrations$$Lambda$238 +instanceKlass org/gradle/internal/normalization/java/ApiClassExtractor$$Lambda$237 +instanceKlass org/gradle/internal/normalization/java/ApiMemberWriterFactory +instanceKlass org/gradle/internal/normalization/java/impl/ApiMemberWriter +instanceKlass org/gradle/internal/normalization/java/ApiClassExtractor +instanceKlass org/gradle/api/internal/changedetection/state/AbiExtractingClasspathResourceHasher +instanceKlass org/gradle/internal/fingerprint/classpath/CompileClasspathFingerprinter +instanceKlass org/gradle/internal/fingerprint/hashing/FileSystemLocationSnapshotHasher +instanceKlass org/gradle/api/internal/changedetection/state/SplitResourceSnapshotterCacheService +instanceKlass org/gradle/internal/service/scopes/VirtualFileSystemServices$BuildSessionServices$$Lambda$236 +instanceKlass org/gradle/internal/execution/history/changes/ChangeVisitor +instanceKlass org/gradle/internal/execution/history/changes/InputFileChanges +instanceKlass org/gradle/internal/execution/history/changes/ChangeContainer +instanceKlass org/gradle/internal/execution/history/changes/DefaultExecutionStateChangeDetector +instanceKlass org/gradle/api/internal/artifacts/dsl/dependencies/GradlePluginVariantsSupport$TargetGradleVersionDisambiguationRule +instanceKlass org/gradle/api/internal/attributes/DefaultCompatibilityRuleChain$ExceptionHandler +instanceKlass org/gradle/api/internal/artifacts/dsl/dependencies/GradlePluginVariantsSupport$TargetGradleVersionCompatibilityRule +instanceKlass org/gradle/api/attributes/AttributeCompatibilityRule +instanceKlass org/gradle/api/attributes/plugin/GradlePluginApiVersion +instanceKlass org/gradle/api/internal/artifacts/dsl/dependencies/GradlePluginVariantsSupport +instanceKlass org/gradle/api/internal/attributes/DefaultDisambiguationRuleChain$ExceptionHandler +instanceKlass org/gradle/internal/action/DefaultConfigurableRules +instanceKlass org/gradle/internal/action/ConfigurableRules +instanceKlass org/gradle/api/artifacts/CacheableRule +instanceKlass org/gradle/internal/snapshot/impl/AbstractArraySnapshot +instanceKlass org/gradle/internal/snapshot/impl/AbstractScalarValueSnapshot +instanceKlass org/gradle/api/internal/DefaultActionConfiguration +instanceKlass org/gradle/internal/action/DefaultConfigurableRule +instanceKlass org/gradle/internal/action/InstantiatingAction +instanceKlass org/gradle/api/internal/artifacts/dsl/dependencies/PlatformSupport$$Lambda$235 +instanceKlass org/gradle/api/ActionConfiguration +instanceKlass org/gradle/api/internal/artifacts/dsl/dependencies/PlatformSupport$ComponentCategoryDisambiguationRule +instanceKlass org/gradle/api/internal/ReusableAction +instanceKlass org/gradle/api/attributes/AttributeDisambiguationRule +instanceKlass org/gradle/api/internal/attributes/MultipleCandidatesResult +instanceKlass org/gradle/api/attributes/MultipleCandidatesDetails +instanceKlass org/gradle/api/internal/attributes/DefaultDisambiguationRuleChain +instanceKlass org/gradle/internal/action/InstantiatingAction$ExceptionHandler +instanceKlass org/gradle/api/internal/attributes/DefaultCompatibilityRuleChain +instanceKlass org/gradle/api/attributes/CompatibilityRuleChain +instanceKlass org/gradle/api/attributes/DisambiguationRuleChain +instanceKlass org/gradle/api/internal/attributes/DefaultAttributeMatchingStrategy +instanceKlass org/gradle/api/internal/attributes/CompatibilityCheckResult +instanceKlass org/gradle/api/attributes/CompatibilityCheckDetails +instanceKlass org/gradle/api/internal/attributes/DefaultAttributesSchema$MergedSchema +instanceKlass org/gradle/api/internal/attributes/DefaultAttributesSchema$DefaultAttributeMatcher +instanceKlass org/gradle/api/internal/attributes/AttributeDescriber +instanceKlass org/gradle/api/attributes/AttributeMatchingStrategy +instanceKlass org/gradle/internal/component/model/AttributeSelectionSchema +instanceKlass org/gradle/internal/component/model/AttributeMatcher +instanceKlass org/gradle/internal/component/model/ComponentAttributeMatcher +instanceKlass org/gradle/api/internal/attributes/DefaultAttributesSchema +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/store/StoreSet +instanceKlass org/gradle/api/internal/artifacts/DefaultDependencyManagementServices$DependencyResolutionScopeServices$$Lambda$234 +instanceKlass org/gradle/api/internal/artifacts/DefaultArtifactRepositoryContainer$$Lambda$233 +instanceKlass org/gradle/api/internal/artifacts/DefaultArtifactRepositoryContainer$$Lambda$232 +instanceKlass org/gradle/api/internal/collections/AbstractIterationOrderRetainingElementSource$RealizedElementCollectionIterator +instanceKlass org/gradle/api/internal/collections/ListElementSource$1 +instanceKlass org/gradle/api/internal/collections/AbstractIterationOrderRetainingElementSource +instanceKlass org/gradle/api/internal/artifacts/DefaultArtifactRepositoryContainer$RepositoryNamer +instanceKlass org/gradle/api/artifacts/repositories/RepositoryContentDescriptor +instanceKlass org/gradle/api/artifacts/repositories/InclusiveRepositoryContentDescriptor +instanceKlass org/gradle/api/artifacts/repositories/IvyArtifactRepository +instanceKlass org/gradle/api/artifacts/repositories/MavenArtifactRepository +instanceKlass org/gradle/api/artifacts/repositories/MetadataSupplierAware +instanceKlass org/gradle/api/artifacts/repositories/AuthenticationSupported +instanceKlass org/gradle/api/artifacts/repositories/UrlArtifactRepository +instanceKlass org/gradle/api/artifacts/repositories/FlatDirectoryArtifactRepository +instanceKlass org/gradle/api/internal/collections/IndexedElementSource +instanceKlass org/gradle/api/internal/artifacts/dsl/RepositoryHandlerInternal +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/parser/GradleModuleMetadataParser +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/strategy/MavenVersionSelectorScheme +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/parser/PomParent +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/parser/AbstractModuleDescriptorParser +instanceKlass org/gradle/api/artifacts/repositories/AuthenticationContainer +instanceKlass org/gradle/api/internal/artifacts/repositories/DefaultBaseRepositoryFactory +instanceKlass org/apache/ivy/util/MessageLogger +instanceKlass org/gradle/api/internal/artifacts/ivyservice/DefaultIvyContextManager +instanceKlass org/gradle/internal/resource/local/CompositeLocallyAvailableResourceFinder +instanceKlass org/gradle/internal/resource/local/ivy/PatternBasedLocallyAvailableResourceFinder$1 +instanceKlass org/gradle/util/internal/MavenUtil +instanceKlass org/gradle/api/internal/artifacts/repositories/resolver/AbstractResourcePattern +instanceKlass org/gradle/internal/resource/local/LocallyAvailableResourceFinderSearchableFileStoreAdapter$$Lambda$231 +instanceKlass org/gradle/internal/resource/local/ivy/LocallyAvailableResourceFinderFactory$$Lambda$230 +instanceKlass org/gradle/internal/resource/local/LocallyAvailableResourceCandidates +instanceKlass org/gradle/internal/resource/local/AbstractLocallyAvailableResourceFinder +instanceKlass org/gradle/internal/resource/local/ivy/LocallyAvailableResourceFinderFactory$$Lambda$229 +instanceKlass org/gradle/api/internal/artifacts/repositories/resolver/ResourcePattern +instanceKlass org/gradle/internal/resource/local/ivy/LocallyAvailableResourceFinderFactory +instanceKlass org/gradle/api/internal/artifacts/mvnsettings/DefaultLocalMavenRepositoryLocator$CurrentSystemPropertyAccess +instanceKlass org/gradle/api/internal/artifacts/mvnsettings/DefaultLocalMavenRepositoryLocator$SystemPropertyAccess +instanceKlass org/gradle/api/internal/artifacts/mvnsettings/DefaultLocalMavenRepositoryLocator +instanceKlass org/gradle/api/internal/artifacts/mvnsettings/DefaultMavenFileLocations +instanceKlass org/apache/maven/settings/io/SettingsReader +instanceKlass org/apache/maven/settings/building/SettingsBuildingRequest +instanceKlass org/gradle/api/internal/artifacts/mvnsettings/DefaultMavenSettingsProvider +instanceKlass org/gradle/api/internal/artifacts/ivyservice/dependencysubstitution/DependencySubstitutionApplicator +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/conflicts/CapabilitiesConflictHandler$Resolver +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/conflicts/ModuleConflictHandler +instanceKlass org/gradle/internal/resolve/resolver/ResolveContextToComponentResolver +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/conflicts/CapabilitiesConflictHandler +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/conflicts/ConflictHandler +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/graph/DependencyGraphVisitor +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/DefaultArtifactDependencyResolver +instanceKlass org/gradle/internal/resolve/caching/ComponentMetadataSupplierRuleExecutor$$Lambda$228 +instanceKlass org/gradle/internal/resolve/caching/ComponentMetadataSupplierRuleExecutor$$Lambda$227 +instanceKlass org/gradle/api/internal/artifacts/DependencyManagementBuildScopeServices$1 +instanceKlass org/gradle/api/artifacts/ComponentMetadata +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/excludes/simple/DefaultExcludeNothing +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/excludes/specs/ExcludeNothing +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/excludes/factories/Unions +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/excludes/factories/Intersections +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/excludes/specs/GroupSetExclude +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/excludes/specs/ModuleSetExclude +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/excludes/simple/DefaultExcludeFactory +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/excludes/factories/DelegatingExcludeFactory +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/excludes/factories/CachingExcludeFactory$ConcurrentCache +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/excludes/factories/CachingExcludeFactory$MergeCaches +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/excludes/specs/ExcludeSpec +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/excludes/factories/ExcludeFactory +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ChangingValueDependencyResolutionListener$1 +instanceKlass org/gradle/api/internal/artifacts/configurations/dynamicversion/Expiry +instanceKlass org/gradle/api/artifacts/component/ModuleComponentSelector +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ChangingValueDependencyResolutionListener +instanceKlass org/gradle/api/artifacts/result/ResolvedArtifactResult +instanceKlass org/gradle/api/artifacts/result/ArtifactResult +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ConnectionFailureRepositoryDisabler +instanceKlass org/gradle/api/internal/artifacts/DependencyManagementBuildScopeServices$2 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/verification/DependencyVerificationOverride$$Lambda$226 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/api/internal/artifacts/configurations/ResolutionStrategyInternal +instanceKlass org/gradle/api/artifacts/ResolutionStrategy +instanceKlass org/gradle/api/internal/artifacts/DependencyManagementBuildScopeServices$$Lambda$225 +instanceKlass org/gradle/api/internal/artifacts/verification/signatures/SignatureVerificationService +instanceKlass org/gradle/security/internal/PublicKeyService +instanceKlass org/gradle/api/internal/artifacts/verification/signatures/DefaultSignatureVerificationServiceFactory +instanceKlass org/gradle/api/internal/changedetection/state/SplitFileHasher +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolutionstrategy/ExternalResourceCachePolicy +instanceKlass org/gradle/internal/resource/connector/ResourceConnectorSpecification +instanceKlass org/gradle/api/internal/artifacts/repositories/transport/RepositoryTransport +instanceKlass org/gradle/api/internal/artifacts/DependencyManagementBuildScopeServices$$Lambda$224 +instanceKlass org/gradle/internal/resource/local/LocallyAvailableExternalResource +instanceKlass org/gradle/internal/resource/ExternalResource +instanceKlass org/gradle/internal/resource/local/FileResourceConnector +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/ResolvedArtifactCaches +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/artifacts/InMemoryModuleArtifactCache +instanceKlass org/gradle/api/internal/artifacts/DependencyManagementBuildScopeServices$$Lambda$223 +instanceKlass org/gradle/api/internal/artifacts/DependencyManagementBuildScopeServices$$Lambda$222 +instanceKlass org/gradle/api/internal/artifacts/DependencyManagementBuildScopeServices$$Lambda$221 +instanceKlass org/gradle/api/internal/artifacts/DependencyManagementBuildScopeServices$$Lambda$220 +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass org/gradle/api/internal/artifacts/DependencyManagementBuildScopeServices$$Lambda$219 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/artifacts/DefaultModuleArtifactCache$CachedArtifactSerializer +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/artifacts/DefaultModuleArtifactCache$ArtifactAtRepositoryKeySerializer +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/artifacts/CachedArtifact +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/artifacts/CachedArtifacts +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/ModuleMetadataStore +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/ModuleMetadataCache$CachedMetadata +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/dynamicversions/ModuleVersionsCache$CachedModuleVersionList +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/api/internal/artifacts/DependencyManagementBuildScopeServices$$Lambda$218 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/StartParameterResolutionOverride$$Lambda$217 +instanceKlass org/gradle/api/internal/artifacts/verification/signatures/BuildTreeDefinedKeys +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ModuleComponentRepository +instanceKlass org/gradle/api/internal/file/DefaultFileSystemLocation +instanceKlass org/gradle/api/resources/TextResource +instanceKlass org/gradle/internal/locking/LockFileReaderWriter +instanceKlass org/gradle/api/internal/provider/ValidatingValueCollector +instanceKlass org/gradle/api/internal/provider/AbstractCollectionProperty$EmptySupplier +instanceKlass org/gradle/api/internal/provider/DefaultListProperty$1 +instanceKlass org/gradle/api/internal/provider/AbstractCollectionProperty$NoValueSupplier +instanceKlass org/gradle/api/internal/provider/CollectionSupplier +instanceKlass org/gradle/internal/locking/LockEntryFilterFactory$$Lambda$216 +instanceKlass org/gradle/internal/locking/LockEntryFilterFactory$$Lambda$215 +instanceKlass org/gradle/api/internal/artifacts/dsl/dependencies/LockEntryFilter +instanceKlass org/gradle/internal/locking/LockEntryFilterFactory +instanceKlass org/gradle/internal/locking/DependencyLockingNotationConverter +instanceKlass org/gradle/api/internal/artifacts/dsl/dependencies/DependencyLockingState +instanceKlass org/gradle/internal/locking/DefaultDependencyLockingProvider +instanceKlass org/gradle/api/internal/artifacts/DefaultComponentSelectorConverter +instanceKlass org/gradle/api/internal/artifacts/component/DefaultComponentIdentifierFactory +instanceKlass org/gradle/api/internal/artifacts/DefaultGlobalDependencyResolutionRules$CompositeDependencySubstitutionRules +instanceKlass org/gradle/api/internal/artifacts/DefaultGlobalDependencyResolutionRules +instanceKlass org/gradle/api/artifacts/ComponentModuleMetadataDetails +instanceKlass org/gradle/api/artifacts/ComponentModuleMetadata +instanceKlass org/gradle/api/internal/artifacts/dsl/ComponentModuleMetadataContainer +instanceKlass org/gradle/api/internal/artifacts/dsl/ModuleReplacementsData +instanceKlass org/gradle/api/internal/artifacts/DefaultDependencyManagementServices$DependencyResolutionScopeServices$$Lambda$214 +instanceKlass com/google/common/collect/MapMakerInternalMap$StrongKeyDummyValueEntry$Helper +instanceKlass org/gradle/api/internal/DefaultNamedDomainObjectCollection$UnfilteredIndex +instanceKlass org/gradle/api/internal/DefaultDomainObjectCollection$1 +instanceKlass org/gradle/api/internal/collections/DefaultCollectionEventRegister +instanceKlass org/gradle/api/internal/provider/Collector +instanceKlass org/gradle/api/internal/collections/DefaultPendingSource +instanceKlass org/gradle/api/Namer$Comparator +instanceKlass org/gradle/api/internal/collections/SortedSetElementSource +instanceKlass org/gradle/api/Named$Namer +instanceKlass org/gradle/internal/instantiation/generator/InjectUtil +instanceKlass java/lang/SafeVarargs +instanceKlass com/google/common/reflect/Types$WildcardTypeImpl +instanceKlass java/util/StringJoiner +instanceKlass sun/reflect/generics/tree/ArrayTypeSignature +instanceKlass sun/reflect/generics/tree/IntSignature +instanceKlass java/lang/Class$EnclosingMethodInfo +instanceKlass com/google/common/reflect/Types$ClassOwnership$1LocalClass +instanceKlass com/google/common/reflect/Types$ParameterizedTypeImpl +instanceKlass com/google/common/reflect/Types$1 +instanceKlass com/google/common/reflect/Types +instanceKlass com/google/common/reflect/TypeResolver$TypeVariableKey +instanceKlass com/google/common/reflect/TypeResolver$TypeTable +instanceKlass com/google/common/reflect/TypeResolver +instanceKlass com/google/common/reflect/TypeVisitor +instanceKlass org/gradle/api/internal/collections/CollectionFilter +instanceKlass org/gradle/api/reflect/TypeOf +instanceKlass org/gradle/api/NamedDomainObjectCollectionSchema +instanceKlass org/gradle/api/Rule +instanceKlass org/gradle/api/NamedDomainObjectProvider +instanceKlass org/gradle/api/internal/DefaultNamedDomainObjectCollection$Index +instanceKlass org/gradle/api/internal/collections/ElementSource +instanceKlass org/gradle/api/internal/collections/PendingSource +instanceKlass org/gradle/api/internal/collections/CollectionEventRegister +instanceKlass org/gradle/internal/instantiation/generator/Jsr330ConstructorSelector$$Lambda$213 +instanceKlass org/gradle/internal/instantiation/generator/Jsr330ConstructorSelector$CachedConstructor +instanceKlass groovy/lang/Buildable +instanceKlass groovy/lang/Writable +instanceKlass org/gradle/internal/management/DefaultDependencyResolutionManagement$$Lambda$212 +instanceKlass org/gradle/api/internal/provider/ValueSupplier$Present +instanceKlass org/gradle/api/internal/provider/ValueSupplier$Missing +instanceKlass org/gradle/api/internal/provider/ValueSupplier$Value +instanceKlass org/gradle/api/internal/provider/Providers +instanceKlass org/gradle/api/internal/provider/ValueSanitizers$4 +instanceKlass org/gradle/api/internal/provider/ValueSanitizers$3 +instanceKlass org/gradle/api/internal/provider/ValueSanitizers$2 +instanceKlass org/gradle/api/internal/provider/ValueSanitizers$1 +instanceKlass org/gradle/api/internal/provider/ValueCollector +instanceKlass org/gradle/api/internal/provider/ValueSanitizer +instanceKlass org/gradle/api/internal/provider/ValueSanitizers +instanceKlass org/gradle/api/internal/provider/AbstractProperty$FinalizationState +instanceKlass org/gradle/internal/management/DefaultDependencyResolutionManagement$ComponentMetadataRulesRegistar +instanceKlass org/apache/groovy/util/BeanUtils +instanceKlass groovy/lang/MetaProperty +instanceKlass javax/annotation/meta/TypeQualifier +instanceKlass org/gradle/api/initialization/dsl/VersionCatalogBuilder +instanceKlass org/gradle/api/internal/WithEstimatedSize +instanceKlass org/gradle/internal/metaobject/PropertyMixIn +instanceKlass org/gradle/internal/metaobject/MethodMixIn +instanceKlass org/gradle/api/reflect/HasPublicType +instanceKlass org/gradle/api/artifacts/repositories/ArtifactRepository +instanceKlass org/gradle/api/initialization/resolve/MutableVersionCatalogContainer +instanceKlass org/gradle/internal/management/DefaultDependencyResolutionManagement +instanceKlass org/gradle/api/internal/DefaultCollectionCallbackActionDecorator +instanceKlass org/gradle/api/internal/provider/CredentialsProviderFactory +instanceKlass org/gradle/api/provider/ValueSourceSpec +instanceKlass org/gradle/api/file/FileContents +instanceKlass org/gradle/api/internal/provider/DefaultProviderFactory +instanceKlass org/gradle/api/internal/provider/ValueSourceProviderFactory$Listener +instanceKlass org/gradle/api/provider/ValueSourceParameters$None +instanceKlass org/gradle/api/provider/ValueSourceParameters +instanceKlass org/gradle/api/provider/ValueSource +instanceKlass org/gradle/internal/isolated/IsolationScheme +instanceKlass org/gradle/api/internal/provider/ValueSourceProviderFactory$Listener$ObtainedValue +instanceKlass org/gradle/api/internal/provider/DefaultValueSourceProviderFactory +instanceKlass org/gradle/api/capabilities/CapabilitiesMetadata +instanceKlass org/gradle/internal/component/external/model/AbstractStatelessDerivationStrategy +instanceKlass org/gradle/api/internal/artifacts/dsl/MetadataRuleWrapper +instanceKlass org/gradle/api/internal/notations/ComponentIdentifierParserFactory +instanceKlass org/gradle/api/artifacts/DependencyConstraintMetadata +instanceKlass org/gradle/api/internal/catalog/parser/StrictVersionParser +instanceKlass org/gradle/api/internal/notations/DependencyStringNotationConverter +instanceKlass org/gradle/api/internal/notations/DependencyMetadataNotationParser +instanceKlass org/gradle/api/internal/artifacts/repositories/resolver/AbstractDependencyImpl +instanceKlass org/gradle/api/artifacts/DirectDependencyMetadata +instanceKlass org/gradle/api/artifacts/DependencyMetadata +instanceKlass org/gradle/internal/rules/DefaultRuleActionAdapter +instanceKlass org/gradle/api/artifacts/maven/PomModuleDescriptor +instanceKlass org/gradle/api/artifacts/ivy/IvyModuleDescriptor +instanceKlass org/gradle/internal/rules/DefaultRuleActionValidator +instanceKlass org/gradle/api/internal/artifacts/dsl/ComponentMetadataRuleContainer +instanceKlass org/gradle/api/internal/artifacts/dsl/SpecConfigurableRule +instanceKlass org/gradle/internal/action/ConfigurableRule +instanceKlass org/gradle/internal/rules/RuleAction +instanceKlass org/gradle/api/internal/artifacts/MetadataResolutionContext +instanceKlass org/gradle/internal/rules/SpecRuleAction +instanceKlass org/gradle/internal/rules/RuleActionAdapter +instanceKlass org/gradle/internal/rules/RuleActionValidator +instanceKlass org/gradle/api/internal/artifacts/ComponentMetadataProcessor +instanceKlass org/gradle/api/attributes/Category$Impl +instanceKlass org/gradle/api/attributes/Category +instanceKlass org/gradle/internal/resolve/caching/CrossBuildCachingRuleExecutor$AnySerializer +instanceKlass org/gradle/internal/resolve/caching/ComponentMetadataRuleExecutor$$Lambda$211 +instanceKlass org/gradle/internal/resolve/caching/ComponentMetadataRuleExecutor$$Lambda$210 +instanceKlass org/gradle/internal/resolve/caching/CrossBuildCachingRuleExecutor$EntryValidator +instanceKlass org/gradle/internal/resolve/caching/CrossBuildCachingRuleExecutor$CachedEntry +instanceKlass org/gradle/api/internal/artifacts/configurations/dynamicversion/CachePolicy +instanceKlass org/gradle/api/artifacts/ResolvedModuleVersion +instanceKlass org/gradle/internal/resolve/caching/ImplicitInputRecorder +instanceKlass org/gradle/internal/component/external/model/ModuleDependencyMetadata +instanceKlass org/gradle/internal/component/model/ConfigurationMetadata +instanceKlass org/gradle/internal/component/external/model/CapabilityInternal +instanceKlass org/gradle/internal/component/external/model/AbstractRealisedModuleResolveMetadataSerializationHelper +instanceKlass org/gradle/api/internal/artifacts/ModuleComponentSelectorSerializer +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/ModuleMetadataSerializer +instanceKlass org/gradle/internal/component/external/model/VirtualComponentIdentifier +instanceKlass org/gradle/internal/component/external/model/ModuleComponentResolveMetadata +instanceKlass org/gradle/internal/component/model/ModuleSources +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ModuleDescriptorHashCodec +instanceKlass org/gradle/api/internal/artifacts/repositories/metadata/MetadataFileSource +instanceKlass org/gradle/internal/component/model/PersistentModuleSource +instanceKlass org/gradle/internal/component/model/ModuleSource +instanceKlass org/gradle/api/internal/artifacts/repositories/metadata/DefaultMetadataFileSourceCodec +instanceKlass org/gradle/internal/component/model/PersistentModuleSource$Codec +instanceKlass org/gradle/api/internal/artifacts/DependencyManagementBuildScopeServices$$Lambda$209 +instanceKlass org/gradle/api/internal/artifacts/DependencyManagementBuildScopeServices$$Lambda$208 +instanceKlass org/gradle/api/internal/filestore/DefaultArtifactIdentifierFileStore$$Lambda$207 +instanceKlass org/gradle/api/internal/filestore/DefaultArtifactIdentifierFileStore$1 +instanceKlass org/gradle/api/internal/artifacts/DependencyManagementBuildScopeServices$$Lambda$206 +instanceKlass org/gradle/internal/resource/cached/CachedExternalResource +instanceKlass org/gradle/internal/resource/metadata/ExternalResourceMetaData +instanceKlass org/gradle/internal/resource/cached/DefaultCachedExternalResourceIndex$CachedExternalResourceSerializer +instanceKlass org/gradle/internal/resource/cached/CachedItem +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ArtifactCachesProvider$$Lambda$205 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/api/internal/artifacts/DependencyManagementBuildScopeServices$$Lambda$204 +instanceKlass org/gradle/internal/resource/local/LocallyAvailableResource +instanceKlass org/gradle/internal/resource/local/DefaultPathKeyFileStore +instanceKlass org/gradle/internal/resource/cached/DefaultExternalResourceFileStore$$Lambda$203 +instanceKlass org/gradle/api/Namer +instanceKlass org/gradle/internal/resource/cached/DefaultExternalResourceFileStore$1 +instanceKlass org/gradle/internal/resource/local/GroupedAndNamedUniqueFileStore$Grouper +instanceKlass org/gradle/internal/resource/local/PathKeyFileStore +instanceKlass org/gradle/internal/hash/ChecksumHasher +instanceKlass org/gradle/internal/hash/DefaultChecksumService +instanceKlass org/gradle/internal/component/external/descriptor/Configuration +instanceKlass org/gradle/internal/component/model/IvyArtifactName +instanceKlass org/gradle/internal/component/external/model/ivy/MutableIvyModuleResolveMetadata +instanceKlass org/gradle/api/internal/artifacts/repositories/metadata/DefaultMavenImmutableAttributesFactory +instanceKlass org/gradle/internal/component/external/model/maven/MutableMavenModuleResolveMetadata +instanceKlass org/gradle/internal/component/external/model/MutableModuleComponentResolveMetadata +instanceKlass org/gradle/api/internal/artifacts/repositories/metadata/MavenImmutableAttributesFactory +instanceKlass org/gradle/internal/component/external/model/PreferJavaRuntimeVariant$PreferJarVariantUsageDisambiguationRule +instanceKlass org/gradle/internal/component/external/model/PreferJavaRuntimeVariant$PreferRuntimeVariantUsageDisambiguationRule +instanceKlass org/gradle/api/attributes/LibraryElements$Impl +instanceKlass org/gradle/api/attributes/Usage$Impl +instanceKlass org/gradle/model/internal/type/ClassTypeWrapper +instanceKlass org/gradle/model/internal/type/TypeWrapper +instanceKlass org/gradle/model/internal/type/ModelType +instanceKlass org/gradle/model/internal/inspect/FormattingValidationProblemCollector +instanceKlass org/gradle/api/attributes/LibraryElements +instanceKlass org/gradle/api/attributes/Usage +instanceKlass org/gradle/api/internal/attributes/EmptySchema$DoNothingDisambiguationRule +instanceKlass org/gradle/api/internal/attributes/EmptySchema$DoNothingCompatibilityRule +instanceKlass org/gradle/api/internal/attributes/CompatibilityRule +instanceKlass org/gradle/api/internal/attributes/DisambiguationRule +instanceKlass org/gradle/internal/snapshot/ValueSnapshot +instanceKlass org/gradle/internal/snapshot/impl/DefaultValueSnapshotter$ValueSnapshotVisitor +instanceKlass org/gradle/api/internal/tasks/properties/PropertyValue +instanceKlass org/gradle/api/internal/tasks/properties/annotations/NestedBeanAnnotationHandler +instanceKlass org/gradle/api/internal/tasks/properties/annotations/InputPropertyAnnotationHandler +instanceKlass org/gradle/api/internal/tasks/properties/annotations/LocalStatePropertyAnnotationHandler +instanceKlass org/gradle/api/internal/tasks/properties/annotations/DestroysPropertyAnnotationHandler +instanceKlass org/gradle/api/internal/tasks/properties/annotations/NoOpPropertyAnnotationHandler +instanceKlass org/gradle/api/internal/artifacts/transform/CacheableTransformTypeAnnotationHandler +instanceKlass org/gradle/api/internal/tasks/properties/annotations/CacheableTaskTypeAnnotationHandler +instanceKlass org/gradle/api/internal/tasks/properties/annotations/DisableCachingByDefaultTypeAnnotationHandler +instanceKlass org/gradle/api/internal/tasks/properties/annotations/UntrackedTaskTypeAnnotationHandler +instanceKlass org/gradle/vcs/internal/services/VersionControlServices$VcsResolverFactory +instanceKlass org/gradle/vcs/internal/resolver/OncePerBuildInvocationVcsVersionWorkingDirResolver +instanceKlass org/gradle/vcs/internal/resolver/DefaultVcsVersionWorkingDirResolver +instanceKlass org/gradle/vcs/internal/VersionRef +instanceKlass org/gradle/vcs/internal/resolver/PersistentVcsMetadataCache$VersionRefSerializer +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/strategy/CachingVersionSelectorScheme +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/strategy/VersionSelector +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/strategy/DefaultVersionSelectorScheme +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/strategy/Version +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/strategy/StaticVersionComparator +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/strategy/DefaultVersionComparator +instanceKlass org/gradle/cache/internal/CleanupActionFactory$BuildOperationCacheCleanupDecorator +instanceKlass org/gradle/internal/resource/local/ModificationTimeFileAccessTimeJournal +instanceKlass org/gradle/vcs/internal/VersionControlRepositoryConnection +instanceKlass org/gradle/vcs/internal/VersionControlSystem +instanceKlass org/gradle/vcs/internal/services/DefaultVersionControlRepositoryFactory +instanceKlass org/gradle/vcs/internal/DefaultVcsMappingsStore +instanceKlass org/gradle/vcs/internal/DefaultVcsMappingFactory +instanceKlass org/gradle/vcs/internal/services/DefaultVersionControlSpecFactory +instanceKlass org/gradle/internal/typeconversion/CharSequenceNotationConverter +instanceKlass org/gradle/api/internal/notations/ModuleIdentifierNotationConverter +instanceKlass org/gradle/api/internal/artifacts/ivyservice/projectmodule/DefaultLocalComponentRegistry +instanceKlass org/gradle/composite/internal/IncludedBuildDependencyMetadataBuilder +instanceKlass org/gradle/internal/component/local/model/LocalComponentMetadata +instanceKlass org/gradle/internal/component/local/model/BuildableLocalComponentMetadata +instanceKlass org/gradle/api/internal/artifacts/ivyservice/projectmodule/DefaultProjectLocalComponentProvider +instanceKlass org/gradle/api/artifacts/Configuration +instanceKlass org/gradle/api/attributes/HasConfigurableAttributes +instanceKlass org/gradle/api/internal/artifacts/configurations/ConfigurationInternal$VariantVisitor +instanceKlass org/gradle/api/internal/artifacts/ivyservice/moduleconverter/DefaultLocalComponentMetadataBuilder +instanceKlass org/gradle/internal/component/local/model/LocalFileDependencyMetadata +instanceKlass org/gradle/api/internal/artifacts/ivyservice/moduleconverter/dependencies/DefaultLocalConfigurationMetadataBuilder +instanceKlass org/gradle/util/internal/WrapUtil +instanceKlass org/gradle/api/internal/artifacts/ivyservice/moduleconverter/dependencies/DefaultDependencyDescriptorFactory +instanceKlass org/gradle/internal/component/model/LocalOriginDependencyMetadata +instanceKlass org/gradle/internal/component/model/ForcingDependencyMetadata +instanceKlass org/gradle/internal/component/model/DependencyMetadata +instanceKlass org/gradle/api/artifacts/Dependency +instanceKlass org/gradle/internal/component/model/ExcludeMetadata +instanceKlass org/gradle/api/internal/artifacts/ivyservice/moduleconverter/dependencies/DefaultExcludeRuleConverter +instanceKlass org/gradle/internal/model/CalculatedValueContainerFactory$$Lambda$202 +instanceKlass org/gradle/api/internal/tasks/NodeExecutionContext +instanceKlass org/gradle/internal/resource/transport/sftp/SftpConnectorFactory +instanceKlass com/jcraft/jsch/HostKeyRepository +instanceKlass com/jcraft/jsch/Logger +instanceKlass org/gradle/internal/resource/transport/sftp/LockableSftpClient +instanceKlass org/gradle/internal/resource/transport/sftp/SftpClientFactory$SftpClientCreator +instanceKlass org/gradle/internal/resource/transport/aws/s3/S3ConnectorFactory +instanceKlass org/gradle/internal/resource/transport/gcp/gcs/GcsConnectorFactory +instanceKlass org/gradle/internal/resource/transfer/ExternalResourceConnector +instanceKlass org/gradle/internal/resource/transfer/ExternalResourceAccessor +instanceKlass org/gradle/internal/resource/transfer/ExternalResourceLister +instanceKlass org/gradle/internal/resource/transfer/ExternalResourceUploader +instanceKlass org/gradle/internal/resource/transport/http/HttpConnectorFactory +instanceKlass org/gradle/internal/resource/transport/http/HttpClientHelper$Factory$$Lambda$201 +instanceKlass org/gradle/internal/resource/transport/http/HttpClientHelper +instanceKlass org/gradle/internal/resource/transport/http/HttpSettings +instanceKlass org/gradle/internal/resource/transport/http/DefaultSslContextFactory +instanceKlass org/gradle/internal/resource/transport/file/FileConnectorFactory +instanceKlass org/gradle/composite/internal/CompositeProjectComponentArtifactMetadataSerializer +instanceKlass org/gradle/composite/internal/CompositeProjectComponentArtifactMetadata +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/ResolvedComponentResultSerializer +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/ComponentSelectorSerializer$OptimizingAttributeContainerSerializer +instanceKlass org/gradle/api/internal/artifacts/ImmutableVersionConstraint +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/ComponentSelectionReasonSerializer +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/ComponentSelectionDescriptorSerializer +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/ResolvedVariantResultSerializer +instanceKlass org/gradle/internal/component/external/model/DefaultModuleComponentIdentifier +instanceKlass org/gradle/api/artifacts/component/ModuleComponentIdentifier +instanceKlass org/gradle/api/internal/artifacts/metadata/ModuleComponentFileArtifactIdentifierSerializer +instanceKlass org/gradle/api/internal/artifacts/metadata/ComponentArtifactIdentifierSerializer +instanceKlass org/gradle/api/internal/artifacts/DependencyManagementValueSnapshotterSerializerRegistry$OpaqueComponentArtifactIdentifierSerializer +instanceKlass org/gradle/api/artifacts/PublishArtifact +instanceKlass org/gradle/api/internal/artifacts/metadata/PublishArtifactLocalArtifactMetadataSerializer +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/CapabilitySerializer +instanceKlass org/gradle/api/internal/artifacts/ModuleVersionIdentifierSerializer +instanceKlass org/gradle/internal/resolve/caching/DesugaringAttributeContainerSerializer +instanceKlass org/gradle/api/artifacts/result/ResolvedComponentResult +instanceKlass org/gradle/api/artifacts/result/ComponentResult +instanceKlass org/gradle/api/artifacts/result/ComponentSelectionReason +instanceKlass org/gradle/api/artifacts/result/ResolvedVariantResult +instanceKlass org/gradle/internal/component/local/model/ComponentFileArtifactIdentifier +instanceKlass org/gradle/internal/component/external/model/DefaultModuleComponentArtifactIdentifier +instanceKlass org/gradle/internal/component/external/model/ModuleComponentArtifactIdentifier +instanceKlass org/gradle/internal/component/local/model/OpaqueComponentArtifactIdentifier +instanceKlass org/gradle/internal/component/local/model/PublishArtifactLocalArtifactMetadata +instanceKlass org/gradle/api/artifacts/component/ComponentArtifactIdentifier +instanceKlass org/gradle/internal/component/local/model/LocalComponentArtifactMetadata +instanceKlass org/gradle/api/artifacts/ModuleVersionIdentifier +instanceKlass org/gradle/api/artifacts/result/ComponentSelectionDescriptor +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/CachingComponentSelectionDescriptorFactory +instanceKlass org/gradle/api/internal/initialization/DefaultScriptHandler +instanceKlass org/gradle/api/internal/artifacts/DefaultDependencyManagementServices$DefaultDependencyResolutionServices +instanceKlass org/gradle/api/internal/artifacts/ivyservice/moduleconverter/DefaultRootComponentMetadataBuilder +instanceKlass org/gradle/api/internal/artifacts/ivyservice/moduleconverter/RootComponentMetadataBuilder +instanceKlass org/gradle/api/internal/artifacts/transform/DefaultTransformedVariantFactory$VariantKey +instanceKlass org/gradle/api/internal/artifacts/transform/TransformationNodeFactory +instanceKlass org/gradle/api/internal/artifacts/transform/DefaultTransformedVariantFactory +instanceKlass org/gradle/api/internal/artifacts/configurations/DefaultConfigurationFactory +instanceKlass org/gradle/api/internal/artifacts/ivyservice/moduleconverter/DefaultRootComponentMetadataBuilder$Factory +instanceKlass org/gradle/api/artifacts/dsl/DependencyHandler +instanceKlass org/gradle/api/artifacts/dsl/DependencyConstraintHandler +instanceKlass org/gradle/api/artifacts/dsl/ArtifactHandler +instanceKlass org/gradle/api/internal/artifacts/transform/TransformedVariantFactory +instanceKlass org/gradle/api/internal/artifacts/dsl/DefaultComponentMetadataHandler +instanceKlass org/gradle/api/artifacts/dsl/ComponentMetadataHandler +instanceKlass org/gradle/api/artifacts/dsl/DependencyLockingHandler +instanceKlass org/gradle/api/internal/artifacts/dsl/PublishArtifactNotationParserFactory +instanceKlass org/gradle/api/internal/artifacts/ComponentMetadataProcessorFactory +instanceKlass org/gradle/api/internal/artifacts/dsl/ComponentMetadataHandlerInternal +instanceKlass org/gradle/api/internal/artifacts/repositories/DefaultUrlArtifactRepository$Factory +instanceKlass org/gradle/api/internal/artifacts/dsl/DefaultComponentModuleMetadataHandler +instanceKlass org/gradle/api/internal/artifacts/ComponentModuleMetadataProcessor +instanceKlass org/gradle/api/artifacts/dsl/ComponentModuleMetadataHandler +instanceKlass org/gradle/api/internal/artifacts/RepositoriesSupplier +instanceKlass org/gradle/api/internal/artifacts/configurations/ConfigurationContainerInternal +instanceKlass org/gradle/api/artifacts/ConfigurationContainer +instanceKlass org/gradle/api/internal/artifacts/transform/MutableTransformationWorkspaceServices +instanceKlass org/gradle/internal/file/ReservedFileSystemLocation +instanceKlass org/gradle/api/file/ProjectLayout +instanceKlass org/gradle/api/internal/tasks/TaskResolver +instanceKlass org/gradle/api/internal/artifacts/type/ArtifactTypeRegistry +instanceKlass org/gradle/api/internal/artifacts/ArtifactPublicationServices +instanceKlass org/gradle/api/internal/artifacts/VariantTransformRegistry +instanceKlass org/gradle/api/internal/artifacts/transform/TransformerInvocationFactory +instanceKlass org/gradle/api/internal/artifacts/DependencyResolutionServices +instanceKlass org/gradle/api/internal/artifacts/BaseRepositoryFactory +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/parser/MetaDataParser +instanceKlass org/gradle/api/internal/artifacts/ConfigurationResolver +instanceKlass org/gradle/api/internal/artifacts/transform/ArtifactTransforms +instanceKlass org/gradle/api/internal/artifacts/GlobalDependencyResolutionRules +instanceKlass org/gradle/api/internal/artifacts/dsl/dependencies/DependencyLockingProvider +instanceKlass org/gradle/internal/component/external/model/VariantDerivationStrategy +instanceKlass org/gradle/api/internal/artifacts/transform/TransformationRegistrationFactory +instanceKlass org/gradle/api/internal/artifacts/query/ArtifactResolutionQueryFactory +instanceKlass org/gradle/api/internal/artifacts/DefaultDependencyManagementServices$DependencyResolutionScopeServices +instanceKlass org/gradle/api/internal/artifacts/DefaultDependencyManagementServices$ArtifactTransformResolutionGradleUserHomeServices +instanceKlass org/gradle/internal/model/CalculatedModelValue +instanceKlass org/gradle/api/internal/initialization/RootScriptDomainObjectContext +instanceKlass org/gradle/internal/resource/UriTextResource$UriResourceLocation +instanceKlass org/gradle/invocation/DefaultGradle$$Lambda$200 +instanceKlass org/gradle/groovy/scripts/TextResourceScriptSource +instanceKlass org/gradle/internal/resource/ResourceLocation +instanceKlass org/gradle/internal/resource/UriTextResource +instanceKlass org/gradle/initialization/InitScriptHandler$1 +instanceKlass org/gradle/initialization/DirectoryInitScriptFinder +instanceKlass org/gradle/initialization/CompositeInitScriptFinder +instanceKlass org/gradle/initialization/InitScriptFinder +instanceKlass org/gradle/initialization/DefaultGradleProperties +instanceKlass org/gradle/configurationcache/extensions/CastExtensionsKt +instanceKlass kotlin/text/StringsKt__AppendableKt +instanceKlass org/gradle/configurationcache/extensions/MapExtensionsKt +instanceKlass org/gradle/configurationcache/services/DefaultEnvironment$DefaultProperties +instanceKlass org/gradle/initialization/Environment$Properties +instanceKlass org/gradle/initialization/DefaultGradlePropertiesController$Loaded +instanceKlass org/gradle/initialization/DefaultSettingsLoader +instanceKlass org/gradle/initialization/SettingsAttachingSettingsLoader +instanceKlass org/gradle/internal/composite/CommandLineIncludedBuildSettingsLoader +instanceKlass org/gradle/internal/composite/ChildBuildRegisteringSettingsLoader +instanceKlass org/gradle/internal/composite/CompositeBuildSettingsLoader +instanceKlass org/gradle/initialization/InitScriptHandlingSettingsLoader +instanceKlass org/gradle/initialization/GradlePropertiesHandlingSettingsLoader +instanceKlass org/gradle/initialization/BuildOperationFiringSettingsPreparer$LoadBuild$1 +instanceKlass org/gradle/initialization/LoadBuildBuildOperationType$Details +instanceKlass org/gradle/initialization/BuildOperationFiringSettingsPreparer$LoadBuild +instanceKlass org/gradle/internal/model/StateTransitionController$$Lambda$199 +instanceKlass org/gradle/initialization/VintageBuildModelController$$Lambda$198 +instanceKlass org/gradle/internal/model/StateTransitionController$$Lambda$197 +instanceKlass org/gradle/internal/model/StateTransitionController$$Lambda$196 +instanceKlass org/gradle/internal/build/DefaultBuildLifecycleController$$Lambda$195 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/composite/internal/DefaultBuildControllers$$Lambda$194 +instanceKlass org/gradle/composite/internal/BuildController +instanceKlass org/gradle/composite/internal/DefaultBuildControllers +instanceKlass org/gradle/composite/internal/BuildControllers +instanceKlass org/gradle/composite/internal/DefaultIncludedBuildTaskGraph$DefaultBuildTreeWorkGraph +instanceKlass org/gradle/internal/buildtree/DefaultBuildTreeLifecycleController$$Lambda$193 +instanceKlass org/gradle/internal/buildtree/BuildTreeWorkGraph +instanceKlass org/gradle/internal/model/StateTransitionController$$Lambda$192 +instanceKlass org/gradle/internal/model/StateTransitionController$$Lambda$191 +instanceKlass org/gradle/internal/buildtree/DefaultBuildTreeLifecycleController$$Lambda$190 +instanceKlass org/gradle/internal/buildtree/DefaultBuildTreeLifecycleController$$Lambda$189 +instanceKlass org/gradle/internal/build/ExecutionResult +instanceKlass org/gradle/tooling/internal/provider/runner/BuildModelActionRunner$ModelCreateAction +instanceKlass org/gradle/internal/buildtree/ProblemReportingBuildActionRunner$$Lambda$188 +instanceKlass org/gradle/internal/model/StateTransitionController$$Lambda$187 +instanceKlass org/gradle/internal/model/StateTransitionController$$Lambda$186 +instanceKlass org/gradle/internal/buildtree/DefaultBuildTreeLifecycleController$$Lambda$185 +instanceKlass org/gradle/launcher/exec/BuildOutcomeReportingBuildActionRunner$$Lambda$184 +instanceKlass org/gradle/internal/logging/format/TersePrettyDurationFormatter +instanceKlass org/gradle/internal/buildevents/BuildResultLogger +instanceKlass org/gradle/internal/exceptions/FailureResolutionAware$Context +instanceKlass org/gradle/util/internal/TreeVisitor +instanceKlass org/gradle/internal/buildevents/BuildExceptionReporter +instanceKlass org/gradle/internal/logging/format/DurationFormatter +instanceKlass org/gradle/internal/buildevents/BuildLogger +instanceKlass org/gradle/api/internal/tasks/execution/statistics/TaskExecutionStatisticsEventAdapter +instanceKlass org/gradle/tooling/internal/provider/FileSystemWatchingBuildActionRunner$1 +instanceKlass org/gradle/internal/watch/options/FileSystemWatchingSettingsFinalizedProgressDetails +instanceKlass org/gradle/api/internal/tasks/compile/CompileJavaBuildOperationType$Result +instanceKlass org/gradle/internal/operations/notify/BuildOperationNotificationBridge$Finished +instanceKlass org/gradle/internal/operations/OperationFinishEvent +instanceKlass org/gradle/internal/watch/vfs/impl/WatchingVirtualFileSystem$1$1 +instanceKlass org/gradle/internal/watch/vfs/BuildStartedFileSystemWatchingBuildOperationType$Result +instanceKlass com/google/common/collect/CollectCollectors$$Lambda$183 +instanceKlass com/google/common/collect/CollectCollectors$$Lambda$182 +instanceKlass com/google/common/collect/CollectCollectors$$Lambda$181 +instanceKlass com/google/common/collect/RangeGwtSerializationDependencies +instanceKlass com/google/common/collect/CollectCollectors$$Lambda$180 +instanceKlass com/google/common/collect/ImmutableRangeSet$Builder +instanceKlass com/google/common/collect/SortedIterable +instanceKlass com/google/common/collect/AbstractRangeSet +instanceKlass com/google/common/collect/RangeSet +instanceKlass com/google/common/collect/CollectCollectors$$Lambda$179 +instanceKlass com/google/common/collect/CollectCollectors$$Lambda$178 +instanceKlass com/google/common/collect/CollectCollectors$$Lambda$177 +instanceKlass com/google/common/collect/CollectCollectors$$Lambda$176 +instanceKlass com/google/common/collect/CollectCollectors$$Lambda$175 +instanceKlass com/google/common/collect/CollectCollectors$$Lambda$174 +instanceKlass com/google/common/collect/CollectCollectors$$Lambda$173 +instanceKlass com/google/common/collect/CollectCollectors$$Lambda$172 +instanceKlass com/google/common/collect/CollectCollectors +instanceKlass org/gradle/internal/watch/registry/impl/AbstractFileWatcherUpdater$$Lambda$171 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass java/util/stream/MatchOps$$Lambda$170 +instanceKlass java/util/stream/MatchOps$BooleanTerminalSink +instanceKlass java/util/stream/MatchOps$MatchOp +instanceKlass java/util/stream/MatchOps +instanceKlass org/gradle/internal/watch/registry/impl/AbstractFileWatcherUpdater$$Lambda$169 +instanceKlass org/gradle/internal/watch/registry/impl/AbstractFileWatcherUpdater$$Lambda$168 +instanceKlass org/gradle/internal/watch/registry/impl/AbstractFileWatcherUpdater$$Lambda$167 +instanceKlass org/gradle/internal/watch/registry/impl/AbstractFileWatcherUpdater$$Lambda$166 +instanceKlass java/util/ArrayDeque$DeqSpliterator +instanceKlass org/gradle/internal/watch/registry/impl/WatchableHierarchies$$Lambda$165 +instanceKlass org/gradle/internal/watch/registry/impl/WatchableHierarchies$$Lambda$164 +instanceKlass org/gradle/internal/watch/vfs/impl/WatchingVirtualFileSystem$$Lambda$163 +instanceKlass org/gradle/internal/watch/registry/impl/WatchableHierarchies$$Lambda$162 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/internal/watch/registry/impl/Combiners$$Lambda$161 +instanceKlass org/gradle/internal/watch/registry/impl/Combiners +instanceKlass org/gradle/internal/watch/registry/impl/WatchableHierarchies$$Lambda$160 +instanceKlass org/gradle/internal/watch/registry/impl/DefaultFileWatcherProbeRegistry$$Lambda$159 +instanceKlass org/gradle/internal/watch/registry/impl/DefaultFileWatcherProbeRegistry$$Lambda$158 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/internal/watch/registry/impl/DefaultFileWatcherProbeRegistry$WatchProbe +instanceKlass org/gradle/internal/watch/registry/impl/HierarchicalFileWatcherUpdater$$Lambda$157 +instanceKlass org/gradle/internal/watch/registry/impl/WatchableHierarchies$Invalidator +instanceKlass org/gradle/internal/watch/registry/impl/DefaultFileWatcherRegistry$$Lambda$156 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/internal/watch/registry/impl/DefaultFileWatcherRegistry$$Lambda$155 +instanceKlass org/gradle/internal/watch/registry/impl/DefaultFileWatcherRegistry$MutableFileWatchingStatistics +instanceKlass net/rubygrapefruit/platform/file/FileWatchEvent$Handler +instanceKlass org/gradle/internal/watch/registry/FileWatcherRegistry$FileWatchingStatistics +instanceKlass org/gradle/internal/watch/registry/impl/DefaultFileWatcherRegistry +instanceKlass org/gradle/internal/watch/registry/impl/WindowsFileWatcherRegistryFactory$$Lambda$154 +instanceKlass org/gradle/internal/watch/registry/impl/AbstractFileWatcherUpdater$MovedDirectoryHandler +instanceKlass org/gradle/internal/watch/registry/impl/HierarchicalFileWatcherUpdater$FileSystemLocationToWatchValidator$$Lambda$153 +instanceKlass org/gradle/internal/watch/registry/impl/HierarchicalFileWatcherUpdater$FileSystemLocationToWatchValidator +instanceKlass org/gradle/internal/watch/registry/impl/AbstractFileWatcherUpdater +instanceKlass org/gradle/internal/file/FileHierarchySet$RootVisitor +instanceKlass org/gradle/internal/snapshot/FileSystemSnapshotHierarchyVisitor +instanceKlass org/gradle/internal/watch/registry/impl/WatchableHierarchies +instanceKlass net/rubygrapefruit/platform/internal/jni/AbstractFileEventFunctions$NativeFileWatcher +instanceKlass net/rubygrapefruit/platform/file/FileWatchEvent +instanceKlass net/rubygrapefruit/platform/internal/jni/AbstractFileEventFunctions$NativeFileWatcherCallback +instanceKlass org/gradle/internal/watch/registry/impl/AbstractFileWatcherRegistryFactory$$Lambda$152 +instanceKlass org/gradle/internal/watch/registry/impl/DefaultFileWatcherProbeRegistry +instanceKlass org/gradle/internal/watch/vfs/impl/WatchingVirtualFileSystem$3 +instanceKlass java/util/stream/ForEachOps$ForEachOp +instanceKlass java/util/stream/ForEachOps +instanceKlass org/gradle/internal/watch/vfs/impl/WatchingVirtualFileSystem$1$$Lambda$151 +instanceKlass org/gradle/internal/watch/vfs/impl/DefaultWatchableFileSystemDetector$$Lambda$150 +instanceKlass org/gradle/internal/watch/vfs/impl/DefaultWatchableFileSystemDetector$$Lambda$149 +instanceKlass net/rubygrapefruit/platform/internal/FileSystemList$DefaultCaseSensitivity +instanceKlass net/rubygrapefruit/platform/internal/DefaultFileSystemInfo +instanceKlass net/rubygrapefruit/platform/file/FileSystemInfo +instanceKlass net/rubygrapefruit/platform/internal/jni/PosixFileSystemFunctions +instanceKlass net/rubygrapefruit/platform/file/CaseSensitivity +instanceKlass net/rubygrapefruit/platform/internal/FileSystemList +instanceKlass org/gradle/internal/watch/vfs/BuildStartedFileSystemWatchingBuildOperationType$Details$1 +instanceKlass org/gradle/internal/watch/vfs/BuildStartedFileSystemWatchingBuildOperationType$Details +instanceKlass org/gradle/internal/watch/vfs/FileSystemWatchingStatistics +instanceKlass org/gradle/internal/watch/vfs/impl/WatchingVirtualFileSystem$1 +instanceKlass org/gradle/internal/watch/vfs/impl/WatchingVirtualFileSystem$$Lambda$148 +instanceKlass org/slf4j/helpers/NamedLoggerBase +instanceKlass org/gradle/configuration/internal/DefaultListenerBuildOperationDecorator +instanceKlass org/gradle/api/tasks/util/internal/CachingPatternSpecFactory$CachingSpec +instanceKlass org/gradle/api/internal/file/RelativePathSpec +instanceKlass org/gradle/api/internal/file/pattern/AnythingMatcher +instanceKlass org/gradle/api/internal/file/pattern/FixedPatternStep +instanceKlass org/gradle/api/internal/file/pattern/HasSuffixPatternStep +instanceKlass org/gradle/api/internal/file/pattern/HasPrefixPatternStep +instanceKlass org/gradle/api/internal/file/pattern/HasPrefixAndSuffixPatternStep +instanceKlass org/gradle/api/internal/file/pattern/AnyWildcardPatternStep +instanceKlass org/gradle/api/internal/file/pattern/PatternStep +instanceKlass org/gradle/api/internal/file/pattern/PatternStepFactory +instanceKlass org/gradle/api/internal/file/pattern/FixedStepPathMatcher +instanceKlass org/gradle/api/internal/file/pattern/GreedyPathMatcher +instanceKlass org/gradle/api/internal/file/pattern/EndOfPathMatcher +instanceKlass org/gradle/api/internal/file/pattern/PatternMatcher +instanceKlass org/gradle/api/internal/file/pattern/PathMatcher +instanceKlass org/gradle/api/internal/file/pattern/PatternMatcherFactory +instanceKlass org/gradle/api/tasks/util/internal/CachingPatternSpecFactory$1 +instanceKlass org/gradle/api/tasks/util/internal/CachingPatternSpecFactory$SpecKey +instanceKlass org/gradle/cache/internal/BuildScopeCacheDir +instanceKlass org/gradle/launcher/exec/RootBuildLifecycleBuildActionExecutor$$Lambda$147 +instanceKlass org/gradle/initialization/buildsrc/BuildSrcDetector +instanceKlass org/gradle/internal/watch/vfs/impl/WatchingVirtualFileSystem$$Lambda$146 +instanceKlass java/util/function/UnaryOperator +instanceKlass org/gradle/internal/buildtree/DefaultBuildTreeLifecycleController +instanceKlass org/gradle/internal/buildtree/BuildTreeLifecycleController +instanceKlass org/gradle/internal/buildtree/BuildTreeModelController +instanceKlass org/gradle/internal/buildtree/DefaultBuildTreeModelCreator +instanceKlass org/gradle/internal/buildtree/BuildTreeModelCreator +instanceKlass org/gradle/internal/buildtree/DefaultBuildTreeWorkPreparer +instanceKlass org/gradle/internal/buildtree/BuildTreeWorkPreparer +instanceKlass org/gradle/internal/buildtree/DefaultBuildTreeFinishExecutor +instanceKlass org/gradle/internal/buildtree/DefaultBuildTreeWorkExecutor +instanceKlass org/gradle/internal/buildtree/BuildOperationFiringBuildTreeWorkExecutor +instanceKlass org/gradle/execution/SelectedTaskExecutionAction +instanceKlass org/gradle/execution/DryRunBuildExecutionAction +instanceKlass org/gradle/execution/BuildOperationFiringBuildWorkerExecutor +instanceKlass org/gradle/internal/build/DefaultBuildWorkPreparer +instanceKlass org/gradle/internal/taskgraph/CalculateTaskGraphBuildOperationType$TaskIdentity +instanceKlass org/gradle/internal/build/BuildOperationFiringBuildWorkPreparer +instanceKlass org/gradle/execution/plan/DefaultNodeValidator +instanceKlass org/gradle/execution/plan/ExecutionPlan +instanceKlass org/gradle/internal/snapshot/EmptyChildMap +instanceKlass org/gradle/internal/collect/PersistentList +instanceKlass org/gradle/internal/snapshot/ChildMap$StoreHandler +instanceKlass org/gradle/internal/snapshot/ChildMap$NodeHandler +instanceKlass org/gradle/execution/plan/ValuedVfsHierarchy +instanceKlass org/gradle/execution/plan/ExecutionNodeAccessHierarchy$AbstractNodeAccessVisitor +instanceKlass org/gradle/execution/plan/ValuedVfsHierarchy$ValueVisitor +instanceKlass org/gradle/execution/plan/ExecutionNodeAccessHierarchy +instanceKlass org/gradle/internal/graph/CachingDirectedGraphWalker$GraphWithEmptyEdges +instanceKlass org/gradle/api/internal/tasks/CachingTaskDependencyResolveContext$TaskGraphImpl +instanceKlass org/gradle/internal/graph/DirectedGraphWithEdgeValues +instanceKlass org/gradle/internal/graph/CachingDirectedGraphWalker +instanceKlass org/gradle/internal/graph/DirectedGraph +instanceKlass org/gradle/api/internal/tasks/AbstractTaskDependencyResolveContext +instanceKlass org/gradle/api/internal/tasks/TaskDependencyResolveContext +instanceKlass org/gradle/execution/plan/TaskNodeFactory$DefaultTypeOriginInspectorFactory +instanceKlass org/gradle/initialization/internal/InternalBuildFinishedListener +instanceKlass org/gradle/BuildResult +instanceKlass org/gradle/internal/build/DefaultBuildLifecycleController +instanceKlass org/gradle/internal/work/DefaultSynchronizer +instanceKlass org/gradle/internal/model/StateTransitionController$CurrentState +instanceKlass org/gradle/internal/model/StateTransitionController +instanceKlass org/gradle/internal/Describables$AbstractDescribable +instanceKlass org/gradle/internal/Describables +instanceKlass org/gradle/api/internal/artifacts/DefaultBuildIdentifier +instanceKlass org/gradle/internal/model/StateTransitionController$State +instanceKlass org/gradle/initialization/VintageBuildModelController +instanceKlass org/gradle/initialization/DefaultTaskExecutionPreparer +instanceKlass org/gradle/execution/BuildExecutionContext +instanceKlass org/gradle/execution/DefaultBuildConfigurationActionExecuter +instanceKlass org/gradle/execution/TaskNameResolvingBuildConfigurationAction +instanceKlass org/gradle/execution/DefaultTasksBuildExecutionAction +instanceKlass org/gradle/execution/BuildConfigurationAction +instanceKlass org/gradle/execution/commandline/CommandLineTaskConfigurer +instanceKlass org/gradle/api/internal/tasks/options/OptionValueNotationParserFactory +instanceKlass org/gradle/initialization/DefaultSettingsPreparer +instanceKlass org/gradle/initialization/BuildOperationFiringSettingsPreparer$1 +instanceKlass org/gradle/initialization/LoadBuildBuildOperationType$Result +instanceKlass org/gradle/initialization/BuildOperationFiringSettingsPreparer +instanceKlass org/gradle/internal/id/LongIdGenerator +instanceKlass org/gradle/configuration/DefaultInitScriptProcessor +instanceKlass org/gradle/api/internal/project/ProjectState +instanceKlass org/gradle/internal/model/ModelContainer +instanceKlass org/gradle/initialization/SettingsFactory +instanceKlass org/gradle/initialization/ScriptEvaluatingSettingsProcessor +instanceKlass org/gradle/initialization/SettingsEvaluatedCallbackFiringSettingsProcessor +instanceKlass org/gradle/initialization/RootBuildCacheControllerSettingsProcessor +instanceKlass org/gradle/initialization/BuildOperationSettingsProcessor$1 +instanceKlass org/gradle/initialization/EvaluateSettingsBuildOperationType$Result +instanceKlass org/gradle/initialization/BuildOperationSettingsProcessor +instanceKlass org/gradle/internal/resource/TextResource +instanceKlass org/gradle/internal/resource/DefaultTextFileResourceLoader +instanceKlass org/gradle/api/internal/artifacts/dsl/dependencies/UnknownProjectFinder +instanceKlass org/gradle/api/internal/initialization/ScriptHandlerInternal +instanceKlass org/gradle/api/initialization/dsl/ScriptHandler +instanceKlass org/gradle/api/internal/initialization/DefaultScriptHandlerFactory +instanceKlass org/gradle/api/internal/initialization/DefaultScriptClassPathResolver +instanceKlass org/gradle/configuration/ScriptPluginFactorySelector$1 +instanceKlass org/gradle/configuration/ScriptPluginFactorySelector$ProviderInstantiator +instanceKlass org/gradle/configuration/ScriptPluginFactorySelector +instanceKlass org/gradle/groovy/scripts/internal/CompileOperation +instanceKlass org/gradle/groovy/scripts/Transformer +instanceKlass org/gradle/groovy/scripts/internal/StatementTransformer +instanceKlass org/gradle/configuration/project/DefaultCompileOperationFactory +instanceKlass org/gradle/cache/internal/DefaultCrossBuildInMemoryCacheFactory$DefaultClassMap$$Lambda$145 +instanceKlass org/gradle/plugin/management/internal/DefaultPluginResolutionStrategy +instanceKlass org/gradle/plugin/internal/PluginUsePluginServiceRegistry$BuildScopeServices$1 +instanceKlass org/gradle/api/artifacts/dsl/RepositoryHandler +instanceKlass org/gradle/api/artifacts/ArtifactRepositoryContainer +instanceKlass org/gradle/api/NamedDomainObjectList +instanceKlass org/gradle/plugin/use/resolve/internal/PluginArtifactRepositories +instanceKlass org/gradle/api/internal/artifacts/Module +instanceKlass org/gradle/internal/service/scopes/BuildScopeServices$DependencyMetaDataProviderImpl +instanceKlass org/gradle/api/internal/artifacts/DefaultDependencyManagementServices +instanceKlass org/gradle/api/internal/file/AbstractFileResolver$2 +instanceKlass org/apache/commons/io/FilenameUtils +instanceKlass org/gradle/internal/typeconversion/NotationConverterToNotationParserAdapter$ResultImpl +instanceKlass org/gradle/util/internal/DeferredUtil +instanceKlass org/gradle/plugin/use/resolve/service/internal/ClientInjectedClasspathPluginResolver$$Lambda$144 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/api/internal/plugins/PluginImplementation +instanceKlass org/gradle/api/internal/plugins/DefaultPluginRegistry +instanceKlass org/gradle/api/internal/plugins/PotentialPlugin +instanceKlass org/gradle/model/internal/inspect/ModelRuleSourceDetector$1 +instanceKlass com/google/common/collect/MapMakerInternalMap$StrongKeyWeakValueEntry$Helper +instanceKlass org/gradle/api/internal/initialization/ClassLoaderScopeIdentifier +instanceKlass org/gradle/api/internal/initialization/AbstractClassLoaderScope +instanceKlass org/gradle/api/internal/initialization/loadercache/ClassLoaderId +instanceKlass org/gradle/initialization/ClassLoaderScopeId +instanceKlass org/gradle/initialization/DefaultClassLoaderScopeRegistry +instanceKlass org/gradle/api/internal/initialization/loadercache/DefaultClassLoaderCache$ClassLoaderSpec +instanceKlass org/gradle/api/internal/initialization/loadercache/DefaultClassLoaderCache +instanceKlass org/gradle/composite/internal/plugins/CompositeBuildPluginResolverContributor$CompositeBuildPluginResolver +instanceKlass org/gradle/composite/internal/plugins/CompositeBuildPluginResolverContributor +instanceKlass org/gradle/plugin/management/internal/autoapply/DefaultAutoAppliedPluginHandler +instanceKlass org/gradle/plugin/management/internal/SingletonPluginRequests +instanceKlass java/util/DualPivotQuicksort +instanceKlass org/gradle/plugin/use/internal/DefaultPluginId +instanceKlass org/gradle/plugin/use/PluginId +instanceKlass org/gradle/plugin/management/internal/autoapply/AutoAppliedGradleEnterprisePlugin +instanceKlass org/gradle/plugin/management/internal/DefaultPluginRequest +instanceKlass org/gradle/api/internal/artifacts/DefaultModuleVersionSelector +instanceKlass org/gradle/api/artifacts/ModuleVersionSelector +instanceKlass org/gradle/api/internal/artifacts/DefaultModuleIdentifier +instanceKlass org/gradle/plugin/management/internal/PluginRequestInternal +instanceKlass org/gradle/plugin/management/PluginRequest +instanceKlass org/gradle/plugin/management/internal/autoapply/DefaultAutoAppliedPluginRegistry +instanceKlass org/gradle/workers/internal/DefaultWorkResult +instanceKlass org/gradle/api/tasks/WorkResult +instanceKlass org/gradle/internal/work/ConditionalExecutionQueue +instanceKlass org/gradle/groovy/scripts/internal/BuildScopeInMemoryCachingScriptClassCompiler +instanceKlass org/gradle/groovy/scripts/ScriptCompiler +instanceKlass org/gradle/groovy/scripts/DefaultScriptCompilerFactory +instanceKlass org/gradle/groovy/scripts/ScriptRunner +instanceKlass org/gradle/groovy/scripts/internal/DefaultScriptRunnerFactory +instanceKlass org/gradle/groovy/scripts/internal/BuildOperationBackedScriptCompilationHandler$1 +instanceKlass org/gradle/internal/scripts/CompileScriptBuildOperationType$Result +instanceKlass org/gradle/groovy/scripts/internal/BuildOperationBackedScriptCompilationHandler +instanceKlass org/gradle/groovy/scripts/ScriptSource +instanceKlass org/gradle/groovy/scripts/internal/DefaultScriptCompilationHandler$NoOpGroovyResourceLoader +instanceKlass groovy/lang/GroovyResourceLoader +instanceKlass org/gradle/groovy/scripts/internal/CompiledScript +instanceKlass com/google/common/base/AbstractIterator$1 +instanceKlass com/google/common/base/AbstractIterator +instanceKlass com/google/common/base/Splitter$1 +instanceKlass com/google/common/base/CharMatcher +instanceKlass com/google/common/base/Splitter$Strategy +instanceKlass com/google/common/base/Splitter +instanceKlass org/gradle/configuration/DefaultImportsReader$2 +instanceKlass com/google/common/io/Java8Compatibility +instanceKlass com/google/common/io/LineBuffer +instanceKlass com/google/common/io/LineReader +instanceKlass com/google/common/io/CharStreams +instanceKlass org/gradle/configuration/DefaultImportsReader$1 +instanceKlass com/google/common/io/Resources +instanceKlass org/gradle/configuration/DefaultImportsReader +instanceKlass org/gradle/configuration/ScriptPlugin +instanceKlass org/gradle/api/Plugin +instanceKlass org/gradle/configuration/internal/DefaultUserCodeApplicationContext +instanceKlass org/gradle/composite/internal/CompositeBuildClassPathInitializer +instanceKlass org/gradle/api/tasks/TaskContainer +instanceKlass org/gradle/api/PolymorphicDomainObjectContainer +instanceKlass org/gradle/api/tasks/TaskCollection +instanceKlass org/gradle/execution/TaskSelectionResult +instanceKlass org/gradle/execution/TaskNameResolver +instanceKlass org/gradle/execution/ExcludedTaskFilteringProjectsPreparer +instanceKlass org/gradle/execution/DefaultTaskSchedulingPreparer +instanceKlass org/gradle/initialization/TaskSchedulingPreparer +instanceKlass org/gradle/configuration/DefaultProjectsPreparer +instanceKlass org/gradle/configuration/BuildTreePreparingProjectsPreparer +instanceKlass org/gradle/configuration/BuildOperationFiringProjectsPreparer$1 +instanceKlass org/gradle/initialization/ConfigureBuildBuildOperationType$Result +instanceKlass org/gradle/configuration/BuildOperationFiringProjectsPreparer +instanceKlass org/gradle/initialization/ModelConfigurationListener +instanceKlass org/gradle/internal/resource/local/FileResourceListener +instanceKlass org/gradle/initialization/InstantiatingBuildLoader +instanceKlass org/gradle/initialization/ProjectPropertySettingBuildLoader +instanceKlass org/gradle/initialization/NotifyingBuildLoader$$Lambda$143 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/initialization/NotifyingBuildLoader$1 +instanceKlass org/gradle/initialization/LoadProjectsBuildOperationType$Result$Project +instanceKlass org/gradle/initialization/NotifyProjectsLoadedBuildOperationType$Result +instanceKlass org/gradle/initialization/NotifyingBuildLoader +instanceKlass org/gradle/initialization/DefaultGradlePropertiesController$SharedGradleProperties +instanceKlass org/gradle/initialization/DefaultGradlePropertiesController$NotLoaded +instanceKlass org/gradle/initialization/DefaultGradlePropertiesController$State +instanceKlass org/gradle/initialization/DefaultGradlePropertiesController +instanceKlass org/gradle/initialization/DefaultGradlePropertiesLoader +instanceKlass kotlin/UNINITIALIZED_VALUE +instanceKlass kotlin/SafePublicationLazyImpl$Companion +instanceKlass kotlin/SafePublicationLazyImpl +instanceKlass kotlin/Lazy +instanceKlass kotlin/LazyKt$WhenMappings +instanceKlass kotlin/LazyKt__LazyJVMKt +instanceKlass kotlin/reflect/jvm/internal/pcollections/MapEntry +instanceKlass kotlin/reflect/jvm/internal/ReflectProperties$Val$1 +instanceKlass kotlin/reflect/jvm/internal/ReflectProperties$Val +instanceKlass kotlin/reflect/jvm/internal/ReflectProperties +instanceKlass kotlin/jvm/internal/Lambda +instanceKlass kotlin/text/Regex$Companion +instanceKlass kotlin/text/Regex +instanceKlass kotlin/jvm/internal/DefaultConstructorMarker +instanceKlass kotlin/reflect/jvm/internal/KDeclarationContainerImpl$Companion +instanceKlass kotlin/reflect/jvm/internal/KClassifierImpl +instanceKlass kotlin/reflect/jvm/internal/pcollections/ConsPStack +instanceKlass kotlin/reflect/jvm/internal/pcollections/IntTree +instanceKlass kotlin/reflect/jvm/internal/pcollections/IntTreePMap +instanceKlass kotlin/reflect/jvm/internal/pcollections/HashPMap +instanceKlass kotlin/reflect/jvm/internal/KClassCacheKt +instanceKlass kotlin/reflect/jvm/internal/KPropertyImpl$Companion +instanceKlass kotlin/reflect/jvm/internal/KCallableImpl +instanceKlass kotlin/reflect/jvm/internal/KTypeParameterOwnerImpl +instanceKlass kotlin/reflect/jvm/internal/KDeclarationContainerImpl +instanceKlass kotlin/jvm/internal/ClassBasedDeclarationContainer +instanceKlass kotlin/jvm/internal/FunctionBase +instanceKlass kotlin/reflect/KMutableProperty2 +instanceKlass kotlin/reflect/KType +instanceKlass kotlin/reflect/KProperty2 +instanceKlass kotlin/reflect/KMutableProperty1 +instanceKlass kotlin/reflect/KTypeParameter +instanceKlass kotlin/reflect/KProperty1 +instanceKlass kotlin/jvm/functions/Function1 +instanceKlass kotlin/reflect/KMutableProperty0 +instanceKlass kotlin/reflect/KMutableProperty +instanceKlass kotlin/reflect/KClass +instanceKlass kotlin/jvm/internal/ReflectionFactory +instanceKlass kotlin/reflect/KClassifier +instanceKlass kotlin/jvm/internal/Reflection +instanceKlass kotlin/jvm/internal/CallableReference$NoReceiver +instanceKlass kotlin/reflect/KProperty$Getter +instanceKlass kotlin/reflect/KFunction +instanceKlass kotlin/reflect/KProperty$Accessor +instanceKlass kotlin/reflect/KDeclarationContainer +instanceKlass kotlin/jvm/internal/CallableReference +instanceKlass kotlin/reflect/KProperty0 +instanceKlass kotlin/jvm/functions/Function0 +instanceKlass kotlin/reflect/KProperty +instanceKlass kotlin/reflect/KCallable +instanceKlass kotlin/reflect/KAnnotatedElement +instanceKlass org/gradle/kotlin/dsl/tooling/builders/BuildSrcClassPathModeConfigurationAction +instanceKlass org/gradle/initialization/buildsrc/GroovyBuildSrcProjectConfigurationAction +instanceKlass org/gradle/configuration/project/PluginsProjectConfigureActions +instanceKlass org/gradle/api/internal/InternalAction +instanceKlass org/gradle/configuration/project/ProjectConfigureAction +instanceKlass org/gradle/initialization/buildsrc/BuildSrcProjectConfigurationAction +instanceKlass org/gradle/initialization/buildsrc/BuildSrcBuildListenerFactory +instanceKlass org/gradle/initialization/buildsrc/BuildSourceBuilder$1 +instanceKlass org/gradle/initialization/buildsrc/BuildBuildSrcBuildOperationType$Result +instanceKlass org/gradle/util/internal/GUtil$1 +instanceKlass org/gradle/internal/build/DefaultPublicBuildPath +instanceKlass org/gradle/api/internal/AbstractMutationGuard +instanceKlass org/gradle/internal/operations/RunnableBuildOperation +instanceKlass org/gradle/api/internal/project/BuildOperationCrossProjectConfigurator +instanceKlass org/gradle/api/internal/WithMutationGuard +instanceKlass org/gradle/internal/concurrent/CompositeStoppable$2 +instanceKlass org/gradle/configurationcache/serialization/beans/BeanStateWriterLookup +instanceKlass org/gradle/configurationcache/serialization/beans/BeanStateReaderLookup +instanceKlass org/gradle/configurationcache/ConfigurationCacheClassLoaderScopeRegistryListener +instanceKlass org/gradle/configurationcache/serialization/ScopeLookup +instanceKlass org/gradle/initialization/ClassLoaderScopeRegistryListener +instanceKlass org/gradle/configurationcache/problems/ConfigurationCacheProblems +instanceKlass org/gradle/configurationcache/ConfigurationCacheIO +instanceKlass org/gradle/configurationcache/ConfigurationCacheHost +instanceKlass org/gradle/configurationcache/DefaultConfigurationCache$Host +instanceKlass org/gradle/cache/internal/FileContentCacheFactory$Calculator +instanceKlass org/gradle/language/nativeplatform/internal/incremental/sourceparser/CachingCSourceParser +instanceKlass org/gradle/language/nativeplatform/internal/incremental/sourceparser/CSourceParser +instanceKlass org/gradle/language/nativeplatform/internal/incremental/DefaultCompilationStateCacheFactory +instanceKlass org/gradle/language/nativeplatform/internal/incremental/CompilationStateCacheFactory +instanceKlass org/gradle/internal/scan/config/BuildScanConfig +instanceKlass org/gradle/internal/scan/config/BuildScanConfig$Attributes +instanceKlass org/gradle/internal/enterprise/impl/legacy/LegacyGradleEnterprisePluginCheckInService +instanceKlass org/gradle/internal/scan/eob/BuildScanEndOfBuildNotifier +instanceKlass org/gradle/internal/scan/config/BuildScanConfigProvider +instanceKlass org/gradle/internal/enterprise/impl/legacy/DefaultBuildScanScopeIds +instanceKlass org/gradle/internal/scan/scopeids/BuildScanScopeIds +instanceKlass org/gradle/internal/enterprise/GradleEnterprisePluginCheckInResult +instanceKlass org/gradle/internal/enterprise/impl/DefautGradleEnterprisePluginCheckInService +instanceKlass org/gradle/internal/enterprise/GradleEnterprisePluginCheckInService +instanceKlass org/gradle/internal/enterprise/impl/DefaultGradleEnterprisePluginConfig +instanceKlass org/gradle/internal/enterprise/impl/DefaultGradleEnterprisePluginBuildState +instanceKlass org/gradle/internal/enterprise/impl/DefaultGradleEnterprisePluginServiceRef +instanceKlass org/gradle/internal/enterprise/GradleEnterprisePluginBuildState +instanceKlass org/gradle/internal/enterprise/GradleEnterprisePluginConfig +instanceKlass org/gradle/internal/enterprise/GradleEnterprisePluginEndOfBuildListener$BuildResult +instanceKlass org/gradle/internal/enterprise/GradleEnterprisePluginServiceRef +instanceKlass org/gradle/internal/enterprise/impl/DefaultGradleEnterprisePluginAdapter +instanceKlass org/gradle/internal/enterprise/core/GradleEnterprisePluginAdapter +instanceKlass org/gradle/initialization/DefaultJdkToolsInitializer +instanceKlass org/gradle/api/internal/tasks/compile/incremental/analyzer/CachingClassDependenciesAnalyzer +instanceKlass org/gradle/api/internal/tasks/compile/incremental/classpath/CachingClassSetAnalyzer +instanceKlass org/gradle/api/internal/tasks/compile/incremental/IncrementalCompilerFactory +instanceKlass org/gradle/api/internal/tasks/compile/incremental/analyzer/ClassDependenciesAnalyzer +instanceKlass org/gradle/api/internal/tasks/compile/incremental/classpath/ClassSetAnalyzer +instanceKlass org/gradle/api/internal/tasks/CompileServices$GradleScopeCompileServices +instanceKlass org/gradle/language/java/artifact/JavadocArtifact +instanceKlass org/gradle/language/java/internal/JavaLanguagePluginServiceRegistry$JavaGradleScopeServices +instanceKlass org/gradle/api/internal/artifacts/DependencyServices$DependencyManagementGradleServices +instanceKlass org/gradle/kotlin/dsl/accessors/PluginAccessorClassPathGenerator +instanceKlass org/gradle/kotlin/dsl/accessors/ProjectAccessorsClassPathGenerator +instanceKlass org/gradle/kotlin/dsl/accessors/GradleScopeServices +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/internal/execution/OutputChangeListener +instanceKlass org/gradle/internal/execution/history/OutputsCleaner +instanceKlass org/gradle/internal/execution/history/OutputFilesRepository +instanceKlass org/gradle/internal/service/scopes/ExecutionGradleServices +instanceKlass org/gradle/caching/internal/controller/BuildCacheController +instanceKlass org/gradle/caching/internal/origin/OriginMetadataFactory +instanceKlass org/gradle/caching/internal/packaging/impl/TarPackerFileSystemSupport +instanceKlass org/gradle/caching/internal/controller/BuildCacheCommandFactory +instanceKlass org/gradle/caching/internal/packaging/BuildCacheEntryPacker +instanceKlass org/gradle/caching/internal/packaging/impl/FilePermissionAccess +instanceKlass org/gradle/caching/internal/BuildCacheServices$3 +instanceKlass org/gradle/internal/service/scopes/GradleScopeServices$$Lambda$142 +instanceKlass org/gradle/api/execution/TaskExecutionGraphListener +instanceKlass org/gradle/api/services/internal/BuildServiceRegistryInternal +instanceKlass org/gradle/api/execution/TaskExecutionListener +instanceKlass org/gradle/execution/plan/LocalTaskNodeExecutor +instanceKlass org/gradle/execution/plan/PlanExecutor +instanceKlass org/gradle/execution/plan/WorkNodeExecutor +instanceKlass org/gradle/execution/plan/NodeExecutor +instanceKlass org/gradle/execution/commandline/CommandLineTaskParser +instanceKlass org/gradle/api/internal/tasks/options/OptionReader +instanceKlass org/gradle/execution/BuildConfigurationActionExecuter +instanceKlass org/gradle/initialization/TaskExecutionPreparer +instanceKlass org/gradle/internal/execution/BuildOutputCleanupRegistry +instanceKlass org/gradle/execution/BuildWorkExecutor +instanceKlass org/gradle/internal/ImmutableActionSet +instanceKlass org/gradle/internal/instantiation/generator/AsmBackedClassGenerator$ObjectCreationDetails +instanceKlass com/google/common/collect/Ordering +instanceKlass org/gradle/internal/instantiation/generator/ConstructorComparator +instanceKlass org/gradle/internal/instantiation/generator/AsmBackedClassGenerator$InvokeConstructorStrategy +instanceKlass org/gradle/internal/instantiation/generator/AbstractClassGenerator$GeneratedClassImpl$GeneratedConstructorImpl +instanceKlass org/gradle/internal/instantiation/generator/ClassGenerator$GeneratedConstructor +instanceKlass org/gradle/internal/instantiation/generator/ClassGenerator$SerializationConstructor +instanceKlass java/lang/invoke/MethodHandles$Lookup$$Lambda$141 +instanceKlass jdk/internal/org/objectweb/asm/ClassReader +instanceKlass org/objectweb/asm/Handler +instanceKlass org/objectweb/asm/Attribute +instanceKlass org/gradle/internal/instantiation/generator/AsmBackedClassGenerator$ClassBuilderImpl$ReturnTypeEntry +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass org/gradle/internal/instantiation/generator/AsmBackedClassGenerator$ClassBuilderImpl$$Lambda$140 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/internal/instantiation/generator/AsmBackedClassGenerator$ClassBuilderImpl$$Lambda$139 +instanceKlass com/google/common/collect/LinkedHashMultimap$ValueSet$1 +instanceKlass com/google/common/collect/AbstractMapBasedMultimap$WrappedCollection$WrappedIterator +instanceKlass org/gradle/internal/instantiation/generator/AsmBackedClassGenerator$ClassBuilderImpl$$Lambda$138 +instanceKlass org/gradle/internal/instantiation/generator/AsmBackedClassGenerator$ClassBuilderImpl$$Lambda$137 +instanceKlass org/gradle/internal/instantiation/generator/AsmBackedClassGenerator$ClassBuilderImpl$$Lambda$136 +instanceKlass org/gradle/internal/instantiation/generator/AsmBackedClassGenerator$ClassBuilderImpl$$Lambda$135 +instanceKlass org/gradle/internal/instantiation/generator/AsmBackedClassGenerator$ClassBuilderImpl$$Lambda$134 +instanceKlass org/gradle/internal/instantiation/generator/AsmBackedClassGenerator$ClassBuilderImpl$$Lambda$133 +instanceKlass org/gradle/internal/instantiation/generator/AsmBackedClassGenerator$ClassBuilderImpl$$Lambda$132 +instanceKlass org/gradle/internal/reflect/JavaReflectionUtil +instanceKlass org/gradle/model/internal/asm/AsmClassGeneratorUtils +instanceKlass org/gradle/internal/instantiation/generator/AsmBackedClassGenerator$ClassBuilderImpl$$Lambda$131 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/internal/instantiation/generator/AsmBackedClassGenerator$ClassBuilderImpl$$Lambda$130 +instanceKlass org/gradle/internal/instantiation/generator/AsmBackedClassGenerator$ClassBuilderImpl$$Lambda$129 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/internal/instantiation/generator/AsmBackedClassGenerator$MethodCodeBody +instanceKlass org/objectweb/asm/Edge +instanceKlass org/objectweb/asm/Label +instanceKlass org/objectweb/asm/Frame +instanceKlass org/objectweb/asm/ByteVector +instanceKlass org/objectweb/asm/Symbol +instanceKlass org/objectweb/asm/SymbolTable +instanceKlass org/objectweb/asm/MethodVisitor +instanceKlass org/objectweb/asm/FieldVisitor +instanceKlass org/objectweb/asm/ModuleVisitor +instanceKlass org/objectweb/asm/AnnotationVisitor +instanceKlass org/objectweb/asm/RecordComponentVisitor +instanceKlass org/gradle/model/internal/asm/AsmClassGenerator +instanceKlass org/gradle/internal/DisplayName +instanceKlass org/gradle/internal/instantiation/generator/ManagedObjectFactory +instanceKlass org/gradle/util/internal/ConfigureUtil +instanceKlass org/gradle/internal/metaobject/AbstractDynamicObject +instanceKlass org/gradle/api/plugins/Convention +instanceKlass org/gradle/api/plugins/ExtensionContainer +instanceKlass org/gradle/internal/metaobject/DynamicObject +instanceKlass org/gradle/internal/metaobject/PropertyAccess +instanceKlass org/gradle/internal/metaobject/MethodAccess +instanceKlass org/gradle/internal/extensibility/ConventionAwareHelper +instanceKlass org/gradle/api/internal/HasConvention +instanceKlass org/gradle/api/internal/IConventionAware +instanceKlass org/gradle/api/internal/GeneratedSubclass +instanceKlass org/gradle/api/internal/ConventionMapping +instanceKlass org/gradle/internal/instantiation/generator/AsmBackedClassGenerator$ClassBuilderImpl +instanceKlass javax/annotation/Nullable +instanceKlass java/lang/module/ModuleDescriptor$Builder$$Lambda$128 +instanceKlass jdk/internal/module/Checks +instanceKlass java/lang/module/ModuleDescriptor$Builder +instanceKlass java/lang/reflect/Proxy$ProxyBuilder$$Lambda$127 +instanceKlass jdk/internal/HotSpotIntrinsicCandidate +instanceKlass java/lang/Deprecated +instanceKlass org/gradle/api/internal/DynamicObjectAware +instanceKlass org/gradle/internal/extensibility/NoConventionMapping +instanceKlass sun/reflect/annotation/AnnotationParser$$Lambda$126 +instanceKlass sun/reflect/generics/tree/Wildcard +instanceKlass sun/reflect/generics/tree/BottomSignature +instanceKlass org/gradle/internal/instantiation/generator/AbstractClassGenerator$MethodMetadata +instanceKlass org/gradle/internal/reflect/PropertyMutator +instanceKlass org/gradle/internal/reflect/PropertyAccessor +instanceKlass org/gradle/internal/reflect/JavaPropertyReflectionUtil +instanceKlass org/gradle/internal/instantiation/generator/AbstractClassGenerator$PropertyMetadata +instanceKlass org/gradle/internal/instantiation/generator/AbstractClassGenerator$ClassMetadata +instanceKlass org/gradle/configuration/ConfigurationTargetIdentifier +instanceKlass org/gradle/api/plugins/PluginContainer +instanceKlass org/gradle/api/plugins/PluginCollection +instanceKlass org/gradle/internal/reflect/MutablePropertyDetails +instanceKlass java/beans/Introspector$1 +instanceKlass jdk/internal/access/JavaBeansAccess +instanceKlass java/beans/FeatureDescriptor +instanceKlass java/beans/Introspector +instanceKlass org/gradle/internal/reflect/MethodSet$MethodKey +instanceKlass org/gradle/api/services/BuildServiceRegistry +instanceKlass org/gradle/execution/taskgraph/TaskExecutionGraphInternal +instanceKlass org/gradle/api/internal/plugins/PluginManagerInternal +instanceKlass org/gradle/util/Path +instanceKlass org/gradle/api/internal/plugins/DefaultObjectConfigurationAction +instanceKlass org/gradle/api/plugins/ObjectConfigurationAction +instanceKlass org/gradle/api/internal/initialization/ClassLoaderScope +instanceKlass org/gradle/api/internal/SettingsInternal +instanceKlass org/gradle/api/initialization/Settings +instanceKlass groovy/lang/GroovyObjectSupport +instanceKlass groovy/lang/GroovyCallable +instanceKlass org/gradle/internal/MutableActionSet +instanceKlass org/gradle/api/execution/TaskExecutionGraph +instanceKlass org/gradle/api/plugins/PluginManager +instanceKlass org/gradle/internal/reflect/PropertyDetails +instanceKlass org/gradle/internal/reflect/MutableClassDetails +instanceKlass org/gradle/internal/reflect/ClassDetails +instanceKlass org/gradle/internal/reflect/ClassInspector +instanceKlass org/gradle/internal/instantiation/generator/AbstractClassGenerator$ClassGenerationVisitor +instanceKlass org/gradle/internal/instantiation/generator/AsmBackedClassGenerator$ClassInspectionVisitorImpl +instanceKlass org/gradle/internal/instantiation/generator/AbstractClassGenerator$InjectionAnnotationValidator +instanceKlass org/gradle/internal/instantiation/generator/AbstractClassGenerator$DisabledAnnotationValidator +instanceKlass org/gradle/internal/instantiation/generator/AbstractClassGenerator$ClassValidator +instanceKlass com/google/common/collect/LinkedHashMultimap$ValueSetLink +instanceKlass org/gradle/internal/reflect/MethodSet +instanceKlass org/gradle/internal/instantiation/generator/AbstractClassGenerator$ClassGenerationHandler +instanceKlass org/gradle/api/internal/project/AbstractPluginAware +instanceKlass org/gradle/internal/build/DefaultBuildLifecycleControllerFactory$1 +instanceKlass org/gradle/internal/featurelifecycle/ScriptUsageLocationReporter +instanceKlass org/gradle/configurationcache/DeprecatedFeaturesListenerManagerAction$DeprecatedFeaturesListener +instanceKlass org/gradle/profile/BuildProfileServices$1$1 +instanceKlass org/gradle/api/HasImplicitReceiver +instanceKlass org/gradle/api/NonExtensible +instanceKlass org/gradle/internal/build/AbstractBuildState$$Lambda$125 +instanceKlass org/gradle/internal/build/AbstractBuildState$$Lambda$124 +instanceKlass org/gradle/internal/build/AbstractBuildState$$Lambda$123 +instanceKlass org/gradle/internal/lazy/Lazy$$Lambda$122 +instanceKlass org/gradle/internal/lazy/Lazy$Factory +instanceKlass org/gradle/internal/lazy/LockingLazy +instanceKlass org/gradle/internal/lazy/Lazy +instanceKlass org/gradle/configurationcache/RelevantProjectsRegistry +instanceKlass org/gradle/profile/ProfileEventAdapter +instanceKlass org/gradle/api/internal/artifacts/transform/ArtifactTransformListener +instanceKlass org/gradle/initialization/BuildCompletionListener +instanceKlass org/gradle/api/artifacts/DependencyResolutionListener +instanceKlass org/gradle/execution/taskgraph/TaskListenerInternal +instanceKlass org/gradle/api/ProjectEvaluationListener +instanceKlass org/gradle/profile/ProfileListener +instanceKlass org/gradle/profile/BuildProfileServices$1 +instanceKlass org/gradle/vcs/internal/resolver/VcsDependencyResolver +instanceKlass org/gradle/vcs/internal/resolver/VcsVersionWorkingDirResolver +instanceKlass org/gradle/vcs/internal/services/VersionControlServices$VersionControlBuildServices +instanceKlass org/gradle/tooling/provider/model/ToolingModelBuilder +instanceKlass org/gradle/language/cpp/internal/tooling/ToolingNativeServices$ToolingModelRegistration +instanceKlass org/gradle/authentication/aws/AwsImAuthentication +instanceKlass org/gradle/internal/resource/transport/aws/s3/S3ResourcesPluginServiceRegistry$AuthenticationSchemeAction +instanceKlass org/gradle/nativeplatform/toolchain/internal/metadata/CompilerMetaDataProvider +instanceKlass org/gradle/nativeplatform/toolchain/internal/metadata/CompilerMetaDataProviderFactory +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/nativeplatform/internal/resolve/NativeDependencyResolver +instanceKlass org/gradle/nativeplatform/internal/resolve/LibraryBinaryLocator +instanceKlass org/gradle/nativeplatform/internal/resolve/NativeDependencyResolverServices +instanceKlass org/gradle/language/cpp/internal/NativeDependencyCache +instanceKlass org/gradle/ide/xcode/internal/xcodeproj/GidGenerator +instanceKlass org/gradle/ide/xcode/internal/services/XcodeServices$GlobalIdGeneratorServices +instanceKlass org/gradle/plugins/ide/internal/configurer/UniqueProjectNameProvider +instanceKlass org/gradle/plugins/ide/internal/tooling/ToolingModelServices$BuildScopeToolingServices +instanceKlass org/gradle/plugin/use/resolve/internal/PluginResolverContributor +instanceKlass org/gradle/composite/internal/CompositeBuildServices$CompositeBuildBuildScopeServices +instanceKlass org/gradle/caching/http/internal/HttpBuildCacheServiceServices$$Lambda$121 +instanceKlass org/apache/http/HttpRequest +instanceKlass org/apache/http/HttpMessage +instanceKlass org/gradle/caching/http/internal/HttpBuildCacheRequestCustomizer +instanceKlass org/gradle/caching/http/internal/DefaultHttpBuildCacheServiceFactory +instanceKlass org/gradle/caching/BuildCacheServiceFactory +instanceKlass org/gradle/caching/configuration/AbstractBuildCache +instanceKlass org/gradle/caching/configuration/BuildCache +instanceKlass org/gradle/caching/configuration/internal/DefaultBuildCacheServiceRegistration +instanceKlass org/gradle/maven/MavenPomArtifact +instanceKlass org/gradle/maven/MavenModule +instanceKlass org/gradle/api/publish/maven/internal/publisher/MavenPublishers +instanceKlass org/gradle/api/publish/maven/internal/dependencies/VersionRangeMapper +instanceKlass org/gradle/api/publish/maven/internal/MavenPublishServices$ComponentRegistrationAction +instanceKlass org/gradle/api/publish/internal/validation/DuplicatePublicationTracker +instanceKlass org/gradle/api/internal/artifacts/ivyservice/projectmodule/DefaultProjectDependencyPublicationResolver +instanceKlass org/gradle/api/internal/artifacts/ivyservice/projectmodule/ProjectDependencyPublicationResolver +instanceKlass org/gradle/jvm/toolchain/internal/LocationListInstallationSupplier +instanceKlass org/gradle/jvm/toolchain/internal/EnvironmentVariableListInstallationSupplier +instanceKlass org/gradle/jvm/toolchain/internal/AutoDetectingInstallationSupplier +instanceKlass org/gradle/jvm/toolchain/internal/InstallationSupplier +instanceKlass org/gradle/jvm/toolchain/internal/JavaInstallationRegistry +instanceKlass org/gradle/jvm/toolchain/install/internal/JdkCacheDirectory +instanceKlass org/gradle/language/base/artifact/SourcesArtifact +instanceKlass org/gradle/jvm/JvmLibrary +instanceKlass org/gradle/platform/base/Library +instanceKlass org/gradle/language/jvm/internal/JvmPluginServiceRegistry$ComponentRegistrationAction +instanceKlass org/gradle/ivy/IvyDescriptorArtifact +instanceKlass org/gradle/api/component/Artifact +instanceKlass org/gradle/api/internal/component/DefaultComponentTypeRegistry$DefaultComponentTypeRegistration +instanceKlass org/gradle/ivy/IvyModule +instanceKlass org/gradle/api/component/Component +instanceKlass org/gradle/api/internal/component/ComponentTypeRegistration +instanceKlass org/gradle/api/internal/component/DefaultComponentTypeRegistry +instanceKlass org/gradle/api/publish/ivy/internal/publisher/IvyPublisher +instanceKlass org/gradle/api/publish/ivy/internal/IvyServices$BuildServices +instanceKlass org/gradle/api/internal/resolve/ProjectModelResolver +instanceKlass org/gradle/platform/base/internal/registry/ComponentModelBaseServiceRegistry$BuildScopeServices +instanceKlass org/gradle/plugin/use/tracker/internal/PluginVersionTracker +instanceKlass org/gradle/plugin/use/resolve/internal/PluginResolutionResult +instanceKlass org/gradle/api/internal/plugins/PluginDescriptorLocator +instanceKlass org/gradle/plugin/use/internal/DefaultPluginRequestApplicator +instanceKlass org/gradle/plugin/use/resolve/internal/PluginResolver +instanceKlass org/gradle/plugin/use/internal/PluginResolverFactory +instanceKlass org/gradle/plugin/management/internal/PluginResolutionStrategyInternal +instanceKlass org/gradle/plugin/management/PluginResolutionStrategy +instanceKlass org/gradle/plugin/use/internal/PluginDependencyResolutionServices +instanceKlass org/gradle/plugin/use/resolve/internal/PluginArtifactRepositoriesProvider +instanceKlass org/gradle/plugin/use/internal/PluginRepositoryHandlerProvider +instanceKlass org/gradle/plugin/management/internal/autoapply/AutoAppliedPluginRegistry +instanceKlass org/gradle/api/internal/artifacts/dsl/dependencies/ProjectFinder +instanceKlass org/gradle/plugin/use/resolve/service/internal/ClientInjectedClasspathPluginResolver +instanceKlass org/gradle/plugin/internal/PluginUsePluginServiceRegistry$BuildScopeServices +instanceKlass org/gradle/authentication/http/HttpHeaderAuthentication +instanceKlass org/gradle/authentication/http/DigestAuthentication +instanceKlass org/gradle/internal/authentication/AbstractAuthentication +instanceKlass org/gradle/internal/authentication/AuthenticationInternal +instanceKlass org/gradle/authentication/http/BasicAuthentication +instanceKlass org/gradle/authentication/Authentication +instanceKlass org/gradle/internal/authentication/DefaultAuthenticationSchemeRegistry +instanceKlass org/gradle/internal/resource/transport/http/HttpResourcesPluginServiceRegistry$AuthenticationSchemeAction +instanceKlass org/gradle/api/internal/artifacts/transform/TransformationNodeDependencyResolver +instanceKlass org/gradle/internal/component/model/ComponentResolveMetadata +instanceKlass org/gradle/api/internal/artifacts/ivyservice/projectmodule/ProjectArtifactSetResolver +instanceKlass org/gradle/api/internal/artifacts/ivyservice/projectmodule/ProjectArtifactResolver +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ResolverProviderFactory +instanceKlass org/gradle/internal/component/external/model/ModuleComponentArtifactMetadata +instanceKlass org/gradle/internal/component/model/ComponentArtifactMetadata +instanceKlass org/gradle/internal/resource/local/GroupedAndNamedUniqueFileStore +instanceKlass org/gradle/internal/verifier/HttpRedirectVerifier +instanceKlass org/gradle/internal/resource/cached/AbstractCachedIndex +instanceKlass org/gradle/internal/management/DependencyResolutionManagementInternal +instanceKlass org/gradle/api/initialization/resolve/DependencyResolutionManagement +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/ModuleRepositoryCacheProvider +instanceKlass org/gradle/internal/resolve/caching/CrossBuildCachingRuleExecutor +instanceKlass org/gradle/internal/resolve/caching/CachingRuleExecutor +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/excludes/ModuleExclusions +instanceKlass org/gradle/api/internal/artifacts/ivyservice/projectmodule/ProjectDependencyResolver +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ComponentResolvers +instanceKlass org/gradle/internal/resolve/resolver/OriginArtifactSelector +instanceKlass org/gradle/internal/resolve/resolver/ArtifactResolver +instanceKlass org/gradle/internal/resolve/resolver/DependencyToComponentIdResolver +instanceKlass org/gradle/internal/resolve/resolver/ComponentMetaDataResolver +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/ResolveIvyFactory +instanceKlass org/gradle/api/internal/filestore/DefaultArtifactIdentifierFileStore$Factory +instanceKlass org/gradle/internal/resource/cached/DefaultExternalResourceFileStore$Factory +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/ModuleRepositoryCaches +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/ModuleSourcesSerializer +instanceKlass org/gradle/api/internal/artifacts/repositories/metadata/IvyMutableModuleMetadataFactory +instanceKlass org/gradle/api/internal/artifacts/repositories/metadata/MavenMutableModuleMetadataFactory +instanceKlass org/gradle/api/internal/artifacts/repositories/metadata/MutableModuleMetadataFactory +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/verification/DependencyVerificationOverride +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/strategy/VersionParser +instanceKlass org/gradle/internal/resource/TextUriResourceLoader$Factory +instanceKlass org/gradle/api/internal/artifacts/repositories/transport/RepositoryTransportFactory +instanceKlass org/gradle/api/internal/runtimeshaded/RuntimeShadedJarFactory +instanceKlass org/gradle/api/internal/artifacts/DefaultProjectDependencyFactory +instanceKlass org/gradle/util/internal/SimpleMapInterner +instanceKlass org/gradle/internal/resource/local/LocallyAvailableResourceFinder +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/FileStoreAndIndexProvider +instanceKlass org/gradle/api/internal/artifacts/verification/signatures/SignatureVerificationServiceFactory +instanceKlass org/gradle/initialization/DependenciesAccessors +instanceKlass org/gradle/internal/resource/TextUriResourceLoader +instanceKlass org/gradle/api/internal/artifacts/repositories/resolver/ExternalResourceAccessor +instanceKlass org/gradle/api/internal/filestore/ArtifactIdentifierFileStore +instanceKlass org/gradle/api/internal/artifacts/mvnsettings/LocalMavenRepositoryLocator +instanceKlass org/gradle/internal/execution/steps/DeferredExecutionAwareStep +instanceKlass org/gradle/internal/execution/steps/Step +instanceKlass org/gradle/api/internal/artifacts/ArtifactDependencyResolver +instanceKlass org/gradle/internal/resource/cached/CachedExternalResourceIndex +instanceKlass org/gradle/internal/resource/cached/ExternalResourceFileStore +instanceKlass org/gradle/internal/resource/local/FileStore +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/dynamicversions/AbstractModuleVersionsCache +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/dynamicversions/ModuleVersionsCache +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/AbstractModuleMetadataCache +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/ModuleMetadataCache +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/artifacts/AbstractArtifactsCache +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/artifacts/ModuleArtifactsCache +instanceKlass org/gradle/api/internal/artifacts/ivyservice/modulecache/artifacts/ModuleArtifactCache +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/AttributeContainerSerializer +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/strategy/VersionSelectorScheme +instanceKlass org/gradle/api/internal/artifacts/mvnsettings/MavenSettingsProvider +instanceKlass org/gradle/api/internal/artifacts/mvnsettings/MavenFileLocations +instanceKlass org/gradle/api/internal/artifacts/ivyservice/projectmodule/ProjectPublicationRegistry +instanceKlass org/gradle/api/internal/artifacts/ComponentSelectorConverter +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/RepositoryDisabler +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/strategy/VersionComparator +instanceKlass org/gradle/api/internal/artifacts/component/ComponentIdentifierFactory +instanceKlass org/gradle/internal/resource/local/FileStoreSearcher +instanceKlass org/gradle/api/internal/artifacts/DependencyManagementBuildScopeServices +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/api/internal/artifacts/dsl/dependencies/DependencyFactory +instanceKlass org/gradle/kotlin/dsl/provider/KotlinScriptEvaluator +instanceKlass org/gradle/internal/execution/ExecutionEngine +instanceKlass org/gradle/kotlin/dsl/provider/ClassPathModeExceptionCollector +instanceKlass org/gradle/kotlin/dsl/provider/KotlinScriptClassPathProvider +instanceKlass org/gradle/kotlin/dsl/provider/PluginRequestsHandler +instanceKlass org/gradle/plugin/management/internal/autoapply/AutoAppliedPluginHandler +instanceKlass org/gradle/plugin/use/internal/PluginRequestApplicator +instanceKlass kotlin/jvm/functions/Function2 +instanceKlass kotlin/Function +instanceKlass org/gradle/kotlin/dsl/provider/BuildServices +instanceKlass org/gradle/kotlin/dsl/concurrent/AsyncIOScopeFactory +instanceKlass org/gradle/kotlin/dsl/concurrent/BuildServices +instanceKlass org/gradle/caching/configuration/internal/BuildCacheConfigurationInternal +instanceKlass org/gradle/caching/configuration/BuildCacheConfiguration +instanceKlass org/gradle/caching/local/internal/DirectoryBuildCacheFileStoreFactory +instanceKlass org/gradle/caching/configuration/internal/BuildCacheServiceRegistration +instanceKlass org/gradle/caching/internal/BuildCacheServices$2 +instanceKlass org/gradle/configuration/project/ProjectEvaluator +instanceKlass org/gradle/api/internal/artifacts/ivyservice/projectmodule/LocalComponentRegistry +instanceKlass org/gradle/api/internal/artifacts/ivyservice/projectmodule/LocalComponentProvider +instanceKlass org/gradle/configurationcache/DefaultBuildModelControllerServices$VintageModelProvider +instanceKlass org/gradle/api/internal/project/CrossProjectModelAccess +instanceKlass org/gradle/configurationcache/DefaultBuildModelControllerServices$VintageIsolatedProjectsProvider +instanceKlass org/gradle/configurationcache/services/DefaultEnvironment +instanceKlass org/gradle/internal/build/BuildModelController +instanceKlass org/gradle/configurationcache/DefaultBuildModelControllerServices$VintageBuildControllerProvider +instanceKlass org/gradle/configurationcache/DeprecatedFeaturesListenerManagerAction +instanceKlass org/gradle/internal/service/scopes/BuildScopeListenerManagerAction +instanceKlass org/gradle/configurationcache/DefaultBuildModelControllerServices$ServicesProvider +instanceKlass org/gradle/internal/composite/DefaultBuildIncluder +instanceKlass org/gradle/internal/build/BuildWorkGraph +instanceKlass org/gradle/internal/build/ExportedTaskNode +instanceKlass org/gradle/internal/build/DefaultBuildWorkGraphController +instanceKlass org/gradle/internal/build/BuildWorkGraphController +instanceKlass org/gradle/execution/plan/WorkNodeDependencyResolver +instanceKlass org/gradle/execution/plan/TaskNodeDependencyResolver +instanceKlass org/gradle/execution/plan/DependencyResolver +instanceKlass org/gradle/api/internal/tasks/WorkDependencyResolver +instanceKlass org/gradle/internal/execution/WorkValidationContext +instanceKlass org/gradle/internal/execution/WorkValidationContext$TypeOriginInspector +instanceKlass org/gradle/initialization/layout/ResolvedBuildLayout +instanceKlass org/gradle/internal/build/BuildIncluder +instanceKlass org/gradle/initialization/SettingsLoader +instanceKlass org/gradle/initialization/DefaultSettingsLoaderFactory +instanceKlass org/gradle/api/internal/project/ProjectFactory +instanceKlass org/gradle/api/internal/project/IProjectFactory +instanceKlass org/gradle/execution/TaskPathProjectEvaluator +instanceKlass org/gradle/api/internal/file/DefaultArchiveOperations +instanceKlass org/gradle/api/file/ArchiveOperations +instanceKlass org/gradle/api/internal/file/DefaultFileSystemOperations +instanceKlass org/gradle/api/file/FileSystemOperations +instanceKlass org/gradle/internal/resource/LocalBinaryResource +instanceKlass org/gradle/internal/resource/ReadableContent +instanceKlass org/gradle/api/resources/internal/ReadableResourceInternal +instanceKlass org/gradle/internal/resource/Resource +instanceKlass org/gradle/api/resources/ReadableResource +instanceKlass org/gradle/api/resources/Resource +instanceKlass org/gradle/api/internal/file/delete/DeleteSpecInternal +instanceKlass org/gradle/api/file/DeleteSpec +instanceKlass org/gradle/api/internal/file/DefaultFileOperations +instanceKlass org/gradle/api/internal/file/FileOperations +instanceKlass org/gradle/process/internal/DefaultExecOperations +instanceKlass org/gradle/process/ExecOperations +instanceKlass org/gradle/internal/service/scopes/BuildScopeServices$$Lambda$120 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/tooling/provider/model/internal/BuildScopeToolingModelBuilderRegistryAction +instanceKlass org/gradle/api/internal/initialization/ScriptClassPathInitializer +instanceKlass org/gradle/api/internal/project/ProjectInternal +instanceKlass org/gradle/model/internal/registry/ModelRegistryScope +instanceKlass org/gradle/api/internal/DomainObjectContext +instanceKlass org/gradle/api/internal/file/HasScriptServices +instanceKlass org/gradle/api/internal/project/ProjectIdentifier +instanceKlass org/gradle/api/Project +instanceKlass org/gradle/tooling/provider/model/internal/DefaultToolingModelBuilderRegistry +instanceKlass org/gradle/tooling/provider/model/internal/ToolingModelBuilderLookup +instanceKlass org/gradle/tooling/provider/model/ToolingModelBuilderRegistry +instanceKlass org/gradle/groovy/scripts/internal/DefaultScriptCompilationHandler +instanceKlass org/gradle/initialization/SettingsLoaderFactory +instanceKlass org/gradle/api/internal/plugins/PluginInspector +instanceKlass org/gradle/api/internal/artifacts/DependencyManagementServices +instanceKlass org/gradle/internal/service/scopes/BuildScopeServiceRegistryFactory +instanceKlass org/gradle/api/provider/ProviderFactory +instanceKlass org/gradle/api/internal/properties/GradleProperties +instanceKlass org/gradle/internal/service/scopes/ServiceRegistryFactory +instanceKlass org/gradle/initialization/buildsrc/BuildSourceBuilder +instanceKlass org/gradle/execution/ProjectConfigurer +instanceKlass org/gradle/groovy/scripts/internal/FileCacheBackedScriptClassCompiler +instanceKlass org/gradle/initialization/InitScriptHandler +instanceKlass org/gradle/initialization/Environment +instanceKlass org/gradle/configuration/DefaultScriptPluginFactory +instanceKlass org/gradle/api/internal/resources/DefaultResourceHandler$Factory +instanceKlass org/gradle/api/internal/resources/ApiTextResourceAdapter$Factory +instanceKlass org/gradle/api/internal/project/DefaultProjectRegistry +instanceKlass org/gradle/api/internal/tasks/TaskStatistics +instanceKlass org/gradle/execution/plan/ExecutionNodeAccessHierarchies +instanceKlass org/gradle/execution/plan/TaskDependencyResolver +instanceKlass org/gradle/execution/plan/TaskNodeFactory +instanceKlass org/gradle/api/internal/GradleInternal +instanceKlass org/gradle/api/internal/plugins/PluginAwareInternal +instanceKlass org/gradle/api/invocation/Gradle +instanceKlass org/gradle/api/plugins/PluginAware +instanceKlass org/gradle/execution/plan/ExecutionPlanFactory +instanceKlass org/gradle/internal/actor/ActorFactory +instanceKlass org/gradle/execution/TaskSelector +instanceKlass org/gradle/initialization/BuildLoader +instanceKlass org/gradle/api/internal/project/taskfactory/ITaskFactory +instanceKlass org/gradle/groovy/scripts/internal/ScriptCompilationHandler +instanceKlass org/gradle/configuration/CompileOperationFactory +instanceKlass org/gradle/api/internal/artifacts/configurations/DependencyMetaDataProvider +instanceKlass org/gradle/groovy/scripts/internal/ScriptRunnerFactory +instanceKlass org/gradle/configuration/ScriptPluginFactory +instanceKlass org/gradle/initialization/GradlePropertiesController +instanceKlass org/gradle/api/invocation/BuildInvocationDetails +instanceKlass org/gradle/api/internal/plugins/PluginRegistry +instanceKlass org/gradle/initialization/SettingsPreparer +instanceKlass org/gradle/api/internal/initialization/ScriptHandlerFactory +instanceKlass org/gradle/api/internal/project/IsolatedAntBuilder +instanceKlass org/gradle/api/internal/provider/ValueSourceProviderFactory +instanceKlass org/gradle/api/internal/project/ProjectTaskLister +instanceKlass org/gradle/initialization/SettingsProcessor +instanceKlass org/gradle/internal/authentication/AuthenticationSchemeRegistry +instanceKlass org/gradle/api/internal/component/ComponentTypeRegistry +instanceKlass org/gradle/configuration/ProjectsPreparer +instanceKlass org/gradle/api/internal/initialization/ScriptClassPathResolver +instanceKlass org/gradle/groovy/scripts/ScriptCompilerFactory +instanceKlass org/gradle/groovy/scripts/internal/ScriptClassCompiler +instanceKlass org/gradle/internal/operations/logging/BuildOperationLoggerFactory +instanceKlass org/gradle/configuration/InitScriptProcessor +instanceKlass org/gradle/api/internal/tasks/userinput/BuildScanUserInputHandler +instanceKlass org/gradle/initialization/IGradlePropertiesLoader +instanceKlass org/gradle/cache/scopes/BuildScopedCache +instanceKlass org/gradle/internal/resource/TextFileResourceLoader +instanceKlass org/gradle/initialization/ProjectDescriptorRegistry +instanceKlass org/gradle/api/internal/project/ProjectRegistry +instanceKlass org/gradle/internal/build/PublicBuildPath +instanceKlass org/gradle/execution/plan/NodeValidator +instanceKlass org/gradle/internal/build/BuildWorkPreparer +instanceKlass org/gradle/configurationcache/DefaultBuildModelControllerServices$servicesForBuild$1 +instanceKlass org/gradle/internal/build/BuildModelControllerServices$Supplier +instanceKlass org/gradle/internal/composite/IncludedBuildInternal +instanceKlass org/gradle/api/initialization/IncludedBuild +instanceKlass org/gradle/internal/buildtree/BuildTreeFinishExecutor +instanceKlass org/gradle/internal/buildtree/BuildTreeWorkExecutor +instanceKlass org/gradle/api/artifacts/component/ProjectComponentIdentifier +instanceKlass org/gradle/api/artifacts/component/ComponentIdentifier +instanceKlass org/gradle/internal/build/AbstractBuildState +instanceKlass org/gradle/internal/Actions$NullAction +instanceKlass org/gradle/internal/Actions +instanceKlass org/gradle/plugin/management/internal/PluginRequests$EmptyPluginRequests +instanceKlass org/gradle/plugin/management/internal/PluginRequests +instanceKlass org/gradle/api/internal/BuildDefinition +instanceKlass java/util/TimSort +instanceKlass org/gradle/internal/buildtree/ProblemReportingBuildActionRunner$$Lambda$119 +instanceKlass org/gradle/launcher/exec/ChainingBuildActionRunner +instanceKlass org/gradle/internal/buildtree/ProblemReportingBuildActionRunner +instanceKlass org/gradle/launcher/exec/BuildOutcomeReportingBuildActionRunner +instanceKlass org/gradle/tooling/internal/provider/FileSystemWatchingBuildActionRunner +instanceKlass org/gradle/launcher/exec/BuildCompletionNotifyingBuildActionRunner +instanceKlass org/gradle/launcher/exec/RootBuildLifecycleBuildActionExecutor +instanceKlass org/gradle/initialization/exception/StackTraceSanitizingExceptionAnalyser +instanceKlass org/gradle/initialization/exception/DefaultExceptionAnalyser +instanceKlass org/gradle/internal/scripts/ScriptExecutionListener +instanceKlass org/gradle/initialization/exception/MultipleBuildFailuresExceptionAnalyser +instanceKlass org/gradle/internal/buildtree/DeprecationsReporter +instanceKlass org/gradle/api/artifacts/component/BuildIdentifier +instanceKlass org/gradle/composite/internal/DefaultIncludedBuildRegistry +instanceKlass org/gradle/api/internal/artifacts/ivyservice/dependencysubstitution/DependencySubstitutionsInternal +instanceKlass org/gradle/api/artifacts/DependencySubstitutions +instanceKlass org/gradle/composite/internal/IncludedBuildDependencySubstitutionsBuilder +instanceKlass org/gradle/internal/typeconversion/CompositeNotationConverter +instanceKlass org/gradle/api/capabilities/Capability +instanceKlass org/gradle/api/internal/artifacts/dsl/CapabilityNotationParserFactory +instanceKlass org/gradle/api/internal/attributes/UsageCompatibilityHandler +instanceKlass java/util/Comparator$$Lambda$118 +instanceKlass org/gradle/api/internal/attributes/DefaultImmutableAttributes$$Lambda$117 +instanceKlass org/gradle/api/attributes/Attribute +instanceKlass org/gradle/api/internal/attributes/DefaultImmutableAttributes +instanceKlass org/gradle/api/internal/attributes/AttributeValue +instanceKlass org/gradle/api/internal/attributes/ImmutableAttributes +instanceKlass org/gradle/api/internal/attributes/AttributeContainerInternal +instanceKlass org/gradle/api/attributes/AttributeContainer +instanceKlass org/gradle/api/attributes/HasAttributes +instanceKlass org/gradle/internal/isolation/Isolatable +instanceKlass org/gradle/internal/hash/Hashable +instanceKlass org/gradle/internal/snapshot/impl/DefaultIsolatableFactory$IsolatableVisitor +instanceKlass org/gradle/internal/snapshot/impl/AbstractValueProcessor$ValueVisitor +instanceKlass org/gradle/internal/snapshot/impl/AbstractValueProcessor +instanceKlass com/google/common/cache/LocalCache$StrongValueReference +instanceKlass org/gradle/api/internal/provider/ManagedFactories$ProviderManagedFactory +instanceKlass org/gradle/api/internal/provider/ManagedFactories$PropertyManagedFactory +instanceKlass org/gradle/api/internal/provider/ManagedFactories$MapPropertyManagedFactory +instanceKlass org/gradle/api/internal/provider/ManagedFactories$ListPropertyManagedFactory +instanceKlass org/gradle/api/internal/provider/AbstractMinimalProvider +instanceKlass org/gradle/api/internal/provider/CollectionPropertyInternal +instanceKlass org/gradle/api/internal/provider/CollectionProviderInternal +instanceKlass org/gradle/api/internal/provider/PropertyInternal +instanceKlass org/gradle/internal/state/OwnerAware +instanceKlass org/gradle/api/internal/provider/HasConfigurableValueInternal +instanceKlass org/gradle/api/internal/provider/ProviderInternal +instanceKlass org/gradle/api/internal/provider/ValueSupplier +instanceKlass org/gradle/api/internal/provider/ManagedFactories$SetPropertyManagedFactory +instanceKlass org/gradle/api/internal/file/ManagedFactories$DirectoryPropertyManagedFactory +instanceKlass org/gradle/api/internal/file/ManagedFactories$DirectoryManagedFactory +instanceKlass org/gradle/api/internal/file/ManagedFactories$RegularFilePropertyManagedFactory +instanceKlass org/gradle/api/internal/file/ManagedFactories$RegularFileManagedFactory +instanceKlass org/gradle/api/internal/file/collections/ManagedFactories$ConfigurableFileCollectionManagedFactory +instanceKlass org/gradle/internal/state/DefaultManagedFactoryRegistry +instanceKlass org/gradle/internal/classloader/ConfigurableClassLoaderHierarchyHasher +instanceKlass org/gradle/internal/classloader/DefaultClassLoaderFactory +instanceKlass org/gradle/api/internal/initialization/loadercache/DefaultClasspathHasher +instanceKlass javax/annotation/meta/TypeQualifierDefault +instanceKlass javax/annotation/Nonnull +instanceKlass org/gradle/api/NonNullApi +instanceKlass org/gradle/api/internal/changedetection/state/PropertiesFileAwareClasspathResourceHasher$$Lambda$116 +instanceKlass org/gradle/api/internal/changedetection/state/PropertiesFileAwareClasspathResourceHasher$$Lambda$115 +instanceKlass org/gradle/internal/fingerprint/impl/EmptyCurrentFileCollectionFingerprint +instanceKlass org/gradle/api/internal/changedetection/state/ZipHasher$$Lambda$114 +instanceKlass org/gradle/api/internal/changedetection/state/ZipHasher$HashingExceptionReporter +instanceKlass org/gradle/internal/snapshot/AbstractFileSystemLocationSnapshot +instanceKlass org/gradle/internal/snapshot/FileSystemLeafSnapshot +instanceKlass org/gradle/internal/fingerprint/hashing/ZipEntryContext +instanceKlass org/gradle/api/internal/file/archive/ZipInput +instanceKlass org/gradle/api/internal/changedetection/state/ZipHasher +instanceKlass org/gradle/api/internal/changedetection/state/IgnoringResourceHasher +instanceKlass org/gradle/api/internal/changedetection/state/MetaInfAwareClasspathResourceHasher +instanceKlass org/gradle/api/internal/changedetection/state/PropertiesFileAwareClasspathResourceHasher$$Lambda$113 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/api/internal/changedetection/state/PropertiesFileAwareClasspathResourceHasher +instanceKlass org/gradle/api/internal/changedetection/state/LineEndingNormalizingResourceHasher$1 +instanceKlass org/gradle/api/internal/changedetection/state/LineEndingNormalizingResourceHasher +instanceKlass org/gradle/internal/snapshot/RelativePathTrackingFileSystemSnapshotHierarchyVisitor +instanceKlass org/gradle/internal/fingerprint/CurrentFileCollectionFingerprint +instanceKlass org/gradle/internal/fingerprint/FileCollectionFingerprint +instanceKlass org/gradle/internal/fingerprint/impl/AbstractFingerprintingStrategy +instanceKlass org/gradle/api/internal/changedetection/state/RuntimeClasspathResourceHasher +instanceKlass org/gradle/api/internal/changedetection/state/PropertiesFileFilter +instanceKlass org/gradle/api/internal/changedetection/state/ResourceEntryFilter$1 +instanceKlass org/gradle/api/internal/changedetection/state/ResourceEntryFilter +instanceKlass org/gradle/api/internal/changedetection/state/ResourceFilter$1 +instanceKlass org/gradle/api/internal/changedetection/state/ResourceFilter +instanceKlass org/gradle/internal/fingerprint/FingerprintingStrategy +instanceKlass org/gradle/internal/fingerprint/impl/AbstractFileCollectionFingerprinter +instanceKlass org/gradle/internal/execution/fingerprint/FileCollectionSnapshotter$Result +instanceKlass org/gradle/internal/fingerprint/impl/DefaultFileCollectionSnapshotter +instanceKlass org/gradle/internal/fingerprint/impl/DefaultGenericFileTreeSnapshotter +instanceKlass org/gradle/api/internal/changedetection/state/CachingResourceHasher +instanceKlass org/gradle/internal/fingerprint/hashing/ResourceHasher +instanceKlass org/gradle/internal/fingerprint/hashing/ZipEntryContextHasher +instanceKlass org/gradle/internal/fingerprint/hashing/RegularFileSnapshotContextHasher +instanceKlass org/gradle/internal/fingerprint/hashing/ConfigurableNormalizer +instanceKlass org/gradle/api/internal/changedetection/state/DefaultResourceSnapshotterCacheService +instanceKlass org/gradle/internal/typeconversion/NotationParserBuilder$LazyDisplayName +instanceKlass org/gradle/internal/typeconversion/JustReturningParser +instanceKlass org/gradle/api/artifacts/VersionConstraint +instanceKlass org/gradle/internal/typeconversion/TypedNotationConverter +instanceKlass org/gradle/internal/typeconversion/CrossBuildCachingNotationConverter +instanceKlass org/gradle/api/internal/artifacts/DefaultImmutableModuleIdentifierFactory +instanceKlass org/gradle/composite/internal/DefaultBuildableCompositeBuildContext +instanceKlass org/gradle/tooling/internal/provider/serialization/DefaultPayloadClassLoaderRegistry$DetailsToClassLoaderTransformer +instanceKlass org/gradle/tooling/internal/provider/serialization/DefaultPayloadClassLoaderRegistry$ClassLoaderToDetailsTransformer +instanceKlass org/gradle/tooling/internal/provider/serialization/DefaultPayloadClassLoaderRegistry +instanceKlass org/gradle/tooling/internal/provider/serialization/ClassLoaderDetails +instanceKlass org/gradle/tooling/internal/provider/serialization/DeserializeMap +instanceKlass org/gradle/tooling/internal/provider/serialization/SerializeMap +instanceKlass org/gradle/tooling/internal/provider/serialization/WellKnownClassLoaderRegistry +instanceKlass java/io/ObjectInput +instanceKlass java/io/ObjectStreamConstants +instanceKlass java/io/ObjectOutput +instanceKlass org/gradle/tooling/internal/provider/serialization/ModelClassLoaderFactory +instanceKlass org/gradle/tooling/internal/provider/serialization/DaemonSidePayloadClassLoaderFactory +instanceKlass org/gradle/internal/file/impl/SingleDepthFileAccessTracker +instanceKlass org/gradle/cache/internal/SingleDepthFilesFinder +instanceKlass org/gradle/cache/internal/UnusedVersionsCacheCleanup$1 +instanceKlass org/gradle/cache/internal/AbstractCacheCleanup +instanceKlass org/gradle/cache/internal/CompositeCleanupAction$Builder +instanceKlass org/gradle/cache/internal/CompositeCleanupAction +instanceKlass org/gradle/internal/service/scopes/VirtualFileSystemServices$GradleUserHomeServices$3 +instanceKlass java/util/function/Predicate$$Lambda$112 +instanceKlass org/gradle/internal/snapshot/impl/DirectorySnapshotter$DefaultExcludes$$Lambda$111 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/internal/snapshot/impl/DirectorySnapshotter$DefaultExcludes$$Lambda$110 +instanceKlass org/gradle/internal/snapshot/impl/DirectorySnapshotter$DefaultExcludes$$Lambda$109 +instanceKlass org/gradle/internal/snapshot/impl/DirectorySnapshotter$DefaultExcludes$$Lambda$108 +instanceKlass java/util/function/Predicate$$Lambda$107 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/internal/snapshot/impl/DirectorySnapshotter$DefaultExcludes$EndMatcher +instanceKlass org/gradle/internal/snapshot/impl/DirectorySnapshotter$DefaultExcludes$StartMatcher +instanceKlass org/gradle/internal/snapshot/impl/DirectorySnapshotter$DefaultExcludes +instanceKlass org/gradle/internal/snapshot/impl/DirectorySnapshotter$1 +instanceKlass java/nio/file/FileVisitor +instanceKlass org/gradle/internal/snapshot/impl/DirectorySnapshotter$SymbolicLinkMapping +instanceKlass org/gradle/internal/snapshot/impl/DirectorySnapshotter +instanceKlass com/google/common/util/concurrent/Striped$1 +instanceKlass com/google/common/util/concurrent/Striped$6 +instanceKlass java/util/concurrent/locks/ReadWriteLock +instanceKlass com/google/common/util/concurrent/Striped$5 +instanceKlass com/google/common/util/concurrent/Striped +instanceKlass org/gradle/internal/vfs/impl/DefaultFileSystemAccess$StripedProducerGuard +instanceKlass java/nio/file/attribute/PosixFilePermissions$1 +instanceKlass java/nio/file/attribute/PosixFilePermissions +instanceKlass org/apache/tools/ant/util/FileUtils +instanceKlass org/apache/tools/ant/taskdefs/condition/Os +instanceKlass org/apache/tools/ant/taskdefs/condition/Condition +instanceKlass org/apache/tools/ant/types/resources/Appendable +instanceKlass org/apache/tools/ant/types/resources/FileProvider +instanceKlass org/apache/tools/ant/types/resources/Touchable +instanceKlass org/apache/tools/ant/ProjectComponent +instanceKlass org/apache/tools/ant/types/ResourceCollection +instanceKlass org/apache/tools/ant/DirectoryScanner +instanceKlass org/apache/tools/ant/types/ResourceFactory +instanceKlass org/apache/tools/ant/types/selectors/SelectorScanner +instanceKlass org/apache/tools/ant/FileScanner +instanceKlass org/gradle/internal/snapshot/FileSystemLocationSnapshot +instanceKlass org/gradle/internal/snapshot/FileSystemSnapshot +instanceKlass org/gradle/internal/snapshot/impl/DirectorySnapshotterStatistics +instanceKlass org/gradle/internal/service/scopes/VirtualFileSystemServices$GradleUserHomeServices$$Lambda$106 +instanceKlass org/gradle/internal/build/BuildAddedListener +instanceKlass org/gradle/internal/service/scopes/VirtualFileSystemServices$GradleUserHomeServices$$Lambda$105 +instanceKlass org/gradle/internal/watch/registry/impl/DaemonDocumentationIndex +instanceKlass org/gradle/internal/snapshot/SnapshotHierarchy$NodeDiffListener +instanceKlass org/gradle/internal/watch/registry/FileWatcherRegistry$ChangeHandler +instanceKlass org/gradle/internal/snapshot/MetadataSnapshot +instanceKlass org/gradle/internal/vfs/impl/AbstractVirtualFileSystem +instanceKlass org/gradle/internal/service/scopes/VirtualFileSystemServices$GradleUserHomeServices$$Lambda$104 +instanceKlass net/rubygrapefruit/platform/internal/jni/AbstractFileEventFunctions$AbstractWatcherBuilder +instanceKlass org/gradle/internal/watch/registry/FileWatcherUpdater +instanceKlass net/rubygrapefruit/platform/file/FileWatcher +instanceKlass org/gradle/internal/watch/registry/FileWatcherRegistry +instanceKlass org/gradle/internal/watch/registry/FileWatcherProbeRegistry +instanceKlass org/gradle/internal/watch/registry/impl/AbstractFileWatcherRegistryFactory +instanceKlass org/gradle/internal/service/scopes/VirtualFileSystemServices$GradleUserHomeServices$$Lambda$103 +instanceKlass org/gradle/internal/snapshot/FileSystemNode +instanceKlass org/gradle/internal/snapshot/ChildMap +instanceKlass org/gradle/internal/vfs/impl/DefaultSnapshotHierarchy$1 +instanceKlass org/gradle/internal/snapshot/ReadOnlyFileSystemNode +instanceKlass org/gradle/internal/vfs/impl/DefaultSnapshotHierarchy +instanceKlass org/gradle/internal/snapshot/SnapshotHierarchy +instanceKlass org/apache/commons/io/filefilter/IOFileFilter +instanceKlass java/io/FilenameFilter +instanceKlass org/apache/commons/io/FileUtils +instanceKlass com/google/common/io/CharSource +instanceKlass com/google/common/hash/PrimitiveSink +instanceKlass com/google/common/io/Closer$SuppressingSuppressor +instanceKlass com/google/common/io/Closer$Suppressor +instanceKlass com/google/common/io/Closer +instanceKlass com/google/common/io/CharSink +instanceKlass java/io/File$TempDirectory +instanceKlass org/gradle/api/internal/file/temp/TempFiles +instanceKlass org/gradle/internal/watch/vfs/impl/DefaultWatchableFileSystemDetector +instanceKlass net/rubygrapefruit/platform/internal/PosixFileSystems +instanceKlass org/gradle/internal/file/FilePathUtil +instanceKlass org/gradle/internal/file/FileHierarchySet$Node +instanceKlass org/gradle/internal/file/FileHierarchySet$NodeVisitor +instanceKlass org/gradle/cache/internal/DefaultGlobalCacheLocations +instanceKlass org/gradle/internal/nativeintegration/services/NativeServices$3 +instanceKlass org/gradle/internal/service/scopes/VirtualFileSystemServices$GradleUserHomeServices$1 +instanceKlass org/gradle/internal/file/FileHierarchySet +instanceKlass org/gradle/internal/hash/DefaultFileHasher +instanceKlass org/gradle/api/internal/changedetection/state/CachingFileHasher +instanceKlass com/google/common/collect/MapMakerInternalMap$WeakKeyDummyValueEntry$Helper +instanceKlass com/google/common/collect/MapMakerInternalMap$InternalEntry +instanceKlass com/google/common/collect/MapMakerInternalMap$1 +instanceKlass com/google/common/collect/MapMakerInternalMap$InternalEntryHelper +instanceKlass com/google/common/collect/MapMakerInternalMap$WeakValueReference +instanceKlass com/google/common/collect/Interners$InternerImpl +instanceKlass com/google/common/collect/MapMaker +instanceKlass com/google/common/collect/Interners$InternerBuilder +instanceKlass com/google/common/collect/Interners +instanceKlass org/gradle/internal/hash/HashCode +instanceKlass com/google/common/base/Charsets +instanceKlass org/gradle/internal/hash/Hashing$MessageDigestHasher +instanceKlass org/gradle/internal/hash/Hashing$DefaultHasher +instanceKlass org/gradle/internal/hash/PrimitiveHasher +instanceKlass org/gradle/internal/hash/Hasher +instanceKlass org/gradle/internal/hash/Hashing$MessageDigestHashFunction +instanceKlass org/gradle/internal/hash/HashFunction +instanceKlass org/gradle/internal/hash/Hashing +instanceKlass org/gradle/internal/hash/DefaultStreamHasher +instanceKlass org/gradle/api/internal/changedetection/state/FileTimeStampInspector$$Lambda$102 +instanceKlass org/gradle/api/internal/changedetection/state/FileHasherStatistics +instanceKlass org/apache/commons/lang/StringUtils +instanceKlass org/gradle/api/internal/artifacts/ivyservice/DefaultArtifactCaches$$Lambda$101 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/WritableArtifactCacheLockingManager +instanceKlass org/gradle/api/internal/artifacts/ivyservice/DefaultArtifactCaches$LateInitWritableArtifactCacheLockingManager +instanceKlass com/google/common/primitives/IntsMethodsForWeb +instanceKlass org/apache/commons/lang/ArrayUtils +instanceKlass org/gradle/cache/internal/CacheVersion +instanceKlass java/lang/Character$CharacterCache +instanceKlass org/gradle/util/internal/DefaultGradleVersion$Stage +instanceKlass org/gradle/cache/internal/CacheVersionMapping$Builder +instanceKlass org/gradle/cache/internal/CacheVersionMapping$1 +instanceKlass org/gradle/cache/internal/CacheVersionMapping +instanceKlass org/gradle/api/internal/artifacts/ivyservice/DefaultArtifactCacheMetadata +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ArtifactCacheLockingManager +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ArtifactCacheMetadata +instanceKlass org/gradle/api/internal/artifacts/ivyservice/DefaultArtifactCaches +instanceKlass org/gradle/api/internal/artifacts/DependencyManagementGradleUserHomeScopeServices$1 +instanceKlass org/gradle/api/internal/changedetection/state/DefaultFileAccessTimeJournal$$Lambda$100 +instanceKlass org/gradle/cache/internal/DefaultCacheAccess$IndexedCacheEntry +instanceKlass java/net/DatagramPacket$1 +instanceKlass org/gradle/cache/internal/locklistener/DefaultFileLockContentionHandler$ContendedAction +instanceKlass org/gradle/cache/internal/locklistener/DefaultFileLockContentionHandler$1 +instanceKlass org/gradle/internal/Factories$1 +instanceKlass org/gradle/internal/Factories +instanceKlass org/gradle/cache/internal/CrossProcessSynchronizingCache +instanceKlass org/gradle/cache/internal/InMemoryDecoratedCache +instanceKlass org/gradle/cache/internal/InMemoryCacheController +instanceKlass com/google/common/cache/LongAddables$1 +instanceKlass com/google/common/cache/Striped64$Cell +instanceKlass com/google/common/cache/Striped64$1 +instanceKlass com/google/common/cache/LongAddable +instanceKlass com/google/common/cache/LongAddables +instanceKlass com/google/common/cache/AbstractCache$SimpleStatsCounter +instanceKlass org/gradle/cache/internal/LoggingEvictionListener +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/cache/internal/DefaultInMemoryCacheDecoratorFactory$$Lambda$99 +instanceKlass org/gradle/cache/internal/DefaultInMemoryCacheDecoratorFactory$CacheDetails +instanceKlass org/gradle/cache/internal/AsyncCacheAccessDecoratedCache +instanceKlass org/gradle/cache/internal/CacheAccessWorker +instanceKlass org/gradle/cache/internal/DefaultMultiProcessSafePersistentIndexedCache +instanceKlass org/gradle/cache/internal/DefaultCacheAccess$$Lambda$98 +instanceKlass org/gradle/cache/internal/btree/BTreePersistentIndexedCache +instanceKlass org/gradle/cache/internal/DefaultInMemoryCacheDecoratorFactory$InMemoryCacheDecorator +instanceKlass org/gradle/cache/PersistentIndexedCacheParameters +instanceKlass org/gradle/api/internal/changedetection/state/DefaultFileAccessTimeJournal +instanceKlass org/gradle/cache/internal/MultiProcessSafeAsyncPersistentIndexedCache +instanceKlass org/gradle/cache/CacheDecorator +instanceKlass org/gradle/cache/internal/DefaultInMemoryCacheDecoratorFactory +instanceKlass org/gradle/cache/internal/DefaultCacheFactory$ReferenceTrackingCache +instanceKlass org/gradle/cache/internal/DefaultCacheFactory$DirCacheReference +instanceKlass org/gradle/cache/internal/cacheops/CacheOperationStack +instanceKlass org/gradle/cache/internal/LockOnDemandCrossProcessCacheAccess$ContendedAction +instanceKlass org/gradle/cache/internal/LockOnDemandCrossProcessCacheAccess$UnlockAction +instanceKlass org/gradle/cache/internal/DefaultCacheAccess$1 +instanceKlass org/gradle/cache/internal/DefaultCacheAccess$$Lambda$97 +instanceKlass org/gradle/cache/internal/DefaultCacheAccess$$Lambda$96 +instanceKlass org/gradle/cache/internal/cacheops/CacheAccessOperationsStack +instanceKlass org/gradle/cache/internal/DefaultPersistentDirectoryStore$Cleanup +instanceKlass org/gradle/cache/internal/DefaultPersistentDirectoryStore$1 +instanceKlass org/gradle/cache/internal/DefaultPersistentDirectoryStore$2 +instanceKlass org/gradle/cache/internal/DefaultCacheAccess$$Lambda$95 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/cache/AsyncCacheAccess +instanceKlass org/gradle/cache/MultiProcessSafePersistentIndexedCache +instanceKlass org/gradle/cache/UnitOfWorkParticipant +instanceKlass org/gradle/cache/PersistentIndexedCache +instanceKlass org/gradle/cache/internal/AbstractCrossProcessCacheAccess +instanceKlass org/gradle/cache/CrossProcessCacheAccess +instanceKlass org/gradle/cache/internal/DefaultCacheAccess +instanceKlass org/gradle/cache/internal/CacheCoordinator +instanceKlass org/gradle/cache/internal/CacheInitializationAction +instanceKlass org/gradle/cache/internal/CacheCleanupAction +instanceKlass org/gradle/cache/internal/DefaultPersistentDirectoryStore +instanceKlass org/gradle/cache/internal/DefaultCacheRepository$PersistentCacheBuilder +instanceKlass org/gradle/cache/internal/scopes/DefaultCacheScopeMapping$1 +instanceKlass org/gradle/internal/operations/notify/BuildOperationNotificationBridge$Progress +instanceKlass org/gradle/internal/operations/OperationProgressEvent +instanceKlass org/gradle/initialization/BuildOptionBuildOperationProgressEventsEmitter$1 +instanceKlass org/gradle/internal/configurationcache/options/ConfigurationCacheSettingsFinalizedProgressDetails +instanceKlass org/gradle/launcher/exec/BuildTreeLifecycleBuildActionExecutor$$Lambda$94 +instanceKlass org/gradle/internal/buildtree/DefaultBuildTreeContext +instanceKlass org/gradle/internal/buildtree/BuildTreeContext +instanceKlass org/gradle/configurationcache/VintageBuildTreeLifecycleControllerFactory +instanceKlass org/gradle/internal/buildtree/BuildTreeLifecycleControllerFactory +instanceKlass org/gradle/configurationcache/initialization/AbstractInjectedClasspathInstrumentationStrategy +instanceKlass org/gradle/plugin/use/resolve/service/internal/InjectedClasspathInstrumentationStrategy +instanceKlass org/gradle/internal/buildtree/BuildInclusionCoordinator +instanceKlass org/gradle/initialization/BuildOptionBuildOperationProgressEventsEmitter +instanceKlass org/gradle/internal/buildtree/BuildTreeLifecycleListener +instanceKlass org/gradle/internal/build/BuildLifecycleController +instanceKlass org/gradle/internal/build/DefaultBuildLifecycleControllerFactory +instanceKlass org/gradle/internal/build/BuildLifecycleControllerFactory +instanceKlass org/gradle/tooling/internal/provider/runner/AbstractClientProvidedBuildActionRunner$ClientAction +instanceKlass org/gradle/tooling/internal/provider/runner/AbstractClientProvidedBuildActionRunner +instanceKlass org/gradle/tooling/internal/provider/runner/TestExecutionRequestActionRunner +instanceKlass org/gradle/internal/buildtree/BuildTreeModelAction +instanceKlass org/gradle/tooling/internal/provider/runner/BuildModelActionRunner +instanceKlass org/gradle/tooling/internal/provider/runner/BuildControllerFactory +instanceKlass kotlin/coroutines/Continuation +instanceKlass org/gradle/configurationcache/fingerprint/ConfigurationCacheFingerprintController +instanceKlass org/gradle/configurationcache/InstrumentedInputAccessListener +instanceKlass org/gradle/internal/classpath/Instrumented$Listener +instanceKlass org/gradle/configurationcache/ConfigurationCacheRepository +instanceKlass org/gradle/configurationcache/DefaultBuildToolingModelControllerFactory +instanceKlass org/gradle/internal/build/BuildToolingModelControllerFactory +instanceKlass org/gradle/configurationcache/DefaultBuildModelControllerServices +instanceKlass org/gradle/internal/build/BuildModelControllerServices +instanceKlass org/gradle/configurationcache/problems/ProblemsListener +instanceKlass org/gradle/configurationcache/initialization/DefaultConfigurationCacheProblemsListener +instanceKlass org/gradle/configurationcache/initialization/ConfigurationCacheProblemsListener +instanceKlass org/gradle/api/internal/BuildScopeListenerRegistrationListener +instanceKlass org/gradle/api/internal/tasks/execution/TaskExecutionAccessListener +instanceKlass org/gradle/configurationcache/problems/ConfigurationCacheReport +instanceKlass org/gradle/configurationcache/initialization/ConfigurationCacheStartParameter +instanceKlass org/gradle/configurationcache/ConfigurationCacheKey +instanceKlass org/gradle/vcs/internal/resolver/VcsVersionSelectionCache +instanceKlass org/gradle/vcs/internal/VcsResolver +instanceKlass org/gradle/vcs/internal/VersionControlSpecFactory +instanceKlass org/gradle/vcs/internal/VcsMappingFactory +instanceKlass org/gradle/vcs/internal/VcsMappingsStore +instanceKlass org/gradle/vcs/internal/services/VersionControlServices$VersionControlBuildTreeServices +instanceKlass org/gradle/plugins/ide/internal/IdeArtifactStore +instanceKlass org/gradle/internal/enterprise/impl/legacy/DefaultBuildScanBuildStartedTime +instanceKlass org/gradle/internal/scan/time/BuildScanBuildStartedTime +instanceKlass org/gradle/internal/enterprise/impl/legacy/DefaultBuildScanClock +instanceKlass org/gradle/internal/scan/time/BuildScanClock +instanceKlass org/gradle/internal/enterprise/impl/DefaultGradleEnterprisePluginRequiredServices +instanceKlass org/gradle/internal/enterprise/GradleEnterprisePluginRequiredServices +instanceKlass org/gradle/composite/internal/DefaultIncludedBuildTaskGraph +instanceKlass org/gradle/composite/internal/BuildTreeWorkGraphController +instanceKlass org/gradle/internal/build/IncludedBuildState +instanceKlass org/gradle/composite/internal/DefaultIncludedBuildFactory +instanceKlass org/gradle/internal/buildtree/NestedBuildTree +instanceKlass org/gradle/internal/build/StandAloneNestedBuild +instanceKlass org/gradle/internal/build/NestedBuildState +instanceKlass org/gradle/internal/build/RootBuildState +instanceKlass org/gradle/internal/build/BuildActionTarget +instanceKlass org/gradle/internal/build/CompositeBuildParticipantBuildState +instanceKlass org/gradle/internal/build/IncludedBuildFactory +instanceKlass org/gradle/composite/internal/BuildStateFactory +instanceKlass org/gradle/composite/internal/DefaultLocalComponentInAnotherBuildProvider +instanceKlass org/gradle/api/internal/artifacts/ivyservice/projectmodule/LocalComponentInAnotherBuildProvider +instanceKlass org/gradle/api/internal/composite/CompositeBuildContext +instanceKlass org/gradle/api/internal/artifacts/ivyservice/dependencysubstitution/DependencySubstitutionRules +instanceKlass org/gradle/composite/internal/CompositeBuildServices$CompositeBuildTreeScopeServices +instanceKlass org/gradle/api/internal/tasks/compile/processing/AnnotationProcessorDetector +instanceKlass org/gradle/language/java/internal/JavaLanguagePluginServiceRegistry$1 +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ivyresolve/StartParameterResolutionOverride +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/store/ResolutionResultsStoreFactory +instanceKlass org/gradle/util/internal/BuildCommencedTimeProvider +instanceKlass org/gradle/api/internal/artifacts/DependencyManagementBuildTreeScopeServices +instanceKlass org/gradle/caching/internal/controller/RootBuildCacheControllerRef +instanceKlass org/gradle/caching/internal/BuildCacheServices$1 +instanceKlass org/gradle/internal/enterprise/core/GradleEnterprisePluginManager +instanceKlass org/gradle/internal/build/BuildStateRegistry +instanceKlass org/gradle/internal/buildtree/BuildTreeActionExecutor +instanceKlass org/gradle/tooling/internal/provider/LauncherServices$ToolingBuildTreeScopeServices +instanceKlass org/gradle/api/internal/project/DefaultProjectStateRegistry +instanceKlass org/gradle/api/internal/project/ProjectStateRegistry +instanceKlass org/gradle/problems/buildtree/ProblemReporter +instanceKlass org/gradle/api/internal/provider/ConfigurationTimeBarrier +instanceKlass org/gradle/internal/buildtree/BuildTreeScopeServices +instanceKlass org/gradle/internal/buildtree/BuildTreeState +instanceKlass org/gradle/configurationcache/DefaultBuildTreeModelControllerServices$servicesForBuildTree$1 +instanceKlass org/gradle/internal/buildtree/BuildTreeModelControllerServices$Supplier +instanceKlass org/gradle/internal/buildtree/BuildModelParameters +instanceKlass org/gradle/internal/buildtree/RunTasksRequirements +instanceKlass org/gradle/initialization/layout/BuildLayoutConfiguration +instanceKlass org/gradle/internal/logging/sink/ProgressLogEventGenerator$Operation +instanceKlass org/gradle/internal/logging/progress/DefaultProgressLoggerFactory$ProgressLoggerImpl +instanceKlass org/gradle/internal/operations/notify/BuildOperationNotificationBridge$Started +instanceKlass org/gradle/api/internal/tasks/RegisterTaskBuildOperationType$Details +instanceKlass org/gradle/api/internal/tasks/RealizeTaskBuildOperationType$Details +instanceKlass org/gradle/api/internal/ExecuteDomainObjectCollectionCallbackBuildOperationType$Details +instanceKlass org/gradle/configuration/internal/ExecuteListenerBuildOperationType$Details +instanceKlass org/gradle/configuration/ApplyScriptPluginBuildOperationType$Details +instanceKlass org/gradle/api/internal/plugins/ApplyPluginBuildOperationType$Details +instanceKlass org/gradle/internal/operations/OperationStartEvent +instanceKlass org/gradle/internal/operations/DefaultBuildOperationRunner$DefaultBuildOperationContext +instanceKlass org/gradle/internal/operations/DefaultBuildOperationExecutor$ListenerAdapter +instanceKlass org/gradle/internal/operations/DefaultBuildOperationRunner$BuildOperationTrackingListener +instanceKlass org/gradle/internal/operations/BuildOperationState +instanceKlass org/gradle/internal/operations/OperationIdentifier +instanceKlass org/gradle/internal/operations/DefaultBuildOperationRunner$2 +instanceKlass org/gradle/internal/operations/BuildOperationMetadata$1 +instanceKlass org/gradle/internal/operations/BuildOperationDescriptor$Builder +instanceKlass org/gradle/internal/operations/BuildOperationDescriptor +instanceKlass org/gradle/internal/operations/DefaultBuildOperationRunner$CallableBuildOperationWorker +instanceKlass org/gradle/launcher/exec/RunAsBuildOperationBuildActionExecutor$3 +instanceKlass org/gradle/internal/operations/notify/BuildOperationProgressNotification +instanceKlass org/gradle/internal/operations/notify/BuildOperationFinishedNotification +instanceKlass org/gradle/internal/operations/notify/BuildOperationStartedNotification +instanceKlass org/gradle/internal/operations/notify/BuildOperationNotificationBridge$Adapter +instanceKlass org/gradle/internal/operations/notify/BuildOperationNotificationBridge$RecordingListener +instanceKlass org/gradle/internal/operations/notify/BuildOperationNotificationBridge$ReplayAndAttachListener +instanceKlass org/gradle/internal/operations/notify/BuildOperationNotificationListener +instanceKlass org/gradle/internal/operations/notify/BuildOperationNotificationBridge$State +instanceKlass org/gradle/internal/resources/DefaultResourceLockCoordinationService$AcquireLocks +instanceKlass org/gradle/internal/resources/DefaultResourceLockCoordinationService$2 +instanceKlass org/gradle/internal/resources/DefaultResourceLockCoordinationService$DefaultResourceLockState +instanceKlass org/gradle/internal/resources/ResourceLockState +instanceKlass org/gradle/internal/work/DefaultWorkerLeaseService$3 +instanceKlass com/google/common/collect/Iterables +instanceKlass com/google/common/util/concurrent/AbstractFuture$Failure +instanceKlass com/google/common/util/concurrent/AbstractFuture$Cancellation +instanceKlass com/google/common/util/concurrent/AbstractFuture$SetFuture +instanceKlass com/google/common/util/concurrent/Uninterruptibles +instanceKlass com/google/common/base/CommonPattern +instanceKlass com/google/common/base/Platform$JdkPatternCompiler +instanceKlass com/google/common/base/PatternCompiler +instanceKlass com/google/common/base/Platform +instanceKlass com/google/common/base/Stopwatch +instanceKlass com/google/common/util/concurrent/AbstractFuture$Waiter +instanceKlass com/google/common/util/concurrent/AbstractFuture$Listener +instanceKlass com/google/common/util/concurrent/AbstractFuture$UnsafeAtomicHelper$1 +instanceKlass sun/misc/Unsafe +instanceKlass com/google/common/util/concurrent/AbstractFuture$AtomicHelper +instanceKlass com/google/common/util/concurrent/internal/InternalFutureFailureAccess +instanceKlass com/google/common/util/concurrent/AbstractFuture$Trusted +instanceKlass com/google/common/util/concurrent/ListenableFuture +instanceKlass org/gradle/internal/resources/AbstractResourceLockRegistry$1 +instanceKlass org/gradle/internal/work/DefaultWorkerLeaseService$WorkerLeaseLockRegistry$1 +instanceKlass org/gradle/internal/resources/AbstractResourceLockRegistry$ThreadLockDetails +instanceKlass org/gradle/launcher/exec/RunAsWorkerThreadBuildActionExecutor$$Lambda$93 +instanceKlass org/gradle/internal/buildtree/BuildActionRunner$Result +instanceKlass org/gradle/workers/internal/ExecuteWorkItemBuildOperationType$Details +instanceKlass org/gradle/api/internal/artifacts/transform/ExecuteScheduledTransformationStepBuildOperationDetails +instanceKlass org/gradle/api/internal/artifacts/transform/ExecuteScheduledTransformationStepBuildOperationType$Details +instanceKlass org/gradle/api/internal/tasks/execution/ExecuteTaskBuildOperationDetails +instanceKlass org/gradle/internal/operations/trace/CustomOperationTraceSerialization +instanceKlass org/gradle/api/internal/tasks/execution/ExecuteTaskBuildOperationType$Details +instanceKlass org/gradle/configuration/project/ConfigureProjectBuildOperationType$Details +instanceKlass org/gradle/api/internal/tasks/testing/operations/ExecuteTestBuildOperationType$Details +instanceKlass org/gradle/internal/resource/ExternalResourceReadBuildOperationType$Details +instanceKlass org/gradle/tooling/internal/provider/runner/ClientBuildEventGenerator$Mapper +instanceKlass org/gradle/tooling/internal/provider/runner/ClientBuildEventGenerator$Operation +instanceKlass org/gradle/tooling/internal/provider/runner/ClientBuildEventGenerator +instanceKlass org/gradle/tooling/internal/protocol/events/InternalWorkItemDescriptor +instanceKlass org/gradle/tooling/internal/provider/runner/WorkItemOperationMapper +instanceKlass org/gradle/tooling/internal/protocol/events/InternalProjectConfigurationDescriptor +instanceKlass org/gradle/tooling/internal/protocol/events/InternalProjectConfigurationResult +instanceKlass org/gradle/tooling/internal/provider/runner/ProjectConfigurationOperationMapper +instanceKlass org/gradle/tooling/internal/protocol/events/InternalTestFailureResult +instanceKlass org/gradle/tooling/internal/protocol/events/InternalTestSkippedResult +instanceKlass org/gradle/tooling/internal/protocol/events/InternalTestSuccessResult +instanceKlass org/gradle/tooling/internal/protocol/events/InternalTestResult +instanceKlass org/gradle/tooling/internal/provider/runner/TestOperationMapper +instanceKlass org/gradle/tooling/internal/protocol/events/InternalFileDownloadResult +instanceKlass org/gradle/tooling/internal/protocol/events/InternalFileDownloadDescriptor +instanceKlass org/gradle/tooling/internal/provider/runner/FileDownloadOperationMapper +instanceKlass org/gradle/tooling/internal/provider/runner/TaskOperationMapper$PostProcessors +instanceKlass org/gradle/tooling/internal/protocol/events/InternalTaskFailureResult +instanceKlass org/gradle/tooling/internal/protocol/events/InternalFailureResult +instanceKlass org/gradle/tooling/internal/protocol/events/InternalTaskSkippedResult +instanceKlass org/gradle/tooling/internal/provider/runner/TaskOperationMapper +instanceKlass org/gradle/tooling/internal/protocol/events/InternalJavaCompileTaskOperationResult$InternalAnnotationProcessorResult +instanceKlass org/gradle/tooling/internal/protocol/events/InternalTaskCachedResult +instanceKlass org/gradle/tooling/internal/protocol/events/InternalTaskSuccessResult +instanceKlass org/gradle/tooling/internal/protocol/events/InternalSuccessResult +instanceKlass org/gradle/tooling/internal/protocol/events/InternalJavaCompileTaskOperationResult +instanceKlass org/gradle/internal/build/event/types/AbstractResult +instanceKlass org/gradle/tooling/internal/protocol/events/InternalIncrementalTaskResult +instanceKlass org/gradle/tooling/internal/protocol/events/InternalTaskResult +instanceKlass org/gradle/tooling/internal/protocol/events/InternalOperationResult +instanceKlass org/gradle/api/internal/tasks/compile/tooling/JavaCompileTaskSuccessResultPostProcessor +instanceKlass org/gradle/internal/build/event/OperationResultPostProcessor +instanceKlass org/gradle/tooling/internal/protocol/events/InternalOperationFinishedProgressEvent +instanceKlass org/gradle/tooling/internal/protocol/events/InternalOperationStartedProgressEvent +instanceKlass org/gradle/tooling/internal/protocol/events/InternalProgressEvent +instanceKlass org/gradle/tooling/internal/protocol/events/InternalTransformDescriptor +instanceKlass org/gradle/internal/build/event/types/DefaultOperationDescriptor +instanceKlass org/gradle/tooling/internal/protocol/events/InternalOperationDescriptor +instanceKlass org/gradle/execution/plan/SelfExecutingNode +instanceKlass org/gradle/execution/plan/Node +instanceKlass org/gradle/tooling/internal/provider/runner/TransformOperationMapper +instanceKlass org/gradle/tooling/internal/provider/runner/BuildOperationMapper +instanceKlass org/gradle/tooling/internal/provider/runner/TaskOriginTracker +instanceKlass org/gradle/tooling/internal/provider/runner/ProjectConfigurationTracker +instanceKlass org/gradle/api/Task +instanceKlass org/gradle/api/plugins/ExtensionAware +instanceKlass org/gradle/tooling/internal/provider/runner/TestTaskExecutionTracker +instanceKlass org/gradle/tooling/internal/protocol/events/InternalBinaryPluginIdentifier +instanceKlass org/gradle/tooling/internal/protocol/events/InternalScriptPluginIdentifier +instanceKlass org/gradle/tooling/internal/protocol/events/InternalPluginIdentifier +instanceKlass org/gradle/tooling/internal/provider/runner/PluginApplicationTracker +instanceKlass org/gradle/tooling/internal/provider/runner/BuildOperationTracker +instanceKlass org/gradle/tooling/internal/provider/runner/OperationDependenciesResolver +instanceKlass org/gradle/tooling/internal/provider/runner/ProgressEventConsumer +instanceKlass org/gradle/internal/buildtree/BuildActionModelRequirements +instanceKlass org/gradle/launcher/exec/BuildTreeLifecycleBuildActionExecutor +instanceKlass org/gradle/launcher/exec/RunAsBuildOperationBuildActionExecutor$2 +instanceKlass org/gradle/launcher/exec/RunAsBuildOperationBuildActionExecutor$1 +instanceKlass org/gradle/launcher/exec/RunBuildBuildOperationType$Result +instanceKlass org/gradle/launcher/exec/RunBuildBuildOperationType$Details +instanceKlass org/gradle/launcher/exec/RunAsBuildOperationBuildActionExecutor +instanceKlass org/gradle/launcher/exec/RunAsWorkerThreadBuildActionExecutor +instanceKlass org/gradle/internal/filewatch/FileWatcherEventListener +instanceKlass org/gradle/execution/CancellableOperationManager +instanceKlass org/gradle/tooling/internal/provider/ContinuousBuildActionExecutor +instanceKlass org/gradle/tooling/internal/provider/SubscribableBuildActionExecutor +instanceKlass org/gradle/internal/scripts/ScriptingLanguages$1 +instanceKlass org/gradle/scripts/ScriptingLanguage +instanceKlass org/gradle/internal/scripts/ScriptingLanguages +instanceKlass org/gradle/BuildAdapter +instanceKlass org/gradle/internal/InternalBuildListener +instanceKlass org/gradle/internal/InternalListener +instanceKlass org/gradle/internal/operations/notify/BuildOperationNotificationBridge$1 +instanceKlass org/gradle/BuildListener +instanceKlass org/gradle/deployment/internal/DefaultDeploymentRegistry$PendingChanges +instanceKlass org/gradle/initialization/ContinuousExecutionGate$GateKeeper +instanceKlass org/gradle/initialization/DefaultContinuousExecutionGate +instanceKlass org/gradle/internal/operations/CallableBuildOperation +instanceKlass org/gradle/initialization/ContinuousExecutionGate +instanceKlass org/gradle/api/file/SourceDirectorySet +instanceKlass org/gradle/api/internal/model/DefaultObjectFactory +instanceKlass org/gradle/api/internal/model/NamedObjectInstantiator$$Lambda$92 +instanceKlass org/gradle/internal/state/Managed +instanceKlass com/google/common/base/ExtraObjectsMethodsForWeb +instanceKlass org/gradle/model/internal/inspect/ValidationProblemCollector +instanceKlass org/gradle/api/internal/MutationGuards$1 +instanceKlass org/gradle/api/internal/MutationGuard +instanceKlass org/gradle/api/internal/MutationGuards +instanceKlass org/gradle/api/internal/CollectionCallbackActionDecorator$1 +instanceKlass org/gradle/api/internal/collections/DefaultDomainObjectCollectionFactory +instanceKlass org/gradle/api/file/Directory +instanceKlass org/gradle/api/file/RegularFile +instanceKlass org/gradle/api/file/FileSystemLocation +instanceKlass org/gradle/api/internal/tasks/DefaultTaskDependencyFactory +instanceKlass org/gradle/api/internal/file/FileCollectionInternal$1 +instanceKlass org/gradle/api/internal/file/FileCollectionStructureVisitor +instanceKlass org/gradle/api/file/FileVisitor +instanceKlass org/gradle/api/tasks/TaskDependency +instanceKlass org/gradle/api/internal/file/FileCollectionInternal$Source +instanceKlass org/gradle/api/internal/file/AbstractFileCollection +instanceKlass org/gradle/api/internal/file/FileTreeInternal +instanceKlass org/gradle/api/internal/file/collections/MinimalFileTree +instanceKlass org/gradle/api/internal/file/collections/MinimalFileCollection +instanceKlass org/gradle/api/internal/file/DefaultFileCollectionFactory +instanceKlass org/gradle/internal/exceptions/DiagnosticsVisitor +instanceKlass org/gradle/internal/typeconversion/ErrorHandlingNotationParser +instanceKlass org/gradle/internal/typeconversion/NotationConvertResult +instanceKlass org/gradle/internal/typeconversion/NotationConverterToNotationParserAdapter +instanceKlass org/gradle/internal/typeconversion/TypeInfo +instanceKlass org/gradle/internal/typeconversion/NotationParserBuilder +instanceKlass org/gradle/api/internal/file/FileOrUriNotationConverter +instanceKlass org/gradle/api/internal/file/AbstractFileResolver +instanceKlass org/gradle/api/internal/provider/DefaultPropertyFactory +instanceKlass org/gradle/api/internal/provider/PropertyHost$$Lambda$91 +instanceKlass org/gradle/internal/state/ModelObject +instanceKlass org/gradle/api/internal/file/collections/DefaultDirectoryFileTreeFactory +instanceKlass org/gradle/api/tasks/util/internal/PatternSets$PatternSetFactory +instanceKlass org/gradle/api/tasks/util/internal/PatternSets +instanceKlass com/google/common/cache/LocalCache$AbstractReferenceEntry +instanceKlass org/gradle/cache/internal/HeapProportionalCacheSizer +instanceKlass org/gradle/internal/instantiation/generator/DefaultInstantiationScheme$DefaultDeserializationInstantiator +instanceKlass org/gradle/internal/instantiation/InstanceFactory +instanceKlass org/gradle/internal/instantiation/generator/DependencyInjectingInstantiator +instanceKlass javax/inject/Inject +instanceKlass org/gradle/internal/instantiation/DeserializationInstantiator +instanceKlass org/gradle/internal/instantiation/generator/DefaultInstantiationScheme +instanceKlass org/gradle/internal/instantiation/generator/ParamsMatchingConstructorSelector +instanceKlass org/gradle/internal/instantiation/generator/Jsr330ConstructorSelector +instanceKlass com/google/common/collect/ImmutableMultimap$Builder +instanceKlass com/google/common/collect/Multiset +instanceKlass org/gradle/internal/instantiation/generator/AbstractClassGenerator$$Lambda$90 +instanceKlass org/gradle/internal/instantiation/generator/AbstractClassGenerator$GeneratedClassImpl +instanceKlass org/gradle/internal/instantiation/generator/ClassGenerator$GeneratedClass +instanceKlass org/gradle/cache/internal/DefaultCrossBuildInMemoryCacheFactory$AbstractCrossBuildInMemoryCache +instanceKlass org/gradle/model/internal/asm/ClassGeneratorSuffixRegistry +instanceKlass org/gradle/api/DomainObjectSet +instanceKlass org/gradle/api/NamedDomainObjectContainer +instanceKlass org/gradle/util/Configurable +instanceKlass org/gradle/api/NamedDomainObjectSet +instanceKlass org/gradle/api/NamedDomainObjectCollection +instanceKlass org/gradle/api/DomainObjectCollection +instanceKlass org/gradle/api/file/DirectoryProperty +instanceKlass org/gradle/api/file/RegularFileProperty +instanceKlass org/gradle/api/file/FileSystemLocationProperty +instanceKlass org/gradle/api/provider/Property +instanceKlass org/gradle/api/provider/MapProperty +instanceKlass org/gradle/api/provider/SetProperty +instanceKlass org/gradle/api/provider/ListProperty +instanceKlass org/gradle/api/provider/HasMultipleValues +instanceKlass org/gradle/api/provider/Provider +instanceKlass org/gradle/api/file/ConfigurableFileTree +instanceKlass org/gradle/api/file/DirectoryTree +instanceKlass org/gradle/api/file/FileTree +instanceKlass org/gradle/api/file/ConfigurableFileCollection +instanceKlass org/gradle/api/provider/HasConfigurableValue +instanceKlass org/gradle/internal/instantiation/generator/AbstractClassGenerator$InstantiationStrategy +instanceKlass org/gradle/internal/instantiation/generator/AbstractClassGenerator$ClassInspectionVisitor +instanceKlass com/google/common/reflect/TypeCapture +instanceKlass org/gradle/internal/instantiation/generator/AbstractClassGenerator$UnclaimedPropertyHandler +instanceKlass com/google/common/collect/AbstractMultimap +instanceKlass org/gradle/internal/instantiation/generator/AbstractClassGenerator +instanceKlass org/gradle/internal/instantiation/generator/ClassGenerator +instanceKlass org/gradle/api/internal/tasks/properties/annotations/OutputPropertyRoleAnnotationHandler +instanceKlass org/gradle/internal/instantiation/generator/DefaultInstantiatorFactory$ClassGeneratorBackedManagedFactory +instanceKlass org/gradle/internal/instantiation/InstantiationScheme +instanceKlass org/gradle/internal/instantiation/generator/ConstructorSelector +instanceKlass org/gradle/internal/instantiation/generator/DefaultInstantiatorFactory +instanceKlass org/gradle/cache/internal/CrossBuildInMemoryCache +instanceKlass org/gradle/cache/internal/DefaultCrossBuildInMemoryCacheFactory +instanceKlass org/gradle/internal/filewatch/FileSystemChangeWaiter +instanceKlass org/gradle/internal/filewatch/DefaultFileSystemChangeWaiterFactory +instanceKlass org/gradle/internal/filewatch/DefaultFileWatcherFactory +instanceKlass org/gradle/api/execution/internal/TaskInputsListener +instanceKlass org/gradle/api/execution/internal/DefaultTaskInputsListeners +instanceKlass org/gradle/internal/operations/DefaultBuildOperationExecutor$$Lambda$89 +instanceKlass org/gradle/internal/operations/DefaultBuildOperationRunner$BuildOperationExecutionListenerFactory +instanceKlass org/gradle/internal/operations/DefaultBuildOperationExecutor$$Lambda$88 +instanceKlass org/gradle/internal/operations/DefaultBuildOperationRunner$TimeSupplier +instanceKlass org/gradle/internal/operations/DefaultBuildOperationRunner$1 +instanceKlass org/gradle/internal/operations/DefaultBuildOperationRunner$ReadableBuildOperationContext +instanceKlass org/gradle/internal/operations/BuildOperationContext +instanceKlass org/gradle/internal/operations/DefaultBuildOperationRunner$BuildOperationExecution +instanceKlass org/gradle/internal/operations/BuildOperation +instanceKlass org/gradle/internal/operations/BuildOperationWorker +instanceKlass org/gradle/internal/operations/DefaultBuildOperationRunner +instanceKlass org/gradle/internal/operations/BuildOperationQueue +instanceKlass org/gradle/internal/operations/DefaultBuildOperationQueueFactory +instanceKlass org/gradle/internal/operations/BuildOperationRef +instanceKlass org/gradle/internal/operations/BuildOperationQueue$QueueWorker +instanceKlass org/gradle/internal/operations/DefaultBuildOperationRunner$BuildOperationExecutionListener +instanceKlass org/gradle/internal/operations/DefaultBuildOperationExecutor +instanceKlass org/gradle/internal/resources/AbstractTrackedResourceLock +instanceKlass java/util/concurrent/atomic/AtomicReferenceArray +instanceKlass com/google/common/cache/LocalCache$LoadingValueReference +instanceKlass com/google/common/cache/RemovalListener +instanceKlass com/google/common/cache/Weigher +instanceKlass com/google/common/base/Equivalence +instanceKlass java/util/function/BiPredicate +instanceKlass com/google/common/base/MoreObjects +instanceKlass com/google/common/cache/LocalCache$1 +instanceKlass com/google/common/cache/ReferenceEntry +instanceKlass com/google/common/cache/CacheLoader +instanceKlass com/google/common/cache/LocalCache$LocalManualCache +instanceKlass com/google/common/cache/LocalCache$ValueReference +instanceKlass com/google/common/cache/CacheBuilder$2 +instanceKlass com/google/common/cache/CacheStats +instanceKlass com/google/common/base/Suppliers$SupplierOfInstance +instanceKlass com/google/common/base/Suppliers +instanceKlass com/google/common/cache/CacheBuilder$1 +instanceKlass com/google/common/cache/AbstractCache$StatsCounter +instanceKlass com/google/common/cache/LoadingCache +instanceKlass com/google/common/cache/Cache +instanceKlass com/google/common/base/Ticker +instanceKlass com/google/common/base/Supplier +instanceKlass com/google/common/cache/CacheBuilder +instanceKlass org/gradle/internal/resources/AbstractResourceLockRegistry$ResourceLockProducer +instanceKlass org/gradle/internal/resources/AbstractResourceLockRegistry +instanceKlass org/gradle/internal/resources/ResourceLockContainer +instanceKlass org/gradle/internal/resources/ResourceLockRegistry +instanceKlass org/gradle/internal/work/DefaultWorkerLeaseService$ProjectLockStatisticsImpl +instanceKlass org/gradle/internal/resources/ProjectLockStatistics +instanceKlass org/gradle/internal/work/DefaultWorkerLeaseService$Root +instanceKlass org/gradle/internal/resources/DefaultResourceLockCoordinationService +instanceKlass org/gradle/tooling/internal/provider/runner/ToolingApiBuildEventListenerFactory$1 +instanceKlass org/gradle/internal/operations/DefaultBuildOperationListenerManager$ProgressShieldingBuildOperationListener +instanceKlass org/gradle/internal/operations/DefaultBuildOperationAncestryTracker +instanceKlass org/gradle/internal/reflect/AnnotationCategory +instanceKlass org/gradle/language/java/internal/JavaLanguagePluginServiceRegistry$JavaGlobalScopeServices$$Lambda$87 +instanceKlass sun/invoke/util/VerifyAccess$1 +instanceKlass org/gradle/internal/session/BuildSessionLifecycleListener +instanceKlass org/gradle/internal/session/DefaultBuildSessionContext +instanceKlass org/gradle/internal/session/BuildSessionContext +instanceKlass org/gradle/internal/scopeids/PersistentScopeIdStoreFactory +instanceKlass org/gradle/internal/scopeids/ScopeIdsServices +instanceKlass com/google/common/collect/ListMultimap +instanceKlass org/gradle/internal/work/DefaultAsyncWorkTracker +instanceKlass org/gradle/internal/work/AsyncWorkTracker +instanceKlass org/gradle/internal/exceptions/FailureResolutionAware +instanceKlass org/gradle/internal/model/StateTransitionControllerFactory +instanceKlass org/gradle/internal/model/ValueCalculator +instanceKlass org/gradle/internal/model/CalculatedValueContainerFactory +instanceKlass org/gradle/plugin/use/internal/InjectedPluginClasspath +instanceKlass org/gradle/configurationcache/DefaultBuildTreeModelControllerServices +instanceKlass org/gradle/api/artifacts/ModuleIdentifier +instanceKlass org/gradle/vcs/internal/VcsDirectoryLayout +instanceKlass org/gradle/vcs/internal/resolver/PersistentVcsMetadataCache +instanceKlass org/gradle/vcs/internal/VersionControlRepositoryConnectionFactory +instanceKlass org/gradle/vcs/internal/services/VersionControlServices$VersionControlBuildSessionServices +instanceKlass org/gradle/nativeplatform/toolchain/internal/gcc/metadata/SystemLibraryDiscovery +instanceKlass org/gradle/nativeplatform/toolchain/internal/xcode/AbstractLocator +instanceKlass org/gradle/nativeplatform/toolchain/internal/msvcpp/WindowsKitInstall +instanceKlass org/gradle/platform/base/internal/toolchain/SearchResult +instanceKlass org/gradle/platform/base/internal/toolchain/ToolSearchResult +instanceKlass com/google/common/collect/SetMultimap +instanceKlass com/google/common/collect/Multimap +instanceKlass org/gradle/nativeplatform/toolchain/internal/msvcpp/AbstractWindowsKitComponentLocator +instanceKlass org/gradle/nativeplatform/toolchain/internal/msvcpp/UcrtLocator +instanceKlass org/gradle/nativeplatform/toolchain/internal/msvcpp/version/SystemPathVersionLocator +instanceKlass org/gradle/nativeplatform/toolchain/internal/msvcpp/version/AbstractVisualStudioVersionLocator +instanceKlass org/gradle/nativeplatform/toolchain/internal/msvcpp/version/VisualStudioMetaDataProvider +instanceKlass org/gradle/nativeplatform/toolchain/internal/msvcpp/version/VswhereVersionLocator +instanceKlass org/gradle/nativeplatform/toolchain/internal/msvcpp/VisualStudioLocator +instanceKlass org/gradle/nativeplatform/toolchain/internal/msvcpp/version/VisualStudioVersionLocator +instanceKlass org/gradle/nativeplatform/toolchain/internal/msvcpp/version/VisualCppMetadataProvider +instanceKlass org/gradle/nativeplatform/toolchain/internal/msvcpp/WindowsSdkLocator +instanceKlass org/gradle/nativeplatform/toolchain/internal/msvcpp/WindowsComponentLocator +instanceKlass org/gradle/nativeplatform/internal/services/NativeBinaryServices$BuildSessionScopeServices +instanceKlass org/gradle/composite/internal/CompositeBuildServices$CompositeBuildSessionScopeServices +instanceKlass org/gradle/api/tasks/testing/TestDescriptor +instanceKlass org/gradle/api/internal/tasks/testing/operations/TestListenerBuildOperationAdapter +instanceKlass org/gradle/api/internal/tasks/testing/results/TestListenerInternal +instanceKlass org/gradle/api/internal/tasks/testing/operations/TestExecutionBuildOperationBuildSessionScopeServices +instanceKlass org/gradle/api/internal/catalog/DependenciesAccessorsWorkspaceProvider +instanceKlass org/gradle/internal/execution/workspace/WorkspaceProvider +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/result/ComponentSelectionDescriptorFactory +instanceKlass org/gradle/api/internal/artifacts/DependencyManagementBuildSessionScopeServices +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/ArtifactVisitor +instanceKlass org/gradle/api/internal/file/FileCollectionInternal +instanceKlass org/gradle/api/internal/tasks/TaskDependencyContainer +instanceKlass org/gradle/api/file/FileCollection +instanceKlass org/gradle/api/internal/artifacts/ivyservice/resolveengine/artifact/ArtifactSetToFileCollectionFactory +instanceKlass org/gradle/workers/internal/WorkerExecutionQueueFactory +instanceKlass org/gradle/process/internal/worker/child/WorkerDirectoryProvider +instanceKlass org/gradle/internal/work/ConditionalExecutionQueueFactory +instanceKlass org/gradle/workers/internal/WorkersServices$BuildSessionScopeServices +instanceKlass org/gradle/internal/vfs/impl/DefaultFileSystemAccess +instanceKlass org/gradle/internal/fingerprint/impl/FileCollectionFingerprinterRegistrations +instanceKlass org/gradle/internal/execution/OutputSnapshotter +instanceKlass org/gradle/internal/execution/fingerprint/InputFingerprinter +instanceKlass org/gradle/internal/execution/fingerprint/FileCollectionFingerprinterRegistry +instanceKlass org/gradle/internal/service/scopes/VirtualFileSystemServices$BuildSessionServices +instanceKlass org/gradle/internal/build/BuildLayoutValidator +instanceKlass org/gradle/internal/buildtree/BuildTreeModelControllerServices +instanceKlass org/gradle/internal/session/BuildSessionActionExecutor +instanceKlass org/gradle/tooling/internal/provider/LauncherServices$ToolingBuildSessionScopeServices +instanceKlass org/gradle/internal/service/DefaultServiceRegistry$CollectionService +instanceKlass org/gradle/internal/service/DefaultServiceRegistry$CollectingVisitor +instanceKlass sun/reflect/generics/tree/VoidDescriptor +instanceKlass org/gradle/internal/snapshot/impl/ValueSnapshotterSerializerRegistry +instanceKlass org/gradle/api/internal/attributes/DefaultImmutableAttributesFactory +instanceKlass org/gradle/api/internal/attributes/ImmutableAttributesFactory +instanceKlass org/gradle/api/internal/FeaturePreviews +instanceKlass org/gradle/internal/session/BuildSessionScopeServices$CrossBuildFileHashCacheWrapper +instanceKlass org/gradle/internal/buildevents/BuildStartedTime +instanceKlass org/gradle/initialization/layout/ProjectCacheDir +instanceKlass org/gradle/cache/internal/CleanupActionFactory +instanceKlass org/gradle/deployment/internal/DefaultDeploymentRegistry +instanceKlass org/gradle/internal/filewatch/PendingChangesListener +instanceKlass org/gradle/deployment/internal/DeploymentRegistryInternal +instanceKlass org/gradle/deployment/internal/DeploymentRegistry +instanceKlass org/gradle/internal/filewatch/PendingChangesManager +instanceKlass org/gradle/internal/scopeids/id/ScopeId +instanceKlass org/gradle/internal/scopeids/PersistentScopeIdLoader +instanceKlass org/gradle/initialization/SettingsLocation +instanceKlass org/gradle/api/internal/project/CrossProjectConfigurator +instanceKlass org/gradle/api/internal/tasks/userinput/UserInputReader +instanceKlass org/gradle/api/internal/tasks/userinput/UserInputHandler +instanceKlass org/gradle/internal/hash/ChecksumService +instanceKlass org/gradle/cache/scopes/BuildTreeScopedCache +instanceKlass org/gradle/internal/snapshot/ValueSnapshotter +instanceKlass org/gradle/internal/service/scopes/WorkerSharedBuildSessionScopeServices +instanceKlass org/gradle/internal/service/scopes/DefaultGradleUserHomeScopeServiceRegistry$Services +instanceKlass org/gradle/api/internal/tasks/compile/incremental/cache/UserHomeScopedCompileCaches +instanceKlass org/gradle/api/internal/tasks/compile/incremental/cache/GeneralCompileCaches +instanceKlass org/gradle/api/internal/tasks/CompileServices$UserHomeScopeServices +instanceKlass org/gradle/kotlin/dsl/provider/plugins/DefaultProjectSchemaProvider +instanceKlass org/gradle/kotlin/dsl/accessors/ProjectSchemaProvider +instanceKlass org/gradle/kotlin/dsl/provider/plugins/DefaultKotlinScriptBasePluginsApplicator +instanceKlass org/gradle/kotlin/dsl/provider/KotlinScriptBasePluginsApplicator +instanceKlass org/gradle/kotlin/dsl/provider/plugins/precompiled/DefaultPrecompiledScriptPluginsSupport +instanceKlass org/gradle/kotlin/dsl/provider/PrecompiledScriptPluginsSupport +instanceKlass org/gradle/kotlin/dsl/provider/plugins/GradleUserHomeServices +instanceKlass org/gradle/api/internal/artifacts/transform/ImmutableTransformationWorkspaceServices +instanceKlass org/gradle/api/internal/artifacts/transform/TransformationWorkspaceServices +instanceKlass org/gradle/internal/execution/history/ExecutionHistoryCacheAccess +instanceKlass org/gradle/api/internal/artifacts/ivyservice/ArtifactCachesProvider +instanceKlass org/gradle/internal/execution/history/ExecutionHistoryStore +instanceKlass org/gradle/api/internal/artifacts/ivyservice/DefaultArtifactCaches$WritableArtifactCacheLockingParameters +instanceKlass org/gradle/api/internal/artifacts/DependencyManagementGradleUserHomeScopeServices +instanceKlass org/gradle/workers/internal/WorkerDaemonClientsManager +instanceKlass org/gradle/workers/internal/ClassLoaderStructureProvider +instanceKlass org/gradle/workers/internal/ActionExecutionSpecFactory +instanceKlass org/gradle/workers/internal/WorkersServices$GradleUserHomeServices +instanceKlass org/gradle/kotlin/dsl/provider/KotlinScriptClassloadingCache +instanceKlass org/gradle/kotlin/dsl/provider/GradleUserHomeServices +instanceKlass org/gradle/kotlin/dsl/support/EmbeddedKotlinProvider +instanceKlass org/gradle/kotlin/dsl/support/GradleUserHomeServices +instanceKlass org/gradle/kotlin/dsl/cache/KotlinDslWorkspaceProvider +instanceKlass org/gradle/kotlin/dsl/cache/GradleUserHomeServices +instanceKlass org/gradle/internal/build/BuildState +instanceKlass org/gradle/internal/watch/registry/FileWatcherRegistryFactory +instanceKlass org/gradle/internal/vfs/impl/VfsRootReference +instanceKlass org/gradle/internal/watch/vfs/impl/LocationsWrittenByCurrentBuild +instanceKlass org/gradle/internal/vfs/FileSystemAccess$WriteListener +instanceKlass org/gradle/api/internal/changedetection/state/CrossBuildFileHashCache +instanceKlass org/gradle/internal/fingerprint/classpath/ClasspathFingerprinter +instanceKlass org/gradle/internal/execution/fingerprint/FileCollectionFingerprinter +instanceKlass org/gradle/internal/hash/FileHasher +instanceKlass org/gradle/internal/watch/vfs/BuildLifecycleAwareVirtualFileSystem +instanceKlass org/gradle/internal/vfs/VirtualFileSystem +instanceKlass org/gradle/internal/watch/vfs/WatchableFileSystemDetector +instanceKlass org/gradle/internal/fingerprint/GenericFileTreeSnapshotter +instanceKlass org/gradle/internal/execution/fingerprint/FileCollectionSnapshotter +instanceKlass org/gradle/api/internal/changedetection/state/ResourceSnapshotterCacheService +instanceKlass org/gradle/internal/service/scopes/VirtualFileSystemServices$GradleUserHomeServices +instanceKlass org/gradle/tooling/internal/provider/serialization/PayloadSerializer +instanceKlass org/gradle/tooling/internal/provider/serialization/PayloadClassLoaderRegistry +instanceKlass org/gradle/tooling/internal/provider/serialization/PayloadClassLoaderFactory +instanceKlass org/gradle/tooling/internal/provider/LauncherServices$ToolingGradleUserHomeScopeServices +instanceKlass org/gradle/internal/service/DefaultServiceRegistry$InstanceUnpackingVisitor +instanceKlass org/gradle/internal/classpath/ClasspathFileTransformer +instanceKlass org/gradle/internal/classpath/CachedClasspathTransformer$Transform +instanceKlass org/gradle/internal/classpath/DefaultCachedClasspathTransformer +instanceKlass org/gradle/internal/classpath/CachedClasspathTransformer +instanceKlass org/gradle/api/internal/changedetection/state/FileTimeStampInspector +instanceKlass org/gradle/initialization/RootBuildLifecycleListener +instanceKlass org/gradle/cache/CleanupAction +instanceKlass org/gradle/cache/internal/FilesFinder +instanceKlass org/gradle/internal/file/FileAccessTracker +instanceKlass org/gradle/internal/classpath/DefaultClasspathTransformerCacheFactory +instanceKlass org/gradle/internal/classpath/ClasspathTransformerCacheFactory +instanceKlass org/gradle/internal/classpath/ClasspathBuilder$EntryBuilder +instanceKlass org/gradle/internal/classpath/ClasspathBuilder +instanceKlass org/gradle/internal/classpath/ClasspathEntryVisitor$Entry +instanceKlass org/gradle/internal/classpath/ClasspathWalker +instanceKlass org/gradle/cache/internal/DirectoryCleanupAction +instanceKlass org/gradle/cache/CleanupProgressMonitor +instanceKlass org/gradle/cache/internal/GradleUserHomeCleanupService +instanceKlass org/gradle/cache/internal/VersionSpecificCacheDirectoryScanner +instanceKlass org/gradle/cache/internal/UsedGradleVersionsFromGradleUserHomeCaches +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$BMH +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/internal/service/scopes/WorkerSharedGlobalScopeServices$$Lambda$86 +instanceKlass org/gradle/internal/service/scopes/WorkerSharedGlobalScopeServices$$Lambda$85 +instanceKlass java/util/function/LongSupplier +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/internal/file/impl/DefaultDeleter +instanceKlass org/gradle/cache/internal/scopes/DefaultCacheScopeMapping +instanceKlass org/gradle/cache/CacheBuilder +instanceKlass org/gradle/cache/internal/DefaultCacheRepository +instanceKlass org/gradle/cache/internal/ReferencablePersistentCache +instanceKlass org/gradle/cache/PersistentCache +instanceKlass org/gradle/cache/CleanableStore +instanceKlass org/gradle/cache/CacheAccess +instanceKlass org/gradle/cache/internal/DefaultCacheFactory +instanceKlass org/gradle/internal/logging/services/ProgressLoggingBridge +instanceKlass org/gradle/internal/logging/progress/ProgressLogger +instanceKlass org/gradle/internal/logging/progress/DefaultProgressLoggerFactory +instanceKlass org/gradle/internal/operations/DefaultBuildOperationIdFactory +instanceKlass org/gradle/internal/service/scopes/DefaultGradleUserHomeScopeServiceRegistry$1$$Lambda$84 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/cache/internal/UsedGradleVersions +instanceKlass org/gradle/cache/internal/GradleUserHomeCleanupServices +instanceKlass org/gradle/internal/vfs/FileSystemAccess +instanceKlass org/gradle/cache/internal/DefaultGeneratedGradleJarCache +instanceKlass org/gradle/cache/internal/GeneratedGradleJarCache +instanceKlass org/gradle/groovy/scripts/internal/CrossBuildInMemoryCachingScriptClassCache +instanceKlass org/gradle/cache/internal/scopes/AbstractScopedCache +instanceKlass org/gradle/initialization/layout/GlobalCacheDir +instanceKlass org/gradle/internal/classloader/ClasspathHasher +instanceKlass org/gradle/internal/jvm/JavaModuleDetector +instanceKlass org/gradle/process/internal/worker/child/WorkerProcessClassPathProvider +instanceKlass org/gradle/cache/scopes/GlobalScopedCache +instanceKlass org/gradle/initialization/ClassLoaderScopeRegistryListenerManager +instanceKlass org/gradle/internal/service/scopes/DefaultGradleUserHomeScopeServiceRegistry$1 +instanceKlass org/gradle/internal/session/BuildSessionState +instanceKlass org/gradle/internal/operations/trace/SerializedOperation +instanceKlass org/gradle/internal/operations/trace/BuildOperationTrace$1 +instanceKlass org/gradle/internal/operations/DefaultBuildOperationListenerManager$1 +instanceKlass org/gradle/internal/operations/DefaultBuildOperationListenerManager +instanceKlass org/gradle/internal/work/WorkerLeaseRegistry$WorkerLeaseCompletion +instanceKlass org/gradle/internal/work/DefaultWorkerLeaseService$LeaseHolder +instanceKlass org/gradle/internal/work/WorkerLeaseRegistry$WorkerLease +instanceKlass org/gradle/internal/resources/ResourceLock +instanceKlass org/gradle/internal/work/Synchronizer +instanceKlass org/gradle/internal/work/DefaultWorkerLeaseService +instanceKlass org/gradle/internal/operations/logging/LoggingBuildOperationProgressBroadcaster +instanceKlass org/gradle/internal/operations/notify/BuildOperationNotificationValve +instanceKlass org/gradle/internal/operations/notify/BuildOperationNotificationBridge +instanceKlass org/gradle/internal/operations/notify/BuildOperationNotificationListenerRegistrar +instanceKlass org/gradle/internal/work/WorkerLeaseService +instanceKlass org/gradle/internal/work/WorkerThreadRegistry +instanceKlass org/gradle/internal/resources/ProjectLeaseRegistry +instanceKlass org/gradle/internal/work/WorkerLeaseRegistry +instanceKlass org/gradle/internal/operations/trace/BuildOperationTrace +instanceKlass org/gradle/api/internal/CollectionCallbackActionDecorator +instanceKlass org/gradle/configuration/internal/ListenerBuildOperationDecorator +instanceKlass org/gradle/internal/operations/BuildOperationExecutor +instanceKlass org/gradle/internal/operations/BuildOperationRunner +instanceKlass org/gradle/internal/operations/BuildOperationQueueFactory +instanceKlass org/gradle/configuration/internal/UserCodeApplicationContext +instanceKlass org/gradle/internal/session/CrossBuildSessionState$Services +instanceKlass org/gradle/internal/service/ServiceRegistryBuilder +instanceKlass org/gradle/internal/session/CrossBuildSessionState +instanceKlass org/gradle/tooling/internal/provider/BuildSessionLifecycleBuildActionExecuter$ActionImpl +instanceKlass org/gradle/tooling/internal/protocol/ModelIdentifier +instanceKlass org/gradle/tooling/internal/protocol/InternalProtocolInterface +instanceKlass org/gradle/internal/logging/sink/OutputEventRenderer$3 +instanceKlass org/gradle/internal/logging/sink/ProgressLogEventGenerator +instanceKlass org/gradle/internal/logging/console/BuildLogLevelFilterRenderer +instanceKlass org/gradle/launcher/daemon/server/exec/ExecuteBuild$1 +instanceKlass org/gradle/initialization/DefaultBuildRequestMetaData +instanceKlass org/gradle/initialization/DefaultBuildRequestContext +instanceKlass org/gradle/launcher/daemon/server/exec/DaemonConnectionBackedEventConsumer +instanceKlass org/gradle/launcher/daemon/server/exec/WatchForDisconnection$1 +instanceKlass org/gradle/internal/featurelifecycle/LoggingIncubatingFeatureHandler +instanceKlass org/gradle/util/internal/IncubationLogger +instanceKlass org/gradle/internal/featurelifecycle/FeatureUsage +instanceKlass org/gradle/internal/featurelifecycle/UsageLocationReporter +instanceKlass org/gradle/internal/featurelifecycle/LoggingDeprecatedFeatureHandler +instanceKlass org/gradle/internal/featurelifecycle/FeatureHandler +instanceKlass org/gradle/internal/deprecation/DeprecationMessageBuilder +instanceKlass org/gradle/internal/deprecation/DeprecationLogger +instanceKlass org/gradle/launcher/daemon/server/exec/ForwardClientInput$2 +instanceKlass org/gradle/util/internal/StdinSwapper$2 +instanceKlass org/gradle/util/internal/StdinSwapper$1 +instanceKlass org/gradle/util/internal/Swapper +instanceKlass org/gradle/launcher/daemon/server/exec/ForwardClientInput$1 +instanceKlass java/math/MathContext +instanceKlass org/gradle/internal/util/NumberUtil +instanceKlass org/gradle/launcher/daemon/server/exec/LogToClient$AsynchronousLogDispatcher$1 +instanceKlass java/util/concurrent/CountDownLatch +instanceKlass jdk/internal/reflect/UnsafeFieldAccessorFactory +instanceKlass java/lang/reflect/AccessibleObject$$Lambda$83 +instanceKlass com/google/common/collect/AbstractIterator$1 +instanceKlass java/util/Collections$UnmodifiableMap$UnmodifiableEntrySet$UnmodifiableEntry +instanceKlass java/util/Collections$UnmodifiableMap$UnmodifiableEntrySet$1 +instanceKlass org/gradle/launcher/daemon/server/DaemonStateCoordinator$1 +instanceKlass org/gradle/launcher/daemon/registry/PersistentDaemonRegistry$5 +instanceKlass org/gradle/launcher/daemon/server/exec/StartBuildOrRespondWithBusy$1 +instanceKlass org/gradle/launcher/daemon/server/DefaultDaemonConnection$CommandQueue$1 +instanceKlass org/gradle/launcher/daemon/server/exec/HandleCancel$1 +instanceKlass com/google/common/collect/Platform +instanceKlass org/gradle/launcher/daemon/server/api/DaemonCommandExecution +instanceKlass java/lang/Long$LongCache +instanceKlass org/gradle/launcher/exec/DefaultBuildActionParameters +instanceKlass org/gradle/configuration/GradleLauncherMetaData +instanceKlass com/google/common/collect/Maps$EntryTransformer +instanceKlass com/google/common/base/Converter +instanceKlass com/google/common/collect/SortedMapDifference +instanceKlass com/google/common/collect/MapDifference +instanceKlass com/google/common/collect/Maps +instanceKlass java/util/AbstractMap$SimpleImmutableEntry +instanceKlass com/google/common/collect/AbstractMapEntry +instanceKlass com/google/common/collect/ImmutableMap$Builder +instanceKlass com/google/common/collect/BiMap +instanceKlass com/google/common/collect/ImmutableMap +instanceKlass org/gradle/internal/DefaultTaskExecutionRequest +instanceKlass org/gradle/TaskExecutionRequest +instanceKlass com/google/common/collect/CollectPreconditions +instanceKlass org/gradle/internal/buildoption/BuildOption$Value +instanceKlass org/gradle/internal/concurrent/DefaultParallelismConfiguration +instanceKlass org/gradle/internal/logging/DefaultLoggingConfiguration +instanceKlass org/gradle/initialization/BuildLayoutParameters +instanceKlass java/nio/channels/spi/AbstractSelector$1 +instanceKlass sun/nio/ch/WindowsSelectorImpl$MapEntry +instanceKlass org/gradle/launcher/daemon/server/DefaultDaemonConnection$1 +instanceKlass org/gradle/launcher/daemon/server/DefaultDaemonConnection$ReceiveQueue +instanceKlass org/gradle/launcher/daemon/server/DefaultDaemonConnection$DisconnectQueue +instanceKlass org/gradle/launcher/daemon/server/DefaultDaemonConnection$CommandQueue +instanceKlass org/gradle/launcher/daemon/server/DefaultDaemonConnection +instanceKlass org/gradle/launcher/daemon/server/api/DaemonConnection +instanceKlass org/gradle/launcher/daemon/server/DefaultIncomingConnectionHandler$ConnectionWorker +instanceKlass org/gradle/launcher/daemon/server/SynchronizedDispatchConnection +instanceKlass org/gradle/internal/serialize/Serializers$StatefulSerializerAdapter$2 +instanceKlass org/gradle/internal/serialize/Serializers$StatefulSerializerAdapter$1 +instanceKlass org/gradle/internal/remote/internal/inet/SocketInetAddress$Serializer +instanceKlass org/gradle/internal/io/BufferCaster +instanceKlass java/lang/invoke/ConstantBootstraps +instanceKlass java/util/concurrent/atomic/AtomicReferenceFieldUpdater$AtomicReferenceFieldUpdaterImpl$1 +instanceKlass java/util/concurrent/atomic/AtomicReferenceFieldUpdater +instanceKlass sun/nio/ch/OptionKey +instanceKlass sun/nio/ch/SocketOptionRegistry$LazyInitialization +instanceKlass sun/nio/ch/SocketOptionRegistry$RegistryKey +instanceKlass sun/nio/ch/SocketOptionRegistry +instanceKlass java/util/stream/Collectors$$Lambda$82 +instanceKlass java/util/stream/Collectors$$Lambda$81 +instanceKlass java/util/stream/Collectors$$Lambda$80 +instanceKlass java/util/stream/Collectors$$Lambda$79 +instanceKlass sun/net/ext/ExtendedSocketOptions$$Lambda$78 +instanceKlass sun/nio/ch/ExtendedSocketOption$1 +instanceKlass sun/nio/ch/ExtendedSocketOption +instanceKlass sun/nio/ch/SocketChannelImpl$DefaultOptionsHolder +instanceKlass java/nio/BufferMismatch +instanceKlass sun/nio/ch/IOStatus +instanceKlass sun/nio/ch/Util$BufferCache +instanceKlass sun/nio/ch/PipeImpl$Initializer$LoopbackConnector +instanceKlass sun/nio/ch/PipeImpl$Initializer +instanceKlass java/nio/channels/Pipe +instanceKlass sun/nio/ch/NativeObject +instanceKlass sun/nio/ch/PollArrayWrapper +instanceKlass sun/nio/ch/WindowsSelectorImpl$FinishLock +instanceKlass sun/nio/ch/WindowsSelectorImpl$StartLock +instanceKlass sun/nio/ch/WindowsSelectorImpl$SubSelector +instanceKlass java/nio/channels/SelectionKey +instanceKlass sun/nio/ch/Util$2 +instanceKlass sun/nio/ch/Util +instanceKlass java/nio/channels/Selector +instanceKlass java/nio/DirectByteBuffer$Deallocator +instanceKlass org/gradle/internal/remote/internal/KryoBackedMessageSerializer +instanceKlass org/gradle/internal/remote/internal/inet/SocketConnection +instanceKlass org/gradle/internal/serialize/ObjectWriter +instanceKlass org/gradle/internal/serialize/ObjectReader +instanceKlass org/gradle/internal/serialize/Serializers$StatefulSerializerAdapter +instanceKlass org/gradle/internal/serialize/StatefulSerializer +instanceKlass org/gradle/internal/serialize/Serializers +instanceKlass org/gradle/internal/remote/internal/RemoteConnection +instanceKlass org/gradle/internal/remote/internal/Connection +instanceKlass org/gradle/internal/dispatch/Receive +instanceKlass org/gradle/launcher/daemon/server/DaemonStateCoordinator$2 +instanceKlass org/gradle/internal/remote/internal/MessageSerializer +instanceKlass org/gradle/internal/remote/internal/inet/SocketConnectCompletion +instanceKlass org/gradle/internal/remote/internal/ConnectCompletion +instanceKlass org/gradle/launcher/daemon/server/Daemon$DefaultDaemonExpirationListener +instanceKlass org/gradle/launcher/daemon/server/Daemon$DaemonExpirationPeriodicCheck +instanceKlass org/gradle/launcher/daemon/server/DaemonRegistryUnavailableExpirationStrategy +instanceKlass org/gradle/internal/event/DefaultListenerManager$ListenerDetails +instanceKlass java/net/Socket +instanceKlass org/gradle/launcher/daemon/server/health/LowMemoryDaemonExpirationStrategy +instanceKlass org/gradle/process/internal/health/memory/OsMemoryStatusListener +instanceKlass org/gradle/launcher/daemon/server/NotMostRecentlyUsedDaemonExpirationStrategy +instanceKlass com/google/common/base/Functions$ConstantFunction +instanceKlass com/google/common/base/Functions +instanceKlass org/gradle/launcher/daemon/server/DaemonIdleTimeoutExpirationStrategy +instanceKlass org/gradle/launcher/daemon/context/DaemonCompatibilitySpec +instanceKlass org/gradle/api/internal/specs/ExplainingSpec +instanceKlass org/gradle/launcher/daemon/server/CompatibleDaemonExpirationStrategy +instanceKlass org/gradle/launcher/daemon/server/expiry/AllDaemonExpirationStrategy +instanceKlass org/gradle/internal/stream/EncodedStream +instanceKlass org/gradle/launcher/daemon/bootstrap/DaemonStartupCommunication +instanceKlass org/gradle/cache/internal/DefaultFileLockManager$DefaultFileLock$3 +instanceKlass org/gradle/cache/internal/DefaultFileLockManager$DefaultFileLock$2 +instanceKlass org/gradle/cache/internal/DefaultFileLockManager$DefaultFileLock$1 +instanceKlass java/io/FileOutputStream$1 +instanceKlass org/gradle/internal/remote/internal/inet/SocketInetAddress +instanceKlass org/gradle/internal/serialize/AbstractEncoder +instanceKlass org/gradle/internal/serialize/FlushableEncoder +instanceKlass org/gradle/launcher/daemon/registry/DaemonRegistryContent$$Lambda$77 +instanceKlass org/gradle/launcher/daemon/registry/DaemonInfo$Serializer +instanceKlass org/gradle/cache/internal/filelock/LockInfo +instanceKlass org/gradle/cache/internal/DefaultFileLockManager$DefaultFileLock$$Lambda$76 +instanceKlass org/gradle/cache/internal/filelock/DefaultLockStateSerializer$SequenceNumberLockState +instanceKlass org/gradle/internal/io/IOQuery$Result +instanceKlass org/gradle/cache/internal/filelock/FileLockOutcome +instanceKlass org/gradle/cache/internal/DefaultFileLockManager$DefaultFileLock$4 +instanceKlass org/gradle/internal/io/ExponentialBackoff +instanceKlass org/gradle/cache/internal/DefaultFileLockManager$AwaitableFileLockReleasedSignal +instanceKlass org/gradle/cache/FileLockReleasedSignal +instanceKlass org/gradle/cache/internal/filelock/LockInfoSerializer +instanceKlass org/gradle/cache/internal/filelock/LockInfoAccess +instanceKlass org/gradle/cache/internal/filelock/LockStateAccess +instanceKlass org/gradle/cache/internal/filelock/LockFileAccess +instanceKlass org/gradle/cache/internal/filelock/LockState +instanceKlass org/gradle/cache/internal/filelock/DefaultLockStateSerializer +instanceKlass org/gradle/internal/io/IOQuery +instanceKlass org/gradle/cache/FileLock$State +instanceKlass org/gradle/cache/internal/filelock/LockStateSerializer +instanceKlass sun/net/ResourceManager +instanceKlass java/net/DatagramPacket +instanceKlass java/net/DatagramSocket$1 +instanceKlass java/net/AbstractPlainDatagramSocketImpl$1 +instanceKlass java/net/DatagramSocketImpl +instanceKlass java/net/DefaultDatagramSocketImplFactory +instanceKlass java/net/DatagramSocket +instanceKlass org/gradle/cache/internal/locklistener/FileLockCommunicator +instanceKlass org/gradle/cache/internal/filelock/LockOptionsBuilder +instanceKlass org/gradle/cache/internal/SimpleStateCache$1Updater +instanceKlass org/gradle/cache/internal/FileIntegrityViolationSuppressingPersistentStateCacheDecorator$1 +instanceKlass org/gradle/launcher/daemon/registry/PersistentDaemonRegistry$8 +instanceKlass org/gradle/launcher/daemon/registry/DaemonInfo +instanceKlass org/gradle/launcher/daemon/context/DaemonConnectDetails +instanceKlass sun/util/resources/provider/NonBaseLocaleDataMetaInfo +instanceKlass sun/util/locale/provider/JRELocaleProviderAdapter$$Lambda$75 +instanceKlass sun/util/locale/provider/BaseLocaleDataMetaInfo +instanceKlass sun/util/locale/provider/JRELocaleProviderAdapter$$Lambda$74 +instanceKlass sun/util/cldr/CLDRLocaleProviderAdapter$$Lambda$73 +instanceKlass sun/util/locale/provider/TimeZoneNameUtility$TimeZoneNameGetter +instanceKlass sun/util/locale/provider/TimeZoneNameUtility +instanceKlass org/gradle/internal/remote/internal/inet/TcpIncomingConnector$1 +instanceKlass org/gradle/internal/remote/internal/inet/TcpIncomingConnector$Receiver +instanceKlass org/gradle/internal/remote/internal/inet/MultiChoiceAddress +instanceKlass org/gradle/internal/remote/internal/inet/InetEndpoint +instanceKlass java/util/UUID$Holder +instanceKlass java/util/UUID +instanceKlass sun/net/NetHooks +instanceKlass java/net/InetSocketAddress$InetSocketAddressHolder +instanceKlass java/net/Inet4AddressImpl +instanceKlass org/gradle/internal/remote/internal/inet/InetAddresses +instanceKlass java/net/AbstractPlainSocketImpl$1 +instanceKlass java/net/StandardSocketOptions$StdSocketOption +instanceKlass java/net/StandardSocketOptions +instanceKlass java/net/SocketImpl +instanceKlass java/net/SocketOptions +instanceKlass java/net/SocksConsts +instanceKlass java/net/ServerSocket$2 +instanceKlass jdk/internal/access/JavaNetSocketAccess +instanceKlass java/net/ServerSocket +instanceKlass jdk/net/ExtendedSocketOptions$PlatformSocketOptions$1 +instanceKlass jdk/net/ExtendedSocketOptions$PlatformSocketOptions +instanceKlass jdk/net/SocketFlow +instanceKlass jdk/net/ExtendedSocketOptions$ExtSocketOption +instanceKlass java/net/SocketOption +instanceKlass jdk/net/ExtendedSocketOptions +instanceKlass sun/net/ext/ExtendedSocketOptions +instanceKlass sun/nio/ch/Net$1 +instanceKlass java/net/ProtocolFamily +instanceKlass sun/nio/ch/Net +instanceKlass sun/nio/ch/SelChImpl +instanceKlass sun/nio/ch/DefaultSelectorProvider +instanceKlass java/nio/channels/spi/SelectorProvider$1 +instanceKlass java/nio/channels/spi/SelectorProvider +instanceKlass java/nio/channels/NetworkChannel +instanceKlass org/gradle/launcher/daemon/server/DaemonTcpServerConnector$1 +instanceKlass org/gradle/launcher/daemon/server/Daemon$5 +instanceKlass org/gradle/launcher/daemon/server/DefaultIncomingConnectionHandler +instanceKlass org/gradle/initialization/DefaultBuildCancellationToken +instanceKlass java/util/concurrent/SynchronousQueue$TransferStack$SNode +instanceKlass java/util/concurrent/SynchronousQueue$Transferer +instanceKlass org/gradle/initialization/BuildCancellationToken +instanceKlass org/gradle/launcher/daemon/server/DaemonStateCoordinator +instanceKlass org/gradle/launcher/daemon/server/Daemon$4 +instanceKlass org/gradle/launcher/daemon/server/Daemon$3 +instanceKlass org/gradle/launcher/daemon/server/Daemon$2 +instanceKlass org/gradle/launcher/daemon/server/Daemon$1 +instanceKlass org/gradle/launcher/daemon/server/DaemonRegistryUpdater +instanceKlass sun/security/provider/AbstractDrbg$NonceProvider +instanceKlass sun/security/provider/AbstractDrbg$SeederHolder$$Lambda$72 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass sun/nio/fs/BasicFileAttributesHolder +instanceKlass sun/nio/fs/WindowsDirectoryStream$WindowsDirectoryIterator +instanceKlass sun/nio/fs/WindowsDirectoryStream +instanceKlass java/nio/file/DirectoryStream +instanceKlass java/nio/file/Files$AcceptAllFilter +instanceKlass java/nio/file/DirectoryStream$Filter +instanceKlass java/net/NetworkInterface$2 +instanceKlass java/net/DefaultInterface +instanceKlass java/net/Inet6Address$Inet6AddressHolder +instanceKlass java/net/InetAddress$PlatformNameService +instanceKlass java/net/InetAddress$NameService +instanceKlass java/net/Inet6AddressImpl +instanceKlass java/net/InetAddressImpl +instanceKlass java/net/InetAddressImplFactory +instanceKlass java/util/concurrent/ConcurrentSkipListMap$Node +instanceKlass java/util/concurrent/ConcurrentSkipListMap$Index +instanceKlass java/util/concurrent/ConcurrentNavigableMap +instanceKlass java/net/InetAddress$InetAddressHolder +instanceKlass java/net/InetAddress$2 +instanceKlass jdk/internal/access/JavaNetInetAddressAccess +instanceKlass java/net/InetAddress$1 +instanceKlass java/net/InetAddress +instanceKlass java/net/InterfaceAddress +instanceKlass java/net/NetworkInterface$1 +instanceKlass java/net/NetworkInterface +instanceKlass sun/nio/cs/StringUTF16 +instanceKlass sun/security/provider/ByteArrayAccess +instanceKlass sun/security/provider/SeedGenerator$1 +instanceKlass sun/security/util/MessageDigestSpi2 +instanceKlass sun/security/jca/GetInstance$Instance +instanceKlass sun/security/jca/GetInstance +instanceKlass java/security/MessageDigestSpi +instanceKlass sun/security/provider/SeedGenerator +instanceKlass sun/security/provider/AbstractDrbg$SeederHolder +instanceKlass java/security/DrbgParameters$NextBytes +instanceKlass sun/security/provider/AbstractDrbg$$Lambda$71 +instanceKlass sun/security/provider/EntropySource +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass sun/security/provider/AbstractDrbg +instanceKlass java/security/DrbgParameters$Instantiation +instanceKlass java/security/DrbgParameters +instanceKlass sun/security/provider/MoreDrbgParameters +instanceKlass sun/security/provider/DRBG$$Lambda$70 +instanceKlass java/security/SecureRandomSpi +instanceKlass java/security/SecureRandomParameters +instanceKlass java/security/Provider$UString +instanceKlass java/security/Provider$Service +instanceKlass sun/security/provider/NativePRNG$NonBlocking +instanceKlass sun/security/provider/NativePRNG$Blocking +instanceKlass sun/security/provider/NativePRNG +instanceKlass sun/security/provider/SunEntries$1 +instanceKlass sun/security/provider/SunEntries +instanceKlass sun/security/jca/ProviderList$2 +instanceKlass jdk/internal/math/FloatingDecimal$ASCIIToBinaryBuffer +instanceKlass jdk/internal/math/FloatingDecimal$PreparedASCIIToBinaryBuffer +instanceKlass jdk/internal/math/FloatingDecimal$ASCIIToBinaryConverter +instanceKlass jdk/internal/math/FloatingDecimal$BinaryToASCIIBuffer +instanceKlass jdk/internal/math/FloatingDecimal$ExceptionalBinaryToASCIIBuffer +instanceKlass jdk/internal/math/FloatingDecimal$BinaryToASCIIConverter +instanceKlass jdk/internal/math/FloatingDecimal +instanceKlass java/security/Provider$EngineDescription +instanceKlass java/security/Provider$ServiceKey +instanceKlass sun/security/jca/ProviderConfig +instanceKlass sun/security/jca/ProviderList +instanceKlass sun/security/jca/Providers +instanceKlass com/google/common/base/Joiner +instanceKlass org/gradle/launcher/daemon/server/exec/DaemonCommandExecuter +instanceKlass org/gradle/internal/remote/internal/inet/MultiChoiceAddressSerializer +instanceKlass org/gradle/launcher/daemon/registry/DaemonRegistryContent$Serializer +instanceKlass org/gradle/launcher/daemon/registry/DaemonRegistryContent +instanceKlass org/gradle/cache/LockOptions +instanceKlass org/gradle/cache/internal/AbstractFileAccess +instanceKlass org/gradle/internal/serialize/Encoder +instanceKlass org/gradle/cache/internal/SimpleStateCache +instanceKlass org/gradle/cache/internal/FileIntegrityViolationSuppressingPersistentStateCacheDecorator +instanceKlass org/gradle/cache/PersistentStateCache$UpdateAction +instanceKlass org/gradle/cache/PersistentStateCache +instanceKlass org/gradle/launcher/daemon/registry/PersistentDaemonRegistry +instanceKlass org/gradle/cache/internal/CacheAccessSerializer$$Lambda$69 +instanceKlass org/gradle/cache/Cache$$Lambda$68 +instanceKlass org/gradle/launcher/daemon/registry/DaemonRegistryServices$$Lambda$67 +instanceKlass org/gradle/internal/nativeintegration/filesystem/services/FallbackStat +instanceKlass org/gradle/internal/nativeintegration/filesystem/services/EmptyChmod +instanceKlass org/gradle/internal/nativeintegration/filesystem/jdk7/Jdk7Symlink +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass net/rubygrapefruit/platform/file/PosixFileInfo +instanceKlass org/gradle/internal/nativeintegration/services/NativeServices$BrokenService +instanceKlass org/gradle/internal/nativeintegration/filesystem/services/UnavailablePosixFiles +instanceKlass net/rubygrapefruit/platform/terminal/Terminals +instanceKlass org/gradle/api/internal/file/temp/GradleUserHomeTemporaryFileProvider$1 +instanceKlass org/gradle/internal/nativeintegration/services/NativeServices$2 +instanceKlass net/rubygrapefruit/platform/file/WindowsFileInfo +instanceKlass net/rubygrapefruit/platform/file/FileInfo +instanceKlass net/rubygrapefruit/platform/internal/DirList +instanceKlass net/rubygrapefruit/platform/internal/AbstractFiles +instanceKlass org/gradle/internal/nativeintegration/filesystem/services/NativePlatformBackedFileMetadataAccessor +instanceKlass java/util/Random +instanceKlass org/gradle/internal/id/RandomLongIdGenerator +instanceKlass org/gradle/cache/internal/DefaultProcessMetaDataProvider +instanceKlass org/gradle/internal/io/ExponentialBackoff$Signal +instanceKlass org/gradle/cache/FileLock +instanceKlass org/gradle/cache/FileAccess +instanceKlass org/gradle/cache/internal/DefaultFileLockManager +instanceKlass org/gradle/internal/remote/ConnectionAcceptor +instanceKlass org/gradle/internal/remote/Address +instanceKlass java/net/SocketAddress +instanceKlass org/gradle/internal/remote/internal/inet/TcpIncomingConnector +instanceKlass org/gradle/launcher/daemon/protocol/DaemonMessageSerializer$OutputMessageSerializer +instanceKlass org/gradle/internal/logging/serializer/LogLevelChangeEventSerializer +instanceKlass org/gradle/internal/logging/serializer/ProgressEventSerializer +instanceKlass org/gradle/internal/logging/serializer/ProgressCompleteEventSerializer +instanceKlass org/gradle/internal/operations/BuildOperationMetadata +instanceKlass org/gradle/internal/logging/serializer/ProgressStartEventSerializer +instanceKlass org/gradle/internal/logging/serializer/SpanSerializer +instanceKlass org/gradle/internal/logging/serializer/StyledTextOutputEventSerializer +instanceKlass org/gradle/internal/logging/serializer/UserInputResumeEventSerializer +instanceKlass org/gradle/internal/logging/serializer/PromptOutputEventSerializer +instanceKlass org/gradle/internal/logging/serializer/UserInputRequestEventSerializer +instanceKlass org/gradle/internal/logging/serializer/LogEventSerializer +instanceKlass org/gradle/launcher/daemon/protocol/DaemonMessageSerializer$CloseInputSerializer +instanceKlass org/gradle/launcher/daemon/protocol/DaemonMessageSerializer$ForwardInputSerializer +instanceKlass org/gradle/launcher/daemon/protocol/DaemonMessageSerializer$BuildEventSerializer +instanceKlass org/gradle/launcher/daemon/protocol/DaemonMessageSerializer$FinishedSerializer +instanceKlass org/gradle/launcher/daemon/protocol/DaemonMessageSerializer$SuccessSerializer +instanceKlass org/gradle/launcher/daemon/protocol/DaemonMessageSerializer$FailureSerializer +instanceKlass org/gradle/launcher/daemon/protocol/DaemonMessageSerializer$BuildStartedSerializer +instanceKlass org/gradle/launcher/daemon/protocol/DaemonMessageSerializer$DaemonUnavailableSerializer +instanceKlass org/gradle/launcher/daemon/protocol/DaemonMessageSerializer$CancelSerializer +instanceKlass org/gradle/launcher/exec/BuildActionParameters +instanceKlass org/gradle/launcher/daemon/protocol/DaemonMessageSerializer$BuildActionParametersSerializer +instanceKlass org/gradle/launcher/daemon/protocol/DaemonMessageSerializer$BuildSerializer +instanceKlass org/gradle/launcher/daemon/protocol/DaemonMessageSerializer +instanceKlass org/gradle/launcher/daemon/server/DaemonTcpServerConnector +instanceKlass org/gradle/launcher/daemon/server/IncomingConnectionHandler +instanceKlass org/gradle/launcher/daemon/server/api/DaemonStateControl +instanceKlass org/gradle/internal/serialize/DefaultSerializerRegistry$TypeInfo +instanceKlass java/util/TreeMap$PrivateEntryIterator +instanceKlass org/gradle/tooling/internal/provider/action/BuildActionSerializer$TestExecutionRequestActionSerializer +instanceKlass org/gradle/tooling/internal/provider/action/BuildActionSerializer$ClientProvidedPhasedActionSerializer +instanceKlass org/gradle/tooling/internal/provider/serialization/SerializedPayloadSerializer +instanceKlass org/gradle/tooling/internal/provider/action/BuildActionSerializer$ClientProvidedBuildActionSerializer +instanceKlass org/gradle/tooling/internal/provider/action/BuildActionSerializer$BuildEventSubscriptionsSerializer +instanceKlass org/gradle/tooling/internal/provider/action/BuildActionSerializer$BuildModelActionSerializer +instanceKlass org/gradle/tooling/internal/provider/action/SubscribableBuildAction +instanceKlass org/gradle/tooling/internal/provider/action/BuildActionSerializer$ValueSerializer +instanceKlass org/gradle/internal/serialize/AbstractSerializer +instanceKlass org/gradle/internal/serialize/BaseSerializerFactory +instanceKlass org/gradle/internal/serialize/AbstractCollectionSerializer +instanceKlass org/gradle/tooling/internal/provider/action/BuildActionSerializer$NullableFileSerializer +instanceKlass org/gradle/tooling/internal/provider/action/BuildActionSerializer$StartParameterSerializer +instanceKlass org/gradle/tooling/internal/provider/action/BuildActionSerializer$ExecuteBuildActionSerializer +instanceKlass org/gradle/tooling/internal/provider/action/ExecuteBuildAction +instanceKlass org/gradle/internal/serialize/DefaultSerializerRegistry$HierarchySerializerMatcher +instanceKlass org/gradle/internal/serialize/DefaultSerializerRegistry$StrictSerializerMatcher +instanceKlass org/gradle/internal/serialize/DefaultSerializerRegistry$SerializerClassMatcherStrategy +instanceKlass org/gradle/internal/serialize/DefaultSerializerRegistry$1 +instanceKlass org/gradle/internal/serialize/DefaultSerializerRegistry +instanceKlass org/gradle/internal/serialize/SerializerRegistry +instanceKlass org/gradle/tooling/internal/provider/action/BuildActionSerializer +instanceKlass org/gradle/initialization/BuildRequestContext +instanceKlass org/gradle/launcher/daemon/server/exec/WatchForDisconnection +instanceKlass org/gradle/launcher/daemon/server/exec/ResetDeprecationLogger +instanceKlass org/gradle/launcher/daemon/server/exec/RequestStopIfSingleUsedDaemon +instanceKlass org/gradle/launcher/daemon/server/api/StdinHandler +instanceKlass org/gradle/launcher/daemon/server/exec/ForwardClientInput +instanceKlass org/gradle/launcher/daemon/server/health/HealthLogger +instanceKlass org/gradle/launcher/daemon/server/exec/LogAndCheckHealth +instanceKlass org/gradle/launcher/daemon/server/exec/BuildCommandOnly +instanceKlass org/gradle/launcher/daemon/server/exec/ReturnResult +instanceKlass org/gradle/launcher/daemon/server/api/HandleReportStatus +instanceKlass org/gradle/launcher/daemon/server/exec/HandleCancel +instanceKlass org/gradle/launcher/daemon/server/api/HandleInvalidateVirtualFileSystem +instanceKlass org/gradle/launcher/daemon/protocol/Message +instanceKlass org/gradle/launcher/daemon/server/api/HandleStop +instanceKlass org/gradle/launcher/daemon/diagnostics/DaemonDiagnostics +instanceKlass org/gradle/tooling/internal/provider/BuildSessionLifecycleBuildActionExecuter +instanceKlass org/gradle/tooling/internal/provider/StartParamsValidatingActionExecuter +instanceKlass org/gradle/initialization/BuildRequestMetaData +instanceKlass org/gradle/initialization/exception/ExceptionAnalyser +instanceKlass org/gradle/initialization/exception/ExceptionCollector +instanceKlass org/gradle/tooling/internal/provider/SessionFailureReportingActionExecuter +instanceKlass org/gradle/StartParameter +instanceKlass org/gradle/concurrent/ParallelismConfiguration +instanceKlass org/gradle/tooling/internal/provider/SetupLoggingActionExecuter +instanceKlass org/gradle/cache/internal/FileContentCacheFactory +instanceKlass org/gradle/cache/scopes/ScopedCache +instanceKlass org/gradle/initialization/ClassLoaderScopeRegistry +instanceKlass org/gradle/cache/GlobalCacheLocations +instanceKlass org/gradle/internal/file/FileAccessTimeJournal +instanceKlass org/gradle/internal/execution/timeout/TimeoutHandler +instanceKlass org/gradle/process/internal/worker/WorkerProcessFactory +instanceKlass org/gradle/internal/classloader/HashingClassLoaderFactory +instanceKlass org/gradle/internal/hash/ClassLoaderHierarchyHasher +instanceKlass org/gradle/groovy/scripts/internal/ScriptSourceHasher +instanceKlass org/gradle/cache/CacheRepository +instanceKlass org/gradle/cache/internal/CacheScopeMapping +instanceKlass org/gradle/api/internal/initialization/loadercache/ClassLoaderCache +instanceKlass org/gradle/internal/isolation/IsolatableFactory +instanceKlass org/gradle/internal/service/scopes/WorkerSharedUserHomeScopeServices +instanceKlass org/gradle/internal/service/scopes/DefaultGradleUserHomeScopeServiceRegistry +instanceKlass org/gradle/internal/logging/text/AbstractStyledTextOutputFactory +instanceKlass org/gradle/launcher/daemon/server/expiry/DaemonExpirationResult +instanceKlass org/gradle/internal/event/DefaultListenerManager$EventBroadcast +instanceKlass org/gradle/launcher/daemon/server/expiry/DaemonExpirationListener +instanceKlass com/google/common/collect/ObjectArrays +instanceKlass org/gradle/launcher/daemon/server/health/LowNonHeapDaemonExpirationStrategy +instanceKlass org/gradle/launcher/daemon/server/health/LowHeapSpaceDaemonExpirationStrategy +instanceKlass org/gradle/launcher/daemon/server/health/GcThrashingDaemonExpirationStrategy +instanceKlass org/gradle/launcher/daemon/server/expiry/AnyDaemonExpirationStrategy +instanceKlass java/lang/FunctionalInterface +instanceKlass org/gradle/internal/service/DefaultServiceRegistry$RegistrationWrapper +instanceKlass org/gradle/internal/service/scopes/Scopes$Build +instanceKlass org/gradle/internal/service/scopes/EventScope +instanceKlass kotlin/annotation/Target +instanceKlass kotlin/annotation/Retention +instanceKlass kotlin/Metadata +instanceKlass java/lang/annotation/Documented +instanceKlass org/gradle/api/Incubating +instanceKlass jdk/internal/reflect/ClassDefiner$1 +instanceKlass jdk/internal/reflect/ClassDefiner +instanceKlass jdk/internal/reflect/MethodAccessorGenerator$1 +instanceKlass jdk/internal/reflect/Label$PatchInfo +instanceKlass jdk/internal/reflect/Label +instanceKlass jdk/internal/reflect/UTF8 +instanceKlass jdk/internal/reflect/ClassFileAssembler +instanceKlass jdk/internal/reflect/ByteVectorImpl +instanceKlass jdk/internal/reflect/ByteVector +instanceKlass jdk/internal/reflect/ByteVectorFactory +instanceKlass jdk/internal/reflect/AccessorGenerator +instanceKlass jdk/internal/reflect/ClassFileConstants +instanceKlass org/gradle/internal/service/scopes/Scopes$BuildTree +instanceKlass org/gradle/internal/service/scopes/Scopes$BuildSession +instanceKlass org/gradle/internal/service/scopes/Scopes$UserHome +instanceKlass java/lang/annotation/Target +instanceKlass sun/reflect/annotation/AnnotationInvocationHandler +instanceKlass sun/reflect/annotation/AnnotationParser$1 +instanceKlass sun/reflect/annotation/ExceptionProxy +instanceKlass java/lang/annotation/Inherited +instanceKlass java/lang/annotation/Retention +instanceKlass sun/reflect/annotation/AnnotationType$1 +instanceKlass sun/reflect/annotation/AnnotationType +instanceKlass java/lang/reflect/GenericArrayType +instanceKlass org/gradle/internal/service/scopes/ServiceScope +instanceKlass java/lang/Class$AnnotationData +instanceKlass java/time/Duration +instanceKlass org/gradle/internal/service/scopes/StatefulListener +instanceKlass java/time/temporal/TemporalAmount +instanceKlass org/gradle/internal/service/scopes/Scope$Global +instanceKlass org/gradle/internal/service/scopes/Scope +instanceKlass java/time/temporal/TemporalUnit +instanceKlass java/util/concurrent/TimeUnit$1 +instanceKlass java/util/concurrent/Executors$RunnableAdapter +instanceKlass java/util/concurrent/Executors +instanceKlass java/util/concurrent/FutureTask$WaitNode +instanceKlass java/util/concurrent/FutureTask +instanceKlass org/gradle/internal/concurrent/ManagedExecutorImpl$1 +instanceKlass org/gradle/launcher/daemon/server/health/gc/GarbageCollectionCheck +instanceKlass org/gradle/launcher/daemon/server/health/gc/DefaultGarbageCollectionMonitor$1 +instanceKlass java/util/concurrent/BlockingDeque +instanceKlass org/gradle/launcher/daemon/server/health/gc/DefaultSlidingWindow +instanceKlass org/gradle/launcher/daemon/server/health/gc/SlidingWindow +instanceKlass org/gradle/launcher/daemon/server/health/gc/DefaultGarbageCollectionMonitor +instanceKlass org/gradle/launcher/daemon/server/health/gc/GarbageCollectionInfo +instanceKlass org/gradle/internal/concurrent/ExecutorPolicy$CatchAndRecordFailures +instanceKlass java/util/concurrent/RunnableScheduledFuture +instanceKlass java/util/concurrent/ScheduledFuture +instanceKlass java/util/concurrent/Delayed +instanceKlass java/util/concurrent/RunnableFuture +instanceKlass java/util/concurrent/Future +instanceKlass org/gradle/internal/concurrent/ThreadFactoryImpl +instanceKlass java/util/concurrent/ThreadPoolExecutor$AbortPolicy +instanceKlass java/util/concurrent/RejectedExecutionHandler +instanceKlass java/util/concurrent/AbstractExecutorService +instanceKlass org/gradle/internal/concurrent/ManagedScheduledExecutor +instanceKlass java/util/concurrent/ScheduledExecutorService +instanceKlass org/gradle/internal/concurrent/ManagedExecutor +instanceKlass java/util/concurrent/ExecutorService +instanceKlass java/util/concurrent/Executor +instanceKlass org/gradle/internal/concurrent/AsyncStoppable +instanceKlass org/gradle/internal/concurrent/ExecutorPolicy +instanceKlass org/gradle/internal/concurrent/DefaultExecutorFactory +instanceKlass org/gradle/launcher/daemon/server/health/gc/GarbageCollectorMonitoringStrategy$3 +instanceKlass sun/management/Sensor +instanceKlass sun/management/MemoryPoolImpl +instanceKlass java/lang/management/MemoryPoolMXBean +instanceKlass org/gradle/launcher/daemon/server/health/gc/GarbageCollectorMonitoringStrategy$2 +instanceKlass org/gradle/util/internal/CollectionUtils +instanceKlass org/gradle/launcher/daemon/server/health/gc/GarbageCollectorMonitoringStrategy$1 +instanceKlass sun/management/spi/PlatformMBeanProvider$PlatformComponent$$Lambda$66 +instanceKlass sun/management/spi/PlatformMBeanProvider$PlatformComponent$$Lambda$65 +instanceKlass com/sun/jmx/mbeanserver/Util +instanceKlass javax/management/ObjectName$Property +instanceKlass com/sun/jmx/mbeanserver/GetPropertyAction +instanceKlass javax/management/ObjectName +instanceKlass javax/management/QueryExp +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass sun/management/Util +instanceKlass com/sun/management/GarbageCollectorMXBean +instanceKlass java/lang/management/MemoryMXBean +instanceKlass java/util/stream/Collectors$$Lambda$64 +instanceKlass java/util/stream/Collectors$$Lambda$63 +instanceKlass java/util/stream/Collectors$$Lambda$62 +instanceKlass java/lang/management/ManagementFactory$$Lambda$61 +instanceKlass java/lang/management/ManagementFactory$PlatformMBeanFinder$$Lambda$60 +instanceKlass java/util/Collections$2 +instanceKlass jdk/management/jfr/internal/FlightRecorderMXBeanProvider$SingleMBeanComponent +instanceKlass jdk/management/jfr/FlightRecorderMXBean +instanceKlass java/util/HashMap$HashMapSpliterator +instanceKlass java/lang/management/ManagementFactory$PlatformMBeanFinder$$Lambda$59 +instanceKlass java/lang/management/ManagementFactory$PlatformMBeanFinder$$Lambda$58 +instanceKlass java/util/stream/Collectors$$Lambda$57 +instanceKlass java/util/stream/Collectors$$Lambda$56 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass java/util/stream/Collectors$$Lambda$55 +instanceKlass java/lang/management/ManagementFactory$PlatformMBeanFinder$$Lambda$54 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass java/util/function/Function$$Lambda$53 +instanceKlass java/lang/management/ManagementFactory$PlatformMBeanFinder$$Lambda$52 +instanceKlass java/lang/management/ManagementFactory$PlatformMBeanFinder$$Lambda$51 +instanceKlass java/lang/management/DefaultPlatformMBeanProvider$11 +instanceKlass java/lang/management/DefaultPlatformMBeanProvider$10 +instanceKlass java/lang/management/DefaultPlatformMBeanProvider$9 +instanceKlass sun/management/ManagementFactoryHelper$LoggingMXBeanAccess$1 +instanceKlass sun/management/ManagementFactoryHelper$LoggingMXBeanAccess +instanceKlass java/lang/management/DefaultPlatformMBeanProvider$8 +instanceKlass java/lang/management/DefaultPlatformMBeanProvider$7 +instanceKlass java/lang/management/DefaultPlatformMBeanProvider$6 +instanceKlass java/lang/management/DefaultPlatformMBeanProvider$5 +instanceKlass java/lang/management/DefaultPlatformMBeanProvider$4 +instanceKlass java/lang/management/DefaultPlatformMBeanProvider$3 +instanceKlass java/lang/management/DefaultPlatformMBeanProvider$2 +instanceKlass java/lang/management/DefaultPlatformMBeanProvider$1 +instanceKlass java/util/concurrent/Callable +instanceKlass com/sun/management/internal/PlatformMBeanProviderImpl$5 +instanceKlass sun/management/VMManagementImpl +instanceKlass sun/management/VMManagement +instanceKlass sun/management/ManagementFactoryHelper +instanceKlass sun/management/NotificationEmitterSupport +instanceKlass javax/management/NotificationEmitter +instanceKlass javax/management/NotificationBroadcaster +instanceKlass com/sun/management/DiagnosticCommandMBean +instanceKlass javax/management/DynamicMBean +instanceKlass com/sun/management/internal/PlatformMBeanProviderImpl$4 +instanceKlass com/sun/management/internal/PlatformMBeanProviderImpl$3 +instanceKlass com/sun/management/internal/PlatformMBeanProviderImpl$2 +instanceKlass java/util/stream/ReduceOps$Box +instanceKlass java/util/stream/ReduceOps$AccumulatingSink +instanceKlass java/util/stream/ReduceOps$ReduceOp +instanceKlass java/util/stream/ReduceOps +instanceKlass java/util/stream/Collectors$$Lambda$50 +instanceKlass java/util/stream/Collectors$$Lambda$49 +instanceKlass java/util/function/BinaryOperator +instanceKlass java/util/stream/Collectors$$Lambda$48 +instanceKlass java/util/function/BiConsumer +instanceKlass java/util/stream/Collectors$$Lambda$47 +instanceKlass java/util/stream/Collectors$CollectorImpl +instanceKlass java/util/stream/Collector +instanceKlass java/util/stream/Collectors +instanceKlass com/sun/management/internal/PlatformMBeanProviderImpl$1 +instanceKlass sun/management/spi/PlatformMBeanProvider$PlatformComponent +instanceKlass com/sun/management/internal/PlatformMBeanProviderImpl$$Lambda$46 +instanceKlass java/lang/management/ManagementFactory$PlatformMBeanFinder$$Lambda$45 +instanceKlass sun/management/spi/PlatformMBeanProvider +instanceKlass java/lang/management/ManagementFactory$PlatformMBeanFinder$$Lambda$44 +instanceKlass java/lang/management/ManagementFactory$PlatformMBeanFinder +instanceKlass java/lang/management/GarbageCollectorMXBean +instanceKlass java/lang/management/MemoryManagerMXBean +instanceKlass java/lang/management/PlatformManagedObject +instanceKlass java/lang/management/ManagementFactory$$Lambda$43 +instanceKlass java/lang/management/ManagementFactory +instanceKlass org/gradle/launcher/daemon/server/health/gc/GarbageCollectionMonitor +instanceKlass org/gradle/internal/time/DefaultTimer +instanceKlass org/gradle/internal/logging/text/AbstractLineChoppingStyledTextOutput$StateContext +instanceKlass java/text/DontCareFieldPosition$1 +instanceKlass java/text/Format$FieldDelegate +instanceKlass java/util/Date +instanceKlass java/text/DigitList +instanceKlass java/text/FieldPosition +instanceKlass sun/util/locale/provider/JRELocaleProviderAdapter$$Lambda$42 +instanceKlass sun/util/locale/provider/JRELocaleProviderAdapter$$Lambda$41 +instanceKlass java/text/DateFormatSymbols +instanceKlass sun/util/calendar/CalendarUtils +instanceKlass sun/util/calendar/CalendarDate +instanceKlass sun/util/cldr/CLDRLocaleProviderAdapter$$Lambda$40 +instanceKlass sun/util/locale/provider/CalendarDataUtility$CalendarWeekParameterGetter +instanceKlass sun/util/locale/provider/LocaleServiceProviderPool$LocalizedObjectGetter +instanceKlass sun/util/locale/provider/LocaleServiceProviderPool +instanceKlass sun/util/calendar/CalendarSystem$GregorianHolder +instanceKlass sun/util/calendar/CalendarSystem +instanceKlass java/util/Calendar$Builder +instanceKlass sun/util/locale/provider/JRELocaleProviderAdapter$$Lambda$39 +instanceKlass sun/util/calendar/ZoneInfoFile$ZoneOffsetTransitionRule +instanceKlass sun/util/calendar/ZoneInfoFile$1 +instanceKlass sun/util/calendar/ZoneInfoFile +instanceKlass java/util/TimeZone +instanceKlass java/util/Calendar +instanceKlass java/text/AttributedCharacterIterator$Attribute +instanceKlass java/text/Format +instanceKlass org/gradle/internal/logging/sink/LogEventDispatcher +instanceKlass org/gradle/internal/logging/text/AbstractLineChoppingStyledTextOutput$SeenFromEol +instanceKlass org/gradle/internal/logging/text/AbstractLineChoppingStyledTextOutput$4 +instanceKlass org/gradle/internal/logging/text/AbstractLineChoppingStyledTextOutput$3 +instanceKlass org/gradle/internal/logging/text/AbstractLineChoppingStyledTextOutput$2 +instanceKlass org/gradle/internal/logging/text/AbstractLineChoppingStyledTextOutput$1 +instanceKlass org/gradle/internal/logging/text/AbstractLineChoppingStyledTextOutput$State +instanceKlass org/gradle/internal/logging/text/StreamBackedStandardOutputListener +instanceKlass org/gradle/internal/logging/text/AbstractStyledTextOutput +instanceKlass org/gradle/internal/logging/console/StyledTextOutputBackedRenderer +instanceKlass org/slf4j/helpers/FormattingTuple +instanceKlass org/slf4j/helpers/MessageFormatter +instanceKlass net/rubygrapefruit/platform/internal/FunctionResult +instanceKlass org/gradle/internal/logging/source/PrintStreamLoggingSystem$PrintStreamDestination +instanceKlass java/util/logging/ErrorManager +instanceKlass org/gradle/internal/logging/source/JavaUtilLoggingSystem$SnapshotImpl +instanceKlass org/gradle/internal/logging/config/LoggingSystemAdapter$SnapshotImpl +instanceKlass org/gradle/internal/dispatch/MethodInvocation +instanceKlass org/gradle/internal/logging/sink/OutputEventRenderer$SnapshotImpl +instanceKlass org/gradle/process/internal/shutdown/ShutdownHooks +instanceKlass org/gradle/launcher/daemon/bootstrap/DaemonMain$1 +instanceKlass com/google/common/io/Files$2 +instanceKlass com/google/common/io/LineProcessor +instanceKlass com/google/common/io/ByteSink +instanceKlass com/google/common/io/ByteSource +instanceKlass com/google/common/base/Predicate +instanceKlass com/google/common/graph/SuccessorsFunction +instanceKlass com/google/common/io/Files +instanceKlass org/gradle/util/internal/GFileUtils +instanceKlass java/util/regex/CharPredicates$$Lambda$38 +instanceKlass org/gradle/util/GradleVersion +instanceKlass org/gradle/launcher/daemon/context/DefaultDaemonContext$Serializer +instanceKlass org/gradle/launcher/daemon/context/DefaultDaemonContext +instanceKlass net/rubygrapefruit/platform/internal/jni/PosixProcessFunctions +instanceKlass org/gradle/internal/FileUtils$1 +instanceKlass org/gradle/internal/FileUtils +instanceKlass com/google/common/collect/Lists +instanceKlass org/gradle/internal/nativeintegration/ReflectiveEnvironment +instanceKlass org/gradle/internal/nativeintegration/processenvironment/AbstractProcessEnvironment +instanceKlass net/rubygrapefruit/platform/internal/DefaultProcess +instanceKlass net/rubygrapefruit/platform/internal/WrapperProcess +instanceKlass net/rubygrapefruit/platform/file/WindowsFiles +instanceKlass org/gradle/launcher/daemon/context/DaemonContextBuilder +instanceKlass org/gradle/internal/id/UUIDGenerator +instanceKlass org/gradle/internal/remote/MessagingServer +instanceKlass org/gradle/internal/remote/internal/IncomingConnector +instanceKlass org/gradle/internal/remote/MessagingClient +instanceKlass org/gradle/internal/remote/internal/OutgoingConnector +instanceKlass org/gradle/internal/id/IdGenerator +instanceKlass org/gradle/internal/remote/services/MessagingServices +instanceKlass org/gradle/api/internal/file/DefaultFileLookup +instanceKlass org/gradle/internal/scripts/DefaultScriptFileResolver +instanceKlass org/gradle/internal/scripts/ScriptFileResolver +instanceKlass org/gradle/initialization/layout/BuildLayoutFactory +instanceKlass org/gradle/tooling/internal/provider/runner/OperationDependencyLookup +instanceKlass org/gradle/tooling/internal/provider/runner/ToolingApiBuildEventListenerFactory +instanceKlass org/gradle/configurationcache/serialization/beans/BeanConstructors +instanceKlass org/gradle/nativeplatform/NativeBinarySpec +instanceKlass org/gradle/platform/base/BinarySpec +instanceKlass org/gradle/platform/base/Binary +instanceKlass org/gradle/api/CheckableComponentSpec +instanceKlass org/gradle/api/BuildableComponentSpec +instanceKlass org/gradle/platform/base/ComponentSpec +instanceKlass org/gradle/model/ModelElement +instanceKlass org/gradle/api/Buildable +instanceKlass org/gradle/internal/resource/transport/sftp/SftpClientFactory +instanceKlass org/gradle/internal/resource/transport/sftp/SftpResourcesPluginServiceRegistry$GlobalScopeServices +instanceKlass org/gradle/internal/resource/transport/aws/s3/S3ResourcesPluginServiceRegistry$GlobalScopeServices +instanceKlass org/gradle/internal/resource/transport/gcp/gcs/GcsResourcesPluginServiceRegistry$GlobalScopeServices +instanceKlass org/gradle/nativeplatform/TargetMachineBuilder +instanceKlass org/gradle/nativeplatform/TargetMachine +instanceKlass org/gradle/nativeplatform/internal/DefaultTargetMachineFactory +instanceKlass org/gradle/nativeplatform/TargetMachineFactory +instanceKlass org/gradle/nativeplatform/internal/NativePlatformResolver +instanceKlass org/gradle/platform/base/internal/PlatformResolver +instanceKlass org/gradle/nativeplatform/platform/internal/OperatingSystemInternal +instanceKlass org/gradle/nativeplatform/platform/OperatingSystem +instanceKlass org/gradle/nativeplatform/platform/internal/NativePlatformInternal +instanceKlass org/gradle/nativeplatform/platform/NativePlatform +instanceKlass org/gradle/platform/base/Platform +instanceKlass org/gradle/api/Named +instanceKlass org/gradle/nativeplatform/platform/internal/NativePlatforms +instanceKlass org/gradle/internal/logging/text/DiagnosticsVisitor +instanceKlass org/gradle/buildinit/plugins/internal/action/InitBuiltInCommand +instanceKlass org/gradle/api/component/SoftwareComponentFactory +instanceKlass org/gradle/api/plugins/internal/PluginAuthorServices$GlobalScopeServices +instanceKlass org/gradle/internal/build/event/BuildEventSubscriptions +instanceKlass org/gradle/internal/build/event/OperationResultPostProcessorFactory +instanceKlass org/gradle/language/java/internal/JavaLanguagePluginServiceRegistry$JavaGlobalScopeServices +instanceKlass org/gradle/platform/base/internal/registry/ComponentModelBaseServiceRegistry$GlobalScopeServices +instanceKlass org/gradle/reporting/ReportRenderer +instanceKlass org/gradle/api/reporting/components/internal/DiagnosticsServices$1 +instanceKlass org/gradle/api/plugins/internal/HelpBuiltInCommand +instanceKlass org/gradle/configuration/project/BuiltInCommand +instanceKlass org/gradle/internal/resource/transport/http/HttpClientHelper$Factory +instanceKlass org/gradle/internal/resource/transport/http/SslContextFactory +instanceKlass org/gradle/internal/resource/transport/http/HttpResourcesPluginServiceRegistry$GlobalScopeServices +instanceKlass org/gradle/api/internal/artifacts/configurations/MarkConfigurationObservedListener +instanceKlass org/gradle/api/internal/artifacts/configurations/ProjectDependencyObservedListener +instanceKlass org/gradle/internal/resource/ExternalResourceName +instanceKlass org/gradle/api/Describable +instanceKlass org/gradle/api/artifacts/component/ComponentSelector +instanceKlass org/gradle/api/internal/artifacts/transform/ArtifactTransformActionScheme +instanceKlass org/gradle/api/internal/artifacts/transform/ArtifactTransformParameterScheme +instanceKlass org/gradle/api/internal/tasks/properties/annotations/AbstractInputFilePropertyAnnotationHandler +instanceKlass org/gradle/api/internal/artifacts/dsl/dependencies/PlatformSupport +instanceKlass org/gradle/api/internal/attributes/EmptySchema +instanceKlass org/gradle/api/internal/attributes/AttributesSchemaInternal +instanceKlass org/gradle/api/internal/attributes/DescribableAttributesSchema +instanceKlass org/gradle/api/attributes/AttributesSchema +instanceKlass org/gradle/cache/internal/ProducerGuard +instanceKlass org/gradle/internal/typeconversion/NotationParser +instanceKlass org/gradle/api/internal/artifacts/ivyservice/moduleconverter/dependencies/AbstractIvyDependencyDescriptorFactory +instanceKlass org/gradle/api/internal/artifacts/ivyservice/moduleconverter/dependencies/IvyDependencyDescriptorFactory +instanceKlass org/gradle/api/internal/artifacts/ivyservice/moduleconverter/LocalComponentMetadataBuilder +instanceKlass org/gradle/api/internal/artifacts/ivyservice/moduleconverter/dependencies/LocalConfigurationMetadataBuilder +instanceKlass org/gradle/internal/resource/local/FileResourceRepository +instanceKlass org/gradle/internal/resource/ExternalResourceRepository +instanceKlass org/gradle/api/internal/artifacts/ivyservice/IvyContextManager +instanceKlass org/gradle/internal/typeconversion/NotationConverter +instanceKlass org/gradle/api/internal/artifacts/ImmutableModuleIdentifierFactory +instanceKlass org/gradle/internal/resource/connector/ResourceConnectorFactory +instanceKlass org/gradle/api/internal/artifacts/ivyservice/moduleconverter/dependencies/DependencyDescriptorFactory +instanceKlass org/gradle/api/internal/artifacts/ivyservice/moduleconverter/dependencies/ExcludeRuleConverter +instanceKlass org/gradle/api/internal/artifacts/DependencyManagementGlobalScopeServices +instanceKlass org/gradle/kotlin/dsl/support/ImplicitImports +instanceKlass org/gradle/kotlin/dsl/support/GlobalServices +instanceKlass org/gradle/internal/build/event/BuildEventServices$1 +instanceKlass org/gradle/internal/build/event/BuildEventListenerFactory +instanceKlass org/gradle/internal/operations/BuildOperationListener +instanceKlass org/gradle/initialization/BuildEventConsumer +instanceKlass org/gradle/internal/build/event/DefaultBuildEventsListenerRegistry +instanceKlass org/gradle/internal/build/event/BuildEventListenerRegistryInternal +instanceKlass org/gradle/build/event/BuildEventsListenerRegistry +instanceKlass org/gradle/api/internal/changedetection/state/FileHasherStatistics$Collector +instanceKlass org/gradle/internal/snapshot/impl/DirectorySnapshotterStatistics$Collector +instanceKlass org/gradle/internal/service/scopes/VirtualFileSystemServices$GlobalScopeServices +instanceKlass org/gradle/api/internal/tasks/properties/PropertyWalker +instanceKlass org/gradle/internal/operations/BuildOperationAncestryTracker +instanceKlass org/gradle/internal/service/scopes/ExecutionGlobalServices$AnnotationHandlerRegistration +instanceKlass org/gradle/api/internal/tasks/properties/TaskScheme +instanceKlass org/gradle/api/internal/tasks/properties/TypeScheme +instanceKlass org/gradle/internal/service/scopes/ExecutionGlobalServices$AnnotationHandlerRegistar +instanceKlass org/gradle/api/internal/tasks/properties/InspectionSchemeFactory +instanceKlass org/gradle/api/model/ReplacedBy +instanceKlass org/gradle/api/tasks/Internal +instanceKlass org/gradle/api/tasks/OutputFiles +instanceKlass org/gradle/api/tasks/OutputFile +instanceKlass org/gradle/api/tasks/OutputDirectory +instanceKlass org/gradle/api/tasks/OutputDirectories +instanceKlass org/gradle/api/tasks/options/OptionValues +instanceKlass org/gradle/api/tasks/Nested +instanceKlass org/gradle/api/tasks/LocalState +instanceKlass org/gradle/api/tasks/InputFiles +instanceKlass org/gradle/api/tasks/InputFile +instanceKlass org/gradle/api/tasks/InputDirectory +instanceKlass org/gradle/api/artifacts/transform/InputArtifactDependencies +instanceKlass org/gradle/api/artifacts/transform/InputArtifact +instanceKlass org/gradle/api/tasks/Input +instanceKlass org/gradle/api/tasks/Destroys +instanceKlass org/gradle/api/tasks/Console +instanceKlass org/gradle/api/internal/tasks/properties/annotations/TypeAnnotationHandler +instanceKlass org/gradle/internal/reflect/annotations/TypeAnnotationMetadataStore +instanceKlass org/gradle/api/internal/project/taskfactory/TaskClassInfoStore +instanceKlass org/gradle/internal/execution/TaskExecutionTracker +instanceKlass org/gradle/internal/service/scopes/ExecutionGlobalServices +instanceKlass org/gradle/tooling/internal/provider/serialization/ClassLoaderCache +instanceKlass org/gradle/tooling/internal/provider/ExecuteBuildActionRunner +instanceKlass org/gradle/internal/buildtree/BuildActionRunner +instanceKlass org/gradle/internal/filewatch/FileSystemChangeWaiterFactory +instanceKlass org/gradle/tooling/internal/provider/LauncherServices$ToolingGlobalScopeServices +instanceKlass org/gradle/internal/service/DefaultServiceLocator$ServiceFactory +instanceKlass org/gradle/internal/service/scopes/AbstractPluginServiceRegistry +instanceKlass org/gradle/internal/service/scopes/PluginServiceRegistry +instanceKlass org/gradle/api/internal/classpath/DefaultModuleRegistry$DefaultModule +instanceKlass org/gradle/internal/IoActions +instanceKlass org/gradle/api/Transformer +instanceKlass org/gradle/util/internal/GUtil +instanceKlass org/gradle/api/internal/classpath/DefaultModuleRegistry$$Lambda$37 +instanceKlass java/util/NavigableSet +instanceKlass java/util/SortedSet +instanceKlass com/google/common/collect/Sets +instanceKlass groovy/lang/MetaClass +instanceKlass groovy/lang/MetaObjectProtocol +instanceKlass groovy/lang/GroovySystem +instanceKlass groovy/lang/MetaClassRegistry +instanceKlass groovy/lang/GroovyObject +instanceKlass org/objectweb/asm/ClassVisitor +instanceKlass java/util/ComparableTimSort +instanceKlass java/util/Arrays$LegacyMergeSort +instanceKlass org/gradle/internal/util/Trie$Builder +instanceKlass org/gradle/internal/util/Trie +instanceKlass org/gradle/internal/classloader/FilteringClassLoader$TrieSet +instanceKlass java/lang/ClassLoader$$Lambda$36 +instanceKlass jdk/internal/loader/BootLoader$PackageHelper$$Lambda$35 +instanceKlass jdk/internal/loader/BootLoader$PackageHelper +instanceKlass java/util/stream/StreamSpliterators$WrappingSpliterator$$Lambda$34 +instanceKlass java/util/stream/AbstractSpinedBuffer +instanceKlass java/util/stream/Node$Builder +instanceKlass java/util/stream/Node$OfDouble +instanceKlass java/util/stream/Node$OfLong +instanceKlass java/util/stream/Node$OfInt +instanceKlass java/util/stream/Node$OfPrimitive +instanceKlass java/util/stream/Nodes$EmptyNode +instanceKlass java/util/stream/Node +instanceKlass java/util/stream/Nodes +instanceKlass java/lang/ClassLoader$$Lambda$33 +instanceKlass java/util/function/IntFunction +instanceKlass jdk/internal/loader/BootLoader$$Lambda$32 +instanceKlass java/util/stream/Streams$2 +instanceKlass java/util/stream/StreamSpliterators$AbstractWrappingSpliterator +instanceKlass java/util/stream/AbstractPipeline$$Lambda$31 +instanceKlass java/util/stream/Streams$ConcatSpliterator +instanceKlass java/lang/ClassLoader$$Lambda$30 +instanceKlass org/gradle/internal/classloader/ClassLoaderUtils$AbstractClassLoaderLookuper +instanceKlass org/gradle/internal/classloader/ClassLoaderUtils$ClassLoaderPackagesFetcher +instanceKlass org/gradle/internal/classloader/ClassLoaderUtils$ClassDefiner +instanceKlass org/gradle/internal/classloader/ClassLoaderUtils +instanceKlass org/gradle/initialization/GradleApiSpecAggregator$DefaultSpec +instanceKlass kotlin/jvm/internal/Intrinsics +instanceKlass kotlin/collections/SetsKt__SetsJVMKt +instanceKlass com/google/common/collect/PeekingIterator +instanceKlass com/google/common/collect/UnmodifiableIterator +instanceKlass com/google/common/collect/Iterators +instanceKlass com/google/common/collect/Hashing +instanceKlass com/google/common/base/Java8Usage$$Lambda$29 +instanceKlass com/google/common/base/Java8Usage +instanceKlass com/google/common/base/Preconditions +instanceKlass org/apache/groovy/json/DefaultFastStringServiceFactory +instanceKlass org/apache/groovy/json/FastStringServiceFactory +instanceKlass org/gradle/internal/reflect/ReflectionCache$CacheEntry +instanceKlass com/google/common/math/IntMath$1 +instanceKlass com/google/common/math/MathPreconditions +instanceKlass com/google/common/math/IntMath +instanceKlass com/google/common/collect/ImmutableCollection$Builder +instanceKlass com/google/common/collect/ImmutableSet$SetBuilderImpl +instanceKlass org/gradle/kotlin/dsl/provider/KotlinGradleApiSpecProvider +instanceKlass org/gradle/initialization/GradleApiSpecProvider$SpecAdapter +instanceKlass org/gradle/initialization/GradleApiSpecProvider +instanceKlass org/gradle/internal/service/DefaultServiceLocator +instanceKlass org/gradle/initialization/GradleApiSpecProvider$Spec +instanceKlass org/gradle/initialization/GradleApiSpecAggregator +instanceKlass com/google/common/base/Function +instanceKlass org/gradle/internal/reflect/CachedInvokable +instanceKlass org/gradle/internal/reflect/ReflectionCache +instanceKlass org/gradle/internal/reflect/DirectInstantiator +instanceKlass org/gradle/initialization/DefaultClassLoaderRegistry +instanceKlass org/gradle/internal/installation/GradleRuntimeShadedJarDetector +instanceKlass sun/net/www/protocol/jar/URLJarFileCallBack +instanceKlass sun/net/www/protocol/jar/JarFileFactory +instanceKlass sun/net/www/protocol/jar/URLJarFile$URLJarFileCloseController +instanceKlass java/net/URLClassLoader$2 +instanceKlass org/objectweb/asm/Type +instanceKlass org/gradle/initialization/DefaultLegacyTypesSupport +instanceKlass org/gradle/api/internal/DynamicModulesClassPathProvider +instanceKlass org/gradle/api/internal/DefaultClassPathProvider +instanceKlass org/gradle/api/internal/ClassPathProvider +instanceKlass org/gradle/api/internal/DefaultClassPathRegistry +instanceKlass org/gradle/api/internal/classpath/DefaultPluginModuleRegistry +instanceKlass org/gradle/api/internal/classpath/ManifestUtil +instanceKlass org/gradle/internal/classloader/ClassLoaderSpec +instanceKlass org/gradle/internal/classloader/ClassLoaderHierarchy +instanceKlass org/gradle/internal/classloader/ClassLoaderVisitor +instanceKlass org/gradle/api/internal/classpath/DefaultModuleRegistry$$Lambda$28 +instanceKlass org/gradle/api/internal/classpath/Module +instanceKlass org/gradle/internal/installation/GradleInstallation$1 +instanceKlass org/gradle/internal/installation/GradleInstallation +instanceKlass org/gradle/internal/classloader/ClasspathUtil +instanceKlass org/gradle/internal/installation/CurrentGradleInstallationLocator +instanceKlass org/gradle/api/tasks/util/PatternSet +instanceKlass org/gradle/api/tasks/util/PatternFilterable +instanceKlass org/gradle/api/tasks/AntBuilderAware +instanceKlass org/gradle/model/internal/inspect/MethodModelRuleExtractor +instanceKlass org/gradle/model/internal/manage/schema/extract/ModelSchemaExtractionStrategy +instanceKlass org/gradle/model/internal/manage/schema/extract/ModelSchemaAspectExtractionStrategy +instanceKlass org/gradle/api/internal/tasks/properties/annotations/AbstractOutputPropertyAnnotationHandler +instanceKlass org/gradle/api/internal/tasks/properties/annotations/PropertyAnnotationHandler +instanceKlass org/gradle/internal/instantiation/InjectAnnotationHandler +instanceKlass org/gradle/api/internal/DocumentationRegistry +instanceKlass org/gradle/internal/event/DefaultListenerManager +instanceKlass org/gradle/cache/internal/locklistener/DefaultFileLockContentionHandler +instanceKlass org/gradle/cache/internal/locklistener/FileLockContentionHandler +instanceKlass org/gradle/internal/remote/internal/inet/InetAddressFactory +instanceKlass org/gradle/api/internal/file/FileLookup +instanceKlass org/gradle/api/internal/file/DefaultFilePropertyFactory +instanceKlass org/gradle/api/internal/file/FileResolver +instanceKlass org/gradle/internal/file/PathToFileResolver +instanceKlass org/gradle/internal/file/RelativeFilePathResolver +instanceKlass org/gradle/api/internal/provider/PropertyHost +instanceKlass org/gradle/api/internal/tasks/TaskDependencyFactory +instanceKlass org/gradle/internal/state/ManagedFactoryRegistry +instanceKlass org/gradle/api/internal/file/FileFactory +instanceKlass org/gradle/execution/DefaultWorkValidationWarningRecorder +instanceKlass org/gradle/execution/WorkValidationWarningReporter +instanceKlass org/gradle/internal/execution/steps/ValidateStep$ValidationWarningRecorder +instanceKlass org/gradle/api/internal/model/NamedObjectInstantiator +instanceKlass org/gradle/internal/state/ManagedFactory +instanceKlass org/gradle/api/internal/file/FilePropertyFactory +instanceKlass org/gradle/api/internal/classpath/DefaultModuleRegistry +instanceKlass org/gradle/cache/GlobalCache +instanceKlass org/gradle/internal/installation/CurrentGradleInstallation +instanceKlass org/gradle/api/internal/classpath/ModuleRegistry +instanceKlass org/gradle/internal/service/CachingServiceLocator +instanceKlass org/gradle/api/internal/cache/StringInterner +instanceKlass com/google/common/collect/Interner +instanceKlass org/gradle/model/internal/inspect/ModelRuleSourceDetector +instanceKlass org/gradle/model/internal/inspect/ModelRuleExtractor +instanceKlass org/gradle/model/internal/manage/schema/extract/ModelSchemaAspectExtractor +instanceKlass org/gradle/model/internal/manage/instance/ManagedProxyFactory +instanceKlass org/gradle/internal/instantiation/InstanceGenerator +instanceKlass org/gradle/internal/operations/BuildOperationProgressEventEmitter +instanceKlass org/gradle/internal/operations/CurrentBuildOperationRef +instanceKlass org/gradle/internal/service/scopes/GlobalScopeServices$$Lambda$27 +instanceKlass org/gradle/internal/environment/GradleBuildEnvironment +instanceKlass org/gradle/internal/execution/history/OverlappingOutputDetector +instanceKlass org/gradle/api/internal/ClassPathRegistry +instanceKlass org/gradle/api/execution/internal/TaskInputsListeners +instanceKlass org/gradle/api/tasks/util/internal/PatternSpecFactory +instanceKlass org/gradle/process/internal/health/memory/JvmMemoryInfo +instanceKlass org/gradle/internal/execution/history/changes/ExecutionStateChangeDetector +instanceKlass org/gradle/api/model/ObjectFactory +instanceKlass org/gradle/internal/reflect/Instantiator +instanceKlass org/gradle/initialization/ClassLoaderRegistry +instanceKlass org/gradle/api/internal/classpath/PluginModuleRegistry +instanceKlass org/gradle/internal/service/ServiceLocator +instanceKlass org/gradle/configuration/ImportsReader +instanceKlass org/gradle/model/internal/manage/binding/StructBindingsStore +instanceKlass org/gradle/model/internal/manage/schema/ModelSchemaStore +instanceKlass org/gradle/model/internal/manage/schema/extract/ModelSchemaExtractor +instanceKlass org/gradle/cache/internal/InMemoryCacheDecoratorFactory +instanceKlass org/gradle/initialization/JdkToolsInitializer +instanceKlass org/gradle/internal/classloader/ClassLoaderFactory +instanceKlass org/gradle/internal/instantiation/InstantiatorFactory +instanceKlass org/gradle/internal/instantiation/PropertyRoleAnnotationHandler +instanceKlass org/gradle/internal/filewatch/FileWatcherFactory +instanceKlass org/gradle/process/internal/health/memory/OsMemoryInfo +instanceKlass org/gradle/internal/resources/ResourceLockCoordinationService +instanceKlass org/gradle/api/internal/collections/DomainObjectCollectionFactory +instanceKlass org/gradle/internal/operations/BuildOperationListenerManager +instanceKlass org/gradle/internal/service/scopes/GradleUserHomeScopeServiceRegistry +instanceKlass org/gradle/process/internal/health/memory/MemoryManager +instanceKlass org/gradle/api/internal/provider/PropertyFactory +instanceKlass org/gradle/internal/operations/BuildOperationIdFactory +instanceKlass org/gradle/initialization/LegacyTypesSupport +instanceKlass org/gradle/internal/logging/progress/ProgressLoggerFactory +instanceKlass org/gradle/internal/logging/progress/ProgressListener +instanceKlass org/gradle/internal/file/Deleter +instanceKlass org/gradle/internal/hash/StreamHasher +instanceKlass org/gradle/cache/internal/CacheFactory +instanceKlass org/gradle/cache/internal/CrossBuildInMemoryCacheFactory +instanceKlass org/gradle/api/internal/file/FileCollectionFactory +instanceKlass org/gradle/cache/internal/ProcessMetaDataProvider +instanceKlass org/gradle/internal/jvm/inspection/JvmMetadataDetector +instanceKlass org/gradle/api/internal/file/collections/DirectoryFileTreeFactory +instanceKlass org/gradle/internal/jvm/inspection/JvmVersionDetector +instanceKlass org/gradle/process/internal/ExecFactory +instanceKlass org/gradle/api/internal/ProcessOperations +instanceKlass org/gradle/process/internal/JavaForkOptionsFactory +instanceKlass org/gradle/process/internal/JavaExecHandleFactory +instanceKlass org/gradle/process/internal/ExecHandleFactory +instanceKlass org/gradle/process/internal/ExecActionFactory +instanceKlass org/gradle/internal/service/scopes/BasicGlobalScopeServices +instanceKlass org/gradle/cache/FileLockManager +instanceKlass org/gradle/launcher/daemon/registry/DaemonDir +instanceKlass org/gradle/internal/concurrent/Synchronizer +instanceKlass org/gradle/cache/internal/CacheSupport +instanceKlass org/gradle/cache/internal/CacheAccessSerializer +instanceKlass org/gradle/launcher/daemon/registry/DaemonRegistry +instanceKlass org/gradle/cache/Cache +instanceKlass org/gradle/launcher/daemon/registry/DaemonRegistryServices +instanceKlass sun/reflect/generics/tree/TypeVariableSignature +instanceKlass org/gradle/launcher/daemon/server/api/DaemonCommandAction +instanceKlass org/gradle/internal/invocation/BuildAction +instanceKlass sun/reflect/generics/tree/MethodTypeSignature +instanceKlass org/gradle/internal/concurrent/ExecutorFactory +instanceKlass org/gradle/launcher/daemon/server/health/DaemonMemoryStatus +instanceKlass org/gradle/launcher/exec/BuildExecuter +instanceKlass org/gradle/launcher/daemon/server/health/DaemonHealthCheck +instanceKlass org/gradle/launcher/daemon/server/health/DaemonHealthStats +instanceKlass org/gradle/launcher/daemon/context/DaemonContext +instanceKlass org/gradle/launcher/daemon/server/MasterExpirationStrategy +instanceKlass org/gradle/launcher/daemon/server/health/HealthExpirationStrategy +instanceKlass org/gradle/launcher/daemon/server/Daemon +instanceKlass org/gradle/internal/serialize/Serializer +instanceKlass org/gradle/internal/event/ListenerManager +instanceKlass org/gradle/launcher/daemon/server/stats/DaemonRunningStats +instanceKlass org/gradle/internal/service/DefaultServiceRegistry$CompositeServiceProvider +instanceKlass org/gradle/internal/service/DefaultServiceRegistry$ParentServices +instanceKlass org/gradle/api/specs/Spec +instanceKlass org/gradle/internal/classpath/DefaultClassPath +instanceKlass org/gradle/internal/classpath/ClassPath +instanceKlass org/gradle/launcher/daemon/server/DaemonServerConnector +instanceKlass org/gradle/launcher/daemon/server/expiry/DaemonExpirationStrategy +instanceKlass org/gradle/launcher/exec/BuildActionExecuter +instanceKlass org/gradle/launcher/daemon/server/scaninfo/DaemonScanInfo +instanceKlass java/lang/reflect/WildcardType +instanceKlass sun/reflect/generics/reflectiveObjects/LazyReflectiveObjectGenerator +instanceKlass java/lang/reflect/TypeVariable +instanceKlass sun/reflect/generics/reflectiveObjects/ParameterizedTypeImpl +instanceKlass sun/reflect/generics/visitor/Reifier +instanceKlass sun/reflect/generics/visitor/TypeTreeVisitor +instanceKlass sun/reflect/generics/tree/ClassSignature +instanceKlass sun/reflect/generics/tree/Signature +instanceKlass sun/reflect/generics/tree/ClassTypeSignature +instanceKlass sun/reflect/generics/tree/SimpleClassTypeSignature +instanceKlass sun/reflect/generics/tree/FieldTypeSignature +instanceKlass sun/reflect/generics/tree/BaseType +instanceKlass sun/reflect/generics/tree/TypeSignature +instanceKlass sun/reflect/generics/tree/ReturnType +instanceKlass sun/reflect/generics/tree/TypeArgument +instanceKlass sun/reflect/generics/tree/FormalTypeParameter +instanceKlass sun/reflect/generics/tree/TypeTree +instanceKlass sun/reflect/generics/tree/Tree +instanceKlass sun/reflect/generics/parser/SignatureParser +instanceKlass sun/reflect/generics/repository/AbstractRepository +instanceKlass sun/reflect/generics/factory/CoreReflectionFactory +instanceKlass sun/reflect/generics/factory/GenericsFactory +instanceKlass sun/reflect/generics/scope/AbstractScope +instanceKlass sun/reflect/generics/scope/Scope +instanceKlass org/gradle/internal/logging/services/DefaultLoggingManager$StartableLoggingSystem +instanceKlass org/gradle/internal/logging/services/DefaultLoggingManager$StartableLoggingRouter +instanceKlass org/gradle/internal/logging/services/DefaultLoggingManager +instanceKlass org/gradle/internal/logging/source/JavaUtilLoggingSystem +instanceKlass org/gradle/internal/logging/slf4j/Slf4jLoggingConfigurer +instanceKlass org/gradle/internal/logging/config/LoggingSystemAdapter +instanceKlass org/gradle/internal/logging/LoggingManagerInternal +instanceKlass org/gradle/internal/logging/StandardOutputCapture +instanceKlass org/gradle/api/logging/LoggingManager +instanceKlass org/gradle/internal/logging/source/StdErrLoggingSystem +instanceKlass org/gradle/internal/logging/source/PrintStreamLoggingSystem$SnapshotImpl +instanceKlass org/gradle/internal/logging/source/PrintStreamLoggingSystem$OutputEventDestination +instanceKlass org/gradle/internal/SystemProperties +instanceKlass org/gradle/internal/logging/source/PrintStreamLoggingSystem$1 +instanceKlass org/gradle/internal/service/AnnotatedServiceLifecycleHandler +instanceKlass org/gradle/internal/logging/events/operations/StyledTextBuildOperationProgressDetails +instanceKlass org/gradle/internal/operations/logging/StyledTextBuildOperationProgressDetails +instanceKlass org/gradle/internal/io/TextStream +instanceKlass org/gradle/internal/logging/source/PrintStreamLoggingSystem +instanceKlass org/gradle/internal/logging/source/StdOutLoggingSystem +instanceKlass java/lang/reflect/ParameterizedType +instanceKlass org/gradle/internal/logging/sink/OutputEventListenerManager$1 +instanceKlass org/gradle/internal/logging/services/TextStreamOutputEventListener +instanceKlass org/gradle/internal/logging/services/DefaultLoggingManagerFactory +instanceKlass org/gradle/internal/logging/sink/OutputEventListenerManager +instanceKlass org/gradle/internal/logging/services/LoggingServiceRegistry$1 +instanceKlass org/gradle/internal/logging/config/LoggingConfigurer +instanceKlass org/gradle/internal/logging/config/LoggingSourceSystem +instanceKlass org/gradle/launcher/daemon/configuration/DefaultDaemonServerConfiguration +instanceKlass org/gradle/internal/nativeintegration/jansi/JansiStorage +instanceKlass org/fusesource/jansi/Ansi +instanceKlass org/gradle/internal/nativeintegration/jansi/JansiLibrary +instanceKlass org/gradle/internal/nativeintegration/jansi/JansiLibraryFactory$1 +instanceKlass net/rubygrapefruit/platform/internal/jni/AbstractFileEventFunctions +instanceKlass jdk/internal/logger/DefaultLoggerFinder$1 +instanceKlass java/util/logging/Logger$SystemLoggerHelper$1 +instanceKlass java/util/logging/Logger$SystemLoggerHelper +instanceKlass java/util/logging/LogManager$4 +instanceKlass jdk/internal/logger/BootstrapLogger$BootstrapExecutors +instanceKlass jdk/internal/logger/BootstrapLogger$RedirectedLoggers +instanceKlass java/lang/ModuleLayer$$Lambda$26 +instanceKlass java/util/Spliterators$1Adapter +instanceKlass java/util/Spliterators$ArraySpliterator +instanceKlass java/util/Spliterator$OfDouble +instanceKlass java/util/Spliterator$OfLong +instanceKlass java/util/Spliterator$OfInt +instanceKlass java/util/Spliterator$OfPrimitive +instanceKlass java/util/Spliterators$EmptySpliterator +instanceKlass java/util/Spliterators +instanceKlass jdk/internal/logger/BootstrapLogger$DetectBackend$1 +instanceKlass jdk/internal/logger/BootstrapLogger$DetectBackend +instanceKlass jdk/internal/logger/BootstrapLogger +instanceKlass sun/util/logging/PlatformLogger$ConfigurableBridge +instanceKlass sun/util/logging/PlatformLogger$Bridge +instanceKlass java/lang/System$Logger +instanceKlass java/util/stream/Streams +instanceKlass java/util/stream/Streams$AbstractStreamBuilderImpl +instanceKlass java/util/stream/Stream$Builder +instanceKlass java/util/stream/Sink$ChainedReference +instanceKlass java/util/stream/FindOps$FindSink$OfRef$$Lambda$25 +instanceKlass java/util/stream/FindOps$FindSink$OfRef$$Lambda$24 +instanceKlass java/util/stream/FindOps$FindSink$OfRef$$Lambda$23 +instanceKlass java/util/stream/FindOps$FindSink$OfRef$$Lambda$22 +instanceKlass java/util/stream/FindOps$FindOp +instanceKlass java/util/stream/TerminalOp +instanceKlass java/util/stream/FindOps$FindSink +instanceKlass java/util/stream/TerminalSink +instanceKlass java/util/stream/Sink +instanceKlass java/util/function/Consumer +instanceKlass java/util/stream/FindOps +instanceKlass java/util/logging/Level$KnownLevel$$Lambda$21 +instanceKlass sun/reflect/annotation/AnnotationParser +instanceKlass java/util/EnumMap$1 +instanceKlass java/util/stream/StreamOpFlag$MaskBuilder +instanceKlass java/util/stream/PipelineHelper +instanceKlass java/util/stream/Stream +instanceKlass java/util/stream/BaseStream +instanceKlass java/util/stream/StreamSupport +instanceKlass java/util/ArrayList$ArrayListSpliterator +instanceKlass java/util/Spliterator +instanceKlass java/util/logging/Level$$Lambda$20 +instanceKlass java/util/Hashtable$Enumerator +instanceKlass java/util/Collections$3 +instanceKlass java/util/logging/LogManager$LoggerContext$1 +instanceKlass java/util/logging/LogManager$VisitedLoggers +instanceKlass java/util/function/Predicate +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass sun/invoke/util/ValueConversions$WrapperCache +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/MethodHandles$1 +instanceKlass java/lang/Byte$ByteCache +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/StringConcatFactory$Stringifiers +instanceKlass java/lang/StringConcatHelper +instanceKlass java/lang/invoke/StringConcatFactory$MethodHandleInlineCopyStrategy$3 +instanceKlass java/lang/invoke/StringConcatFactory$MethodHandleInlineCopyStrategy$2 +instanceKlass java/lang/invoke/StringConcatFactory$MethodHandleInlineCopyStrategy$1 +instanceKlass java/lang/invoke/StringConcatFactory$MethodHandleInlineCopyStrategy +instanceKlass java/lang/invoke/StringConcatFactory$RecipeElement +instanceKlass java/lang/invoke/StringConcatFactory$Recipe +instanceKlass java/lang/invoke/StringConcatFactory$1 +instanceKlass java/lang/invoke/StringConcatFactory +instanceKlass java/util/logging/LogManager$2 +instanceKlass java/lang/System$LoggerFinder +instanceKlass sun/security/util/SecurityConstants +instanceKlass java/security/AccessController$1 +instanceKlass java/util/logging/LogManager$LoggingProviderAccess +instanceKlass sun/util/logging/internal/LoggingProviderImpl$LogManagerAccess +instanceKlass java/lang/Shutdown$Lock +instanceKlass java/lang/Shutdown +instanceKlass java/lang/ApplicationShutdownHooks$1 +instanceKlass java/lang/ApplicationShutdownHooks +instanceKlass java/util/Collections$SynchronizedMap +instanceKlass java/util/logging/LogManager$LogNode +instanceKlass java/util/logging/LogManager$LoggerContext +instanceKlass java/util/logging/LogManager$1 +instanceKlass java/util/logging/LogManager +instanceKlass java/util/logging/Logger$ConfigurationData +instanceKlass java/util/logging/Logger$LoggerBundle +instanceKlass java/util/logging/Level +instanceKlass java/util/logging/Handler +instanceKlass java/util/logging/Logger +instanceKlass net/rubygrapefruit/platform/internal/jni/NativeLogger +instanceKlass net/rubygrapefruit/platform/file/FileEvents +instanceKlass java/util/RegularEnumSet$EnumSetIterator +instanceKlass net/rubygrapefruit/platform/internal/jni/NativeLibraryFunctions +instanceKlass java/lang/ClassLoader$NativeLibrary$Unloader +instanceKlass java/nio/channels/spi/AbstractInterruptibleChannel$1 +instanceKlass sun/nio/ch/Interruptible +instanceKlass sun/nio/ch/FileKey +instanceKlass sun/nio/ch/FileLockTable +instanceKlass sun/nio/ch/NativeThread +instanceKlass java/nio/channels/FileLock +instanceKlass sun/nio/ch/NativeDispatcher +instanceKlass sun/nio/ch/NativeThreadSet +instanceKlass sun/nio/ch/IOUtil$1 +instanceKlass sun/nio/ch/IOUtil +instanceKlass java/nio/file/attribute/FileAttribute +instanceKlass java/nio/channels/spi/AbstractInterruptibleChannel +instanceKlass java/nio/channels/InterruptibleChannel +instanceKlass java/nio/channels/ScatteringByteChannel +instanceKlass java/nio/channels/GatheringByteChannel +instanceKlass java/nio/channels/SeekableByteChannel +instanceKlass java/nio/channels/ByteChannel +instanceKlass java/nio/channels/WritableByteChannel +instanceKlass java/nio/channels/ReadableByteChannel +instanceKlass java/nio/channels/Channel +instanceKlass java/util/Formattable +instanceKlass java/util/Formatter$Conversion +instanceKlass java/util/Formatter$Flags +instanceKlass java/util/Formatter$FormatSpecifier +instanceKlass java/util/Formatter$FixedString +instanceKlass java/util/Formatter$FormatString +instanceKlass sun/util/resources/Bundles$2 +instanceKlass sun/util/resources/Bundles$CacheKeyReference +instanceKlass java/util/ResourceBundle$ResourceBundleProviderHelper$$Lambda$19 +instanceKlass java/util/ResourceBundle$ResourceBundleProviderHelper +instanceKlass java/util/ArrayList$SubList$1 +instanceKlass sun/util/resources/LocaleData$LocaleDataResourceBundleProvider +instanceKlass java/util/spi/ResourceBundleProvider +instanceKlass sun/util/resources/Bundles$CacheKey +instanceKlass java/util/ResourceBundle$1 +instanceKlass jdk/internal/access/JavaUtilResourceBundleAccess +instanceKlass sun/util/resources/Bundles +instanceKlass sun/util/resources/LocaleData$LocaleDataStrategy +instanceKlass sun/util/resources/Bundles$Strategy +instanceKlass sun/util/resources/LocaleData$1 +instanceKlass sun/util/locale/provider/CalendarDataUtility +instanceKlass sun/util/locale/provider/AvailableLanguageTags +instanceKlass sun/util/locale/provider/JRELocaleProviderAdapter$$Lambda$18 +instanceKlass java/util/ServiceLoader$ProviderImpl +instanceKlass java/util/ServiceLoader$Provider +instanceKlass java/util/ServiceLoader$1 +instanceKlass sun/util/resources/cldr/provider/CLDRLocaleDataMetaInfo +instanceKlass jdk/internal/module/ModulePatcher$PatchedModuleReader +instanceKlass java/util/ServiceLoader$3 +instanceKlass java/util/ServiceLoader$2 +instanceKlass java/util/ServiceLoader$LazyClassPathLookupIterator +instanceKlass java/util/concurrent/CopyOnWriteArrayList$COWIterator +instanceKlass java/util/ServiceLoader$ModuleServicesLookupIterator +instanceKlass java/util/ServiceLoader +instanceKlass sun/util/cldr/CLDRLocaleProviderAdapter$1 +instanceKlass sun/util/locale/StringTokenIterator +instanceKlass sun/util/locale/ParseStatus +instanceKlass sun/util/cldr/CLDRBaseLocaleDataMetaInfo +instanceKlass sun/util/locale/provider/LocaleDataMetaInfo +instanceKlass sun/util/locale/provider/LocaleProviderAdapter$1 +instanceKlass java/util/ResourceBundle +instanceKlass java/util/ResourceBundle$Control +instanceKlass sun/util/resources/LocaleData +instanceKlass sun/util/locale/provider/LocaleResources +instanceKlass sun/util/locale/LanguageTag +instanceKlass sun/util/locale/provider/ResourceBundleBasedAdapter +instanceKlass sun/util/locale/provider/LocaleProviderAdapter +instanceKlass java/util/spi/LocaleServiceProvider +instanceKlass java/text/DecimalFormatSymbols +instanceKlass java/util/Locale$1 +instanceKlass java/util/regex/Pattern$$Lambda$17 +instanceKlass java/util/Formatter +instanceKlass net/rubygrapefruit/platform/internal/LibraryDef +instanceKlass net/rubygrapefruit/platform/internal/NativeLibraryLocator +instanceKlass net/rubygrapefruit/platform/internal/NativeLibraryLoader +instanceKlass net/rubygrapefruit/platform/Process +instanceKlass net/rubygrapefruit/platform/internal/Platform +instanceKlass net/rubygrapefruit/platform/Native +instanceKlass java/util/TreeMap$Entry +instanceKlass java/lang/ProcessEnvironment$CheckedEntry +instanceKlass java/lang/ProcessEnvironment$CheckedEntrySet$1 +instanceKlass java/util/NavigableMap +instanceKlass java/util/SortedMap +instanceKlass java/lang/ProcessEnvironment$EntryComparator +instanceKlass java/lang/ProcessEnvironment$NameComparator +instanceKlass org/gradle/api/internal/file/temp/DefaultTemporaryFileProvider +instanceKlass org/gradle/internal/nativeintegration/services/NativeServices$1 +instanceKlass org/gradle/internal/file/StatStatistics +instanceKlass org/gradle/internal/file/StatStatistics$Collector +instanceKlass org/gradle/internal/nativeintegration/filesystem/services/GenericFileSystem +instanceKlass org/gradle/internal/service/InjectUtil +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass java/lang/ClassValue$Version +instanceKlass java/lang/ClassValue$Identity +instanceKlass java/lang/ClassValue +instanceKlass java/lang/invoke/MethodHandleImpl$ArrayAccessor +instanceKlass java/lang/invoke/MethodHandleImpl$2 +instanceKlass java/lang/invoke/MethodHandleImpl$LoopClauses +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/internal/service/DefaultServiceRegistry$1 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass org/gradle/internal/nativeintegration/filesystem/services/GenericFileSystem$Factory +instanceKlass org/gradle/api/internal/file/temp/TemporaryFileProvider +instanceKlass org/gradle/internal/nativeintegration/filesystem/FileCanonicalizer +instanceKlass org/gradle/internal/nativeintegration/filesystem/FileSystem +instanceKlass org/gradle/internal/file/Stat +instanceKlass org/gradle/internal/file/Chmod +instanceKlass org/gradle/internal/nativeintegration/filesystem/FileModeMutator +instanceKlass org/gradle/internal/nativeintegration/filesystem/FileModeAccessor +instanceKlass org/gradle/internal/nativeintegration/filesystem/Symlink +instanceKlass org/gradle/internal/nativeintegration/filesystem/services/FileSystemServices +instanceKlass org/gradle/internal/nativeintegration/jansi/DefaultJansiRuntimeResolver +instanceKlass org/gradle/internal/nativeintegration/jansi/JansiRuntimeResolver +instanceKlass org/gradle/internal/nativeintegration/jansi/JansiLibraryFactory +instanceKlass org/gradle/internal/nativeintegration/jansi/JansiStorageLocator +instanceKlass org/gradle/internal/nativeintegration/jansi/JansiBootPathConfigurer +instanceKlass java/lang/Class$3 +instanceKlass org/gradle/internal/service/DefaultServiceRegistry$ClassInspector$ClassDetails +instanceKlass java/util/concurrent/ConcurrentLinkedQueue$Node +instanceKlass org/gradle/internal/reflect/JavaMethod +instanceKlass org/gradle/internal/service/AbstractServiceMethod +instanceKlass java/util/LinkedList$ListItr +instanceKlass net/rubygrapefruit/platform/memory/Memory +instanceKlass net/rubygrapefruit/platform/file/PosixFiles +instanceKlass net/rubygrapefruit/platform/file/Files +instanceKlass org/gradle/internal/jvm/Jvm +instanceKlass org/gradle/internal/jvm/JavaInfo +instanceKlass net/rubygrapefruit/platform/SystemInfo +instanceKlass net/rubygrapefruit/platform/file/FileSystems +instanceKlass net/rubygrapefruit/platform/WindowsRegistry +instanceKlass org/gradle/internal/os/OperatingSystem +instanceKlass org/gradle/internal/service/RelevantMethodsBuilder +instanceKlass org/gradle/internal/Cast +instanceKlass org/gradle/internal/service/ServiceMethod +instanceKlass org/gradle/internal/service/MethodHandleBasedServiceMethodFactory +instanceKlass org/gradle/internal/service/DefaultServiceMethodFactory +instanceKlass org/gradle/internal/service/ServiceMethodFactory +instanceKlass org/gradle/internal/service/RelevantMethods +instanceKlass org/gradle/internal/service/DefaultServiceRegistry$ClassInspector +instanceKlass org/gradle/internal/service/DefaultServiceRegistry$ThisAsService +instanceKlass org/gradle/internal/concurrent/CompositeStoppable$1 +instanceKlass org/gradle/internal/concurrent/CompositeStoppable +instanceKlass org/gradle/internal/service/AnnotatedServiceLifecycleHandler$Registration +instanceKlass org/gradle/internal/service/DefaultServiceRegistry$OwnServices +instanceKlass org/gradle/initialization/GradleUserHomeDirProvider +instanceKlass org/gradle/internal/nativeintegration/NativeCapabilities +instanceKlass org/gradle/internal/nativeintegration/filesystem/FileMetadataAccessor +instanceKlass org/gradle/internal/nativeintegration/network/HostnameLookup +instanceKlass org/gradle/internal/nativeintegration/ProcessEnvironment +instanceKlass net/rubygrapefruit/platform/ProcessLauncher +instanceKlass net/rubygrapefruit/platform/NativeIntegration +instanceKlass org/gradle/internal/nativeintegration/console/ConsoleDetector +instanceKlass org/gradle/internal/service/ServiceRegistration +instanceKlass org/gradle/internal/service/ServiceProvider$Visitor +instanceKlass org/gradle/internal/service/DefaultServiceRegistry$ManagedObjectServiceProvider +instanceKlass org/gradle/internal/service/Service +instanceKlass org/gradle/internal/service/ServiceProvider +instanceKlass org/gradle/internal/concurrent/Stoppable +instanceKlass org/gradle/internal/service/DefaultServiceRegistry +instanceKlass org/gradle/internal/service/ContainsServices +instanceKlass org/gradle/internal/serialize/AbstractDecoder +instanceKlass org/gradle/internal/serialize/Decoder +instanceKlass org/gradle/launcher/bootstrap/EntryPoint$RecordingExecutionListener +instanceKlass org/gradle/internal/logging/events/operations/LogEventBuildOperationProgressDetails +instanceKlass org/gradle/internal/operations/logging/LogEventBuildOperationProgressDetails +instanceKlass org/gradle/internal/logging/slf4j/BuildOperationAwareLogger +instanceKlass org/gradle/internal/logging/sink/OutputEventRenderer$2 +instanceKlass org/gradle/internal/dispatch/ReflectionDispatch +instanceKlass org/gradle/internal/logging/sink/OutputEventRenderer$1 +instanceKlass org/gradle/internal/logging/sink/OutputEventRenderer$LazyListener +instanceKlass org/gradle/internal/logging/events/OutputEventListener$1 +instanceKlass java/lang/reflect/Proxy$ProxyBuilder$1 +instanceKlass java/lang/reflect/ProxyGenerator$ExceptionTableEntry +instanceKlass java/lang/reflect/ProxyGenerator$PrimitiveTypeInfo +instanceKlass java/lang/reflect/ProxyGenerator$FieldInfo +instanceKlass java/lang/reflect/ProxyGenerator$ConstantPool$Entry +instanceKlass java/lang/reflect/ProxyGenerator$MethodInfo +instanceKlass java/lang/reflect/ProxyGenerator$ProxyMethod +instanceKlass java/lang/reflect/ProxyGenerator$ConstantPool +instanceKlass java/lang/reflect/ProxyGenerator +instanceKlass java/lang/reflect/Proxy$$Lambda$16 +instanceKlass java/lang/PublicMethods +instanceKlass java/lang/reflect/Proxy$ProxyBuilder +instanceKlass jdk/internal/loader/AbstractClassLoaderValue$Memoizer +instanceKlass java/lang/reflect/Proxy$$Lambda$15 +instanceKlass java/lang/reflect/Proxy +instanceKlass org/gradle/internal/dispatch/ProxyDispatchAdapter$DispatchingInvocationHandler +instanceKlass java/lang/reflect/InvocationHandler +instanceKlass org/gradle/internal/dispatch/ProxyDispatchAdapter +instanceKlass org/gradle/internal/logging/events/operations/ProgressStartBuildOperationProgressDetails +instanceKlass org/gradle/internal/operations/logging/ProgressStartBuildOperationProgressDetails +instanceKlass org/gradle/internal/logging/sink/OutputEventTransformer +instanceKlass org/gradle/internal/exceptions/MultiCauseException +instanceKlass org/gradle/internal/event/AbstractBroadcastDispatch +instanceKlass org/gradle/internal/event/ListenerBroadcast +instanceKlass org/gradle/internal/dispatch/Dispatch +instanceKlass org/gradle/internal/logging/console/ColorMap +instanceKlass org/gradle/internal/nativeintegration/console/ConsoleMetaData +instanceKlass org/gradle/internal/Factory +instanceKlass org/gradle/internal/logging/format/LogHeaderFormatter +instanceKlass org/gradle/internal/logging/text/StyledTextOutput +instanceKlass org/gradle/api/logging/StandardOutputListener +instanceKlass org/gradle/internal/logging/config/LoggingSystem$Snapshot +instanceKlass org/gradle/internal/logging/events/OutputEvent +instanceKlass org/gradle/internal/logging/sink/OutputEventRenderer +instanceKlass org/gradle/internal/logging/config/LoggingRouter +instanceKlass org/gradle/internal/logging/LoggingOutputInternal +instanceKlass org/gradle/api/logging/LoggingOutput +instanceKlass org/gradle/internal/logging/config/LoggingSystem +instanceKlass org/gradle/internal/logging/slf4j/OutputEventListenerBackedLoggerContext$NoOpLogger +instanceKlass org/gradle/api/logging/Logger +instanceKlass java/util/concurrent/atomic/AtomicReference +instanceKlass org/gradle/internal/time/TimeSource$1 +instanceKlass org/gradle/internal/time/TimeSource +instanceKlass org/gradle/internal/time/MonotonicClock +instanceKlass org/gradle/internal/time/CountdownTimer +instanceKlass org/gradle/internal/time/Timer +instanceKlass org/gradle/internal/time/Clock +instanceKlass org/gradle/internal/time/Time +instanceKlass org/gradle/internal/logging/events/OutputEventListener +instanceKlass org/gradle/internal/logging/slf4j/OutputEventListenerBackedLoggerContext +instanceKlass org/slf4j/impl/StaticLoggerBinder +instanceKlass org/slf4j/spi/LoggerFactoryBinder +instanceKlass java/net/URLClassLoader$3$1 +instanceKlass java/net/URLClassLoader$3 +instanceKlass jdk/internal/loader/URLClassPath$1 +instanceKlass java/lang/CompoundEnumeration +instanceKlass jdk/internal/loader/BuiltinClassLoader$1 +instanceKlass java/util/Collections$EmptyEnumeration +instanceKlass org/slf4j/helpers/Util +instanceKlass org/slf4j/helpers/NOPLoggerFactory +instanceKlass java/util/concurrent/LinkedBlockingQueue$Node +instanceKlass java/util/concurrent/locks/AbstractQueuedSynchronizer$ConditionObject +instanceKlass java/util/concurrent/locks/Condition +instanceKlass java/util/concurrent/locks/AbstractQueuedSynchronizer$Node +instanceKlass java/util/concurrent/BlockingQueue +instanceKlass org/slf4j/Logger +instanceKlass org/slf4j/helpers/SubstituteLoggerFactory +instanceKlass org/slf4j/event/LoggingEvent +instanceKlass org/slf4j/ILoggerFactory +instanceKlass org/slf4j/LoggerFactory +instanceKlass org/slf4j/helpers/BasicMarker +instanceKlass org/slf4j/Marker +instanceKlass org/slf4j/helpers/BasicMarkerFactory +instanceKlass org/slf4j/IMarkerFactory +instanceKlass org/slf4j/MarkerFactory +instanceKlass org/gradle/api/logging/Logging +instanceKlass org/gradle/launcher/daemon/configuration/DaemonServerConfiguration +instanceKlass org/gradle/internal/service/ServiceRegistry +instanceKlass org/gradle/internal/service/ServiceLookup +instanceKlass org/gradle/api/Action +instanceKlass org/gradle/internal/logging/text/StyledTextOutputFactory +instanceKlass org/gradle/api/logging/configuration/LoggingConfiguration +instanceKlass org/gradle/initialization/BuildClientMetaData +instanceKlass org/gradle/launcher/bootstrap/ExecutionCompleter +instanceKlass org/gradle/launcher/bootstrap/ExecutionListener +instanceKlass org/gradle/launcher/bootstrap/EntryPoint +instanceKlass java/io/FilePermissionCollection$1 +instanceKlass java/io/FileInputStream$1 +instanceKlass java/security/Security$1 +instanceKlass java/security/Security +instanceKlass sun/security/util/SecurityProperties +instanceKlass sun/security/util/FilePermCompat +instanceKlass java/io/FilePermission$1 +instanceKlass jdk/internal/access/JavaIOFilePermissionAccess +instanceKlass sun/net/www/MessageHeader +instanceKlass java/net/URLConnection +instanceKlass java/util/LinkedList$Node +instanceKlass java/net/URLClassLoader$1 +instanceKlass java/net/URLClassLoader$7 +instanceKlass jdk/internal/access/JavaNetURLClassLoaderAccess +instanceKlass jdk/internal/jimage/ImageLocation +instanceKlass jdk/internal/jimage/decompressor/Decompressor +instanceKlass jdk/internal/jimage/ImageStringsReader +instanceKlass jdk/internal/jimage/ImageStrings +instanceKlass jdk/internal/jimage/ImageHeader +instanceKlass jdk/internal/jimage/NativeImageBuffer$1 +instanceKlass jdk/internal/jimage/NativeImageBuffer +instanceKlass jdk/internal/jimage/BasicImageReader$1 +instanceKlass jdk/internal/jimage/BasicImageReader +instanceKlass jdk/internal/jimage/ImageReader +instanceKlass jdk/internal/jimage/ImageReaderFactory$1 +instanceKlass java/nio/file/Paths +instanceKlass jdk/internal/jimage/ImageReaderFactory +instanceKlass jdk/internal/module/SystemModuleFinders$SystemImage +instanceKlass jdk/internal/module/SystemModuleFinders$SystemModuleReader +instanceKlass java/lang/module/ModuleReader +instanceKlass jdk/internal/loader/BuiltinClassLoader$5 +instanceKlass jdk/internal/loader/BuiltinClassLoader$2 +instanceKlass jdk/internal/module/Resources +instanceKlass jdk/internal/util/ArraysSupport +instanceKlass java/io/RandomAccessFile$1 +instanceKlass java/lang/invoke/VarHandle$AccessDescriptor +instanceKlass org/gradle/api/Action +instanceKlass org/gradle/internal/IoActions +instanceKlass java/util/Properties$LineReader +instanceKlass java/util/regex/Pattern$BmpCharPredicate$$Lambda$14 +instanceKlass java/util/regex/Pattern$$Lambda$13 +instanceKlass java/util/regex/Pattern$$Lambda$12 +instanceKlass java/util/regex/Pattern$BitClass$$Lambda$11 +instanceKlass java/util/regex/Pattern$TreeInfo +instanceKlass java/util/regex/Pattern$CharPredicate$$Lambda$10 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass java/util/regex/CharPredicates$$Lambda$9 +instanceKlass org/gradle/api/Transformer +instanceKlass org/gradle/util/internal/GUtil +instanceKlass java/util/zip/ZipFile$$Lambda$8 +instanceKlass org/gradle/api/internal/classpath/DefaultModuleRegistry$$Lambda$7 +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass java/util/LinkedHashMap$LinkedHashIterator +instanceKlass java/util/Collections$1 +instanceKlass org/gradle/api/internal/classpath/DefaultModuleRegistry$DefaultModule +instanceKlass java/util/regex/IntHashSet +instanceKlass java/util/regex/Matcher +instanceKlass java/util/regex/MatchResult +instanceKlass java/util/regex/Pattern$$Lambda$6 +instanceKlass java/util/regex/CharPredicates$$Lambda$5 +instanceKlass java/util/regex/Pattern$BmpCharPredicate +instanceKlass java/util/regex/Pattern$CharPredicate +instanceKlass java/util/regex/CharPredicates +instanceKlass java/util/regex/ASCII +instanceKlass java/util/regex/Pattern$Node +instanceKlass java/util/regex/Pattern +instanceKlass org/gradle/internal/service/CachingServiceLocator +instanceKlass java/io/Reader +instanceKlass org/gradle/internal/service/DefaultServiceLocator +instanceKlass org/gradle/internal/service/ServiceLocator +instanceKlass org/gradle/internal/classloader/DefaultClassLoaderFactory +instanceKlass org/gradle/api/internal/classpath/ManifestUtil +instanceKlass org/gradle/internal/Cast +instanceKlass java/util/AbstractList$Itr +instanceKlass org/gradle/internal/classloader/ClassLoaderSpec +instanceKlass org/gradle/internal/classloader/ClassLoaderVisitor +instanceKlass java/util/Collections$EmptyIterator +instanceKlass org/gradle/internal/classpath/DefaultClassPath +instanceKlass org/gradle/internal/classpath/ClassPath +instanceKlass org/gradle/internal/installation/GradleInstallation$1 +instanceKlass java/io/FileFilter +instanceKlass org/gradle/internal/installation/GradleInstallation +instanceKlass org/gradle/internal/classloader/ClasspathUtil +instanceKlass org/gradle/internal/installation/CurrentGradleInstallationLocator +instanceKlass org/gradle/internal/installation/CurrentGradleInstallation +instanceKlass org/gradle/api/internal/classpath/DefaultModuleRegistry$$Lambda$4 +instanceKlass org/gradle/api/specs/Spec +instanceKlass java/lang/invoke/LambdaForm$DMH +instanceKlass sun/reflect/misc/ReflectUtil +instanceKlass org/gradle/api/internal/classpath/Module +instanceKlass org/gradle/api/internal/classpath/DefaultModuleRegistry +instanceKlass org/gradle/cache/GlobalCache +instanceKlass org/gradle/api/internal/DefaultClassPathProvider +instanceKlass org/gradle/api/internal/ClassPathProvider +instanceKlass org/gradle/api/internal/DefaultClassPathRegistry +instanceKlass org/gradle/internal/classloader/ClassLoaderHierarchy +instanceKlass org/gradle/internal/classloader/ClassLoaderFactory +instanceKlass org/gradle/api/internal/ClassPathRegistry +instanceKlass org/gradle/api/internal/classpath/ModuleRegistry +instanceKlass org/gradle/launcher/bootstrap/ProcessBootstrap +instanceKlass java/lang/PublicMethods$Key +instanceKlass java/lang/PublicMethods$MethodList +instanceKlass org/gradle/launcher/daemon/bootstrap/GradleDaemon +instanceKlass java/security/SecureClassLoader$DebugHolder +instanceKlass java/security/Permissions$1 +instanceKlass java/security/PermissionCollection +instanceKlass java/security/SecureClassLoader$1 +instanceKlass java/security/SecureClassLoader$CodeSourceKey +instanceKlass java/util/zip/Checksum$1 +instanceKlass java/util/zip/CRC32 +instanceKlass java/util/zip/Checksum +instanceKlass sun/nio/ByteBuffered +instanceKlass java/lang/Package$VersionInfo +instanceKlass java/lang/NamedPackage +instanceKlass sun/security/util/ManifestEntryVerifier +instanceKlass jdk/internal/loader/Resource +instanceKlass java/util/StringTokenizer +instanceKlass java/util/jar/Attributes$Name +instanceKlass java/util/jar/Attributes +instanceKlass java/security/CodeSigner +instanceKlass sun/security/util/Debug +instanceKlass java/util/jar/JarVerifier +instanceKlass java/util/zip/ZipFile$InflaterCleanupAction +instanceKlass java/util/zip/Inflater$InflaterZStreamRef +instanceKlass java/util/zip/Inflater +instanceKlass java/util/zip/ZipEntry +instanceKlass java/util/jar/JarFile$1 +instanceKlass jdk/internal/util/jar/JarIndex +instanceKlass java/nio/Bits$1 +instanceKlass jdk/internal/access/JavaNioAccess$BufferPool +instanceKlass java/nio/Bits +instanceKlass sun/nio/ch/DirectBuffer +instanceKlass jdk/internal/perf/PerfCounter$CoreCounters +instanceKlass jdk/internal/perf/Perf +instanceKlass jdk/internal/perf/Perf$GetPerfAction +instanceKlass jdk/internal/perf/PerfCounter +instanceKlass java/util/zip/ZipUtils +instanceKlass java/util/zip/ZipFile$Source$End +instanceKlass java/lang/invoke/VarForm +instanceKlass java/lang/invoke/VarHandleGuards +instanceKlass jdk/internal/util/Preconditions$1 +instanceKlass java/lang/invoke/VarHandle$1 +instanceKlass java/lang/invoke/VarHandles +instanceKlass java/util/concurrent/atomic/AtomicBoolean +instanceKlass java/io/RandomAccessFile$2 +instanceKlass jdk/internal/access/JavaIORandomAccessFileAccess +instanceKlass java/io/RandomAccessFile +instanceKlass java/io/DataInput +instanceKlass java/io/DataOutput +instanceKlass java/nio/file/attribute/FileTime +instanceKlass sun/nio/fs/WindowsNativeDispatcher$CompletionStatus +instanceKlass sun/nio/fs/WindowsNativeDispatcher$AclInformation +instanceKlass sun/nio/fs/WindowsNativeDispatcher$Account +instanceKlass sun/nio/fs/WindowsNativeDispatcher$DiskFreeSpace +instanceKlass sun/nio/fs/WindowsNativeDispatcher$VolumeInformation +instanceKlass sun/nio/fs/WindowsNativeDispatcher$FirstStream +instanceKlass sun/nio/fs/WindowsNativeDispatcher$FirstFile +instanceKlass java/util/Enumeration +instanceKlass java/util/ArrayDeque$DeqIterator +instanceKlass java/lang/ClassLoaderHelper +instanceKlass java/lang/ClassLoader$NativeLibrary +instanceKlass java/lang/ClassLoader$2 +instanceKlass sun/nio/fs/WindowsNativeDispatcher$1 +instanceKlass sun/nio/fs/WindowsNativeDispatcher +instanceKlass sun/nio/fs/NativeBuffer$Deallocator +instanceKlass sun/nio/fs/NativeBuffer +instanceKlass sun/nio/fs/NativeBuffers +instanceKlass sun/nio/fs/WindowsFileAttributes +instanceKlass java/nio/file/attribute/DosFileAttributes +instanceKlass sun/nio/fs/AbstractBasicFileAttributeView +instanceKlass sun/nio/fs/DynamicFileAttributeView +instanceKlass sun/nio/fs/WindowsFileAttributeViews +instanceKlass sun/nio/fs/Util +instanceKlass java/nio/file/attribute/BasicFileAttributeView +instanceKlass java/nio/file/attribute/FileAttributeView +instanceKlass java/nio/file/attribute/AttributeView +instanceKlass java/nio/file/Files +instanceKlass java/nio/file/CopyOption +instanceKlass java/nio/file/attribute/BasicFileAttributes +instanceKlass sun/nio/fs/WindowsPath +instanceKlass java/nio/file/Path +instanceKlass java/nio/file/Watchable +instanceKlass java/net/URI$Parser +instanceKlass sun/nio/fs/WindowsPathParser$Result +instanceKlass sun/nio/fs/WindowsPathParser +instanceKlass java/util/Arrays$ArrayItr +instanceKlass java/nio/file/FileSystem +instanceKlass java/nio/file/OpenOption +instanceKlass java/nio/file/spi/FileSystemProvider +instanceKlass sun/nio/fs/DefaultFileSystemProvider +instanceKlass java/nio/file/FileSystems$DefaultFileSystemHolder$1 +instanceKlass java/nio/file/FileSystems$DefaultFileSystemHolder +instanceKlass java/nio/file/FileSystems +instanceKlass java/util/zip/ZipFile$Source$Key +instanceKlass java/util/zip/ZipFile$Source +instanceKlass java/util/zip/ZipFile$CleanableResource +instanceKlass java/util/zip/ZipCoder +instanceKlass java/lang/Runtime$Version +instanceKlass java/util/jar/JavaUtilJarAccessImpl +instanceKlass jdk/internal/access/JavaUtilJarAccess +instanceKlass sun/nio/cs/ThreadLocalCoders$Cache +instanceKlass sun/nio/cs/ThreadLocalCoders +instanceKlass jdk/internal/loader/FileURLMapper +instanceKlass jdk/internal/loader/URLClassPath$JarLoader$1 +instanceKlass java/util/zip/ZipFile$1 +instanceKlass jdk/internal/access/JavaUtilZipFileAccess +instanceKlass java/util/zip/ZipFile +instanceKlass java/util/zip/ZipConstants +instanceKlass jdk/internal/loader/URLClassPath$Loader +instanceKlass jdk/internal/loader/URLClassPath$3 +instanceKlass java/security/PrivilegedExceptionAction +instanceKlass sun/net/util/URLUtil +instanceKlass sun/launcher/LauncherHelper +instanceKlass jdk/internal/vm/PostVMInitHook$1 +instanceKlass java/lang/StringCoding$StringEncoder +instanceKlass jdk/internal/util/EnvUtils +instanceKlass jdk/internal/vm/PostVMInitHook$2 +instanceKlass sun/util/locale/InternalLocaleBuilder$CaseInsensitiveChar +instanceKlass sun/util/locale/InternalLocaleBuilder +instanceKlass sun/util/locale/LocaleUtils +instanceKlass sun/util/locale/BaseLocale$Key +instanceKlass sun/util/locale/BaseLocale +instanceKlass sun/util/locale/LocaleObjectCache +instanceKlass java/util/Locale +instanceKlass jdk/internal/vm/PostVMInitHook +instanceKlass jdk/internal/module/ModuleBootstrap$2 +instanceKlass jdk/internal/module/IllegalAccessLogger$Builder +instanceKlass jdk/internal/module/IllegalAccessLogger +instanceKlass java/lang/WeakPairMap$$Lambda$3 +instanceKlass jdk/internal/org/objectweb/asm/FieldVisitor +instanceKlass java/lang/Module$$Lambda$2 +instanceKlass java/util/function/BiFunction +instanceKlass java/lang/WeakPairMap$Pair$Lookup +instanceKlass java/lang/WeakPairMap$Pair +instanceKlass java/lang/WeakPairMap +instanceKlass java/lang/Module$ReflectionData +instanceKlass jdk/internal/misc/InnocuousThread$2 +instanceKlass jdk/internal/misc/InnocuousThread$3 +instanceKlass jdk/internal/ref/CleanerFactory$1$1 +instanceKlass java/lang/ref/Cleaner$Cleanable +instanceKlass jdk/internal/ref/CleanerImpl +instanceKlass java/lang/ref/Cleaner$1 +instanceKlass java/lang/ref/Cleaner +instanceKlass jdk/internal/ref/CleanerFactory$1 +instanceKlass java/util/concurrent/ThreadFactory +instanceKlass jdk/internal/ref/CleanerFactory +instanceKlass java/lang/invoke/LambdaForm$MH +instanceKlass java/lang/invoke/InvokerBytecodeGenerator$CpPatch +instanceKlass java/lang/invoke/LambdaFormBuffer +instanceKlass java/lang/invoke/LambdaFormEditor +instanceKlass java/lang/invoke/DelegatingMethodHandle$Holder +instanceKlass sun/invoke/util/Wrapper$1 +instanceKlass java/lang/invoke/DirectMethodHandle$1 +instanceKlass sun/invoke/empty/Empty +instanceKlass sun/invoke/util/VerifyType +instanceKlass java/lang/invoke/ClassSpecializer$Factory +instanceKlass java/lang/invoke/ClassSpecializer$SpeciesData +instanceKlass java/lang/invoke/ClassSpecializer$1 +instanceKlass java/lang/invoke/ClassSpecializer +instanceKlass java/lang/invoke/InnerClassLambdaMetafactory$1 +instanceKlass jdk/internal/module/ModuleBootstrap$$Lambda$1 +instanceKlass jdk/internal/org/objectweb/asm/AnnotationVisitor +instanceKlass jdk/internal/org/objectweb/asm/Frame +instanceKlass jdk/internal/org/objectweb/asm/Label +instanceKlass jdk/internal/org/objectweb/asm/MethodVisitor +instanceKlass jdk/internal/org/objectweb/asm/Item +instanceKlass jdk/internal/org/objectweb/asm/ByteVector +instanceKlass jdk/internal/org/objectweb/asm/ClassVisitor +instanceKlass sun/invoke/util/BytecodeDescriptor +instanceKlass java/lang/invoke/InfoFromMemberName +instanceKlass java/lang/invoke/MethodHandleInfo +instanceKlass sun/security/action/GetBooleanAction +instanceKlass jdk/internal/org/objectweb/asm/Type +instanceKlass java/lang/invoke/AbstractValidatingLambdaMetafactory +instanceKlass java/lang/invoke/MethodHandleImpl$1 +instanceKlass jdk/internal/access/JavaLangInvokeAccess +instanceKlass java/lang/invoke/Invokers$Holder +instanceKlass java/lang/invoke/BootstrapMethodInvoker +instanceKlass java/lang/invoke/InvokerBytecodeGenerator$2 +instanceKlass java/lang/invoke/InvokerBytecodeGenerator +instanceKlass java/lang/invoke/LambdaForm$Holder +instanceKlass java/lang/invoke/LambdaForm$Name +instanceKlass java/lang/invoke/Invokers +instanceKlass java/lang/invoke/MethodHandleImpl +instanceKlass sun/invoke/util/ValueConversions +instanceKlass java/lang/invoke/DirectMethodHandle$Holder +instanceKlass java/lang/invoke/LambdaForm$NamedFunction +instanceKlass sun/invoke/util/Wrapper$Format +instanceKlass sun/invoke/util/VerifyAccess +instanceKlass java/security/Permission +instanceKlass java/security/Guard +instanceKlass java/lang/invoke/MemberName$Factory +instanceKlass java/lang/invoke/MethodHandles +instanceKlass java/lang/invoke/MethodTypeForm +instanceKlass java/lang/Void +instanceKlass java/lang/invoke/MethodType$ConcurrentWeakInternSet +instanceKlass java/lang/invoke/MethodHandles$Lookup +instanceKlass java/lang/invoke/LambdaMetafactory +instanceKlass java/lang/ModuleLayer$Controller +instanceKlass java/util/HashMap$HashIterator +instanceKlass jdk/internal/module/ServicesCatalog$ServiceProvider +instanceKlass java/util/concurrent/CopyOnWriteArrayList +instanceKlass java/util/Collections$UnmodifiableCollection$1 +instanceKlass java/util/Collections$UnmodifiableCollection +instanceKlass java/util/ArrayList$Itr +instanceKlass java/util/ImmutableCollections$ListItr +instanceKlass java/util/ListIterator +instanceKlass java/lang/ModuleLayer +instanceKlass jdk/internal/module/ModuleLoaderMap$Mapper +instanceKlass java/util/function/Function +instanceKlass jdk/internal/module/ModuleLoaderMap +instanceKlass java/util/ImmutableCollections$Set12$1 +instanceKlass java/util/ImmutableCollections$MapN$MapNIterator +instanceKlass java/util/AbstractMap$1$1 +instanceKlass java/lang/module/ResolvedModule +instanceKlass java/lang/module/Configuration +instanceKlass java/util/ImmutableCollections$SetN$SetNIterator +instanceKlass jdk/internal/loader/BuiltinClassLoader$LoadedModule +instanceKlass jdk/internal/util/Preconditions +instanceKlass java/util/Deque +instanceKlass java/util/Queue +instanceKlass sun/net/util/IPAddressUtil +instanceKlass java/net/URLStreamHandler +instanceKlass sun/net/www/ParseUtil +instanceKlass java/io/ExpiringCache$Entry +instanceKlass java/net/URL$3 +instanceKlass jdk/internal/access/JavaNetURLAccess +instanceKlass java/net/URL$DefaultFactory +instanceKlass java/net/URLStreamHandlerFactory +instanceKlass jdk/internal/loader/URLClassPath +instanceKlass java/security/Principal +instanceKlass java/security/ProtectionDomain$Key +instanceKlass java/security/ProtectionDomain$JavaSecurityAccessImpl +instanceKlass jdk/internal/access/JavaSecurityAccess +instanceKlass java/lang/ClassLoader$ParallelLoaders +instanceKlass jdk/internal/loader/AbstractClassLoaderValue +instanceKlass jdk/internal/module/ServicesCatalog +instanceKlass jdk/internal/loader/BootLoader +instanceKlass java/util/Optional +instanceKlass jdk/internal/module/ModuleBootstrap$Counters +instanceKlass jdk/internal/module/SystemModuleFinders$SystemModuleFinder +instanceKlass java/lang/module/ModuleFinder +instanceKlass jdk/internal/module/SystemModuleFinders$3 +instanceKlass jdk/internal/module/ModuleHashes$HashSupplier +instanceKlass java/util/KeyValueHolder +instanceKlass jdk/internal/module/SystemModuleFinders$2 +instanceKlass java/util/function/Supplier +instanceKlass java/lang/module/ModuleReference +instanceKlass jdk/internal/module/ModuleResolution +instanceKlass java/util/Collections$UnmodifiableMap +instanceKlass jdk/internal/module/ModuleHashes$Builder +instanceKlass jdk/internal/module/ModuleHashes +instanceKlass jdk/internal/module/ModuleTarget +instanceKlass java/lang/Enum +instanceKlass java/lang/module/ModuleDescriptor$Version +instanceKlass java/lang/module/ModuleDescriptor$Provides +instanceKlass java/lang/module/ModuleDescriptor$Opens +instanceKlass java/lang/module/ModuleDescriptor$Exports +instanceKlass java/lang/module/ModuleDescriptor$Requires +instanceKlass jdk/internal/module/Builder +instanceKlass jdk/internal/module/SystemModules$default +instanceKlass jdk/internal/module/SystemModules +instanceKlass jdk/internal/module/SystemModulesMap +instanceKlass java/net/URI$1 +instanceKlass jdk/internal/access/JavaNetUriAccess +instanceKlass java/net/URI +instanceKlass jdk/internal/module/SystemModuleFinders +instanceKlass jdk/internal/module/ModulePatcher +instanceKlass java/util/ImmutableCollections +instanceKlass java/io/ExpiringCache +instanceKlass java/io/FileSystem +instanceKlass java/io/DefaultFileSystem +instanceKlass java/io/File +instanceKlass java/lang/module/ModuleDescriptor$1 +instanceKlass jdk/internal/access/JavaLangModuleAccess +instanceKlass java/lang/module/ModuleDescriptor +instanceKlass jdk/internal/module/ModuleBootstrap +instanceKlass java/lang/CharacterData +instanceKlass java/lang/invoke/MethodHandleStatics +instanceKlass java/lang/System$2 +instanceKlass jdk/internal/access/JavaLangAccess +instanceKlass sun/io/Win32ErrorMode +instanceKlass jdk/internal/misc/OSEnvironment +instanceKlass java/lang/Integer$IntegerCache +instanceKlass jdk/internal/misc/Signal$NativeHandler +instanceKlass java/util/Hashtable$Entry +instanceKlass jdk/internal/misc/Signal +instanceKlass java/lang/Terminator$1 +instanceKlass jdk/internal/misc/Signal$Handler +instanceKlass java/lang/Terminator +instanceKlass java/nio/charset/CoderResult +instanceKlass java/lang/Readable +instanceKlass java/nio/ByteOrder +instanceKlass java/nio/Buffer$1 +instanceKlass jdk/internal/access/JavaNioAccess +instanceKlass java/nio/charset/CharsetEncoder +instanceKlass sun/nio/cs/ArrayEncoder +instanceKlass sun/security/action/GetPropertyAction +instanceKlass java/io/Writer +instanceKlass java/io/OutputStream +instanceKlass java/io/Flushable +instanceKlass java/io/FileDescriptor$1 +instanceKlass jdk/internal/access/JavaIOFileDescriptorAccess +instanceKlass java/io/FileDescriptor +instanceKlass jdk/internal/util/StaticProperty +instanceKlass java/util/concurrent/ConcurrentHashMap$MapEntry +instanceKlass java/util/concurrent/ConcurrentHashMap$Traverser +instanceKlass java/util/Iterator +instanceKlass java/lang/reflect/Array +instanceKlass java/util/Collections$SynchronizedCollection +instanceKlass java/util/List +instanceKlass java/util/RandomAccess +instanceKlass java/util/Collections +instanceKlass java/util/concurrent/ConcurrentHashMap$CollectionView +instanceKlass java/util/Properties$EntrySet +instanceKlass java/lang/VersionProps +instanceKlass java/lang/StringCoding$Result +instanceKlass java/nio/charset/CodingErrorAction +instanceKlass java/nio/charset/CharsetDecoder +instanceKlass sun/nio/cs/ArrayDecoder +instanceKlass sun/nio/cs/DelegatableDecoder +instanceKlass java/lang/StringUTF16 +instanceKlass sun/nio/cs/DoubleByte +instanceKlass java/lang/StringCoding$StringDecoder +instanceKlass java/lang/ThreadLocal$ThreadLocalMap +instanceKlass java/lang/StringCoding +instanceKlass java/util/HashMap$Node +instanceKlass jdk/internal/reflect/Reflection +instanceKlass java/lang/Class$1 +instanceKlass java/lang/reflect/ReflectAccess +instanceKlass jdk/internal/reflect/LangReflectAccess +instanceKlass java/lang/reflect/Modifier +instanceKlass java/lang/Class$Atomic +instanceKlass java/lang/Class$ReflectionData +instanceKlass java/nio/charset/StandardCharsets +instanceKlass sun/nio/cs/HistoricallyNamedCharset +instanceKlass java/lang/Math +instanceKlass java/util/Arrays +instanceKlass java/lang/ThreadLocal +instanceKlass java/nio/charset/spi/CharsetProvider +instanceKlass java/nio/charset/Charset +instanceKlass java/lang/StringLatin1 +instanceKlass jdk/internal/misc/VM +instanceKlass jdk/internal/access/SharedSecrets +instanceKlass java/lang/ref/Reference$1 +instanceKlass jdk/internal/access/JavaLangRefAccess +instanceKlass java/lang/ref/ReferenceQueue$Lock +instanceKlass java/lang/ref/ReferenceQueue +instanceKlass jdk/internal/reflect/ReflectionFactory +instanceKlass java/util/concurrent/locks/LockSupport +instanceKlass java/util/concurrent/ConcurrentHashMap$Node +instanceKlass java/util/Map$Entry +instanceKlass java/util/concurrent/ConcurrentHashMap$CounterCell +instanceKlass java/util/concurrent/locks/ReentrantLock +instanceKlass java/util/concurrent/locks/Lock +instanceKlass java/lang/Runtime +instanceKlass java/util/concurrent/ConcurrentMap +instanceKlass java/util/AbstractMap +instanceKlass java/security/cert/Certificate +instanceKlass jdk/internal/reflect/ReflectionFactory$GetReflectionFactoryAction +instanceKlass java/security/PrivilegedAction +instanceKlass java/util/Objects +instanceKlass java/util/AbstractCollection +instanceKlass java/util/Set +instanceKlass java/util/Collection +instanceKlass java/lang/Iterable +instanceKlass java/security/AccessController +instanceKlass java/lang/String$CaseInsensitiveComparator +instanceKlass java/util/Comparator +instanceKlass java/io/ObjectStreamField +instanceKlass java/lang/Number +instanceKlass java/lang/Character +instanceKlass java/lang/Boolean +instanceKlass java/util/concurrent/locks/AbstractOwnableSynchronizer +instanceKlass java/lang/LiveStackFrame +instanceKlass java/lang/StackFrameInfo +instanceKlass java/lang/StackWalker$StackFrame +instanceKlass java/lang/StackStreamFactory$AbstractStackWalker +instanceKlass java/lang/StackWalker +instanceKlass java/nio/Buffer +instanceKlass java/lang/StackTraceElement +instanceKlass java/security/CodeSource +instanceKlass jdk/internal/loader/ClassLoaders +instanceKlass java/util/jar/Manifest +instanceKlass java/net/URL +instanceKlass java/io/InputStream +instanceKlass java/io/Closeable +instanceKlass java/lang/AutoCloseable +instanceKlass jdk/internal/module/Modules +instanceKlass jdk/internal/misc/Unsafe +instanceKlass java/lang/AbstractStringBuilder +instanceKlass java/lang/Appendable +instanceKlass java/lang/AssertionStatusDirectives +instanceKlass java/lang/invoke/MethodHandleNatives$CallSiteContext +instanceKlass java/lang/invoke/CallSite +instanceKlass java/lang/invoke/MethodType +instanceKlass java/lang/invoke/LambdaForm +instanceKlass java/lang/invoke/MethodHandleNatives +instanceKlass java/lang/invoke/ResolvedMethodName +instanceKlass java/lang/invoke/MemberName +instanceKlass java/lang/invoke/VarHandle +instanceKlass java/lang/invoke/MethodHandle +instanceKlass jdk/internal/reflect/CallerSensitive +instanceKlass java/lang/annotation/Annotation +instanceKlass jdk/internal/reflect/FieldAccessor +instanceKlass jdk/internal/reflect/ConstantPool +instanceKlass jdk/internal/reflect/ConstructorAccessor +instanceKlass jdk/internal/reflect/MethodAccessor +instanceKlass jdk/internal/reflect/MagicAccessorImpl +instanceKlass java/lang/reflect/Parameter +instanceKlass java/lang/reflect/Member +instanceKlass java/lang/reflect/AccessibleObject +instanceKlass java/lang/Module +instanceKlass java/util/Dictionary +instanceKlass java/util/Map +instanceKlass java/lang/ThreadGroup +instanceKlass java/lang/Thread$UncaughtExceptionHandler +instanceKlass java/lang/Thread +instanceKlass java/lang/Runnable +instanceKlass java/lang/ref/Reference +instanceKlass java/security/AccessControlContext +instanceKlass java/security/ProtectionDomain +instanceKlass java/lang/SecurityManager +instanceKlass java/lang/Throwable +instanceKlass java/lang/System +instanceKlass java/lang/ClassLoader +instanceKlass java/lang/Cloneable +instanceKlass java/lang/Class +instanceKlass java/lang/reflect/Type +instanceKlass java/lang/reflect/GenericDeclaration +instanceKlass java/lang/reflect/AnnotatedElement +instanceKlass java/lang/String +instanceKlass java/lang/CharSequence +instanceKlass java/lang/Comparable +instanceKlass java/io/Serializable +ciInstanceKlass java/lang/Object 1 1 92 7 10 10 10 10 8 10 10 10 10 100 8 10 3 8 10 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 7 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 12 12 7 12 12 1 12 7 12 12 12 1 1 12 1 12 1 1 1 1 1 1 1 1 1 1 1 1 +ciInstanceKlass java/io/Serializable 1 0 7 100 100 1 1 1 1 +ciInstanceKlass java/lang/CharSequence 1 1 128 18 100 10 18 10 10 100 11 11 10 11 100 10 10 100 10 10 100 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 15 16 15 16 12 1 100 12 15 100 12 12 1 12 12 100 12 12 1 12 100 12 1 12 1 1 1 10 1 11 1 1 1 1 1 11 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 100 12 12 12 100 1 1 1 100 1 1 1 100 1 1 +ciInstanceKlass java/lang/String 1 1 878 10 8 9 9 9 10 10 10 9 10 7 10 10 10 10 10 100 8 10 10 9 9 8 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 100 10 10 100 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 100 100 10 10 11 11 10 10 10 10 10 10 9 11 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 11 10 10 10 10 10 10 100 10 7 10 10 10 10 10 8 10 10 100 3 3 7 10 10 10 10 10 11 7 10 10 7 10 10 10 11 11 11 7 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 100 100 10 100 10 10 100 10 10 10 7 10 10 10 10 8 10 10 10 8 8 10 10 10 10 10 10 10 100 10 8 10 10 10 7 3 8 8 8 10 10 10 10 10 10 8 8 10 8 8 8 8 8 10 10 10 8 7 10 10 10 7 9 7 10 100 100 1 1 1 1 1 1 1 1 1 1 1 1 1 5 0 1 1 1 1 1 1 1 1 1 3 1 3 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 7 1 1 1 100 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 100 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 1 12 12 12 12 12 12 12 7 12 1 7 7 12 12 12 12 1 12 7 12 12 12 12 12 12 12 12 12 12 12 12 12 12 1 12 12 1 12 12 12 12 7 12 12 12 12 12 12 12 12 12 12 1 1 12 12 12 12 12 12 12 12 12 7 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 7 12 12 12 12 7 12 12 12 12 7 12 12 7 12 1 1 12 12 12 1 12 1 1 12 12 12 12 7 12 12 12 1 12 12 100 12 12 12 1 12 7 12 12 12 12 12 12 12 12 12 12 12 1 1 1 12 1 100 12 1 1 12 1 12 12 1 12 12 1 1 12 12 12 100 12 100 12 100 12 1 1 12 12 1 1 1 1 12 12 12 12 1 1 1 1 1 1 1 12 12 12 1 1 12 12 12 1 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/lang/String COMPACT_STRINGS Z 1 +staticfield java/lang/String serialPersistentFields [Ljava/io/ObjectStreamField; 0 [Ljava/io/ObjectStreamField; +staticfield java/lang/String CASE_INSENSITIVE_ORDER Ljava/util/Comparator; java/lang/String$CaseInsensitiveComparator +ciInstanceKlass java/lang/reflect/Type 1 1 17 10 100 7 1 1 1 1 1 1 1 1 1 12 1 1 1 +ciInstanceKlass java/lang/Class 1 1 1435 10 9 9 7 10 10 8 10 8 8 10 10 10 10 10 10 10 10 10 10 10 8 10 8 8 10 7 8 8 8 10 11 10 10 8 10 10 10 10 9 10 10 10 18 10 7 10 10 10 100 10 9 7 100 8 10 10 10 10 7 10 7 100 10 10 9 10 10 7 10 100 10 10 10 9 10 10 10 9 10 10 100 10 10 10 10 9 8 10 10 10 10 10 10 9 10 7 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 100 8 10 10 7 10 7 11 10 10 10 10 10 10 8 10 10 8 9 10 10 10 10 100 9 10 9 10 10 10 8 10 10 10 10 100 10 10 10 10 10 10 10 7 10 10 10 10 10 10 10 10 10 7 10 10 11 10 10 10 10 10 10 100 10 10 10 100 100 10 10 10 10 10 10 10 10 11 10 10 9 10 9 7 10 9 10 7 10 9 10 10 10 10 10 10 10 8 10 10 9 9 10 7 9 10 10 7 10 10 10 10 9 10 9 10 10 9 9 10 10 9 100 10 10 7 10 100 11 9 9 7 10 9 9 10 10 9 7 10 10 10 10 10 10 10 9 10 10 10 10 8 7 10 7 8 8 8 8 10 9 9 10 7 9 7 10 7 10 10 9 8 10 7 10 7 10 9 100 8 10 7 4 10 10 11 10 100 10 10 8 8 10 9 11 7 11 9 10 10 10 9 9 10 10 10 10 10 11 11 11 11 7 11 10 10 7 11 10 10 10 11 11 7 10 10 9 9 10 10 10 10 100 10 10 7 9 100 7 100 100 1 1 1 7 1 1 1 1 1 3 1 3 1 3 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 100 100 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 1 12 1 12 1 1 12 12 12 12 12 12 7 12 12 12 12 1 12 1 1 12 1 1 1 1 12 12 12 1 7 12 12 12 7 12 7 12 12 7 12 12 1 15 16 15 16 12 7 12 1 12 12 7 1 12 12 1 1 1 12 12 12 12 1 12 1 1 12 12 12 12 1 100 12 12 12 12 12 12 12 12 12 1 12 12 12 12 1 12 12 12 12 12 12 12 7 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 1 1 12 1 12 1 12 100 12 12 12 12 12 1 12 12 1 12 12 12 12 12 1 12 12 12 12 12 1 12 12 12 12 1 12 12 12 12 12 12 12 1 12 12 12 12 12 12 12 1 7 12 12 12 12 100 12 12 12 1 12 12 1 1 12 12 12 12 12 12 100 12 7 12 12 12 12 12 12 1 12 12 1 12 12 100 12 12 12 100 12 12 12 12 1 12 12 12 12 12 1 12 12 12 1 12 12 7 12 7 12 12 12 12 12 12 12 12 12 12 12 1 12 1 12 100 12 12 1 12 12 12 12 12 12 1 12 12 12 12 12 12 12 12 12 1 7 1 1 1 1 12 12 12 12 1 12 1 1 1 12 7 12 12 1 12 1 12 12 1 1 1 12 12 12 1 12 1 1 12 12 12 1 12 12 100 12 7 12 12 12 12 12 12 12 12 12 12 12 12 1 12 7 12 12 1 12 100 12 12 12 12 1 12 12 12 100 12 12 100 12 12 12 1 12 12 1 12 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 10 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 12 1 1 100 1 1 100 1 1 +staticfield java/lang/Class EMPTY_CLASS_ARRAY [Ljava/lang/Class; 0 [Ljava/lang/Class; +staticfield java/lang/Class serialPersistentFields [Ljava/io/ObjectStreamField; 0 [Ljava/io/ObjectStreamField; +ciInstanceKlass java/lang/Cloneable 1 0 7 100 100 1 1 1 1 +instanceKlass org/codehaus/groovy/reflection/ClassLoaderForClassArtifacts +instanceKlass org/codehaus/groovy/reflection/SunClassLoader +instanceKlass org/gradle/internal/classloader/CachingClassLoader +instanceKlass org/gradle/internal/classloader/MultiParentClassLoader +instanceKlass org/gradle/internal/classloader/FilteringClassLoader$RetrieveSystemPackagesClassLoader +instanceKlass org/gradle/internal/classloader/FilteringClassLoader +instanceKlass org/gradle/internal/classloader/FilteringClassLoader +instanceKlass jdk/internal/reflect/DelegatingClassLoader +instanceKlass java/security/SecureClassLoader +ciInstanceKlass java/lang/ClassLoader 1 1 1189 9 10 9 10 7 10 10 9 10 100 10 10 10 100 8 10 10 10 10 7 10 7 7 7 10 10 9 7 10 9 9 9 9 9 7 10 9 10 10 9 9 7 9 7 10 10 9 10 7 10 8 10 10 10 7 10 10 8 10 10 10 10 10 10 10 10 7 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 100 10 100 10 10 10 10 10 100 8 10 8 10 10 100 8 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 8 11 9 11 10 8 8 10 100 10 10 10 10 10 10 10 10 10 7 10 10 10 7 10 100 18 10 10 10 7 10 10 10 7 10 10 10 10 8 100 10 10 9 10 10 100 8 10 10 8 8 10 10 7 10 10 100 100 10 100 100 10 10 10 10 10 10 9 10 10 10 10 10 8 10 7 18 10 10 10 10 8 10 10 18 11 7 10 10 10 11 10 18 10 11 18 11 10 10 9 7 10 10 8 10 9 8 10 9 8 7 10 10 100 8 10 10 10 8 8 10 10 10 8 8 10 10 10 7 10 10 10 10 10 11 11 11 11 11 7 10 9 9 9 10 10 100 10 100 10 10 10 9 9 9 9 9 9 8 10 10 10 10 10 11 10 100 10 10 10 7 7 10 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 12 12 12 12 1 12 12 12 12 1 12 12 12 1 1 12 7 12 12 1 1 1 12 12 12 1 12 12 12 12 12 1 12 12 12 12 12 12 1 12 1 12 12 12 1 1 12 12 1 12 7 12 1 12 12 12 12 12 12 12 12 1 12 7 12 12 12 12 12 12 12 12 12 100 12 12 12 12 1 12 1 12 7 12 12 12 1 1 1 12 12 1 1 12 12 12 12 12 12 12 12 12 12 12 12 7 12 12 12 12 12 12 12 12 12 12 1 12 12 12 1 1 12 1 12 12 12 12 12 7 12 12 7 1 12 12 1 12 1 1 15 16 15 16 12 100 12 100 12 7 12 1 12 12 12 1 12 12 7 12 12 1 1 12 12 7 12 12 1 1 12 1 1 12 12 1 12 100 12 1 1 12 1 1 12 12 12 12 12 12 100 12 12 12 12 12 12 1 12 1 16 15 16 12 12 12 12 12 1 12 12 16 15 16 12 12 1 12 12 12 15 12 7 12 16 15 16 12 12 12 12 12 1 12 12 1 12 12 1 12 12 1 1 12 1 1 12 12 1 1 12 12 100 12 1 1 100 12 12 1 12 12 12 12 12 12 12 12 1 12 12 12 12 12 12 1 1 12 12 12 12 12 12 12 12 12 12 7 12 12 12 12 12 100 12 1 12 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 10 1 10 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 10 1 1 1 1 1 1 1 1 10 1 1 1 1 1 10 1 1 1 10 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 12 12 12 12 12 12 1 1 100 1 1 100 1 1 +staticfield java/lang/ClassLoader nocerts [Ljava/security/cert/Certificate; 0 [Ljava/security/cert/Certificate; +staticfield java/lang/ClassLoader loadedLibraryNames Ljava/util/Set; java/util/HashSet +staticfield java/lang/ClassLoader $assertionsDisabled Z 1 +ciInstanceKlass java/lang/System 1 1 628 10 10 10 10 10 9 7 10 11 10 10 10 100 8 10 10 9 100 8 10 10 8 10 100 10 8 10 10 100 10 10 10 9 9 7 10 10 10 10 10 10 10 100 100 8 10 10 7 10 100 8 10 8 10 100 8 10 100 10 8 10 10 10 8 10 10 10 100 8 10 10 10 100 18 100 9 10 100 10 10 10 10 10 10 10 10 7 7 10 10 100 10 10 100 8 10 9 9 10 10 10 10 8 10 10 8 10 10 8 10 7 9 10 7 9 10 9 7 10 8 10 8 10 10 10 10 10 10 10 10 9 100 8 10 8 10 10 8 100 10 10 10 10 7 10 10 10 10 10 8 10 10 10 10 8 10 10 10 7 10 10 10 9 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 100 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 100 12 12 12 12 12 12 1 7 12 100 12 100 12 12 12 1 1 12 12 12 1 1 12 100 12 1 12 1 12 12 12 1 12 100 12 12 12 12 1 12 7 12 12 12 12 12 1 1 1 12 12 1 12 1 1 1 12 1 1 1 1 12 12 7 12 1 12 7 12 7 12 1 1 12 7 12 1 1 15 16 15 16 12 1 12 12 1 12 12 7 12 12 12 12 12 12 1 1 12 12 1 12 7 12 1 1 12 12 12 12 12 12 1 12 12 1 12 12 1 7 12 1 7 12 12 1 12 12 1 12 1 12 1 7 12 12 7 12 12 7 12 12 12 7 12 12 1 1 12 1 12 1 1 12 7 12 12 1 12 12 12 100 12 1 12 12 1 12 12 12 1 12 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 10 1 10 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 12 12 1 1 100 1 1 100 1 1 +staticfield java/lang/System in Ljava/io/InputStream; java/io/PipedInputStream +staticfield java/lang/System out Ljava/io/PrintStream; org/gradle/internal/io/LinePerThreadBufferingOutputStream +staticfield java/lang/System err Ljava/io/PrintStream; org/gradle/internal/io/LinePerThreadBufferingOutputStream +instanceKlass java/lang/Exception +instanceKlass java/lang/Error +ciInstanceKlass java/lang/Throwable 1 1 395 10 9 9 9 9 9 10 9 10 10 100 100 10 8 10 8 10 10 10 100 8 10 10 10 10 8 9 10 100 10 10 100 10 10 11 10 10 10 8 10 10 7 8 8 10 10 8 8 9 10 100 10 11 8 8 10 8 10 8 100 10 9 10 10 100 9 10 10 100 8 10 10 10 10 100 10 10 11 11 11 8 8 10 10 10 9 8 7 10 10 100 8 10 11 8 9 10 11 9 11 100 10 7 10 100 1 1 1 100 1 100 1 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 100 100 1 100 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 12 12 12 12 12 12 12 1 1 1 12 1 100 12 12 1 1 12 7 12 12 1 100 12 12 1 12 12 1 7 12 12 12 12 12 1 12 12 1 1 1 12 12 1 1 12 100 12 1 12 1 1 12 1 12 1 1 12 12 12 100 12 12 12 100 1 1 12 12 100 12 1 100 12 12 12 12 12 1 1 100 12 1 1 12 1 1 12 1 12 100 12 12 12 12 1 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/lang/Throwable UNASSIGNED_STACK [Ljava/lang/StackTraceElement; 0 [Ljava/lang/StackTraceElement; +staticfield java/lang/Throwable SUPPRESSED_SENTINEL Ljava/util/List; java/util/Collections$EmptyList +staticfield java/lang/Throwable EMPTY_THROWABLE_ARRAY [Ljava/lang/Throwable; 0 [Ljava/lang/Throwable; +staticfield java/lang/Throwable $assertionsDisabled Z 1 +instanceKlass kotlin/jvm/KotlinReflectionNotSupportedError +instanceKlass java/util/ServiceConfigurationError +instanceKlass com/google/common/util/concurrent/ExecutionError +instanceKlass java/lang/AssertionError +instanceKlass java/lang/VirtualMachineError +instanceKlass java/lang/LinkageError +instanceKlass java/lang/ThreadDeath +ciInstanceKlass java/lang/Error 1 1 40 10 10 10 10 10 100 7 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 12 12 1 1 +ciInstanceKlass java/lang/ThreadDeath 0 0 21 10 100 100 1 1 1 5 0 1 1 1 1 1 1 1 1 1 12 1 1 +instanceKlass javax/management/JMException +instanceKlass javax/naming/NamingException +instanceKlass java/beans/PropertyVetoException +instanceKlass java/awt/AWTException +instanceKlass java/sql/SQLException +instanceKlass org/apache/maven/settings/building/SettingsBuildingException +instanceKlass com/jcraft/jsch/JSchException +instanceKlass javax/xml/xpath/XPathException +instanceKlass org/xml/sax/SAXException +instanceKlass javax/xml/parsers/ParserConfigurationException +instanceKlass org/gradle/api/internal/attributes/AttributeMergingException +instanceKlass java/lang/CloneNotSupportedException +instanceKlass java/security/GeneralSecurityException +instanceKlass java/util/concurrent/TimeoutException +instanceKlass java/util/concurrent/ExecutionException +instanceKlass java/text/ParseException +instanceKlass java/security/PrivilegedActionException +instanceKlass java/lang/InterruptedException +instanceKlass java/net/URISyntaxException +instanceKlass java/io/IOException +instanceKlass java/lang/ReflectiveOperationException +instanceKlass java/lang/RuntimeException +ciInstanceKlass java/lang/Exception 1 1 40 10 10 10 10 10 100 7 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 12 12 1 1 +instanceKlass org/gradle/util/ConfigureUtil$IncompleteInputException +instanceKlass org/gradle/internal/jvm/UnsupportedJavaRuntimeException +instanceKlass org/gradle/api/internal/NullNamingPropertyException +instanceKlass org/gradle/api/internal/NoNamingPropertyException +instanceKlass org/gradle/workers/internal/WorkSerializationException +instanceKlass org/gradle/internal/component/NoMatchingCapabilitiesException +instanceKlass org/gradle/internal/component/model/ConfigurationNotFoundException +instanceKlass org/gradle/internal/resource/transport/http/HttpErrorStatusCodeException +instanceKlass org/gradle/api/internal/NoFactoryRegisteredForTypeException +instanceKlass org/gradle/util/internal/ConfigureUtil$IncompleteInputException +instanceKlass org/gradle/internal/reflect/UnsupportedPropertyValueException +instanceKlass org/gradle/model/internal/manage/schema/extract/InvalidManagedModelElementTypeException +instanceKlass java/time/DateTimeException +instanceKlass java/nio/file/FileSystemNotFoundException +instanceKlass java/nio/file/FileSystemAlreadyExistsException +instanceKlass org/codehaus/groovy/vmplugin/v9/ClassFindFailedException +instanceKlass org/codehaus/groovy/control/ConfigurationException +instanceKlass org/w3c/dom/DOMException +instanceKlass groovy/lang/StringWriterIOException +instanceKlass java/lang/IllegalCallerException +instanceKlass java/lang/reflect/MalformedParameterizedTypeException +instanceKlass org/gradle/cache/internal/btree/CorruptedCacheException +instanceKlass org/gradle/internal/execution/fingerprint/InputFingerprinter$InputFileFingerprintingException +instanceKlass org/gradle/internal/execution/OutputSnapshotter$OutputFileSnapshottingException +instanceKlass org/gradle/api/internal/attributes/AttributeMatchException +instanceKlass org/gradle/internal/locking/InvalidLockFileException +instanceKlass org/gradle/internal/locking/MissingLockStateException +instanceKlass org/gradle/api/internal/provider/AbstractProperty$PropertyQueryException +instanceKlass org/gradle/cli/CommandLineArgumentException +instanceKlass groovy/lang/GroovyRuntimeException +instanceKlass kotlin/NoWhenBranchMatchedException +instanceKlass java/util/ConcurrentModificationException +instanceKlass org/gradle/internal/reflect/NoSuchPropertyException +instanceKlass org/gradle/internal/snapshot/impl/IsolationException +instanceKlass org/gradle/internal/snapshot/ValueSnapshottingException +instanceKlass org/apache/tools/ant/BuildException +instanceKlass java/io/UncheckedIOException +instanceKlass org/gradle/tooling/internal/protocol/InternalBuildActionFailureException +instanceKlass org/gradle/tooling/internal/protocol/test/InternalTestExecutionException +instanceKlass org/gradle/internal/typeconversion/TypeConversionException +instanceKlass com/google/common/util/concurrent/UncheckedExecutionException +instanceKlass com/google/common/cache/CacheLoader$InvalidCacheLoadException +instanceKlass org/gradle/internal/work/NoAvailableWorkerLeaseException +instanceKlass org/gradle/launcher/daemon/server/BadlyFormedRequestException +instanceKlass org/gradle/internal/remote/internal/MessageIOException +instanceKlass org/gradle/cache/InsufficientLockModeException +instanceKlass org/gradle/cache/LockTimeoutException +instanceKlass org/gradle/cache/internal/locklistener/GracefullyStoppedException +instanceKlass org/gradle/launcher/daemon/registry/DaemonRegistry$EmptyRegistryException +instanceKlass org/gradle/cache/FileIntegrityViolationException +instanceKlass org/gradle/internal/file/FileException +instanceKlass org/gradle/launcher/daemon/server/api/DaemonStoppedException +instanceKlass org/gradle/launcher/daemon/server/api/DaemonUnavailableException +instanceKlass java/lang/TypeNotPresentException +instanceKlass java/util/MissingResourceException +instanceKlass org/gradle/util/internal/GFileUtils$TailReadingException +instanceKlass org/gradle/internal/jvm/JavaHomeException +instanceKlass kotlin/UninitializedPropertyAccessException +instanceKlass java/util/NoSuchElementException +instanceKlass org/gradle/api/reflect/ObjectInstantiationException +instanceKlass org/gradle/api/internal/classpath/UnknownModuleException +instanceKlass org/gradle/internal/nativeintegration/NativeIntegrationException +instanceKlass org/gradle/internal/reflect/NoSuchMethodException +instanceKlass net/rubygrapefruit/platform/NativeException +instanceKlass org/gradle/internal/service/ServiceLookupException +instanceKlass com/esotericsoftware/kryo/KryoException +instanceKlass java/lang/reflect/UndeclaredThrowableException +instanceKlass org/gradle/internal/operations/BuildOperationInvocationException +instanceKlass org/gradle/internal/UncheckedException +instanceKlass org/gradle/api/GradleException +instanceKlass java/lang/UnsupportedOperationException +instanceKlass java/lang/SecurityException +instanceKlass org/gradle/api/UncheckedIOException +instanceKlass org/gradle/internal/service/ServiceLookupException +instanceKlass java/lang/IndexOutOfBoundsException +instanceKlass org/gradle/api/GradleException +instanceKlass java/lang/IllegalStateException +instanceKlass org/gradle/api/UncheckedIOException +instanceKlass org/gradle/api/internal/classpath/UnknownModuleException +instanceKlass java/lang/IllegalArgumentException +instanceKlass java/lang/ArithmeticException +instanceKlass java/lang/NullPointerException +instanceKlass java/lang/IllegalMonitorStateException +instanceKlass java/lang/ArrayStoreException +instanceKlass java/lang/ClassCastException +ciInstanceKlass java/lang/RuntimeException 1 1 40 10 10 10 10 10 100 7 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 12 12 1 1 +instanceKlass org/codehaus/groovy/reflection/ReflectionUtils$ClassContextHelper +ciInstanceKlass java/lang/SecurityManager 1 1 572 10 9 7 10 100 8 10 10 10 10 100 10 100 10 9 10 10 10 100 8 10 9 9 8 9 100 10 8 10 10 10 100 10 10 100 100 8 10 8 8 8 8 8 8 10 8 8 8 8 8 10 10 8 100 8 10 8 8 8 8 8 10 8 100 8 8 10 8 8 10 100 8 10 10 100 10 10 10 10 10 10 11 18 11 18 11 18 18 11 18 11 9 9 9 9 7 10 10 10 18 18 10 18 10 18 18 8 10 9 11 8 100 10 10 10 9 10 10 8 100 10 9 8 8 100 10 10 10 9 11 10 11 10 7 7 10 10 10 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 12 12 1 7 12 1 1 12 12 100 12 1 1 12 7 12 12 12 1 1 12 12 1 12 1 1 12 12 12 1 12 1 1 1 12 1 1 1 1 1 1 12 1 1 1 1 1 12 12 1 1 1 1 1 1 1 1 100 12 1 1 1 1 1 1 12 1 1 12 1 12 12 12 7 12 12 7 12 7 12 1 15 16 15 16 12 7 12 16 15 16 12 12 15 16 15 16 12 16 15 16 12 12 12 12 12 12 1 7 12 12 12 15 16 12 15 16 7 12 15 12 12 15 16 15 16 1 12 12 7 12 1 1 12 12 12 12 12 12 1 1 12 1 1 1 12 7 12 12 12 12 12 1 1 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 10 1 10 1 1 1 1 1 1 10 1 1 1 1 1 10 11 1 1 1 10 1 1 1 1 1 1 10 1 10 1 1 1 11 1 1 10 10 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 12 7 12 12 12 7 12 12 12 12 12 1 1 100 1 1 1 1 1 1 1 1 100 1 1 +staticfield java/lang/SecurityManager packageAccessLock Ljava/lang/Object; java/lang/Object +staticfield java/lang/SecurityManager packageDefinitionLock Ljava/lang/Object; java/lang/Object +staticfield java/lang/SecurityManager nonExportedPkgs Ljava/util/Map; java/util/concurrent/ConcurrentHashMap +ciInstanceKlass java/security/ProtectionDomain 1 1 331 10 9 7 10 9 9 9 10 7 9 9 7 9 9 10 100 10 10 10 10 9 9 10 7 10 100 10 9 8 100 8 10 10 10 10 8 11 8 10 8 8 10 10 10 10 8 10 8 8 10 9 10 9 10 100 100 10 10 7 10 100 10 10 11 11 100 11 10 10 11 11 10 10 10 11 10 8 8 10 7 10 10 7 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 7 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 100 100 100 1 1 1 1 1 100 12 12 1 12 12 12 12 12 1 12 12 1 12 12 100 12 100 12 12 12 12 100 12 12 1 1 12 100 12 1 1 1 12 12 12 1 1 12 1 1 12 12 12 12 1 12 1 1 100 12 12 12 12 12 1 1 100 12 1 1 12 12 12 12 1 12 12 12 12 12 12 100 12 12 12 1 1 7 12 1 7 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/security/ProtectionDomain filePermCompatInPD Z 0 +ciInstanceKlass java/security/AccessControlContext 1 1 367 9 9 10 8 10 10 9 9 9 10 7 100 10 11 11 11 11 7 11 10 10 9 10 11 10 7 100 8 10 10 7 10 9 9 9 9 9 9 9 10 9 10 10 8 10 10 10 100 10 10 10 10 8 10 8 10 8 8 10 8 10 8 10 10 10 8 8 100 10 10 100 10 8 10 10 10 8 10 10 10 7 10 10 10 10 10 10 10 10 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 100 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 100 12 1 100 12 12 12 12 12 7 12 1 12 12 12 12 12 1 12 12 7 12 100 12 12 12 1 1 1 12 12 1 7 12 12 12 12 12 12 12 12 7 12 12 12 12 1 12 12 100 12 1 12 100 12 1 12 1 100 12 1 1 12 1 12 1 12 12 12 1 1 1 12 12 1 12 1 12 12 1 12 12 12 1 12 12 12 12 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +instanceKlass sun/reflect/misc/MethodUtil +instanceKlass java/net/URLClassLoader +instanceKlass jdk/internal/loader/BuiltinClassLoader +ciInstanceKlass java/security/SecureClassLoader 1 1 127 10 7 10 9 10 10 9 10 10 10 10 10 10 7 10 7 10 7 10 11 7 100 8 10 10 7 7 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 1 12 12 7 12 12 12 12 12 12 12 12 12 1 1 12 1 12 7 12 1 1 1 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +instanceKlass java/lang/InstantiationException +instanceKlass java/lang/IllegalAccessException +instanceKlass java/lang/reflect/InvocationTargetException +instanceKlass java/lang/NoSuchFieldException +instanceKlass java/lang/NoSuchMethodException +instanceKlass java/lang/ClassNotFoundException +ciInstanceKlass java/lang/ReflectiveOperationException 1 1 34 10 10 10 10 100 7 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 12 1 1 +ciInstanceKlass java/lang/ClassNotFoundException 1 1 37 100 10 10 9 100 7 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 1 1 1 +instanceKlass java/lang/ClassFormatError +instanceKlass java/lang/UnsatisfiedLinkError +instanceKlass java/lang/IncompatibleClassChangeError +instanceKlass java/lang/BootstrapMethodError +instanceKlass java/lang/NoClassDefFoundError +ciInstanceKlass java/lang/LinkageError 1 1 31 10 10 10 100 7 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 1 1 +ciInstanceKlass java/lang/NoClassDefFoundError 1 1 26 10 10 100 7 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 12 12 1 1 +instanceKlass org/codehaus/groovy/runtime/typehandling/GroovyCastException +ciInstanceKlass java/lang/ClassCastException 1 1 26 10 10 100 100 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 12 12 1 1 +ciInstanceKlass java/lang/ArrayStoreException 1 1 26 10 10 100 100 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 12 12 1 1 +instanceKlass java/lang/InternalError +instanceKlass java/lang/StackOverflowError +instanceKlass java/lang/OutOfMemoryError +ciInstanceKlass java/lang/VirtualMachineError 1 1 34 10 10 10 10 100 100 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 12 1 1 +ciInstanceKlass java/lang/OutOfMemoryError 1 1 26 10 10 100 100 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 12 12 1 1 +ciInstanceKlass java/lang/StackOverflowError 1 1 26 10 10 100 100 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 12 12 1 1 +ciInstanceKlass java/lang/IllegalMonitorStateException 1 1 26 10 10 100 100 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 12 12 1 1 +instanceKlass java/lang/ref/PhantomReference +instanceKlass java/lang/ref/FinalReference +instanceKlass java/lang/ref/WeakReference +instanceKlass java/lang/ref/SoftReference +ciInstanceKlass java/lang/ref/Reference 1 1 159 10 9 10 9 9 7 10 10 9 9 10 10 10 9 9 100 10 10 10 7 10 10 10 7 8 10 7 10 10 10 7 10 10 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 7 1 1 1 1 12 12 12 12 12 1 12 12 12 12 12 12 12 12 12 1 12 12 1 12 12 12 1 1 12 1 12 12 12 1 7 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/lang/ref/Reference processPendingLock Ljava/lang/Object; java/lang/Object +instanceKlass com/sun/beans/util/Cache$Kind$Soft +instanceKlass org/codehaus/groovy/util/ReferenceType$SoftRef +instanceKlass sun/util/locale/provider/LocaleResources$ResourceReference +instanceKlass sun/util/resources/Bundles$BundleReference +instanceKlass sun/util/locale/LocaleObjectCache$CacheEntry +instanceKlass jdk/internal/ref/SoftCleanable +instanceKlass java/lang/invoke/LambdaFormEditor$Transform +ciInstanceKlass java/lang/ref/SoftReference 1 1 47 10 9 9 10 10 7 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 12 12 12 12 12 1 1 1 +instanceKlass com/sun/jmx/mbeanserver/WeakIdentityHashMap$IdentityWeakReference +instanceKlass com/google/common/cache/LocalCache$WeakEntry +instanceKlass jdk/internal/jimage/ImageBufferCache$BufferReference +instanceKlass java/beans/WeakIdentityMap$Entry +instanceKlass org/codehaus/groovy/util/ReferenceType$WeakRef +instanceKlass com/google/common/collect/MapMakerInternalMap$WeakValueReferenceImpl +instanceKlass com/google/common/collect/MapMakerInternalMap$AbstractWeakKeyEntry +instanceKlass com/google/common/cache/LocalCache$WeakValueReference +instanceKlass java/util/logging/LogManager$LoggerWeakRef +instanceKlass java/util/logging/Level$KnownLevel +instanceKlass sun/nio/ch/FileLockTable$FileLockReference +instanceKlass java/lang/ClassValue$Entry +instanceKlass java/lang/WeakPairMap$WeakRefPeer +instanceKlass jdk/internal/ref/WeakCleanable +instanceKlass java/lang/invoke/MethodType$ConcurrentWeakInternSet$WeakEntry +instanceKlass java/util/WeakHashMap$Entry +instanceKlass java/lang/ThreadLocal$ThreadLocalMap$Entry +ciInstanceKlass java/lang/ref/WeakReference 1 1 31 10 10 100 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 1 1 +instanceKlass java/lang/ref/Finalizer +ciInstanceKlass java/lang/ref/FinalReference 1 1 36 10 100 8 10 100 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 1 1 12 1 1 1 +instanceKlass jdk/internal/ref/PhantomCleanable +instanceKlass jdk/internal/ref/Cleaner +ciInstanceKlass java/lang/ref/PhantomReference 1 1 30 10 100 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 1 1 +ciInstanceKlass java/lang/ref/Finalizer 1 1 139 9 10 9 9 9 9 7 10 10 7 11 100 10 100 10 10 10 100 10 10 7 10 7 10 10 10 10 7 10 7 10 10 10 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 12 12 12 12 12 12 1 12 12 1 7 12 1 12 1 12 100 12 100 12 1 12 12 1 1 12 12 12 1 12 1 12 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/lang/ref/Finalizer lock Ljava/lang/Object; java/lang/Object +instanceKlass net/rubygrapefruit/platform/internal/jni/AbstractFileEventFunctions$NativeFileWatcher$1 +instanceKlass org/gradle/launcher/daemon/server/exec/DaemonConnectionBackedEventConsumer$ForwardEvents +instanceKlass org/gradle/launcher/daemon/server/exec/LogToClient$AsynchronousLogDispatcher +instanceKlass java/util/logging/LogManager$Cleaner +instanceKlass jdk/internal/misc/InnocuousThread +instanceKlass java/lang/ref/Finalizer$FinalizerThread +instanceKlass java/lang/ref/Reference$ReferenceHandler +ciInstanceKlass java/lang/Thread 1 1 592 9 9 10 9 9 100 8 10 3 8 3 10 10 9 9 9 9 7 100 8 10 9 10 10 10 10 10 10 9 10 10 9 10 10 9 10 9 10 9 9 10 10 9 10 9 100 10 7 10 8 10 10 10 10 10 10 9 100 10 10 10 10 100 11 9 10 10 10 9 10 9 10 100 10 10 10 11 10 10 10 7 10 10 10 10 10 10 10 10 10 10 100 8 10 10 10 8 10 8 10 8 8 10 10 100 8 10 9 9 10 10 10 9 10 100 10 11 9 9 10 100 10 11 100 10 10 11 10 100 10 10 10 8 9 10 11 10 11 10 7 7 1 1 100 1 100 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 3 1 3 1 3 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 7 100 100 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 100 1 1 1 1 1 1 1 1 1 100 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 12 12 1 1 12 1 12 12 12 12 12 12 1 1 1 12 7 12 12 12 12 12 100 12 12 12 12 12 12 12 12 12 7 12 12 12 12 100 12 12 12 12 1 1 1 12 12 12 12 12 12 12 1 12 12 12 1 12 100 12 12 12 12 12 12 12 1 12 12 12 12 12 12 1 12 12 12 12 12 12 12 12 12 1 1 12 12 1 12 1 1 1 100 12 100 12 1 12 12 12 12 12 12 1 12 12 12 12 12 1 12 100 12 1 12 12 12 12 1 12 12 7 12 12 12 12 100 12 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/lang/Thread EMPTY_STACK_TRACE [Ljava/lang/StackTraceElement; 0 [Ljava/lang/StackTraceElement; +ciInstanceKlass java/lang/ThreadGroup 1 1 289 10 9 8 9 7 9 9 10 10 10 10 10 9 10 10 9 10 9 9 10 100 10 10 10 9 10 10 9 10 10 10 10 10 10 10 10 10 10 10 100 10 10 10 7 10 7 10 9 10 8 10 10 10 10 11 100 9 100 10 8 10 10 8 10 10 10 10 8 10 8 10 8 7 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 1 12 1 12 12 12 12 12 12 12 12 12 12 12 100 12 12 12 7 12 12 7 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 1 12 12 1 12 12 12 12 1 12 12 12 12 1 12 1 1 12 12 1 12 12 12 100 1 1 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +instanceKlass java/util/Hashtable +ciInstanceKlass java/util/Dictionary 1 1 36 10 100 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 1 1 +instanceKlass java/util/Properties +ciInstanceKlass java/util/Hashtable 1 1 512 100 10 9 100 100 10 8 10 10 10 10 10 8 10 9 7 9 7 4 10 9 4 10 11 10 10 9 10 100 10 9 10 9 10 10 3 9 9 3 10 10 10 11 11 11 11 7 11 11 10 10 10 9 9 9 10 100 100 10 10 8 10 10 8 10 8 10 7 10 10 100 10 10 7 10 100 10 10 7 11 11 100 10 10 10 11 100 10 11 11 10 10 10 10 10 10 10 8 10 100 8 10 4 10 4 10 8 10 10 100 11 10 10 10 10 7 100 100 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 3 1 3 1 3 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 100 100 1 1 1 1 1 1 100 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 12 12 1 1 1 12 12 12 12 7 12 1 12 12 1 12 1 7 12 12 12 12 12 12 12 12 1 12 12 12 12 12 12 12 12 12 12 12 7 12 12 12 1 12 12 12 12 12 12 12 12 1 1 12 1 12 1 1 7 12 1 12 12 1 12 12 1 1 12 1 12 12 1 100 12 12 1 12 12 12 12 12 12 12 12 100 12 12 1 1 12 12 1 12 100 12 1 100 12 12 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +instanceKlass org/gradle/internal/classpath/AccessTrackingProperties +instanceKlass java/security/Provider +ciInstanceKlass java/util/Properties 1 1 645 10 100 10 7 10 9 9 9 10 10 8 10 7 10 10 8 10 7 10 10 9 10 7 10 10 10 100 8 10 10 10 10 100 3 10 10 10 8 10 10 10 10 10 100 100 10 10 100 9 10 10 10 100 10 10 10 11 11 11 7 11 11 10 8 10 10 100 10 10 10 9 10 10 100 100 100 10 8 8 10 10 10 7 10 10 10 7 10 10 11 10 8 10 11 8 10 11 9 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 7 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 7 10 100 10 11 4 11 10 10 11 10 10 10 100 8 10 10 10 100 6 0 10 11 10 10 1 1 1 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 100 7 100 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 100 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 100 1 1 1 1 100 1 1 1 1 1 12 1 12 1 12 12 12 12 7 12 12 1 7 12 1 12 12 1 12 1 12 12 12 12 1 12 12 12 1 1 12 12 12 12 1 12 12 1 12 12 12 12 12 1 1 12 12 1 100 12 12 12 12 1 12 7 12 12 12 1 12 12 12 1 12 12 1 12 100 12 100 12 12 100 12 1 1 1 1 1 12 12 12 1 12 12 1 12 12 7 12 1 12 1 12 12 12 12 12 12 12 12 12 12 12 12 12 12 1 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 1 12 1 12 12 12 12 12 100 12 12 1 1 12 100 12 1 12 100 12 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/util/Properties UNSAFE Ljdk/internal/misc/Unsafe; jdk/internal/misc/Unsafe +staticfield java/util/Properties hexDigit [C 16 +ciInstanceKlass java/lang/Module 1 1 907 10 9 10 9 9 9 10 10 10 10 7 10 10 7 11 7 10 10 9 10 10 8 10 10 10 9 11 9 10 9 10 10 100 100 10 10 8 10 10 10 10 10 10 9 10 10 9 10 10 9 11 7 10 9 9 10 7 7 10 100 8 10 10 10 8 10 10 10 10 8 8 10 10 10 18 10 11 9 11 10 100 8 10 7 10 10 11 11 9 11 10 10 9 10 10 10 10 18 11 10 11 10 11 4 10 7 10 11 7 10 11 7 10 7 8 10 10 7 10 10 7 7 10 9 100 10 11 10 10 10 11 7 10 11 10 11 10 10 10 10 10 10 10 10 18 11 11 18 10 10 10 7 10 10 10 9 7 10 10 10 10 10 10 10 10 10 9 18 10 7 100 8 10 10 10 100 10 100 8 100 10 100 100 3 10 100 10 10 10 100 10 10 100 100 10 8 10 10 10 10 10 10 10 100 10 10 10 100 8 10 10 8 10 8 10 10 10 8 10 7 10 10 10 11 100 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 7 7 7 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 100 100 1 100 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 12 12 12 12 12 12 12 12 12 12 1 7 12 12 1 12 12 7 12 100 12 12 12 1 12 12 12 12 12 12 7 12 12 100 12 12 1 1 12 1 12 12 12 12 12 12 12 12 12 12 12 12 12 12 1 12 12 12 12 1 1 12 1 1 12 12 1 12 12 12 12 1 1 12 12 12 1 15 16 15 16 12 12 12 12 12 7 12 1 1 1 12 12 12 12 12 12 12 12 12 12 7 12 16 15 16 12 12 100 12 12 12 12 12 1 12 1 12 1 7 12 100 1 1 1 12 12 1 12 12 1 1 12 12 1 12 12 12 12 1 12 12 12 12 12 12 12 12 12 12 12 16 15 16 12 12 12 15 16 12 12 12 12 1 12 12 12 12 1 12 12 12 12 12 12 12 16 15 16 12 100 12 1 1 1 12 12 12 1 12 1 1 1 1 1 12 1 12 12 12 1 12 12 1 1 12 1 12 12 7 12 12 12 12 12 1 12 12 1 1 12 100 12 1 12 1 12 12 12 1 1 12 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 10 10 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 10 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 10 1 1 1 1 1 1 10 1 1 1 1 1 1 10 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 12 12 100 12 12 12 1 1 100 1 1 1 100 1 1 +staticfield java/lang/Module ALL_UNNAMED_MODULE Ljava/lang/Module; java/lang/Module +staticfield java/lang/Module ALL_UNNAMED_MODULE_SET Ljava/util/Set; java/util/ImmutableCollections$Set12 +staticfield java/lang/Module EVERYONE_MODULE Ljava/lang/Module; java/lang/Module +staticfield java/lang/Module EVERYONE_SET Ljava/util/Set; java/util/ImmutableCollections$Set12 +staticfield java/lang/Module $assertionsDisabled Z 1 +instanceKlass com/google/common/reflect/Element +instanceKlass java/lang/reflect/Executable +instanceKlass java/lang/reflect/Field +ciInstanceKlass java/lang/reflect/AccessibleObject 1 1 405 10 9 10 10 10 10 100 10 10 9 7 10 11 7 100 10 7 100 10 10 7 10 10 100 10 100 10 10 10 10 10 10 10 10 10 10 8 100 10 10 8 10 10 8 8 8 8 8 8 100 10 10 9 10 10 10 18 10 10 10 11 100 100 8 10 10 10 8 10 8 10 10 100 8 10 11 10 10 10 10 10 9 100 10 10 9 10 8 10 8 10 9 100 10 7 10 10 7 9 7 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 12 100 12 12 12 7 12 100 12 12 12 12 1 12 12 1 1 12 1 1 12 12 1 12 12 1 12 1 7 12 12 12 12 12 12 12 12 1 1 12 1 12 12 1 1 1 1 1 1 1 12 12 12 12 12 7 12 1 15 16 15 16 12 12 12 1 1 1 12 12 1 12 1 12 1 1 12 12 12 12 12 12 12 12 12 12 100 12 1 100 12 1 12 12 1 1 1 1 7 12 1 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 10 10 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 12 12 1 1 100 1 1 100 1 1 +staticfield java/lang/reflect/AccessibleObject reflectionFactory Ljdk/internal/reflect/ReflectionFactory; jdk/internal/reflect/ReflectionFactory +ciInstanceKlass java/lang/reflect/Field 1 1 433 9 10 10 10 9 10 10 10 10 9 9 9 9 9 9 9 100 8 10 7 10 9 9 10 10 10 10 10 10 7 10 10 10 10 10 10 10 100 10 8 10 10 8 10 10 8 8 10 11 9 10 10 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 10 10 10 10 10 9 10 10 10 10 11 10 100 10 10 9 10 11 10 10 9 10 10 7 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 100 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 100 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 100 1 1 1 1 1 1 1 1 12 12 100 12 100 12 12 12 12 100 12 12 12 12 12 12 12 12 12 1 1 12 1 12 12 12 12 7 12 12 12 12 12 1 12 12 12 12 12 12 1 1 12 12 1 12 12 1 1 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 7 12 12 7 12 12 12 1 100 12 7 12 12 7 12 7 12 12 12 100 12 100 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 +ciInstanceKlass java/lang/reflect/Parameter 0 0 226 10 9 9 9 9 100 10 10 10 100 10 10 11 10 10 10 10 10 8 8 10 10 10 8 10 8 10 9 10 9 10 10 10 10 10 10 10 10 11 10 100 10 10 10 10 10 9 100 10 11 11 100 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 100 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 12 12 12 12 12 1 12 12 100 12 1 12 12 12 100 12 12 12 12 1 1 12 12 12 1 1 12 12 12 12 12 12 12 12 12 100 12 12 100 12 12 1 100 12 12 12 12 12 12 1 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +instanceKlass java/lang/reflect/Constructor +instanceKlass java/lang/reflect/Method +ciInstanceKlass java/lang/reflect/Executable 1 1 458 10 10 10 11 10 10 10 10 10 7 8 7 10 10 10 7 8 10 10 10 10 8 8 10 10 100 8 10 8 10 8 11 10 10 11 10 8 8 10 10 100 10 10 10 10 10 10 7 10 10 10 10 10 100 10 100 8 10 10 3 100 8 10 10 10 10 10 8 8 8 9 10 100 8 9 10 10 10 10 10 10 7 10 10 100 10 7 10 10 11 10 10 10 9 10 7 10 10 9 10 10 9 10 9 10 9 7 100 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 100 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 100 100 1 1 1 1 1 1 1 1 1 1 1 1 12 7 12 12 7 12 7 12 12 12 12 12 1 1 1 12 12 1 1 12 7 12 12 12 1 1 12 1 1 12 1 12 1 7 12 12 12 1 1 12 12 1 12 12 7 12 12 12 1 12 12 12 12 100 12 12 1 1 12 12 1 1 12 12 12 12 1 1 1 12 12 1 1 12 12 12 12 12 12 12 12 12 1 100 12 1 7 12 12 12 12 100 12 12 12 12 1 12 12 100 12 100 12 12 12 12 12 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +ciInstanceKlass java/lang/reflect/Method 1 1 441 9 10 10 9 10 10 10 10 9 9 9 9 9 9 9 9 9 9 9 100 8 10 7 10 9 8 10 10 10 10 10 10 10 7 10 10 10 7 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 7 8 10 100 8 10 10 10 10 10 10 10 11 9 10 10 10 10 11 10 7 10 10 10 10 9 10 10 10 10 10 11 10 7 100 100 10 10 10 100 10 8 10 10 10 10 10 8 10 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 100 7 7 1 100 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 7 12 7 12 12 12 12 7 12 12 12 12 12 12 12 12 12 12 12 12 12 1 1 12 1 12 12 1 7 12 7 12 12 12 12 12 12 1 12 12 7 12 12 7 12 12 12 12 12 7 12 12 12 12 12 12 12 1 1 1 1 12 12 12 12 12 12 12 7 12 12 12 12 12 12 12 1 12 12 12 12 12 7 12 12 7 12 7 12 7 12 7 12 7 12 1 1 1 12 12 12 1 1 12 12 12 12 1 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +ciInstanceKlass java/lang/reflect/Constructor 1 1 415 10 10 9 10 10 10 9 10 9 9 9 9 9 9 9 9 100 8 10 7 10 9 10 10 10 10 10 7 100 8 10 10 10 10 10 7 10 7 10 10 10 10 10 10 10 10 10 100 8 10 10 100 8 10 10 10 10 10 10 10 9 10 10 100 8 10 11 10 10 10 9 10 10 10 10 10 10 10 10 10 100 8 10 10 10 10 10 10 10 11 9 10 10 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 100 100 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 12 7 12 12 12 12 7 12 12 12 12 12 12 12 12 12 12 12 1 1 12 1 12 12 7 12 7 12 12 12 12 1 1 1 12 12 12 12 1 7 12 12 7 12 12 100 12 12 12 12 12 1 1 12 1 1 12 12 12 12 12 12 12 12 12 12 1 1 12 12 12 12 12 12 7 12 12 12 12 12 12 12 12 12 1 1 12 12 12 12 100 12 100 12 100 12 100 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 +instanceKlass jdk/internal/reflect/FieldAccessorImpl +instanceKlass jdk/internal/reflect/ConstructorAccessorImpl +instanceKlass jdk/internal/reflect/MethodAccessorImpl +ciInstanceKlass jdk/internal/reflect/MagicAccessorImpl 1 1 16 10 100 7 1 1 1 1 1 1 1 1 1 12 1 1 +instanceKlass jdk/internal/reflect/GeneratedMethodAccessor2 +instanceKlass jdk/internal/reflect/GeneratedMethodAccessor1 +instanceKlass jdk/internal/reflect/DelegatingMethodAccessorImpl +instanceKlass jdk/internal/reflect/NativeMethodAccessorImpl +ciInstanceKlass jdk/internal/reflect/MethodAccessorImpl 1 1 25 10 100 7 100 1 1 1 1 1 1 1 1 1 1 100 100 1 1 12 1 1 1 1 1 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor26 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor25 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor24 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor23 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor22 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor21 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor20 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor19 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor18 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor17 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor16 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor15 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor14 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor13 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor12 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor11 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor10 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor9 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor8 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor7 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor6 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor5 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor4 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor3 +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor2 +instanceKlass jdk/internal/reflect/BootstrapConstructorAccessorImpl +instanceKlass jdk/internal/reflect/GeneratedConstructorAccessor1 +instanceKlass jdk/internal/reflect/DelegatingConstructorAccessorImpl +instanceKlass jdk/internal/reflect/NativeConstructorAccessorImpl +ciInstanceKlass jdk/internal/reflect/ConstructorAccessorImpl 1 1 27 10 100 7 100 1 1 1 1 1 1 1 1 1 1 100 100 100 1 1 12 1 1 1 1 1 1 +ciInstanceKlass jdk/internal/reflect/DelegatingClassLoader 1 1 18 10 100 7 1 1 1 1 1 1 1 1 1 1 1 12 1 1 +ciInstanceKlass jdk/internal/reflect/ConstantPool 1 1 138 10 9 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 7 7 8 10 100 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 1 1 7 12 1 1 1 1 1 1 1 +instanceKlass jdk/internal/reflect/UnsafeFieldAccessorImpl +ciInstanceKlass jdk/internal/reflect/FieldAccessorImpl 1 1 59 10 100 7 100 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 1 1 1 1 1 +instanceKlass jdk/internal/reflect/UnsafeObjectFieldAccessorImpl +instanceKlass jdk/internal/reflect/UnsafeQualifiedFieldAccessorImpl +instanceKlass jdk/internal/reflect/UnsafeStaticFieldAccessorImpl +ciInstanceKlass jdk/internal/reflect/UnsafeFieldAccessorImpl 1 1 254 10 9 10 10 9 10 9 10 10 9 10 10 10 10 100 10 10 10 8 10 10 100 8 10 8 10 8 10 100 10 10 8 10 8 10 8 10 8 10 8 10 8 10 8 10 8 10 8 10 10 8 8 8 8 8 8 10 8 8 8 10 10 7 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 7 12 12 7 12 12 12 12 12 12 12 7 12 12 1 12 12 1 12 1 1 12 1 12 1 12 1 12 1 12 1 100 12 1 100 12 1 100 12 1 100 12 1 100 12 1 100 12 1 100 12 1 100 12 12 1 1 1 1 1 1 12 1 1 1 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield jdk/internal/reflect/UnsafeFieldAccessorImpl unsafe Ljdk/internal/misc/Unsafe; jdk/internal/misc/Unsafe +instanceKlass jdk/internal/reflect/UnsafeStaticIntegerFieldAccessorImpl +instanceKlass jdk/internal/reflect/UnsafeQualifiedStaticFieldAccessorImpl +ciInstanceKlass jdk/internal/reflect/UnsafeStaticFieldAccessorImpl 1 1 43 10 9 10 9 7 7 8 10 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 7 12 12 1 1 7 12 1 1 1 1 1 1 1 1 1 +ciInstanceKlass jdk/internal/reflect/CallerSensitive 0 0 17 100 100 100 1 1 1 1 1 1 1 1 1 1 1 1 1 +instanceKlass java/lang/invoke/DelegatingMethodHandle +instanceKlass java/lang/invoke/BoundMethodHandle +instanceKlass java/lang/invoke/DirectMethodHandle +ciInstanceKlass java/lang/invoke/MethodHandle 1 1 489 9 10 10 7 7 10 9 10 10 10 10 10 10 11 10 10 10 9 10 100 100 10 8 10 10 8 10 10 10 10 10 10 10 10 10 10 7 10 10 10 8 10 8 10 10 10 10 8 10 8 10 8 10 9 100 10 9 9 8 10 10 10 10 10 10 10 10 10 10 10 8 10 8 10 10 10 10 10 9 8 10 10 8 10 10 10 10 10 100 8 10 10 9 10 7 10 10 9 10 10 8 9 9 9 10 10 10 10 7 10 8 10 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 7 12 1 1 12 12 12 12 12 7 12 12 12 100 12 12 12 12 12 12 1 1 1 12 12 1 12 12 7 12 12 12 12 12 12 12 7 12 1 12 12 12 1 7 12 1 12 12 12 12 1 12 1 12 1 100 12 12 1 100 12 100 1 12 12 12 12 12 12 12 12 12 12 12 1 12 1 12 12 12 12 12 12 1 12 12 1 12 12 7 12 12 1 1 12 12 12 1 100 12 12 12 12 12 1 12 12 12 7 12 12 12 12 1 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/lang/invoke/MethodHandle FORM_OFFSET J 20 +staticfield java/lang/invoke/MethodHandle $assertionsDisabled Z 1 +instanceKlass java/lang/invoke/DirectMethodHandle$Interface +instanceKlass java/lang/invoke/DirectMethodHandle$Constructor +instanceKlass java/lang/invoke/DirectMethodHandle$Special +instanceKlass java/lang/invoke/DirectMethodHandle$Accessor +ciInstanceKlass java/lang/invoke/DirectMethodHandle 1 1 922 7 7 100 7 7 10 10 100 10 10 10 10 10 10 7 7 10 10 10 10 10 10 9 100 10 9 10 10 10 10 10 10 7 10 10 10 8 10 7 10 7 10 10 10 10 10 10 100 10 10 7 10 10 10 10 8 10 10 10 10 10 9 7 10 10 10 100 10 8 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 8 9 8 9 9 8 9 9 8 9 9 8 10 10 7 9 7 10 100 10 10 10 10 7 10 10 10 7 10 10 10 10 10 9 10 9 9 10 10 7 7 7 9 10 10 10 10 9 10 100 10 100 10 10 8 9 9 10 9 10 9 9 10 10 10 10 10 10 10 9 10 10 10 10 10 9 10 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 8 9 9 10 100 10 9 10 7 9 10 10 10 10 10 8 8 8 8 10 9 10 7 10 8 9 10 8 8 8 9 8 8 8 8 8 8 7 8 10 10 8 8 10 10 10 10 7 7 1 1 1 1 1 1 1 100 1 1 1 1 7 1 1 1 1 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 1 3 1 1 3 1 3 1 1 1 1 1 1 1 1 1 1 1 1 1 1 3 1 3 1 1 1 1 3 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 12 12 1 12 12 12 12 12 12 1 1 12 12 12 12 12 12 12 1 12 12 12 12 12 12 12 1 12 12 12 1 12 1 12 1 12 12 12 12 12 1 12 12 1 12 12 12 12 12 12 12 12 12 7 12 1 12 7 12 12 1 1 12 12 12 12 12 12 12 12 12 12 12 12 7 12 12 12 12 12 1 12 1 12 12 1 12 12 1 12 12 1 12 12 1 12 1 12 1 12 12 12 12 1 12 12 12 12 7 12 12 12 12 12 12 12 7 12 12 1 1 1 12 12 12 12 12 12 12 1 12 1 12 12 1 12 12 12 12 100 12 12 12 12 12 12 12 12 12 7 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 1 12 12 12 1 12 7 12 1 12 12 12 12 12 1 1 1 1 12 12 12 1 100 12 12 12 12 1 1 12 12 1 12 12 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/lang/invoke/DirectMethodHandle IMPL_NAMES Ljava/lang/invoke/MemberName$Factory; java/lang/invoke/MemberName$Factory +staticfield java/lang/invoke/DirectMethodHandle FT_UNCHECKED_REF I 8 +staticfield java/lang/invoke/DirectMethodHandle ACCESSOR_FORMS [Ljava/lang/invoke/LambdaForm; 132 [Ljava/lang/invoke/LambdaForm; +staticfield java/lang/invoke/DirectMethodHandle ALL_WRAPPERS [Lsun/invoke/util/Wrapper; 10 [Lsun/invoke/util/Wrapper; +staticfield java/lang/invoke/DirectMethodHandle NFS [Ljava/lang/invoke/LambdaForm$NamedFunction; 12 [Ljava/lang/invoke/LambdaForm$NamedFunction; +staticfield java/lang/invoke/DirectMethodHandle OBJ_OBJ_TYPE Ljava/lang/invoke/MethodType; java/lang/invoke/MethodType +staticfield java/lang/invoke/DirectMethodHandle LONG_OBJ_TYPE Ljava/lang/invoke/MethodType; java/lang/invoke/MethodType +staticfield java/lang/invoke/DirectMethodHandle $assertionsDisabled Z 1 +instanceKlass java/lang/invoke/VarHandleLongs$FieldInstanceReadOnly +instanceKlass java/lang/invoke/VarHandleObjects$Array +instanceKlass java/lang/invoke/VarHandleObjects$FieldInstanceReadOnly +instanceKlass java/lang/invoke/VarHandleInts$FieldInstanceReadOnly +ciInstanceKlass java/lang/invoke/VarHandle 1 1 298 10 9 100 10 9 10 10 10 9 10 10 9 9 10 10 10 10 10 10 10 9 100 10 9 10 10 7 7 10 10 10 9 10 9 10 10 10 100 10 9 9 10 10 10 10 10 10 10 7 10 10 9 8 10 7 10 7 100 1 1 100 1 100 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 100 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 12 12 1 12 12 12 12 12 12 12 12 12 12 12 12 12 12 100 12 12 1 12 12 12 1 1 12 100 12 12 12 12 12 12 12 12 1 7 12 12 7 12 12 12 12 12 12 12 1 7 12 12 12 1 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/lang/invoke/VarHandle AIOOBE_SUPPLIER Ljava/util/function/BiFunction; jdk/internal/util/Preconditions$1 +staticfield java/lang/invoke/VarHandle VFORM_OFFSET J 12 +staticfield java/lang/invoke/VarHandle $assertionsDisabled Z 1 +ciInstanceKlass java/lang/invoke/MemberName 1 1 747 7 7 100 9 10 9 10 10 10 10 10 10 10 9 10 100 100 10 8 10 10 10 10 9 8 10 7 7 10 10 7 7 7 10 9 100 8 10 10 10 10 10 10 10 10 10 10 8 8 8 10 10 9 3 10 10 10 10 10 10 10 10 10 7 8 10 10 8 9 8 9 10 8 10 10 10 10 10 100 10 10 8 10 10 8 10 10 7 10 10 8 8 100 10 10 100 10 10 10 10 10 10 10 10 10 3 10 3 10 3 3 3 3 3 3 100 10 10 10 3 9 10 3 10 10 10 10 10 10 10 10 10 10 10 10 10 10 100 10 10 10 100 10 10 10 10 10 10 8 10 10 10 10 10 10 10 10 10 10 10 10 10 100 10 100 8 10 7 10 10 10 10 10 8 8 8 8 10 10 10 8 8 10 8 10 10 10 8 8 10 10 8 10 8 10 10 10 8 8 8 100 10 8 8 8 8 10 100 100 100 10 100 10 100 10 9 10 100 100 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 3 1 3 1 3 1 3 1 3 1 3 1 1 1 1 1 1 1 1 3 1 1 1 1 3 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 100 1 1 1 1 1 1 1 1 1 7 1 1 12 12 12 12 12 12 12 12 12 12 100 12 12 1 1 12 1 12 12 12 12 12 1 100 12 1 1 12 1 12 12 1 1 12 12 12 12 12 12 12 12 12 12 1 1 1 100 12 12 12 12 12 12 12 12 12 12 12 1 12 12 100 100 12 1 12 12 12 12 12 1 12 12 1 12 12 1 12 12 1 12 12 1 1 1 12 100 12 1 12 12 12 12 12 12 12 12 12 12 100 1 12 7 12 12 12 12 12 7 12 12 12 12 12 12 12 12 12 1 12 1 12 12 12 12 12 12 12 12 12 12 12 12 12 1 12 1 1 1 12 12 12 12 12 1 1 1 1 12 12 12 1 1 12 1 12 12 1 1 12 1 12 1 12 12 12 1 1 1 1 1 1 1 1 12 1 1 1 1 1 12 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/lang/invoke/MemberName $assertionsDisabled Z 1 +ciInstanceKlass java/lang/invoke/ResolvedMethodName 1 1 16 10 100 100 1 1 1 1 1 1 1 1 1 12 1 1 +ciInstanceKlass java/lang/invoke/MethodHandleNatives 1 1 660 100 10 9 10 100 10 10 10 10 8 8 8 8 8 8 8 8 8 8 7 10 7 10 10 7 10 10 8 10 8 10 8 10 9 8 10 100 10 100 100 8 7 7 10 10 7 9 10 10 10 7 10 10 10 10 10 9 8 10 8 10 8 8 8 100 10 8 10 10 10 100 8 10 7 8 10 8 8 8 8 8 10 10 10 10 10 7 10 100 100 10 10 8 8 10 10 10 8 10 8 8 10 10 100 10 7 9 10 10 10 9 10 9 9 10 10 10 7 7 10 10 10 10 10 8 10 10 10 10 10 10 100 8 10 9 10 10 100 10 10 100 100 10 10 100 100 10 100 10 10 10 10 10 10 10 10 10 10 10 10 8 100 10 10 10 10 10 10 7 10 10 10 10 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 1 12 12 12 1 1 1 1 1 1 1 1 1 1 1 12 1 12 12 1 12 1 12 1 12 1 12 100 12 1 100 12 1 12 1 1 1 1 1 12 1 7 12 12 12 12 1 12 7 12 12 12 12 12 1 12 1 12 1 1 1 1 12 1 12 12 100 12 1 100 12 1 1 12 1 1 1 1 1 12 12 12 12 12 1 12 1 1 12 12 1 1 12 12 1 100 12 1 1 12 12 1 12 1 12 7 12 12 12 12 12 12 12 12 12 1 1 12 12 12 7 12 12 1 12 12 12 12 7 12 12 1 1 12 12 12 1 12 12 1 1 1 1 1 12 12 12 12 12 12 12 12 12 1 1 12 12 12 12 12 12 1 12 12 12 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/lang/invoke/MethodHandleNatives $assertionsDisabled Z 1 +ciInstanceKlass java/lang/invoke/LambdaForm 1 1 1075 100 9 10 10 9 9 10 100 10 9 10 9 10 7 9 9 9 9 10 7 10 7 10 10 10 10 10 10 9 100 10 9 10 10 10 10 10 7 10 10 8 10 10 10 7 10 10 7 10 10 9 9 9 10 9 10 10 100 10 9 10 10 100 10 10 10 10 10 10 10 8 10 10 8 8 9 9 9 10 10 10 9 10 10 10 10 10 10 9 10 8 8 8 8 8 8 8 8 10 9 7 10 9 10 10 10 10 10 10 10 10 10 10 10 10 10 10 100 8 10 10 10 10 8 10 8 8 10 9 10 10 100 10 10 10 10 9 8 10 10 10 10 10 9 8 10 100 10 10 9 9 8 10 10 100 100 10 10 8 8 100 8 10 10 10 8 8 9 10 10 8 8 8 100 8 100 8 100 8 10 8 9 10 10 9 10 10 10 10 10 10 10 10 10 10 8 100 10 10 9 10 8 8 100 8 8 8 8 8 8 8 8 10 10 10 10 8 8 8 10 8 10 8 8 8 8 8 10 10 10 10 10 10 10 10 10 10 10 9 8 10 9 10 9 9 9 9 7 10 9 10 10 7 8 10 9 7 10 8 100 10 9 9 10 7 10 10 10 9 10 10 10 9 10 10 10 9 10 9 7 9 10 9 10 100 10 7 9 100 1 1 100 1 100 1 1 1 7 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 3 1 3 1 1 1 1 1 3 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 100 1 1 12 12 12 12 12 12 1 12 12 12 7 12 12 12 12 12 12 1 12 1 12 12 100 12 100 12 12 12 12 1 12 12 12 12 12 12 12 1 12 1 12 12 12 1 12 12 1 12 12 12 12 12 12 12 12 12 1 12 12 12 12 1 12 12 12 12 12 12 12 1 12 12 1 1 12 12 12 12 7 12 12 12 7 12 12 12 12 12 12 12 1 1 1 1 1 1 1 1 12 12 1 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 1 1 12 12 12 1 12 1 1 12 12 12 12 1 12 12 7 12 12 12 1 100 12 12 12 12 12 12 1 12 12 7 12 12 1 12 12 1 1 12 1 1 1 1 12 12 12 1 1 12 12 12 1 1 1 1 1 1 1 1 1 12 1 12 12 12 12 12 12 12 12 12 12 12 12 1 12 12 12 12 1 1 1 1 1 1 1 1 1 1 1 12 12 12 12 1 1 1 12 1 12 1 1 1 1 1 12 12 12 7 12 12 12 12 12 12 12 12 12 1 12 12 12 12 12 12 12 1 7 12 12 12 12 1 1 12 12 1 12 1 1 12 12 12 12 1 12 7 12 12 7 12 12 12 12 12 12 12 12 12 12 12 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/lang/invoke/LambdaForm COMPILE_THRESHOLD I 0 +staticfield java/lang/invoke/LambdaForm INTERNED_ARGUMENTS [[Ljava/lang/invoke/LambdaForm$Name; 5 [[Ljava/lang/invoke/LambdaForm$Name; +staticfield java/lang/invoke/LambdaForm IMPL_NAMES Ljava/lang/invoke/MemberName$Factory; java/lang/invoke/MemberName$Factory +staticfield java/lang/invoke/LambdaForm LF_identity [Ljava/lang/invoke/LambdaForm; 6 [Ljava/lang/invoke/LambdaForm; +staticfield java/lang/invoke/LambdaForm LF_zero [Ljava/lang/invoke/LambdaForm; 6 [Ljava/lang/invoke/LambdaForm; +staticfield java/lang/invoke/LambdaForm NF_identity [Ljava/lang/invoke/LambdaForm$NamedFunction; 6 [Ljava/lang/invoke/LambdaForm$NamedFunction; +staticfield java/lang/invoke/LambdaForm NF_zero [Ljava/lang/invoke/LambdaForm$NamedFunction; 6 [Ljava/lang/invoke/LambdaForm$NamedFunction; +staticfield java/lang/invoke/LambdaForm createFormsLock Ljava/lang/Object; java/lang/Object +staticfield java/lang/invoke/LambdaForm DEBUG_NAME_COUNTERS Ljava/util/HashMap; null +staticfield java/lang/invoke/LambdaForm DEBUG_NAMES Ljava/util/HashMap; null +staticfield java/lang/invoke/LambdaForm TRACE_INTERPRETER Z 0 +staticfield java/lang/invoke/LambdaForm $assertionsDisabled Z 1 +ciInstanceKlass java/lang/invoke/MethodType 1 1 674 7 10 9 9 9 10 9 8 10 10 9 9 10 100 10 8 10 10 10 100 8 10 100 10 10 10 10 11 9 11 7 7 10 10 9 10 10 10 10 10 10 9 7 10 7 10 10 10 10 10 10 10 10 10 8 8 10 9 100 10 10 10 10 10 10 10 10 10 8 10 10 10 10 10 10 10 10 10 9 10 10 10 10 9 7 10 10 10 10 10 10 10 10 100 8 8 8 10 10 10 10 11 11 10 9 10 10 10 10 10 10 10 10 10 10 10 10 9 7 10 10 10 10 10 10 10 8 10 11 9 10 10 10 10 10 9 9 10 9 10 10 100 10 7 10 7 7 9 100 1 1 100 1 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 3 1 3 1 3 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 100 100 1 100 100 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 100 1 1 1 1 1 1 1 100 1 12 12 12 12 7 12 7 12 1 100 12 12 7 7 12 1 1 12 12 12 1 1 12 1 12 12 12 12 12 12 1 7 12 12 12 12 12 12 7 12 12 12 12 1 12 1 12 12 7 12 12 12 12 12 12 12 1 1 12 12 1 12 12 12 12 100 12 12 12 1 12 7 12 12 12 12 12 12 12 12 12 12 12 12 12 1 12 7 12 12 7 12 12 12 1 1 1 1 12 12 12 12 12 100 12 12 12 12 12 12 12 12 12 12 12 12 12 12 1 12 12 12 12 12 12 12 1 7 12 12 12 12 12 100 12 12 12 12 12 100 12 12 100 12 12 12 1 1 1 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/lang/invoke/MethodType internTable Ljava/lang/invoke/MethodType$ConcurrentWeakInternSet; java/lang/invoke/MethodType$ConcurrentWeakInternSet +staticfield java/lang/invoke/MethodType NO_PTYPES [Ljava/lang/Class; 0 [Ljava/lang/Class; +staticfield java/lang/invoke/MethodType objectOnlyTypes [Ljava/lang/invoke/MethodType; 20 [Ljava/lang/invoke/MethodType; +staticfield java/lang/invoke/MethodType METHOD_HANDLE_ARRAY [Ljava/lang/Class; 1 [Ljava/lang/Class; +staticfield java/lang/invoke/MethodType serialPersistentFields [Ljava/io/ObjectStreamField; 0 [Ljava/io/ObjectStreamField; +staticfield java/lang/invoke/MethodType $assertionsDisabled Z 1 +ciInstanceKlass java/lang/BootstrapMethodError 0 0 45 10 10 10 10 10 100 100 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 100 1 1 12 12 12 12 12 1 1 1 1 1 1 1 1 +instanceKlass java/lang/invoke/VolatileCallSite +instanceKlass java/lang/invoke/MutableCallSite +instanceKlass java/lang/invoke/ConstantCallSite +ciInstanceKlass java/lang/invoke/CallSite 1 1 299 10 10 9 10 9 10 10 100 7 10 7 10 10 10 100 100 10 10 10 8 10 10 10 10 10 10 10 10 9 9 7 8 10 10 100 10 9 8 100 10 10 100 8 10 10 10 100 10 10 10 10 10 9 9 8 10 9 100 10 10 10 10 10 10 100 8 10 10 100 100 100 8 10 10 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 7 1 1 1 1 1 1 12 12 12 12 12 12 12 1 1 12 1 12 12 12 1 1 12 12 1 12 12 12 12 12 100 12 12 12 100 12 1 12 12 1 100 12 12 12 12 1 1 12 12 1 12 12 12 12 12 12 12 100 12 12 1 100 12 12 12 12 7 12 1 1 12 1 1 1 1 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/lang/invoke/CallSite $assertionsDisabled Z 1 +ciInstanceKlass java/lang/invoke/MethodHandleNatives$CallSiteContext 1 1 49 10 7 10 10 10 10 7 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 12 1 7 12 7 12 12 1 1 1 1 1 1 1 1 100 1 1 1 1 1 +ciInstanceKlass java/lang/invoke/ConstantCallSite 1 1 49 10 9 10 100 10 9 100 10 10 7 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 12 12 12 1 12 12 1 12 1 1 1 1 +ciInstanceKlass java/lang/invoke/MutableCallSite 0 0 67 10 10 9 10 10 10 9 10 10 100 10 100 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 12 12 12 12 12 12 12 12 100 12 1 12 1 1 1 1 1 1 1 1 1 1 1 +ciInstanceKlass java/lang/invoke/VolatileCallSite 0 0 41 10 10 10 10 10 10 100 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 12 12 12 1 1 1 1 1 1 1 +ciInstanceKlass java/lang/AssertionStatusDirectives 0 0 24 10 100 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 1 1 +instanceKlass java/lang/StringBuilder +instanceKlass java/lang/StringBuffer +ciInstanceKlass java/lang/AbstractStringBuilder 1 1 522 7 7 10 9 9 9 9 10 9 10 10 10 10 10 10 10 10 7 3 10 3 100 10 10 100 10 10 10 10 10 10 10 100 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 11 10 10 8 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 18 100 10 18 10 10 10 11 10 10 10 100 10 8 10 10 8 8 10 10 10 10 100 10 100 10 100 10 7 100 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 7 1 1 1 100 1 1 1 1 1 1 1 1 1 12 12 12 12 12 7 12 12 12 7 12 12 12 12 12 7 12 1 12 1 12 1 12 12 12 12 12 12 1 12 100 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 1 12 12 12 12 12 12 7 12 12 12 7 12 12 12 12 12 12 12 12 12 7 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 1 15 16 15 16 12 1 100 12 15 12 12 12 12 12 12 1 1 12 12 1 1 12 12 12 1 1 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 10 1 10 1 1 1 1 1 10 1 1 1 1 1 1 1 1 1 1 100 12 12 12 1 1 100 1 1 100 1 1 +staticfield java/lang/AbstractStringBuilder EMPTYVALUE [B 0 +ciInstanceKlass java/lang/StringBuffer 1 1 471 10 10 10 11 10 10 10 9 10 10 10 9 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 9 10 10 100 10 10 10 10 10 8 10 8 10 8 10 10 10 10 7 10 100 8 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 7 10 7 10 9 9 9 7 100 100 100 1 1 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 100 1 1 1 100 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 7 12 100 1 12 100 12 12 1 12 1 12 1 12 12 100 12 12 12 1 1 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 1 12 1 12 7 12 7 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/lang/StringBuffer serialPersistentFields [Ljava/io/ObjectStreamField; 3 [Ljava/io/ObjectStreamField; +ciInstanceKlass java/lang/StringBuilder 1 1 409 10 10 10 11 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 9 9 10 10 10 10 10 10 10 10 10 10 10 100 100 8 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 7 10 7 100 100 100 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 100 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 7 12 100 100 12 12 12 12 12 100 12 12 12 1 1 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 1 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +ciInstanceKlass jdk/internal/misc/Unsafe 1 1 1196 10 9 9 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 100 10 10 10 5 0 10 10 10 10 10 10 10 10 10 100 10 10 10 10 10 10 10 10 10 10 10 10 10 10 5 0 5 0 5 0 10 10 10 100 10 10 10 10 10 10 10 10 10 100 10 10 10 10 8 10 8 8 10 9 9 9 9 9 9 9 9 10 10 10 10 5 0 5 0 9 10 10 10 10 10 8 3 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 100 10 100 10 9 5 0 10 5 0 10 5 0 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 5 0 5 0 5 0 10 10 10 10 10 8 100 11 8 11 10 10 7 10 7 10 9 7 9 7 9 7 9 7 9 7 9 7 9 7 9 7 9 10 9 9 9 9 9 9 9 9 9 10 10 10 7 1 1 1 1 1 3 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 12 12 12 12 7 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 1 12 12 12 12 12 12 12 12 12 12 12 1 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 1 12 12 12 12 12 12 12 12 1 12 12 12 1 12 1 1 12 7 12 100 7 100 100 7 100 12 12 12 12 12 12 12 12 12 12 1 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 1 1 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 100 12 1 1 12 1 12 12 12 1 1 12 12 12 1 12 1 12 1 12 1 12 1 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield jdk/internal/misc/Unsafe theUnsafe Ljdk/internal/misc/Unsafe; jdk/internal/misc/Unsafe +staticfield jdk/internal/misc/Unsafe ARRAY_BOOLEAN_BASE_OFFSET I 16 +staticfield jdk/internal/misc/Unsafe ARRAY_BYTE_BASE_OFFSET I 16 +staticfield jdk/internal/misc/Unsafe ARRAY_SHORT_BASE_OFFSET I 16 +staticfield jdk/internal/misc/Unsafe ARRAY_CHAR_BASE_OFFSET I 16 +staticfield jdk/internal/misc/Unsafe ARRAY_INT_BASE_OFFSET I 16 +staticfield jdk/internal/misc/Unsafe ARRAY_LONG_BASE_OFFSET I 16 +staticfield jdk/internal/misc/Unsafe ARRAY_FLOAT_BASE_OFFSET I 16 +staticfield jdk/internal/misc/Unsafe ARRAY_DOUBLE_BASE_OFFSET I 16 +staticfield jdk/internal/misc/Unsafe ARRAY_OBJECT_BASE_OFFSET I 16 +staticfield jdk/internal/misc/Unsafe ARRAY_BOOLEAN_INDEX_SCALE I 1 +staticfield jdk/internal/misc/Unsafe ARRAY_BYTE_INDEX_SCALE I 1 +staticfield jdk/internal/misc/Unsafe ARRAY_SHORT_INDEX_SCALE I 2 +staticfield jdk/internal/misc/Unsafe ARRAY_CHAR_INDEX_SCALE I 2 +staticfield jdk/internal/misc/Unsafe ARRAY_INT_INDEX_SCALE I 4 +staticfield jdk/internal/misc/Unsafe ARRAY_LONG_INDEX_SCALE I 8 +staticfield jdk/internal/misc/Unsafe ARRAY_FLOAT_INDEX_SCALE I 4 +staticfield jdk/internal/misc/Unsafe ARRAY_DOUBLE_INDEX_SCALE I 8 +staticfield jdk/internal/misc/Unsafe ARRAY_OBJECT_INDEX_SCALE I 4 +staticfield jdk/internal/misc/Unsafe ADDRESS_SIZE I 8 +staticfield jdk/internal/misc/Unsafe BE Z 0 +staticfield jdk/internal/misc/Unsafe unalignedAccess Z 1 +ciInstanceKlass jdk/internal/module/Modules 1 1 483 10 9 11 11 11 11 11 11 11 11 10 10 18 10 100 10 10 10 10 11 10 10 10 10 9 10 10 10 100 100 11 10 11 10 10 10 10 10 11 18 11 10 11 100 11 11 11 10 10 18 11 18 11 10 18 18 10 9 11 100 10 11 11 7 11 10 100 10 10 10 11 10 100 10 18 10 100 8 10 10 18 11 11 10 10 10 18 10 10 7 10 10 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 100 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 100 100 100 100 100 100 100 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 12 12 7 12 12 12 12 12 12 12 12 12 100 12 1 15 16 15 16 12 100 12 1 100 12 100 12 12 12 12 12 12 12 12 12 100 12 1 1 12 100 12 12 12 12 100 12 12 12 12 16 15 16 12 12 100 12 100 12 1 12 12 12 12 100 12 16 15 16 12 12 16 15 16 12 12 12 15 16 15 16 12 12 12 1 12 12 1 12 1 12 12 12 12 12 1 15 16 12 12 1 1 12 12 15 16 12 12 12 15 12 1 12 7 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 10 1 10 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 10 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 10 1 1 1 1 1 1 10 1 1 1 1 1 1 10 1 10 1 1 1 1 1 1 1 1 1 1 1 1 1 10 1 1 1 1 1 10 1 1 10 1 1 1 1 1 100 12 12 12 12 12 12 12 12 12 1 1 100 1 1 1 1 1 100 1 1 +staticfield jdk/internal/module/Modules JLA Ljdk/internal/access/JavaLangAccess; java/lang/System$2 +staticfield jdk/internal/module/Modules $assertionsDisabled Z 1 +instanceKlass org/apache/tools/ant/DemuxInputStream +instanceKlass org/apache/commons/compress/archivers/ArchiveInputStream +instanceKlass jdk/nio/zipfs/ZipFileSystem$EntryInputStream +instanceKlass org/gradle/internal/io/StreamByteBuffer$StreamByteBufferInputStream +instanceKlass com/google/common/io/BaseEncoding$StandardBaseEncoding$2 +instanceKlass java/io/ObjectInputStream +instanceKlass org/apache/tools/ant/util/FileUtils$1 +instanceKlass org/gradle/util/internal/BulkReadInputStream +instanceKlass java/io/PipedInputStream +instanceKlass org/gradle/internal/remote/internal/inet/SocketConnection$SocketInputStream +instanceKlass org/gradle/internal/io/RandomAccessFileInputStream +instanceKlass com/esotericsoftware/kryo/io/Input +instanceKlass org/gradle/internal/serialize/kryo/KryoBackedDecoder$1 +instanceKlass org/gradle/internal/serialize/AbstractDecoder$DecoderStream +instanceKlass org/gradle/internal/stream/EncodedStream$EncodedInput +instanceKlass java/util/zip/ZipFile$ZipFileInputStream +instanceKlass java/io/FilterInputStream +instanceKlass java/io/FileInputStream +instanceKlass java/io/ByteArrayInputStream +ciInstanceKlass java/io/InputStream 1 1 170 100 10 100 10 10 10 10 7 3 10 100 8 10 7 10 3 100 8 10 7 10 11 10 11 11 11 7 10 5 0 10 8 10 8 10 10 7 100 1 1 1 1 3 1 3 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 1 12 7 12 12 1 12 1 1 12 1 7 12 1 1 1 12 100 12 12 12 12 7 12 12 1 12 100 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +ciInstanceKlass java/io/ByteArrayInputStream 1 1 96 10 9 9 9 9 10 10 10 10 10 10 7 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 12 12 7 12 7 12 7 12 7 12 12 100 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +ciInstanceKlass java/net/URL 1 1 744 10 10 10 9 9 10 10 10 9 10 8 10 100 10 10 8 10 9 100 8 10 10 8 9 10 9 10 10 9 9 8 9 10 8 9 10 10 8 10 7 10 10 10 10 10 8 10 10 8 9 8 10 10 100 10 10 10 100 8 10 10 8 10 10 10 10 10 10 8 10 7 10 10 10 9 10 9 10 10 100 100 10 10 10 10 10 10 7 10 10 10 100 10 10 8 9 10 10 9 10 100 10 10 10 10 10 10 10 10 10 10 10 9 9 100 8 10 10 9 10 8 10 8 10 10 8 8 10 100 10 10 10 7 100 10 9 10 8 10 100 10 10 8 9 10 10 10 10 10 11 10 10 9 10 10 10 8 10 7 100 10 8 8 10 8 8 8 100 10 9 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 100 8 10 10 10 10 10 8 7 10 7 10 7 10 7 7 10 9 9 7 10 10 100 1 1 1 1 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 100 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 12 12 100 12 12 12 12 12 1 12 1 12 1 12 12 1 1 12 12 1 12 12 12 12 12 12 12 1 12 12 1 12 12 7 12 1 12 1 12 12 12 12 12 1 12 12 1 12 1 12 12 1 12 12 12 1 1 12 1 12 12 12 12 12 12 1 12 1 7 12 12 100 12 12 12 12 100 12 1 1 12 12 12 12 12 12 1 12 1 12 12 1 12 100 12 12 100 12 12 1 12 12 12 12 12 12 12 7 12 12 12 12 12 1 1 12 12 12 1 7 12 1 12 12 1 1 12 1 100 12 12 12 1 1 12 12 1 12 1 100 12 100 12 12 12 12 12 7 12 12 12 12 12 12 100 12 12 12 1 1 12 1 12 12 12 12 12 12 12 12 12 12 12 12 12 12 1 1 12 12 12 1 1 1 1 1 1 12 7 12 12 1 7 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/net/URL defaultFactory Ljava/net/URLStreamHandlerFactory; java/net/URL$DefaultFactory +staticfield java/net/URL streamHandlerLock Ljava/lang/Object; java/lang/Object +staticfield java/net/URL serialPersistentFields [Ljava/io/ObjectStreamField; 7 [Ljava/io/ObjectStreamField; +ciInstanceKlass java/util/jar/Manifest 1 1 301 10 7 10 9 7 10 9 9 10 10 10 10 10 11 11 10 10 100 100 10 8 10 10 10 10 11 100 10 10 11 11 11 11 100 100 8 10 11 7 9 10 10 10 10 8 10 10 11 10 10 10 8 10 7 10 10 10 100 8 10 10 8 10 10 10 10 11 10 10 10 7 10 11 10 11 10 7 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 1 12 1 12 12 12 12 12 12 12 7 12 12 100 12 1 1 1 12 12 12 12 1 12 12 12 100 12 12 12 1 1 1 12 1 7 12 12 12 12 12 1 12 12 12 12 12 1 12 1 12 12 12 1 1 12 1 12 100 12 12 12 12 12 7 12 12 1 12 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +ciInstanceKlass jdk/internal/loader/ClassLoaders 1 1 143 10 9 9 9 7 11 100 11 11 10 10 100 100 10 9 8 10 7 10 7 10 10 7 10 8 10 8 8 7 10 7 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 12 1 100 12 1 12 12 100 12 100 12 1 1 7 12 12 1 7 12 1 12 1 12 12 1 12 1 7 12 1 1 1 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield jdk/internal/loader/ClassLoaders JLA Ljdk/internal/access/JavaLangAccess; java/lang/System$2 +staticfield jdk/internal/loader/ClassLoaders BOOT_LOADER Ljdk/internal/loader/ClassLoaders$BootClassLoader; jdk/internal/loader/ClassLoaders$BootClassLoader +staticfield jdk/internal/loader/ClassLoaders PLATFORM_LOADER Ljdk/internal/loader/ClassLoaders$PlatformClassLoader; jdk/internal/loader/ClassLoaders$PlatformClassLoader +staticfield jdk/internal/loader/ClassLoaders APP_LOADER Ljdk/internal/loader/ClassLoaders$AppClassLoader; jdk/internal/loader/ClassLoaders$AppClassLoader +instanceKlass jdk/internal/loader/ClassLoaders$BootClassLoader +instanceKlass jdk/internal/loader/ClassLoaders$PlatformClassLoader +instanceKlass jdk/internal/loader/ClassLoaders$AppClassLoader +ciInstanceKlass jdk/internal/loader/BuiltinClassLoader 1 1 717 10 10 9 9 7 10 9 9 10 10 11 100 100 10 10 8 10 10 7 10 10 11 11 11 7 9 8 8 10 10 9 11 7 10 10 10 10 10 10 10 11 10 7 10 10 10 100 8 10 10 8 10 10 11 11 7 7 10 11 11 10 7 10 10 7 7 10 7 7 10 10 100 10 11 100 100 10 10 100 100 10 10 18 10 10 18 100 10 7 10 10 10 10 10 9 100 10 10 10 10 10 10 10 10 10 10 18 7 10 10 10 10 100 10 7 10 10 10 11 7 10 7 100 10 10 11 10 10 10 10 10 10 10 10 8 10 10 10 100 8 8 10 10 8 8 10 11 9 10 9 9 9 9 9 9 10 8 10 7 10 10 7 7 10 11 10 10 10 100 10 10 10 7 10 10 8 10 7 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 7 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 100 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 7 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 7 12 12 12 12 1 12 12 12 12 12 12 1 1 12 1 12 12 1 12 12 7 12 12 12 1 12 1 1 12 7 12 12 12 1 12 12 12 7 12 12 12 12 12 7 12 1 7 12 12 1 1 12 1 12 12 12 12 1 1 12 12 1 12 12 1 1 12 1 1 12 7 12 1 12 12 1 1 12 12 1 1 12 12 1 15 16 15 16 12 12 12 15 16 1 7 12 1 12 12 12 12 12 1 12 12 12 12 12 12 12 12 12 15 16 12 1 12 12 12 12 1 12 100 1 1 12 12 12 12 1 12 1 12 12 12 12 12 12 12 12 12 12 12 1 12 12 12 1 1 1 12 1 1 7 12 7 12 7 12 12 12 12 12 12 12 12 12 1 12 1 12 12 1 1 12 12 12 12 1 12 12 1 12 12 1 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 10 10 1 1 1 1 10 1 1 1 1 1 1 1 1 1 1 1 1 1 10 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 12 12 12 12 1 1 100 1 1 100 1 1 +staticfield jdk/internal/loader/BuiltinClassLoader packageToModule Ljava/util/Map; java/util/concurrent/ConcurrentHashMap +staticfield jdk/internal/loader/BuiltinClassLoader $assertionsDisabled Z 1 +ciInstanceKlass jdk/internal/loader/ClassLoaders$AppClassLoader 1 1 134 8 10 9 10 10 10 10 10 10 7 8 10 10 10 9 11 10 10 100 10 7 7 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 12 12 7 12 100 12 12 12 12 12 1 1 12 7 12 100 12 12 100 12 12 7 12 1 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +ciInstanceKlass jdk/internal/loader/ClassLoaders$PlatformClassLoader 1 1 57 8 10 9 11 10 100 10 100 7 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 12 12 100 12 7 12 1 12 1 1 1 1 1 1 1 1 1 1 1 1 +ciInstanceKlass java/security/CodeSource 1 1 402 10 9 9 9 9 10 9 10 100 10 100 10 7 10 10 10 100 10 10 10 10 10 100 10 10 10 10 10 10 10 10 10 10 10 10 10 8 10 10 10 10 8 10 10 100 10 10 8 10 10 10 8 8 9 100 8 10 10 8 10 8 8 8 10 10 10 10 10 10 100 100 10 10 10 10 10 100 10 10 8 10 10 10 100 10 100 100 8 8 10 10 10 100 10 10 11 10 10 11 10 10 8 100 10 10 100 10 11 11 7 100 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 100 100 1 1 1 1 1 1 1 1 1 12 12 12 12 12 7 12 12 100 12 100 12 1 12 12 100 1 12 100 12 12 12 1 12 100 100 12 100 12 12 12 12 12 12 1 12 12 12 12 1 12 1 12 1 12 12 12 1 1 12 1 1 12 12 1 12 1 1 1 12 12 12 12 12 12 1 1 12 12 12 12 12 1 12 1 12 12 12 1 12 1 1 1 1 12 100 12 1 12 12 12 12 12 100 1 1 12 12 1 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +ciInstanceKlass java/lang/StackTraceElement 1 0 224 10 10 9 9 9 9 8 10 100 9 8 9 9 9 8 10 10 100 10 10 8 10 10 8 8 8 10 8 8 10 8 8 100 10 10 10 10 9 10 10 100 10 10 10 10 10 10 10 10 10 100 100 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 3 1 3 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 100 100 100 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 12 12 12 12 12 12 1 100 12 1 12 1 12 12 12 1 12 12 1 12 1 12 12 1 1 1 12 1 1 12 1 1 1 12 12 12 12 12 12 12 1 12 100 12 100 12 12 12 12 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +instanceKlass java/nio/IntBuffer +instanceKlass java/nio/LongBuffer +instanceKlass java/nio/CharBuffer +instanceKlass java/nio/ByteBuffer +ciInstanceKlass java/nio/Buffer 1 1 195 100 10 9 9 10 9 10 10 100 100 10 8 10 10 8 8 10 10 8 9 100 8 10 8 8 9 10 8 8 8 10 8 8 8 100 10 100 10 100 10 100 10 7 10 10 9 7 10 10 7 1 1 1 1 1 1 3 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 12 12 12 12 1 1 1 12 12 1 1 12 12 1 12 1 1 12 1 1 12 12 1 1 1 12 1 1 1 1 1 1 1 1 7 12 7 12 12 1 7 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/nio/Buffer UNSAFE Ljdk/internal/misc/Unsafe; jdk/internal/misc/Unsafe +staticfield java/nio/Buffer $assertionsDisabled Z 1 +ciInstanceKlass java/lang/StackWalker 0 0 235 9 10 100 10 10 11 10 10 100 10 100 8 10 10 10 10 9 9 9 9 10 9 10 11 100 8 10 10 9 10 10 10 18 100 8 10 10 10 9 11 10 100 100 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 100 12 1 100 12 12 100 12 12 12 1 12 1 1 12 12 12 12 12 12 12 12 12 12 100 12 12 1 1 12 12 12 100 12 100 12 1 15 16 15 16 12 1 1 12 100 12 12 100 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 10 10 1 1 1 1 1 1 1 1 1 1 1 1 100 12 12 1 1 100 1 1 100 1 1 +ciInstanceKlass java/lang/StackStreamFactory$AbstractStackWalker 1 0 306 100 100 3 10 10 10 9 10 9 9 9 9 9 10 10 9 10 10 9 9 100 10 8 10 10 8 10 10 100 8 10 8 10 9 10 9 8 5 0 8 8 9 10 10 10 9 10 10 10 10 10 10 8 10 10 10 10 8 100 10 10 10 10 10 10 9 8 10 10 10 10 10 10 10 10 10 10 8 100 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 100 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 100 12 12 12 12 12 12 12 100 12 100 12 12 12 12 12 12 100 12 1 1 12 12 1 12 100 12 1 1 12 1 12 100 12 12 12 1 1 1 12 12 12 12 12 12 12 12 12 12 12 1 12 12 12 12 1 1 12 12 12 12 12 100 12 12 1 12 12 12 12 12 12 12 12 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +instanceKlass java/lang/LiveStackFrameInfo +ciInstanceKlass java/lang/StackFrameInfo 0 0 132 10 9 9 9 11 9 11 10 10 10 11 11 11 10 9 10 10 10 11 10 9 10 100 8 10 10 100 100 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 100 1 1 1 1 1 12 100 12 12 100 12 12 12 12 100 12 12 12 12 12 12 12 12 12 12 12 12 12 12 1 1 12 100 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +ciInstanceKlass java/lang/LiveStackFrameInfo 0 0 97 10 9 9 9 9 9 100 10 10 8 10 100 8 8 8 10 100 10 100 10 100 100 100 1 1 1 1 1 1 1 1 3 1 3 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 12 12 12 12 12 12 1 12 12 1 12 1 1 1 1 1 12 1 12 1 1 1 1 1 1 1 1 1 +instanceKlass java/util/concurrent/locks/AbstractQueuedSynchronizer +ciInstanceKlass java/util/concurrent/locks/AbstractOwnableSynchronizer 1 1 32 10 9 7 7 100 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 1 1 1 +ciInstanceKlass java/lang/Boolean 1 1 128 10 9 10 10 8 10 9 9 8 10 7 10 10 100 100 10 10 8 10 9 7 100 100 1 1 1 1 1 1 1 1 1 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 12 1 12 12 12 1 12 1 12 7 12 1 1 12 12 1 7 12 12 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/lang/Boolean TRUE Ljava/lang/Boolean; java/lang/Boolean +staticfield java/lang/Boolean FALSE Ljava/lang/Boolean; java/lang/Boolean +staticfield java/lang/Boolean TYPE Ljava/lang/Class; java/lang/Class +ciInstanceKlass java/lang/Character 1 1 551 7 100 10 9 9 10 10 10 10 10 10 3 3 3 3 3 10 10 3 11 11 10 10 100 10 10 3 10 10 10 100 8 7 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 5 0 10 10 10 10 10 10 10 10 10 10 9 100 10 10 10 3 10 10 10 100 10 10 10 10 8 10 9 10 10 10 10 10 10 10 10 10 100 8 10 10 8 10 9 100 100 7 1 1 100 1 100 1 100 1 1 1 1 3 1 3 1 1 3 1 3 1 1 1 1 1 1 1 3 1 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 3 1 1 1 1 1 1 1 3 1 1 3 1 1 1 1 1 3 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 12 12 12 12 12 12 12 12 7 12 12 12 12 1 12 12 12 12 1 1 1 100 12 12 12 12 12 12 12 12 12 7 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 1 12 12 100 12 12 12 1 12 12 12 1 12 100 12 12 12 12 12 12 12 1 1 12 7 12 1 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/lang/Character TYPE Ljava/lang/Class; java/lang/Class +staticfield java/lang/Character $assertionsDisabled Z 1 +instanceKlass com/google/common/cache/Striped64 +instanceKlass java/math/BigDecimal +instanceKlass java/util/concurrent/atomic/Striped64 +instanceKlass java/math/BigInteger +instanceKlass java/util/concurrent/atomic/AtomicLong +instanceKlass java/util/concurrent/atomic/AtomicInteger +instanceKlass java/lang/Long +instanceKlass java/lang/Integer +instanceKlass java/lang/Short +instanceKlass java/lang/Byte +instanceKlass java/lang/Double +instanceKlass java/lang/Float +ciInstanceKlass java/lang/Number 1 1 37 10 10 100 7 100 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 1 1 1 +ciInstanceKlass java/lang/Float 1 1 192 7 100 10 10 4 100 10 10 8 8 10 10 10 10 4 4 4 10 9 10 10 10 10 10 10 3 10 10 10 10 8 10 9 7 100 1 1 1 1 1 4 1 1 1 4 1 1 3 1 3 1 3 1 3 1 1 1 1 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 12 100 12 1 12 12 1 1 100 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 1 7 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/lang/Float TYPE Ljava/lang/Class; java/lang/Class +ciInstanceKlass java/lang/Double 1 1 254 7 100 10 10 10 100 10 10 6 0 8 10 8 10 8 6 0 10 100 5 0 5 0 8 8 10 10 8 10 8 8 8 10 10 10 10 10 10 10 10 6 0 6 0 6 0 10 9 10 10 10 10 5 0 10 10 10 10 8 10 9 7 100 1 1 1 1 1 6 0 1 1 1 6 0 1 1 3 1 3 1 3 1 3 1 1 1 1 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 12 12 12 1 12 100 12 1 12 1 12 1 12 1 1 1 100 12 12 1 12 1 1 1 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 1 7 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/lang/Double TYPE Ljava/lang/Class; java/lang/Class +ciInstanceKlass java/lang/Byte 1 1 178 7 10 9 10 100 100 10 8 10 8 10 10 10 10 10 10 10 10 8 8 10 9 10 10 10 10 10 5 0 10 8 10 9 7 100 7 1 1 1 1 1 3 1 3 1 1 1 1 1 1 1 3 1 3 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 12 12 12 1 1 12 1 12 1 12 12 12 12 12 12 12 12 1 1 12 12 12 12 12 12 12 1 7 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/lang/Byte TYPE Ljava/lang/Class; java/lang/Class +ciInstanceKlass java/lang/Short 1 1 186 7 100 10 10 100 100 10 8 10 8 10 10 10 10 10 10 9 10 10 10 8 8 10 9 10 10 10 10 10 3 3 5 0 10 8 10 9 100 100 100 1 1 1 1 1 3 1 3 1 1 1 1 1 1 1 3 1 3 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 12 12 1 1 12 1 12 1 12 12 12 12 12 12 12 12 12 12 1 1 12 12 12 12 12 12 12 1 7 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/lang/Short TYPE Ljava/lang/Class; java/lang/Class +ciInstanceKlass java/lang/Integer 1 1 417 7 100 7 7 10 9 9 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 9 9 100 8 10 100 10 8 10 10 8 10 8 10 3 10 3 10 10 10 7 11 100 10 11 10 8 10 8 100 10 10 5 0 8 10 10 10 10 7 9 9 10 10 9 10 10 10 10 100 100 10 10 8 8 10 8 8 8 8 8 8 10 10 10 5 0 3 3 3 3 10 3 10 10 8 10 9 3 3 3 3 3 3 9 7 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 3 1 3 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 100 12 12 100 12 12 100 12 12 12 7 12 12 12 12 12 12 12 12 12 1 1 12 1 12 1 12 12 1 12 1 12 12 12 12 7 12 1 1 12 1 12 1 1 12 12 1 12 12 12 12 1 12 12 12 12 12 12 12 7 12 1 1 12 12 1 1 12 1 1 1 1 1 1 12 12 12 12 12 12 1 7 12 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/lang/Integer TYPE Ljava/lang/Class; java/lang/Class +staticfield java/lang/Integer digits [C 36 +staticfield java/lang/Integer DigitTens [B 100 +staticfield java/lang/Integer DigitOnes [B 100 +staticfield java/lang/Integer sizeTable [I 10 +ciInstanceKlass java/lang/Long 1 1 482 7 100 7 7 10 9 9 10 10 10 10 10 10 10 10 5 0 5 0 7 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 7 5 0 5 0 9 9 5 0 100 8 10 8 10 8 8 10 5 0 10 5 0 10 10 10 100 11 100 10 11 10 8 10 8 100 10 10 8 8 11 10 10 10 5 0 5 0 9 10 10 8 8 10 8 8 8 8 8 8 10 10 10 10 9 10 10 10 100 100 10 10 10 10 10 10 10 5 0 5 0 5 0 10 5 0 5 0 10 10 10 8 10 9 7 100 7 1 1 1 1 1 1 5 0 1 1 1 1 1 1 1 3 1 3 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 7 12 12 100 12 12 12 12 12 1 12 12 12 12 12 12 100 12 12 12 12 12 12 100 12 12 12 12 12 12 12 1 12 12 1 1 12 1 12 1 1 12 12 12 12 100 12 1 1 12 1 12 1 1 12 12 1 1 12 12 12 12 12 12 12 1 1 12 1 1 1 1 1 1 12 12 12 12 12 12 7 12 1 1 12 12 12 12 12 12 12 12 12 12 1 7 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/lang/Long TYPE Ljava/lang/Class; java/lang/Class +instanceKlass kotlin/KotlinNullPointerException +ciInstanceKlass java/lang/NullPointerException 1 1 26 10 10 100 100 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 12 12 1 1 +ciInstanceKlass java/lang/ArithmeticException 1 1 26 10 10 100 100 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 12 12 1 1 +ciInstanceKlass java/util/Objects 1 1 140 10 100 8 10 10 10 10 10 10 10 11 100 10 10 8 10 8 100 11 8 100 10 10 10 7 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 1 1 12 12 7 12 12 12 12 12 100 12 1 12 12 1 12 1 1 7 12 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +ciInstanceKlass java/lang/StringLatin1 1 1 314 7 10 100 10 10 10 10 10 10 10 10 10 10 10 10 10 9 10 10 10 10 10 10 10 100 10 10 10 8 8 8 10 10 10 7 10 10 10 10 10 10 10 10 10 10 10 8 10 100 10 10 10 10 10 7 100 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 1 12 12 7 12 12 7 12 12 7 12 12 12 12 12 7 12 12 12 12 12 12 12 12 1 12 12 1 1 1 12 100 12 12 1 12 12 12 12 12 12 12 12 12 12 1 12 1 12 100 12 7 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +ciInstanceKlass java/util/Arrays 1 1 1057 10 100 7 10 8 10 10 8 8 10 10 100 10 10 10 10 10 10 10 10 10 7 10 100 10 10 100 10 10 100 10 10 100 10 10 100 10 10 100 10 10 100 10 10 9 10 100 10 10 10 100 10 10 7 9 10 10 10 10 10 10 7 11 10 10 10 10 10 10 10 10 11 10 100 10 10 100 10 10 100 10 10 100 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 7 10 10 8 7 10 10 10 10 9 100 10 9 100 10 9 100 10 9 100 10 9 100 10 9 100 10 9 100 10 100 10 10 9 100 10 10 10 10 10 10 10 10 10 10 10 8 8 10 10 8 10 10 10 10 100 3 10 100 10 10 11 10 10 10 10 10 10 10 10 10 11 8 10 11 11 11 11 18 11 11 18 11 18 11 18 100 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 100 1 1 1 7 1 100 1 1 1 1 3 1 3 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 100 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 1 1 1 12 12 1 1 12 12 1 12 7 12 12 12 12 12 12 12 12 1 100 12 100 1 1 1 12 12 100 1 1 12 100 1 1 12 100 1 1 12 100 1 1 12 100 1 1 12 100 1 1 12 12 7 12 100 1 1 12 12 7 12 12 12 12 7 12 100 12 12 12 12 1 12 12 7 12 12 12 100 12 12 12 12 7 12 100 1 1 12 1 1 12 1 1 12 1 1 12 12 12 12 12 12 12 100 12 12 100 12 12 12 7 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 1 7 12 12 1 1 12 12 12 12 100 12 12 12 100 12 100 12 100 12 100 12 12 12 12 12 1 12 12 12 12 12 12 12 12 12 12 1 1 12 12 1 12 12 12 7 12 1 1 12 100 12 12 12 12 12 12 12 12 12 12 12 1 12 100 12 100 12 12 1 15 16 15 12 12 100 12 15 12 100 12 15 12 100 12 15 12 1 7 12 12 12 12 12 12 12 12 12 12 7 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 10 10 1 1 1 1 1 1 1 10 1 1 1 1 10 1 1 1 1 10 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 12 12 12 12 12 1 1 100 1 1 100 1 1 +staticfield java/util/Arrays $assertionsDisabled Z 1 +ciInstanceKlass java/lang/Math 1 1 389 10 10 10 10 10 10 10 7 6 0 6 0 10 10 10 10 10 10 10 10 10 10 10 10 100 3 3 3 10 100 5 0 5 0 5 0 5 0 5 0 9 10 100 8 10 8 10 10 100 5 0 5 0 100 3 5 0 3 5 0 10 10 10 9 9 10 7 6 0 10 9 100 10 10 100 10 10 10 10 10 10 10 10 10 6 0 10 10 10 10 7 4 10 10 10 10 10 10 10 10 10 10 10 5 0 6 0 4 6 0 4 6 0 4 10 9 10 9 10 4 6 0 100 100 1 1 1 1 1 6 0 1 6 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 100 12 12 12 12 12 12 1 12 12 12 12 12 12 12 12 12 12 12 12 1 12 1 12 100 12 1 1 12 1 12 12 1 1 12 12 12 12 12 12 1 12 12 1 12 1 12 12 12 12 12 12 12 12 12 12 12 12 12 1 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 7 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/lang/Math negativeZeroFloatBits J -2147483648 +staticfield java/lang/Math negativeZeroDoubleBits J -9223372036854775808 +staticfield java/lang/Math $assertionsDisabled Z 1 +ciInstanceKlass java/lang/reflect/Modifier 1 1 153 100 10 7 8 10 8 10 8 8 8 8 8 8 8 8 8 8 8 10 3 7 10 10 7 7 10 10 100 1 1 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 1 1 3 1 3 1 3 1 1 3 1 3 1 3 1 3 1 3 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 1 1 12 1 12 1 1 1 1 1 1 1 1 1 1 1 12 1 1 1 7 12 1 1 12 1 1 1 1 1 1 1 1 1 1 +ciInstanceKlass java/lang/StringUTF16 1 1 532 100 7 10 100 10 7 3 100 100 10 8 10 10 8 10 10 9 10 100 8 10 9 9 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 100 10 10 10 10 10 10 10 10 10 10 10 10 100 3 10 10 10 10 10 10 10 9 10 10 10 10 100 10 10 10 10 10 8 8 8 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 8 10 100 10 10 10 10 11 10 10 10 9 9 5 0 5 0 10 10 10 10 10 100 100 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 1 1 1 1 1 12 12 1 12 12 12 12 1 1 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 1 12 12 12 12 12 100 12 100 12 12 12 12 12 1 12 12 12 12 12 12 12 12 12 12 12 12 1 12 12 100 12 12 1 1 1 12 12 12 12 100 12 12 12 12 12 12 12 12 7 12 12 12 12 1 12 1 12 100 12 12 12 100 12 12 12 12 12 12 12 12 12 7 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield java/lang/StringUTF16 HI_BYTE_SHIFT I 0 +staticfield java/lang/StringUTF16 LO_BYTE_SHIFT I 8 +staticfield java/lang/StringUTF16 $assertionsDisabled Z 1 +instanceKlass org/gradle/internal/exceptions/ConfigurationNotConsumableException +instanceKlass org/apache/commons/lang/NullArgumentException +instanceKlass java/util/regex/PatternSyntaxException +instanceKlass java/nio/file/InvalidPathException +instanceKlass java/nio/file/ProviderMismatchException +instanceKlass java/lang/NumberFormatException +instanceKlass org/gradle/internal/service/UnknownServiceException +instanceKlass org/gradle/internal/service/UnknownServiceException +ciInstanceKlass java/lang/IllegalArgumentException 1 1 35 10 10 10 10 100 100 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 12 1 1 +instanceKlass org/codehaus/groovy/runtime/powerassert/PowerAssertionError +instanceKlass org/codehaus/groovy/GroovyBugError +ciInstanceKlass java/lang/AssertionError 0 0 79 10 10 10 10 100 10 10 10 10 10 10 10 10 100 100 1 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 100 12 1 12 12 12 12 12 12 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +ciInstanceKlass java/util/regex/Pattern 1 1 1498 7 10 9 9 10 7 10 9 10 10 10 7 10 10 10 10 10 11 11 10 11 7 10 8 10 10 11 7 10 8 10 7 10 8 10 10 10 100 3 10 10 8 10 10 9 9 9 9 10 7 9 10 9 9 10 100 8 10 10 100 8 10 10 10 10 9 100 10 10 10 8 10 10 10 10 10 9 10 10 7 100 10 11 10 8 18 11 10 10 8 9 8 10 10 10 10 10 10 10 10 10 10 10 9 9 10 10 10 10 10 9 9 10 10 9 7 9 9 10 9 10 9 10 9 10 8 8 7 10 100 10 7 7 9 11 11 11 7 7 9 100 10 10 10 10 10 10 10 100 10 3 10 10 7 10 10 7 10 10 10 100 10 10 10 10 10 10 10 100 10 100 10 10 100 10 7 10 7 10 10 10 10 8 8 10 10 10 10 10 100 10 100 10 10 10 10 100 9 10 10 10 9 11 100 10 10 11 10 100 10 10 10 10 10 10 100 10 100 10 9 10 8 10 10 11 8 8 11 10 10 10 100 10 8 7 10 18 11 8 11 8 10 10 10 10 10 10 10 10 10 10 10 8 10 10 10 8 10 10 10 10 8 8 9 10 10 8 8 8 8 8 8 10 10 10 8 8 8 8 10 8 10 10 8 8 7 7 10 8 10 8 11 10 7 10 100 10 7 9 10 8 8 10 11 9 7 10 10 9 8 10 100 9 9 10 100 10 100 10 100 10 11 11 8 10 8 8 10 9 9 9 7 9 7 7 9 9 9 9 10 9 10 3 11 100 10 7 10 9 9 9 8 10 10 9 10 9 10 7 10 7 10 10 8 8 8 8 8 10 10 3 8 8 8 8 10 10 10 10 10 10 8 10 8 8 8 11 100 10 100 10 100 10 7 10 100 10 10 9 9 10 18 18 18 18 18 18 18 18 18 3 3 18 18 18 18 18 18 100 10 100 10 10 10 9 10 7 10 10 9 7 10 7 100 100 1 1 7 1 100 1 7 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 1 1 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 1 1 5 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 12 1 12 12 12 12 12 1 12 12 12 12 12 7 12 12 12 12 1 12 1 12 12 7 12 12 1 12 1 1 12 1 12 12 1 12 100 12 12 12 12 12 12 1 12 12 12 12 1 1 12 12 1 1 12 12 12 12 12 1 7 12 12 1 12 12 12 100 12 12 100 12 100 12 12 1 1 12 1 1 15 16 15 16 12 12 12 1 12 1 12 12 12 12 12 12 12 12 7 12 100 12 12 12 12 12 7 12 12 12 12 12 12 12 12 1 12 12 12 12 12 12 12 12 1 1 1 12 1 1 1 12 12 12 12 1 1 12 1 12 12 12 12 12 12 1 12 12 12 1 12 1 12 12 12 1 12 12 12 12 12 12 12 1 1 1 12 1 1 12 12 12 1 1 12 12 12 12 12 1 12 1 12 12 12 1 12 7 12 12 12 12 1 12 12 1 12 12 12 12 12 1 1 12 12 1 12 12 12 1 1 12 12 12 12 1 1 1 16 15 12 12 1 12 1 12 12 12 12 12 12 12 12 12 12 12 1 12 12 12 1 12 12 12 12 1 1 100 12 12 12 1 1 1 1 1 1 12 12 12 1 1 1 1 12 1 12 12 1 1 1 1 12 1 12 1 12 1 1 1 12 12 1 1 12 12 12 1 12 12 1 12 1 12 12 12 1 1 1 12 1 12 1 1 12 12 12 12 1 1 1 12 12 12 12 12 12 1 1 12 12 1 12 12 12 12 1 12 1 12 12 1 1 1 1 1 12 12 1 1 1 1 12 12 12 12 12 12 1 12 1 1 1 1 12 1 1 1 1 12 12 12 15 12 15 15 12 15 15 15 12 15 12 15 12 15 15 15 12 15 15 16 15 16 12 15 1 1 100 12 100 12 12 12 7 12 1 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 10 1 10 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 10 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 10 10 10 10 10 10 10 10 10 10 10 10 10 10 1 1 10 1 1 1 1 1 1 1 1 1 7 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 12 1 1 100 1 1 100 1 1 +staticfield java/util/regex/Pattern accept Ljava/util/regex/Pattern$Node; java/util/regex/Pattern$Node +staticfield java/util/regex/Pattern lastAccept Ljava/util/regex/Pattern$Node; java/util/regex/Pattern$LastNode +staticfield java/util/regex/Pattern $assertionsDisabled Z 1 +ciInstanceKlass java/util/regex/Matcher 1 1 443 10 7 9 9 9 9 9 9 9 9 9 9 10 9 9 9 9 7 9 10 11 10 100 10 10 100 10 100 8 10 9 10 9 10 9 100 8 10 100 7 10 8 10 10 10 10 10 10 8 10 10 10 8 10 10 10 10 10 10 10 10 10 8 8 10 10 10 10 8 8 8 8 10 11 8 8 11 100 10 8 10 10 10 10 10 10 11 7 100 10 100 10 100 10 10 100 8 10 8 8 8 8 8 10 10 8 10 10 8 10 9 9 9 10 9 11 11 11 8 10 8 8 7 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 3 1 3 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 1 12 12 12 12 12 12 12 12 12 7 12 7 12 12 12 12 12 1 12 12 7 12 12 1 12 100 12 12 1 1 12 12 12 12 12 12 1 1 1 1 1 12 12 12 12 1 12 12 12 1 12 12 12 12 12 100 12 12 12 12 1 1 100 12 12 12 1 1 1 1 12 100 12 1 1 12 1 12 1 12 12 12 12 12 100 12 100 12 1 1 1 12 1 100 12 100 12 1 1 1 1 12 12 1 12 12 1 12 12 12 12 7 12 12 12 1 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +ciInstanceKlass sun/reflect/generics/factory/GenericsFactory 1 0 32 100 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +instanceKlass sun/reflect/generics/repository/GenericDeclRepository +ciInstanceKlass sun/reflect/generics/repository/AbstractRepository 1 1 53 9 9 10 10 10 10 7 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 7 12 12 12 1 1 1 1 1 1 +instanceKlass sun/reflect/generics/repository/ConstructorRepository +instanceKlass sun/reflect/generics/repository/ClassRepository +ciInstanceKlass sun/reflect/generics/repository/GenericDeclRepository 1 1 79 10 9 10 10 7 10 7 11 7 10 10 10 7 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 12 12 12 7 12 12 1 12 1 12 7 12 7 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +ciInstanceKlass sun/reflect/generics/repository/ClassRepository 1 1 114 10 10 10 7 10 9 10 9 10 10 7 10 10 7 10 10 10 10 7 11 10 8 10 9 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 12 7 12 12 1 12 12 12 12 7 12 12 12 1 12 7 12 7 12 12 1 7 12 1 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield sun/reflect/generics/repository/ClassRepository NONE Lsun/reflect/generics/repository/ClassRepository; sun/reflect/generics/repository/ClassRepository +ciInstanceKlass sun/reflect/generics/tree/Tree 1 0 7 100 100 1 1 1 1 +ciInstanceKlass sun/reflect/generics/tree/TypeTree 1 0 13 100 100 100 1 1 1 1 1 1 1 1 1 +ciInstanceKlass sun/reflect/generics/tree/FormalTypeParameter 1 1 51 10 9 9 7 10 11 7 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 1 12 7 12 1 1 1 1 1 1 +ciInstanceKlass sun/reflect/generics/tree/ReturnType 1 0 9 100 100 100 1 1 1 1 1 +ciInstanceKlass sun/reflect/generics/tree/FieldTypeSignature 1 0 13 100 100 100 100 100 1 1 1 1 1 1 1 +ciInstanceKlass sun/reflect/generics/tree/ClassTypeSignature 1 1 48 10 9 7 10 11 7 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 1 12 7 12 1 1 1 1 1 1 +ciInstanceKlass sun/reflect/generics/tree/Signature 1 0 11 100 100 100 1 1 1 1 1 1 1 +ciInstanceKlass sun/reflect/generics/tree/ClassSignature 1 1 58 10 9 9 9 7 10 11 7 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 12 1 12 100 12 1 1 1 1 1 1 +ciInstanceKlass sun/reflect/generics/visitor/TypeTreeVisitor 1 0 44 100 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +ciInstanceKlass sun/reflect/generics/visitor/Reifier 1 1 286 10 9 7 10 7 11 9 9 100 10 10 10 10 11 10 11 11 11 7 7 10 10 10 11 10 8 8 10 10 11 10 11 10 11 11 10 11 10 10 11 11 11 11 11 11 11 11 11 11 10 10 7 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 7 7 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 1 12 1 7 12 12 12 1 12 7 12 12 7 12 12 12 12 12 1 1 12 12 12 12 1 1 12 12 12 12 12 7 12 7 12 7 12 12 7 12 12 12 12 12 12 12 12 12 12 12 12 12 7 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield sun/reflect/generics/visitor/Reifier $assertionsDisabled Z 1 +ciInstanceKlass sun/reflect/generics/reflectiveObjects/ParameterizedTypeImpl 1 1 165 10 9 9 10 9 10 10 100 10 7 10 10 7 7 11 11 10 11 10 10 10 7 10 11 10 8 10 10 8 10 10 7 8 8 8 10 10 10 10 10 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 7 7 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 12 12 12 12 1 1 12 7 12 1 12 12 7 12 12 7 12 12 12 1 12 12 1 12 12 1 100 12 12 1 1 1 1 12 12 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +ciInstanceKlass java/lang/reflect/TypeVariable 1 1 39 100 100 100 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 8 1 1 12 10 1 1 1 8 1 1 1 8 1 +instanceKlass sun/reflect/generics/reflectiveObjects/WildcardTypeImpl +instanceKlass sun/reflect/generics/reflectiveObjects/TypeVariableImpl +ciInstanceKlass sun/reflect/generics/reflectiveObjects/LazyReflectiveObjectGenerator 1 1 61 10 9 10 10 7 10 11 10 7 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 12 12 12 7 12 1 12 7 12 12 1 1 1 1 1 1 1 1 1 1 1 +ciInstanceKlass sun/reflect/generics/reflectiveObjects/TypeVariableImpl 1 1 273 10 9 9 9 7 7 100 100 100 10 8 10 10 10 10 10 7 10 7 10 10 7 10 100 10 10 7 11 11 10 10 10 10 10 10 11 7 10 10 10 10 8 10 10 10 10 11 10 100 10 11 10 10 9 11 100 8 10 8 10 9 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 100 100 1 1 1 1 1 1 12 12 12 12 1 1 1 1 1 12 1 12 7 12 12 12 1 12 12 7 12 1 7 12 1 12 12 1 12 7 12 12 12 12 12 12 1 12 100 12 12 12 1 100 12 12 12 12 12 1 12 100 12 12 100 12 12 1 1 12 1 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +staticfield sun/reflect/generics/reflectiveObjects/TypeVariableImpl EMPTY_ANNOTATION_ARRAY [Ljava/lang/annotation/Annotation; 0 [Ljava/lang/annotation/Annotation; +instanceKlass sun/reflect/generics/repository/MethodRepository +ciInstanceKlass sun/reflect/generics/repository/ConstructorRepository 1 1 109 10 10 10 7 10 9 10 10 7 9 10 10 10 7 10 7 10 11 10 10 11 10 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 100 1 1 1 1 1 12 7 12 12 1 12 12 7 12 12 12 7 12 1 12 1 12 7 12 7 12 12 100 12 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 +ciInstanceKlass sun/reflect/generics/repository/MethodRepository 1 1 62 10 7 10 9 10 10 10 7 10 11 10 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 12 1 12 12 12 12 1 12 7 12 7 12 1 1 1 1 1 1 1 1 1 1 1 1 +ciInstanceKlass sun/reflect/generics/tree/MethodTypeSignature 1 1 65 10 9 9 9 9 7 10 11 7 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 12 12 12 1 12 100 12 1 1 1 1 1 1 +ciInstanceKlass sun/reflect/generics/tree/VoidDescriptor 1 1 39 10 9 11 7 10 7 100 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 7 12 1 1 1 1 1 1 +staticfield sun/reflect/generics/tree/VoidDescriptor singleton Lsun/reflect/generics/tree/VoidDescriptor; sun/reflect/generics/tree/VoidDescriptor +ciInstanceKlass java/util/StringJoiner 1 1 119 8 10 10 8 10 8 8 11 9 9 9 8 7 9 10 10 9 9 10 9 10 7 10 10 10 7 10 10 7 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 100 1 1 1 1 1 1 1 1 1 1 1 1 1 12 12 1 7 12 1 1 12 12 12 12 1 1 12 12 12 12 12 12 12 12 1 12 12 7 12 12 12 1 1 1 1 1 1 1 1 1 1 1 1 1 +ciMethod java/lang/Object ()V 4097 1 926146 0 96 +ciMethod java/lang/Object clone ()Ljava/lang/Object; 3073 1 384 0 -1 +ciMethod java/lang/Object toString ()Ljava/lang/String; 9 1 1 0 -1 +ciMethod java/lang/CharSequence toString ()Ljava/lang/String; 0 0 1 0 -1 +ciMethod java/lang/String ([C)V 2425 1 48934 0 -1 +ciMethod java/lang/String length ()I 4097 1 447805 0 64 +ciMethod java/lang/String replaceFirst (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; 17 1 78 0 0 +ciMethod java/lang/String toString ()Ljava/lang/String; 2049 1 3627 0 32 +ciMethod java/lang/String valueOf (Ljava/lang/Object;)Ljava/lang/String; 1097 1 13286 0 0 +ciMethod java/lang/String getBytes ([BIB)V 2145 1 5415 0 224 +ciMethod java/lang/String ([BB)V 2073 1 124212 0 0 +ciMethod java/lang/String coder ()B 2297 1 556106 0 32 +ciMethod java/lang/reflect/Type getTypeName ()Ljava/lang/String; 2089 1 3531 0 0 +ciMethod java/lang/Class isArray ()Z 2049 1 256 0 -1 +ciMethod java/lang/Class getName ()Ljava/lang/String; 2049 1 48080 0 64 +ciMethod java/lang/Class initClassName ()Ljava/lang/String; 2057 1 257 0 -1 +ciMethod java/lang/Class getComponentType ()Ljava/lang/Class; 1129 1 7370 0 64 +ciMethod java/lang/Class getTypeName ()Ljava/lang/String; 2065 193 6990 0 640 +ciMethod java/lang/System arraycopy (Ljava/lang/Object;ILjava/lang/Object;II)V 3073 1 384 0 -1 +ciMethod java/lang/reflect/Method getGenericSignature ()Ljava/lang/String; 1121 1 140 0 0 +ciMethod java/lang/reflect/Method getFactory ()Lsun/reflect/generics/factory/GenericsFactory; 161 1 1241 0 -1 +ciMethod java/lang/reflect/Method getGenericInfo ()Lsun/reflect/generics/repository/MethodRepository; 321 1 10714 0 2912 +ciMethod java/lang/reflect/Method hasGenericInformation ()Z 2073 1 19660 0 0 +ciMethod java/lang/reflect/Method getDeclaringClass ()Ljava/lang/Class; 1273 1 159 0 0 +ciMethod java/lang/reflect/Method getName ()Ljava/lang/String; 1169 1 146 0 0 +ciMethod java/lang/reflect/Method getModifiers ()I 1073 1 134 0 0 +ciMethod java/lang/reflect/Method getTypeParameters ()[Ljava/lang/reflect/TypeVariable; 2057 1 7998 0 0 +ciMethod java/lang/reflect/Method getReturnType ()Ljava/lang/Class; 1105 1 138 0 0 +ciMethod java/lang/reflect/Method getGenericReturnType ()Ljava/lang/reflect/Type; 2073 1 15867 0 0 +ciMethod java/lang/reflect/Method getGenericParameterTypes ()[Ljava/lang/reflect/Type; 2073 1 11960 0 3360 +ciMethod java/lang/reflect/Method getExceptionTypes ()[Ljava/lang/Class; 1689 1 8474 0 0 +ciMethod java/lang/reflect/Method getGenericExceptionTypes ()[Ljava/lang/reflect/Type; 2105 1 7631 0 0 +ciMethod java/lang/reflect/Method specificToGenericStringHeader (Ljava/lang/StringBuilder;)V 2065 1 7508 0 0 +ciMethod java/lang/reflect/Method isVarArgs ()Z 2121 1 4068 0 0 +ciMethod java/lang/reflect/Method getGenericInfo ()Lsun/reflect/generics/repository/ConstructorRepository; 161 1 4502 0 0 +ciMethod java/lang/reflect/Executable hasGenericInformation ()Z 0 0 1 0 -1 +ciMethod java/lang/reflect/Executable getGenericInfo ()Lsun/reflect/generics/repository/ConstructorRepository; 0 0 1 0 -1 +ciMethod java/lang/reflect/Executable printModifiersIfNonzero (Ljava/lang/StringBuilder;IZ)V 2057 1 7473 0 0 +ciMethod java/lang/reflect/Executable sharedToGenericString (IZ)Ljava/lang/String; 1801 2185 7473 0 -1 +ciMethod java/lang/reflect/Executable specificToGenericStringHeader (Ljava/lang/StringBuilder;)V 0 0 1 0 -1 +ciMethod java/lang/reflect/Executable getModifiers ()I 0 0 1 0 -1 +ciMethod java/lang/reflect/Executable getTypeParameters ()[Ljava/lang/reflect/TypeVariable; 0 0 1 0 -1 +ciMethod java/lang/reflect/Executable getGenericParameterTypes ()[Ljava/lang/reflect/Type; 2097 1 12138 0 -1 +ciMethod java/lang/reflect/Executable getExceptionTypes ()[Ljava/lang/Class; 0 0 1 0 -1 +ciMethod java/lang/reflect/Executable getGenericExceptionTypes ()[Ljava/lang/reflect/Type; 2057 1 7580 0 0 +ciMethod java/lang/reflect/Executable isVarArgs ()Z 2121 1 4052 0 0 +ciMethod java/lang/AbstractStringBuilder (I)V 977 1 5262 0 448 +ciMethod java/lang/AbstractStringBuilder ensureCapacityInternal (I)V 2057 1 6277 0 896 +ciMethod java/lang/AbstractStringBuilder newCapacity (I)I 497 1 412 0 0 +ciMethod java/lang/AbstractStringBuilder hugeCapacity (I)I 0 0 1 0 0 +ciMethod java/lang/AbstractStringBuilder inflate ()V 0 0 4 0 0 +ciMethod java/lang/AbstractStringBuilder append (Ljava/lang/String;)Ljava/lang/AbstractStringBuilder; 1705 1 7379 0 1344 +ciMethod java/lang/AbstractStringBuilder appendNull ()Ljava/lang/AbstractStringBuilder; 0 0 1 0 -1 +ciMethod java/lang/AbstractStringBuilder append (C)Ljava/lang/AbstractStringBuilder; 3153 1 13313 0 1184 +ciMethod java/lang/AbstractStringBuilder getCoder ()B 2097 1 8737 0 32 +ciMethod java/lang/AbstractStringBuilder isLatin1 ()Z 2097 1 114245 0 0 +ciMethod java/lang/AbstractStringBuilder putStringAt (ILjava/lang/String;)V 2097 1 7857 0 0 +ciMethod java/lang/StringBuilder ()V 969 1 86597 0 384 +ciMethod java/lang/StringBuilder append (Ljava/lang/Object;)Ljava/lang/StringBuilder; 1097 1 628 0 0 +ciMethod java/lang/StringBuilder append (Ljava/lang/String;)Ljava/lang/StringBuilder; 1705 1 254650 0 1376 +ciMethod java/lang/StringBuilder append (C)Ljava/lang/StringBuilder; 3153 1 316721 0 1184 +ciMethod java/lang/StringBuilder toString ()Ljava/lang/String; 977 1 91406 0 992 +ciMethod java/util/Objects requireNonNull (Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object; 2049 1 63594 0 64 +ciMethod java/lang/StringLatin1 canEncode (I)Z 3209 1 235287 0 64 +ciMethod java/lang/StringLatin1 newString ([BII)Ljava/lang/String; 1529 1 111056 0 0 +ciMethod java/lang/StringLatin1 inflate ([BI[BII)V 0 0 4 0 -1 +ciMethod java/util/Arrays copyOf ([Ljava/lang/Object;I)[Ljava/lang/Object; 705 1 11729 0 -1 +ciMethod java/util/Arrays copyOf ([BI)[B 1025 1 25783 0 512 +ciMethod java/util/Arrays copyOfRange ([BII)[B 2057 1 6426 0 576 +ciMethod java/lang/Math min (II)I 3073 1 76829 0 -1 +ciMethod java/lang/reflect/Modifier toString (I)Ljava/lang/String; 1 1 7473 0 0 +ciMethod java/lang/StringUTF16 newBytesFor (I)[B 9 1 7 0 -1 +ciMethod java/lang/StringUTF16 putChar ([BII)V 4097 1 2676 0 -1 +ciMethod java/lang/StringUTF16 newString ([BII)Ljava/lang/String; 0 0 125 0 -1 +ciMethod java/lang/StringUTF16 putCharSB ([BII)V 0 0 56 0 0 +ciMethod java/lang/StringUTF16 checkIndex (I[B)V 9 1 79 0 -1 +ciMethodData java/lang/reflect/Modifier toString (I)Ljava/lang/String; 2 7473 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 150 0x60002 0x1d31 0xd0007 0x0 0x58 0x1d31 0x130005 0x1d31 0x0 0x0 0x0 0x0 0x0 0x1a0007 0x1d31 0x58 0x0 0x200005 0x0 0x0 0x0 0x0 0x0 0x0 0x270007 0x1d31 0x58 0x0 0x2d0005 0x0 0x0 0x0 0x0 0x0 0x0 0x360007 0x1c66 0x58 0xcb 0x3c0005 0xcb 0x0 0x0 0x0 0x0 0x0 0x440007 0x1d01 0x58 0x30 0x4a0005 0x30 0x0 0x0 0x0 0x0 0x0 0x520007 0x1c9a 0x58 0x97 0x580005 0x97 0x0 0x0 0x0 0x0 0x0 0x610007 0x1d31 0x58 0x0 0x670005 0x0 0x0 0x0 0x0 0x0 0x0 0x6f0007 0x1d31 0x58 0x0 0x750005 0x0 0x0 0x0 0x0 0x0 0x0 0x7d0007 0x1d30 0x58 0x1 0x830005 0x1 0x0 0x0 0x0 0x0 0x0 0x8c0007 0x1ca4 0x58 0x8d 0x920005 0x8d 0x0 0x0 0x0 0x0 0x0 0x9b0007 0x1d31 0x58 0x0 0xa10005 0x0 0x0 0x0 0x0 0x0 0x0 0xaa0007 0x1d31 0x58 0x0 0xb00005 0x0 0x0 0x0 0x0 0x0 0x0 0xb50005 0x1d31 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x1 0x0 oops 0 methods 0 +ciMethodData java/lang/Object ()V 2 926146 orig 80 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 4 0x0 0x9 0x1 0x0 oops 0 methods 0 +ciMethodData java/lang/String coder ()B 2 556106 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 14 0x30007 0x0 0x38 0x87b2c 0xa0003 0x87b2c 0x18 0x0 0x0 0x0 0x0 0x9 0x1 0x0 oops 0 methods 0 +ciMethodData java/lang/String length ()I 2 447805 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 10 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 16 0x60005 0x6d33d 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x1 0x0 oops 0 methods 0 +ciMethodData java/lang/AbstractStringBuilder ensureCapacityInternal (I)V 2 6277 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 23 0xe0007 0x1626 0x68 0x15e 0x180005 0x15e 0x0 0x0 0x0 0x0 0x0 0x200002 0x15e 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x2 0xc 0x0 oops 0 methods 0 +ciMethodData java/lang/AbstractStringBuilder newCapacity (I)I 1 412 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 32 0x140007 0x9f 0x20 0xbf 0x230007 0x0 0x40 0x15e 0x2a0007 0x15e 0x70 0x0 0x2f0005 0x0 0x0 0x0 0x0 0x0 0x0 0x320003 0x0 0x18 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x2 0x0 0x0 oops 0 methods 0 +ciMethodData java/util/Arrays copyOf ([BI)[B 2 25783 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 14 0xb0002 0x6437 0xe0002 0x6437 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x2 0xffffffffffffffff 0x0 oops 0 methods 0 +ciMethodData java/lang/StringLatin1 canEncode (I)Z 2 235287 orig 80 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 11 0x8000000600040007 0x2 0x38 0x39586 0x80003 0x39586 0x18 0x0 0x9 0x1 0x0 oops 0 methods 0 +ciMethodData java/lang/AbstractStringBuilder isLatin1 ()Z 2 114417 orig 80 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 18 0x30007 0x0 0x58 0x1bdeb 0x80000006000a0007 0x38 0x38 0x1bdb6 0xe0003 0x1bdb6 0x18 0x0 0x0 0x0 0x0 0x9 0x1 0x0 oops 0 methods 0 +ciMethodData java/lang/String ([BB)V 2 124212 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 11 0x10002 0x1e432 0x0 0x0 0x0 0x0 0x9 0x3 0xe 0x0 0x0 oops 0 methods 0 +ciMethodData java/util/Arrays copyOfRange ([BII)[B 2 6426 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 51 0x50007 0x1819 0x120 0x0 0x100002 0x0 0x140005 0x0 0x0 0x0 0x0 0x0 0x0 0x190005 0x0 0x0 0x0 0x0 0x0 0x0 0x1d0005 0x0 0x0 0x0 0x0 0x0 0x0 0x200005 0x0 0x0 0x0 0x0 0x0 0x0 0x230002 0x0 0x360002 0x1819 0x390002 0x1819 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x3 0xffffffffffffffff 0x0 0x0 oops 0 methods 0 +ciMethodData java/lang/StringBuilder ()V 2 87046 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 7 0x30002 0x1538e 0x0 0x0 0x9 0x1 0xc oops 0 methods 0 +ciMethodData java/lang/AbstractStringBuilder (I)V 2 5262 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 21 0x10002 0x1414 0x70007 0x0 0x38 0x1414 0x160003 0x1414 0x28 0x1b0002 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x2 0xc 0x0 oops 0 methods 0 +ciMethodData java/lang/StringBuilder append (Ljava/lang/String;)Ljava/lang/StringBuilder; 2 256301 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 9 0x20002 0x3e858 0x0 0x0 0x0 0x9 0x2 0xe 0x0 oops 0 methods 0 +ciMethodData java/lang/AbstractStringBuilder append (Ljava/lang/String;)Ljava/lang/AbstractStringBuilder; 2 7379 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 42 0x10007 0x1bfe 0x58 0x0 0x50005 0x0 0x0 0x0 0x0 0x0 0x0 0xa0005 0x1bfe 0x0 0x0 0x0 0x0 0x0 0x150005 0x1bfe 0x0 0x0 0x0 0x0 0x0 0x1e0005 0x1bfe 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x2 0xe 0x0 oops 0 methods 0 +ciMethodData java/lang/StringBuilder toString ()Ljava/lang/String; 2 91865 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 27 0x10005 0x16660 0x0 0x0 0x0 0x0 0x0 0x40007 0x0 0x48 0x16661 0x100002 0x16661 0x130003 0x1665f 0x28 0x1f0002 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x1 0x0 oops 0 methods 0 +ciMethodData java/lang/StringLatin1 newString ([BII)Ljava/lang/String; 2 111229 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 15 0x90002 0x1b1bc 0xd0002 0x1b1bd 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x3 0xffffffffffffffff 0x0 0x0 oops 0 methods 0 +ciMethodData java/lang/StringBuilder append (C)Ljava/lang/StringBuilder; 2 317947 orig 80 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 9 0x20002 0x4d86f 0x0 0x0 0x0 0x9 0x2 0xe 0x0 oops 0 methods 0 +ciMethodData java/lang/AbstractStringBuilder append (C)Ljava/lang/AbstractStringBuilder; 2 13313 orig 80 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 57 0x70005 0x3277 0x0 0x0 0x0 0x0 0x0 0xb0005 0x3277 0x0 0x0 0x0 0x0 0x0 0xe0007 0x1a 0x68 0x325e 0x120002 0x325e 0x150007 0x2 0x38 0x325d 0x2a0003 0x325d 0xb8 0x2e0005 0x1c 0x0 0x0 0x0 0x0 0x0 0x310007 0x1a 0x58 0x2 0x350005 0x2 0x0 0x0 0x0 0x0 0x0 0x480002 0x1c 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x2 0xe 0x0 oops 0 methods 0 +ciMethodData java/lang/AbstractStringBuilder putStringAt (ILjava/lang/String;)V 2 7857 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 43 0x10005 0x1dab 0x0 0x0 0x0 0x0 0x0 0x50005 0x1dab 0x0 0x0 0x0 0x0 0x0 0x80007 0x1dab 0x58 0x0 0xc0005 0x0 0x0 0x0 0x0 0x0 0x0 0x190005 0x1dab 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x3 0xc 0x0 0x0 oops 0 methods 0 +ciMethodData java/lang/AbstractStringBuilder getCoder ()B 2 8737 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 14 0x30007 0x0 0x38 0x211b 0xa0003 0x211b 0x18 0x0 0x0 0x0 0x0 0x9 0x1 0x0 oops 0 methods 0 +ciMethodData java/lang/String getBytes ([BIB)V 2 5415 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 30 0x10005 0x141b 0x0 0x0 0x0 0x0 0x0 0x50007 0x0 0x48 0x141b 0x160002 0x141b 0x190003 0x141b 0x28 0x280002 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x4 0x0 0xffffffffffffffff 0x0 0x0 oops 0 methods 0 +ciMethodData java/util/Objects requireNonNull (Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object; 2 63594 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 16 0x10007 0xf76a 0x30 0x0 0x90002 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x2 0x0 0x0 oops 0 methods 0 +ciMethodData java/lang/Class getName ()Ljava/lang/String; 2 48080 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 23 0x60007 0x15a5 0x38 0xa52a 0xa0003 0xa52a 0x50 0xe0005 0x15a5 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x1 0x0 oops 0 methods 0 +ciMethod java/util/regex/Pattern compile (Ljava/lang/String;)Ljava/util/regex/Pattern; 1009 1 4009 0 -1 +ciMethod java/util/regex/Pattern matcher (Ljava/lang/CharSequence;)Ljava/util/regex/Matcher; 2097 1 10297 0 -1 +ciMethod java/util/regex/Matcher replaceFirst (Ljava/lang/String;)Ljava/lang/String; 17 1 79 0 -1 +ciMethodData java/lang/Class getComponentType ()Ljava/lang/Class; 2 7370 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 20 0x10005 0x1c3d 0x0 0x0 0x0 0x0 0x0 0x40007 0xb 0x20 0x1c32 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x1 0x0 oops 0 methods 0 +ciMethodData java/lang/String valueOf (Ljava/lang/Object;)Ljava/lang/String; 2 13286 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 23 0x10007 0x335d 0x38 0x0 0x60003 0x0 0x50 0xa0005 0x3e2 0x0 0x1b873e7f970 0x2f03 0x1b873e827f0 0x78 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x1 0xffffffffffffffff oops 2 10 java/lang/String 12 java/net/URL methods 0 +ciMethod sun/reflect/generics/repository/GenericDeclRepository getTypeParameters ()[Ljava/lang/reflect/TypeVariable; 2145 1 10029 0 0 +ciMethod sun/reflect/generics/repository/GenericDeclRepository computeTypeParameters ()[Ljava/lang/reflect/TypeVariable; 385 337 1058 0 0 +ciMethod sun/reflect/generics/repository/AbstractRepository getFactory ()Lsun/reflect/generics/factory/GenericsFactory; 1025 1 128 0 0 +ciMethod sun/reflect/generics/repository/AbstractRepository getTree ()Lsun/reflect/generics/tree/Tree; 1105 1 138 0 0 +ciMethod sun/reflect/generics/repository/AbstractRepository getReifier ()Lsun/reflect/generics/visitor/Reifier; 625 1 2907 0 0 +ciMethod sun/reflect/generics/tree/TypeTree accept (Lsun/reflect/generics/visitor/TypeTreeVisitor;)V 0 0 1 0 -1 +ciMethod sun/reflect/generics/tree/FormalTypeParameter accept (Lsun/reflect/generics/visitor/TypeTreeVisitor;)V 881 1 243 0 0 +ciMethod sun/reflect/generics/tree/Signature getFormalTypeParameters ()[Lsun/reflect/generics/tree/FormalTypeParameter; 0 0 1 0 -1 +ciMethod sun/reflect/generics/tree/ClassSignature getFormalTypeParameters ()[Lsun/reflect/generics/tree/FormalTypeParameter; 1025 1 128 0 0 +ciMethod sun/reflect/generics/visitor/TypeTreeVisitor visitFormalTypeParameter (Lsun/reflect/generics/tree/FormalTypeParameter;)V 0 0 1 0 -1 +ciMethod sun/reflect/generics/visitor/Reifier (Lsun/reflect/generics/factory/GenericsFactory;)V 1305 1 5214 0 0 +ciMethod sun/reflect/generics/visitor/Reifier make (Lsun/reflect/generics/factory/GenericsFactory;)Lsun/reflect/generics/visitor/Reifier; 1305 1 5214 0 0 +ciMethod sun/reflect/generics/visitor/Reifier getResult ()Ljava/lang/reflect/Type; 1289 1 5212 0 0 +ciMethod sun/reflect/generics/reflectiveObjects/TypeVariableImpl getName ()Ljava/lang/String; 1417 1 177 0 0 +ciMethod sun/reflect/generics/reflectiveObjects/TypeVariableImpl toString ()Ljava/lang/String; 2049 1 841 0 0 +ciMethod sun/reflect/generics/repository/MethodRepository make (Ljava/lang/String;Lsun/reflect/generics/factory/GenericsFactory;)Lsun/reflect/generics/repository/MethodRepository; 161 1 1243 0 -1 +ciMethod sun/reflect/generics/repository/MethodRepository getReturnType ()Ljava/lang/reflect/Type; 161 1 3898 0 0 +ciMethod sun/reflect/generics/repository/MethodRepository computeReturnType ()Ljava/lang/reflect/Type; 161 1 1248 0 0 +ciMethod sun/reflect/generics/repository/ConstructorRepository getExceptionTypes ()[Ljava/lang/reflect/Type; 321 1 1886 0 0 +ciMethod sun/reflect/generics/repository/ConstructorRepository computeExceptionTypes ()[Ljava/lang/reflect/Type; 137 1 785 0 0 +ciMethod sun/reflect/generics/tree/MethodTypeSignature getFormalTypeParameters ()[Lsun/reflect/generics/tree/FormalTypeParameter; 1025 1 128 0 0 +ciMethod sun/reflect/generics/tree/MethodTypeSignature getReturnType ()Lsun/reflect/generics/tree/ReturnType; 577 1 72 0 0 +ciMethod sun/reflect/generics/tree/MethodTypeSignature getExceptionTypes ()[Lsun/reflect/generics/tree/FieldTypeSignature; 1073 1 134 0 0 +ciMethodData java/lang/String toString ()Ljava/lang/String; 2 3627 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 5 0x0 0x0 0x9 0x1 0x0 oops 0 methods 0 +ciMethodData java/lang/reflect/Method hasGenericInformation ()Z 2 19662 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 254 127 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 23 0x10005 0x4bcb 0x0 0x0 0x0 0x0 0x0 0x40007 0x3a49 0x38 0x1182 0x80003 0x1182 0x18 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x1 0x0 oops 0 methods 0 +ciMethodData java/lang/reflect/Method getGenericInfo ()Lsun/reflect/generics/repository/ConstructorRepository; 2 4502 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 184 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 16 0x10005 0x1182 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x1 0x0 oops 0 methods 0 +ciMethodData java/lang/reflect/Method getGenericReturnType ()Ljava/lang/reflect/Type; 2 15870 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 41 0x10005 0x3cfb 0x0 0x0 0x0 0x0 0x0 0x40007 0x2dd7 0x90 0xf24 0x80005 0xf24 0x0 0x0 0x0 0x0 0x0 0xb0005 0x0 0x0 0x1b800cfc870 0xf24 0x0 0x0 0x100005 0x2dd7 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x1 0x0 oops 1 21 sun/reflect/generics/repository/MethodRepository methods 0 +ciMethodData sun/reflect/generics/repository/MethodRepository getReturnType ()Ljava/lang/reflect/Type; 2 3901 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 254 127 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 20 0x60007 0xa5d 0x58 0x4cc 0xa0005 0x4cc 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x1 0x0 oops 0 methods 0 +ciMethodData sun/reflect/generics/repository/MethodRepository computeReturnType ()Ljava/lang/reflect/Type; 2 1248 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 51 0x10005 0x0 0x0 0x1b800cfc870 0x4cc 0x0 0x0 0x60005 0x0 0x0 0x1b800cfc870 0x4cc 0x0 0x0 0x90004 0x0 0x0 0x1b800bf9b20 0x4cc 0x0 0x0 0xc0005 0x0 0x0 0x1b800bf9b20 0x4cc 0x0 0x0 0x100005 0x70 0x0 0x1b8778283e0 0x3d6 0x1b877828490 0x86 0x160005 0x0 0x0 0x1b800bf8be0 0x4cc 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x1 0x0 oops 7 3 sun/reflect/generics/repository/MethodRepository 10 sun/reflect/generics/repository/MethodRepository 17 sun/reflect/generics/tree/MethodTypeSignature 24 sun/reflect/generics/tree/MethodTypeSignature 31 sun/reflect/generics/tree/ClassTypeSignature 33 sun/reflect/generics/tree/VoidDescriptor 38 sun/reflect/generics/visitor/Reifier methods 0 +ciMethodData sun/reflect/generics/repository/AbstractRepository getReifier ()Lsun/reflect/generics/visitor/Reifier; 2 2907 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 254 127 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 18 0x10005 0xb0d 0x0 0x0 0x0 0x0 0x0 0x40002 0xb0d 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x1 0x0 oops 0 methods 0 +ciMethodData sun/reflect/generics/visitor/Reifier make (Lsun/reflect/generics/factory/GenericsFactory;)Lsun/reflect/generics/visitor/Reifier; 2 5214 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 8 0x50002 0x13bb 0x0 0x0 0x0 0x9 0x1 0x0 oops 0 methods 0 +ciMethodData sun/reflect/generics/visitor/Reifier (Lsun/reflect/generics/factory/GenericsFactory;)V 2 5214 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 10 0x10002 0x13bb 0x0 0x0 0x0 0x0 0x9 0x2 0x4 0x0 oops 0 methods 0 +ciMethodData sun/reflect/generics/visitor/Reifier getResult ()Ljava/lang/reflect/Type; 2 5212 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 254 127 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 19 0x30007 0x13bb 0x50 0x0 0xa0007 0x0 0x30 0x0 0x110002 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x1 0x0 oops 0 methods 0 +ciMethodData java/lang/reflect/Method getExceptionTypes ()[Ljava/lang/Class; 2 8474 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 23 0x40005 0x0 0x0 0x1b87ec32b40 0x2047 0x0 0x0 0x70004 0x0 0x0 0x1b87ec32b40 0x2047 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x1 0x0 oops 2 3 [Ljava/lang/Class; 10 [Ljava/lang/Class; methods 0 +ciMethod java/util/StringJoiner (Ljava/lang/CharSequence;)V 2113 1 18941 0 0 +ciMethod java/util/StringJoiner (Ljava/lang/CharSequence;Ljava/lang/CharSequence;Ljava/lang/CharSequence;)V 2081 1 5441 0 928 +ciMethod java/util/StringJoiner getChars (Ljava/lang/String;[CI)I 2081 1 16451 0 -1 +ciMethod java/util/StringJoiner toString ()Ljava/lang/String; 2065 337 5477 0 13568 +ciMethod java/util/StringJoiner add (Ljava/lang/CharSequence;)Ljava/util/StringJoiner; 2177 1 9446 0 928 +ciMethod java/util/StringJoiner compactElts ()V 441 113 4934 0 -1 +ciMethodData sun/reflect/generics/repository/GenericDeclRepository getTypeParameters ()[Ljava/lang/reflect/TypeVariable; 2 10029 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 34 0x60007 0x222e 0x58 0x3f3 0xa0005 0x3f3 0x0 0x0 0x0 0x0 0x0 0x140005 0x0 0x0 0x1b80064c000 0x2621 0x0 0x0 0x170004 0x0 0x0 0x1b80064c000 0x2621 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x1 0x0 oops 2 14 [Ljava/lang/reflect/TypeVariable; 21 [Ljava/lang/reflect/TypeVariable; methods 0 +ciMethodData sun/reflect/generics/repository/GenericDeclRepository computeTypeParameters ()[Ljava/lang/reflect/TypeVariable; 2 1058 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 72 0x10005 0x28 0x0 0x1b800cfc870 0x33e 0x1b800bf9a70 0x8c 0x40004 0x0 0x0 0x1b800bf9b20 0x366 0x1b800bf9bd0 0x8c 0x70005 0x0 0x0 0x1b800bf9b20 0x366 0x1b800bf9bd0 0x8c 0x1b0007 0x3f2 0x150 0xc6 0x1f0005 0x0 0x0 0x1b800bf9a70 0x6c 0x1b800cfc870 0x5a 0x2a0005 0x0 0x0 0x1b800bf8300 0xc6 0x0 0x0 0x320005 0x0 0x0 0x1b800bf8be0 0xc6 0x0 0x0 0x350004 0x0 0x0 0x1b8006492f0 0xc6 0x0 0x0 0x380004 0x0 0x0 0x1b8006492f0 0xc6 0x0 0x0 0x3c0003 0xc6 0xfffffffffffffec8 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x1 0x0 oops 12 3 sun/reflect/generics/repository/MethodRepository 5 sun/reflect/generics/repository/ClassRepository 10 sun/reflect/generics/tree/MethodTypeSignature 12 sun/reflect/generics/tree/ClassSignature 17 sun/reflect/generics/tree/MethodTypeSignature 19 sun/reflect/generics/tree/ClassSignature 28 sun/reflect/generics/repository/ClassRepository 30 sun/reflect/generics/repository/MethodRepository 35 sun/reflect/generics/tree/FormalTypeParameter 42 sun/reflect/generics/visitor/Reifier 49 sun/reflect/generics/reflectiveObjects/TypeVariableImpl 56 sun/reflect/generics/reflectiveObjects/TypeVariableImpl methods 0 +ciMethodData java/util/StringJoiner (Ljava/lang/CharSequence;Ljava/lang/CharSequence;Ljava/lang/CharSequence;)V 2 5441 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 41 0x10002 0x143d 0x70002 0x143d 0xe0002 0x143d 0x150002 0x143d 0x1b0005 0x0 0x0 0x1b873e7f970 0x143d 0x0 0x0 0x250005 0x0 0x0 0x1b873e7f970 0x143d 0x0 0x0 0x2f0005 0x0 0x0 0x1b873e7f970 0x143d 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x4 0x1c 0x0 0x0 0x0 oops 3 11 java/lang/String 18 java/lang/String 25 java/lang/String methods 0 +ciMethodData java/util/StringJoiner add (Ljava/lang/CharSequence;)Ljava/util/StringJoiner; 2 9446 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 56 0x10002 0x23d6 0x90007 0x1553 0x38 0xe83 0x150003 0xe83 0xb8 0x210007 0x1553 0x68 0x0 0x2f0002 0x0 0x320004 0x0 0x0 0x0 0x0 0x0 0x0 0x410005 0x1553 0x0 0x0 0x0 0x0 0x0 0x4e0005 0x23d6 0x0 0x0 0x0 0x0 0x0 0x650004 0x0 0x0 0x1b873e7f970 0x23d6 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x2 0x16 0xffffffffffffffff oops 1 39 java/lang/String methods 0 +ciMethodData java/lang/Class getTypeName ()Ljava/lang/String; 2 6990 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 82 0x10005 0x1a4c 0x0 0x0 0x0 0x0 0x0 0x40007 0x1a0e 0x1d8 0x3e 0xf0005 0x3e 0x0 0x0 0x0 0x0 0x0 0x140005 0x3e 0x0 0x0 0x0 0x0 0x0 0x170007 0x0 0xffffffffffffff90 0x3e 0x1e0002 0x3e 0x240005 0x3e 0x0 0x0 0x0 0x0 0x0 0x270005 0x3e 0x0 0x0 0x0 0x0 0x0 0x310007 0x3e 0x70 0x3e 0x370005 0x3e 0x0 0x0 0x0 0x0 0x0 0x3e0003 0x3e 0xffffffffffffffa8 0x420005 0x3e 0x0 0x0 0x0 0x0 0x0 0x480005 0x1a0e 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x1 0x0 oops 0 methods 0 +ciMethodData java/util/StringJoiner (Ljava/lang/CharSequence;)V 2 18941 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 10 0x60002 0x48f5 0x0 0x0 0x0 0x0 0x9 0x2 0x0 0x0 oops 0 methods 0 +ciMethodData java/lang/reflect/Method isVarArgs ()Z 2 4068 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 7 0x10002 0xedb 0x0 0x0 0x9 0x1 0x0 oops 0 methods 0 +ciMethodData java/lang/reflect/Executable isVarArgs ()Z 2 4068 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 23 0x10005 0xedb 0x0 0x0 0x0 0x0 0x0 0x80007 0xe7e 0x38 0x5d 0xc0003 0x5d 0x18 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x1 0x0 oops 0 methods 0 +ciMethodData java/lang/reflect/Executable sharedToGenericString (IZ)Ljava/lang/String; 2 7473 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 254 127 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 243 0x40002 0x1c50 0xc0005 0x0 0x0 0x1b873e81030 0x1c50 0x0 0x0 0x100005 0x0 0x0 0x1b873e81030 0x1c50 0x0 0x0 0x180007 0x1bd6 0x148 0x7a 0x250002 0x7a 0x3a0007 0x7a 0xa8 0x7d 0x480005 0x0 0x0 0x1b8006492f0 0x7d 0x0 0x0 0x4d0005 0x7d 0x0 0x0 0x0 0x0 0x0 0x540003 0x7d 0xffffffffffffff70 0x5a0005 0x7a 0x0 0x0 0x0 0x0 0x0 0x5d0005 0x7a 0x0 0x0 0x0 0x0 0x0 0x630005 0x0 0x0 0x1b873e81030 0x1c50 0x0 0x0 0x690005 0x1c50 0x0 0x0 0x0 0x0 0x0 0x730002 0x1c50 0x790005 0x0 0x0 0x1b873e81030 0x1c50 0x0 0x0 0x860007 0x1c50 0x158 0xecb 0x8e0005 0x3b 0x0 0x1b873e7fa00 0xbb6 0x1b8006493a0 0x2da 0x960005 0x0 0x0 0x1b873e81030 0xecb 0x0 0x0 0x990007 0xe6f 0x78 0x5c 0xa30007 0xe 0x58 0x4e 0xac0005 0x4e 0x0 0x0 0x0 0x0 0x0 0xb50005 0xecb 0x0 0x0 0x0 0x0 0x0 0xbc0003 0xecb 0xfffffffffffffec0 0xc20005 0x1c50 0x0 0x0 0x0 0x0 0x0 0xc50005 0x1c50 0x0 0x0 0x0 0x0 0x0 0xcc0005 0x1c50 0x0 0x0 0x0 0x0 0x0 0xd10005 0x0 0x0 0x1b873e81030 0x1c50 0x0 0x0 0xd90007 0x1be1 0x148 0x6f 0xe60002 0x6f 0xfb0007 0x6f 0xa8 0x93 0x1090005 0x0 0x0 0x1b873e7fa00 0x93 0x0 0x0 0x10e0005 0x93 0x0 0x0 0x0 0x0 0x0 0x1150003 0x93 0xffffffffffffff70 0x11b0005 0x6f 0x0 0x0 0x0 0x0 0x0 0x11e0005 0x6f 0x0 0x0 0x0 0x0 0x0 0x1230005 0x1c50 0x0 0x0 0x0 0x0 0x0 0x12c0002 0x0 0x1310005 0x0 0x0 0x0 0x0 0x0 0x0 0x1350005 0x0 0x0 0x0 0x0 0x0 0x0 0x13a0005 0x0 0x0 0x0 0x0 0x0 0x0 0x13d0005 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x3 0x0 0x0 0x0 oops 10 5 java/lang/reflect/Method 12 java/lang/reflect/Method 29 sun/reflect/generics/reflectiveObjects/TypeVariableImpl 60 java/lang/reflect/Method 76 java/lang/reflect/Method 87 java/lang/Class 89 sun/reflect/generics/reflectiveObjects/ParameterizedTypeImpl 94 java/lang/reflect/Method 147 java/lang/reflect/Method 164 java/lang/Class methods 0 +ciMethodData java/lang/reflect/Method getTypeParameters ()[Ljava/lang/reflect/TypeVariable; 2 7998 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 34 0x10005 0x1e3d 0x0 0x0 0x0 0x0 0x0 0x40007 0x1536 0x90 0x907 0x80005 0x907 0x0 0x0 0x0 0x0 0x0 0xb0005 0x0 0x0 0x1b800cfc870 0x907 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x1 0x0 oops 1 21 sun/reflect/generics/repository/MethodRepository methods 0 +ciMethodData java/lang/reflect/Executable getGenericExceptionTypes ()[Ljava/lang/reflect/Type; 2 7747 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 45 0x10005 0x1cc2 0x0 0x1b873e81030 0x24 0x1b873e81170 0x5b 0x40007 0x160a 0xb0 0x737 0x80005 0x709 0x0 0x1b873e81030 0x8 0x1b873e81170 0x26 0xb0005 0x0 0x0 0x1b800cfc870 0x711 0x1b800d00360 0x26 0x110007 0x737 0x20 0x0 0x170005 0x1cc2 0x0 0x1b873e81030 0x24 0x1b873e81170 0x5b 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x1 0x0 oops 8 3 java/lang/reflect/Method 5 java/lang/reflect/Constructor 14 java/lang/reflect/Method 16 java/lang/reflect/Constructor 21 sun/reflect/generics/repository/MethodRepository 23 sun/reflect/generics/repository/ConstructorRepository 32 java/lang/reflect/Method 34 java/lang/reflect/Constructor methods 0 +ciMethodData sun/reflect/generics/repository/ConstructorRepository getExceptionTypes ()[Ljava/lang/reflect/Type; 2 1886 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 184 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 34 0x60007 0x436 0x58 0x300 0xa0005 0x300 0x0 0x0 0x0 0x0 0x0 0x140005 0x0 0x0 0x1b80064d140 0x736 0x0 0x0 0x170004 0x0 0x0 0x1b80064d140 0x736 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x1 0x0 oops 2 14 [Ljava/lang/reflect/Type; 21 [Ljava/lang/reflect/Type; methods 0 +ciMethodData sun/reflect/generics/repository/ConstructorRepository computeExceptionTypes ()[Ljava/lang/reflect/Type; 1 785 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 254 127 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 65 0x10005 0x0 0x0 0x1b800cfc870 0x2da 0x1b800d00360 0x26 0x40004 0x0 0x0 0x1b800bf9b20 0x300 0x0 0x0 0x70005 0x0 0x0 0x1b800bf9b20 0x300 0x0 0x0 0x190007 0x300 0x118 0x0 0x1d0005 0x0 0x0 0x0 0x0 0x0 0x0 0x280005 0x0 0x0 0x0 0x0 0x0 0x0 0x320005 0x0 0x0 0x0 0x0 0x0 0x0 0x350004 0x0 0x0 0x0 0x0 0x0 0x0 0x390003 0x0 0xffffffffffffff00 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x1 0x0 oops 4 3 sun/reflect/generics/repository/MethodRepository 5 sun/reflect/generics/repository/ConstructorRepository 10 sun/reflect/generics/tree/MethodTypeSignature 17 sun/reflect/generics/tree/MethodTypeSignature methods 0 +ciMethodData java/lang/reflect/Executable printModifiersIfNonzero (Ljava/lang/StringBuilder;IZ)V 2 7473 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 97 0x10005 0x0 0x0 0x1b873e81030 0x1c30 0x0 0x0 0xa0007 0x0 0xd8 0x1c30 0xe0007 0xb 0xb8 0x1c25 0x140002 0x1c25 0x170005 0x1c25 0x0 0x0 0x0 0x0 0x0 0x1c0005 0x1c25 0x0 0x0 0x0 0x0 0x0 0x200003 0x1c25 0x1b0 0x2c0007 0x0 0xa0 0xb 0x320002 0xb 0x350005 0xb 0x0 0x0 0x0 0x0 0x0 0x3a0005 0xb 0x0 0x0 0x0 0x0 0x0 0x3f0007 0x0 0x58 0xb 0x450005 0xb 0x0 0x0 0x0 0x0 0x0 0x520007 0xb 0xa0 0x0 0x580002 0x0 0x5b0005 0x0 0x0 0x0 0x0 0x0 0x0 0x600005 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x4 0x0 0x0 0x0 0x0 oops 1 3 java/lang/reflect/Method methods 0 +ciMethodData java/lang/reflect/Method specificToGenericStringHeader (Ljava/lang/StringBuilder;)V 2 7515 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 80 0x10005 0x1c59 0x0 0x0 0x0 0x0 0x0 0x70005 0x6a 0x0 0x1b873e7fa00 0x180e 0x1b8006493a0 0x3e1 0xc0005 0x1c59 0x0 0x0 0x0 0x0 0x0 0x110005 0x1c59 0x0 0x0 0x0 0x0 0x0 0x170005 0x1c59 0x0 0x0 0x0 0x0 0x0 0x1a0005 0x1c59 0x0 0x0 0x0 0x0 0x0 0x1d0005 0x1c59 0x0 0x0 0x0 0x0 0x0 0x220005 0x1c59 0x0 0x0 0x0 0x0 0x0 0x280005 0x1c59 0x0 0x0 0x0 0x0 0x0 0x2b0005 0x1c59 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x2 0x0 0x0 oops 2 10 java/lang/Class 12 sun/reflect/generics/reflectiveObjects/ParameterizedTypeImpl methods 0 +ciMethodData java/lang/reflect/Method getGenericExceptionTypes ()[Ljava/lang/reflect/Type; 2 7631 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 7 0x10002 0x1cc8 0x0 0x0 0x9 0x1 0x0 oops 0 methods 0 +ciMethodData java/lang/reflect/Type getTypeName ()Ljava/lang/String; 2 3531 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 16 0x10005 0x2ec 0x0 0x1b8006493a0 0x6b9 0x1b8006492f0 0x321 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x1 0x0 oops 2 3 sun/reflect/generics/reflectiveObjects/ParameterizedTypeImpl 5 sun/reflect/generics/reflectiveObjects/TypeVariableImpl methods 0 +ciMethodData sun/reflect/generics/reflectiveObjects/TypeVariableImpl toString ()Ljava/lang/String; 1 841 orig 80 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 data 16 0x10005 0x0 0x0 0x1b8006492f0 0x249 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x9 0x1 0x0 oops 1 3 sun/reflect/generics/reflectiveObjects/TypeVariableImpl methods 0 +compile java/lang/reflect/Executable sharedToGenericString (IZ)Ljava/lang/String; -1 4 inline 211 0 -1 java/lang/reflect/Executable sharedToGenericString (IZ)Ljava/lang/String; 1 4 java/lang/StringBuilder ()V 1 12 java/lang/reflect/Executable printModifiersIfNonzero (Ljava/lang/StringBuilder;IZ)V 2 1 java/lang/reflect/Method getModifiers ()I 2 20 java/lang/reflect/Modifier toString (I)Ljava/lang/String; 3 6 java/util/StringJoiner (Ljava/lang/CharSequence;)V 4 6 java/util/StringJoiner (Ljava/lang/CharSequence;Ljava/lang/CharSequence;Ljava/lang/CharSequence;)V 5 1 java/lang/Object ()V 5 7 java/util/Objects requireNonNull (Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object; 5 14 java/util/Objects requireNonNull (Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object; 5 21 java/util/Objects requireNonNull (Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object; 5 27 java/lang/String toString ()Ljava/lang/String; 5 37 java/lang/String toString ()Ljava/lang/String; 5 47 java/lang/String toString ()Ljava/lang/String; 3 19 java/util/StringJoiner add (Ljava/lang/CharSequence;)Ljava/util/StringJoiner; 4 1 java/lang/String valueOf (Ljava/lang/Object;)Ljava/lang/String; 5 10 java/lang/String toString ()Ljava/lang/String; 4 65 java/lang/String length ()I 5 6 java/lang/String coder ()B 4 78 java/lang/String length ()I 5 6 java/lang/String coder ()B 3 60 java/util/StringJoiner add (Ljava/lang/CharSequence;)Ljava/util/StringJoiner; 4 1 java/lang/String valueOf (Ljava/lang/Object;)Ljava/lang/String; 5 10 java/lang/String toString ()Ljava/lang/String; 4 65 java/lang/String length ()I 5 6 java/lang/String coder ()B 4 78 java/lang/String length ()I 5 6 java/lang/String coder ()B 3 88 java/util/StringJoiner add (Ljava/lang/CharSequence;)Ljava/util/StringJoiner; 4 1 java/lang/String valueOf (Ljava/lang/Object;)Ljava/lang/String; 5 10 java/lang/String toString ()Ljava/lang/String; 4 65 java/lang/String length ()I 5 6 java/lang/String coder ()B 4 78 java/lang/String length ()I 5 6 java/lang/String coder ()B 3 146 java/util/StringJoiner add (Ljava/lang/CharSequence;)Ljava/util/StringJoiner; 4 1 java/lang/String valueOf (Ljava/lang/Object;)Ljava/lang/String; 5 10 java/lang/String toString ()Ljava/lang/String; 4 65 java/lang/String length ()I 5 6 java/lang/String coder ()B 4 78 java/lang/String length ()I 5 6 java/lang/String coder ()B 2 23 java/lang/StringBuilder append (Ljava/lang/String;)Ljava/lang/StringBuilder; 2 28 java/lang/StringBuilder append (C)Ljava/lang/StringBuilder; 1 16 java/lang/reflect/Method getTypeParameters ()[Ljava/lang/reflect/TypeVariable; 2 1 java/lang/reflect/Method getGenericSignature ()Ljava/lang/String; 2 11 sun/reflect/generics/repository/GenericDeclRepository getTypeParameters ()[Ljava/lang/reflect/TypeVariable; 3 10 sun/reflect/generics/repository/GenericDeclRepository computeTypeParameters ()[Ljava/lang/reflect/TypeVariable; 4 1 sun/reflect/generics/repository/AbstractRepository getTree ()Lsun/reflect/generics/tree/Tree; 4 7 sun/reflect/generics/tree/MethodTypeSignature getFormalTypeParameters ()[Lsun/reflect/generics/tree/FormalTypeParameter; 4 7 sun/reflect/generics/tree/ClassSignature getFormalTypeParameters ()[Lsun/reflect/generics/tree/FormalTypeParameter; 4 31 sun/reflect/generics/repository/AbstractRepository getReifier ()Lsun/reflect/generics/visitor/Reifier; 5 1 sun/reflect/generics/repository/AbstractRepository getFactory ()Lsun/reflect/generics/factory/GenericsFactory; 5 4 sun/reflect/generics/visitor/Reifier make (Lsun/reflect/generics/factory/GenericsFactory;)Lsun/reflect/generics/visitor/Reifier; 6 5 sun/reflect/generics/visitor/Reifier (Lsun/reflect/generics/factory/GenericsFactory;)V 7 1 java/lang/Object ()V 4 50 sun/reflect/generics/visitor/Reifier getResult ()Ljava/lang/reflect/Type; 1 37 java/util/StringJoiner (Ljava/lang/CharSequence;Ljava/lang/CharSequence;Ljava/lang/CharSequence;)V 2 1 java/lang/Object ()V 2 7 java/util/Objects requireNonNull (Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object; 2 14 java/util/Objects requireNonNull (Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object; 2 21 java/util/Objects requireNonNull (Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object; 2 27 java/lang/String toString ()Ljava/lang/String; 2 37 java/lang/String toString ()Ljava/lang/String; 2 47 java/lang/String toString ()Ljava/lang/String; 1 72 java/lang/reflect/Type getTypeName ()Ljava/lang/String; 2 1 sun/reflect/generics/reflectiveObjects/TypeVariableImpl toString ()Ljava/lang/String; 3 1 sun/reflect/generics/reflectiveObjects/TypeVariableImpl getName ()Ljava/lang/String; 1 77 java/util/StringJoiner add (Ljava/lang/CharSequence;)Ljava/util/StringJoiner; 2 1 java/lang/String valueOf (Ljava/lang/Object;)Ljava/lang/String; 3 10 java/lang/String toString ()Ljava/lang/String; 2 65 java/lang/String length ()I 3 6 java/lang/String coder ()B 2 78 java/lang/String length ()I 3 6 java/lang/String coder ()B 1 93 java/lang/StringBuilder append (Ljava/lang/String;)Ljava/lang/StringBuilder; 1 99 java/lang/reflect/Method specificToGenericStringHeader (Ljava/lang/StringBuilder;)V 2 1 java/lang/reflect/Method getGenericReturnType ()Ljava/lang/reflect/Type; 3 1 java/lang/reflect/Method getGenericSignature ()Ljava/lang/String; 3 11 sun/reflect/generics/repository/MethodRepository getReturnType ()Ljava/lang/reflect/Type; 4 10 sun/reflect/generics/repository/MethodRepository computeReturnType ()Ljava/lang/reflect/Type; 5 1 sun/reflect/generics/repository/AbstractRepository getReifier ()Lsun/reflect/generics/visitor/Reifier; 6 1 sun/reflect/generics/repository/AbstractRepository getFactory ()Lsun/reflect/generics/factory/GenericsFactory; 6 4 sun/reflect/generics/visitor/Reifier make (Lsun/reflect/generics/factory/GenericsFactory;)Lsun/reflect/generics/visitor/Reifier; 7 5 sun/reflect/generics/visitor/Reifier (Lsun/reflect/generics/factory/GenericsFactory;)V 8 1 java/lang/Object ()V 5 6 sun/reflect/generics/repository/AbstractRepository getTree ()Lsun/reflect/generics/tree/Tree; 5 12 sun/reflect/generics/tree/MethodTypeSignature getReturnType ()Lsun/reflect/generics/tree/ReturnType; 5 22 sun/reflect/generics/visitor/Reifier getResult ()Ljava/lang/reflect/Type; 3 16 java/lang/reflect/Method getReturnType ()Ljava/lang/Class; 2 12 java/lang/StringBuilder append (Ljava/lang/String;)Ljava/lang/StringBuilder; 2 17 java/lang/StringBuilder append (C)Ljava/lang/StringBuilder; 2 23 java/lang/reflect/Method getDeclaringClass ()Ljava/lang/Class; 2 26 java/lang/Class getTypeName ()Ljava/lang/String; 3 15 java/lang/Class getComponentType ()Ljava/lang/Class; 3 30 java/lang/StringBuilder ()V 3 36 java/lang/Class getName ()Ljava/lang/String; 3 72 java/lang/Class getName ()Ljava/lang/String; 2 29 java/lang/StringBuilder append (Ljava/lang/String;)Ljava/lang/StringBuilder; 2 34 java/lang/StringBuilder append (C)Ljava/lang/StringBuilder; 2 40 java/lang/reflect/Method getName ()Ljava/lang/String; 2 43 java/lang/StringBuilder append (Ljava/lang/String;)Ljava/lang/StringBuilder; 3 2 java/lang/AbstractStringBuilder append (Ljava/lang/String;)Ljava/lang/AbstractStringBuilder; 4 10 java/lang/String length ()I 5 6 java/lang/String coder ()B 4 21 java/lang/AbstractStringBuilder ensureCapacityInternal (I)V 5 24 java/lang/AbstractStringBuilder newCapacity (I)I 5 32 java/util/Arrays copyOf ([BI)[B 1 105 java/lang/StringBuilder append (C)Ljava/lang/StringBuilder; 2 2 java/lang/AbstractStringBuilder append (C)Ljava/lang/AbstractStringBuilder; 3 7 java/lang/AbstractStringBuilder ensureCapacityInternal (I)V 4 24 java/lang/AbstractStringBuilder newCapacity (I)I 4 32 java/util/Arrays copyOf ([BI)[B 3 11 java/lang/AbstractStringBuilder isLatin1 ()Z 3 18 java/lang/StringLatin1 canEncode (I)Z 3 46 java/lang/AbstractStringBuilder isLatin1 ()Z 1 115 java/util/StringJoiner (Ljava/lang/CharSequence;)V 2 6 java/util/StringJoiner (Ljava/lang/CharSequence;Ljava/lang/CharSequence;Ljava/lang/CharSequence;)V 3 1 java/lang/Object ()V 3 7 java/util/Objects requireNonNull (Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object; 3 14 java/util/Objects requireNonNull (Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object; 3 21 java/util/Objects requireNonNull (Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object; 3 27 java/lang/String toString ()Ljava/lang/String; 3 37 java/lang/String toString ()Ljava/lang/String; 3 47 java/lang/String toString ()Ljava/lang/String; 1 150 java/lang/reflect/Method isVarArgs ()Z 2 1 java/lang/reflect/Executable isVarArgs ()Z 3 1 java/lang/reflect/Method getModifiers ()I 1 181 java/util/StringJoiner add (Ljava/lang/CharSequence;)Ljava/util/StringJoiner; 2 1 java/lang/String valueOf (Ljava/lang/Object;)Ljava/lang/String; 3 10 java/lang/String toString ()Ljava/lang/String; 2 65 java/lang/String length ()I 3 6 java/lang/String coder ()B 2 78 java/lang/String length ()I 3 6 java/lang/String coder ()B 1 197 java/lang/StringBuilder append (Ljava/lang/String;)Ljava/lang/StringBuilder; 2 2 java/lang/AbstractStringBuilder append (Ljava/lang/String;)Ljava/lang/AbstractStringBuilder; 3 10 java/lang/String length ()I 4 6 java/lang/String coder ()B 3 21 java/lang/AbstractStringBuilder ensureCapacityInternal (I)V 4 24 java/lang/AbstractStringBuilder newCapacity (I)I 4 32 java/util/Arrays copyOf ([BI)[B 3 30 java/lang/AbstractStringBuilder putStringAt (ILjava/lang/String;)V 4 1 java/lang/AbstractStringBuilder getCoder ()B 4 5 java/lang/String coder ()B 4 25 java/lang/String getBytes ([BIB)V 5 1 java/lang/String coder ()B 1 204 java/lang/StringBuilder append (C)Ljava/lang/StringBuilder; 2 2 java/lang/AbstractStringBuilder append (C)Ljava/lang/AbstractStringBuilder; 3 7 java/lang/AbstractStringBuilder ensureCapacityInternal (I)V 4 24 java/lang/AbstractStringBuilder newCapacity (I)I 4 32 java/util/Arrays copyOf ([BI)[B 3 11 java/lang/AbstractStringBuilder isLatin1 ()Z 3 18 java/lang/StringLatin1 canEncode (I)Z 3 46 java/lang/AbstractStringBuilder isLatin1 ()Z 1 209 java/lang/reflect/Method getGenericExceptionTypes ()[Ljava/lang/reflect/Type; 2 1 java/lang/reflect/Executable getGenericExceptionTypes ()[Ljava/lang/reflect/Type; 3 1 java/lang/reflect/Method hasGenericInformation ()Z 4 1 java/lang/reflect/Method getGenericSignature ()Ljava/lang/String; 3 8 java/lang/reflect/Method getGenericInfo ()Lsun/reflect/generics/repository/ConstructorRepository; 3 11 sun/reflect/generics/repository/ConstructorRepository getExceptionTypes ()[Ljava/lang/reflect/Type; 4 10 sun/reflect/generics/repository/ConstructorRepository computeExceptionTypes ()[Ljava/lang/reflect/Type; 5 1 sun/reflect/generics/repository/AbstractRepository getTree ()Lsun/reflect/generics/tree/Tree; 5 7 sun/reflect/generics/tree/MethodTypeSignature getExceptionTypes ()[Lsun/reflect/generics/tree/FieldTypeSignature; 5 29 sun/reflect/generics/repository/AbstractRepository getReifier ()Lsun/reflect/generics/visitor/Reifier; 6 1 sun/reflect/generics/repository/AbstractRepository getFactory ()Lsun/reflect/generics/factory/GenericsFactory; 6 4 sun/reflect/generics/visitor/Reifier make (Lsun/reflect/generics/factory/GenericsFactory;)Lsun/reflect/generics/visitor/Reifier; 7 5 sun/reflect/generics/visitor/Reifier (Lsun/reflect/generics/factory/GenericsFactory;)V 8 1 java/lang/Object ()V 5 50 sun/reflect/generics/visitor/Reifier getResult ()Ljava/lang/reflect/Type; 3 23 java/lang/reflect/Method getExceptionTypes ()[Ljava/lang/Class; 1 230 java/util/StringJoiner (Ljava/lang/CharSequence;Ljava/lang/CharSequence;Ljava/lang/CharSequence;)V 2 1 java/lang/Object ()V 2 7 java/util/Objects requireNonNull (Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object; 2 14 java/util/Objects requireNonNull (Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object; 2 21 java/util/Objects requireNonNull (Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object; 2 27 java/lang/String toString ()Ljava/lang/String; 2 37 java/lang/String toString ()Ljava/lang/String; 2 47 java/lang/String toString ()Ljava/lang/String; 1 265 java/lang/Class getTypeName ()Ljava/lang/String; 2 15 java/lang/Class getComponentType ()Ljava/lang/Class; 2 30 java/lang/StringBuilder ()V 3 3 java/lang/AbstractStringBuilder (I)V 4 1 java/lang/Object ()V 2 36 java/lang/Class getName ()Ljava/lang/String; 2 72 java/lang/Class getName ()Ljava/lang/String; 1 270 java/util/StringJoiner add (Ljava/lang/CharSequence;)Ljava/util/StringJoiner; 2 1 java/lang/String valueOf (Ljava/lang/Object;)Ljava/lang/String; 3 10 java/lang/String toString ()Ljava/lang/String; 2 65 java/lang/String length ()I 3 6 java/lang/String coder ()B 2 78 java/lang/String length ()I 3 6 java/lang/String coder ()B 1 286 java/lang/StringBuilder append (Ljava/lang/String;)Ljava/lang/StringBuilder; 2 2 java/lang/AbstractStringBuilder append (Ljava/lang/String;)Ljava/lang/AbstractStringBuilder; 3 10 java/lang/String length ()I 4 6 java/lang/String coder ()B 3 21 java/lang/AbstractStringBuilder ensureCapacityInternal (I)V 4 24 java/lang/AbstractStringBuilder newCapacity (I)I 4 32 java/util/Arrays copyOf ([BI)[B 3 30 java/lang/AbstractStringBuilder putStringAt (ILjava/lang/String;)V 4 1 java/lang/AbstractStringBuilder getCoder ()B 4 5 java/lang/String coder ()B 4 25 java/lang/String getBytes ([BIB)V 5 1 java/lang/String coder ()B 1 291 java/lang/StringBuilder toString ()Ljava/lang/String; 2 1 java/lang/AbstractStringBuilder isLatin1 ()Z 2 16 java/lang/StringLatin1 newString ([BII)Ljava/lang/String; 3 9 java/util/Arrays copyOfRange ([BII)[B 3 13 java/lang/String ([BB)V 4 1 java/lang/Object ()V diff --git a/src/main/java/seedu/commands/Command.java b/src/main/java/seedu/commands/Command.java index 0b1bc8afc6..99ea0e8040 100644 --- a/src/main/java/seedu/commands/Command.java +++ b/src/main/java/seedu/commands/Command.java @@ -1,7 +1,6 @@ package seedu.commands; -import seedu.calorietracker.Calories; import seedu.calorietracker.CaloriesRecorder; import seedu.calorietracker.FoodList; import seedu.workout.Day; diff --git a/src/main/java/seedu/commands/caloriecommands/AddCalorieCommand.java b/src/main/java/seedu/commands/caloriecommands/AddCalorieCommand.java index 322afb4a8a..b70e0df09f 100644 --- a/src/main/java/seedu/commands/caloriecommands/AddCalorieCommand.java +++ b/src/main/java/seedu/commands/caloriecommands/AddCalorieCommand.java @@ -6,7 +6,6 @@ public class AddCalorieCommand extends Command { - public static final int CALORIES_NOT_GIVEN = -1; private static final String FOOD_CALORIES_IS_EMPTY_FIRST = "No calories record for '"; private static final String FOOD_CALORIES_IS_EMPTY_SECOND = " Please add calories for it."; @@ -66,8 +65,6 @@ public void checksFoodList() { @Override public String execute() { calories = caloriesRecorder.getCalories(); - /*calorieTracker.setFoodList(foodList); - return calorieTracker.addCalories(date, food, calories);*/ if (isCaloriesDayEntered) { if (currentFoodCalories == CALORIES_NOT_GIVEN) { //check if the food had been stored in food list before diff --git a/src/main/java/seedu/commands/caloriecommands/CaloriesCommand.java b/src/main/java/seedu/commands/caloriecommands/CaloriesCommand.java deleted file mode 100644 index 53e22b9f0b..0000000000 --- a/src/main/java/seedu/commands/caloriecommands/CaloriesCommand.java +++ /dev/null @@ -1,44 +0,0 @@ -package seedu.commands.caloriecommands; - -import seedu.calorietracker.Calories; -import seedu.commands.Command; - -import java.util.Date; -import java.util.HashMap; -import java.util.Map; - -public class CaloriesCommand extends Command { - protected static boolean isDateEntered; - protected HashMap calorieMap; - protected HashMap foodCalories; - - - - - // protected Calories calories; - - - public CaloriesCommand() { - } - - public static void setDateEntered(boolean dateEntered) { - isDateEntered = dateEntered; - } - - public Map getCalorieMap() { - return calorieMap; - } - - public HashMap getFoodCalories() { - return foodCalories; - } - - public void setFoodCalories(HashMap foodCalories) { - this.foodCalories = foodCalories; - } - - public String execute() { - throw new UnsupportedOperationException("This method is to be implemented by child classes"); - } - -} diff --git a/src/main/java/seedu/commands/caloriecommands/HelpCaloriesCommand.java b/src/main/java/seedu/commands/caloriecommands/HelpCaloriesCommand.java index 8d71725bc8..13a789f8d2 100644 --- a/src/main/java/seedu/commands/caloriecommands/HelpCaloriesCommand.java +++ b/src/main/java/seedu/commands/caloriecommands/HelpCaloriesCommand.java @@ -1,14 +1,14 @@ package seedu.commands.caloriecommands; +import seedu.commands.Command; import seedu.ui.Ui; -public class HelpCaloriesCommand extends CaloriesCommand{ +public class HelpCaloriesCommand extends Command { - - @Override - public String execute() { - return Ui.getCaloriesHelpMessage(); - } + @Override + public String execute() { + return Ui.getCaloriesHelpMessage(); + } } diff --git a/src/main/java/seedu/commands/caloriecommands/ViewCaloriesCommand.java b/src/main/java/seedu/commands/caloriecommands/ViewCaloriesCommand.java index cbc6c89a66..e02e6680a2 100644 --- a/src/main/java/seedu/commands/caloriecommands/ViewCaloriesCommand.java +++ b/src/main/java/seedu/commands/caloriecommands/ViewCaloriesCommand.java @@ -1,9 +1,7 @@ package seedu.commands.caloriecommands; - import seedu.calorietracker.Calories; -import seedu.calorietracker.FoodList; import seedu.commands.Command; import seedu.parser.DateFormatter; import seedu.ui.Ui; @@ -13,27 +11,20 @@ public class ViewCaloriesCommand extends Command { private static final String FAIL_TO_FIND_DATE = " does not exit in the list"; - private Date caloriesToViewDate; + private Date caloriesToViewDate; public ViewCaloriesCommand(Date caloriesToViewDate) { //super(); this.caloriesToViewDate = caloriesToViewDate; } - public ViewCaloriesCommand(Date caloriesToViewDate, FoodList foodList) { - this.caloriesToViewDate = caloriesToViewDate; - this.foodList = foodList; - } @Override public String execute() { // convert the date to string for display purposes String formattedDate = DateFormatter.dateToString(caloriesToViewDate); - // Calories caloriesOnDate = caloriesRecorder.getCalories(); - //HashMap singleCalorie = caloriesOnDate.getSingleFoodCalories(); // get the Day object associated with the given date Calories caloriesOnDate = caloriesRecorder.getCalorieMap().get(caloriesToViewDate); - // HashMap singleCalorie = caloriesOnDate.getSingleFoodCalories(); // if the Day object exists, retrieve the workouts and print them if (caloriesOnDate != null) { HashMap singleCalorie; @@ -44,19 +35,17 @@ public String execute() { return "No calories found on " + formattedDate + System.lineSeparator() + Ui.showSeparator(); } string.append("Calories on ").append(formattedDate).append(":").append(System.lineSeparator()); -// for (String DietName : singleCalorie.keySet()) { -// string.append("Diet Name: ").append(DietName).append(System.lineSeparator()); -//// string.append("Exercise Info: ").append(System.lineSeparator()); int index = 1; for (String foodName : singleCalorie.keySet()) { string.append(index).append(". ").append("Food: ") .append(foodName) - .append(", calories: ") - .append(singleCalorie.get(foodName)); + .append(", Calories: ") + .append(singleCalorie.get(foodName)) + .append(" kcal") + .append(System.lineSeparator()); index++; } string.append(Ui.showSeparator()).append(System.lineSeparator()); -// } return string.toString(); } // if the Day object doesn't exist, return an error message diff --git a/src/main/java/seedu/commands/workoutcommands/AddWorkoutCommand.java b/src/main/java/seedu/commands/workoutcommands/AddWorkoutCommand.java index cdf3002739..fbf4e326f5 100644 --- a/src/main/java/seedu/commands/workoutcommands/AddWorkoutCommand.java +++ b/src/main/java/seedu/commands/workoutcommands/AddWorkoutCommand.java @@ -1,6 +1,7 @@ package seedu.commands.workoutcommands; import seedu.commands.Command; +import seedu.ui.Ui; import seedu.workout.Exercise; //@@ author ZIZI-czh @@ -17,11 +18,21 @@ public AddWorkoutCommand(Exercise exercise) { //@@ author ZIZI-czh @Override public String execute() { + StringBuilder string = new StringBuilder(); if (isWorkoutEntered) { day = workoutList.getSingleWorkout(); workoutForOneDay = day.getWorkout(); workoutForOneDay.addExercise(exercise); - return exercise + SHOW_EXERCISES_ADDED; + string.append("name: ") + .append(exercise.getName()) + .append(", weight: ") + .append(exercise.getWeight()) + .append(", rps: ") + .append(exercise.getRepsPerSet()) + .append(SHOW_EXERCISES_ADDED) + .append(System.lineSeparator()) + .append(Ui.showSeparator()); + return string.toString(); } else { return MISSING_WORKOUT; } diff --git a/src/main/java/seedu/parser/CheckCaloriesInput.java b/src/main/java/seedu/parser/CheckCaloriesInput.java index 253931a2b7..c7def5011c 100644 --- a/src/main/java/seedu/parser/CheckCaloriesInput.java +++ b/src/main/java/seedu/parser/CheckCaloriesInput.java @@ -54,7 +54,7 @@ public static Command processAddCalories(String arguments) { return new AddCalorieCommand(food, calories); } - public static Command processViewCalories(String arguments) { + public static Command processViewCalories(String arguments) { Date date; try { @@ -64,6 +64,6 @@ public static Command processViewCalories(String arguments) { } return new ViewCaloriesCommand(date); - } + } } diff --git a/src/main/java/seedu/parser/CheckInputs.java b/src/main/java/seedu/parser/CheckInputs.java index a138c934bd..f9ed4edd00 100644 --- a/src/main/java/seedu/parser/CheckInputs.java +++ b/src/main/java/seedu/parser/CheckInputs.java @@ -4,7 +4,12 @@ import seedu.commands.HandlingStringInput; import seedu.commands.IncorrectSyntaxCommand; import seedu.commands.countcommands.CountSetsRepsCommand; -import seedu.commands.workoutcommands.*; +import seedu.commands.workoutcommands.AddWorkoutCommand; +import seedu.commands.workoutcommands.DeleteWorkoutCommand; +import seedu.commands.workoutcommands.ListWorkoutCommand; +import seedu.commands.workoutcommands.StartWorkoutCommand; +import seedu.commands.workoutcommands.ViewWorkoutCommand; +import seedu.commands.workoutcommands.StartDayCommand; import seedu.workout.Exercise; import java.text.ParseException; diff --git a/src/main/java/seedu/parser/Parser.java b/src/main/java/seedu/parser/Parser.java index 1c776c62c9..92b1c9302a 100644 --- a/src/main/java/seedu/parser/Parser.java +++ b/src/main/java/seedu/parser/Parser.java @@ -4,7 +4,6 @@ import seedu.commands.Command; import seedu.commands.ExitCommand; import seedu.commands.InvalidCommand; -import seedu.commands.caloriecommands.CaloriesCommand; import seedu.commands.caloriecommands.HelpCaloriesCommand; import seedu.commands.workoutcommands.HelpWorkoutCommand; import seedu.exceptions.InvalidSyntaxException; @@ -51,9 +50,7 @@ public Command processCommand(String userInput) throws InvalidSyntaxException { return CheckCaloriesInput.processAddCalories(arguments); case "/clist": //list the total daily calories consumption - // return CheckCaloriesInput.processViewCalories(arguments); case "/cview": - // list all the food calories that been entered for a day return CheckCaloriesInput.processViewCalories(arguments); case "/cdelete": //delete calories for a specific day for one food follow /cdelete date food name diff --git a/src/main/java/seedu/storage/readfile/FoodCaloriesReadFile.java b/src/main/java/seedu/storage/readfile/FoodCaloriesReadFile.java index 0a104e4e9d..75d45846ab 100644 --- a/src/main/java/seedu/storage/readfile/FoodCaloriesReadFile.java +++ b/src/main/java/seedu/storage/readfile/FoodCaloriesReadFile.java @@ -10,7 +10,6 @@ public class FoodCaloriesReadFile { private static final String SPACE = " "; - // private static HashMap foodCalories = new HashMap<>(); public static FoodList readFoodCalorieToFile(String filePath){ FoodList foodList = new FoodList(); diff --git a/src/main/java/seedu/storage/writefile/WorkoutWriteFile.java b/src/main/java/seedu/storage/writefile/WorkoutWriteFile.java index 68bc4cdf60..e733a81e4e 100644 --- a/src/main/java/seedu/storage/writefile/WorkoutWriteFile.java +++ b/src/main/java/seedu/storage/writefile/WorkoutWriteFile.java @@ -15,12 +15,9 @@ public class WorkoutWriteFile { private static final String SPACE = " "; - private static HashMap workouts; - private static HashMap dailyWorkout; - public static void writeWorkoutToFile(String filePath, WorkoutList workoutList) { try { @@ -37,13 +34,12 @@ public static void writeWorkoutToFile(String filePath, WorkoutList workoutList) writeFile.write("Workout : " + workoutName + System.lineSeparator()); int index = 1; writeFile.write("Exercise: " + System.lineSeparator()); - // if(dailyWorkout.get(workoutName)) { for (Exercise exercises : dailyWorkout.get(workoutName).getExercises()) { String exerciseStr = String.format("%s. Name: %s, Weight: %s, Reps: %s", index, exercises.getName(), exercises.getWeight(), exercises.getRepsPerSet()); writeFile.write(SPACE + exerciseStr + System.lineSeparator()); index++; - // } + } } } diff --git a/src/main/java/seedu/ui/Ui.java b/src/main/java/seedu/ui/Ui.java index e4ef916764..50fa1389ad 100644 --- a/src/main/java/seedu/ui/Ui.java +++ b/src/main/java/seedu/ui/Ui.java @@ -8,7 +8,8 @@ public class Ui { private static final String LINE = "======================================="; private static final String LINE_SEPARATOR = "----------------------------------------"; - private static final String WELCOME_MESSAGE = "Welcome to FITZ! Time to record your daily workouts and calories consumption!\n" + private static final String WELCOME_MESSAGE = "Welcome to FITZ! Time to record your " + + "daily workouts and calories consumption!\n" + "Enter \"/whelp\" " + "if you need the list of commands for workouts record.\n" + "Enter \"/chelp\" " @@ -22,7 +23,8 @@ public class Ui { "|__| |__| |__| /________|"; private static final Scanner in = new Scanner(System.in); private static final String HELP_MESSAGE_WORKOUT = - "Here are the list of commands that you can use for workout record:" +System.lineSeparator() + LINE + System.lineSeparator() + "Here are the list of commands that you can use for workout record:" + +System.lineSeparator() + LINE + System.lineSeparator() + "- [Start a new day: /wday])" + System.lineSeparator() + "- [Start a workout: /wstart])" + System.lineSeparator() + "- [Add exercise: /wadd]" + System.lineSeparator() @@ -32,7 +34,8 @@ public class Ui { + "- [Delete workouts: /wdelete]" + System.lineSeparator() + "- [Exit app: /exit]" + System.lineSeparator() + LINE; private static final String HELP_MESSAGE_CALORIES = - "Here are the list of commands that you can use for calories record:" +System.lineSeparator() + LINE + System.lineSeparator() + "Here are the list of commands that you can use for calories record:" + +System.lineSeparator() + LINE + System.lineSeparator() + "- [Start a new day: /cday])" + System.lineSeparator() + "- [Add food and calories: /cadd]" + System.lineSeparator() + "- [Display total calories consumption: /wlist]" + System.lineSeparator() diff --git a/src/main/java/seedu/workout/Workout.java b/src/main/java/seedu/workout/Workout.java index cc158ddbba..082b1b3d75 100644 --- a/src/main/java/seedu/workout/Workout.java +++ b/src/main/java/seedu/workout/Workout.java @@ -1,19 +1,12 @@ package seedu.workout; import java.util.ArrayList; -import java.util.Date; public class Workout { - private static final int EMPTY = 0; - private static final String EMPTY_EXERCISE_LIST_MESSAGE = "No exercise in workout."; - private static final String LINE_SEPARATOR = "----------------------------------"; - private static final String EXERCISE_LIST_HEADER = - "Here are the list of exercises in your workout:" + System.lineSeparator(); - private Date date; + private String workoutName; private ArrayList exercises; - private boolean hasExercises = false; public Workout() { exercises = new ArrayList<>(); @@ -26,17 +19,9 @@ public Workout(String workoutName) { } - //@@ author ZIZI-czh - public String getWorkoutName() { - return workoutName; - } - - //@@ author ZIZI-czh - //@@ author ZIZI-czh public void addExercise(Exercise exercise) { exercises.add(exercise); - // hasExercises = true; } //@@ author ZIZI-czh From 9dbfbda5c7dd71b5e114ba96d5e34ae48fb50854 Mon Sep 17 00:00:00 2001 From: guillaume-grn Date: Fri, 7 Apr 2023 12:13:29 +0800 Subject: [PATCH 110/152] Fix CountSetsReps feature --- data/workoutRecording.txt | 18 -------- src/main/java/seedu/ui/Ui.java | 36 ++++++++++++++++ src/main/java/seedu/workout/WorkoutList.java | 43 ++++---------------- 3 files changed, 45 insertions(+), 52 deletions(-) delete mode 100644 data/workoutRecording.txt diff --git a/data/workoutRecording.txt b/data/workoutRecording.txt deleted file mode 100644 index 3e68e8dddd..0000000000 --- a/data/workoutRecording.txt +++ /dev/null @@ -1,18 +0,0 @@ -Date : 02/02/21 -Workout : run2 -Exercise: - 1. Name: running, Weight: 45kg, Reps: 4 4 4 4 - 2. Name: running, Weight: 45kg, Reps: 4 4 4 4 -Workout : run -Exercise: - 1. Name: running, Weight: 45kg, Reps: 4 4 4 4 - 2. Name: running, Weight: 45kg, Reps: 4 4 4 4 - 3. Name: running, Weight: 45kg, Reps: 4 4 4 4 - 4. Name: running, Weight: 45kg, Reps: 4 4 4 4 -Date : 03/03/21 -Workout : w 3232 332 -Exercise: -Workout : www -Exercise: -Workout : w 3 -Exercise: diff --git a/src/main/java/seedu/ui/Ui.java b/src/main/java/seedu/ui/Ui.java index 50fa1389ad..5fee2096be 100644 --- a/src/main/java/seedu/ui/Ui.java +++ b/src/main/java/seedu/ui/Ui.java @@ -1,6 +1,11 @@ package seedu.ui; +import seedu.parser.DateFormatter; +import seedu.workout.Exercise; + +import java.util.ArrayList; +import java.util.Date; import java.util.Scanner; public class Ui { @@ -43,6 +48,10 @@ public class Ui { + "- [Delete calories record for one food: /wdelete]" + System.lineSeparator() + "- [Exit app: /exit]" + System.lineSeparator() + LINE; + public static final String INFORMATION = "Information of exercises for the week of "; + + public static final String EMPTY_WORKOUT = "There are no workouts reported during this week !"; + public static void showGreeting() { System.out.println(WELCOME_MESSAGE); } @@ -78,4 +87,31 @@ public static String getWorkoutHelpMessage() { public static String getCaloriesHelpMessage() { return HELP_MESSAGE_CALORIES; } + + //@@ author ZIZI-czh + public static String displayCountSetsReps(ArrayList distinctExercisesList, Date dayInSpecificWeekDate) { + StringBuilder output = new StringBuilder(); + if(distinctExercisesList == null){ + return null; + } + if (distinctExercisesList.isEmpty()) { + output.append(EMPTY_WORKOUT); + return output.toString(); + } + + output.append(INFORMATION) + .append(DateFormatter.dateToString(dayInSpecificWeekDate)) + .append(System.lineSeparator()); + //Ui.showSeparator(); + for (Exercise exercise : distinctExercisesList) { + output.append("Name: ") + .append(exercise.getName()) + .append(", sets: ") + .append(exercise.getSetsCount()) + .append(", rps:") + .append(exercise.getRepsCount()) + .append(System.lineSeparator()); + } + return output + showSeparator(); + } } diff --git a/src/main/java/seedu/workout/WorkoutList.java b/src/main/java/seedu/workout/WorkoutList.java index f115e74acf..59ea1c8bfe 100644 --- a/src/main/java/seedu/workout/WorkoutList.java +++ b/src/main/java/seedu/workout/WorkoutList.java @@ -14,9 +14,6 @@ //@@ author ZIZI-czh public class WorkoutList { - public static final String EMPTY_WORKOUT = "There are no workouts reported during this week !"; - - public static final String INFORMATION = "Information of exercises for the week of "; public HashMap workout; private HashMap workouts; private Day day = new Day(); @@ -81,17 +78,21 @@ public void setWorkouts(HashMap workouts) { public ArrayList countSetsRepsPreparation(Date dayInSpecificWeekDate) { HashMap workoutsInSpecificWeek = getWorkoutsInSpecificWeek(dayInSpecificWeekDate); - Day workoutForDay = workoutsInSpecificWeek.get(dayInSpecificWeekDate); ArrayList distinctExercisesList = new ArrayList<>(); - HashMap workoutsForSpecificDay = workoutForDay.getWorkoutsByDate(); + HashMap workoutsDuringSpecificWeek = new HashMap<>(); + + for (Date workoutDate : workoutsInSpecificWeek.keySet()) { + HashMap workoutForDay = workoutsInSpecificWeek.get(workoutDate).getWorkoutsByDate(); + workoutsDuringSpecificWeek.putAll(workoutForDay); + } - for (Workout workout1 : workoutsForSpecificDay.values()) { + for (Workout workout1 : workoutsDuringSpecificWeek.values()) { for (Exercise exercise : workout1.getExercises()) { boolean isExistingExercise = false; for (Exercise distinctExercise : distinctExercisesList) { if (exercise.getName().equals(distinctExercise.getName())) { - distinctExercise.setRepsPerSet(exercise.getRepsPerSet()); + distinctExercise.setRepsPerSet(distinctExercise.getRepsPerSet()+" "+exercise.getRepsPerSet()); isExistingExercise = true; break; } @@ -111,35 +112,9 @@ public ArrayList countSetsRepsPreparation(Date dayInSpecificWeekDate) //@@ author ZIZI-czh public String countSetsReps(Date dayInSpecificWeekDate) { ArrayList distinctExercisesList = countSetsRepsPreparation(dayInSpecificWeekDate); - return displayCountSetsReps(distinctExercisesList, dayInSpecificWeekDate); + return Ui.displayCountSetsReps(distinctExercisesList, dayInSpecificWeekDate); } - //@@ author ZIZI-czh - public static String displayCountSetsReps(ArrayList distinctExercisesList, Date dayInSpecificWeekDate) { - StringBuilder output = new StringBuilder(); - if(distinctExercisesList == null){ - return null; - } - if (distinctExercisesList.isEmpty()) { - output.append(EMPTY_WORKOUT); - return output.toString(); - } - - output.append(INFORMATION) - .append(DateFormatter.dateToString(dayInSpecificWeekDate)) - .append(System.lineSeparator()); - //Ui.showSeparator(); - for (Exercise exercise : distinctExercisesList) { - output.append("Name: ") - .append(exercise.getName()) - .append(", sets: ") - .append(exercise.getSetsCount()) - .append(", rps:") - .append(exercise.getRepsCount()) - .append(System.lineSeparator()); - } - return output + Ui.showSeparator(); - } //@@ author guillaume-grn //@@ author ZIZI-czh From 233523dbee1d6807a4c7fc92f8195f198fae1ac4 Mon Sep 17 00:00:00 2001 From: guillaume-grn Date: Fri, 7 Apr 2023 12:13:53 +0800 Subject: [PATCH 111/152] Draft PPP --- docs/team/guillaume-grn.md | 38 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 docs/team/guillaume-grn.md diff --git a/docs/team/guillaume-grn.md b/docs/team/guillaume-grn.md new file mode 100644 index 0000000000..9db557cae1 --- /dev/null +++ b/docs/team/guillaume-grn.md @@ -0,0 +1,38 @@ +# Project Portfolio Page (PPP) + +## Overview + +Our team developed a fitness tracker which is able to keep track of the user's daily exercise and workouts. This product will also be able to keep track of calories consumed to be mindful of the user's diet. + +## Summary of Contributions + +### Code contributed + +Link to my code on tP Code Dashboard: [https://nus-cs2113-ay2223s2.github.io/tp-dashboard/?search=guillaume-grn&breakdown=true] + +### Enhancements implemented + +- Added a feature to allow users to delete a workout +- Added a feature to allow users to know the count of sets and reps per exercise done in a specific week + +### Contributions to the UG + +I contributed to the following sections in the User Guide: + +- Delete workout +- Count Sets and Reps + +### Contributions to the DG + +I contributed to the following sections in the Design Guide: + +- Added the UML sequence diagram for the delete feature + +### Contributions to team-based tasks + +I reviewed several pull requests and provided feedback to my teammates. I also helped team members troubleshoot issues they encountered during development. I tested the application to find and report bugs to the team. + +### Contributions beyond the project team + +I frequently posted responses in the forum to help other users with their questions or issues. I also reported bugs in other team's products and shared technical insights and best practices in the forum to assist other developers. + From d8d7fb313ef2799fc0ba7d4cf9a58816ec1299ab Mon Sep 17 00:00:00 2001 From: guillaume-grn Date: Fri, 7 Apr 2023 12:14:41 +0800 Subject: [PATCH 112/152] Stop tracking data file --- .gitignore | 45 +++++++++++++++++++++++---------------------- 1 file changed, 23 insertions(+), 22 deletions(-) diff --git a/.gitignore b/.gitignore index 9335decbd3..a00af75618 100644 --- a/.gitignore +++ b/.gitignore @@ -1,22 +1,23 @@ -# IDEA files -/.idea/ -/out/ -/*.iml - -# Gradle build files -/.gradle/ -/build/ -src/main/resources/docs/ - -# MacOS custom attributes files created by Finder -.DS_Store -*.iml -bin/ - -/text-ui-test/ACTUAL.TXT -text-ui-test/EXPECTED-UNIX.TXT - -text-ui-test/EXPECTED.TXT -text-ui-test/input.txt -text-ui-test/runtest.sh -text-ui-test/runtest.bat +# IDEA files +/.idea/ +/out/ +/*.iml + +# Gradle build files +/.gradle/ +/build/ +src/main/resources/docs/ + +# MacOS custom attributes files created by Finder +.DS_Store +*.iml +bin/ + +/text-ui-test/ACTUAL.TXT +text-ui-test/EXPECTED-UNIX.TXT + +text-ui-test/EXPECTED.TXT +text-ui-test/input.txt +text-ui-test/runtest.sh +text-ui-test/runtest.bat +data/workoutRecording.txt From c814dfc27437c66c322ca036c8c7a6309faa4cee Mon Sep 17 00:00:00 2001 From: guillaume-grn Date: Fri, 7 Apr 2023 12:30:33 +0800 Subject: [PATCH 113/152] Fix CheckStyle error --- src/main/java/seedu/ui/Ui.java | 7 ++++--- src/main/java/seedu/workout/WorkoutList.java | 3 --- 2 files changed, 4 insertions(+), 6 deletions(-) diff --git a/src/main/java/seedu/ui/Ui.java b/src/main/java/seedu/ui/Ui.java index 5fee2096be..7f3757a738 100644 --- a/src/main/java/seedu/ui/Ui.java +++ b/src/main/java/seedu/ui/Ui.java @@ -48,9 +48,6 @@ public class Ui { + "- [Delete calories record for one food: /wdelete]" + System.lineSeparator() + "- [Exit app: /exit]" + System.lineSeparator() + LINE; - public static final String INFORMATION = "Information of exercises for the week of "; - - public static final String EMPTY_WORKOUT = "There are no workouts reported during this week !"; public static void showGreeting() { System.out.println(WELCOME_MESSAGE); @@ -88,6 +85,10 @@ public static String getCaloriesHelpMessage() { return HELP_MESSAGE_CALORIES; } + public static final String EMPTY_WORKOUT = "There are no workouts reported during this week !"; + + public static final String INFORMATION = "Information of exercises for the week of "; + //@@ author ZIZI-czh public static String displayCountSetsReps(ArrayList distinctExercisesList, Date dayInSpecificWeekDate) { StringBuilder output = new StringBuilder(); diff --git a/src/main/java/seedu/workout/WorkoutList.java b/src/main/java/seedu/workout/WorkoutList.java index 59ea1c8bfe..6b9254b862 100644 --- a/src/main/java/seedu/workout/WorkoutList.java +++ b/src/main/java/seedu/workout/WorkoutList.java @@ -1,8 +1,5 @@ package seedu.workout; - -import seedu.parser.DateFormatter; - import seedu.ui.Ui; import java.util.ArrayList; From c6d458715adf2daec0f32da9d72204e6bba8a724 Mon Sep 17 00:00:00 2001 From: calebcjl_ Date: Sat, 8 Apr 2023 08:36:01 +0800 Subject: [PATCH 114/152] Clean up code, add storage classes and features --- data/foodCalories.txt | 0 data/{dailyCalories.txt => foodlist.txt} | 0 data/workoutRecording.txt | 11 - src/main/java/seedu/Duke.java | 65 ++++ .../seedu/calorietracker/CalorieTracker.java | 74 ++--- .../java/seedu/calorietracker/Calories.java | 60 ---- .../calorietracker/CaloriesRecorder.java | 30 -- .../java/seedu/calorietracker/FoodList.java | 21 +- src/main/java/seedu/commands/Command.java | 64 ++-- src/main/java/seedu/commands/ExitCommand.java | 11 +- ...lpWorkoutCommand.java => HelpCommand.java} | 28 +- .../caloriecommands/AddCalorieCommand.java | 115 ++------ .../caloriecommands/CaloriesCommand.java | 44 --- .../StartDayCaloriesCommand.java | 58 ---- .../IncorrectSyntaxCommand.java | 38 ++- .../{ => errorcommands}/InvalidCommand.java | 32 +- .../workoutcommands/AddExerciseCommand.java | 37 +++ .../workoutcommands/AddWorkoutCommand.java | 31 -- .../CountSetsRepsCommand.java | 46 ++- .../workoutcommands/DeleteWorkoutCommand.java | 38 +-- .../workoutcommands/EndWorkoutCommand.java | 31 +- .../workoutcommands/ListWorkoutCommand.java | 44 ++- .../workoutcommands/StartDayCommand.java | 61 ---- .../workoutcommands/StartWorkoutCommand.java | 71 ++--- .../workoutcommands/ViewWorkoutCommand.java | 68 +---- src/main/java/seedu/duke/Duke.java | 70 ----- .../exceptions/InvalidArgumentException.java | 19 ++ .../exceptions/InvalidSyntaxException.java | 9 +- src/main/java/seedu/parser/CalorieParser.java | 86 ++++++ .../java/seedu/parser/CheckCaloriesInput.java | 68 ----- src/main/java/seedu/parser/CheckInputs.java | 206 ------------- src/main/java/seedu/parser/DateFormatter.java | 21 +- src/main/java/seedu/parser/Parser.java | 60 ++-- src/main/java/seedu/parser/WorkoutParser.java | 279 ++++++++++++++++++ .../seedu/storage/CalorieTrackerStorage.java | 69 +++++ .../java/seedu/storage/FoodListStorage.java | 64 ++++ src/main/java/seedu/storage/Storage.java | 64 ++++ .../seedu/storage/WorkoutListStorage.java | 86 ++++++ .../readfile/DailyCaloriesReadFile.java | 59 ---- .../readfile/FoodCaloriesReadFile.java | 49 --- .../storage/readfile/WorkoutReadFile.java | 79 ----- .../writefile/DailyCaloriesWriteFile.java | 36 --- .../writefile/FoodCaloriesWriteFile.java | 28 -- .../storage/writefile/WorkoutWriteFile.java | 56 ---- src/main/java/seedu/ui/Ui.java | 52 +++- src/main/java/seedu/workout/Day.java | 61 ---- src/main/java/seedu/workout/Exercise.java | 51 ++-- src/main/java/seedu/workout/Workout.java | 52 ++-- src/main/java/seedu/workout/WorkoutList.java | 231 ++++++++------- src/test/java/seedu/{duke => }/DukeTest.java | 26 +- src/test/java/seedu/parser/ParserTest.java | 2 +- .../java/seedu/workout/WorkoutViewTest.java | 4 +- 52 files changed, 1303 insertions(+), 1662 deletions(-) delete mode 100644 data/foodCalories.txt rename data/{dailyCalories.txt => foodlist.txt} (100%) delete mode 100644 data/workoutRecording.txt create mode 100644 src/main/java/seedu/Duke.java delete mode 100644 src/main/java/seedu/calorietracker/Calories.java delete mode 100644 src/main/java/seedu/calorietracker/CaloriesRecorder.java rename src/main/java/seedu/commands/{workoutcommands/HelpWorkoutCommand.java => HelpCommand.java} (53%) delete mode 100644 src/main/java/seedu/commands/caloriecommands/CaloriesCommand.java delete mode 100644 src/main/java/seedu/commands/caloriecommands/StartDayCaloriesCommand.java rename src/main/java/seedu/commands/{ => errorcommands}/IncorrectSyntaxCommand.java (67%) rename src/main/java/seedu/commands/{ => errorcommands}/InvalidCommand.java (80%) create mode 100644 src/main/java/seedu/commands/workoutcommands/AddExerciseCommand.java delete mode 100644 src/main/java/seedu/commands/workoutcommands/AddWorkoutCommand.java rename src/main/java/seedu/commands/{countcommands => workoutcommands}/CountSetsRepsCommand.java (55%) delete mode 100644 src/main/java/seedu/commands/workoutcommands/StartDayCommand.java delete mode 100644 src/main/java/seedu/duke/Duke.java create mode 100644 src/main/java/seedu/exceptions/InvalidArgumentException.java create mode 100644 src/main/java/seedu/parser/CalorieParser.java delete mode 100644 src/main/java/seedu/parser/CheckCaloriesInput.java delete mode 100644 src/main/java/seedu/parser/CheckInputs.java create mode 100644 src/main/java/seedu/parser/WorkoutParser.java create mode 100644 src/main/java/seedu/storage/CalorieTrackerStorage.java create mode 100644 src/main/java/seedu/storage/FoodListStorage.java create mode 100644 src/main/java/seedu/storage/Storage.java create mode 100644 src/main/java/seedu/storage/WorkoutListStorage.java delete mode 100644 src/main/java/seedu/storage/readfile/DailyCaloriesReadFile.java delete mode 100644 src/main/java/seedu/storage/readfile/FoodCaloriesReadFile.java delete mode 100644 src/main/java/seedu/storage/readfile/WorkoutReadFile.java delete mode 100644 src/main/java/seedu/storage/writefile/DailyCaloriesWriteFile.java delete mode 100644 src/main/java/seedu/storage/writefile/FoodCaloriesWriteFile.java delete mode 100644 src/main/java/seedu/storage/writefile/WorkoutWriteFile.java delete mode 100644 src/main/java/seedu/workout/Day.java rename src/test/java/seedu/{duke => }/DukeTest.java (87%) diff --git a/data/foodCalories.txt b/data/foodCalories.txt deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/data/dailyCalories.txt b/data/foodlist.txt similarity index 100% rename from data/dailyCalories.txt rename to data/foodlist.txt diff --git a/data/workoutRecording.txt b/data/workoutRecording.txt deleted file mode 100644 index a9f2165888..0000000000 --- a/data/workoutRecording.txt +++ /dev/null @@ -1,11 +0,0 @@ -Date : 02/02/21 -Workout : run2 -Exercise: - 1. Name: running, Weight: 45kg, Reps: 4 4 4 4 - 2. Name: running, Weight: 45kg, Reps: 4 4 4 4 -Workout : run -Exercise: - 1. Name: running, Weight: 45kg, Reps: 4 4 4 4 - 2. Name: running, Weight: 45kg, Reps: 4 4 4 4 - 3. Name: running, Weight: 45kg, Reps: 4 4 4 4 - 4. Name: running, Weight: 45kg, Reps: 4 4 4 4 diff --git a/src/main/java/seedu/Duke.java b/src/main/java/seedu/Duke.java new file mode 100644 index 0000000000..55894db092 --- /dev/null +++ b/src/main/java/seedu/Duke.java @@ -0,0 +1,65 @@ +package seedu; + +import seedu.calorietracker.CalorieTracker; +import seedu.calorietracker.FoodList; +import seedu.commands.Command; +import seedu.commands.ExitCommand; +import seedu.exceptions.InvalidArgumentException; +import seedu.exceptions.InvalidSyntaxException; +import seedu.parser.Parser; +import seedu.storage.Storage; +import seedu.ui.Ui; +import seedu.workout.WorkoutList; + +//@@author calebcjl +/** + * Main entry to the program + */ +public class Duke { + private WorkoutList workoutList; + private CalorieTracker calorieTracker; + private FoodList foodList; + private Storage storage; + + + public Duke(){ + } + + public static void main(String[] args) { + new Duke().run(); + } + + /** + * Runs the program. + */ + private void run() { + storage = new Storage(); + workoutList = new WorkoutList(storage); + foodList = new FoodList(storage); + calorieTracker = new CalorieTracker(storage, foodList); + Ui.showWelcomeMessage(); + executeCommandUntilExit(); + } + + //@@author calebcjl + /** + * Continuously receives and execute commands entered by user. + * Stops when user enters exit command. + */ + private void executeCommandUntilExit() { + Command command; + do { + String userInput = Ui.getUserInput(); + try { + command = Parser.processCommand(userInput); + command.setData(workoutList, calorieTracker, foodList); + Ui.showCommandResult(command); + } catch (InvalidSyntaxException | InvalidArgumentException e) { + Ui.showErrorMessage(e.toString()); + command = new Command(); + } + storage.saveUserData(workoutList, foodList, calorieTracker); + } while (!ExitCommand.isExit(command)); + } +} + diff --git a/src/main/java/seedu/calorietracker/CalorieTracker.java b/src/main/java/seedu/calorietracker/CalorieTracker.java index fc92cc86ea..1ed40a985e 100644 --- a/src/main/java/seedu/calorietracker/CalorieTracker.java +++ b/src/main/java/seedu/calorietracker/CalorieTracker.java @@ -1,23 +1,28 @@ -/* package seedu.calorietracker; +import seedu.storage.Storage; import java.util.Date; import java.util.HashMap; import static seedu.commands.caloriecommands.AddCalorieCommand.CALORIES_NOT_GIVEN; +//@@author calebcjl +/** + * Represents a calorie tracker. + */ public class CalorieTracker { - */ -/*public static final int CALORIES_NOT_TRACKED = -1; + public static final int CALORIES_NOT_TRACKED = -1; private HashMap totalCaloriesConsumedInDay; - private FoodList foodList = new FoodList(); + private FoodList foodList; public CalorieTracker() { totalCaloriesConsumedInDay = new HashMap<>(); + foodList = new FoodList(); } - public void setFoodList(FoodList foodList) { + public CalorieTracker(Storage storage, FoodList foodList) { + totalCaloriesConsumedInDay = storage.readCalorieTrackerFile(); this.foodList = foodList; } @@ -25,58 +30,37 @@ public HashMap getTotalCaloriesConsumedInDay() { return totalCaloriesConsumedInDay; } - public void updateTotalCalories(Date date, int calories){ - totalCaloriesConsumedInDay.put(date, calories); - //setTotalCaloriesConsumedInDay(totalCaloriesConsumedInDay); - } - *//* -*/ -/*public void setTotalCaloriesConsumedInDay(HashMap totalCaloriesConsumedInDay) { - this.totalCaloriesConsumedInDay = totalCaloriesConsumedInDay; - }*//* -*/ -/* - *//* -*/ -/* public CalorieTracker(FoodList foodlist) { - totalCaloriesConsumedInDay = new HashMap<>(); - this.foodList = foodlist; - }*//* -*/ -/* - - public String addCalories(Date date, String food, int calories) { - if (calories == CALORIES_NOT_GIVEN && !foodList.contains(food)) { - return food + " has not been added previously. Please also indicate calorie count."; + /** + * Add new calorie consumption to CalorieTracker. + * If no entry is given for calories, CalorieTracker will check with FoodList for number of calories. + * + * @param date Date of consumption + * @param foodName Name of food consumed. + * @param calories Number of calories consumed. + * @return Output message. + */ + public String addCalories(Date date, String foodName, int calories) { + if (calories == CALORIES_NOT_GIVEN && !foodList.contains(foodName)) { + return foodName + " has not been added previously. Please also indicate calorie count."; } - - int caloriesInFood; + int foodCalories; if (calories == CALORIES_NOT_GIVEN) { - caloriesInFood = foodList.getFoodCalories().get(); - } else if (isValidCalories(calories)){ - foodList.addFood(food, calories); - caloriesInFood = calories; + foodCalories = foodList.getFoodCalories().get(foodName); + foodList.addFood(foodName, calories); } else { - return "Calories count is invalid"; + foodCalories = calories; } if (totalCaloriesConsumedInDay.containsKey(date)) { - totalCaloriesConsumedInDay.compute(date, (key, value) -> value + caloriesInFood); + totalCaloriesConsumedInDay.compute(date, (k,v) -> v + foodCalories); } else { - totalCaloriesConsumedInDay.put(date, caloriesInFood); + totalCaloriesConsumedInDay.put(date, calories); } - - return "Consumed additional " + caloriesInFood + "kcal." + System.lineSeparator() + + return "Consumed additional " + calories + "kcal." + System.lineSeparator() + "Total calories consumed: " + getCalories(date) + "kcal"; } public int getCalories(Date date) { return totalCaloriesConsumedInDay.getOrDefault(date, CALORIES_NOT_TRACKED); } - - private static boolean isValidCalories(int calories) { - return calories >= 0; - }*//* - } -*/ diff --git a/src/main/java/seedu/calorietracker/Calories.java b/src/main/java/seedu/calorietracker/Calories.java deleted file mode 100644 index 859f3613dd..0000000000 --- a/src/main/java/seedu/calorietracker/Calories.java +++ /dev/null @@ -1,60 +0,0 @@ -package seedu.calorietracker; - -import java.util.Date; -import java.util.HashMap; - -public class Calories { - - - private HashMap singleFoodCalories = new HashMap<>(); - - private String name; - private int calories; - - private Date date; - public Calories() { - - } - public Calories(Date date) { - this.date = date; - } - - public void addFoodCalories(String name, int calories) { - singleFoodCalories.put(name, calories); - this.name = name; - this.calories = calories; - } - - public String getName() { - return name; - } - - public void setName(String name) { - this.name = name; - } - - public int getCalories() { - return calories; - } - - public void setCalories(int calories) { - this.calories = calories; - } - - - - public boolean checkFood(String foodName) { - return singleFoodCalories.containsKey(foodName); - } - - public void addToCurrentFoodCalories(String foodName, int newCalories) { - int pastValue = singleFoodCalories.get(foodName); - int newValue = pastValue + newCalories; - singleFoodCalories.put(foodName, newValue); - } - - public HashMap getSingleFoodCalories() { - return singleFoodCalories; - } -} - diff --git a/src/main/java/seedu/calorietracker/CaloriesRecorder.java b/src/main/java/seedu/calorietracker/CaloriesRecorder.java deleted file mode 100644 index 4ee282c671..0000000000 --- a/src/main/java/seedu/calorietracker/CaloriesRecorder.java +++ /dev/null @@ -1,30 +0,0 @@ -package seedu.calorietracker; - -import java.util.Date; -import java.util.HashMap; - -public class CaloriesRecorder { - private HashMap calorieMap; - private Calories calories; - public CaloriesRecorder() { - calorieMap = new HashMap<>(); - } - - public HashMap getCalorieMap() { - return calorieMap; - } - - public void addFoodCalories(Date date, Calories calories){ - calorieMap.put(date, calories); - this.calories = calories; - } - - public void setCalories(Calories calories) { - this.calories = calories; - } - - public Calories getCalories() { - return calories; - } - -} diff --git a/src/main/java/seedu/calorietracker/FoodList.java b/src/main/java/seedu/calorietracker/FoodList.java index 7ead8832f7..cf417e5b74 100644 --- a/src/main/java/seedu/calorietracker/FoodList.java +++ b/src/main/java/seedu/calorietracker/FoodList.java @@ -1,33 +1,28 @@ package seedu.calorietracker; +import seedu.storage.Storage; import java.util.HashMap; public class FoodList { - private HashMap foodCalories; + private final HashMap foodCalories; - private String name; - private int calories; public FoodList() { foodCalories = new HashMap<>(); } + public FoodList(Storage storage) { + this.foodCalories = storage.readFoodListFile(); + } public void addFood(String name, int calories) { - this.name = name; - this.calories = calories; foodCalories.put(name, calories); } - /*public int getCalories(String food) { - return foodCalories.get(food); - }*/ + public boolean contains(String food) { + return foodCalories.containsKey(food); + } public HashMap getFoodCalories() { return foodCalories; } - - - public boolean contains(String food) { - return foodCalories.containsKey(food); - } } diff --git a/src/main/java/seedu/commands/Command.java b/src/main/java/seedu/commands/Command.java index 496fde9e7f..54c7c9484a 100644 --- a/src/main/java/seedu/commands/Command.java +++ b/src/main/java/seedu/commands/Command.java @@ -1,63 +1,37 @@ package seedu.commands; - -import seedu.calorietracker.CaloriesRecorder; +import seedu.calorietracker.CalorieTracker; import seedu.calorietracker.FoodList; -import seedu.workout.Day; -import seedu.workout.Workout; -import seedu.workout.WorkoutList; +import seedu.exceptions.InvalidArgumentException; -import java.util.Date; -import java.util.HashMap; +import seedu.workout.WorkoutList; +//@@author calebcjl +/** + * Represents a command entered by user. + */ public class Command { - - protected static boolean isDayEntered; - //protected static Date date; - protected static boolean isWorkoutEntered; - protected WorkoutList workoutList = new WorkoutList(); - //protected CalorieTracker calorieTracker; - protected CaloriesRecorder caloriesRecorder; + protected WorkoutList workoutList; + protected CalorieTracker calorieTracker; protected FoodList foodList; - protected HashMap workouts; - protected Workout workoutForOneDay = new Workout(); - protected Day day; - - //@@ author ZIZI-czh public Command() { - workouts = new HashMap<>(); - day = workoutList.getSingleWorkout(); - } - - //@@ author ZIZI-czh - public static void setIsDayEntered(boolean isDayEnter) { - isDayEntered = isDayEnter; } - //@@ author ZIZI-czh - public static void setIsWorkoutEntered(boolean isWorkoutEnter) { - isWorkoutEntered = isWorkoutEnter; - } - - public WorkoutList getWorkoutList() { - return workoutList; - } - - public void setData(WorkoutList workoutList, CaloriesRecorder caloriesRecorder, FoodList foodList) - throws IllegalArgumentException { - if (workoutList == null || caloriesRecorder == null) { - throw new IllegalArgumentException("WorkoutList cannot be null."); - } + /** + * Sets data for commands to execute on. + * + * @param workoutList Workout list. + * @param calorieTracker Calorie tracker. + * @param foodList Food list. + */ + public void setData(WorkoutList workoutList, CalorieTracker calorieTracker, FoodList foodList) { this.workoutList = workoutList; - // this.calorieTracker = calorieTracker; - this.caloriesRecorder = caloriesRecorder; + this.calorieTracker = calorieTracker; this.foodList = foodList; - } - - public String execute() { + public String execute() throws InvalidArgumentException { throw new UnsupportedOperationException("This method is to be implemented by child classes"); } } diff --git a/src/main/java/seedu/commands/ExitCommand.java b/src/main/java/seedu/commands/ExitCommand.java index e10d5be344..8ea573c3f8 100644 --- a/src/main/java/seedu/commands/ExitCommand.java +++ b/src/main/java/seedu/commands/ExitCommand.java @@ -1,9 +1,18 @@ package seedu.commands; - +//@@author calebcjl +/** + * Represents command to exit the program. + */ public class ExitCommand extends Command { private static final String EXIT_MESSAGE = "Thank you, hope you had a great workout!!!"; + /** + * Check if exit command has been created. + * + * @param command Command to check. + * @return True if command is an ExitCommand. Returns false otherwise. + */ public static boolean isExit(Command command) { return command instanceof ExitCommand; } diff --git a/src/main/java/seedu/commands/workoutcommands/HelpWorkoutCommand.java b/src/main/java/seedu/commands/HelpCommand.java similarity index 53% rename from src/main/java/seedu/commands/workoutcommands/HelpWorkoutCommand.java rename to src/main/java/seedu/commands/HelpCommand.java index 886daab824..050f3ff659 100644 --- a/src/main/java/seedu/commands/workoutcommands/HelpWorkoutCommand.java +++ b/src/main/java/seedu/commands/HelpCommand.java @@ -1,14 +1,14 @@ -package seedu.commands.workoutcommands; - - -import seedu.commands.Command; -import seedu.ui.Ui; - -public class HelpWorkoutCommand extends Command { - public HelpWorkoutCommand(){} - - @Override - public String execute() { - return Ui.getHelpMessage(); - } -} +package seedu.commands; + + +import seedu.commands.Command; +import seedu.ui.Ui; + +public class HelpCommand extends Command { + public HelpCommand(){} + + @Override + public String execute() { + return Ui.getHelpMessage(); + } +} diff --git a/src/main/java/seedu/commands/caloriecommands/AddCalorieCommand.java b/src/main/java/seedu/commands/caloriecommands/AddCalorieCommand.java index d9629c8bd6..05863cd64b 100644 --- a/src/main/java/seedu/commands/caloriecommands/AddCalorieCommand.java +++ b/src/main/java/seedu/commands/caloriecommands/AddCalorieCommand.java @@ -1,111 +1,34 @@ package seedu.commands.caloriecommands; +import seedu.commands.Command; +import seedu.parser.DateFormatter; -import seedu.calorietracker.Calories; - -public class AddCalorieCommand extends CaloriesCommand { - +import java.util.Date; +//@@author calebcjl +/** + * Represents command to add an entry to calorie tracker. + */ +public class AddCalorieCommand extends Command { public static final int CALORIES_NOT_GIVEN = -1; - private static final String FOOD_CALORIES_IS_EMPTY_FIRST = "No calories record for '"; - private static final String FOOD_CALORIES_IS_EMPTY_SECOND = " Please add calories for it."; - private String foodName; - private int currentFoodCalories; - - private Calories calories; - private StringBuilder string = new StringBuilder(); - + private final Date date; + private final String foodName; + private final int foodCalories; - public AddCalorieCommand(String foodName, int currentFoodCalories) { + public AddCalorieCommand(Date date, String foodName, int foodCalories) { + this.date = date; this.foodName = foodName; - this.currentFoodCalories = currentFoodCalories; + this.foodCalories = foodCalories; } - public void setCalories(Calories calories) { - this.calories = calories; - } - - - public void checkCalorieMap() { - if (calories.checkFood(foodName)) { - calories.addToCurrentFoodCalories(foodName, foodList.getFoodCalories().get(foodName)); - string.append("Updated total calories for '").append(foodName) - .append("' in daily calories to ") - .append(calories.getSingleFoodCalories().get(foodName)) - .append(" kcal!"); - ; - } else { - calories.addFoodCalories(foodName, foodList.getFoodCalories().get(foodName)); - string.append("Added '").append(foodName).append(": ") - .append(foodList.getFoodCalories().get(foodName)) - .append(" kcal' to daily calories consumption!"); - } - } - - public void checksFoodList() { - - // if the user enter the same calories values - if (foodList.getFoodCalories().get(foodName) == currentFoodCalories) { - string.append("'").append(foodName).append(": ") - .append(currentFoodCalories).append(" kcal'") - .append(" found in the food list!") - .append(System.lineSeparator()); - checkCalorieMap(); - } else { // the user had entered a new calories for the food - foodList.addFood(foodName, currentFoodCalories); - string.append("'").append(foodName).append("'") - .append(" found in food list and updated calories to ") - .append(currentFoodCalories) - .append(" kcal!") - .append(System.lineSeparator()); - checkCalorieMap(); - } + public AddCalorieCommand(Date date, String foodName) { + this.date = date; + this.foodName = foodName; + foodCalories = CALORIES_NOT_GIVEN; } @Override public String execute() { - /*calorieTracker.setFoodList(foodList); - return calorieTracker.addCalories(date, food, calories);*/ - if (isDateEntered) { - if (currentFoodCalories == CALORIES_NOT_GIVEN) { - //check if the food had been stored in food list before - if (foodList.contains(foodName)) { - // if the info find in hte food list - // and calories does not been entered by the user - string.append("'").append(foodName).append(": ") - .append(foodList.getFoodCalories().get(foodName)).append(" kcal'") - .append(" found in the food list!") - .append(System.lineSeparator()); - checkCalorieMap(); - } else { - // if failed to find the food calories in the list - string.append(FOOD_CALORIES_IS_EMPTY_FIRST) - .append(foodName).append("' in food list") - .append(System.lineSeparator()) - .append(FOOD_CALORIES_IS_EMPTY_SECOND); - } - - //if the user had entered the calories for food before - } else { - if (foodList.contains(foodName)) { - checksFoodList(); - - } else { - // both food list and daily calories consumption does not contain the food - foodList.addFood(foodName, currentFoodCalories); - string.append("Added '").append(foodName).append(": ") - .append(currentFoodCalories) - .append(" kcal' to food list!") - .append(System.lineSeparator()); - calories.addFoodCalories(foodName, currentFoodCalories); - string.append("Added '").append(foodName).append(": ") - .append(currentFoodCalories) - .append(" kcal' to daily calories consumption!"); - } - } - } else { - string.append("please use '/cdate' to start a date first!"); - } - return string.toString(); + return calorieTracker.addCalories(date, foodName, foodCalories); } } diff --git a/src/main/java/seedu/commands/caloriecommands/CaloriesCommand.java b/src/main/java/seedu/commands/caloriecommands/CaloriesCommand.java deleted file mode 100644 index 53e22b9f0b..0000000000 --- a/src/main/java/seedu/commands/caloriecommands/CaloriesCommand.java +++ /dev/null @@ -1,44 +0,0 @@ -package seedu.commands.caloriecommands; - -import seedu.calorietracker.Calories; -import seedu.commands.Command; - -import java.util.Date; -import java.util.HashMap; -import java.util.Map; - -public class CaloriesCommand extends Command { - protected static boolean isDateEntered; - protected HashMap calorieMap; - protected HashMap foodCalories; - - - - - // protected Calories calories; - - - public CaloriesCommand() { - } - - public static void setDateEntered(boolean dateEntered) { - isDateEntered = dateEntered; - } - - public Map getCalorieMap() { - return calorieMap; - } - - public HashMap getFoodCalories() { - return foodCalories; - } - - public void setFoodCalories(HashMap foodCalories) { - this.foodCalories = foodCalories; - } - - public String execute() { - throw new UnsupportedOperationException("This method is to be implemented by child classes"); - } - -} diff --git a/src/main/java/seedu/commands/caloriecommands/StartDayCaloriesCommand.java b/src/main/java/seedu/commands/caloriecommands/StartDayCaloriesCommand.java deleted file mode 100644 index 3143f2b821..0000000000 --- a/src/main/java/seedu/commands/caloriecommands/StartDayCaloriesCommand.java +++ /dev/null @@ -1,58 +0,0 @@ -package seedu.commands.caloriecommands; - -import seedu.calorietracker.Calories; -import seedu.parser.DateFormatter; - -import java.util.Date; -import java.util.HashMap; - -public class StartDayCaloriesCommand extends CaloriesCommand { - - private static final String STARTED_DAY_FIRST = "You had started calories record on this day before."; - private static final String STARTED_DAY_SECOND = "Please use '/cstart' to add a food calories consumption!"; - private static final String STARTED_CALORIES = "Great! You start a new food calories record for "; - private Date date; - - public StartDayCaloriesCommand(Date date) { - super(); - this.date = date; - } - - //@@ author ZIZI-czh - public Date getDate() { - return date; - } - - //@@ author ZIZI-czh - @Override - public String execute() { - - //get the calories - HashMap dailyCalories = caloriesRecorder.getCalorieMap(); - StringBuilder stringBuilder = new StringBuilder(); - - //Check id the date is exit in the HashMap - if (!dailyCalories.containsKey(date)) { - //get the calories for entered day - Calories calories = dailyCalories.get(date); - // Check if there are food calories record on that day - if (calories == null) { - calories = new Calories(date); - caloriesRecorder.addFoodCalories(date, calories); - String formattedDate = DateFormatter.dateToString(date); - stringBuilder.append(STARTED_CALORIES) - .append(formattedDate); - } else { - stringBuilder.append(STARTED_DAY_FIRST) - .append(System.lineSeparator()) - .append(STARTED_DAY_SECOND); - } - } else { - stringBuilder.append(STARTED_DAY_FIRST) - .append(System.lineSeparator()) - .append(STARTED_DAY_SECOND); - } - return stringBuilder.toString(); - } - -} diff --git a/src/main/java/seedu/commands/IncorrectSyntaxCommand.java b/src/main/java/seedu/commands/errorcommands/IncorrectSyntaxCommand.java similarity index 67% rename from src/main/java/seedu/commands/IncorrectSyntaxCommand.java rename to src/main/java/seedu/commands/errorcommands/IncorrectSyntaxCommand.java index d39e97a478..10b4b2d66f 100644 --- a/src/main/java/seedu/commands/IncorrectSyntaxCommand.java +++ b/src/main/java/seedu/commands/errorcommands/IncorrectSyntaxCommand.java @@ -1,16 +1,22 @@ -package seedu.commands; - - -public class IncorrectSyntaxCommand extends Command { - private static final String ERROR_MESSAGE = "Invalid syntax for "; - private final String syntaxError; - - public IncorrectSyntaxCommand(String syntaxError) { - this.syntaxError = syntaxError; - } - - @Override - public String execute() { - return ERROR_MESSAGE + syntaxError; - } -} +package seedu.commands.errorcommands; + +//@@author calebcjl + +import seedu.commands.Command; + +/** + * Represents a command entered with incorrect syntax. + */ +public class IncorrectSyntaxCommand extends Command { + private static final String ERROR_MESSAGE = "Invalid syntax for "; + private final String syntaxError; + + public IncorrectSyntaxCommand(String syntaxError) { + this.syntaxError = syntaxError; + } + + @Override + public String execute() { + return ERROR_MESSAGE + syntaxError; + } +} diff --git a/src/main/java/seedu/commands/InvalidCommand.java b/src/main/java/seedu/commands/errorcommands/InvalidCommand.java similarity index 80% rename from src/main/java/seedu/commands/InvalidCommand.java rename to src/main/java/seedu/commands/errorcommands/InvalidCommand.java index 6e6ec7ab81..ac30ceadd8 100644 --- a/src/main/java/seedu/commands/InvalidCommand.java +++ b/src/main/java/seedu/commands/errorcommands/InvalidCommand.java @@ -1,15 +1,17 @@ -package seedu.commands; - - -public class InvalidCommand extends Command { - private static final String INVALID_COMMAND_MESSAGE = " is not a valid command!"; - private final String command; - public InvalidCommand(String command) { - this.command = command; - } - - @Override - public String execute() { - return command + INVALID_COMMAND_MESSAGE; - } -} +package seedu.commands.errorcommands; + + +import seedu.commands.Command; + +public class InvalidCommand extends Command { + private static final String INVALID_COMMAND_MESSAGE = " is not a valid command!"; + private final String command; + public InvalidCommand(String command) { + this.command = command; + } + + @Override + public String execute() { + return command + INVALID_COMMAND_MESSAGE; + } +} diff --git a/src/main/java/seedu/commands/workoutcommands/AddExerciseCommand.java b/src/main/java/seedu/commands/workoutcommands/AddExerciseCommand.java new file mode 100644 index 0000000000..447cb6db3b --- /dev/null +++ b/src/main/java/seedu/commands/workoutcommands/AddExerciseCommand.java @@ -0,0 +1,37 @@ +package seedu.commands.workoutcommands; + +import seedu.commands.Command; +import seedu.workout.Exercise; +import seedu.workout.Workout; + +import static seedu.workout.WorkoutList.NO_CURRENT_WORKOUT; + +//@@author calebcjl +/** + * Represents command to add an exercise to the current workout. + */ +public class AddExerciseCommand extends Command { + private static final String EXERCISE_ADDED_MESSAGE = " has been added."; + private static final String NO_CURRENT_WORKOUT_MESSAGE = "Start a workout before adding exercises!"; + private final Exercise exerciseToAdd; + + public AddExerciseCommand(Exercise exerciseToAdd) { + this.exerciseToAdd = exerciseToAdd; + } + + /** + * Executes the command to add the exercise to the current workout. + * If there is no current workout ongoing, exercise will not be added. + * + * @return Exercise added message if successful. Returns no current workout message otherwise. + */ + @Override + public String execute() { + if (workoutList.getCurrentWorkoutIndex() == NO_CURRENT_WORKOUT) { + return NO_CURRENT_WORKOUT_MESSAGE; + } + Workout currentWorkout = workoutList.getCurrentWorkout(); + currentWorkout.addExercise(exerciseToAdd); + return exerciseToAdd + EXERCISE_ADDED_MESSAGE; + } +} diff --git a/src/main/java/seedu/commands/workoutcommands/AddWorkoutCommand.java b/src/main/java/seedu/commands/workoutcommands/AddWorkoutCommand.java deleted file mode 100644 index bb0fc8180e..0000000000 --- a/src/main/java/seedu/commands/workoutcommands/AddWorkoutCommand.java +++ /dev/null @@ -1,31 +0,0 @@ -package seedu.commands.workoutcommands; - -import seedu.commands.Command; -import seedu.workout.Exercise; - -//@@ author ZIZI-czh -public class AddWorkoutCommand extends Command { - private static Exercise exercise; - private static final String SHOW_EXERCISES_ADDED = " has been added"; - private static final String MISSING_WORKOUT = "Please enter your workout before adding exercises."; - - //@@ author ZIZI-czh - public AddWorkoutCommand(Exercise exercise) { - this.exercise = exercise; - } - - //@@ author ZIZI-czh - @Override - public String execute() { - //ArrayList exercises = Workout.getExercises(); - if (isWorkoutEntered) { - day = workoutList.getSingleWorkout(); - workoutForOneDay = day.getWorkout(); - workoutForOneDay.addExercise(exercise); - - return exercise + SHOW_EXERCISES_ADDED; - } else { - return MISSING_WORKOUT; - } - } -} diff --git a/src/main/java/seedu/commands/countcommands/CountSetsRepsCommand.java b/src/main/java/seedu/commands/workoutcommands/CountSetsRepsCommand.java similarity index 55% rename from src/main/java/seedu/commands/countcommands/CountSetsRepsCommand.java rename to src/main/java/seedu/commands/workoutcommands/CountSetsRepsCommand.java index f6b585dc43..2148ad283c 100644 --- a/src/main/java/seedu/commands/countcommands/CountSetsRepsCommand.java +++ b/src/main/java/seedu/commands/workoutcommands/CountSetsRepsCommand.java @@ -1,26 +1,20 @@ -package seedu.commands.countcommands; - -import seedu.commands.Command; - -import java.util.Date; - -//@@ author guillaume-grn -public class CountSetsRepsCommand extends Command { - - public static final String EMPTY_DAY = "You haven't create a record for this day!"; - Date dayInSpecificWeekDate; - - - public CountSetsRepsCommand(Date dayInSpecificWeekDate) { - this.dayInSpecificWeekDate = dayInSpecificWeekDate; - } - - @Override - public String execute() { - workouts = workoutList.getWorkouts(); - if(!workouts.containsKey(dayInSpecificWeekDate)){ - return EMPTY_DAY; - } - return workoutList.countSetsReps(dayInSpecificWeekDate); - } -} +package seedu.commands.workoutcommands; + +import seedu.commands.Command; + +import java.util.Date; + +//@@ author guillaume-grn +public class CountSetsRepsCommand extends Command { + private final Date dayInSpecificWeekDate; + + + public CountSetsRepsCommand(Date dayInSpecificWeekDate) { + this.dayInSpecificWeekDate = dayInSpecificWeekDate; + } + + @Override + public String execute() { + return workoutList.countSetsReps(dayInSpecificWeekDate); + } +} diff --git a/src/main/java/seedu/commands/workoutcommands/DeleteWorkoutCommand.java b/src/main/java/seedu/commands/workoutcommands/DeleteWorkoutCommand.java index 3456f08079..d53c1ec1c6 100644 --- a/src/main/java/seedu/commands/workoutcommands/DeleteWorkoutCommand.java +++ b/src/main/java/seedu/commands/workoutcommands/DeleteWorkoutCommand.java @@ -1,44 +1,30 @@ package seedu.commands.workoutcommands; - import seedu.commands.Command; +import seedu.exceptions.InvalidArgumentException; import seedu.parser.DateFormatter; -import seedu.workout.Day; -import seedu.workout.WorkoutList; import java.util.Date; -import java.util.HashMap; //@@ author ZIZI-czh public class DeleteWorkoutCommand extends Command { - private static final String DELETE_WORKOUT_FIRST = "Day "; - private static final String DELETE_WORKOUT_SECOND = " have been deleted "; - private static final String NO_SUCH_DAY = " does not exit"; - private final Date workoutToDeleteDate; + private final int workoutToDeleteIndex; //@@ author ZIZI-czh - public DeleteWorkoutCommand(Date workoutToDeleteDate) { - super(); - this.workoutToDeleteDate = workoutToDeleteDate; - } - //@@ author ZIZI-czh - public DeleteWorkoutCommand(WorkoutList workoutList, Date workoutToDeleteDate) { - this.workoutList = workoutList; - this.workoutToDeleteDate = workoutToDeleteDate; + public DeleteWorkoutCommand(int workoutToDeleteIndex) { + this.workoutToDeleteIndex = workoutToDeleteIndex; } - //@@ author ZIZI-czh + //@@author calebcjl @Override - public String execute() { - - HashMap workouts = workoutList.getWorkouts(); - String formattedDate = DateFormatter.dateToString(workoutToDeleteDate); - if (workouts.containsKey(workoutToDeleteDate)) { - workouts.remove(workoutToDeleteDate); - return DELETE_WORKOUT_FIRST + formattedDate + DELETE_WORKOUT_SECOND; - } else { - return formattedDate + NO_SUCH_DAY; + public String execute() throws InvalidArgumentException { + if (workoutToDeleteIndex >= workoutList.getWorkouts().size()) { + throw new InvalidArgumentException("index"); } + String workoutName = workoutList.getWorkout(workoutToDeleteIndex).getWorkoutName(); + Date workoutDate = workoutList.getWorkout(workoutToDeleteIndex).getDate(); + workoutList.deleteWorkout(workoutToDeleteIndex); + return "Deleted " + workoutName + " on " + DateFormatter.dateToString(workoutDate) + '.'; } } diff --git a/src/main/java/seedu/commands/workoutcommands/EndWorkoutCommand.java b/src/main/java/seedu/commands/workoutcommands/EndWorkoutCommand.java index 3be8e0af4c..9101c9e7f9 100644 --- a/src/main/java/seedu/commands/workoutcommands/EndWorkoutCommand.java +++ b/src/main/java/seedu/commands/workoutcommands/EndWorkoutCommand.java @@ -1,26 +1,33 @@ package seedu.commands.workoutcommands; - import seedu.commands.Command; +import static seedu.workout.WorkoutList.NO_CURRENT_WORKOUT; + +/** + * Represents command to end the current workout. + */ public class EndWorkoutCommand extends Command { - /* private static final String WORKOUT_COMPLETE_MESSAGE = "Great job completing your workout!"; - private boolean isEnd = false; + private static final String NO_CURRENT_WORKOUT_MESSAGE = "No ongoing workout to end!"; + private static final String WORKOUT_COMPLETE_MESSAGE = "Great job completing your workout!"; public EndWorkoutCommand() { } - public static boolean isEnd() { - return isEnd; - } - + /** + * Ends the current workout. + * If there is no current workout ongoing, no workout will be ended. + * + * @return Returns workout completed message if current workout is ended. Returns no current workout + * message otherwise. + */ @Override public String execute() { - workoutList.setCurrentWorkoutIndex(WorkoutList.NO_CURRENT_WORKOUT); - isEnd = true; + if (workoutList.getCurrentWorkoutIndex() == NO_CURRENT_WORKOUT) { + return NO_CURRENT_WORKOUT_MESSAGE; + } + workoutList.setCurrentWorkoutIndex(NO_CURRENT_WORKOUT); return WORKOUT_COMPLETE_MESSAGE; - }*/ - - + } } diff --git a/src/main/java/seedu/commands/workoutcommands/ListWorkoutCommand.java b/src/main/java/seedu/commands/workoutcommands/ListWorkoutCommand.java index fb6b955296..0e71eb1fb1 100644 --- a/src/main/java/seedu/commands/workoutcommands/ListWorkoutCommand.java +++ b/src/main/java/seedu/commands/workoutcommands/ListWorkoutCommand.java @@ -1,13 +1,10 @@ package seedu.commands.workoutcommands; - import seedu.commands.Command; import seedu.parser.DateFormatter; import seedu.ui.Ui; -import seedu.workout.Day; -import seedu.workout.WorkoutList; -import java.util.Date; -import java.util.HashMap; +import seedu.workout.Workout; + /** * This is the class for executing the list command @@ -15,37 +12,30 @@ //@@ author ZIZI-czh public class ListWorkoutCommand extends Command { - private static final String EMPTY_DAY_LIST_MESSAGE = "No days have been found in the list"; + private static final String EMPTY_LIST_MESSAGE = "Workout list is empty"; private static final String WORKOUT_LIST_HEADER = - "Here is the list of dates of your workouts:"; + "Here is the list of dates of your workouts:" + System.lineSeparator(); //@@ author ZIZI-czh public ListWorkoutCommand() { - super(); - } - public ListWorkoutCommand(WorkoutList workoutListParameter){ - workoutList = workoutListParameter; } - /** - * Show the list of date of the workout by calling the method in workoutList - */ - //@@ author ZIZI-czh + //@@author calebcjl @Override public String execute() { - HashMap workouts = workoutList.getWorkouts(); - if (workouts != null && !workouts.isEmpty()) { - StringBuilder string = new StringBuilder(); - string.append( WORKOUT_LIST_HEADER).append(System.lineSeparator()); - for (Date date : workouts.keySet()) { - String formattedDate = DateFormatter.dateToString(date); - string.append(formattedDate).append(System.lineSeparator()); - - } - return string + Ui.showSeparator(); - } else { - return EMPTY_DAY_LIST_MESSAGE; + if (workoutList.isEmptyList()) { + return EMPTY_LIST_MESSAGE; + } + + StringBuilder listOfWorkouts = new StringBuilder(WORKOUT_LIST_HEADER); + int counter = 1; + for (Workout workout : workoutList.getWorkouts()) { + String listNumber = counter + ". "; + String date = DateFormatter.dateToString(workout.getDate()) + ' '; + String workoutName = workout.getWorkoutName(); + listOfWorkouts.append(listNumber).append(date).append(workoutName).append(System.lineSeparator()); } + return listOfWorkouts.append(Ui.line()).toString(); } } diff --git a/src/main/java/seedu/commands/workoutcommands/StartDayCommand.java b/src/main/java/seedu/commands/workoutcommands/StartDayCommand.java deleted file mode 100644 index 2de8716764..0000000000 --- a/src/main/java/seedu/commands/workoutcommands/StartDayCommand.java +++ /dev/null @@ -1,61 +0,0 @@ -package seedu.commands.workoutcommands; - -import seedu.commands.Command; -import seedu.parser.DateFormatter; -import seedu.workout.Day; - -import java.util.Date; -import java.util.HashMap; - -//@@ author ZIZI-czh -public class StartDayCommand extends Command { - - private static final String STARTED_DAY_FIRST = "You had started workout on this day before."; - private static final String STARTED_DAY_SECOND = "Please use '/start' to add a new workout!"; - private static final String STARTED_WORKOUT = "Great! You have added a new workout for "; - private Date date; - private Day day = new Day(); - - - //@@ author ZIZI-czh - public StartDayCommand(Date date) { - super(); - this.date = date; - } - - //@@ author ZIZI-czh - public Date getDate() { - return date; - } - - //@@ author ZIZI-czh - @Override - public String execute() { - HashMap workouts = workoutList.getWorkouts(); - StringBuilder stringBuilder = new StringBuilder(); - - //update the current date - workoutList.setDate(date); - if (!workouts.containsKey(date)) { - Day day = workouts.get(date); - if (day == null) { - day = new Day(date); - workoutList.addWorkoutToList(date, day); - String formattedDate = DateFormatter.dateToString(date); - stringBuilder.append(STARTED_WORKOUT) - .append(formattedDate); - - } else { - stringBuilder.append(STARTED_DAY_FIRST) - .append(System.lineSeparator()) - .append(STARTED_DAY_SECOND); - } - } else { - stringBuilder.append(STARTED_DAY_FIRST) - .append(System.lineSeparator()) - .append(STARTED_DAY_SECOND); - } - return stringBuilder.toString(); - } - -} diff --git a/src/main/java/seedu/commands/workoutcommands/StartWorkoutCommand.java b/src/main/java/seedu/commands/workoutcommands/StartWorkoutCommand.java index 28c2cd32fd..bef2d51e6d 100644 --- a/src/main/java/seedu/commands/workoutcommands/StartWorkoutCommand.java +++ b/src/main/java/seedu/commands/workoutcommands/StartWorkoutCommand.java @@ -1,61 +1,42 @@ package seedu.commands.workoutcommands; - import seedu.commands.Command; -import seedu.workout.Day; -import seedu.workout.Workout; +import seedu.exceptions.InvalidArgumentException; +import seedu.parser.DateFormatter; import java.util.Date; -import java.util.HashMap; +import static seedu.workout.WorkoutList.NO_CURRENT_WORKOUT; -//@@ author ZIZI-czh +//@@author calebcjl +/** + * Represents command to start a new workout. + */ public class StartWorkoutCommand extends Command { - private static final String START_WORKOUT_MESSAGE = "Started new workout." - + System.lineSeparator() - + "Use add command to add exercises to your workout!"; - - private static final String FAIL_TO_START_WORKOUT = "Please enter the day for your workout record first."; - - private static final String WORKOUT_START_BEFORE_FIRST = "You had started workout with the same name before, "; - private static final String WORKOUT_START_BEFORE_SECOND = "Please use '/wadd' to add " + - "exercises to the existing workout."; - - private static final String STARTED_WORKOUT = "Great! You have added a new workout for "; - private static final String SYMBOL = "."; - private static boolean isWorkoutEntered; - private String workoutName; + private final String ONGOING_WORKOUT_MESSAGE = "There is already an ongoing workout!"; + private final String workoutName; + private final Date date; - - //@@ author ZIZI-czh - public StartWorkoutCommand(String workoutName) { - super(); + public StartWorkoutCommand(Date date, String workoutName) { + this.date = date; this.workoutName = workoutName; } - - //@@ author ZIZI-czh + /** + * Executes the command to start a new workout. + * Only start a new workout if there is no current workout ongoing. + * It will not start the workout if there already exists a workout with the same name and date. + * + * @return Workout start message if workout is started. Returns ongoing workout message. + * @throws InvalidArgumentException If name and date of workout to be added is the same as a workout that + * is already in the workout list. + */ @Override - public String execute() { - StringBuilder stringBuilder = new StringBuilder(); - HashMap workouts = workoutList.getWorkouts(); - //update the workout name - day.setWorkoutName(workoutName); - if (isDayEntered) { - Day singleWorkout = workoutList.getSingleWorkout(); - if (!workouts.get(workoutList.getDate()).getWorkoutsByDate().containsKey(workoutName)) { - singleWorkout.addWorkout(workoutName, new Workout(workoutName)); - stringBuilder.append(STARTED_WORKOUT) - .append(workoutName) - .append(SYMBOL); - } else { - stringBuilder.append(WORKOUT_START_BEFORE_FIRST) - .append(WORKOUT_START_BEFORE_SECOND); - } - return stringBuilder.toString(); - } else { - return FAIL_TO_START_WORKOUT; + public String execute() throws InvalidArgumentException { + if (workoutList.getCurrentWorkoutIndex() != NO_CURRENT_WORKOUT) { + return ONGOING_WORKOUT_MESSAGE; } - + workoutList.startWorkout(date, workoutName); + return workoutName + " started on " + DateFormatter.dateToString(date) + '.'; } } diff --git a/src/main/java/seedu/commands/workoutcommands/ViewWorkoutCommand.java b/src/main/java/seedu/commands/workoutcommands/ViewWorkoutCommand.java index eea89a7e18..01c32a7aaa 100644 --- a/src/main/java/seedu/commands/workoutcommands/ViewWorkoutCommand.java +++ b/src/main/java/seedu/commands/workoutcommands/ViewWorkoutCommand.java @@ -1,72 +1,22 @@ package seedu.commands.workoutcommands; - import seedu.commands.Command; -import seedu.parser.DateFormatter; -import seedu.ui.Ui; -import seedu.workout.Day; -import seedu.workout.Exercise; +import seedu.exceptions.InvalidArgumentException; import seedu.workout.Workout; -import seedu.workout.WorkoutList; -import java.util.Date; -import java.util.HashMap; - public class ViewWorkoutCommand extends Command { - - private static final String FAIL_TO_FIND_DATE = " does not exit in the list"; - private final Date workoutToViewDate; - + private final int workoutToViewIndex; //@@ author ZIZI-czh - public ViewWorkoutCommand(Date workoutToViewDate) { - super(); - this.workoutToViewDate = workoutToViewDate; + public ViewWorkoutCommand(int workoutToViewIndex) { + this.workoutToViewIndex = workoutToViewIndex; } - //@@ author ZIZI-czh - public ViewWorkoutCommand(Date workoutToViewDate, WorkoutList workoutList) { - this.workoutToViewDate = workoutToViewDate; - //workout = new Day(workoutToViewDate).getWorkoutsByDate(); - this.workoutList = workoutList; - } - - //@@ author ZIZI-czh - @Override - public String execute() { - // convert the date to string for display purposes - String formattedDate = DateFormatter.dateToString(workoutToViewDate); - // get the Day object associated with the given date - Day workoutsOnDate = workoutList.getWorkouts().get(workoutToViewDate); - // if the Day object exists, retrieve the workouts and print them - if (workoutsOnDate != null) { - HashMap singleWorkout; - singleWorkout = workoutsOnDate.getWorkoutsByDate(); - StringBuilder string = new StringBuilder(); - if (singleWorkout.isEmpty()) { - return "No workouts found on " + formattedDate + System.lineSeparator() + Ui.showSeparator(); - } - string.append("Workouts on ").append(formattedDate).append(":").append(System.lineSeparator()); - // retrieve all workouts for the day and add them to the StringBuilder - for (String workoutName : singleWorkout.keySet()) { - string.append("Workout Name: ").append(workoutName).append(System.lineSeparator()); - string.append("Exercise Info: ").append(System.lineSeparator()); - int index = 1; - for (Exercise exercise : singleWorkout.get(workoutName).getExercises()) { - string.append(index).append(". ").append("Name: ") - .append(exercise.getName()) - .append(", weight: ") - .append(exercise.getWeight()) - .append(", rps: ") - .append(exercise.getRepsPerSet()) - .append(System.lineSeparator()); - index++; - } - string.append(Ui.showSeparator()).append(System.lineSeparator()); - } - return string.toString(); + public String execute() throws InvalidArgumentException { + if (workoutToViewIndex >= workoutList.getWorkouts().size()) { + throw new InvalidArgumentException("Index cannot be more than " + workoutList.getWorkouts().size()); } - // if the Day object doesn't exist, return an error message - return formattedDate + FAIL_TO_FIND_DATE; + Workout toView = workoutList.getWorkout(workoutToViewIndex); + return toView.toString(); } } diff --git a/src/main/java/seedu/duke/Duke.java b/src/main/java/seedu/duke/Duke.java deleted file mode 100644 index 161fe2044f..0000000000 --- a/src/main/java/seedu/duke/Duke.java +++ /dev/null @@ -1,70 +0,0 @@ -package seedu.duke; - - -import seedu.calorietracker.CaloriesRecorder; -import seedu.calorietracker.FoodList; -import seedu.commands.Command; -import seedu.commands.ExitCommand; -import seedu.commands.IncorrectSyntaxCommand; -import seedu.exceptions.InvalidSyntaxException; -import seedu.parser.Parser; -import seedu.storage.readfile.WorkoutReadFile; -import seedu.storage.writefile.WorkoutWriteFile; -import seedu.ui.Ui; -import seedu.workout.Day; -import seedu.workout.WorkoutList; - - -public class Duke { - private static final String FILE_PATH_WORKOUT = "data/workoutRecording.txt"; - private static final String FOOD_CALORIE = "data/foodCalories.txt"; - private static final String TOTAL_CALORIE = "data/dailyCalories.txt"; - private WorkoutList workoutList = new WorkoutList(); - private Day day; - // private CalorieTracker calorieTracker = new CalorieTracker(); - private CaloriesRecorder caloriesRecorder = new CaloriesRecorder(); - - private FoodList foodList; - - - public Duke() { - //workoutList = ReadFile.readWorkoutFromFile(FILE_PATH); - } - - public static void main(String[] args) { - new Duke().run(); - } - - private void run() { - // workoutList = ReadFile.readWorkoutFromFile(FILE_PATH); - //day = new Day(); - workoutList = WorkoutReadFile.readWorkoutFromFile(FILE_PATH_WORKOUT); - foodList = new FoodList(); - //foodList = FoodCaloriesReadFile.readFoodCalorieToFile(FOOD_CALORIE); - //calorieTracker = DailyCaloriesReadFile.readDailyCalorieToFile(TOTAL_CALORIE); - - /* caloriesRecorder = new CaloriesRecorder(); - foodList = new FoodList();*/ - Ui.showWelcomeMessage(); - executeCommandUntilExit(); - } - - private void executeCommandUntilExit() { - Command command; - do { - - String userInput = Ui.getUserInput(); - try { - command = new Parser().processCommand(userInput); - } catch (InvalidSyntaxException ise) { - command = new IncorrectSyntaxCommand(ise.toString()); - } - command.setData(workoutList, caloriesRecorder, foodList); - System.out.println(command.execute()); - } while (!ExitCommand.isExit(command)); - WorkoutWriteFile.writeWorkoutToFile(Duke.FILE_PATH_WORKOUT, workoutList); - // FoodCaloriesWriteFile.writeFoodCaloriesToFile(FOOD_CALORIE, foodList); - //DailyCaloriesWriteFile.writeDailyCaloriesToFile(TOTAL_CALORIE, rcalorieTracke); - } -} - diff --git a/src/main/java/seedu/exceptions/InvalidArgumentException.java b/src/main/java/seedu/exceptions/InvalidArgumentException.java new file mode 100644 index 0000000000..ddef2f546c --- /dev/null +++ b/src/main/java/seedu/exceptions/InvalidArgumentException.java @@ -0,0 +1,19 @@ +package seedu.exceptions; + +//@@author calebcjl +/** + * Represents an exception that is thrown when user enters an invalid argument for a command. + */ +public class InvalidArgumentException extends Exception { + private static final String ERROR_MESSAGE = "Invalid input for "; + private final String invalidArgument; + + public InvalidArgumentException(String invalidArgument) { + this.invalidArgument = invalidArgument; + } + + @Override + public String toString() { + return ERROR_MESSAGE + invalidArgument + '!'; + } +} diff --git a/src/main/java/seedu/exceptions/InvalidSyntaxException.java b/src/main/java/seedu/exceptions/InvalidSyntaxException.java index fe763bdde4..ec2aac2603 100644 --- a/src/main/java/seedu/exceptions/InvalidSyntaxException.java +++ b/src/main/java/seedu/exceptions/InvalidSyntaxException.java @@ -1,14 +1,19 @@ package seedu.exceptions; - +//@@author calebcjl +/** + * Represents an exception that is thrown when user enters an incorrect syntax for a command. + */ public class InvalidSyntaxException extends Exception { + private static final String ERROR_MESSAGE = "Syntax error for "; private final String syntaxError; + public InvalidSyntaxException(String syntaxError) { this.syntaxError = syntaxError; } @Override public String toString() { - return syntaxError; + return ERROR_MESSAGE + syntaxError + '!'; } } diff --git a/src/main/java/seedu/parser/CalorieParser.java b/src/main/java/seedu/parser/CalorieParser.java new file mode 100644 index 0000000000..4d5b93c71f --- /dev/null +++ b/src/main/java/seedu/parser/CalorieParser.java @@ -0,0 +1,86 @@ +package seedu.parser; + +import seedu.commands.Command; +import seedu.commands.caloriecommands.AddCalorieCommand; +import seedu.exceptions.InvalidArgumentException; +import seedu.exceptions.InvalidSyntaxException; + +import java.text.ParseException; +import java.util.Date; +import java.util.regex.Pattern; + +/** + * Represents the parser for calorie commands. + */ +public class CalorieParser { + private static final int DATE_LENGTH = 8; + public CalorieParser() { + } + + //@@author calebcjl + /** + * Parses arguments for AddCalorieCommand. + * + * @param arguments Arguments to parse. + * @return AddCalorieCommand. + * @throws InvalidArgumentException If arguments are invalid. + */ + public static Command parseAddCalorieCommand(String arguments) + throws InvalidArgumentException, InvalidSyntaxException { + arguments = arguments.trim(); + Date date; + String foodName; + int foodCalories; + try { + date = DateFormatter.stringToDate(arguments.substring(0,DATE_LENGTH)); + if (Pattern.compile("\\D+") + .matcher(arguments.substring(arguments.length() - 1)).matches()) { + return new AddCalorieCommand(date, arguments.substring(DATE_LENGTH).trim()); + } + foodName = parseFoodName(arguments); + foodCalories = + Integer.parseUnsignedInt(arguments.substring(arguments.lastIndexOf(" ")).trim()); + } catch (ParseException e) { + throw new InvalidArgumentException("date"); + } catch (NumberFormatException e) { + throw new InvalidArgumentException("calories"); + } catch (ArrayIndexOutOfBoundsException e) { + throw new InvalidSyntaxException("/cadd command"); + } + return new AddCalorieCommand(date, foodName, foodCalories); + } + + //@@author calebcjl + /** + * Parses food name for AddCalorieCommand. + * + * @param arguments Arguments to parse. + * @return Food name. + * @throws InvalidArgumentException If food name is not valid. + */ + private static String parseFoodName(String arguments) throws InvalidArgumentException { + String foodName = arguments.substring(DATE_LENGTH, arguments.lastIndexOf(" ")).trim(); + if (!isValidFoodName(foodName)) { + throw new InvalidArgumentException("food name"); + } + return foodName; + } + + //@@author calebcjl + /** + * Check if food name is valid. + * A valid food name must not have numbers in it. + * + * @param foodName Name of food. + * @return True if food name is valid. Returns false otherwise. + */ + private static boolean isValidFoodName(String foodName){ + if (foodName.isEmpty()) { + return false; + } + if (foodName.contains("\\d+")){ + return false; + } + return true; + } +} diff --git a/src/main/java/seedu/parser/CheckCaloriesInput.java b/src/main/java/seedu/parser/CheckCaloriesInput.java deleted file mode 100644 index 47cc66d4fd..0000000000 --- a/src/main/java/seedu/parser/CheckCaloriesInput.java +++ /dev/null @@ -1,68 +0,0 @@ -package seedu.parser; - - -import seedu.commands.Command; -import seedu.commands.IncorrectSyntaxCommand; -import seedu.commands.caloriecommands.AddCalorieCommand; -import seedu.commands.caloriecommands.StartDayCaloriesCommand; - -import java.util.Date; - -import static seedu.commands.caloriecommands.AddCalorieCommand.CALORIES_NOT_GIVEN; - -public class CheckCaloriesInput { - private static final int FOOD_INDEX = 0; - private static final int CALORIES_INDEX = 1; - - - static Command processDayCalories(String arguments) { - Date date = CheckInputs.parseDate(arguments); - return date != null && CheckInputs.parseInput(arguments) ? new StartDayCaloriesCommand(date) : - new IncorrectSyntaxCommand("/cday command"); - } - - public static Command processAddCalories(String arguments) { - Date date; - String food; - int calories; - - try { - String[] addCaloriesArguments = arguments.trim().split("\\s+"); - //date = DateFormatter.stringToDate(addCaloriesArguments[DATE_INDEX].trim()); - food = addCaloriesArguments[FOOD_INDEX].trim(); - - if (addCaloriesArguments.length == 2) { - calories = Integer.parseInt(addCaloriesArguments[CALORIES_INDEX].trim()); - } else if (addCaloriesArguments.length == 1) { - calories = CALORIES_NOT_GIVEN; - } else { - return new IncorrectSyntaxCommand("/cadd command"); - } - - if (food.matches("\\d+")) { - System.out.println("Invalid input. The input cannot be a number."); - return null; - } - - } catch (NumberFormatException e) { - return new IncorrectSyntaxCommand("calories"); - } catch (ArrayIndexOutOfBoundsException e) { - return new IncorrectSyntaxCommand("/cadd command"); - } - - return new AddCalorieCommand(food, calories); - } - - /* public static Command processViewCalories(String arguments) { - Date date; - - try { - date = DateFormatter.stringToDate(arguments.trim()); - } catch (ParseException e) { - return new IncorrectSyntaxCommand("cday"); - } - - return new ViewCaloriesCommand(); - }*/ - -} diff --git a/src/main/java/seedu/parser/CheckInputs.java b/src/main/java/seedu/parser/CheckInputs.java deleted file mode 100644 index 25c8d921ab..0000000000 --- a/src/main/java/seedu/parser/CheckInputs.java +++ /dev/null @@ -1,206 +0,0 @@ -package seedu.parser; - -import seedu.commands.Command; -import seedu.commands.IncorrectSyntaxCommand; -import seedu.commands.countcommands.CountSetsRepsCommand; -import seedu.commands.workoutcommands.AddWorkoutCommand; -import seedu.commands.workoutcommands.DeleteWorkoutCommand; -import seedu.commands.workoutcommands.ListWorkoutCommand; -import seedu.commands.workoutcommands.StartWorkoutCommand; -import seedu.commands.workoutcommands.ViewWorkoutCommand; -import seedu.commands.workoutcommands.StartDayCommand; -import seedu.workout.Exercise; - -import java.text.ParseException; -import java.util.Calendar; -import java.util.Date; - -public class CheckInputs { - private static final int EXERCISE_NAME_INDEX = 0; - private static final int WEIGHT_INDEX = 1; - private static final int REPS_PER_SET_INDEX = 2; - - - static Command processDay(String arguments) { - Date date = parseDate(arguments); - // Command.setDay(date); - return date != null && parseInput(arguments) ? new StartDayCommand(date) : - new IncorrectSyntaxCommand("/wday command"); - } - - static Command processAdd(String arguments) { - Exercise toAdd; - try { - String[] exerciseDetails = arguments.split("/"); - if (exerciseDetails.length != 3) { - System.out.println(66); - return new IncorrectSyntaxCommand("/wadd command"); - } - String exerciseName = exerciseDetails[EXERCISE_NAME_INDEX].trim(); - String weight = exerciseDetails[WEIGHT_INDEX].replace("weight", " ").trim(); - if(!exerciseDetails[WEIGHT_INDEX].startsWith("weight")){ - return new IncorrectSyntaxCommand("/wadd command"); - } - String repsPerSetString = - exerciseDetails[REPS_PER_SET_INDEX].replace("rps", "").replace("rps", "").trim(); - if(!exerciseDetails[REPS_PER_SET_INDEX].startsWith("rps")){ - System.out.println(00); - return new IncorrectSyntaxCommand("/wadd command"); - } - String[] repsList = repsPerSetString.split(" "); - int[] reps = new int[repsList.length]; - for (int i = 0; i < repsList.length; i++) { - reps[i] = Integer.parseInt(repsList[i].trim()); - } - toAdd = new Exercise(exerciseName, weight, repsPerSetString); - } catch (ArrayIndexOutOfBoundsException | NumberFormatException e) { - return new IncorrectSyntaxCommand("/wadd command"); - } - return new AddWorkoutCommand(toAdd); - } - - /** - * This method is used to check the "/start" command - * If the date input has incorrect format, it will notify the users - * Otherwise, StartCommand will be executed - * - * @param arguments Date input - * @return Incorrect command if the input date is incorrect, otherwise, initialize the StartCommand - */ - static Command processStart(String arguments) { - return parseWorkoutName(arguments) ? new StartWorkoutCommand(arguments.trim()) : - new IncorrectSyntaxCommand("/start command"); - - } - - /** - * This method is used to check the "/delete" command - * - * @param arguments Date input - * @return Incorrect command if the input date is incorrect, otherwise, initialize the StartCommand - */ - static Command processDelete(String arguments) { - Date date = parseDate(arguments); - return date != null && parseInput(arguments) ? new DeleteWorkoutCommand(date) : - new IncorrectSyntaxCommand("/delete command"); - } - - //@@ author ZIZI-czh - static Command processList(String arguments) { - return arguments == null || arguments.trim().isEmpty() ? new ListWorkoutCommand() : - new IncorrectSyntaxCommand("/list command"); - } - - /** - * This method is used to check the "/view" command - * - * @param arguments Date input - * @return Incorrect command if the input date is incorrect, otherwise, initialize the ViewCommand - */ - //@@ author Richardtok - static Command processView(String arguments) { - Date date; - try { - date = DateFormatter.stringToDate(arguments); - return new ViewWorkoutCommand(date); - } catch (ParseException e) { - return new IncorrectSyntaxCommand("/wview command"); - } - } - - //@@ author guillaume-grn - static Command processSetsRepsCount(String arguments) { - Date date; - - try { - date = DateFormatter.stringToDate(arguments); - } catch (ParseException e) { - return new IncorrectSyntaxCommand("date"); - } - return new CountSetsRepsCommand(date); - } - - - /** - * This method is used to check the input date format - * - * @param arguments inputs date - * @return return null if the date format is invalid - */ - //@@ author ZIZI-czh - static Date parseDate(String arguments) { - try { - Date enteredDate = DateFormatter.stringToDate(arguments);; - Date currentDate = new Date(); - - - if (enteredDate.compareTo(currentDate) > 0) { - //System.out.println("Date cannot be after the current date."); - return null; - } - return enteredDate; - } catch (ParseException e) { - System.out.println("Invalid date format. Please follow the format dd/MM/yy"); - return null; - } - } - - /** - * This method is used to check the input command based on the format and the date - * - * @param arguments input - * @return return false if the input does not follow the format - */ - - //@@ author ZIZI-czh - static boolean parseInput(String arguments) { - //arguments.trim().contains("\\s+"); - if (arguments.trim().contains("\\s+")) { - System.out.println("invalid input date, please use the format /start dd/MM/yy"); - return false; // not in the form "/start dd/MM/yy" - } - String[] dateParts = arguments.trim().split("/"); - - if (dateParts.length != 3) { - System.out.println("invalid input, please use the format dd/MM/yy"); - return false; // not in the form "dd/MM/yy" - } - - for (String part : dateParts) { - if (part.contains("/")) { - System.out.println("invalid input, please follow /start dd/MM/yy"); - return false; // non-numeric character found in date - } - } - - int day; - int month; - int year; - try { - day = Integer.parseInt(dateParts[0]); - month = Integer.parseInt(dateParts[1]); - year = Integer.parseInt(dateParts[2]); - if (day < 1 || day > 31 || month < 1 || month > 12) { - System.out.println("Please enter a correct date"); - return false; // not valid date components - } - if (year < 0 || (year > 99 && year < 1000) || year > Calendar.getInstance().get(Calendar.YEAR)) { - System.out.println("Invalid year. Please use a 2 or 4 digit year between 0 and " - + Calendar.getInstance().get(Calendar.YEAR)); - return false; // year not between 0 and current year or not 2 or 4 digits - } - } catch (NumberFormatException e) { - System.out.println("Please enter valid date"); - return false; // not valid integers for date components - } - - return true; // input is in the correct format - } - - public static boolean parseWorkoutName(String arguments) { - //System.out.println("The workout name should start with 'Workout'"); - return !arguments.trim().isEmpty(); - } - - -} diff --git a/src/main/java/seedu/parser/DateFormatter.java b/src/main/java/seedu/parser/DateFormatter.java index 44c481525f..1a2b7fdf8e 100644 --- a/src/main/java/seedu/parser/DateFormatter.java +++ b/src/main/java/seedu/parser/DateFormatter.java @@ -1,19 +1,36 @@ package seedu.parser; - import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Date; +//@@author calebcjl +/** + * This class parses date into a string and vice versa. + */ public class DateFormatter { private static final SimpleDateFormat dateFormat = new SimpleDateFormat("dd/MM/yy"); - public DateFormatter() { + public DateFormatter() { } + /** + * Checks if string is in dd/MM/yy format and converts it into date. + * + * @param date String to be checked. + * @return Corresponding date of string. + * @throws ParseException If string is not in dd/MM/yy format. + */ public static Date stringToDate(String date) throws ParseException { return dateFormat.parse(date); } + + /** + * Converts date to a string in dd/MM/yy format. + * + * @param date Date to be converted. + * @return String of date in dd/MM/yy format. + */ public static String dateToString(Date date){ return dateFormat.format(date); } diff --git a/src/main/java/seedu/parser/Parser.java b/src/main/java/seedu/parser/Parser.java index f295ac00ca..58de3c43ab 100644 --- a/src/main/java/seedu/parser/Parser.java +++ b/src/main/java/seedu/parser/Parser.java @@ -1,23 +1,24 @@ package seedu.parser; - import seedu.commands.Command; import seedu.commands.ExitCommand; -import seedu.commands.InvalidCommand; -import seedu.commands.caloriecommands.CaloriesCommand; -import seedu.commands.workoutcommands.HelpWorkoutCommand; +import seedu.commands.errorcommands.InvalidCommand; +import seedu.commands.HelpCommand; +import seedu.exceptions.InvalidArgumentException; import seedu.exceptions.InvalidSyntaxException; import java.util.regex.Matcher; import java.util.regex.Pattern; - +//@@author calebcjl +/** + * Represents the main parser that parses user commands. + */ public class Parser { - private static final Pattern BASIC_COMMAND_FORMAT = Pattern.compile("(?\\S+)(?" + - ".*)"); - private boolean isDayEntered; + private static final Pattern BASIC_COMMAND_FORMAT = + Pattern.compile("(?\\S+)(?.*)"); - public Command processCommand(String userInput) throws InvalidSyntaxException { + public static Command processCommand(String userInput) throws InvalidSyntaxException, InvalidArgumentException { Matcher matcher = BASIC_COMMAND_FORMAT.matcher(userInput.trim()); if (!matcher.matches()) { throw new InvalidSyntaxException("user input"); @@ -27,39 +28,40 @@ public Command processCommand(String userInput) throws InvalidSyntaxException { String arguments = matcher.group("arguments"); switch (commandName.toLowerCase()) { - case "/wday": - Command.setIsDayEntered(true); - Command.setIsWorkoutEntered(false); - return CheckInputs.processDay(arguments); case "/wstart": - Command.setIsWorkoutEntered(true); - return CheckInputs.processStart(arguments); + return WorkoutParser.parseStartWorkoutCommand(arguments); case "/wadd": - return CheckInputs.processAdd(arguments); + return WorkoutParser.parseAddExerciseCommand(arguments); case "/wdelete": - return CheckInputs.processDelete(arguments); + return WorkoutParser.parseDeleteWorkoutCommand(arguments); case "/wlist": - return CheckInputs.processList(arguments); + return WorkoutParser.parseListWorkoutCommand(arguments); case "/wview": - return CheckInputs.processView(arguments); + return WorkoutParser.parseViewWorkoutCommand(arguments); case "/wcount": - return CheckInputs.processSetsRepsCount(arguments); - case "/cday": - CaloriesCommand.setDateEntered(true); - return CheckCaloriesInput.processDayCalories(arguments); + return WorkoutParser.parseSetsRepsCountCommand(arguments); + case "/wend": + return WorkoutParser.parseEndWorkoutCommand(arguments); case "/cadd": - return CheckCaloriesInput.processAddCalories(arguments); - case "/clist": //list the total daily calories consumption - // return CheckCaloriesInput.processViewCalories(arguments); - case "/cview": // list all the food calories that been entered for a day - case "/cdelete": //delete calories for a specific day for one food follow /cdelete date food name + return CalorieParser.parseAddCalorieCommand(arguments); + case "/clist": + //list the total daily calories consumption + break; + case "/cview": + // list all the food calories that been entered for a day + break; + case "/cdelete": + //delete calories for a specific day for one food follow /cdelete date food name + break; case "/exit": return new ExitCommand(); case "/help": - return new HelpWorkoutCommand(); + return new HelpCommand(); default: return new InvalidCommand(commandName); } + return new InvalidCommand(commandName); } + } diff --git a/src/main/java/seedu/parser/WorkoutParser.java b/src/main/java/seedu/parser/WorkoutParser.java new file mode 100644 index 0000000000..5e61ade8aa --- /dev/null +++ b/src/main/java/seedu/parser/WorkoutParser.java @@ -0,0 +1,279 @@ +package seedu.parser; + +import seedu.commands.Command; +import seedu.commands.workoutcommands.CountSetsRepsCommand; +import seedu.commands.workoutcommands.AddExerciseCommand; +import seedu.commands.workoutcommands.DeleteWorkoutCommand; +import seedu.commands.workoutcommands.EndWorkoutCommand; +import seedu.commands.workoutcommands.ListWorkoutCommand; +import seedu.commands.workoutcommands.StartWorkoutCommand; +import seedu.commands.workoutcommands.ViewWorkoutCommand; +import seedu.exceptions.InvalidArgumentException; +import seedu.exceptions.InvalidSyntaxException; +import seedu.workout.Exercise; + +import java.math.BigDecimal; +import java.text.ParseException; +import java.util.Calendar; +import java.util.Date; +import java.util.regex.Matcher; +import java.util.regex.Pattern; + +import static java.lang.Math.max; + +/** + * Represents the parser for workout commands. + */ +public class WorkoutParser { + private static final int EXERCISE_NAME_INDEX = 0; + private static final int WEIGHT_INDEX = 1; + private static final int REPS_PER_SET_INDEX = 2; + private static final int ADD_ARGUMENT_COUNT = 3; + private static final int START_WORKOUT_ARGUMENT_COUNT = 2; + private static final int DATE_INDEX = 0; + private static final int WORKOUT_NAME_INDEX = 1; + + //@@author calebcjl + /** + * Parse arguments for /wadd command. + * + * @param arguments Arguments for add workout command. + * @return AddWorkoutCommand if arguments are valid. + * @throws InvalidSyntaxException If there is invalid syntax. + */ + static Command parseAddExerciseCommand(String arguments) + throws InvalidSyntaxException, InvalidArgumentException { + //exercise name 100kg 5 5 5 5 + String[] exerciseDetails = new String[ADD_ARGUMENT_COUNT]; + Matcher matcher = Pattern.compile("\\d+").matcher(arguments); + matcher.find(); + try { + exerciseDetails[EXERCISE_NAME_INDEX] = arguments.substring(0, arguments.indexOf(matcher.group())); + exerciseDetails[WEIGHT_INDEX] = arguments.substring(arguments.indexOf(matcher.group()), + max(arguments.indexOf("kg"), arguments.indexOf("lb")) + 2); + exerciseDetails[REPS_PER_SET_INDEX] = arguments.substring + (arguments.indexOf(exerciseDetails[WEIGHT_INDEX]) + exerciseDetails[WEIGHT_INDEX].length()); + } catch (IndexOutOfBoundsException | IllegalStateException e) { + throw new InvalidSyntaxException("/wadd command"); + } + + String exerciseName = parseExerciseName(exerciseDetails[EXERCISE_NAME_INDEX]); + String weight = parseWeight(exerciseDetails[WEIGHT_INDEX]); + String repsPerSet = parseRepsPerSet(exerciseDetails[REPS_PER_SET_INDEX]); + Exercise toAdd = new Exercise(exerciseName, weight, repsPerSet); + + return new AddExerciseCommand(toAdd); + } + + //@@author calebcjl + /** + * Check if name is valid. + * Name is valid if it is not an empty string. + * + * @param name Name to be checked. + * @return True if valid. Returns false otherwise. + */ + private static boolean isValidName(String name) { + return name != null && !name.isEmpty(); + } + + //@@author calebcjl + /** + * Parses exercise name argument. + * Removes any leading and trailing whitespaces. + * + * @param exerciseName Exercise name argument. + * @return Exercise name. + * @throws InvalidSyntaxException If syntax is invalid. + */ + private static String parseExerciseName(String exerciseName) throws InvalidArgumentException { + exerciseName = exerciseName.trim(); + if (!isValidName(exerciseName)) { + throw new InvalidArgumentException("exercise name"); + } + return exerciseName; + } + + //@@author calebcjl + /** + * Checks if weight is valid. + * A valid weight contains a positive number with at most 2 decimal place and weight unit (kg or lb). + * + * @param weight Weight to be checked. + * @return True if weight is valid. Returns false otherwise. + */ + private static boolean isValidWeight(String weight) { + if (weight == null || weight.isEmpty()) { + return false; + } + if (!weight.contains("kg") && !weight.contains("lb")) { + return false; + } + try { + Integer.parseUnsignedInt(weight.substring(0, max(weight.indexOf("kg"), weight.indexOf("lb")))); + } catch (NumberFormatException e) { + return false; + } + return true; + } + + /** + * Parses weight argument. + * + * @param weight Weight argument. + * @return Weight. + */ + private static String parseWeight(String weight) throws InvalidArgumentException { + weight = weight.trim(); + if (!isValidWeight(weight)) { + throw new InvalidArgumentException("weight"); + } + return weight; + } + + //@@author calebcjl + /** + * Check if reps per set are valid. + * A valid reps per set is a String of positive integers separated by a single whitespace. + * + * @param repsPerSet Reps per set argument. + * @return True if reps per set are valid. Returns false otherwise. + */ + private static boolean isValidRepsPerSet(String repsPerSet) { + String[] reps = repsPerSet.split(" "); + try { + for (String repCount : reps) { + Integer.parseUnsignedInt(repCount); + } + } catch (NumberFormatException e) { + return false; + } + + return true; + } + + /** + * Parses reps per set argument. + * + * @param repsPerSet Reps per set argument. + * @return Reps per set. + */ + private static String parseRepsPerSet(String repsPerSet) throws InvalidArgumentException { + repsPerSet = repsPerSet.trim(); + if (!isValidRepsPerSet(repsPerSet)) { + throw new InvalidArgumentException("reps per set"); + } + return repsPerSet; + } + + //@@author ZIZI-czh + /** + * This method is used to check the "/start" command + * If the date input has incorrect format, it will notify the users + * Otherwise, StartCommand will be executed + * + * @param arguments Date input + * @return Incorrect command if the input date is incorrect, otherwise, initialize the StartCommand + */ + static Command parseStartWorkoutCommand(String arguments) throws InvalidSyntaxException, + InvalidArgumentException { + String[] startDetails = arguments.trim().split("\\s+", START_WORKOUT_ARGUMENT_COUNT); + if (startDetails.length != START_WORKOUT_ARGUMENT_COUNT) { + throw new InvalidSyntaxException("/wstart command"); + } + Date date = parseDate(startDetails[DATE_INDEX]); + String workoutName = parseWorkoutName(startDetails[WORKOUT_NAME_INDEX]); + + return new StartWorkoutCommand(date, workoutName); + } + + static String parseWorkoutName(String workoutName) throws InvalidArgumentException { + if (workoutName.isBlank()) { + throw new InvalidArgumentException("workout name"); + } + return workoutName.trim(); + } + + /** + * This method is used to check the "/delete" command + * + * @param arguments Date input + * @return Incorrect command if the input date is incorrect, otherwise, initialize the StartCommand + */ + static Command parseDeleteWorkoutCommand(String arguments) throws InvalidSyntaxException { + arguments = arguments.trim(); + int index; + try { + index = Integer.parseUnsignedInt(arguments) - 1; + } catch (NumberFormatException e) { + throw new InvalidSyntaxException("/wdelete command"); + } + return new DeleteWorkoutCommand(index); + } + + //@@ author ZIZI-czh + static Command parseListWorkoutCommand(String arguments) throws InvalidSyntaxException { + if (arguments != null && !arguments.isBlank()) { + throw new InvalidSyntaxException("/wlist command"); + } + return new ListWorkoutCommand(); + } + + + //@@ author Richardtok + static Command parseViewWorkoutCommand(String arguments) throws InvalidArgumentException { + arguments = arguments.trim(); + int index; + try { + index = Integer.parseUnsignedInt(arguments) - 1; + } catch (NumberFormatException e) { + throw new InvalidArgumentException("index"); + } + return new ViewWorkoutCommand(index); + } + + //@@ author guillaume-grn + static Command parseSetsRepsCountCommand(String arguments) throws InvalidArgumentException, + InvalidSyntaxException { + Date date = parseDate(arguments); + return new CountSetsRepsCommand(date); + } + + + /** + * This method is used to check the input date format + * + * @param arguments inputs date + * @return return null if the date format is invalid + */ + //@@ author ZIZI-czh + static Date parseDate(String arguments) throws InvalidSyntaxException, InvalidArgumentException { + arguments = arguments.trim(); + Date enteredDate; + try { + enteredDate = DateFormatter.stringToDate(arguments); + } catch (ParseException e) { + throw new InvalidSyntaxException("date"); + } + Date currentDate = new Date(); + if (enteredDate.compareTo(currentDate) > 0) { + throw new InvalidArgumentException("date"); + } + return enteredDate; + } + + //@@author calebcjl + /** + * Parses arguments of end workout command. + * + * @param arguments Arguments of end workout command. + * @return End workout command. + * @throws InvalidSyntaxException If syntax of command is invalid. + */ + static Command parseEndWorkoutCommand(String arguments) throws InvalidSyntaxException { + if (arguments != null && !arguments.isBlank()) { + throw new InvalidSyntaxException("/wend command"); + } + return new EndWorkoutCommand(); + } +} diff --git a/src/main/java/seedu/storage/CalorieTrackerStorage.java b/src/main/java/seedu/storage/CalorieTrackerStorage.java new file mode 100644 index 0000000000..9b7be91389 --- /dev/null +++ b/src/main/java/seedu/storage/CalorieTrackerStorage.java @@ -0,0 +1,69 @@ +package seedu.storage; + +import seedu.parser.DateFormatter; +import seedu.ui.Ui; + +import java.io.File; +import java.io.FileNotFoundException; +import java.io.FileWriter; +import java.io.IOException; +import java.text.ParseException; +import java.util.Date; +import java.util.HashMap; +import java.util.Scanner; + +/** + * Represents a storage for CalorieTracker. + */ +public class CalorieTrackerStorage { + private static final File defaultCalorieTrackerFile = new File("data/calorietracker.txt"); + private final File calorieTrackerFile; + public CalorieTrackerStorage() { + calorieTrackerFile = defaultCalorieTrackerFile; + } + + public HashMap getUserData() { + HashMap savedCalorieTracker = new HashMap<>(); + if (calorieTrackerFile.exists()) { + try { + Scanner scanner = new Scanner(calorieTrackerFile); + while (scanner.hasNext()) { + readCalorieTrackerFile(scanner.nextLine(), savedCalorieTracker); + } + } catch (FileNotFoundException | ParseException e) { + Ui.showReadFileErrorMessage("calorie tracker"); + } + } else { + Ui.showNoSavedDataMessage("calorie tracker"); + createCalorieTrackerFile(); + } + Ui.showSuccessfulLoadDataMessage("calorie tracker"); + Ui.showOneLine(); + return savedCalorieTracker; + } + + private void readCalorieTrackerFile(String line, HashMap totalCaloriesConsumedInDay) + throws ParseException { + String[] data = line.split(":"); + totalCaloriesConsumedInDay.put(DateFormatter.stringToDate(data[0]), Integer.valueOf(data[1])); + } + + private void createCalorieTrackerFile() { + try { + if (calorieTrackerFile.createNewFile()) { + Ui.showCreatedNewFileMessage("calorie tracker"); + } + } catch (IOException e) { + Ui.showNewFileNotCreatedMessage("calorie tracker"); + } + } + + public void saveUserData(HashMap totalCaloriesConsumedInDay) throws IOException { + FileWriter fileWriter = new FileWriter(calorieTrackerFile); + for (Date date : totalCaloriesConsumedInDay.keySet()) { + fileWriter.write(DateFormatter.dateToString(date) + ':' + + totalCaloriesConsumedInDay.get(date) + System.lineSeparator()); + } + fileWriter.close(); + } +} diff --git a/src/main/java/seedu/storage/FoodListStorage.java b/src/main/java/seedu/storage/FoodListStorage.java new file mode 100644 index 0000000000..61bd80848c --- /dev/null +++ b/src/main/java/seedu/storage/FoodListStorage.java @@ -0,0 +1,64 @@ +package seedu.storage; + +import seedu.ui.Ui; + +import java.io.File; +import java.io.FileNotFoundException; +import java.io.FileWriter; +import java.io.IOException; +import java.util.HashMap; +import java.util.Scanner; + +/** + * Represents a storage for FoodList. + */ +public class FoodListStorage { + private static final File defaultFoodListFile = new File("data/foodlist.txt"); + private final File foodListFile; + public FoodListStorage() { + foodListFile = defaultFoodListFile; + } + + HashMap getUserData() { + HashMap savedFoodList = new HashMap<>(); + if (foodListFile.exists()) { + try { + Scanner scanner = new Scanner(foodListFile); + while (scanner.hasNext()) { + readFoodListFileLine(scanner.nextLine(), savedFoodList); + } + } catch (FileNotFoundException e) { + Ui.showReadFileErrorMessage("food list"); + } + } else { + Ui.showNoSavedDataMessage("food list"); + createFoodListFile(); + } + Ui.showSuccessfulLoadDataMessage("food list"); + Ui.showOneLine(); + return savedFoodList; + } + + private void readFoodListFileLine(String line, HashMap savedFoodList) { + String[] data = line.split(":"); + savedFoodList.put(data[0], Integer.valueOf(data[1])); + } + + private void createFoodListFile() { + try { + if (foodListFile.createNewFile()) { + Ui.showCreatedNewFileMessage("food list"); + } + } catch (IOException e) { + Ui.showNewFileNotCreatedMessage("food list"); + } + } + + public void saveUserData(HashMap foodCalories) throws IOException { + FileWriter fileWriter = new FileWriter(foodListFile); + for (String foodName : foodCalories.keySet()) { + fileWriter.write(foodName + ':' + foodCalories.get(foodName) + System.lineSeparator()); + } + fileWriter.close(); + } +} diff --git a/src/main/java/seedu/storage/Storage.java b/src/main/java/seedu/storage/Storage.java new file mode 100644 index 0000000000..7f8cbbf805 --- /dev/null +++ b/src/main/java/seedu/storage/Storage.java @@ -0,0 +1,64 @@ +package seedu.storage; + +import seedu.calorietracker.CalorieTracker; +import seedu.calorietracker.FoodList; +import seedu.ui.Ui; +import seedu.workout.Workout; +import seedu.workout.WorkoutList; + +import java.io.IOException; +import java.util.ArrayList; +import java.util.Date; +import java.util.HashMap; + +//@@author calebcjl +/** + * Represents the main storage for all storage classes. + */ +public class Storage { + private final WorkoutListStorage workoutListStorage; + private final FoodListStorage foodListStorage; + private final CalorieTrackerStorage calorieTrackerStorage; + + public Storage() { + workoutListStorage = new WorkoutListStorage(); + foodListStorage = new FoodListStorage(); + calorieTrackerStorage = new CalorieTrackerStorage(); + } + + /** + * Returns list of workouts saved in user data file. + * + * @return List of workouts. + */ + public ArrayList readWorkoutListFile() { + return workoutListStorage.getUserData(); + } + + /** + * Returns food list saved in user data file. + * + * @return Food list. + */ + public HashMap readFoodListFile() { + return foodListStorage.getUserData(); + } + + /** + * Returns calorie tracker saved in user data file. + * + * @return Calorie tracker. + */ + public HashMap readCalorieTrackerFile() { + return calorieTrackerStorage.getUserData(); + } + public void saveUserData(WorkoutList workoutList, FoodList foodList, CalorieTracker calorieTracker) { + try { + workoutListStorage.saveUserData(workoutList.getWorkouts()); + foodListStorage.saveUserData(foodList.getFoodCalories()); + calorieTrackerStorage.saveUserData(calorieTracker.getTotalCaloriesConsumedInDay()); + } catch (IOException e) { + Ui.showSaveUserDataErrorMessage(); + } + } +} diff --git a/src/main/java/seedu/storage/WorkoutListStorage.java b/src/main/java/seedu/storage/WorkoutListStorage.java new file mode 100644 index 0000000000..9991e2b843 --- /dev/null +++ b/src/main/java/seedu/storage/WorkoutListStorage.java @@ -0,0 +1,86 @@ +package seedu.storage; + +import seedu.parser.DateFormatter; +import seedu.ui.Ui; +import seedu.workout.Exercise; +import seedu.workout.Workout; + +import java.io.File; +import java.io.FileNotFoundException; +import java.io.FileWriter; +import java.io.IOException; +import java.text.ParseException; +import java.util.ArrayList; +import java.util.Scanner; + +//@@author calebcjl +/** + * Represents a storage for WorkoutList. + */ +public class WorkoutListStorage { + private static final File defaultWorkoutListFile = new File("data/workoutlist.txt"); + private final File workoutListFile; + + public WorkoutListStorage() { + workoutListFile = defaultWorkoutListFile; + } + + public ArrayList getUserData() { + ArrayList savedWorkoutList = new ArrayList<>(); + if (workoutListFile.exists()) { + try { + Scanner scanner = new Scanner(workoutListFile); + while (scanner.hasNext()) { + readWorkoutListFileLine(scanner.nextLine(), savedWorkoutList); + } + } catch (FileNotFoundException | ParseException e) { + Ui.showReadFileErrorMessage("workout list file"); + } + } else { + Ui.showNoSavedDataMessage("workout list"); + createWorkoutListFile(); + } + Ui.showSuccessfulLoadDataMessage("workout list"); + Ui.showOneLine(); + return savedWorkoutList; + } + + private void readWorkoutListFileLine(String line, ArrayList savedWorkoutList) throws ParseException { + String[] data = line.split(","); + Workout workout = new Workout(DateFormatter.stringToDate(data[0]), data[1]); + for (int i = 2; i < data.length - 2; i += 3) { + Exercise exercise = new Exercise(data[i], data[i + 1], data[i + 2]); + workout.addExercise(exercise); + } + savedWorkoutList.add(workout); + } + + private void createWorkoutListFile() { + try { + if (workoutListFile.getParentFile().mkdirs()) { + Ui.showCreateDirectoryMessage(); + } else { + Ui.showDirectoryNotCreatedMessage(); + } + if (workoutListFile.createNewFile()) { + Ui.showCreatedNewFileMessage("workout list"); + } + } catch (IOException e) { + Ui.showNewFileNotCreatedMessage("workout list"); + } + } + + void saveUserData(ArrayList workouts) throws IOException { + FileWriter fileWriter = new FileWriter(workoutListFile); + for (Workout workout : workouts) { + fileWriter.write(DateFormatter.dateToString(workout.getDate()) + ',' + + workout.getWorkoutName() + ','); + for (Exercise exercise : workout.getExercises()) { + fileWriter.write(exercise.getName() + ',' + exercise.getWeight() + ',' + + exercise.getRepsPerSet() + ','); + } + fileWriter.write(System.lineSeparator()); + } + fileWriter.close(); + } +} diff --git a/src/main/java/seedu/storage/readfile/DailyCaloriesReadFile.java b/src/main/java/seedu/storage/readfile/DailyCaloriesReadFile.java deleted file mode 100644 index b1ea4e758b..0000000000 --- a/src/main/java/seedu/storage/readfile/DailyCaloriesReadFile.java +++ /dev/null @@ -1,59 +0,0 @@ -/* -package seedu.storage.readfile; - -import seedu.calorietracker.CalorieTracker; -import seedu.parser.DateFormatter; - -import java.io.File; -import java.io.FileNotFoundException; -import java.io.IOException; -import java.text.ParseException; -import java.util.Date; -import java.util.Scanner; - -public class DailyCaloriesReadFile { - - private static final String SPACE = " "; - */ -/* public static CalorieTracker readDailyCalorieToFile(String filePath) { - - CalorieTracker calorieTracker = new CalorieTracker(); - // Read from text file and update foodList - File savedFile = new File(filePath); - if (!savedFile.getParentFile().exists()) { - savedFile.getParentFile().mkdirs(); - } - try { - if (!savedFile.exists()) { - savedFile.createNewFile(); - } - } catch (IOException e) { - System.out.println("Failed to create a new file!!!"); - } - - try { - File file = new File(filePath); - Scanner scanner = new Scanner(file); - while (scanner.hasNextLine()) { - String line = scanner.nextLine(); - if (line.startsWith(SPACE)) { - String[] totalCalories = line.split(":"); - String date = totalCalories[0].trim(); - Date formattedDate = DateFormatter.stringToDate(date); - int calories = Integer.parseInt(totalCalories[1].trim()); - calorieTracker.updateTotalCalories(formattedDate, calories); - - } - } - scanner.close(); - } catch (FileNotFoundException e) { - System.out.println("File not found."); - } catch (ParseException e) { - throw new RuntimeException(e); - } - return calorieTracker; - - }*//* - -} -*/ diff --git a/src/main/java/seedu/storage/readfile/FoodCaloriesReadFile.java b/src/main/java/seedu/storage/readfile/FoodCaloriesReadFile.java deleted file mode 100644 index 0a104e4e9d..0000000000 --- a/src/main/java/seedu/storage/readfile/FoodCaloriesReadFile.java +++ /dev/null @@ -1,49 +0,0 @@ -package seedu.storage.readfile; - -import seedu.calorietracker.FoodList; - -import java.io.File; -import java.io.FileNotFoundException; -import java.io.IOException; -import java.util.Scanner; - -public class FoodCaloriesReadFile { - - private static final String SPACE = " "; - // private static HashMap foodCalories = new HashMap<>(); - - public static FoodList readFoodCalorieToFile(String filePath){ - FoodList foodList = new FoodList(); - // Read from text file and update foodList - File savedFile = new File(filePath); - if (!savedFile.getParentFile().exists()) { - savedFile.getParentFile().mkdirs(); - } - try { - if (!savedFile.exists()) { - savedFile.createNewFile(); - } - } catch (IOException e) { - System.out.println("Failed to create a new file!!!"); - } - - try { - File file = new File(filePath); - Scanner scanner = new Scanner(file); - while (scanner.hasNextLine()) { - String line = scanner.nextLine(); - if (line.startsWith(SPACE)) { - String[] foodCalories = line.split(":"); - String food = foodCalories[0].trim(); - String[] caloriesWithUnit = foodCalories[1].trim().split(" "); - int calories = Integer.parseInt(caloriesWithUnit[0]); - foodList.addFood(food, calories); - } - } - scanner.close(); - } catch (FileNotFoundException e) { - System.out.println("File not found."); - } - return foodList; - } -} diff --git a/src/main/java/seedu/storage/readfile/WorkoutReadFile.java b/src/main/java/seedu/storage/readfile/WorkoutReadFile.java deleted file mode 100644 index 60edca1584..0000000000 --- a/src/main/java/seedu/storage/readfile/WorkoutReadFile.java +++ /dev/null @@ -1,79 +0,0 @@ -package seedu.storage.readfile; - - -import seedu.parser.DateFormatter; -import seedu.workout.Day; -import seedu.workout.Exercise; -import seedu.workout.Workout; -import seedu.workout.WorkoutList; - -import java.io.File; -import java.io.FileNotFoundException; -import java.io.IOException; -import java.text.ParseException; -import java.util.Date; -import java.util.Scanner; - - -public class WorkoutReadFile { - private static final String SPACE = " "; - - - public static WorkoutList readWorkoutFromFile(String filePath) { - WorkoutList workoutList = new WorkoutList(); - File savedFile = new File(filePath); - if (!savedFile.getParentFile().exists()) { - savedFile.getParentFile().mkdirs(); - } - try { - if (!savedFile.exists()) { - savedFile.createNewFile(); - } - } catch (IOException e) { - System.out.println("Failed to create a new file!!!"); - } - - try { - File file = new File(filePath); - Scanner scanner = new Scanner(file); - Date currentDate = null; - String currentWorkoutName = null; - - while (scanner.hasNextLine()) { - String line = scanner.nextLine(); - if (line.startsWith("Date")) { - //currentDate = DateFormatter.stringToDate(line.substring(6).trim()); - String[] currentDateSplit = line.split(":"); - currentDate = DateFormatter.stringToDate(currentDateSplit[1].trim()); - workoutList.addWorkoutToList(currentDate, new Day(currentDate)); - } else if (line.startsWith("Workout :")) { - String[] currentDWorkoutNameSplit = line.split(":"); - currentWorkoutName = currentDWorkoutNameSplit[1].trim(); - Day singleWorkout = workoutList.getSingleWorkout(); - Workout workout = singleWorkout.getWorkout(); - workout = new Workout(currentWorkoutName); - singleWorkout.addWorkout(currentWorkoutName, workout); - } else if (line.startsWith(SPACE)) { - String[] exerciseDetails = line.substring(4).split(","); - String exerciseName = exerciseDetails[0].trim().substring(8).trim(); - String weight = exerciseDetails[1].replace("Weight:", "").trim(); - String repsString = exerciseDetails[2].replace("Reps:", "").trim(); - Exercise exercise = new Exercise(exerciseName, weight, repsString); - /* System.out.println("name: " + exerciseName + " weight: " + weight + "reps: " + repsString);*/ - // workoutList.addExerciseToWorkout(currentDate, currentWorkoutName, exercise); - Day day = workoutList.getSingleWorkout(); - Workout workoutForOneDay = day.getWorkout(); - workoutForOneDay.addExercise(exercise); - } - } - scanner.close(); - } catch (FileNotFoundException e) { - System.out.println("File not found."); - } catch (ParseException e) { - System.out.println("Error parsing date."); - } - - return workoutList; - } -} - diff --git a/src/main/java/seedu/storage/writefile/DailyCaloriesWriteFile.java b/src/main/java/seedu/storage/writefile/DailyCaloriesWriteFile.java deleted file mode 100644 index 22aefae19c..0000000000 --- a/src/main/java/seedu/storage/writefile/DailyCaloriesWriteFile.java +++ /dev/null @@ -1,36 +0,0 @@ -/* -package seedu.storage.writefile; - -import seedu.calorietracker.CalorieTracker; -import seedu.parser.DateFormatter; - -import java.io.File; -import java.io.FileWriter; -import java.io.IOException; -import java.util.Date; -import java.util.HashMap; - -public class DailyCaloriesWriteFile { - -*/ -/* private static final String SPACE = " "; - - public static void writeDailyCaloriesToFile(String filePath, CalorieTracker calorieTracker) { - try { - File savedFile = new File(filePath); - FileWriter writeFile = new FileWriter(savedFile); - HashMap totalCalories = calorieTracker.getTotalCaloriesConsumedInDay(); - writeFile.write("Daily Calories Intake: " + System.lineSeparator()); - for (Date date : totalCalories.keySet()) { - String formattedDate = DateFormatter.dateToString(date); - writeFile.write(SPACE + formattedDate + ": " + totalCalories.get(date) - + System.lineSeparator()); - } - writeFile.close(); - } catch (IOException e) { - System.out.println("Error writing to file."); - } - }*//* - -} -*/ diff --git a/src/main/java/seedu/storage/writefile/FoodCaloriesWriteFile.java b/src/main/java/seedu/storage/writefile/FoodCaloriesWriteFile.java deleted file mode 100644 index e7325b749c..0000000000 --- a/src/main/java/seedu/storage/writefile/FoodCaloriesWriteFile.java +++ /dev/null @@ -1,28 +0,0 @@ -package seedu.storage.writefile; - -import seedu.calorietracker.FoodList; - -import java.io.File; -import java.io.FileWriter; -import java.io.IOException; -import java.util.HashMap; - -public class FoodCaloriesWriteFile { - private static final String SPACE = " "; - - public static void writeFoodCaloriesToFile(String filePath, FoodList foodList) { - try { - File savedFile = new File(filePath); - FileWriter writeFile = new FileWriter(savedFile); - HashMap foodCalories = foodList.getFoodCalories(); - writeFile.write("Food Calories Look Up Table: " + System.lineSeparator()); - for (String foodName : foodCalories.keySet()) { - writeFile.write(SPACE + foodName + ": " + foodCalories.get(foodName) - + " kcal" + System.lineSeparator()); - } - writeFile.close(); - } catch (IOException e) { - System.out.println("Error writing to file."); - } - } -} diff --git a/src/main/java/seedu/storage/writefile/WorkoutWriteFile.java b/src/main/java/seedu/storage/writefile/WorkoutWriteFile.java deleted file mode 100644 index 46bc4a669e..0000000000 --- a/src/main/java/seedu/storage/writefile/WorkoutWriteFile.java +++ /dev/null @@ -1,56 +0,0 @@ -package seedu.storage.writefile; - - -import seedu.parser.DateFormatter; -import seedu.workout.Day; -import seedu.workout.Exercise; -import seedu.workout.Workout; -import seedu.workout.WorkoutList; - -import java.io.File; -import java.io.FileWriter; -import java.io.IOException; -import java.util.Date; -import java.util.HashMap; - -public class WorkoutWriteFile { - private static final String SPACE = " "; - - - private static HashMap workouts; - - private static HashMap dailyWorkout; - - - public static void writeWorkoutToFile(String filePath, WorkoutList workoutList) { - - try { - File savedFile = new File(filePath); - FileWriter writeFile = new FileWriter(savedFile); - workouts = workoutList.getWorkouts(); - for (Date date : workouts.keySet()) { - writeFile.write("Date : "); - String formattedDate = DateFormatter.dateToString(date); - writeFile.write(formattedDate + System.lineSeparator()); - Day workoutsOnOneDay = workouts.get(date); - dailyWorkout = workoutsOnOneDay.getWorkoutsByDate(); - for (String workoutName : dailyWorkout.keySet()) { - writeFile.write("Workout : " + workoutName + System.lineSeparator()); - int index = 1; - writeFile.write("Exercise: " + System.lineSeparator()); - // if(dailyWorkout.get(workoutName)) { - for (Exercise exercises : dailyWorkout.get(workoutName).getExercises()) { - String exerciseStr = String.format("%s. Name: %s, Weight: %s, Reps: %s", index, - exercises.getName(), exercises.getWeight(), exercises.getRepsPerSet()); - writeFile.write(SPACE + exerciseStr + System.lineSeparator()); - index++; - // } - } - } - } - writeFile.close(); - } catch (IOException e) { - throw new RuntimeException(e); - } - } -} diff --git a/src/main/java/seedu/ui/Ui.java b/src/main/java/seedu/ui/Ui.java index 495ac62fd9..7285968e40 100644 --- a/src/main/java/seedu/ui/Ui.java +++ b/src/main/java/seedu/ui/Ui.java @@ -1,12 +1,14 @@ package seedu.ui; +import seedu.commands.Command; +import seedu.exceptions.InvalidArgumentException; + import java.util.Scanner; public class Ui { - - private static final String WELCOME_MESSAGE = "Let's get moving!\n" + "\"/day
\" to start " + - "your workouts recording"; + private static final String WELCOME_MESSAGE = "Let's get moving!\n" + "\"/wstart DD/MM/YY\" to start " + + "your workout!"; private static final String LOGO_MESSAGE = " _______ __ .___________.________ \n" + "| ____|| | | | / \n" + "| |__ | | `---| |----`---/ / \n" + @@ -28,7 +30,7 @@ public class Ui { + "- [Display the amount of reps and set on a specific exercise /count]" + System.lineSeparator() + "- [Delete a workout: /delete]" + System.lineSeparator() + "- [Exit app: /exit]" + System.lineSeparator() + LINE; - + private static final String READ_FILE_ERROR_MESSAGE = "Error reading file: "; public static void showGreeting() { System.out.println(WELCOME_MESSAGE); } @@ -45,8 +47,8 @@ public static void showOneLine(){ } - public static String showSeparator(){ - return (LINE_SEPARATOR); + public static String line() { + return LINE; } public static String getUserInput() { @@ -64,5 +66,43 @@ public static String getHelpMessage() { return HELP_MESSAGE; } + public static void showErrorMessage(String errorMessage) { + System.out.println(errorMessage); + } + + public static void showCommandResult(Command command) throws InvalidArgumentException { + System.out.println(command.execute()); + } + + public static void showReadFileErrorMessage(String fileName) { + System.out.println(READ_FILE_ERROR_MESSAGE + fileName); + } + + public static void showNoSavedDataMessage(String fileName) { + System.out.println("No saved data found for " + fileName + '.'); + System.out.println("Creating new file for " + fileName + "......."); + } + + public static void showCreatedNewFileMessage(String fileName) { + System.out.println("New file for " + fileName + " created."); + } + public static void showNewFileNotCreatedMessage(String fileName) { + System.out.println("Error creating new file for " + fileName + "."); + System.out.println("User data may not be saved!"); + } + + public static void showCreateDirectoryMessage() { + System.out.println("Creating directories....."); + } + + public static void showDirectoryNotCreatedMessage() { + System.out.println("Unable to create directories. User data may not be saved."); + } + public static void showSaveUserDataErrorMessage() { + System.out.println("Error saving user data."); + } + public static void showSuccessfulLoadDataMessage(String fileName) { + System.out.println("Successfully loaded " + fileName + " data."); + } } diff --git a/src/main/java/seedu/workout/Day.java b/src/main/java/seedu/workout/Day.java deleted file mode 100644 index 4e8a6deb27..0000000000 --- a/src/main/java/seedu/workout/Day.java +++ /dev/null @@ -1,61 +0,0 @@ -package seedu.workout; - -import java.util.Date; -import java.util.HashMap; - -//@@ author ZIZI-czh -public class Day { - private Date date; - private HashMap workoutsByDate; - private Workout workout = new Workout(); - private String workoutName; - - - - public Day(Date date) { - this.date = date; - this.workoutsByDate = new HashMap<>(); - //workout = new Workout(); - } - - //@@ author ZIZI-czh - public Day() { - this.workoutsByDate = new HashMap<>(); - } - - //@@ author ZIZI-czh - public void addWorkout(String workoutName, Workout workout) { - workoutsByDate.put(workoutName, workout); - setWorkout(workout); - setWorkoutsByDate(workoutsByDate); - } - - public String getWorkoutName() { - return workoutName; - } - - public void setWorkoutName(String workoutName) { - this.workoutName = workoutName; - } - - //@@ author ZIZI-czh - public Workout getWorkout() { - return this.workout; - } - - - //@@ author ZIZI-czh - public void setWorkout(Workout workout) { - this.workout = workout; - } - - //@@ author ZIZI-czh - public HashMap getWorkoutsByDate() { - return this.workoutsByDate; - } - - //@@ author ZIZI-czh - public void setWorkoutsByDate(HashMap workoutsByDate) { - this.workoutsByDate = workoutsByDate; - } -} diff --git a/src/main/java/seedu/workout/Exercise.java b/src/main/java/seedu/workout/Exercise.java index d38af38c17..d58d0d2382 100644 --- a/src/main/java/seedu/workout/Exercise.java +++ b/src/main/java/seedu/workout/Exercise.java @@ -1,18 +1,37 @@ package seedu.workout; - +//@@author calebcjl +/** + * Represents an exercise. It stores the name, weight used and the number of sets and reps. + */ public class Exercise { - private String name; - private String weight; - private String repsPerSet; + private final String name; + private final String weight; + private final String repsPerSet; - //@@ author ZIZI-czh - public Exercise(String name, String weight, String repsPerSet){ + public Exercise(String name, String weight, String repsPerSet) { this.name = name; this.weight = weight; this.repsPerSet = repsPerSet; } + public String getName() { + return name; + } + + public String getWeight() { + return weight; + } + + public String getRepsPerSet() { + return repsPerSet; + } + + @Override + public String toString() { + return name + ' ' + weight + ' ' + repsPerSet; + } + //@@ author guillaume-grn public int getSetsCount() { String repsPerSet = this.repsPerSet; @@ -36,24 +55,4 @@ public int getRepsCount() { return totalReps; } - public String getName() { - return name; - } - - public String getWeight() { - return weight; - } - - public String getRepsPerSet() { - return repsPerSet; - } - - public void setRepsPerSet(String repsPerSet) { - this.repsPerSet = repsPerSet; - } - - @Override - public String toString() { - return name + ' ' + weight + ' ' + repsPerSet; - } } diff --git a/src/main/java/seedu/workout/Workout.java b/src/main/java/seedu/workout/Workout.java index cc158ddbba..3492441d87 100644 --- a/src/main/java/seedu/workout/Workout.java +++ b/src/main/java/seedu/workout/Workout.java @@ -1,59 +1,63 @@ package seedu.workout; +import seedu.parser.DateFormatter; +import seedu.ui.Ui; + import java.util.ArrayList; import java.util.Date; +//@@author calebcjl +/** + * Represents a workout. It stores the date, name and list of exercises of the workout. + */ public class Workout { - private static final int EMPTY = 0; - private static final String EMPTY_EXERCISE_LIST_MESSAGE = "No exercise in workout."; - private static final String LINE_SEPARATOR = "----------------------------------"; - private static final String EXERCISE_LIST_HEADER = - "Here are the list of exercises in your workout:" + System.lineSeparator(); private Date date; private String workoutName; - private ArrayList exercises; - - private boolean hasExercises = false; + private final ArrayList exercises; public Workout() { exercises = new ArrayList<>(); } - //@@ author ZIZI-czh - public Workout(String workoutName) { + + public Workout(Date date, String workoutName) { + this.date = date; this.workoutName = workoutName; exercises = new ArrayList<>(); } - - //@@ author ZIZI-czh public String getWorkoutName() { return workoutName; } - //@@ author ZIZI-czh - - //@@ author ZIZI-czh - public void addExercise(Exercise exercise) { - exercises.add(exercise); - // hasExercises = true; + public Date getDate() { + return date; } - //@@ author ZIZI-czh public ArrayList getExercises() { return exercises; } + public void addExercise(Exercise exercise) { + exercises.add(exercise); + } - //@@ author ZIZI-czh + /** + * Returns the list of exercises in the workout. + * + * @return List of exercises. + */ @Override public String toString() { - StringBuilder exercisesList = new StringBuilder(); - exercisesList.append("Workout: ").append(workoutName).append(System.lineSeparator()); + String header = "Here are the list of exercises for " + getWorkoutName() + " on " + + DateFormatter.dateToString(date) + '.' + System.lineSeparator(); + StringBuilder exercisesList = new StringBuilder(header); + int counter = 1; for (Exercise exercise : exercises) { - exercisesList.append(exercise.toString()).append(System.lineSeparator()); + exercisesList.append(counter).append(". ").append(exercise.toString()).append(System.lineSeparator()); + counter += 1; } - return exercisesList.toString(); + return exercisesList.append(Ui.line()).toString(); } } diff --git a/src/main/java/seedu/workout/WorkoutList.java b/src/main/java/seedu/workout/WorkoutList.java index 051a01792c..8472205ab6 100644 --- a/src/main/java/seedu/workout/WorkoutList.java +++ b/src/main/java/seedu/workout/WorkoutList.java @@ -1,8 +1,9 @@ package seedu.workout; - +import seedu.exceptions.InvalidArgumentException; import seedu.parser.DateFormatter; +import seedu.storage.Storage; import seedu.ui.Ui; import java.util.ArrayList; @@ -10,158 +11,170 @@ import java.util.Date; import java.util.HashMap; - -//@@ author ZIZI-czh +//@@author calebcjl public class WorkoutList { - public static final String EMPTY_WORKOUT = "There are no workouts reported during this week !"; - public static final String INFORMATION = "Information of exercises for the week of "; - public HashMap workout; - private HashMap workouts; - private Day day = new Day(); - private Workout dailyWorkout = new Workout(); - private Date date; + public static final int NO_CURRENT_WORKOUT = -1; + private final ArrayList workouts; + private int currentWorkoutIndex; - - //@@ author ZIZI-czh public WorkoutList() { - - workout = new HashMap<>(); - workouts = new HashMap<>(); - } - - //@@ author ZIZI-czh - public HashMap getWorkout() { - return workout; - } - - //@@ author ZIZI-czh - public Day getSingleWorkout() { - return day; + workouts = new ArrayList<>(); + currentWorkoutIndex = NO_CURRENT_WORKOUT; } - //@@ author ZIZI-czh - public void setDay(Day day) { - this.day = day; - } - //@@ author ZIZI-czh - public HashMap getWorkouts() { - return workouts; - } - - //@@ author ZIZI-czh - public void addWorkoutToList(Date date, Day day) { - workouts.put(date, day); - setDay(day); - setDate(date); + public WorkoutList(Storage storage) { + workouts = storage.readWorkoutListFile(); + currentWorkoutIndex = NO_CURRENT_WORKOUT; } - public Date getDate() { - return date; + public int getCurrentWorkoutIndex() { + return currentWorkoutIndex; } - public void setDate(Date date) { - this.date = date; + public void setCurrentWorkoutIndex(int currentWorkoutIndex) { + this.currentWorkoutIndex = currentWorkoutIndex; } - //@@ author ZIZI-czh - public Day getDay() { - return day; - } - - //@@ author ZIZI-czh - public void setWorkouts(HashMap workouts) { - this.workouts = workouts; + public ArrayList getWorkouts() { + return workouts; } - /*public void addExerciseToWorkout(Date currentDate, String currentWorkoutName, Exercise exercise) { - dailyWorkout.addExercise(exercise); - day.addWorkout(currentWorkoutName, dailyWorkout); - addWorkoutToList(currentDate, day); - }*/ - //@@ author guillaume-grn //@@ author ZIZI-czh - public ArrayList countSetsRepsPreparation(Date dayInSpecificWeekDate) { - - HashMap workoutsInSpecificWeek = getWorkoutsInSpecificWeek(dayInSpecificWeekDate); - Day workoutForDay = workoutsInSpecificWeek.get(dayInSpecificWeekDate); - ArrayList distinctExercisesList = new ArrayList<>(); - HashMap workoutsForSpecificDay = workoutForDay.getWorkoutsByDate(); - - for (Workout workout1 : workoutsForSpecificDay.values()) { - for (Exercise exercise : workout1.getExercises()) { - boolean isExistingExercise = false; - - for (Exercise distinctExercise : distinctExercisesList) { - if (exercise.getName().equals(distinctExercise.getName())) { - distinctExercise.setRepsPerSet(exercise.getRepsPerSet()); - isExistingExercise = true; - break; - } - } - if (!isExistingExercise) { - Exercise distinctExercise = new Exercise(exercise.getName(), exercise.getWeight(), - exercise.getRepsPerSet()); - distinctExercisesList.add(distinctExercise); + public String countSetsReps(Date dateInSpecificWeek) { + ArrayList workoutsInSpecificWeek = getWorkoutsInSpecificWeek(dateInSpecificWeek); + HashMap> distinctExercises = new HashMap<>(); + for (Workout workout : workoutsInSpecificWeek) { + for (Exercise exercise : workout.getExercises()) { + ArrayList setsAndReps = new ArrayList<>(); + int sets = exercise.getSetsCount(); + int reps = exercise.getRepsCount(); + if (distinctExercises.containsKey(exercise.getName())) { + sets += distinctExercises.get(exercise.getName()).get(0); + reps += distinctExercises.get(exercise.getName()).get(1); } + setsAndReps.add(sets); + setsAndReps.add(reps); + distinctExercises.put(exercise.getName(), setsAndReps); } } - - return distinctExercisesList; + return displayCountSetsReps(distinctExercises, dateInSpecificWeek); } - - //@@ author guillaume-grn - //@@ author ZIZI-czh - public String countSetsReps(Date dayInSpecificWeekDate) { - ArrayList distinctExercisesList = countSetsRepsPreparation(dayInSpecificWeekDate); - return displayCountSetsReps(distinctExercisesList, dayInSpecificWeekDate); - } - //@@ author ZIZI-czh - public static String displayCountSetsReps(ArrayList distinctExercisesList, Date dayInSpecificWeekDate) { - StringBuilder output = new StringBuilder(); - if(distinctExercisesList == null){ - return null; - } - if (distinctExercisesList.isEmpty()) { - output.append(EMPTY_WORKOUT); - return output.toString(); + public static String displayCountSetsReps(HashMap> distinctExercises, + Date dateInSpecificWeek) { + if (distinctExercises.isEmpty()) { + return EMPTY_WORKOUT; } + StringBuilder output = new StringBuilder(); output.append(INFORMATION) - .append(DateFormatter.dateToString(dayInSpecificWeekDate)) + .append(DateFormatter.dateToString(dateInSpecificWeek)) .append(System.lineSeparator()); - //Ui.showSeparator(); - for (Exercise exercise : distinctExercisesList) { + for (String exerciseName : distinctExercises.keySet()) { output.append("Name: ") - .append(exercise.getName()) + .append(exerciseName) .append(", sets: ") - .append(exercise.getSetsCount()) + .append(distinctExercises.get(exerciseName).get(0)) .append(", rps:") - .append(exercise.getRepsCount()) + .append(distinctExercises.get(exerciseName).get(1)) .append(System.lineSeparator()); } - return output + Ui.showSeparator(); + return output + Ui.line(); } //@@ author guillaume-grn //@@ author ZIZI-czh - public HashMap getWorkoutsInSpecificWeek(Date dayInSpecificWeekDate) { - HashMap workoutsInSpecificWeek = new HashMap<>(); + private ArrayList getWorkoutsInSpecificWeek(Date dayInSpecificWeekDate) { + ArrayList workoutsInSpecificWeek = new ArrayList<>(); Calendar calendar = Calendar.getInstance(); calendar.setTime(dayInSpecificWeekDate); calendar.set(Calendar.DAY_OF_WEEK, calendar.getFirstDayOfWeek()); Date startOfWeekDate = calendar.getTime(); calendar.add(Calendar.DAY_OF_WEEK, 6); Date endOfWeekDate = calendar.getTime(); - for (Date workoutDate : workouts.keySet()) { - if (workoutDate.compareTo(startOfWeekDate) >= 0 && workoutDate.compareTo(endOfWeekDate) <= 0) { - workoutsInSpecificWeek.put(workoutDate, workouts.get(workoutDate)); + for (Workout workout : workouts) { + if (workout.getDate().compareTo(startOfWeekDate) >= 0 && workout.getDate().compareTo(endOfWeekDate) <= 0 ) { + workoutsInSpecificWeek.add(workout); } } return workoutsInSpecificWeek; } + + //@@author calebcjl + /** + * Start a new workout and adds it to the workout list. + * + * @param date Date of workout. + * @param workoutName Name of workout. + * @throws InvalidArgumentException If there is a workout with the same date and name already in the list. + */ + public void startWorkout(Date date, String workoutName) throws InvalidArgumentException { + Workout workout = new Workout(date, workoutName); + if (isInlist(workout)) { + throw new InvalidArgumentException("Workout already exist!"); + } + workouts.add(workout); + currentWorkoutIndex = workouts.size() - 1; + } + + //@@author calebcjl + /** + * Checks if a workout is in the workout list. + * + * @param toCheck Workout to check. + * @return True if workout found in list. Returns false otherwise. + */ + private boolean isInlist(Workout toCheck) { + for (Workout workout: workouts) { + if (workout.getDate().equals(toCheck.getDate()) + && workout.getWorkoutName().equals(toCheck.getWorkoutName())) { + return true; + } + } + return false; + } + + //@@author calebcjl + /** + * Checks if workout list is empty. + * + * @return True if empty. Returns false otherwise. + */ + public boolean isEmptyList() { + return workouts.isEmpty(); + } + + //@@author calebcjl + /** + * Returns workout at a specified index of the workout list. + * + * @param index Index of Workout. + * @return Returns Workout at workoutIndex. + */ + public Workout getWorkout(int index) { + return workouts.get(index); + } + + //@@author calebcjl + /** + * Removes workout at a specified index of the workout list. + * + * @param index Index of workout. + */ + public void deleteWorkout(int index) { + workouts.remove(index); + } + + //@@author calebcjl + /** + * Returns current workout. + * @return Workout at current workout index. + */ + public Workout getCurrentWorkout() { + return workouts.get(currentWorkoutIndex); + } } diff --git a/src/test/java/seedu/duke/DukeTest.java b/src/test/java/seedu/DukeTest.java similarity index 87% rename from src/test/java/seedu/duke/DukeTest.java rename to src/test/java/seedu/DukeTest.java index 0cc2e2da3f..1cc7276c9e 100644 --- a/src/test/java/seedu/duke/DukeTest.java +++ b/src/test/java/seedu/DukeTest.java @@ -1,13 +1,13 @@ -package seedu.duke; - - -import org.junit.jupiter.api.Test; - -import static org.junit.jupiter.api.Assertions.assertTrue; - -class DukeTest { - @Test - public void sampleTest() { - assertTrue(true); - } -} +package seedu; + + +import org.junit.jupiter.api.Test; + +import static org.junit.jupiter.api.Assertions.assertTrue; + +class DukeTest { + @Test + public void sampleTest() { + assertTrue(true); + } +} diff --git a/src/test/java/seedu/parser/ParserTest.java b/src/test/java/seedu/parser/ParserTest.java index ed3861512d..714e11916a 100644 --- a/src/test/java/seedu/parser/ParserTest.java +++ b/src/test/java/seedu/parser/ParserTest.java @@ -4,7 +4,7 @@ import org.junit.jupiter.api.Test; import seedu.commands.Command; import seedu.commands.ExitCommand; -import seedu.commands.IncorrectSyntaxCommand; +import seedu.commands.errorcommands.IncorrectSyntaxCommand; import seedu.exceptions.InvalidSyntaxException; import static org.junit.jupiter.api.Assertions.assertTrue; diff --git a/src/test/java/seedu/workout/WorkoutViewTest.java b/src/test/java/seedu/workout/WorkoutViewTest.java index 47c7356f2b..69dc412ed9 100644 --- a/src/test/java/seedu/workout/WorkoutViewTest.java +++ b/src/test/java/seedu/workout/WorkoutViewTest.java @@ -1,7 +1,5 @@ package seedu.workout; -import org.junit.jupiter.api.BeforeEach; -import org.junit.jupiter.api.Test; import seedu.commands.workoutcommands.ViewWorkoutCommand; import seedu.parser.DateFormatter; import seedu.ui.Ui; @@ -50,7 +48,7 @@ public void testExecute_workoutFound_returnsWorkoutString() throws ParseExceptio + System.lineSeparator() + "2. Name: " + exercise2.getName() + ", weight: " + exercise2.getWeight() + ", rps: " + exercise2.getRepsPerSet() - + System.lineSeparator() + Ui.showSeparator() + System.lineSeparator(); + + System.lineSeparator() + Ui.lineSeparator() + System.lineSeparator(); assertEquals(expectedOutput, result); } //@@ author ZIZI-czh From aaac968a170a055e0afcb826ba73cc322376be99 Mon Sep 17 00:00:00 2001 From: calebcjl_ Date: Sat, 8 Apr 2023 09:34:46 +0800 Subject: [PATCH 115/152] no message --- .gitignore | 1 + 1 file changed, 1 insertion(+) diff --git a/.gitignore b/.gitignore index 9335decbd3..15d7f09c42 100644 --- a/.gitignore +++ b/.gitignore @@ -20,3 +20,4 @@ text-ui-test/EXPECTED.TXT text-ui-test/input.txt text-ui-test/runtest.sh text-ui-test/runtest.bat +data/ From 42023182a8021be803ff3b13dbe8e34e96e27460 Mon Sep 17 00:00:00 2001 From: calebcjl_ Date: Sat, 8 Apr 2023 12:52:44 +0800 Subject: [PATCH 116/152] Fix Checkstyle Main errors --- src/main/java/seedu/commands/Command.java | 1 - src/main/java/seedu/parser/CalorieParser.java | 1 - src/main/java/seedu/parser/Parser.java | 4 ++-- src/main/java/seedu/parser/WorkoutParser.java | 3 +-- .../workoutcommands/StartDayCommandTest.java | 12 ++++++------ src/test/java/seedu/workout/WorkoutTest.java | 1 + 6 files changed, 10 insertions(+), 12 deletions(-) diff --git a/src/main/java/seedu/commands/Command.java b/src/main/java/seedu/commands/Command.java index 0d1ea5cda2..331d6f8e23 100644 --- a/src/main/java/seedu/commands/Command.java +++ b/src/main/java/seedu/commands/Command.java @@ -3,7 +3,6 @@ import seedu.calorietracker.CalorieTracker; import seedu.calorietracker.FoodDictionary; import seedu.exceptions.InvalidArgumentException; - import seedu.exceptions.InvalidSyntaxException; import seedu.workout.WorkoutList; diff --git a/src/main/java/seedu/parser/CalorieParser.java b/src/main/java/seedu/parser/CalorieParser.java index ff35660df5..29e55788fb 100644 --- a/src/main/java/seedu/parser/CalorieParser.java +++ b/src/main/java/seedu/parser/CalorieParser.java @@ -6,7 +6,6 @@ import seedu.exceptions.InvalidArgumentException; import seedu.exceptions.InvalidSyntaxException; -import java.text.ParseException; import java.util.Date; import java.util.regex.Pattern; diff --git a/src/main/java/seedu/parser/Parser.java b/src/main/java/seedu/parser/Parser.java index fba598f62f..4c71471a25 100644 --- a/src/main/java/seedu/parser/Parser.java +++ b/src/main/java/seedu/parser/Parser.java @@ -2,10 +2,10 @@ import seedu.commands.Command; import seedu.commands.ExitCommand; -import seedu.commands.errorcommands.InvalidCommand; -import seedu.exceptions.InvalidArgumentException; import seedu.commands.caloriecommands.HelpCaloriesCommand; +import seedu.commands.errorcommands.InvalidCommand; import seedu.commands.workoutcommands.HelpWorkoutCommand; +import seedu.exceptions.InvalidArgumentException; import seedu.exceptions.InvalidSyntaxException; import java.text.ParseException; diff --git a/src/main/java/seedu/parser/WorkoutParser.java b/src/main/java/seedu/parser/WorkoutParser.java index a11aada73b..d0b31fa8b2 100644 --- a/src/main/java/seedu/parser/WorkoutParser.java +++ b/src/main/java/seedu/parser/WorkoutParser.java @@ -1,8 +1,8 @@ package seedu.parser; import seedu.commands.Command; -import seedu.commands.workoutcommands.CountSetsRepsCommand; import seedu.commands.workoutcommands.AddExerciseCommand; +import seedu.commands.workoutcommands.CountSetsRepsCommand; import seedu.commands.workoutcommands.DeleteWorkoutCommand; import seedu.commands.workoutcommands.EndWorkoutCommand; import seedu.commands.workoutcommands.ListWorkoutCommand; @@ -12,7 +12,6 @@ import seedu.exceptions.InvalidSyntaxException; import seedu.workout.Exercise; -import java.text.ParseException; import java.util.Date; import java.util.regex.Matcher; import java.util.regex.Pattern; diff --git a/src/test/java/seedu/commands/workoutcommands/StartDayCommandTest.java b/src/test/java/seedu/commands/workoutcommands/StartDayCommandTest.java index 8b0ee70c34..13964c3c76 100644 --- a/src/test/java/seedu/commands/workoutcommands/StartDayCommandTest.java +++ b/src/test/java/seedu/commands/workoutcommands/StartDayCommandTest.java @@ -1,16 +1,16 @@ package seedu.commands.workoutcommands; -import static org.junit.jupiter.api.Assertions.assertEquals; -import static org.junit.jupiter.api.Assertions.assertTrue; -import java.text.ParseException; -import java.util.Date; -import java.util.HashMap; - import org.junit.jupiter.api.Test; import seedu.parser.DateFormatter; import seedu.workout.Day; import seedu.workout.WorkoutList; +import java.text.ParseException; +import java.util.Date; +import java.util.HashMap; + +import static org.junit.jupiter.api.Assertions.assertEquals; + class StartDayCommandTest { private WorkoutList workoutList; diff --git a/src/test/java/seedu/workout/WorkoutTest.java b/src/test/java/seedu/workout/WorkoutTest.java index a1f03b523b..40c67faa8c 100644 --- a/src/test/java/seedu/workout/WorkoutTest.java +++ b/src/test/java/seedu/workout/WorkoutTest.java @@ -3,6 +3,7 @@ import org.junit.jupiter.api.Assertions; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; + import java.util.ArrayList; //@@ author ZIZI-czh From 3e15b38e3df29487d6f6e0b7d5a5dd951d82c571 Mon Sep 17 00:00:00 2001 From: calebcjl_ Date: Sat, 8 Apr 2023 14:29:00 +0800 Subject: [PATCH 117/152] Change start workout command to start workout only on current date --- .../workoutcommands/StartWorkoutCommand.java | 2 +- src/main/java/seedu/parser/WorkoutParser.java | 14 ++++---------- 2 files changed, 5 insertions(+), 11 deletions(-) diff --git a/src/main/java/seedu/commands/workoutcommands/StartWorkoutCommand.java b/src/main/java/seedu/commands/workoutcommands/StartWorkoutCommand.java index 2a5cf7b766..cca6687d1e 100644 --- a/src/main/java/seedu/commands/workoutcommands/StartWorkoutCommand.java +++ b/src/main/java/seedu/commands/workoutcommands/StartWorkoutCommand.java @@ -10,7 +10,7 @@ //@@author calebcjl /** - * Represents command to start a new workout. + * Represents command to start a new workout on the current date. */ public class StartWorkoutCommand extends Command { private static final String ONGOING_WORKOUT_MESSAGE = "There is already an ongoing workout!"; diff --git a/src/main/java/seedu/parser/WorkoutParser.java b/src/main/java/seedu/parser/WorkoutParser.java index d0b31fa8b2..7a9f749b21 100644 --- a/src/main/java/seedu/parser/WorkoutParser.java +++ b/src/main/java/seedu/parser/WorkoutParser.java @@ -13,6 +13,7 @@ import seedu.workout.Exercise; import java.util.Date; +import java.util.Locale; import java.util.regex.Matcher; import java.util.regex.Pattern; @@ -168,21 +169,14 @@ private static String parseRepsPerSet(String repsPerSet) throws InvalidArgumentE //@@author ZIZI-czh /** * This method is used to check the "/start" command - * If the date input has incorrect format, it will notify the users * Otherwise, StartCommand will be executed * * @param arguments Date input * @return Incorrect command if the input date is incorrect, otherwise, initialize the StartCommand */ - static Command parseStartWorkoutCommand(String arguments) throws InvalidSyntaxException, - InvalidArgumentException { - String[] startDetails = arguments.trim().split("\\s+", START_WORKOUT_ARGUMENT_COUNT); - if (startDetails.length != START_WORKOUT_ARGUMENT_COUNT) { - throw new InvalidSyntaxException("/wstart command"); - } - Date date = parseDate(startDetails[DATE_INDEX]); - String workoutName = parseWorkoutName(startDetails[WORKOUT_NAME_INDEX]); - + static Command parseStartWorkoutCommand(String arguments) throws InvalidArgumentException { + Date date = new Date(); + String workoutName = parseWorkoutName(arguments); return new StartWorkoutCommand(date, workoutName); } From 7f106c9d74e63984c462f5d2aa7a727b83b8b9b5 Mon Sep 17 00:00:00 2001 From: calebcjl_ Date: Sat, 8 Apr 2023 15:22:51 +0800 Subject: [PATCH 118/152] Add list feature for calorie tracker --- data/foodlist.txt | 0 .../seedu/calorietracker/CalorieTracker.java | 18 +++++++---- src/main/java/seedu/calorietracker/Food.java | 5 +-- .../seedu/calorietracker/FoodDictionary.java | 9 +----- .../java/seedu/calorietracker/FoodList.java | 10 +++++- src/main/java/seedu/commands/ExitCommand.java | 3 +- .../caloriecommands/ListCaloriesCommand.java | 32 ++++++++++++++++++- .../errorcommands/IncorrectSyntaxCommand.java | 3 +- .../errorcommands/InvalidCommand.java | 5 ++- src/main/java/seedu/parser/CalorieParser.java | 20 +++++++++++- src/main/java/seedu/parser/Parser.java | 6 ++-- src/main/java/seedu/parser/WorkoutParser.java | 18 +++++------ .../seedu/storage/CalorieTrackerStorage.java | 2 +- .../seedu/storage/FoodDictionaryStorage.java | 2 +- 14 files changed, 94 insertions(+), 39 deletions(-) delete mode 100644 data/foodlist.txt diff --git a/data/foodlist.txt b/data/foodlist.txt deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/src/main/java/seedu/calorietracker/CalorieTracker.java b/src/main/java/seedu/calorietracker/CalorieTracker.java index fc9689bd1b..9b0ea1ee5c 100644 --- a/src/main/java/seedu/calorietracker/CalorieTracker.java +++ b/src/main/java/seedu/calorietracker/CalorieTracker.java @@ -15,13 +15,8 @@ * Represents a calorie tracker. */ public class CalorieTracker { - private HashMap dailyFoodConsumption; - private FoodDictionary foodDictionary; - - public CalorieTracker() { - dailyFoodConsumption = new HashMap<>(); - foodDictionary = new FoodDictionary(); - } + private final HashMap dailyFoodConsumption; + private final FoodDictionary foodDictionary; public CalorieTracker(Storage storage, FoodDictionary foodDictionary) { dailyFoodConsumption = storage.readCalorieTrackerFile(); @@ -40,6 +35,15 @@ public HashMap getDailyFoodConsumption() { return dailyFoodConsumption; } + /** + * Add calorie consumption to CalorieTracker. + * + * @param date Date of consumption. + * @param foodName Name of food. + * @param foodCalories Calories of food. + * @return Output string. + * @throws InvalidSyntaxException If invalid syntax. + */ public String addCalories(Date date, String foodName, int foodCalories) throws InvalidSyntaxException { FoodList foodList = getFoodList(date); Food foodToAdd; diff --git a/src/main/java/seedu/calorietracker/Food.java b/src/main/java/seedu/calorietracker/Food.java index 410b3f8662..53ee73901d 100644 --- a/src/main/java/seedu/calorietracker/Food.java +++ b/src/main/java/seedu/calorietracker/Food.java @@ -1,11 +1,12 @@ package seedu.calorietracker; +//@@author calebcjl /** * Represents food consumed. */ public class Food { - private String foodName; - private int calories; + private final String foodName; + private final int calories; public Food(String foodName, int calories) { this.foodName = foodName; diff --git a/src/main/java/seedu/calorietracker/FoodDictionary.java b/src/main/java/seedu/calorietracker/FoodDictionary.java index 005f9cee6c..0e15a8d47f 100644 --- a/src/main/java/seedu/calorietracker/FoodDictionary.java +++ b/src/main/java/seedu/calorietracker/FoodDictionary.java @@ -4,20 +4,13 @@ import java.util.HashMap; +//@@author calebcjl /** * Represents a dictionary that maps food to its calorie count. */ public class FoodDictionary { private final HashMap foodCalories; - public FoodDictionary() { - foodCalories = new HashMap<>(); - } - - public FoodDictionary(HashMap foodCalories) { - this.foodCalories = foodCalories; - } - public FoodDictionary(Storage storage) { this.foodCalories = storage.readFoodDictionaryFile(); } diff --git a/src/main/java/seedu/calorietracker/FoodList.java b/src/main/java/seedu/calorietracker/FoodList.java index 49bed9dc38..6fa703dfad 100644 --- a/src/main/java/seedu/calorietracker/FoodList.java +++ b/src/main/java/seedu/calorietracker/FoodList.java @@ -2,21 +2,29 @@ import java.util.ArrayList; +//@@author calebcjl /** * Represents a list of food eaten in a single day. */ public class FoodList { - ArrayList foods; + private final ArrayList foods; + private int totalCalories; public FoodList() { foods = new ArrayList<>(); + totalCalories = 0; } public void addFood(Food food) { foods.add(food); + totalCalories += food.getCalories(); } public ArrayList getFoods() { return foods; } + + public int getTotalCalories() { + return totalCalories; + } } diff --git a/src/main/java/seedu/commands/ExitCommand.java b/src/main/java/seedu/commands/ExitCommand.java index 6cd3a27ca3..9c3cb8e9fe 100644 --- a/src/main/java/seedu/commands/ExitCommand.java +++ b/src/main/java/seedu/commands/ExitCommand.java @@ -1,9 +1,8 @@ package seedu.commands; -//@@author calebcjl - import seedu.ui.Ui; +//@@author calebcjl /** * Represents command to exit the program. */ diff --git a/src/main/java/seedu/commands/caloriecommands/ListCaloriesCommand.java b/src/main/java/seedu/commands/caloriecommands/ListCaloriesCommand.java index 08ce003120..17fa496fb8 100644 --- a/src/main/java/seedu/commands/caloriecommands/ListCaloriesCommand.java +++ b/src/main/java/seedu/commands/caloriecommands/ListCaloriesCommand.java @@ -1,4 +1,34 @@ package seedu.commands.caloriecommands; -public class ListCaloriesCommand { +import seedu.calorietracker.FoodList; +import seedu.commands.Command; +import seedu.parser.DateFormatter; +import seedu.ui.Ui; + +import java.util.Date; +import java.util.TreeMap; + +//@@author calebcjl +/** + * Represents list calories command. + */ +public class ListCaloriesCommand extends Command { + private static final String HEADER = + "Here is your list of daily calorie consumption: " + System.lineSeparator(); + public ListCaloriesCommand() { + } + + @Override + public String execute() { + TreeMap sortedMap = new TreeMap<>(calorieTracker.getDailyFoodConsumption()); + + StringBuilder stringBuilder = new StringBuilder(HEADER); + int counter = 1; + for (Date date: sortedMap.keySet()) { + stringBuilder.append(counter).append(". ").append(DateFormatter.dateToString(date)).append(": ") + .append(sortedMap.get(date).getTotalCalories()).append("kcal").append(System.lineSeparator()); + counter += 1; + } + return stringBuilder.append(Ui.line()).toString(); + } } diff --git a/src/main/java/seedu/commands/errorcommands/IncorrectSyntaxCommand.java b/src/main/java/seedu/commands/errorcommands/IncorrectSyntaxCommand.java index 46735a8e46..2f23b3376e 100644 --- a/src/main/java/seedu/commands/errorcommands/IncorrectSyntaxCommand.java +++ b/src/main/java/seedu/commands/errorcommands/IncorrectSyntaxCommand.java @@ -1,10 +1,9 @@ package seedu.commands.errorcommands; -//@@author calebcjl - import seedu.commands.Command; import seedu.ui.Ui; +//@@author calebcjl /** * Represents a command entered with incorrect syntax. */ diff --git a/src/main/java/seedu/commands/errorcommands/InvalidCommand.java b/src/main/java/seedu/commands/errorcommands/InvalidCommand.java index d88214a096..b263603447 100644 --- a/src/main/java/seedu/commands/errorcommands/InvalidCommand.java +++ b/src/main/java/seedu/commands/errorcommands/InvalidCommand.java @@ -1,9 +1,12 @@ package seedu.commands.errorcommands; - import seedu.commands.Command; import seedu.ui.Ui; +//@@author calebcjl +/** + * Represents an invalid command + */ public class InvalidCommand extends Command { private static final String INVALID_COMMAND_MESSAGE = " is not a valid command!"; private final String command; diff --git a/src/main/java/seedu/parser/CalorieParser.java b/src/main/java/seedu/parser/CalorieParser.java index 29e55788fb..a15899125f 100644 --- a/src/main/java/seedu/parser/CalorieParser.java +++ b/src/main/java/seedu/parser/CalorieParser.java @@ -2,6 +2,7 @@ import seedu.commands.Command; import seedu.commands.caloriecommands.AddCalorieCommand; +import seedu.commands.caloriecommands.ListCaloriesCommand; import seedu.commands.caloriecommands.ViewCaloriesCommand; import seedu.exceptions.InvalidArgumentException; import seedu.exceptions.InvalidSyntaxException; @@ -11,6 +12,7 @@ import static seedu.parser.Parser.parseDate; +//@@author calebcjl /** * Represents the parser for calorie commands. */ @@ -84,10 +86,26 @@ private static boolean isValidFoodName(String foodName){ return true; } - public static Command parseViewCalories(String arguments) + //@@author Richardtok + public static Command parseViewCaloriesCommand(String arguments) throws InvalidArgumentException, InvalidSyntaxException { Date date; date = parseDate(arguments.trim()); return new ViewCaloriesCommand(date); } + + //@@author calebcjl + /** + * Parse arguments for ListCaloriesCommand. + * + * @param arguments Argument for command + * @return ListCaloriesCommand + * @throws InvalidSyntaxException If invalid syntax. + */ + public static Command parseListCalorieCommand(String arguments) throws InvalidSyntaxException { + if (!arguments.isBlank()) { + throw new InvalidSyntaxException("/clist command"); + } + return new ListCaloriesCommand(); + } } diff --git a/src/main/java/seedu/parser/Parser.java b/src/main/java/seedu/parser/Parser.java index 4c71471a25..7e91a2ef35 100644 --- a/src/main/java/seedu/parser/Parser.java +++ b/src/main/java/seedu/parser/Parser.java @@ -50,12 +50,12 @@ public static Command processCommand(String userInput) throws InvalidSyntaxExcep case "/cadd": return CalorieParser.parseAddCalorieCommand(arguments); case "/clist": - //list the total daily calories consumption - break; + return CalorieParser.parseListCalorieCommand(arguments); case "/cview": - return CalorieParser.parseViewCalories(arguments); + return CalorieParser.parseViewCaloriesCommand(arguments); case "/cdelete": //delete calories for a specific day for one food follow /cdelete date food name + break; case "/chelp": return new HelpCaloriesCommand(); case "/exit": diff --git a/src/main/java/seedu/parser/WorkoutParser.java b/src/main/java/seedu/parser/WorkoutParser.java index 7a9f749b21..a4d6748d95 100644 --- a/src/main/java/seedu/parser/WorkoutParser.java +++ b/src/main/java/seedu/parser/WorkoutParser.java @@ -13,7 +13,6 @@ import seedu.workout.Exercise; import java.util.Date; -import java.util.Locale; import java.util.regex.Matcher; import java.util.regex.Pattern; @@ -28,9 +27,6 @@ public class WorkoutParser { private static final int WEIGHT_INDEX = 1; private static final int REPS_PER_SET_INDEX = 2; private static final int ADD_ARGUMENT_COUNT = 3; - private static final int START_WORKOUT_ARGUMENT_COUNT = 2; - private static final int DATE_INDEX = 0; - private static final int WORKOUT_NAME_INDEX = 1; //@@author calebcjl /** @@ -83,7 +79,7 @@ private static boolean isValidName(String name) { * * @param exerciseName Exercise name argument. * @return Exercise name. - * @throws InvalidSyntaxException If syntax is invalid. + * @throws InvalidArgumentException If syntax is invalid. */ private static String parseExerciseName(String exerciseName) throws InvalidArgumentException { exerciseName = exerciseName.trim(); @@ -116,6 +112,7 @@ private static boolean isValidWeight(String weight) { return true; } + //@@author calebcjl /** * Parses weight argument. * @@ -180,6 +177,12 @@ static Command parseStartWorkoutCommand(String arguments) throws InvalidArgument return new StartWorkoutCommand(date, workoutName); } + /** + * Parses workout name for StartWorkoutCommand + * @param workoutName Name of workout. + * @return Name of workout. + * @throws InvalidArgumentException If workout name is invalid. + */ static String parseWorkoutName(String workoutName) throws InvalidArgumentException { if (workoutName.isBlank()) { throw new InvalidArgumentException("workout name"); @@ -191,7 +194,7 @@ static String parseWorkoutName(String workoutName) throws InvalidArgumentExcepti * This method is used to check the "/delete" command * * @param arguments Date input - * @return Incorrect command if the input date is incorrect, otherwise, initialize the StartCommand + * @return DeleteWorkoutCommand. */ static Command parseDeleteWorkoutCommand(String arguments) throws InvalidSyntaxException { arguments = arguments.trim(); @@ -232,9 +235,6 @@ static Command parseSetsRepsCountCommand(String arguments) throws InvalidArgumen return new CountSetsRepsCommand(date); } - - - //@@author calebcjl /** * Parses arguments of end workout command. diff --git a/src/main/java/seedu/storage/CalorieTrackerStorage.java b/src/main/java/seedu/storage/CalorieTrackerStorage.java index e261c31dbc..7faa42079a 100644 --- a/src/main/java/seedu/storage/CalorieTrackerStorage.java +++ b/src/main/java/seedu/storage/CalorieTrackerStorage.java @@ -67,7 +67,7 @@ private void createCalorieTrackerFile() { } } - public void saveUserData(HashMap dailyFoodConsumption) throws IOException { + void saveUserData(HashMap dailyFoodConsumption) throws IOException { FileWriter fileWriter = new FileWriter(calorieTrackerFile); for (Date date : dailyFoodConsumption.keySet()) { fileWriter.write(DateFormatter.dateToString(date) + ','); diff --git a/src/main/java/seedu/storage/FoodDictionaryStorage.java b/src/main/java/seedu/storage/FoodDictionaryStorage.java index 4cd15e8321..a81dc6036d 100644 --- a/src/main/java/seedu/storage/FoodDictionaryStorage.java +++ b/src/main/java/seedu/storage/FoodDictionaryStorage.java @@ -55,7 +55,7 @@ private void createFoodDictionaryFile() { } } - public void saveUserData(HashMap foodCalories) throws IOException { + void saveUserData(HashMap foodCalories) throws IOException { FileWriter fileWriter = new FileWriter(foodDictionaryFile); for (String foodName : foodCalories.keySet()) { fileWriter.write(foodName + ':' + foodCalories.get(foodName) + System.lineSeparator()); From deb227676802f132b338bc72ccf64a10e51922f2 Mon Sep 17 00:00:00 2001 From: calebcjl_ Date: Sat, 8 Apr 2023 16:09:36 +0800 Subject: [PATCH 119/152] Add delete feature for calorie tracker --- .../seedu/calorietracker/CalorieTracker.java | 2 +- .../java/seedu/calorietracker/FoodList.java | 9 +++++ .../caloriecommands/DeleteCalorieCommand.java | 36 ++++++++++++++++++ .../caloriecommands/ListCaloriesCommand.java | 6 ++- src/main/java/seedu/parser/CalorieParser.java | 37 +++++++++++++++++-- src/main/java/seedu/parser/Parser.java | 4 +- 6 files changed, 86 insertions(+), 8 deletions(-) create mode 100644 src/main/java/seedu/commands/caloriecommands/DeleteCalorieCommand.java diff --git a/src/main/java/seedu/calorietracker/CalorieTracker.java b/src/main/java/seedu/calorietracker/CalorieTracker.java index 9b0ea1ee5c..41d9d6aab7 100644 --- a/src/main/java/seedu/calorietracker/CalorieTracker.java +++ b/src/main/java/seedu/calorietracker/CalorieTracker.java @@ -59,7 +59,7 @@ public String addCalories(Date date, String foodName, int foodCalories) throws I } foodList.addFood(foodToAdd); - return "Added " + foodName + " (" + foodToAdd.getCalories() + "kcal) to " + return "Added " + foodName + "(" + foodToAdd.getCalories() + " kcal) to " + DateFormatter.dateToString(date) + "." + System.lineSeparator() + Ui.line(); } } diff --git a/src/main/java/seedu/calorietracker/FoodList.java b/src/main/java/seedu/calorietracker/FoodList.java index 6fa703dfad..64389ec86d 100644 --- a/src/main/java/seedu/calorietracker/FoodList.java +++ b/src/main/java/seedu/calorietracker/FoodList.java @@ -24,7 +24,16 @@ public ArrayList getFoods() { return foods; } + public Food getFood(int index) { + return foods.get(index); + } + public int getTotalCalories() { return totalCalories; } + + public void deleteFood(int index) { + totalCalories -= foods.get(index).getCalories(); + foods.remove(index); + } } diff --git a/src/main/java/seedu/commands/caloriecommands/DeleteCalorieCommand.java b/src/main/java/seedu/commands/caloriecommands/DeleteCalorieCommand.java new file mode 100644 index 0000000000..fb8b9059b3 --- /dev/null +++ b/src/main/java/seedu/commands/caloriecommands/DeleteCalorieCommand.java @@ -0,0 +1,36 @@ +package seedu.commands.caloriecommands; + +import seedu.calorietracker.Food; +import seedu.commands.Command; +import seedu.exceptions.InvalidArgumentException; +import seedu.exceptions.InvalidSyntaxException; +import seedu.parser.DateFormatter; + +import java.util.Date; + +public class DeleteCalorieCommand extends Command { + public static final int NO_INDEX = -1; + private Date date; + private int index; + public DeleteCalorieCommand(Date date) { + this.date = date; + index = NO_INDEX; + } + + public DeleteCalorieCommand(Date date, int index) { + this.date = date; + this.index = index; + } + + @Override + public String execute() throws InvalidArgumentException, InvalidSyntaxException { + if (index == NO_INDEX) { + calorieTracker.getDailyFoodConsumption().remove(date); + return "Deleted calorie consumption on " + DateFormatter.dateToString(date) + '.'; + } + Food deletedFood = calorieTracker.getDailyFoodConsumption().get(date).getFood(index); + calorieTracker.getDailyFoodConsumption().get(date).deleteFood(index); + return "Deleted " + deletedFood.getFoodName() + "(" + deletedFood.getCalories() + " kcal) from " + + DateFormatter.dateToString(date); + } +} diff --git a/src/main/java/seedu/commands/caloriecommands/ListCaloriesCommand.java b/src/main/java/seedu/commands/caloriecommands/ListCaloriesCommand.java index 17fa496fb8..403090d0e1 100644 --- a/src/main/java/seedu/commands/caloriecommands/ListCaloriesCommand.java +++ b/src/main/java/seedu/commands/caloriecommands/ListCaloriesCommand.java @@ -13,6 +13,7 @@ * Represents list calories command. */ public class ListCaloriesCommand extends Command { + private static final String EMPTY_LIST_MESSAGE = "Calorie consumption list is empty!"; private static final String HEADER = "Here is your list of daily calorie consumption: " + System.lineSeparator(); public ListCaloriesCommand() { @@ -20,8 +21,11 @@ public ListCaloriesCommand() { @Override public String execute() { - TreeMap sortedMap = new TreeMap<>(calorieTracker.getDailyFoodConsumption()); + if (calorieTracker.getDailyFoodConsumption().isEmpty()) { + return EMPTY_LIST_MESSAGE; + } + TreeMap sortedMap = new TreeMap<>(calorieTracker.getDailyFoodConsumption()); StringBuilder stringBuilder = new StringBuilder(HEADER); int counter = 1; for (Date date: sortedMap.keySet()) { diff --git a/src/main/java/seedu/parser/CalorieParser.java b/src/main/java/seedu/parser/CalorieParser.java index a15899125f..1171eb6d87 100644 --- a/src/main/java/seedu/parser/CalorieParser.java +++ b/src/main/java/seedu/parser/CalorieParser.java @@ -2,6 +2,7 @@ import seedu.commands.Command; import seedu.commands.caloriecommands.AddCalorieCommand; +import seedu.commands.caloriecommands.DeleteCalorieCommand; import seedu.commands.caloriecommands.ListCaloriesCommand; import seedu.commands.caloriecommands.ViewCaloriesCommand; import seedu.exceptions.InvalidArgumentException; @@ -96,10 +97,10 @@ public static Command parseViewCaloriesCommand(String arguments) //@@author calebcjl /** - * Parse arguments for ListCaloriesCommand. + * Parses arguments for ListCaloriesCommand. * - * @param arguments Argument for command - * @return ListCaloriesCommand + * @param arguments Argument for command. + * @return ListCaloriesCommand. * @throws InvalidSyntaxException If invalid syntax. */ public static Command parseListCalorieCommand(String arguments) throws InvalidSyntaxException { @@ -108,4 +109,34 @@ public static Command parseListCalorieCommand(String arguments) throws InvalidSy } return new ListCaloriesCommand(); } + + //@@author calebcjl + + /** + * Parses arguments for DeleteCalorieCommand. + * + * @param arguments Argument for command. + * @return DeleteCalorieCommand. + * @throws InvalidArgumentException If invalid argument. + * @throws InvalidSyntaxException If invalid syntax. + */ + public static Command parseDeleteCalorieCommand(String arguments) + throws InvalidArgumentException, InvalidSyntaxException { + arguments = arguments.trim(); + String[] deleteDetails = arguments.split("\\s+"); + Date date = parseDate(deleteDetails[0]); + if (deleteDetails.length == 1) { + return new DeleteCalorieCommand(date); + } else if (deleteDetails.length > 2) { + throw new InvalidSyntaxException("/cdelete command"); + } + + int index; + try { + index = Integer.parseUnsignedInt(deleteDetails[1]) - 1; + } catch (NumberFormatException e) { + throw new InvalidArgumentException("index"); + } + return new DeleteCalorieCommand(date, index); + } } diff --git a/src/main/java/seedu/parser/Parser.java b/src/main/java/seedu/parser/Parser.java index 7e91a2ef35..a4a12a26de 100644 --- a/src/main/java/seedu/parser/Parser.java +++ b/src/main/java/seedu/parser/Parser.java @@ -54,8 +54,7 @@ public static Command processCommand(String userInput) throws InvalidSyntaxExcep case "/cview": return CalorieParser.parseViewCaloriesCommand(arguments); case "/cdelete": - //delete calories for a specific day for one food follow /cdelete date food name - break; + return CalorieParser.parseDeleteCalorieCommand(arguments); case "/chelp": return new HelpCaloriesCommand(); case "/exit": @@ -63,7 +62,6 @@ public static Command processCommand(String userInput) throws InvalidSyntaxExcep default: return new InvalidCommand(commandName); } - return new InvalidCommand(commandName); } /** From 643d13f59c081fafd2fd873326895c38814512cf Mon Sep 17 00:00:00 2001 From: ZIZI-czh <77820516+ZIZI-czh@users.noreply.github.com> Date: Sat, 8 Apr 2023 18:47:48 +0800 Subject: [PATCH 120/152] Update architecturedisgram and sequence diagram puml file --- docs/diagrams/ArchitectureDiagram.puml | 32 +++++++++++ .../diagrams/ArchitectureSequenceDiagram.puml | 55 +++++++++++++++++++ docs/team/{johndoe.md => Chen ZI Han.md} | 0 docs/uml/Architecture.puml | 11 ---- .../caloriecommands/HelpCaloriesCommand.java | 1 - src/main/java/seedu/parser/Parser.java | 1 + src/main/java/seedu/ui/Ui.java | 3 - 7 files changed, 88 insertions(+), 15 deletions(-) create mode 100644 docs/diagrams/ArchitectureDiagram.puml create mode 100644 docs/diagrams/ArchitectureSequenceDiagram.puml rename docs/team/{johndoe.md => Chen ZI Han.md} (100%) delete mode 100644 docs/uml/Architecture.puml diff --git a/docs/diagrams/ArchitectureDiagram.puml b/docs/diagrams/ArchitectureDiagram.puml new file mode 100644 index 0000000000..53e3e9a98f --- /dev/null +++ b/docs/diagrams/ArchitectureDiagram.puml @@ -0,0 +1,32 @@ +@startuml +skinparam classAttributeIconSize 0 +hide footbox +hide members +hide circle + +Package " "<>{ + class Ui + class Storage + class Parser + class Exception + class Command + class Duke +} + +User ..> Ui + + +Duke -left-> Storage +Duke --> Parser +Duke -up-> Ui +Duke -up-> Exception + +Parser --> Command + +Command --> Ui +Exception -up> Ui +Storage --> Ui + +Storage ..> File + +@enduml \ No newline at end of file diff --git a/docs/diagrams/ArchitectureSequenceDiagram.puml b/docs/diagrams/ArchitectureSequenceDiagram.puml new file mode 100644 index 0000000000..e0cf325aa2 --- /dev/null +++ b/docs/diagrams/ArchitectureSequenceDiagram.puml @@ -0,0 +1,55 @@ +@startuml +hide footbox + +Actor User +activate ":Duke" +":Duke" -> ":Ui" : showWelcomeMessage() +activate ":Ui" +":Ui" --> ":Duke" +deactivate ":Ui" +":Duke" -> ":Storage" : new +activate ":Storage" +return +deactivate ":Storage" + + + +loop until isExit() + ":Duke" -> ":Duke": Parser() + activate ":Duke" + ":Duke" -> ":Ui": getUserInput() + activate ":Ui" + User -> ":Ui":input + return + ":Duke" -> ":Parser" : processCommand() + activate ":Parser" + ":Parser" -> ":Matcher"** : group() + activate ":Matcher" + return + ":Parser" --> ":Parser" + deactivate ":Parser" + + + alt command is valid + ":Duke" -> ":Ui" : showCommandResult() + activate ":Ui" + return + deactivate ":Duke" + + else command is invalid + ":Duke" -> ":Ui" : showErrorMessage() + activate ":Ui" + ":Ui" -> ":Exception" : toString() + activate ":Exception" + return + destroy ":Exception" + return + destroy ":Ui" + ":Duke" -> ":Command"**: new + activate ":Command" + return + end +end +deactivate ":Duke" + +@enduml \ No newline at end of file diff --git a/docs/team/johndoe.md b/docs/team/Chen ZI Han.md similarity index 100% rename from docs/team/johndoe.md rename to docs/team/Chen ZI Han.md diff --git a/docs/uml/Architecture.puml b/docs/uml/Architecture.puml deleted file mode 100644 index ac2c2d3913..0000000000 --- a/docs/uml/Architecture.puml +++ /dev/null @@ -1,11 +0,0 @@ -@startuml -'https://plantuml.com/sequence-diagram - -autonumber - -Alice -> Bob: Authentication Request -Bob --> Alice: Authentication Response - -Alice -> Bob: Another authentication Request -Alice <-- Bob: another authentication Response -@enduml \ No newline at end of file diff --git a/src/main/java/seedu/commands/caloriecommands/HelpCaloriesCommand.java b/src/main/java/seedu/commands/caloriecommands/HelpCaloriesCommand.java index 13a789f8d2..3830e774cd 100644 --- a/src/main/java/seedu/commands/caloriecommands/HelpCaloriesCommand.java +++ b/src/main/java/seedu/commands/caloriecommands/HelpCaloriesCommand.java @@ -10,5 +10,4 @@ public String execute() { return Ui.getCaloriesHelpMessage(); } - } diff --git a/src/main/java/seedu/parser/Parser.java b/src/main/java/seedu/parser/Parser.java index a4a12a26de..1dbc91c386 100644 --- a/src/main/java/seedu/parser/Parser.java +++ b/src/main/java/seedu/parser/Parser.java @@ -30,6 +30,7 @@ public static Command processCommand(String userInput) throws InvalidSyntaxExcep String commandName = matcher.group("commandName"); String arguments = matcher.group("arguments"); + //@@author ZIZI-czh switch (commandName.toLowerCase()) { case "/wstart": return WorkoutParser.parseStartWorkoutCommand(arguments); diff --git a/src/main/java/seedu/ui/Ui.java b/src/main/java/seedu/ui/Ui.java index a6b4e11783..51fa614a9e 100644 --- a/src/main/java/seedu/ui/Ui.java +++ b/src/main/java/seedu/ui/Ui.java @@ -73,9 +73,6 @@ public static void showWelcomeMessage() { showGreeting(); } - public static String getWorkoutHelpMessage() { - return HELP_MESSAGE_WORKOUT; - } public static void showErrorMessage(String errorMessage) { System.out.println(errorMessage); From 7ff91e7b3a1a256af1bce3edae3838453ac1de57 Mon Sep 17 00:00:00 2001 From: ZIZI-czh <77820516+ZIZI-czh@users.noreply.github.com> Date: Sat, 8 Apr 2023 19:07:58 +0800 Subject: [PATCH 121/152] change back the getHelpMessage --- src/main/java/seedu/ui/Ui.java | 3 + .../workoutcommands/DeleteCommandTest.java | 59 +++++++++---------- 2 files changed, 32 insertions(+), 30 deletions(-) diff --git a/src/main/java/seedu/ui/Ui.java b/src/main/java/seedu/ui/Ui.java index 51fa614a9e..a6b4e11783 100644 --- a/src/main/java/seedu/ui/Ui.java +++ b/src/main/java/seedu/ui/Ui.java @@ -73,6 +73,9 @@ public static void showWelcomeMessage() { showGreeting(); } + public static String getWorkoutHelpMessage() { + return HELP_MESSAGE_WORKOUT; + } public static void showErrorMessage(String errorMessage) { System.out.println(errorMessage); diff --git a/src/test/java/seedu/commands/workoutcommands/DeleteCommandTest.java b/src/test/java/seedu/commands/workoutcommands/DeleteCommandTest.java index d990844666..bcd80e9316 100644 --- a/src/test/java/seedu/commands/workoutcommands/DeleteCommandTest.java +++ b/src/test/java/seedu/commands/workoutcommands/DeleteCommandTest.java @@ -1,14 +1,17 @@ package seedu.commands.workoutcommands; import org.junit.jupiter.api.Test; +import seedu.exceptions.InvalidArgumentException; import seedu.parser.DateFormatter; import seedu.workout.Day; +import seedu.workout.Workout; import seedu.workout.WorkoutList; import java.text.ParseException; import java.util.Date; import java.util.HashMap; +import static org.junit.Assert.assertThrows; import static org.junit.jupiter.api.Assertions.assertEquals; import static org.testng.AssertJUnit.assertFalse; import static org.testng.AssertJUnit.assertTrue; @@ -17,37 +20,33 @@ public class DeleteCommandTest { private WorkoutList workoutList; @Test - void testExecute() throws ParseException { - + public void testDeleteWorkoutCommand() throws InvalidArgumentException { + // Create a workout list with three workouts WorkoutList workoutList = new WorkoutList(); - String stringDate1 = "01/11/22"; - String stringDate2 = "01/12/22"; - Date date1 = DateFormatter.stringToDate(stringDate1); - Date date2 = DateFormatter.stringToDate(stringDate2); - Day day1 = new Day(date1); - Day day2 = new Day(date2); - workoutList.addWorkoutToList(date1, day1); - workoutList.addWorkoutToList(date2, day2); - DeleteWorkoutCommand command = new DeleteWorkoutCommand(workoutList, date1); - - String expectedMessage = "Day " + DateFormatter.dateToString(date1) + " have been deleted "; - String actualMessage = command.execute(); - - assertFalse(workoutList.getWorkouts().containsKey(date1)); - assertTrue(workoutList.getWorkouts().containsKey(date2)); - assertEquals(expectedMessage, actualMessage); + Workout workout1 = new Workout(new Date(), "Workout 1"); + + Workout workout2 = new Workout(new Date(), "Workout 2"); + Workout workout3 = new Workout(new Date(), "Workout 3"); + workoutList.startWorkout(new Date()); + workoutList.addWorkout(workout2); + workoutList.addWorkout(workout3); + + // Create the DeleteWorkoutCommand and execute it for the second workout + int indexToDelete = 1; // delete the second workout (workout2) + DeleteWorkoutCommand deleteCommand = new DeleteWorkoutCommand(indexToDelete); + String result = deleteCommand.execute(); + + // Check that the workout was deleted correctly + assertEquals("Deleted Workout 2 on " + DateFormatter.dateToString(workout2.getDate()) + ".", result); + assertEquals(2, workoutList.getWorkouts().size()); + assertEquals(workout1, workoutList.getWorkouts().get(0)); + assertEquals(workout3, workoutList.getWorkouts().get(1)); + + // Try to delete a workout with an invalid index (out of bounds) + int invalidIndex = 5; // index that is greater than the number of workouts in the list + DeleteWorkoutCommand invalidDeleteCommand = new DeleteWorkoutCommand(invalidIndex); + assertThrows(InvalidArgumentException.class, () -> invalidDeleteCommand.execute()); } +} - @Test - void testExecuteNoSuchDay() { - HashMap workouts = new HashMap<>(); - Date date = new Date(); - DeleteWorkoutCommand command = new DeleteWorkoutCommand(date); - - String expectedMessage = DateFormatter.dateToString(date) + " does not exit"; - String actualMessage = command.execute(); - assertTrue(workouts.isEmpty()); - assertEquals(expectedMessage, actualMessage); - } -} From 8e428a483189e98435dd77b32e5b10d2f172af1d Mon Sep 17 00:00:00 2001 From: ZIZI-czh <77820516+ZIZI-czh@users.noreply.github.com> Date: Sun, 9 Apr 2023 00:28:03 +0800 Subject: [PATCH 122/152] Update DG with Duke sequemce digram and update the user profile and add in the comments for methods --- docs/DeveloperGuide.md | 98 ++++++++++++------ docs/diagrams/ArchitectureDiagram.puml | 10 +- docs/images/ArchitectureDiagram.png | Bin 0 -> 16859 bytes docs/images/ArchitectureSequenceDiagram.png | Bin 0 -> 38656 bytes .../seedu/calorietracker/CalorieTracker.java | 22 ++++ .../caloriecommands/AddCalorieCommand.java | 17 +++ .../caloriecommands/ViewCaloriesCommand.java | 1 - .../workoutcommands/DeleteWorkoutCommand.java | 8 ++ .../workoutcommands/StartWorkoutCommand.java | 8 ++ .../workoutcommands/ViewWorkoutCommand.java | 18 ++++ src/main/java/seedu/ui/Ui.java | 14 ++- src/main/java/seedu/workout/Workout.java | 14 +++ src/main/java/seedu/workout/WorkoutList.java | 4 +- .../workoutcommands/StartDayCommandTest.java | 50 --------- .../StartWorkoutCommandTest.java | 74 +++++++++++++ .../java/seedu/workout/WorkoutListTest.java | 56 ++++++++-- 16 files changed, 292 insertions(+), 102 deletions(-) create mode 100644 docs/images/ArchitectureDiagram.png create mode 100644 docs/images/ArchitectureSequenceDiagram.png delete mode 100644 src/test/java/seedu/commands/workoutcommands/StartDayCommandTest.java create mode 100644 src/test/java/seedu/commands/workoutcommands/StartWorkoutCommandTest.java diff --git a/docs/DeveloperGuide.md b/docs/DeveloperGuide.md index a9edcd235f..66e4787f07 100644 --- a/docs/DeveloperGuide.md +++ b/docs/DeveloperGuide.md @@ -1,4 +1,4 @@ -# Developer Guide +# Fitz - Developer Guide ## Table of Contents @@ -7,18 +7,34 @@ * [Product Scope](#product-scope) * [Target User Profile](#target-user-profile) * [Value Proposition](#value-proposition) -* [Design & Implementation](#design--implementation) +* [Design](#design) * [Architecture](#architecture) - * [UI component](#ui-component) - * [Start component](#start-component) - * [Add component](#add-component) - * [List component](#list-component) - * [View component](#view-component) - * [Delete component](#delete-component) - * [Exit component](#exit-component) + * [Duke](#duke) + * [UI Component](#ui-component) + * [Command Component](#command-component) + * [Storage Component](#storage-component) + * [Calories Component](#calories-component) + * [Workout Component](#workout-component) +* [Implementation](#implementation) + * [Calories Recording](#user-related-features) + * [Add Command](#calories-related-features) + * [View Command](#calories-related-features) + * [List Command](list-command) + * [Delete Command](delete-command) + * [Help Command](help-command) + * [Workout Recording](workout-recording) + * [Start Command](start-command) + * [Add Command](add-command) + * [End Command](end-command) + * [View Command](view-command) + * [List Command](list-command) + * [Delete Command](delete-command) + * [Count Command](count-command ) + * [Help Command](help-command) * [User Stories](#user-stories) * [V1.0](#v10) * [V2.0](#v20) + * [V2.1](#v21) * [Non-Functional Requirements](#non-functional-requirements) * [Glossary](#glossary) * [Instruction for Manual Testing](#instructions-for-manual-testing) @@ -26,42 +42,64 @@ ## Acknowledgements - -{list here sources of all reused/adapted ideas, code, documentation, and third-party libraries -- include links to the original source as well} -###### [Back to table of contents](#table-of-contents) +The format of this developer guide was adapted from +[SE-EDU AddressBook Level 3 Developer Guide](https://se-education.org/addressbook-level3/DeveloperGuide.html). ## Product Scope +The purpose of this app is to help users record their workouts on the current day and track their previous workouts. +Additionally, the app will allow users to record their daily food intake to achieve their fitness goals. + ### Target User Profile -* People who go to gym and do exercise -* People who want to lose weight or strength muscles +* Fitness enthusiasts who regularly go to the gym and perform various exercises to maintain their fitness +* Individuals who want to lose weight +* People who want to build muscle strength and are looking for an easy and convenient way to record and track their progress towards their fitness goals. +* Fitness enthusiasts and athletes who are looking for an easy and convenient way to track their daily workouts and calories intake +* People who want to monitor their progress and achieve their fitness goals. ### Value Proposition -Help our target users to record down the exercise, and they can check the exercise whenever they want. -Besides, this fitness app also help them to calculate the calories consumption for each workout. +Our app is a comprehensive workout and calories tracking solution that helps fitness enthusiasts +and individuals achieve their fitness goals by providing personalized recommendations based on their goals and progress. +With features like tracking of workouts and daily calories intake, our app makes it easy for users to stay motivated and track their progress towards their fitness goals. ###### [Back to table of contents](#table-of-contents) -## Design & Implementation -{Describe the design and implementation of the product. Use UML diagrams and short code snippets where applicable.} +## Design ### Architecture +

+ +

-###### [Back to table of contents](#table-of-contents) +The Architecture Diagram shown above shows the design of FITZ with its components. +The following are highlighting parts +* There are 3 Storages class that related to workout and calories. +They are `CalorieTrackerStorage`, `FoodDictionaryStorage` and `WorkoutListStorage` +* All the exception messages will be shown in `Ui` -We aim to help fellow gym enthusiasts and new gym members to help keep -track of their future and present training. -======= -### UI component +After knowing about the overall architecture of our product, the sequence below shows more specifics. -###### [Back to table of contents](#table-of-contents) +### Duke +`Duke` is the class that contains main method +which are responsible for `Ui`, `Storage`, `Parser`, `Exception` and `Command`. +Once the program start, `storage` and `Ui` will be initialized. +`Ui` will then show the welcome message and `Storage` will load the exiting data to the system. +Afterwards, it takes in user commands and continues to do so until the user inputs the exit command. +Whenever a user enters a command, the Ui reads it and passes it to `Duke`, which in turn sends it to the `Parser` class for parsing. +If the command is determined to be valid, it is then sent to the `Command` class for processing and returned to `Duke` for execution. +`Duke` displays valid responses to the user via the `Ui`, and stores the data in Storage. If the command is invalid, `Duke` displays an appropriate error message instead. +The following diagram illustrate how the `Duke` class work. + +

+ +

+ +### UI Component -### Start component -###### [Back to table of contents](#table-of-contents) -### Add component +### Command Component The add mechanism is facilitated by `AddCommand`. It extends `Command` and modifies the execute function to add an exercise. @@ -81,7 +119,7 @@ Step 4. Finally, `addExercise()` is called and `toAdd` is added to `currentWorko ###### [Back to table of contents](#table-of-contents) -### List component +### Storage Component The deletion mechanism is facilitated by 'Parser', 'ListCommand', 'WorkoutList' and 'UI', where a Workout object will be deleted according to the command inputted by the user and removed from the workout list. @@ -96,7 +134,7 @@ Step 2: The user input of /list will be taken in for the parser and an object of Step 3: The execute method in the ListWorkoutCommand class that is overrides will be called and print out all the dates that while iterating the workoutList. ###### [Back to table of contents](#table-of-contents) -### View component +### Calories Component The View component is facilitated by `Parser`,`Ui`,`WorkoutList`,`Command` and `ViewCommand`, where the user will enter a specific workout date and the number of exercises on that date will be displayed @@ -111,7 +149,7 @@ Below are the specific steps on how to use the view function and how the mechani ###### [Back to table of contents](#table-of-contents) -### Delete component +### Workout Component The deletion mechanism is facilitated by 'Parser', 'DeleteCommand', 'Workout', 'WorkoutList' and 'UI', where a Workout object will be deleted according to the command inputted by the user and removed from the workout list. diff --git a/docs/diagrams/ArchitectureDiagram.puml b/docs/diagrams/ArchitectureDiagram.puml index 53e3e9a98f..2c4b3cdfe4 100644 --- a/docs/diagrams/ArchitectureDiagram.puml +++ b/docs/diagrams/ArchitectureDiagram.puml @@ -11,9 +11,11 @@ Package " "<>{ class Exception class Command class Duke + class Calories + class Workout } -User ..> Ui +User .right.> Ui Duke -left-> Storage @@ -25,8 +27,12 @@ Parser --> Command Command --> Ui Exception -up> Ui + +Storage -up-> Calories +Storage -right-> Workout + Storage --> Ui -Storage ..> File +Storage .left.> File @enduml \ No newline at end of file diff --git a/docs/images/ArchitectureDiagram.png b/docs/images/ArchitectureDiagram.png new file mode 100644 index 0000000000000000000000000000000000000000..bad197841f04f4dd7b2769cc8cce5b59ed150251 GIT binary patch literal 16859 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
h>OpB+f*|8)0p0E_=owAa*iL#S zy?1v=^FgNI%fNsOqm4;4#t32vl9cW+rr;MF@y|yn46iS>unRm-c>i8+h{o_{a>tqy z9X6NUt*?Rz1=8EV`uYIOUu)uB1R|H)7t0)0#t32jqmTlmuKWtrXyhG z^pMrHB@iqi9xPx=li{O4agcYvhG-NcBV(hn!wf9i02?xa9rU9gUXTmkg-&RQ$@PBx z_?)8cvQoC7&Yl6KFysC>WA!?yJ}t@s1}j$trWDjkebRVAnB`x zE&#XttVEFTWmcF(<&~8RGBRY|-TfhL&PUN9KYV}|ack$wf!0urQ5vPE{u<&XI5>bb z1B-MZF#^k#WDh?}FH!js)_MpBWeN;{5CsjhqN2uUnz>zM_b5wC-Y`zVP6g!x%v%AREt0?vS^118 zipUQ6L%b_yg)T!`5BbC@EG*2&cQapCGm&@#oE;{x3Jy+9pJjvXkdXRhbnaXqa=1;8aIWVty2&6B3ANDFIyR`pz_&rO+f@%EAZ*654C1kZRTV4YU2=Bz*GC520+Nit zU=?A!FN2;KlRs`=Vp|Woy;mv@!%k}CU1I70ZKAiHSm6P|B_lb(42+!<+S#ED{Y&otTYN|leWW4ARH%wtV6}dTdF|ZpM|1J zkv;Vgsn2f%mT859i20^UfV83ePyDkxtZ;~{+gAXSmp+}6z@qGY&L14AT^WTN&@$K; zczwMvjBR9Rr&03$^WZXrSH?lW!ivZuquw&qpm5@cB>~=gEp!PPQ0VJMi=5DJodXR&so#_J)#@lJNq(HwY6%zIn3&&jXS|ZZQICzRp0= zar_5on8mdD*@<#c@q{=y!ozSZex9Dh_WFi~38-BZE(S{vAe#pPC!-T&BR%BRXOQ!9 za)jy0xdi~b3}r(5SPVy6T27Falp_vGAm=w>H5QPXT1Zjdq?kTg2r)l@qA`}k7^Tf8 zf%vTa?1${<4e2$g@1D==pcvr(atC}7FqVUj#|Q+sksp*)tICzZp25M_Ak~5Lqgx#T zb8qT1+$CW7TX2<8c^ZttOG`^ed+ZqDcYvh&>+4ZpIWfz&P%Hm-p7jG34&{fSt9!~U z3Klj9+*3a)Eln5wP2@k&Y(CFH6Rii92W2_u*|YCkT4Dj?9d_YOLeA_i=RD@fJj*tG zq7@upG}Z|Gh=-c!9++l4F zqnVwZZGZ7%J7}4(!0i_QAxjGjPy|kzM``^_>4`yOSpm`T@yWzr9xQM9^eM$4{mz|J zS$H;Ax@;XFn`LEX)%fzd<8gZ+ZZq>J-TE)2FP|7@{vMB0=zDtBskhKnjNy`l!|L1@ z?n~EUAr2U({Y4fHb)Lg-1LQ2r3og8QRT2cPACghM>=-<=x^DOpzohJc#3m&+n2i4@_MKNWIWNOjQFn?iS*n4y2~!)oT{#_ZuR<~B!@4Zm8DbWp2t^d zBEP5G1m6|zCS?$&86qgf`>t+o{DOi^9~q|dVRl^kTq4SN zs%ogJ3O^6xhKQDhGm$&EQn9_GZqkv{XSvC6bl?*C(0XS4HU#CqCOiKyP$aAfr zwTEI5Tg(B^QBt~fAa;rhnBMtUm&eLL&7h*9;#YQFfKkNEgCl14yB0eCbKvYdcW9I@ z^L*C)N&C~cmi0bX($yS+wVUAav+1^(A|W9=5PYY6YxUN@>(i&Rly&K+a@6O> z$8Tq4o!ml1Z$tIHC3yJYfdglFl+92wGJ-ru{BiM-_gEw7pgd9xWZ!qn_9!|s(0K9# jQ50QV6h=h$-VRlaTbNGR2U0Nte@+}fb*xz1Htc@^3MRa# literal 0 HcmV?d00001 diff --git a/docs/images/ArchitectureSequenceDiagram.png b/docs/images/ArchitectureSequenceDiagram.png new file mode 100644 index 0000000000000000000000000000000000000000..581c8c4f051f979e5c846a89166fa4dcad1eb825 GIT binary patch literal 38656 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 VTNXYUG$UT#xlLtjtfHRB{{Zmovo8Pu literal 0 HcmV?d00001 diff --git a/src/main/java/seedu/calorietracker/CalorieTracker.java b/src/main/java/seedu/calorietracker/CalorieTracker.java index 41d9d6aab7..6be681d493 100644 --- a/src/main/java/seedu/calorietracker/CalorieTracker.java +++ b/src/main/java/seedu/calorietracker/CalorieTracker.java @@ -18,11 +18,31 @@ public class CalorieTracker { private final HashMap dailyFoodConsumption; private final FoodDictionary foodDictionary; + + //@@author ZIZI-czh + /** + * Constructs a new CalorieTracker object with the given storage and food dictionary. The + * initial daily food consumption records are read from the storage, and the food dictionary + * is used to look up food items by their names. + * + * @param storage the storage object to use for reading and writing the daily food consumption + * records + * @param foodDictionary the food dictionary object to use for looking up food items by their names + */ public CalorieTracker(Storage storage, FoodDictionary foodDictionary) { dailyFoodConsumption = storage.readCalorieTrackerFile(); this.foodDictionary = foodDictionary; } + //@@author ZIZI-czh + /** + * Returns a FoodList representing the list of foods consumed on the specified date. If no + * such list exists in the daily food consumption records, a new, empty list is created and + * added to the records for that date. + * + * @param date the date for which to retrieve the list of consumed foods + * @return a FoodList object representing the list of foods consumed on the specified date + */ public FoodList getFoodList(Date date) { if (!dailyFoodConsumption.containsKey(date)) { FoodList foodList = new FoodList(); @@ -31,6 +51,8 @@ public FoodList getFoodList(Date date) { return dailyFoodConsumption.get(date); } + //@@author ZIZI-czh + public HashMap getDailyFoodConsumption() { return dailyFoodConsumption; } diff --git a/src/main/java/seedu/commands/caloriecommands/AddCalorieCommand.java b/src/main/java/seedu/commands/caloriecommands/AddCalorieCommand.java index 53fc0df34f..1f35a3355b 100644 --- a/src/main/java/seedu/commands/caloriecommands/AddCalorieCommand.java +++ b/src/main/java/seedu/commands/caloriecommands/AddCalorieCommand.java @@ -15,12 +15,29 @@ public class AddCalorieCommand extends Command { private final String foodName; private final int foodCalories; + //@@author ZIZI-czh + /** + * Constructs an instance of AddCalorieCommand with the specified date, food name, and calorie intake. + * + * @param date the date of the food log + * @param foodName the name of the food + * @param foodCalories the calorie intake of the food + */ public AddCalorieCommand(Date date, String foodName, int foodCalories) { this.date = date; this.foodName = foodName; this.foodCalories = foodCalories; } + //@@author ZIZI-czh + + /** + * Constructs an instance of AddCalorieCommand with the specified date and food name, with the calorie intake + * set to a default value of CALORIES_NOT_GIVEN. + * + * @param date the date of the food log + * @param foodName the name of the food + */ public AddCalorieCommand(Date date, String foodName) { this.date = date; this.foodName = foodName; diff --git a/src/main/java/seedu/commands/caloriecommands/ViewCaloriesCommand.java b/src/main/java/seedu/commands/caloriecommands/ViewCaloriesCommand.java index 7852c0e11c..c7009ff814 100644 --- a/src/main/java/seedu/commands/caloriecommands/ViewCaloriesCommand.java +++ b/src/main/java/seedu/commands/caloriecommands/ViewCaloriesCommand.java @@ -14,7 +14,6 @@ public class ViewCaloriesCommand extends Command { private final Date caloriesToViewDate; public ViewCaloriesCommand(Date caloriesToViewDate) { - //super(); this.caloriesToViewDate = caloriesToViewDate; } diff --git a/src/main/java/seedu/commands/workoutcommands/DeleteWorkoutCommand.java b/src/main/java/seedu/commands/workoutcommands/DeleteWorkoutCommand.java index d53c1ec1c6..39b2d4cc7c 100644 --- a/src/main/java/seedu/commands/workoutcommands/DeleteWorkoutCommand.java +++ b/src/main/java/seedu/commands/workoutcommands/DeleteWorkoutCommand.java @@ -7,10 +7,18 @@ import java.util.Date; //@@ author ZIZI-czh +/** + * Represents a command to delete a workout from the workout list, identified by the index of the workout to delete. + * The index of the workout to delete is passed in through the constructor. + */ public class DeleteWorkoutCommand extends Command { private final int workoutToDeleteIndex; //@@ author ZIZI-czh + /** + * Creates a new instance of DeleteWorkoutCommand with the specified index of the workout to delete. + * @param workoutToDeleteIndex the index of the workout to delete + */ public DeleteWorkoutCommand(int workoutToDeleteIndex) { this.workoutToDeleteIndex = workoutToDeleteIndex; } diff --git a/src/main/java/seedu/commands/workoutcommands/StartWorkoutCommand.java b/src/main/java/seedu/commands/workoutcommands/StartWorkoutCommand.java index cca6687d1e..5549399c38 100644 --- a/src/main/java/seedu/commands/workoutcommands/StartWorkoutCommand.java +++ b/src/main/java/seedu/commands/workoutcommands/StartWorkoutCommand.java @@ -17,6 +17,14 @@ public class StartWorkoutCommand extends Command { private final String workoutName; private final Date date; + + //@@author ZIZI-czh + /** + * Represents a command to start a new workout with the specified date and workout name. + * + * @param date the date of the new workout + * @param workoutName the name of the new workout + */ public StartWorkoutCommand(Date date, String workoutName) { this.date = date; this.workoutName = workoutName; diff --git a/src/main/java/seedu/commands/workoutcommands/ViewWorkoutCommand.java b/src/main/java/seedu/commands/workoutcommands/ViewWorkoutCommand.java index 01c32a7aaa..aeb2cd08ba 100644 --- a/src/main/java/seedu/commands/workoutcommands/ViewWorkoutCommand.java +++ b/src/main/java/seedu/commands/workoutcommands/ViewWorkoutCommand.java @@ -4,14 +4,32 @@ import seedu.exceptions.InvalidArgumentException; import seedu.workout.Workout; +//@@ author ZIZI-czh + +/** + * View the workout on current date + */ public class ViewWorkoutCommand extends Command { private final int workoutToViewIndex; //@@ author ZIZI-czh + /** + * Represents a command to view a specific workout from the workout list. + * + * @param workoutToViewIndex the index of the workout to view + */ public ViewWorkoutCommand(int workoutToViewIndex) { this.workoutToViewIndex = workoutToViewIndex; } + + //@@ author ZIZI-czh + /** + * Executes the command to view a specific workout and returns its string representation. + * + * @return a string representing the workout to view + * @throws InvalidArgumentException if the workout index is invalid + */ public String execute() throws InvalidArgumentException { if (workoutToViewIndex >= workoutList.getWorkouts().size()) { throw new InvalidArgumentException("Index cannot be more than " + workoutList.getWorkouts().size()); diff --git a/src/main/java/seedu/ui/Ui.java b/src/main/java/seedu/ui/Ui.java index a6b4e11783..1882f64f2a 100644 --- a/src/main/java/seedu/ui/Ui.java +++ b/src/main/java/seedu/ui/Ui.java @@ -27,7 +27,6 @@ public class Ui { private static final String HELP_MESSAGE_WORKOUT = "Here are the list of commands that you can use for workout record:" +System.lineSeparator() + LINE + System.lineSeparator() - + "- [Start a new day: /wday])" + System.lineSeparator() + "- [Start a workout: /wstart])" + System.lineSeparator() + "- [Add exercise: /wadd]" + System.lineSeparator() + "- [Display all the days: /wlist]" + System.lineSeparator() @@ -38,11 +37,10 @@ public class Ui { private static final String HELP_MESSAGE_CALORIES = "Here are the list of commands that you can use for calories record:" +System.lineSeparator() + LINE + System.lineSeparator() - + "- [Start a new day: /cday])" + System.lineSeparator() + "- [Add food and calories: /cadd]" + System.lineSeparator() - + "- [Display total calories consumption: /wlist]" + System.lineSeparator() + + "- [Display total calories consumption: /clist]" + System.lineSeparator() + "- [Display calories consumed on a specific date : /cview]" + System.lineSeparator() - + "- [Delete calories record for one food: /wdelete]" + System.lineSeparator() + + "- [Delete calories record for one food: /cdelete]" + System.lineSeparator() + "- [Exit app: /exit]" + System.lineSeparator() + LINE; private static final String READ_FILE_ERROR_MESSAGE = "Error reading file: "; public static void showGreeting() { @@ -77,8 +75,9 @@ public static String getWorkoutHelpMessage() { return HELP_MESSAGE_WORKOUT; } - public static void showErrorMessage(String errorMessage) { + public static short showErrorMessage(String errorMessage) { System.out.println(errorMessage); + return 0; } public static void showCommandResult(Command command) @@ -121,4 +120,9 @@ public static void showSuccessfulLoadDataMessage(String fileName) { public static String getCaloriesHelpMessage() { return HELP_MESSAGE_CALORIES; } + + public static void setInput(String userInput) { + + } + } diff --git a/src/main/java/seedu/workout/Workout.java b/src/main/java/seedu/workout/Workout.java index ba6a70a4f4..7ccd36c47a 100644 --- a/src/main/java/seedu/workout/Workout.java +++ b/src/main/java/seedu/workout/Workout.java @@ -3,6 +3,7 @@ import seedu.parser.DateFormatter; import seedu.ui.Ui; +import java.time.LocalDateTime; import java.util.ArrayList; import java.util.Date; @@ -15,24 +16,37 @@ public class Workout { private String workoutName; private final ArrayList exercises; + //@@author ZIZI-czh public Workout() { exercises = new ArrayList<>(); } + //@@author ZIZI-czh + /** + * Creates a new Workout object with the given date and workout name. + * Initializes the exercises list to an empty ArrayList. + * + * @param date the date of the workout + * @param workoutName the name of the workout + */ public Workout(Date date, String workoutName) { this.date = date; this.workoutName = workoutName; exercises = new ArrayList<>(); } + + //@@author ZIZI-czh public String getWorkoutName() { return workoutName; } + //@@author ZIZI-czh public Date getDate() { return date; } + //@@author ZIZI-czh public ArrayList getExercises() { return exercises; } diff --git a/src/main/java/seedu/workout/WorkoutList.java b/src/main/java/seedu/workout/WorkoutList.java index 0e648cc361..afd514f3a3 100644 --- a/src/main/java/seedu/workout/WorkoutList.java +++ b/src/main/java/seedu/workout/WorkoutList.java @@ -41,7 +41,6 @@ public ArrayList getWorkouts() { } //@@ author guillaume-grn - //@@ author ZIZI-czh public String countSetsReps(Date dateInSpecificWeek) { ArrayList workoutsInSpecificWeek = getWorkoutsInSpecificWeek(dateInSpecificWeek); HashMap> distinctExercises = new HashMap<>(); @@ -86,8 +85,7 @@ public static String displayCountSetsReps(HashMap> di } //@@ author guillaume-grn - //@@ author ZIZI-czh - private ArrayList getWorkoutsInSpecificWeek(Date dayInSpecificWeekDate) { + ArrayList getWorkoutsInSpecificWeek(Date dayInSpecificWeekDate) { ArrayList workoutsInSpecificWeek = new ArrayList<>(); Calendar calendar = Calendar.getInstance(); calendar.setTime(dayInSpecificWeekDate); diff --git a/src/test/java/seedu/commands/workoutcommands/StartDayCommandTest.java b/src/test/java/seedu/commands/workoutcommands/StartDayCommandTest.java deleted file mode 100644 index 13964c3c76..0000000000 --- a/src/test/java/seedu/commands/workoutcommands/StartDayCommandTest.java +++ /dev/null @@ -1,50 +0,0 @@ -package seedu.commands.workoutcommands; - -import org.junit.jupiter.api.Test; -import seedu.parser.DateFormatter; -import seedu.workout.Day; -import seedu.workout.WorkoutList; - -import java.text.ParseException; -import java.util.Date; -import java.util.HashMap; - -import static org.junit.jupiter.api.Assertions.assertEquals; - - -class StartDayCommandTest { - private WorkoutList workoutList; - private StartDayCommand startDayCommand; - - @Test - void testExecuteNewWorkout() throws ParseException { - String stringDate1 = "01/11/2022"; - Date date1 = DateFormatter.stringToDate(stringDate1); - workoutList = new WorkoutList(); - startDayCommand = new StartDayCommand(date1); - String expectedOutput = "Great! You have added a new workout for " - + DateFormatter.dateToString(date1); - String actualOutput = startDayCommand.execute(); - assertEquals(expectedOutput, actualOutput); - workoutList.addWorkoutToList(date1, new Day(date1)); - assertTrue(workoutList.getWorkouts().containsKey(date1)); - } - - @Test - void testExecuteExistingWorkout() throws ParseException { - String stringDate2 = "02/11/2022"; - Date date2 = DateFormatter.stringToDate(stringDate2); - Day existingDay = new Day(date2); - WorkoutList workoutList = new WorkoutList(); - HashMap workouts = workoutList.getWorkouts(); - workouts.put(date2, existingDay); - StartDayCommand command = new StartDayCommand(date2); - String expectedOutput = "Great! You have added a new workout for " - + DateFormatter.dateToString(date2); - String actualOutput = command.execute(); - assertEquals(expectedOutput, actualOutput); - assertEquals(existingDay, workoutList.getWorkouts().get(date2)); - } - - -} diff --git a/src/test/java/seedu/commands/workoutcommands/StartWorkoutCommandTest.java b/src/test/java/seedu/commands/workoutcommands/StartWorkoutCommandTest.java new file mode 100644 index 0000000000..12466392c9 --- /dev/null +++ b/src/test/java/seedu/commands/workoutcommands/StartWorkoutCommandTest.java @@ -0,0 +1,74 @@ +import org.junit.jupiter.api.Test; +import seedu.exceptions.InvalidArgumentException; +import seedu.workout.Workout; +import seedu.workout.WorkoutList; + +import java.util.Calendar; +import java.util.Date; +import java.util.GregorianCalendar; + +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertThrows; + +public class StartWorkoutCommandTest { + private static final String DEFAULT_WORKOUT_NAME = "Test workout"; + private WorkoutList workoutList; + + @Test + public void startWorkout_validWorkout_success() { + // Set up + workoutList = new WorkoutList(); + Date today = new Date(); + String workoutName = DEFAULT_WORKOUT_NAME; + + // Exercise + try { + workoutList.startWorkout(today, workoutName); + } catch (InvalidArgumentException e) { + // Should not reach here + assertEquals(1, 0); + } + + // Assert + Workout createdWorkout = workoutList.getWorkouts().get(0); + assertEquals(today, createdWorkout.getDate()); + assertEquals(workoutName, createdWorkout.getWorkoutName()); + } + + @Test + public void startWorkout_workoutAlreadyExists_exceptionThrown() { + // Set up + workoutList = new WorkoutList(); + Date today = new Date(); + String workoutName = DEFAULT_WORKOUT_NAME; + try { + workoutList.startWorkout(today, workoutName); + } catch (InvalidArgumentException e) { + // Should not reach here + assertEquals(1, 0); + } + + // Exercise and assert + assertThrows(InvalidArgumentException.class, () -> workoutList.startWorkout(today, workoutName)); + } + + @Test + public void startWorkout_nullDate_exceptionThrown() { + // Set up + workoutList = new WorkoutList(); + String workoutName = DEFAULT_WORKOUT_NAME; + + // Exercise and assert + assertThrows(NullPointerException.class, () -> workoutList.startWorkout(null, workoutName)); + } + + @Test + public void startWorkout_nullWorkoutName_exceptionThrown() { + // Set up + workoutList = new WorkoutList(); + Date today = new Date(); + + // Exercise and assert + assertThrows(NullPointerException.class, () -> workoutList.startWorkout(today, null)); + } +} diff --git a/src/test/java/seedu/workout/WorkoutListTest.java b/src/test/java/seedu/workout/WorkoutListTest.java index 9fe0ade8fc..40ca761740 100644 --- a/src/test/java/seedu/workout/WorkoutListTest.java +++ b/src/test/java/seedu/workout/WorkoutListTest.java @@ -1,9 +1,12 @@ +/* package seedu.workout; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; +import seedu.exceptions.InvalidArgumentException; +import java.util.ArrayList; import java.util.Calendar; import java.util.Date; import java.util.HashMap; @@ -15,7 +18,8 @@ public class WorkoutListTest { private WorkoutList workoutList; - private HashMap workouts; + private HashMap<> workouts; + exercises = new ArrayList<>() //@@ author ZIZI-czh @BeforeEach @@ -26,30 +30,60 @@ public void setUp() { //@@ author ZIZI-czh @Test - public void testAddWorkoutToList() { + public void testAddWorkoutToList() throws InvalidArgumentException { Date date = new Date(); - Day day = new Day(date); - workoutList.addWorkoutToList(date, day); - workouts.put(date, day); + workoutList.startWorkout(date, "workout1"); + workouts.put(date, "rtt"); assertEquals(workouts, workoutList.getWorkouts()); } //@@ author ZIZI-czh @Test - public void testGetWorkoutsInSpecificWeek() { + public void testGetWorkoutsInSpecificWeek() throws InvalidArgumentException { Date date = new Date(); - Day day = new Day(date); - workoutList.addWorkoutToList(date, day); + workoutList.startWorkout(date, "workout1"); Calendar calendar = Calendar.getInstance(); calendar.setTime(date); calendar.set(Calendar.DAY_OF_WEEK, Calendar.MONDAY); Date startOfWeekDate = calendar.getTime(); calendar.set(Calendar.DAY_OF_WEEK, Calendar.SUNDAY); Date endOfWeekDate = calendar.getTime(); - HashMap workoutsInSpecificWeek = workoutList.getWorkoutsInSpecificWeek(startOfWeekDate); - assertTrue(workoutsInSpecificWeek.containsKey(date)); - assertFalse(workoutsInSpecificWeek.containsKey(endOfWeekDate)); + ArrayList workoutsInSpecificWeek = workoutList.getWorkoutsInSpecificWeek(startOfWeekDate); + assertTrue(workoutsInSpecificWeek.contains(date)); + assertFalse(workoutsInSpecificWeek.contains(endOfWeekDate)); } } +*/ + +package seedu.workout; + +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; + +import java.time.LocalDateTime; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +public class WorkoutTest { + private Workout workout; + + @BeforeEach + public void setUp() { + workout = new Workout(LocalDateTime.now(), "testWorkout"); + } + + @Test + public void startWorkout_shouldStartWorkoutAndReturnTrue() { + boolean result = workout.startWorkout(); + assertEquals(true, result); + } + + @Test + public void startWorkout_shouldNotStartWorkoutWhenAlreadyStarted() { + workout.startWorkout(); + boolean result = workout.startWorkout(); + assertEquals(false, result); + } +} From 2b86727c7c06f2a57754a85edc1932194fd1e152 Mon Sep 17 00:00:00 2001 From: Richardtok Date: Sun, 9 Apr 2023 14:24:05 +0800 Subject: [PATCH 123/152] Updated the UG, the Help funciton in UI, and PPP --- docs/UserGuide.md | 154 ++++++++++++++++----------------- docs/team/RIchardtok | 8 -- docs/team/Richardtok.md | 18 ++++ src/main/java/seedu/ui/Ui.java | 9 +- 4 files changed, 97 insertions(+), 92 deletions(-) delete mode 100644 docs/team/RIchardtok create mode 100644 docs/team/Richardtok.md diff --git a/docs/UserGuide.md b/docs/UserGuide.md index 0060f5e8e0..69336e776f 100644 --- a/docs/UserGuide.md +++ b/docs/UserGuide.md @@ -13,7 +13,6 @@ This helps with planning future exercises. - [Viewing Help](viewing-help) - [Features](#features) - [Workout Recorder](#workout-recorder) - - [Start a new day: /wday](#start-a-new-day--wday) - [Start a workout: /wstart](#start-a-workout--wstart) - [Add exercises to current workout: /wadd](#add-exercises-to-current-workout--wadd) - [List workout dates: /wlist](#list-workout-dates--wlist) @@ -21,12 +20,12 @@ This helps with planning future exercises. - [Delete workout record: /wdelete](#delete-a-workout--wdelete) - [Count sets and reps for a week: /wcount](#count-sets-and-reps-over-a-week--wcount) - [Calories Recorder](calories-recorder) - - [Start a new day: /cday](#start-a-calories--wstart) - [Add calories consumed: /cadd](#add-calories-consumed--cadd) - [List all the datesof Calories consumed: /clist](#list-calories-clist) - [View calorie consumption: /cview](#view-calorie-consumption--cview) - [Delete calories record: /cdelete](#delete-a-workout--delete) - - [List of valid commands : /help](#list-of-valid-commands--help) + - [List of valid workout commands : /whelp](#list-valid-commands--help) + - [List of valid calorie commands : /chelp](#list-of-valid-commands--help) - [Exit the app: /exit](#exit-the-app--exit) - [FAQ](#faq) - [Command Summary](#command-summary) @@ -68,13 +67,13 @@ Expected output: ``` Here are the list of commands that you can use for workout record: ======================================= -- [Start a new day: /wday]) - [Start a workout: /wstart]) - [Add exercise: /wadd] - [Display all the days: /wlist] - [Display workouts information for a specific day: /wview] - [Display total amount of reps and set for one week /wcount] - [Delete workouts: /wdelete] +- [End current workout: /wend] - [Exit app: /exit] ======================================= ``` @@ -92,7 +91,6 @@ Expected output: ``` Here are the list of commands that you can use for calories record: ======================================= -- [Start a new day: /cday]) - [Add food and calories: /cadd] - [Display total calories consumption: /clist] - [Display calories consumed on a specific date : /cview] @@ -104,152 +102,147 @@ Here are the list of commands that you can use for calories record: ## Features -### Start a workout: `/wday` -Starts the workout for a specific date - -Format: `/wday DD/MM/YY` - -* The `DATE` needs to be in the exact format. - -Example of usage: - -`/wstart 11/03/23` - -`/wstart 21/04/23` - -Expected output: -``` -Great! You have added a new workout for 11/02/23 -``` - ### Start a workout: `/wstart` Starts the workout for a specific date Format: `/wstart WORKOUT_NAME` -* The `DATE` needs to be in the exact format. - Example of usage: -`/wstart Chest day` +`/wstart chest day` `/wstart leg day` Expected output: ``` -/wstart Chest day -Great! You have added a new workout for Chest day. +chest day started on 09/04/23. ``` ### Add exercises to current workout: `/wadd` Adds exercise to the current workout. -Format: `/wadd /weight /rps ` +Format: `/wadd EXERCISE_NAME WEIGHT_USED_WEIGHT_UNIT RPS` -* `/wadd` only works after a workout is started with `/start`. +* `/wadd` only works after a workout is started with `/wstart`. +* `WEIGHT_USED_WEIGHT_UNIT` example: 100kg or 100lb (the unit needs to be connected with the weight used) +* `RPS` it means reps per set of an exercise it can be inputted in this format: 7 6 9 Example of usage: -`/wadd bench press /weight 100 /rps 5 5 5 5` +`/wadd chest press 100kg 7 6 5` -`/wadd leg press /weight 160 /rps 5 5 5 5` +`/wadd leg press 150kg 7 6 5` Expected output: ``` -Added bench press 100 5 5 5 5 +chest press 100kg 7 6 5 has been added. ``` -### List workout dates: `/list` +### List workout dates: `/wlist` Display the list of dates of workouts done. -Format: `/list` +Format: `/wlist` Example of usage: -`/list` +`/wlist` Expected output: ``` -Here are the list of dates of your workouts: -1. 25/03/23 -2. 26/03/23 +Here is the list of dates of your workouts: +1. 08/04/23 21/02/21 chest day +2. 08/04/23 chest day +3. 09/04/23 chest day +======================================= ``` ### View a workout: `/wview` -Display the list of exercises done for a workout on a specified date. +Display the list of exercises done of a workout date. -Format: `/wview
` +Format: `/wview INDEX` +* `INDEX` is the number that is displayed when using the `/wlist` function Example of usage: -`/wview 21/03/23` +`/wview 3` Expected output: ``` -Here are the list of exercises in your workout: -1. bench press 100kg 9 8 7 6 5 -2. squats 120kg 8 6 5 4 +Here are the list of exercises for chest day on 09/04/23. +1. chest press 100kg 7 6 5 +======================================= ``` -### Delete a workout: `/delete` +### Delete a workout: `/wdelete` Delete a workout on a specified date. -Format: `/delete
` +Format: `/delete INDEX` + +* `INDEX` is the number that is displayed when using the `/wlist` function Example of usage: -`/delete 21/03/23` +`/delete 3` Expected output: ``` -Workout deleted. +Deleted chest day on 09/04/23. ``` -### Count sets and reps over a week: `/count` +### Count sets and reps over a week: `/wcount` Displays the list of distinct exercises over a week and the associated total number of sets and reps for each one -Format: `/count
` +Format: `/wcount
` Example of usage: -`/count 21/03/23` +`/wcount 09/04/23` Expected output: ``` -Exercises and number of sets and reps for the week of Tue Mar 21 00:00:00 SGT 2023 ----------------------------------- -Bench Press - 4 sets - 48 reps -Squats - 5 sets - 60 reps ----------------------------------- +Information of exercises for the week of 09/04/23 +Name: leg press, sets: 3, rps:22 +======================================= ``` ### Add calories consumed: `/cadd` Add record of calories consumed. -Format: `/cadd
` +Format: `/cadd DD/MM/YY FOOD_NAME CALORIE_COUNT` -* `` can be omitted if food has not been added previously. +* `CALORIE_COUNT` can be omitted if food has not been added previously. Example of usage: -`/cadd 25/03/23 chicken 100` -`/cadd 25/03/23 chicken` +`/cadd 11/02/23 chicken 100` Expected output: ``` -Consumed additional 100kcal. -Total calories consumed: 100kcal -Consumed additional 100kcal. -Total calories consumed: 200kcal +Added chicken(100 kcal) to 11/02/23. +``` +### View calorie consumption: `/clist` +Display the list of dates and total calorie consumption. + +Format: `/clist` + +Example of usage: +`/clist` + +Expected output: +``` +Here is your list of daily calorie consumption: +1. 11/02/23: 100kcal +======================================= ``` ### View calorie consumption: `/cview` View the total calorie consumption in a specified date. -Format: `/view
` +Format: `/cview DD/MM/YY` Example of usage: `/cview` Expected output: ``` -Calories consumed on 25/03/23: 200kcal. +Here are the foods consumed on 11/02/23: +1. chicken - 100kcal +======================================= ``` -### List valid commands: `/help` ### Exit the App: `/exit` Exit the program. @@ -268,18 +261,21 @@ Thank you, hope you had a great workout!!! **Q**: Does the app save my workouts when I exit it? -**A**: As of v2.0, the app does not save your data. However, you can look forward to this feature in the next update! +**A**: As of v2.1, the app does save your data. ## Command Summary -* The list of Commands `/help` -* Start a workout `/start
` -* Add exercise `/wadd /weight /rps ` -* End current Workout `/end` -* List workout dates: `/list` -* View a workout: `/wview
` -* Delete a workout `/delete
` -* Count sets and reps over a week: `/count
` -* Add calories consumed: `/cadd
` -* View calorie consumption: `/cview
` +* The list of workout Commands `/whelp` +* The list of calorie Commands `/chelp` +* Start a workout `/wstart WORKOUT_NAME` +* Add exercise `/wadd EXERCISE_NAME WEIGHT_USED_WEIGHT_UNIT RPS` +* List workout dates: `/wlist` +* View a workout: `/wview DD/MM/YY` +* Delete a workout `/wdelete DD/MM/YY` +* Count sets and reps over a week: `/wcount DD/MM/YY` +* End current Workout `/wend` +* Add calories consumed: `/cadd DD/MM/YY FOOD_NAME CALORIES` +* List calorie consumption dates: `/clist` +* View calorie consumption: `/cview DD/MM/YY` +* Delete calorie consumption date: `/cdelete DD/MM/YY` * Exit app `/exit` diff --git a/docs/team/RIchardtok b/docs/team/RIchardtok deleted file mode 100644 index f22c930b43..0000000000 --- a/docs/team/RIchardtok +++ /dev/null @@ -1,8 +0,0 @@ -## Project: FITZ -Fitz - the ultimate fitness app for individuals who are passionate about their health and fitness. -Users can achieve their fitness goals and track their progress with ease. -This innovative app is designed for users who prefer a CLI format, -making it a user-friendly option for anyone who wants to keep their fitness routine on track. - -### Contributions -Implemented Features: Viewing a specific day calorie consumption \ No newline at end of file diff --git a/docs/team/Richardtok.md b/docs/team/Richardtok.md new file mode 100644 index 0000000000..7130b90670 --- /dev/null +++ b/docs/team/Richardtok.md @@ -0,0 +1,18 @@ +## Project: FITZ +Our Vision of an all-in-one Fitness app is in "FITZ". This CLI app is perfect for those who are tying to keep fit and healthy. +With "FITZ" users can easily track their fitness and diet with ease and cna help in achieving their goals. +This app is specifically designed for users who prefer using an app in CLI format, +making it a user-friendly option for anyone who wants to keep their fitneess and diet goals in check. + +### Contributions +Implemented Features: Viewing a specific day exercises Workout +- What it does: It enables the user to view the exercises done in a specific day. +- Justification: It allows users to see what exercises they have done on that day + +Implemented Features: Viewing a specific day calorie consumption +- What it does: It enables the user to view the food that they have eatan ont hat day and the calories of the food +- Justification: It allows the user to know what they have consumed on that day and be mindful of the calories they have consumed + +Implemented Features: Help function for both Workout Commands and Calorie Commands +- What it does: It allows the user to view all the valid commands that can be used for "FITZ" +- Justification: It summarizes the list of valid commands so that the user can easily use it. diff --git a/src/main/java/seedu/ui/Ui.java b/src/main/java/seedu/ui/Ui.java index a6b4e11783..7f159e2287 100644 --- a/src/main/java/seedu/ui/Ui.java +++ b/src/main/java/seedu/ui/Ui.java @@ -24,26 +24,25 @@ public class Ui { "| | | | | | / /----.\n" + "|__| |__| |__| /________|"; private static final Scanner in = new Scanner(System.in); + //@@ author RIchardtok private static final String HELP_MESSAGE_WORKOUT = "Here are the list of commands that you can use for workout record:" +System.lineSeparator() + LINE + System.lineSeparator() - + "- [Start a new day: /wday])" + System.lineSeparator() + "- [Start a workout: /wstart])" + System.lineSeparator() + "- [Add exercise: /wadd]" + System.lineSeparator() + "- [Display all the days: /wlist]" + System.lineSeparator() + "- [Display workouts information for a specific day: /wview]" + System.lineSeparator() + "- [Display total amount of reps and set for one week /wcount]" + System.lineSeparator() + "- [Delete workouts: /wdelete]" + System.lineSeparator() + + "- [End current workout: /wend]" + System.lineSeparator() + LINE + "- [Exit app: /exit]" + System.lineSeparator() + LINE; private static final String HELP_MESSAGE_CALORIES = "Here are the list of commands that you can use for calories record:" +System.lineSeparator() + LINE + System.lineSeparator() - + "- [Start a new day: /cday])" + System.lineSeparator() + "- [Add food and calories: /cadd]" + System.lineSeparator() - + "- [Display total calories consumption: /wlist]" + System.lineSeparator() + + "- [Display total calories consumption: /clist]" + System.lineSeparator() + "- [Display calories consumed on a specific date : /cview]" + System.lineSeparator() - + "- [Delete calories record for one food: /wdelete]" + System.lineSeparator() - + "- [Exit app: /exit]" + System.lineSeparator() + LINE; + + "- [Delete calories record for one food: /cdelete]" + System.lineSeparator(); private static final String READ_FILE_ERROR_MESSAGE = "Error reading file: "; public static void showGreeting() { System.out.println(WELCOME_MESSAGE); From c0c349867d240ca3444cd9cf6bd2a05cc0f2d7d0 Mon Sep 17 00:00:00 2001 From: Richardtok Date: Sun, 9 Apr 2023 14:27:07 +0800 Subject: [PATCH 124/152] Fixed Chechstyle --- src/main/java/seedu/calorietracker/CalorieTracker.java | 2 +- .../java/seedu/commands/caloriecommands/AddCalorieCommand.java | 2 +- .../seedu/commands/caloriecommands/ListCaloriesCommand.java | 2 +- .../seedu/commands/caloriecommands/ViewCaloriesCommand.java | 2 +- .../java/seedu/commands/workoutcommands/ViewWorkoutCommand.java | 2 +- src/main/java/seedu/parser/CheckCaloriesInput.java | 2 +- 6 files changed, 6 insertions(+), 6 deletions(-) diff --git a/src/main/java/seedu/calorietracker/CalorieTracker.java b/src/main/java/seedu/calorietracker/CalorieTracker.java index d72fb0d46b..41d9d6aab7 100644 --- a/src/main/java/seedu/calorietracker/CalorieTracker.java +++ b/src/main/java/seedu/calorietracker/CalorieTracker.java @@ -62,4 +62,4 @@ public String addCalories(Date date, String foodName, int foodCalories) throws I return "Added " + foodName + "(" + foodToAdd.getCalories() + " kcal) to " + DateFormatter.dateToString(date) + "." + System.lineSeparator() + Ui.line(); } -} \ No newline at end of file +} diff --git a/src/main/java/seedu/commands/caloriecommands/AddCalorieCommand.java b/src/main/java/seedu/commands/caloriecommands/AddCalorieCommand.java index 558bedc24a..53fc0df34f 100644 --- a/src/main/java/seedu/commands/caloriecommands/AddCalorieCommand.java +++ b/src/main/java/seedu/commands/caloriecommands/AddCalorieCommand.java @@ -31,4 +31,4 @@ public AddCalorieCommand(Date date, String foodName) { public String execute() throws InvalidSyntaxException { return calorieTracker.addCalories(date, foodName, foodCalories); } -} \ No newline at end of file +} diff --git a/src/main/java/seedu/commands/caloriecommands/ListCaloriesCommand.java b/src/main/java/seedu/commands/caloriecommands/ListCaloriesCommand.java index 0ce253b1ae..403090d0e1 100644 --- a/src/main/java/seedu/commands/caloriecommands/ListCaloriesCommand.java +++ b/src/main/java/seedu/commands/caloriecommands/ListCaloriesCommand.java @@ -35,4 +35,4 @@ public String execute() { } return stringBuilder.append(Ui.line()).toString(); } -} \ No newline at end of file +} diff --git a/src/main/java/seedu/commands/caloriecommands/ViewCaloriesCommand.java b/src/main/java/seedu/commands/caloriecommands/ViewCaloriesCommand.java index 90a58241b7..7852c0e11c 100644 --- a/src/main/java/seedu/commands/caloriecommands/ViewCaloriesCommand.java +++ b/src/main/java/seedu/commands/caloriecommands/ViewCaloriesCommand.java @@ -35,4 +35,4 @@ public String execute() { } return stringBuilder.append(Ui.line()).toString(); } -} \ No newline at end of file +} diff --git a/src/main/java/seedu/commands/workoutcommands/ViewWorkoutCommand.java b/src/main/java/seedu/commands/workoutcommands/ViewWorkoutCommand.java index 70cb575204..01c32a7aaa 100644 --- a/src/main/java/seedu/commands/workoutcommands/ViewWorkoutCommand.java +++ b/src/main/java/seedu/commands/workoutcommands/ViewWorkoutCommand.java @@ -19,4 +19,4 @@ public String execute() throws InvalidArgumentException { Workout toView = workoutList.getWorkout(workoutToViewIndex); return toView.toString(); } -} \ No newline at end of file +} diff --git a/src/main/java/seedu/parser/CheckCaloriesInput.java b/src/main/java/seedu/parser/CheckCaloriesInput.java index ef68857431..33fa0cb060 100644 --- a/src/main/java/seedu/parser/CheckCaloriesInput.java +++ b/src/main/java/seedu/parser/CheckCaloriesInput.java @@ -72,4 +72,4 @@ // new IncorrectSyntaxCommand(CLIST_COMMAND); // } // -//} \ No newline at end of file +//} From 35dc34266fa251279f3e2d01fb3050eecb8a3920 Mon Sep 17 00:00:00 2001 From: ZIZI-czh <77820516+ZIZI-czh@users.noreply.github.com> Date: Sun, 9 Apr 2023 15:21:32 +0800 Subject: [PATCH 125/152] Update DG with design part --- docs/DeveloperGuide.md | 21 ++ docs/diagrams/ArchitectureDiagram.puml | 6 +- .../diagrams/ArchitectureSequenceDiagram.puml | 1 + docs/diagrams/CommandArchitectureDiagram.puml | 36 +++ .../CommandComponentClassDiagram.puml | 40 +++ docs/diagrams/Style.puml | 267 ++++++++++++++++++ docs/diagrams/UiComponentClassDiagram.puml | 26 ++ docs/images/ArchitectureDiagram.png | Bin 16859 -> 30893 bytes docs/images/ArchitectureSequenceDiagram.png | Bin 38656 -> 76055 bytes docs/images/CommandArchitectureDiagram.png | Bin 0 -> 80951 bytes docs/images/UiComponentClassDiagram.png | Bin 0 -> 509251 bytes docs/team/Chen ZI Han.md | 43 --- docs/team/zizi-czh.md | 43 +++ src/main/java/seedu/ui/Ui.java | 3 +- 14 files changed, 438 insertions(+), 48 deletions(-) create mode 100644 docs/diagrams/CommandArchitectureDiagram.puml create mode 100644 docs/diagrams/CommandComponentClassDiagram.puml create mode 100644 docs/diagrams/Style.puml create mode 100644 docs/diagrams/UiComponentClassDiagram.puml create mode 100644 docs/images/CommandArchitectureDiagram.png create mode 100644 docs/images/UiComponentClassDiagram.png delete mode 100644 docs/team/Chen ZI Han.md create mode 100644 docs/team/zizi-czh.md diff --git a/docs/DeveloperGuide.md b/docs/DeveloperGuide.md index 66e4787f07..93e32da0d4 100644 --- a/docs/DeveloperGuide.md +++ b/docs/DeveloperGuide.md @@ -97,10 +97,31 @@ The following diagram illustrate how the `Duke` class work. ### UI Component +

+ +

+ +The above is the class diagram for Ui. +The retrieval of user input and display of relevant information and error messages for the application is managed by the `Ui` class, +which represents the `Ui` component. + +getUserInput() methods is used to get the user input +and all the methods that related to showMessage are used for printing out the error message or the relevant information +which will correspond to the user behaviour. ### Command Component +

+ +

+ +The above picture shows the lower level design of Command component of the software. +Generally, the commands class in workoutcommnds ,caloriescommands, and workoutcommands package +inherit from Command class. Besides, Exit Comamnd also inheerit from Command class + + + The add mechanism is facilitated by `AddCommand`. It extends `Command` and modifies the execute function to add an exercise. diff --git a/docs/diagrams/ArchitectureDiagram.puml b/docs/diagrams/ArchitectureDiagram.puml index 2c4b3cdfe4..57361da732 100644 --- a/docs/diagrams/ArchitectureDiagram.puml +++ b/docs/diagrams/ArchitectureDiagram.puml @@ -1,10 +1,10 @@ @startuml -skinparam classAttributeIconSize 0 hide footbox -hide members hide circle +skinparam classAttributeIconSize 0 +!include Style.puml -Package " "<>{ +Package "FITZ"<>{ class Ui class Storage class Parser diff --git a/docs/diagrams/ArchitectureSequenceDiagram.puml b/docs/diagrams/ArchitectureSequenceDiagram.puml index e0cf325aa2..185f650ab0 100644 --- a/docs/diagrams/ArchitectureSequenceDiagram.puml +++ b/docs/diagrams/ArchitectureSequenceDiagram.puml @@ -1,5 +1,6 @@ @startuml hide footbox +!include Style.puml Actor User activate ":Duke" diff --git a/docs/diagrams/CommandArchitectureDiagram.puml b/docs/diagrams/CommandArchitectureDiagram.puml new file mode 100644 index 0000000000..e7614e6c1b --- /dev/null +++ b/docs/diagrams/CommandArchitectureDiagram.puml @@ -0,0 +1,36 @@ +@startuml +!include Style.puml + +Package "commands"<>{ + class Command + class ExitCommand + +Package "workoutcommands"<>{ + class AddExerciseCommand + class CountSetsRepsCommand + class DeleteWorkoutCommand + class EndWorkoutCommand + class HelpWorkoutCommand + class ListWorkoutCommand + class StartWorkoutCommand + class ViewWorkoutCommand +} +Package "caloriescommands"<>{ + class AddCaloriesCommand + class DeleteCaloriesCommand + class HelpCaloriesCommand + class ListCaloriesCommand + class ViewCaloriesCommand +} +Package "errorcommands"<>{ + class IncorrectSyntaxCommand + class InvalidCommand +} + +} + +Command <|-up- "errorcommands" +Command <|-down- "workoutcommands" +Command <|-up- "caloriescommands" +Command <|-down- "ExitCommand" +@enduml \ No newline at end of file diff --git a/docs/diagrams/CommandComponentClassDiagram.puml b/docs/diagrams/CommandComponentClassDiagram.puml new file mode 100644 index 0000000000..15fcc2737f --- /dev/null +++ b/docs/diagrams/CommandComponentClassDiagram.puml @@ -0,0 +1,40 @@ +@startuml +!include Style.puml + +interface "<>\nCommandInterface" { + +boolean executeCommand() +} +abstract class "{abstract}\nCommand" +class UserCommand { + - userList: UserList + - itemList: ItemList + - transactionList: TransactionList + + executeCommand(): boolean +} +class TransactionCommand { + - userList: UserList + - itemList: ItemList + - transactionList: TransactionList + + executeCommand(): boolean +} +class ItemCommand { + - userList: UserList + - itemList: ItemList + - transactionList: TransactionList + + executeCommand(): boolean +} +class HelpCommand { + + executeCommand(): boolean +} +class ExitCommand { + + executeCommand(): boolean +} + +"<>\nCommandInterface" <|.. "{abstract}\nCommand" +"{abstract}\nCommand" <|-- UserCommand +"{abstract}\nCommand" <|-- TransactionCommand +"{abstract}\nCommand" <|-- ItemCommand +"{abstract}\nCommand" <|-- HelpCommand +"{abstract}\nCommand" <|-- ExitCommand + +@enduml \ No newline at end of file diff --git a/docs/diagrams/Style.puml b/docs/diagrams/Style.puml new file mode 100644 index 0000000000..723a390b94 --- /dev/null +++ b/docs/diagrams/Style.puml @@ -0,0 +1,267 @@ +'' +'' Cyborg theme based off of the bootstrap theme of the same name, with outline colors +'' https://bootswatch.com/cyborg/ +'' +'' Author: Brett Schwarz +'' Copyright (c) 2019 by Brett Schwarz + +!$THEME = "cyborg-outline" + +hide circle +skinparam classAttributeIconSize 0 +hide footbox + +!if %not(%variable_exists("$BGCOLOR")) +!$BGCOLOR = "white" +!endif + +skinparam backgroundColor $BGCOLOR +skinparam useBetaStyle false + +'' +'' Colors taken from the css file of the BS theme +'' +!$BLACK = "#000000" +!$BLUE = "#2A9FD6" +!$INDIGO = "#6610f2" +!$PURPLE = "#6f42c1" +!$PINK = "#e83e8c" +!$RED = "#CC0000" +!$ORANGE = "#fd7e14" +!$YELLOW = "#FF8800" +!$GREEN = "#77B300" +!$TEAL = "#20c997" +!$CYAN = "#9933CC" +!$WHITE = "#FFF" +!$GRAY_LIGHT = "#222" +!$GRAY = "#555" +!$PRIMARY = "#2A9FD6" +!$SECONDARY = "#555" +!$SUCCESS = "#77B300" +!$INFO = "#9933CC" +!$WARNING = "#FF8800" +!$DANGER = "#CC0000" +!$LIGHT = "#222" +!$DARK = "#ADAFAE" + +'' *_DARK = tint (lighter) of the main color of 80% +'' where TINT is calculated by clr + (255-clr) * tint_factor +'' *_LIGHT = shade (darker) of the main color of 80% +'' and SHADE is calculated by clr * (1 - shade_factor) +'' +!$FGCOLOR = $BLACK +!$PRIMARY_DARK = "#55B2DE" +!$PRIMARY_LIGHT = "#227FAB" +!$PRIMARY_TEXT = $PRIMARY +!$SECONDARY_DARK = "#777777" +!$SECONDARY_LIGHT = "#444444" +!$SECONDARY_TEXT = $SECONDARY_DARK +!$INFO_DARK = "#00008B" +!$INFO_LIGHT = "#7a29a3" +!$INFO_TEXT = $INFO +!$SUCCESS_DARK = "#92C233" +!$SUCCESS_LIGHT = "#5F8F00" +!$SUCCESS_TEXT = $SUCCESS +!$WARNING_DARK = "#FFA033" +!$WARNING_LIGHT = "#cc6d00" +!$WARNING_TEXT = $WARNING +!$DANGER_DARK = "#D63333" +!$DANGER_LIGHT = "#a30000" +!$DANGER_TEXT = $WHITE +!$DARK_DARK = "#BDBFBE" +!$DARK_LIGHT = "#8A8C8B" +!$LIGHT_DARK = "#4E4E4E" +!$LIGHT_LIGHT = "#1B1B1B" + +!procedure $success($msg) + $msg +!endprocedure + +!procedure $failure($msg) + $msg +!endprocedure + +!procedure $warning($msg) + $msg +!endprocedure + +!procedure $primary_scheme() + FontColor $PRIMARY_TEXT + BorderColor $PRIMARY_DARK + BackgroundColor $BGCOLOR +!endprocedure + +'' +'' Global Default Values +'' +skinparam defaultFontName "Verdana" +skinparam defaultFontSize 12 +skinparam dpi 1200 +' Set to 100 when you want to save the diagram +skinparam shadowing false +skinparam roundcorner 8 +skinparam ParticipantPadding 0 +skinparam BoxPadding 40 +skinparam Padding 4 +skinparam ArrowColor $DARK +skinparam stereotype { + CBackgroundColor $SECONDARY_DARK + CBorderColor $SECONDARY_LIGHT + ABackgroundColor $SUCCESS_LIGHT + ABorderColor $SUCCESS_DARK + IBackgroundColor $DANGER_LIGHT + IBorderColor $DANGER_DARK + EBackgroundColor $WARNING_LIGHT + EBorderColor $WARNING_DARK + NBackgroundColor $INFO_LIGHT + NBorderColor $INFO_DARK +} +skinparam title { + FontColor $PRIMARY + BorderColor $SECONDARY_DARK + FontSize 20 + BorderRoundCorner 8 + BorderThickness 1 + BackgroundColor $BGCOLOR +} + +skinparam legend { + BackgroundColor $BGCOLOR + BorderColor $SECONDARY_DARK + FontColor $DARK +} + +!startsub participant + +skinparam participant { + $primary_scheme() + ParticipantBorderThickness 2 +} +!endsub + +!startsub actor + +skinparam actor { + $primary_scheme() + FontColor $PRIMARY +} +!endsub + +!startsub arrow + +skinparam arrow { + Thickness 1 + Color $PRIMARY + FontColor $FGCOLOR +} +!endsub + +!startsub sequence + +skinparam sequence { + BorderColor $PRIMARY + ' For some reason sequence title font color does not pick up from global + TitleFontColor $PRIMARY + BackgroundColor $BGCOLOR + StartColor $PRIMARY + EndColor $PRIMARY + '' + BoxBackgroundColor $BGCOLOR + BoxBorderColor $DARK + BoxFontColor $DARK + '' + DelayFontColor $DARK + '' + LifeLineBorderColor $SECONDARY + LifeLineBorderThickness 2 + LifeLineBackgroundColor $WHITE + '' + GroupBorderColor $DARK + GroupFontColor $DARK + GroupHeaderFontColor $BLACK + GroupBackgroundColor $BGCOLOR + GroupBodyBackgroundColor $BGCOLOR + GroupHeaderBackgroundColor $BGCOLOR + '' + DividerBackgroundColor $BGCOLOR + DividerBorderColor $DARK + DividerBorderThickness 2 + DividerFontColor $DARK + '' + ReferenceBackgroundColor $BGCOLOR + ReferenceBorderColor $DARK + ReferenceFontColor $DARK + ReferenceHeaderFontColor $INFO_TEXT + ReferenceHeaderBackgroundColor $BGCOLOR + '' + StereotypeFontColor $PRIMARY_TEXT +} +!endsub + +!startsub note + +skinparam note { + BorderThickness 1 + BackgroundColor $BGCOLOR + BorderColor $INFO_DARK + FontColor $INFO_DARK +} +!endsub + +!startsub component + +skinparam component { + $primary_scheme() +} +!endsub + +!startsub interface + +skinparam interface { + BackgroundColor $BGCOLOR + BorderColor $DANGER + FontColor $DARK +} +!endsub + +!startsub class + +skinparam class { + $primary_scheme() + FontColor $LIGHT + HeaderBackgroundColor $TRANSPARENT + StereotypeFontColor $DARK + BorderThickness 1 + AttributeFontColor $BLACK + AttributeFontSize 11 +} +!endsub + +!startsub rectangle + +skinparam rectangle { + $primary_scheme() + BorderThickness 2 + StereotypeFontColor $PRIMARY +} +!endsub + +!startsub package + +skinparam package { + BackgroundColor $BGCOLOR + BorderColor $PRIMARY + FontColor $PRIMARY + BorderThickness 2 +} +!endsub + +!startsub frame + +skinparam frame { + BackgroundColor $BGCOLOR + BorderColor $INFO + FontColor $INFO_TEXT + BorderThickness 2 +} +!endsub \ No newline at end of file diff --git a/docs/diagrams/UiComponentClassDiagram.puml b/docs/diagrams/UiComponentClassDiagram.puml new file mode 100644 index 0000000000..2d441081fc --- /dev/null +++ b/docs/diagrams/UiComponentClassDiagram.puml @@ -0,0 +1,26 @@ +@startuml +skinparam classAttributeIconSize 0 +hide footbox +hide circle +!include Style.puml + +class Ui{ + + {static} line(): String + + {static} getUserInput(): String + + {static} getWorkoutHelpMessage(): String + + {static} getCaloriesHelpMessage(): String + + {static} showGreeting(): void + + {static} showLogo(): void + + {static} showOneLine(): void + + {static} showWelcomeMessage(): void + + {static} showErrorMessage(): void + + {static} showCommandResult(): void + + {static} showReadFileErrorMessage(): void + + {static} showCreatedNewFileMessage(): void + + {static} showNewFileNotCreatedMessage(): void + + {static} showCreateDirectoryMessage(): void + + {static} showDirectoryNotCreatedMessage(): void + + {static} showSaveUserDataErrorMessage(): void + + {static} showSuccessfulLoadDataMessage(): void +} +@enduml \ No newline at end of file diff --git a/docs/images/ArchitectureDiagram.png b/docs/images/ArchitectureDiagram.png index bad197841f04f4dd7b2769cc8cce5b59ed150251..28841a61c97febe8713e294acc3b40904c4ef3c1 100644 GIT binary patch literal 30893 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
h>OpB+f*|8)0p0E_=owAa*iL#S zy?1v=^FgNI%fNsOqm4;4#t32vl9cW+rr;MF@y|yn46iS>unRm-c>i8+h{o_{a>tqy z9X6NUt*?Rz1=8EV`uYIOUu)uB1R|H)7t0)0#t32jqmTlmuKWtrXyhG z^pMrHB@iqi9xPx=li{O4agcYvhG-NcBV(hn!wf9i02?xa9rU9gUXTmkg-&RQ$@PBx z_?)8cvQoC7&Yl6KFysC>WA!?yJ}t@s1}j$trWDjkebRVAnB`x zE&#XttVEFTWmcF(<&~8RGBRY|-TfhL&PUN9KYV}|ack$wf!0urQ5vPE{u<&XI5>bb z1B-MZF#^k#WDh?}FH!js)_MpBWeN;{5CsjhqN2uUnz>zM_b5wC-Y`zVP6g!x%v%AREt0?vS^118 zipUQ6L%b_yg)T!`5BbC@EG*2&cQapCGm&@#oE;{x3Jy+9pJjvXkdXRhbnaXqa=1;8aIWVty2&6B3ANDFIyR`pz_&rO+f@%EAZ*654C1kZRTV4YU2=Bz*GC520+Nit zU=?A!FN2;KlRs`=Vp|Woy;mv@!%k}CU1I70ZKAiHSm6P|B_lb(42+!<+S#ED{Y&otTYN|leWW4ARH%wtV6}dTdF|ZpM|1J zkv;Vgsn2f%mT859i20^UfV83ePyDkxtZ;~{+gAXSmp+}6z@qGY&L14AT^WTN&@$K; zczwMvjBR9Rr&03$^WZXrSH?lW!ivZuquw&qpm5@cB>~=gEp!PPQ0VJMi=5DJodXR&so#_J)#@lJNq(HwY6%zIn3&&jXS|ZZQICzRp0= zar_5on8mdD*@<#c@q{=y!ozSZex9Dh_WFi~38-BZE(S{vAe#pPC!-T&BR%BRXOQ!9 za)jy0xdi~b3}r(5SPVy6T27Falp_vGAm=w>H5QPXT1Zjdq?kTg2r)l@qA`}k7^Tf8 zf%vTa?1${<4e2$g@1D==pcvr(atC}7FqVUj#|Q+sksp*)tICzZp25M_Ak~5Lqgx#T zb8qT1+$CW7TX2<8c^ZttOG`^ed+ZqDcYvh&>+4ZpIWfz&P%Hm-p7jG34&{fSt9!~U z3Klj9+*3a)Eln5wP2@k&Y(CFH6Rii92W2_u*|YCkT4Dj?9d_YOLeA_i=RD@fJj*tG zq7@upG}Z|Gh=-c!9++l4F zqnVwZZGZ7%J7}4(!0i_QAxjGjPy|kzM``^_>4`yOSpm`T@yWzr9xQM9^eM$4{mz|J zS$H;Ax@;XFn`LEX)%fzd<8gZ+ZZq>J-TE)2FP|7@{vMB0=zDtBskhKnjNy`l!|L1@ z?n~EUAr2U({Y4fHb)Lg-1LQ2r3og8QRT2cPACghM>=-<=x^DOpzohJc#3m&+n2i4@_MKNWIWNOjQFn?iS*n4y2~!)oT{#_ZuR<~B!@4Zm8DbWp2t^d zBEP5G1m6|zCS?$&86qgf`>t+o{DOi^9~q|dVRl^kTq4SN zs%ogJ3O^6xhKQDhGm$&EQn9_GZqkv{XSvC6bl?*C(0XS4HU#CqCOiKyP$aAfr zwTEI5Tg(B^QBt~fAa;rhnBMtUm&eLL&7h*9;#YQFfKkNEgCl14yB0eCbKvYdcW9I@ z^L*C)N&C~cmi0bX($yS+wVUAav+1^(A|W9=5PYY6YxUN@>(i&Rly&K+a@6O> z$8Tq4o!ml1Z$tIHC3yJYfdglFl+92wGJ-ru{BiM-_gEw7pgd9xWZ!qn_9!|s(0K9# jQ50QV6h=h$-VRlaTbNGR2U0Nte@+}fb*xz1Htc@^3MRa# diff --git a/docs/images/ArchitectureSequenceDiagram.png b/docs/images/ArchitectureSequenceDiagram.png index 581c8c4f051f979e5c846a89166fa4dcad1eb825..f3213091d90bc7118ea03592812492f7632736d3 100644 GIT binary patch literal 76055 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 z%0A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%0ANM~G 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 I^ezPd4@0r5GXMYp literal 38656 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 VTNXYUG$UT#xlLtjtfHRB{{Zmovo8Pu diff --git a/docs/images/CommandArchitectureDiagram.png b/docs/images/CommandArchitectureDiagram.png new file mode 100644 index 0000000000000000000000000000000000000000..888fd58384a03ce40848e1e1e2252f9a8e61fa66 GIT binary patch literal 80951 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

5~99sf<|j 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%0Dfp^&DHt39)QC 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 C^xCd1fJ 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 Date: Sun, 9 Apr 2023 16:31:16 +0800 Subject: [PATCH 126/152] UI fixing --- docs/diagrams/ViewDiagram.puml | 12 ++++++------ docs/team/Richardtok.md | 7 +++++++ src/main/java/seedu/ui/Ui.java | 16 ++++++++-------- 3 files changed, 21 insertions(+), 14 deletions(-) diff --git a/docs/diagrams/ViewDiagram.puml b/docs/diagrams/ViewDiagram.puml index 397d65567f..7f9e4c1970 100644 --- a/docs/diagrams/ViewDiagram.puml +++ b/docs/diagrams/ViewDiagram.puml @@ -7,12 +7,12 @@ participant ":Duke" as Duke User -> Duke: Userinput activate Duke -Duke -> Parser : processCommand(userInput) +Duke -> Parser : parseViewWorkoutCommand(arguments) activate Parser -Parser-> CheckInputs: processView(arguments) -activate CheckInputs -CheckInputs->ViewWorkoutCommand : ViewWorkoutCommand(date) +Parser-> WorkoutParser: processView(arguments) +activate WorkoutParser +WorkoutParser->ViewWorkoutCommand : ViewWorkoutCommand(index) activate ViewWorkoutCommand -return workout.toString -return workout.toString +return toView.toString() +return toView.toString() @enduml \ No newline at end of file diff --git a/docs/team/Richardtok.md b/docs/team/Richardtok.md index 7130b90670..196e9e7be5 100644 --- a/docs/team/Richardtok.md +++ b/docs/team/Richardtok.md @@ -16,3 +16,10 @@ Implemented Features: Viewing a specific day calorie consumption Implemented Features: Help function for both Workout Commands and Calorie Commands - What it does: It allows the user to view all the valid commands that can be used for "FITZ" - Justification: It summarizes the list of valid commands so that the user can easily use it. + +Contributions to the User Guide: +- Completely reworked the User Guide with accordance to code changes +- Added descriptions to every Command and Provided examples + +Contributions to the Developer Guide: +- added description of view funciton and diagram diff --git a/src/main/java/seedu/ui/Ui.java b/src/main/java/seedu/ui/Ui.java index 7f159e2287..c4943f8dc0 100644 --- a/src/main/java/seedu/ui/Ui.java +++ b/src/main/java/seedu/ui/Ui.java @@ -28,21 +28,21 @@ public class Ui { private static final String HELP_MESSAGE_WORKOUT = "Here are the list of commands that you can use for workout record:" +System.lineSeparator() + LINE + System.lineSeparator() - + "- [Start a workout: /wstart])" + System.lineSeparator() - + "- [Add exercise: /wadd]" + System.lineSeparator() + + "- [Start a workout: /wstart EXERCISE_NAME])" + System.lineSeparator() + + "- [Add exercise: /wadd EXERCISE_NAME WEIGHT_USED_WEIGHT_UNIT RPS]" + System.lineSeparator() + "- [Display all the days: /wlist]" + System.lineSeparator() - + "- [Display workouts information for a specific day: /wview]" + System.lineSeparator() - + "- [Display total amount of reps and set for one week /wcount]" + System.lineSeparator() - + "- [Delete workouts: /wdelete]" + System.lineSeparator() + + "- [Display workouts information for a specific day: /wview INDEX]" + System.lineSeparator() + + "- [Display total amount of reps and set for one week /wcount DD/MM/YY]" + System.lineSeparator() + + "- [Delete workouts: /wdelete INDEX]" + System.lineSeparator() + "- [End current workout: /wend]" + System.lineSeparator() + LINE + "- [Exit app: /exit]" + System.lineSeparator() + LINE; private static final String HELP_MESSAGE_CALORIES = "Here are the list of commands that you can use for calories record:" +System.lineSeparator() + LINE + System.lineSeparator() - + "- [Add food and calories: /cadd]" + System.lineSeparator() + + "- [Add food and calories: /cadd DD/MM/YY]" + System.lineSeparator() + "- [Display total calories consumption: /clist]" + System.lineSeparator() - + "- [Display calories consumed on a specific date : /cview]" + System.lineSeparator() - + "- [Delete calories record for one food: /cdelete]" + System.lineSeparator(); + + "- [Display calories consumed on a specific date : /cview DD/MM/YY]" + System.lineSeparator() + + "- [Delete calories record for one food: /cdelete DD/MM/YY]" + System.lineSeparator(); private static final String READ_FILE_ERROR_MESSAGE = "Error reading file: "; public static void showGreeting() { System.out.println(WELCOME_MESSAGE); From beb98db412e54798f0b10e046066ade58fdb00eb Mon Sep 17 00:00:00 2001 From: Richardtok Date: Sun, 9 Apr 2023 20:12:06 +0800 Subject: [PATCH 127/152] Added diagrams for ListCalories,ViewCalories,DeleteCalories, and AddCalories --- docs/DeveloperGuide.md | 2 -- docs/diagrams/CaloriesAddDiagram.puml | 21 +++++++++++++++++++ docs/diagrams/DeleteLCalorieDiagram.puml | 26 ++++++++++++++++++++++++ docs/diagrams/ListCalorieDiagram.puml | 25 +++++++++++++++++++++++ docs/diagrams/ViewCalorieDiagram.puml | 26 ++++++++++++++++++++++++ src/main/java/seedu/ui/Ui.java | 8 +------- 6 files changed, 99 insertions(+), 9 deletions(-) create mode 100644 docs/diagrams/CaloriesAddDiagram.puml create mode 100644 docs/diagrams/DeleteLCalorieDiagram.puml create mode 100644 docs/diagrams/ListCalorieDiagram.puml create mode 100644 docs/diagrams/ViewCalorieDiagram.puml diff --git a/docs/DeveloperGuide.md b/docs/DeveloperGuide.md index c106ea1ecd..871505d5bc 100644 --- a/docs/DeveloperGuide.md +++ b/docs/DeveloperGuide.md @@ -160,10 +160,8 @@ Step 3: The execute method in the ListWorkoutCommand class that is overrides wil ### Workout view component ======= ### Calories Component ->>>>>>> b7e87bb310c62e77d8e1c09bf78b75559d011043 ======= ### Workout view component ->>>>>>> 2e3ab3d23fcecec0f76e19117a3901bf499eab81 The View component is facilitated by `Parser`,`Ui`,`WorkoutList`,`Command` and `ViewCommand`, where the user will enter a specific workout date and the number of exercises on that date will be displayed diff --git a/docs/diagrams/CaloriesAddDiagram.puml b/docs/diagrams/CaloriesAddDiagram.puml new file mode 100644 index 0000000000..91a3bb1bd6 --- /dev/null +++ b/docs/diagrams/CaloriesAddDiagram.puml @@ -0,0 +1,21 @@ +@startuml +'https://plantuml.com/sequence-diagram + +autonumber + +actor User +participant ":Duke" as Duke + +Duke -> Ui: getUserInput() +activate Duke +activate Ui +User -> Ui: User input +return User input +Duke -> Parser : processCommand(userInput) +Parser-> CalorieParser: CalorieParser(arguments) +activate CalorieParser +CalorieParser-> parseAddCalorieCommand : parseAddCalorieCommand(arguments) +activate parseAddCalorieCommand +parseAddCalorieCommand -> AddCalorieCommand:AddCalorieCommand(arguments) +activate AddCalorieCommand +@enduml \ No newline at end of file diff --git a/docs/diagrams/DeleteLCalorieDiagram.puml b/docs/diagrams/DeleteLCalorieDiagram.puml new file mode 100644 index 0000000000..fb56012ee0 --- /dev/null +++ b/docs/diagrams/DeleteLCalorieDiagram.puml @@ -0,0 +1,26 @@ +@startuml +'https://plantuml.com/sequence-diagram + +autonumber + +actor User +participant ":Duke" as Duke + +Duke -> Ui: getUserInput() +activate Duke +activate Ui +User -> Ui: User input +return User input +Duke -> Parser : processCommand(userInput) +activate Parser +Parser-> CalorieParser: CalorieParser(arguments) +activate CalorieParser +CalorieParser-> parseDeleteCalorieCommand : parseDeleteCalorieCommand(arguments) +activate parseDeleteCalorieCommand +parseDeleteCalorieCommand -> DeleteCalorieCommand:DeleteCalorieCommand(date, index) +activate ViewCalorieCommand +return "Deleted Calories" +return StringBuilder +return StringBuilder +return StringBuilder +@enduml \ No newline at end of file diff --git a/docs/diagrams/ListCalorieDiagram.puml b/docs/diagrams/ListCalorieDiagram.puml new file mode 100644 index 0000000000..42f715d3ba --- /dev/null +++ b/docs/diagrams/ListCalorieDiagram.puml @@ -0,0 +1,25 @@ +@startuml +'https://plantuml.com/sequence-diagram + +autonumber +actor User +participant ":Duke" as Duke + +Duke -> Ui: getUserInput() +activate Duke +activate Ui +User -> Ui: User input +return User input +Duke -> Parser : processCommand(userInput) +activate Parser +Parser-> CalorieParser: CalorieParser(arguments) +activate CalorieParser +CalorieParser-> parseListCalorieCommand : parseListCalorieCommand(arguments) +activate parseListCalorieCommand +parseListCalorieCommand -> ListCalorieCommand : ListCalorieCommand() +activate ListCalorieCommand +return StringBuilder +return StringBuilder +return StringBuilder +return StringBuilder +@enduml \ No newline at end of file diff --git a/docs/diagrams/ViewCalorieDiagram.puml b/docs/diagrams/ViewCalorieDiagram.puml new file mode 100644 index 0000000000..4338f2eddf --- /dev/null +++ b/docs/diagrams/ViewCalorieDiagram.puml @@ -0,0 +1,26 @@ +@startuml +'https://plantuml.com/sequence-diagram + +autonumber + +actor User +participant ":Duke" as Duke + +Duke -> Ui: getUserInput() +activate Duke +activate Ui +User -> Ui: User input +return User input +Duke -> Parser : processCommand(userInput) +activate Parser +Parser-> CalorieParser: CalorieParser(arguments) +activate CalorieParser +CalorieParser-> parseViewCalorieCommand : parseViewCalorieCommand(arguments) +activate parseViewCalorieCommand +parseViewCalorieCommand -> ViewCalorieCommand:ViewCalorieCommand(date) +activate ViewCalorieCommand +return StringBuilder +return StringBuilder +return StringBuilder +return StringBuilder +@enduml \ No newline at end of file diff --git a/src/main/java/seedu/ui/Ui.java b/src/main/java/seedu/ui/Ui.java index 992a0ff533..bd87079383 100644 --- a/src/main/java/seedu/ui/Ui.java +++ b/src/main/java/seedu/ui/Ui.java @@ -43,14 +43,8 @@ public class Ui { +System.lineSeparator() + LINE + System.lineSeparator() + "- [Add food and calories: /cadd DD/MM/YY]" + System.lineSeparator() + "- [Display total calories consumption: /clist]" + System.lineSeparator() -<<<<<<< HEAD + "- [Display calories consumed on a specific date : /cview DD/MM/YY]" + System.lineSeparator() - + "- [Delete calories record for one food: /cdelete DD/MM/YY]" + System.lineSeparator(); -======= - + "- [Display calories consumed on a specific date : /cview]" + System.lineSeparator() - + "- [Delete calories record for one food: /cdelete]" + System.lineSeparator() - + "- [Exit app: /exit]" + System.lineSeparator() + LINE; ->>>>>>> 2e3ab3d23fcecec0f76e19117a3901bf499eab81 + + "- [Delete calories record for one food: /cdelete DD/MM/YY]" + System.lineSeparator() + LINE + System.lineSeparator(); private static final String READ_FILE_ERROR_MESSAGE = "Error reading file: "; public static void showGreeting() { System.out.println(WELCOME_MESSAGE); From bf42d21e8f3634c857aa6accf12598d8df51eebc Mon Sep 17 00:00:00 2001 From: Richardtok Date: Sun, 9 Apr 2023 21:57:16 +0800 Subject: [PATCH 128/152] DG Diagrams update --- docs/diagrams/CaloriesAddDiagram.puml | 28 +++++--------- docs/diagrams/ListCalorieDiagram.puml | 55 ++++++++++++++++----------- docs/diagrams/ViewCalorieDiagram.puml | 45 +++++++++++----------- 3 files changed, 65 insertions(+), 63 deletions(-) diff --git a/docs/diagrams/CaloriesAddDiagram.puml b/docs/diagrams/CaloriesAddDiagram.puml index 91a3bb1bd6..4757c8a04d 100644 --- a/docs/diagrams/CaloriesAddDiagram.puml +++ b/docs/diagrams/CaloriesAddDiagram.puml @@ -1,21 +1,13 @@ @startuml -'https://plantuml.com/sequence-diagram - -autonumber - actor User -participant ":Duke" as Duke +participant AddCalorieCommand +participant CalorieTracker +participant FoodList -Duke -> Ui: getUserInput() -activate Duke -activate Ui -User -> Ui: User input -return User input -Duke -> Parser : processCommand(userInput) -Parser-> CalorieParser: CalorieParser(arguments) -activate CalorieParser -CalorieParser-> parseAddCalorieCommand : parseAddCalorieCommand(arguments) -activate parseAddCalorieCommand -parseAddCalorieCommand -> AddCalorieCommand:AddCalorieCommand(arguments) -activate AddCalorieCommand -@enduml \ No newline at end of file +User -> AddCalorieCommand: execute(date, foodName, foodCalories) +AddCalorieCommand -> CalorieTracker: addCalories(date, foodName, foodCalories) +CalorieTracker -> FoodList: addFood(foodName, foodCalories) +FoodList -> CalorieTracker: updateTotalCalories(date) +CalorieTracker -> AddCalorieCommand: return result +AddCalorieCommand -> User: return result +@enduml diff --git a/docs/diagrams/ListCalorieDiagram.puml b/docs/diagrams/ListCalorieDiagram.puml index 42f715d3ba..b0ba87d9c3 100644 --- a/docs/diagrams/ListCalorieDiagram.puml +++ b/docs/diagrams/ListCalorieDiagram.puml @@ -1,25 +1,36 @@ @startuml -'https://plantuml.com/sequence-diagram +title ListCaloriesCommand Sequence Diagram -autonumber actor User -participant ":Duke" as Duke - -Duke -> Ui: getUserInput() -activate Duke -activate Ui -User -> Ui: User input -return User input -Duke -> Parser : processCommand(userInput) -activate Parser -Parser-> CalorieParser: CalorieParser(arguments) -activate CalorieParser -CalorieParser-> parseListCalorieCommand : parseListCalorieCommand(arguments) -activate parseListCalorieCommand -parseListCalorieCommand -> ListCalorieCommand : ListCalorieCommand() -activate ListCalorieCommand -return StringBuilder -return StringBuilder -return StringBuilder -return StringBuilder -@enduml \ No newline at end of file + +User -> ListCaloriesCommand: execute() +activate ListCaloriesCommand + +ListCaloriesCommand -> calorieTracker: getDailyFoodConsumption() +activate calorieTracker +calorieTracker -> TreeMap: TreeMap() +activate TreeMap +calorieTracker <-- TreeMap: sortedMap +deactivate TreeMap +deactivate calorieTracker + +alt list is empty + ListCaloriesCommand --> User: "Calorie consumption list is empty!" +end + ListCaloriesCommand -> TreeMap: keySet() + activate TreeMap + + loop through daily food consumption + TreeMap -> FoodList: getTotalCalories() + activate FoodList + TreeMap <-- FoodList: totalCalories + FoodList <-- TreeMap + TreeMap --> ListCaloriesCommand: display data + deactivate FoodList + end + + + ListCaloriesCommand --> User: display data + +deactivate ListCaloriesCommand +@enduml diff --git a/docs/diagrams/ViewCalorieDiagram.puml b/docs/diagrams/ViewCalorieDiagram.puml index 4338f2eddf..e9637015d4 100644 --- a/docs/diagrams/ViewCalorieDiagram.puml +++ b/docs/diagrams/ViewCalorieDiagram.puml @@ -1,26 +1,25 @@ @startuml -'https://plantuml.com/sequence-diagram - -autonumber - actor User -participant ":Duke" as Duke +participant "ViewCaloriesCommand" as VCC +participant "calorieTracker" as CT +database "Daily Food Consumption" as DFC +participant "Food" as F +participant "DateFormatter" as DF +participant "Ui" as UI -Duke -> Ui: getUserInput() -activate Duke -activate Ui -User -> Ui: User input -return User input -Duke -> Parser : processCommand(userInput) -activate Parser -Parser-> CalorieParser: CalorieParser(arguments) -activate CalorieParser -CalorieParser-> parseViewCalorieCommand : parseViewCalorieCommand(arguments) -activate parseViewCalorieCommand -parseViewCalorieCommand -> ViewCalorieCommand:ViewCalorieCommand(date) -activate ViewCalorieCommand -return StringBuilder -return StringBuilder -return StringBuilder -return StringBuilder -@enduml \ No newline at end of file +User -> VCC : Requests to view calories for a specific date +VCC -> CT : Checks if date exists in daily food consumption +CT -> DFC : Retrieves daily food consumption for the date +DFC -> VCC : Returns daily food consumption +alt Date exists in daily food consumption + VCC -> DF : Formats the date + VCC -> F : Retrieves food list from daily food consumption + loop for each food in the list + VCC -> F : Retrieves food name and calories + VCC -> UI : Formats and displays the food name and calories + end +else Date does not exist in daily food consumption + VCC -> DF : Formats the date + VCC -> UI : Returns a message that the date does not exist in the list +end +@enduml From 9ba9ee8e389e0b2f10a1e1c93d46ce5646012cd2 Mon Sep 17 00:00:00 2001 From: ZIZI-czh <77820516+ZIZI-czh@users.noreply.github.com> Date: Mon, 10 Apr 2023 00:43:03 +0800 Subject: [PATCH 129/152] Finish UG in design part, refer to table of content --- docs/DeveloperGuide.md | 140 ++++++++++++--- docs/diagrams/ArchitectureDiagram.puml | 2 +- .../CaloriesComponentClassDiagram.puml | 70 ++++++++ .../CommandComponentClassDiagram.puml | 170 +++++++++++++++--- docs/diagrams/StorageComponentDiagram.puml | 47 +++++ .../WorkoutComponentClassDiagram.puml | 53 ++++++ docs/images/CaloriesComponentClassDiagram.png | Bin 0 -> 164814 bytes docs/images/CommandComponentClassDiagram.png | Bin 0 -> 347754 bytes docs/images/StorageComponentDiagram.png | Bin 0 -> 147061 bytes docs/images/WorkoutComponentClassDiagram.png | Bin 0 -> 128412 bytes 10 files changed, 426 insertions(+), 56 deletions(-) create mode 100644 docs/diagrams/CaloriesComponentClassDiagram.puml create mode 100644 docs/diagrams/StorageComponentDiagram.puml create mode 100644 docs/diagrams/WorkoutComponentClassDiagram.puml create mode 100644 docs/images/CaloriesComponentClassDiagram.png create mode 100644 docs/images/CommandComponentClassDiagram.png create mode 100644 docs/images/StorageComponentDiagram.png create mode 100644 docs/images/WorkoutComponentClassDiagram.png diff --git a/docs/DeveloperGuide.md b/docs/DeveloperGuide.md index 93e32da0d4..085b863dfa 100644 --- a/docs/DeveloperGuide.md +++ b/docs/DeveloperGuide.md @@ -16,13 +16,13 @@ * [Calories Component](#calories-component) * [Workout Component](#workout-component) * [Implementation](#implementation) - * [Calories Recording](#user-related-features) + * [Calories Record](#user-related-features) * [Add Command](#calories-related-features) * [View Command](#calories-related-features) * [List Command](list-command) * [Delete Command](delete-command) * [Help Command](help-command) - * [Workout Recording](workout-recording) + * [Workout Record](workout-recording) * [Start Command](start-command) * [Add Command](add-command) * [End Command](end-command) @@ -53,38 +53,48 @@ Additionally, the app will allow users to record their daily food intake to achi ### Target User Profile * Fitness enthusiasts who regularly go to the gym and perform various exercises to maintain their fitness * Individuals who want to lose weight -* People who want to build muscle strength and are looking for an easy and convenient way to record and track their progress towards their fitness goals. -* Fitness enthusiasts and athletes who are looking for an easy and convenient way to track their daily workouts and calories intake +* People who want to build muscle strength and are looking for an easy +and convenient way to record and track their progress towards their fitness goals. +* Fitness enthusiasts and athletes who are looking for an easy and convenient way to +track their daily workouts and calories intake * People who want to monitor their progress and achieve their fitness goals. ### Value Proposition Our app is a comprehensive workout and calories tracking solution that helps fitness enthusiasts -and individuals achieve their fitness goals by providing personalized recommendations based on their goals and progress. -With features like tracking of workouts and daily calories intake, our app makes it easy for users to stay motivated and track their progress towards their fitness goals. +and individuals achieve their fitness goals. +With features like tracking of workouts and daily calories' intake, +our app makes it easy for users to stay motivated and track their progress towards their fitness goals. ###### [Back to table of contents](#table-of-contents) + ## Design ### Architecture -

- -

The Architecture Diagram shown above shows the design of FITZ with its components. The following are highlighting parts * There are 3 Storages class that related to workout and calories. -They are `CalorieTrackerStorage`, `FoodDictionaryStorage` and `WorkoutListStorage` -* All the exception messages will be shown in `Ui` + They are `CalorieTrackerStorage`, `FoodDictionaryStorage` and `WorkoutListStorage` +* All the exception messages will be shown in `Ui` + +

+ +

+ -After knowing about the overall architecture of our product, the sequence below shows more specifics. ### Duke `Duke` is the class that contains main method which are responsible for `Ui`, `Storage`, `Parser`, `Exception` and `Command`. Once the program start, `storage` and `Ui` will be initialized. -`Ui` will then show the welcome message and `Storage` will load the exiting data to the system. +The following statements describe what will happen after the program start: + + * `storage` and `Ui` will be initialized. + * `Ui`: show the welcome message + * `Storage`: load the exiting data to the system. + Afterwards, it takes in user commands and continues to do so until the user inputs the exit command. Whenever a user enters a command, the Ui reads it and passes it to `Duke`, which in turn sends it to the `Parser` class for parsing. If the command is determined to be valid, it is then sent to the `Command` class for processing and returned to `Duke` for execution. @@ -92,33 +102,111 @@ If the command is determined to be valid, it is then sent to the `Command` class The following diagram illustrate how the `Duke` class work.

- +

### UI Component +Below is the class diagram for the `Ui` component, which is responsible for managing the retrieval of user input +and displaying relevant information and error messages within the application. +`getUserInput()` methods is used to get the user input +and all the methods that related to `showMessage` are used for printing out the error message or the relevant information +which will correspond to the user behaviour. +

- +

-The above is the class diagram for Ui. -The retrieval of user input and display of relevant information and error messages for the application is managed by the `Ui` class, -which represents the `Ui` component. -getUserInput() methods is used to get the user input -and all the methods that related to showMessage are used for printing out the error message or the relevant information -which will correspond to the user behaviour. +### Command Component +The picture below shows the lower level design of Command component of the software. +Generally, the commands class in `workoutcommnds` ,`caloriescommands`, and `errorcommands` package +inherit from `Command` class. Besides, `ExitCommand` also inherit from `Command` class。 + +

+ +

+ +With this understanding, it can be seen that there is an inheritance relationship between +the `Commands` class and its subclasses. The following class diagram provides more details within each class, +and it is evident that all subclasses inherit the `execute()` method from the Command class. -### Command Component

- +

-The above picture shows the lower level design of Command component of the software. -Generally, the commands class in workoutcommnds ,caloriescommands, and workoutcommands package -inherit from Command class. Besides, Exit Comamnd also inheerit from Command class +These are the further explanation for each class: +* Under caloriescommands package: + * `AddCaloriesCommand`: It is responsible for taking the food name, date and calories. + * `DeleteCaloriesCommand`: It is responsible for deleting the record for calories in one specific day + * `ListCaloriesCommand`: It is responsible to show the list of dates that had been entered by the user before. + * `ViewCaloriesCommand`: Compare to List feature, view function aims to show more detailed information in one specific day. + * `HelpCaloriesCommand`: It is responsible to show the guidance for users if they are not familiar with the calories commands. +* Under workoutcommands package: + * `StartWorkoutCommand`: This class is responsible for user to add their workout in current day. And it will take in workout name. + * `AddExerciseCommand`: This class contains the operation to add the exercise to the workouts. + * `ListWorkoutCommand`: This class contains the operation to show list of dates. + * `ViewWorkoutCommand`: This class contains the operation to view the workouts information for a specific day. + * `DeleteWorkoutCommand`: This class contains the operation to delete the workouts for one day + * `HelpWorkoutCommand`: Same as HelpCaloriesCommand, but this one show the workout commands. + * `CountSetsRepsCommand`: This class contains the operation to get the all number of sets and rps within one week. + +

+ +

+ +### Storage Component + +Fitz contains three separate storages. `CaloriesTrackerStorage` +and `FoodDictionaryStorage` are used for saving and loading calories record +while `WorkoutListStorage` is used to save and load the workouts record. The class diagram shows more details. +Once the user exit program, the date will be store to `fooddic.txt`, `calorietracker.txt`, `workoutlist.txt` respectively +and these files are under data folder. + +One thing to take note is that The difference between `FoodDictionaryStorage` and `CaloriesStorage` is that +`CaloriesTrackerStorage `will store the food based on the date they entered. +However, `FoodDictionaryStorage` will store all the food and calories that had been entered by the user before. + +

+ +

+ + + +### Calories Component + +The class diagram below illustrate how the `Calories` component interact with each others. +Basically, `Calories` Component consist of four main classes which are `Food`, `FoodList`, `FoodDictionary` +and `CaloriesTracker`. +The following are the explanation for each of them: + * `Food`: It is a class which contains the food name and its related calories. + * `FoodList`: It consists of list of `Food`. + * `FoodDictionary`: It represents a dictionary that maps food to its calories + and it also read the data from `FoodDictionaryStorage`. + This class mainly use for retrieving food and it relevant calories that have been entered. + * FoodTracker: It has the dependency on `FoodDictionary` + because it is required to check if a food item and its calories exist in dictionary + Besides, it also read the data from `CaloriesTrackerStorage` so that users can track their calories consumption for other days. + From the diagram, it shows that FoodList consist of a list of Food and FoodDictionary has a dependency of FoodList. + +

+ +

+ + +### Workout Component +The class diagram below illustrates how the Workout component interact with each others. +From the diagram, it is clear to see that the Workout consists of a list of exercises +and the WorkoutList consists of list of Workout. + +

+ +

+ +###### [Back to table of contents](#table-of-contents) + diff --git a/docs/diagrams/ArchitectureDiagram.puml b/docs/diagrams/ArchitectureDiagram.puml index 57361da732..f213f4ea79 100644 --- a/docs/diagrams/ArchitectureDiagram.puml +++ b/docs/diagrams/ArchitectureDiagram.puml @@ -25,7 +25,7 @@ Duke -up-> Exception Parser --> Command -Command --> Ui +Command -left-> Ui Exception -up> Ui Storage -up-> Calories diff --git a/docs/diagrams/CaloriesComponentClassDiagram.puml b/docs/diagrams/CaloriesComponentClassDiagram.puml new file mode 100644 index 0000000000..f34721836d --- /dev/null +++ b/docs/diagrams/CaloriesComponentClassDiagram.puml @@ -0,0 +1,70 @@ +@startuml +'https://plantuml.com/sequence-diagram +!include Style.puml + + class CalorieTracker { + - dailyFoodConsumption: HashMap + - foodDictionary: FoodDictionary + + CalorieTracker(Storage, FoodDictionary) + + getFoodList(Date): FoodList + + getDailyFoodConsumption(): HashMap + + addCalories(Date, String, int): String + } + + class Food{ + - foodName: String + - calories: int + + Food(String, int) + + getFoodName(): String + + getCalories(): int + + } + + class FoodDictionary{ + - foodCalories: HashMap + + FoodDictionary(Storage) + + addFood(String, int): void + + contains(String): boolean + + getFoodCalories(): HashMap + + } + class FoodList{ + - foods: ArrayList + - totalCalories: int + + FoodList() + + addFood(Food): void + + getFoods(): ArrayList + + getFood(int): Food + + getTotalCalories(): int + + deleteFood(int): void + +} + + class FoodDictionaryStorage{ + {static} - defaultFoodDictionaryFile: File + - foodDictionaryFile: File + - readFoodDictionaryFileLine(String, HashMap): void + - createFoodDictionaryFile(): void + + saveUserData(HashMap): void + + FoodDictionaryStorage() + } + + + class CaloriesTrackerStorage{ + {static} - defaultCalorieTrackerFile: File + + calorieTrackerFile: File + + CalorieTrackerStorage() + + getUserData(): HashMap + + readCalorieTrackerFile(String, HashMap): void + + createCalorieTrackerFile(): void + + saveUserData(HashMap): void + } + +FoodList *--> "0..*" Food: list of food +CalorieTracker *--> "0..*" FoodList: list of food for one day +FoodDictionaryStorage -[dashed]-> FoodDictionary: > loads and write data +CalorieTracker -[dashed]-> FoodDictionary: > check the food information +CaloriesTrackerStorage -[dashed]-> CalorieTracker: > loads and write data + + +@enduml \ No newline at end of file diff --git a/docs/diagrams/CommandComponentClassDiagram.puml b/docs/diagrams/CommandComponentClassDiagram.puml index 15fcc2737f..c597dfa0b5 100644 --- a/docs/diagrams/CommandComponentClassDiagram.puml +++ b/docs/diagrams/CommandComponentClassDiagram.puml @@ -1,40 +1,152 @@ @startuml !include Style.puml -interface "<>\nCommandInterface" { - +boolean executeCommand() +Package "commands"<>{ + + class Command { + # workoutList: WorkoutList + # calorieTracker: CalorieTracker + # foodDictionary: FoodDictionary + + setDate(WorkoutList, CalorieTracker, FoodDictionary): void + + execute(): String + } + + class ExitCommand { + {static} - EXIT_MESSAGE : String + {static} + isExit(Command): boolean + + execute(): String } -abstract class "{abstract}\nCommand" -class UserCommand { - - userList: UserList - - itemList: ItemList - - transactionList: TransactionList - + executeCommand(): boolean +Package "workoutcommands"<>{ + + class AddExerciseCommand{ + {static} - EXERCISE_ADDED_MESSAGE: String + {static} - NO_CURRENT_WORKOUT_MESSAGE: String + - exerciseToAdd: Exercise + + AddExerciseCommand(Exercise) + + execute(): String + } + + class CountSetsRepsCommand{ + - dayInSpecificWeekDate: Date + + CountSetsRepsCommand(Date) + + execute(): String + } + + class DeleteWorkoutCommand{ + - workoutToDeleteIndex: int + + DeleteWorkoutCommand(int) + + execute(): String + } + + class EndWorkoutCommand{ + {static} - NO_CURRENT_WORKOUT_MESSAGE: String + {static} - WORKOUT_COMPLETE_MESSAGE: String + + EndWorkoutCommand() + + execute(): String + } + + class HelpWorkoutCommand{ + + HelpWorkoutCommand() + + execute(): String + } + + class ListWorkoutCommand{ + {static} - EMPTY_LIST_MESSAGE: String + {static} - WORKOUT_LIST_HEADER: String + + ListWorkoutCommand() + + execute(): String + } + + class StartWorkoutCommand{ + {static} - ONGOING_WORKOUT_MESSAGE: String + - workoutName: String + - date: Date + + StartWorkoutCommand(Date) + + execute(): String + } + + class ViewWorkoutCommand{ + - workoutToViewIndex: int + + ViewWorkoutCommand(int) + + execute(): String + } + } -class TransactionCommand { - - userList: UserList - - itemList: ItemList - - transactionList: TransactionList - + executeCommand(): boolean +Package "caloriescommands"<>{ + + class AddCaloriesCommand{ + {static} - CALORIES_NOT_GIVEN: int + - date: Date + - foodName: String + - foodCalories: int + + AddCalorieCommand(Date, String, int) + + AddCalorieCommand(Date, String) + + execute(): String + } + + class DeleteCaloriesCommand{ + {static} + NO_INDEX: int + - date: Date + - index: int + + DeleteCalorieCommand(Date) + + DeleteCalorieCommand(Date, int) + + execute(): String + } + + class HelpCaloriesCommand{ + + execute(): String } -class ItemCommand { - - userList: UserList - - itemList: ItemList - - transactionList: TransactionList - + executeCommand(): boolean + + class ListCaloriesCommand{ + {static} - EMPTY_LIST_MESSAGE: String + {static} - HEADER: String + + ListCaloriesCommand() + + execute(): String + } + + class ViewCaloriesCommand{ + {static} - HEADER: String + {static} - FAIL_TO_FIND_DATE: String + - caloriesToViewDate: Date + + ViewCaloriesCommand(Date) + + execute(): String + } + } -class HelpCommand { - + executeCommand(): boolean +Package "errorcommands"<>{ + class IncorrectSyntaxCommand{ + {static} - ERROR_MESSAGE: String + - syntaxError: String + + IncorrectSyntaxCommand(String) + + execute(): String + } + + class InvalidCommand{ + {static} - INVALID_COMMAND_MESSAGE: String + - command: String + + InvalidCommand(String) + + execute(): String + } } -class ExitCommand { - + executeCommand(): boolean + + } -"<>\nCommandInterface" <|.. "{abstract}\nCommand" -"{abstract}\nCommand" <|-- UserCommand -"{abstract}\nCommand" <|-- TransactionCommand -"{abstract}\nCommand" <|-- ItemCommand -"{abstract}\nCommand" <|-- HelpCommand -"{abstract}\nCommand" <|-- ExitCommand +Command <|-- "AddExerciseCommand": inherits from +Command <|-- "CountSetsRepsCommand": inherits from +Command <|-- "DeleteWorkoutCommand": inherits from +Command <|-- "EndWorkoutCommand": inherits from +Command <|-up- "HelpWorkoutCommand": inherits from +Command <|-- "ListWorkoutCommand": inherits from +Command <|-- "StartWorkoutCommand": inherits from +Command <|-- "ViewWorkoutCommand": inherits from +Command <|-up- "AddCaloriesCommand": inherits from +Command <|-up- "DeleteCaloriesCommand": inherits from +Command <|-up- "HelpCaloriesCommand": inherits from +Command <|-up- "ListCaloriesCommand": inherits from +Command <|-up- "ViewCaloriesCommand": inherits from +Command <|-right- "IncorrectSyntaxCommand": inherits from +Command <|-right- "InvalidCommand": inherits from +Command <|-left- "ExitCommand": inherits from -@enduml \ No newline at end of file +@endumlml \ No newline at end of file diff --git a/docs/diagrams/StorageComponentDiagram.puml b/docs/diagrams/StorageComponentDiagram.puml new file mode 100644 index 0000000000..752e4d8b41 --- /dev/null +++ b/docs/diagrams/StorageComponentDiagram.puml @@ -0,0 +1,47 @@ +@startuml +'https://plantuml.com/sequence-diagram +!include Style.puml + + class Storage { + - workoutListStorage: WorkoutListStorage + - foodDictionaryStorage: FoodDictionaryStorage + - calorieTrackerStorage: CalorieTrackerStorage + + Storage() + + readWorkoutListFile(): ArrayList + + readFoodDictionaryFile(): HashMap + + readCalorieTrackerFile(): HashMap + + saveUserData(WorkoutList, FoodDictionary, CalorieTracker): void + } + + class CaloriesTrackerStorage{ + {static} - defaultCalorieTrackerFile: File + + calorieTrackerFile: File + + CalorieTrackerStorage() + + getUserData(): HashMap + + readCalorieTrackerFile(String, HashMap): void + + createCalorieTrackerFile(): void + + saveUserData(HashMap): void + } + class FoodDictionaryStorage{ + {static} - defaultFoodDictionaryFile: File + - foodDictionaryFile: File + - readFoodDictionaryFileLine(String, HashMap): void + - createFoodDictionaryFile(): void + + saveUserData(HashMap): void + + FoodDictionaryStorage() + } + class WorkoutListStorage{ + {static} - defaultWorkoutListFile: File + - workoutListFile: File + - readWorkoutListFileLine(String, ArrayList): void + - createWorkoutListFile(): void + + WorkoutListStorage() + + getUserData(): ArrayList + + saveUserData(ArrayList workouts): void + } + +Storage --> "1" WorkoutListStorage: workoutListFile +Storage --> "1" FoodDictionaryStorage: foodDictionaryStorage +Storage --> "1" CaloriesTrackerStorage: caloriesTrackerStorage + +@enduml \ No newline at end of file diff --git a/docs/diagrams/WorkoutComponentClassDiagram.puml b/docs/diagrams/WorkoutComponentClassDiagram.puml new file mode 100644 index 0000000000..7d0c564342 --- /dev/null +++ b/docs/diagrams/WorkoutComponentClassDiagram.puml @@ -0,0 +1,53 @@ +@startuml +'https://plantuml.com/sequence-diagram +!include Style.puml + + class Exercise{ + - name: String + - weight: String + - repsPerSet: String + - Exercise(String, String, String) + + getName(): String + + getWeight(): String + + getRepsPerSet(): String + + toString(): toString + + getSetsCount(): int + + getRepsCount(): int + } + + class Workout{ + - date: Date + - workoutName: String + - exercises: ArrayList + + Workout() + + Workout(Date, String) + + getWorkoutName(): String + + getDate(): Date + + getExercises(): ArrayList + + addExercise(Exercise): void + + toString(): String + } + + class WorkoutList{ + {static} - EMPTY_WORKOUT: String + {static} - INFORMATION: String + {static} - NO_CURRENT_WORKOUT: int + - workouts: ArrayList + - currentWorkoutIndex: int + - isInlist(Workout): boolean + + WorkoutList() + + WorkoutList(Storage) + + getCurrentWorkoutIndex(): int + + getWorkouts(): ArrayList + + countSetsReps(Date): String + + displayCountSetsReps(HashMap>, Date): String + + getWorkoutsInSpecificWeek: ArrayList + + startWorkout(Date, String) + + isEmptyList(): boolean + + getWorkout(int): Workout + + getCurrentWorkout(): Workout + } + + Workout *--> "0..*" Exercise: list of exercises + WorkoutList *--> "0..*" Workout: list of workouts +@enduml \ No newline at end of file diff --git a/docs/images/CaloriesComponentClassDiagram.png b/docs/images/CaloriesComponentClassDiagram.png new file mode 100644 index 0000000000000000000000000000000000000000..0b33cae956043bf89d14e8114c628413c57f74f1 GIT binary patch literal 164814 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⋘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 IU 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 Snk^vzOgpT3=>7q-i~j-6_Z1xg literal 0 HcmV?d00001 diff --git a/docs/images/CommandComponentClassDiagram.png b/docs/images/CommandComponentClassDiagram.png new file mode 100644 index 0000000000000000000000000000000000000000..4d2b6d64c9b388a88705021bf984e115d9d89800 GIT binary patch literal 347754 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

t#bohVundT&p?Al@+5X* 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�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 ZJ2(A1{pDYSzy87>107@S+nR^N{s+oLBDMek literal 0 HcmV?d00001 From b869285773523014cd131613ebc2889323053383 Mon Sep 17 00:00:00 2001 From: ZIZI-czh <77820516+ZIZI-czh@users.noreply.github.com> Date: Mon, 10 Apr 2023 00:49:45 +0800 Subject: [PATCH 130/152] correct the multiple command component diagram and the workoutlist diagram size --- docs/DeveloperGuide.md | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/docs/DeveloperGuide.md b/docs/DeveloperGuide.md index 085b863dfa..217349ff1a 100644 --- a/docs/DeveloperGuide.md +++ b/docs/DeveloperGuide.md @@ -133,10 +133,6 @@ the `Commands` class and its subclasses. The following class diagram provides mo and it is evident that all subclasses inherit the `execute()` method from the Command class. -

- -

- These are the further explanation for each class: * Under caloriescommands package: * `AddCaloriesCommand`: It is responsible for taking the food name, date and calories. @@ -202,7 +198,7 @@ From the diagram, it is clear to see that the Workout consists of a list of exer and the WorkoutList consists of list of Workout.

- +

###### [Back to table of contents](#table-of-contents) From 95f62902d8eade0f2df8e37df13be674ccfd54d3 Mon Sep 17 00:00:00 2001 From: ZIZI-czh <77820516+ZIZI-czh@users.noreply.github.com> Date: Mon, 10 Apr 2023 05:05:24 +0800 Subject: [PATCH 131/152] Update the Junit test for all the commands in workouts and duke class, exitCommand and ParserTest --- src/main/java/seedu/Duke.java | 5 +- .../seedu/calorietracker/CalorieTracker.java | 2 - .../caloriecommands/AddCalorieCommand.java | 3 +- .../workoutcommands/DeleteWorkoutCommand.java | 7 + .../workoutcommands/ListWorkoutCommand.java | 16 +- .../workoutcommands/StartWorkoutCommand.java | 1 - .../workoutcommands/ViewWorkoutCommand.java | 8 + .../seedu/storage/CalorieTrackerStorage.java | 2 +- .../seedu/storage/FoodDictionaryStorage.java | 47 +++++- .../seedu/storage/WorkoutListStorage.java | 43 ++++- src/main/java/seedu/workout/Workout.java | 2 - src/main/java/seedu/workout/WorkoutList.java | 13 +- src/test/java/seedu/DukeTest.java | 38 ++++- .../java/seedu/commands/ExitCommandTest.java | 24 +++ .../calorietracker/CaloriesRecorderTest.java | 44 ----- .../commands/calorietracker/CaloriesTest.java | 60 ------- .../workoutcommands/DeleteCommandTest.java | 52 ------ .../DeleteWorkoutCommandTest.java | 37 +++++ .../ListWorkoutCommandTest.java | 68 +++++--- .../StartWorkoutCommandTest.java | 26 +-- .../ViewWorkoutCommandTest.java | 59 +++++++ src/test/java/seedu/parser/ParserTest.java | 8 +- .../java/seedu/workout/WorkoutListTest.java | 157 +++++++++++------- src/test/java/seedu/workout/WorkoutTest.java | 60 ++++--- .../java/seedu/workout/WorkoutViewTest.java | 68 -------- 25 files changed, 472 insertions(+), 378 deletions(-) create mode 100644 src/test/java/seedu/commands/ExitCommandTest.java delete mode 100644 src/test/java/seedu/commands/calorietracker/CaloriesRecorderTest.java delete mode 100644 src/test/java/seedu/commands/calorietracker/CaloriesTest.java delete mode 100644 src/test/java/seedu/commands/workoutcommands/DeleteCommandTest.java create mode 100644 src/test/java/seedu/commands/workoutcommands/DeleteWorkoutCommandTest.java create mode 100644 src/test/java/seedu/commands/workoutcommands/ViewWorkoutCommandTest.java delete mode 100644 src/test/java/seedu/workout/WorkoutViewTest.java diff --git a/src/main/java/seedu/Duke.java b/src/main/java/seedu/Duke.java index d85fc32d38..fe6e745733 100644 --- a/src/main/java/seedu/Duke.java +++ b/src/main/java/seedu/Duke.java @@ -12,6 +12,7 @@ import seedu.workout.WorkoutList; //@@author calebcjl + /** * Main entry to the program */ @@ -21,8 +22,7 @@ public class Duke { private FoodDictionary foodDictionary; private Storage storage; - - public Duke(){ + public Duke() { } public static void main(String[] args) { @@ -42,6 +42,7 @@ private void run() { } //@@author calebcjl + /** * Continuously receives and execute commands entered by user. * Stops when user enters exit command. diff --git a/src/main/java/seedu/calorietracker/CalorieTracker.java b/src/main/java/seedu/calorietracker/CalorieTracker.java index 6be681d493..1027f0c594 100644 --- a/src/main/java/seedu/calorietracker/CalorieTracker.java +++ b/src/main/java/seedu/calorietracker/CalorieTracker.java @@ -51,8 +51,6 @@ public FoodList getFoodList(Date date) { return dailyFoodConsumption.get(date); } - //@@author ZIZI-czh - public HashMap getDailyFoodConsumption() { return dailyFoodConsumption; } diff --git a/src/main/java/seedu/commands/caloriecommands/AddCalorieCommand.java b/src/main/java/seedu/commands/caloriecommands/AddCalorieCommand.java index 1f35a3355b..cf50505eba 100644 --- a/src/main/java/seedu/commands/caloriecommands/AddCalorieCommand.java +++ b/src/main/java/seedu/commands/caloriecommands/AddCalorieCommand.java @@ -15,7 +15,7 @@ public class AddCalorieCommand extends Command { private final String foodName; private final int foodCalories; - //@@author ZIZI-czh + /** * Constructs an instance of AddCalorieCommand with the specified date, food name, and calorie intake. * @@ -29,7 +29,6 @@ public AddCalorieCommand(Date date, String foodName, int foodCalories) { this.foodCalories = foodCalories; } - //@@author ZIZI-czh /** * Constructs an instance of AddCalorieCommand with the specified date and food name, with the calorie intake diff --git a/src/main/java/seedu/commands/workoutcommands/DeleteWorkoutCommand.java b/src/main/java/seedu/commands/workoutcommands/DeleteWorkoutCommand.java index 39b2d4cc7c..d8f56de601 100644 --- a/src/main/java/seedu/commands/workoutcommands/DeleteWorkoutCommand.java +++ b/src/main/java/seedu/commands/workoutcommands/DeleteWorkoutCommand.java @@ -3,6 +3,7 @@ import seedu.commands.Command; import seedu.exceptions.InvalidArgumentException; import seedu.parser.DateFormatter; +import seedu.workout.WorkoutList; import java.util.Date; @@ -23,6 +24,12 @@ public DeleteWorkoutCommand(int workoutToDeleteIndex) { this.workoutToDeleteIndex = workoutToDeleteIndex; } + //This one is for JUnit Test + public DeleteWorkoutCommand(WorkoutList workoutListParameter, int workoutToDeleteIndex) { + this.workoutToDeleteIndex = workoutToDeleteIndex; + workoutList = workoutListParameter; + } + //@@author calebcjl @Override public String execute() throws InvalidArgumentException { diff --git a/src/main/java/seedu/commands/workoutcommands/ListWorkoutCommand.java b/src/main/java/seedu/commands/workoutcommands/ListWorkoutCommand.java index 23585efdaf..8560b69b2e 100644 --- a/src/main/java/seedu/commands/workoutcommands/ListWorkoutCommand.java +++ b/src/main/java/seedu/commands/workoutcommands/ListWorkoutCommand.java @@ -4,12 +4,14 @@ import seedu.parser.DateFormatter; import seedu.ui.Ui; import seedu.workout.Workout; +import seedu.workout.WorkoutList; + +//@@ author ZIZI-czh /** * This is the class for executing the list command */ -//@@ author ZIZI-czh public class ListWorkoutCommand extends Command { private static final String EMPTY_LIST_MESSAGE = "Workout list is empty"; @@ -20,9 +22,19 @@ public class ListWorkoutCommand extends Command { public ListWorkoutCommand() { } - //@@author calebcjl + public ListWorkoutCommand(WorkoutList workoutListParameter) { + workoutList = workoutListParameter; + } + + //@@author ZIZI-czh + /** + * Executes the command to display a list of all the workouts in the workout list. + * If the workout list is empty, returns a message indicating that the list is empty. + * @return a string representation of the list of workouts, including their respective dates and names + */ @Override public String execute() { + if (workoutList.isEmptyList()) { return EMPTY_LIST_MESSAGE; } diff --git a/src/main/java/seedu/commands/workoutcommands/StartWorkoutCommand.java b/src/main/java/seedu/commands/workoutcommands/StartWorkoutCommand.java index 5549399c38..b6b2416089 100644 --- a/src/main/java/seedu/commands/workoutcommands/StartWorkoutCommand.java +++ b/src/main/java/seedu/commands/workoutcommands/StartWorkoutCommand.java @@ -18,7 +18,6 @@ public class StartWorkoutCommand extends Command { private final Date date; - //@@author ZIZI-czh /** * Represents a command to start a new workout with the specified date and workout name. * diff --git a/src/main/java/seedu/commands/workoutcommands/ViewWorkoutCommand.java b/src/main/java/seedu/commands/workoutcommands/ViewWorkoutCommand.java index aeb2cd08ba..0dc11e8d40 100644 --- a/src/main/java/seedu/commands/workoutcommands/ViewWorkoutCommand.java +++ b/src/main/java/seedu/commands/workoutcommands/ViewWorkoutCommand.java @@ -3,6 +3,7 @@ import seedu.commands.Command; import seedu.exceptions.InvalidArgumentException; import seedu.workout.Workout; +import seedu.workout.WorkoutList; //@@ author ZIZI-czh @@ -23,6 +24,12 @@ public ViewWorkoutCommand(int workoutToViewIndex) { } + //@@author ZIZI-czh + //used for Junit Test + public ViewWorkoutCommand(WorkoutList workoutListParamter, int workoutToViewIndex) { + this.workoutToViewIndex = workoutToViewIndex; + workoutList = workoutListParamter; + } //@@ author ZIZI-czh /** * Executes the command to view a specific workout and returns its string representation. @@ -30,6 +37,7 @@ public ViewWorkoutCommand(int workoutToViewIndex) { * @return a string representing the workout to view * @throws InvalidArgumentException if the workout index is invalid */ + @Override public String execute() throws InvalidArgumentException { if (workoutToViewIndex >= workoutList.getWorkouts().size()) { throw new InvalidArgumentException("Index cannot be more than " + workoutList.getWorkouts().size()); diff --git a/src/main/java/seedu/storage/CalorieTrackerStorage.java b/src/main/java/seedu/storage/CalorieTrackerStorage.java index 7faa42079a..e261c31dbc 100644 --- a/src/main/java/seedu/storage/CalorieTrackerStorage.java +++ b/src/main/java/seedu/storage/CalorieTrackerStorage.java @@ -67,7 +67,7 @@ private void createCalorieTrackerFile() { } } - void saveUserData(HashMap dailyFoodConsumption) throws IOException { + public void saveUserData(HashMap dailyFoodConsumption) throws IOException { FileWriter fileWriter = new FileWriter(calorieTrackerFile); for (Date date : dailyFoodConsumption.keySet()) { fileWriter.write(DateFormatter.dateToString(date) + ','); diff --git a/src/main/java/seedu/storage/FoodDictionaryStorage.java b/src/main/java/seedu/storage/FoodDictionaryStorage.java index a81dc6036d..2cd6aff135 100644 --- a/src/main/java/seedu/storage/FoodDictionaryStorage.java +++ b/src/main/java/seedu/storage/FoodDictionaryStorage.java @@ -9,18 +9,32 @@ import java.util.HashMap; import java.util.Scanner; -//@@author calebcjl +//@@author ZIZI-czh + /** * Represents a storage for FoodDictionary. */ public class FoodDictionaryStorage { private static final File defaultFoodDictionaryFile = new File("data/fooddict.txt"); private final File foodDictionaryFile; + public FoodDictionaryStorage() { foodDictionaryFile = defaultFoodDictionaryFile; } - HashMap getUserData() { + + //@@author ZIZI-czh + + /** + * Retrieves the saved user food dictionary data from a file and returns it as a HashMap. + * If the file exists, reads the file line by line and adds the key-value pairs to the HashMap. + * If the file does not exist, creates a new file and displays a message to the user. + * If an error occurs while reading the file, displays an error message to the user. + * After retrieving the data, displays a success message to the user. + * + * @return A HashMap representing the saved user food dictionary data. + */ + public HashMap getUserData() { HashMap savedFoodDictionary = new HashMap<>(); if (foodDictionaryFile.exists()) { try { @@ -40,11 +54,28 @@ HashMap getUserData() { return savedFoodDictionary; } + //@@author ZIZI-czh + + /** + * Reads a single line from the food dictionary file and extracts the name and calorie count of a food item. + * The extracted data is added to the provided hashmap of saved food items. + * + * @param line the line to read and extract data from + * @param savedFoodDictionary the hashmap to add the extracted food item data to + */ private void readFoodDictionaryFileLine(String line, HashMap savedFoodDictionary) { String[] data = line.split(":"); savedFoodDictionary.put(data[0], Integer.valueOf(data[1])); } + //@@author ZIZI-czh + + /** + * Creates a new file for the food dictionary if it doesn't exist. + * If the file already exists, does nothing. + * If the creation is successful, displays a success message to the user. + * If the creation fails, displays an error message to the user. + */ private void createFoodDictionaryFile() { try { if (foodDictionaryFile.createNewFile()) { @@ -55,7 +86,17 @@ private void createFoodDictionaryFile() { } } - void saveUserData(HashMap foodCalories) throws IOException { + //@@author ZIZI-czh + + /** + * Saves the given HashMap of food names and calorie counts to the food dictionary file. Each line of the file + * contains a food name followed by a colon and the corresponding calorie count. The file is created if it doesn't + * exist. If the file already exists, it is overwritten with the new data. + * + * @param foodCalories a HashMap that maps food names to their respective calorie counts + * @throws IOException if there is an error writing to the file + */ + public void saveUserData(HashMap foodCalories) throws IOException { FileWriter fileWriter = new FileWriter(foodDictionaryFile); for (String foodName : foodCalories.keySet()) { fileWriter.write(foodName + ':' + foodCalories.get(foodName) + System.lineSeparator()); diff --git a/src/main/java/seedu/storage/WorkoutListStorage.java b/src/main/java/seedu/storage/WorkoutListStorage.java index 9991e2b843..e84aaddc23 100644 --- a/src/main/java/seedu/storage/WorkoutListStorage.java +++ b/src/main/java/seedu/storage/WorkoutListStorage.java @@ -13,7 +13,7 @@ import java.util.ArrayList; import java.util.Scanner; -//@@author calebcjl +//@@author ZIZI-czh /** * Represents a storage for WorkoutList. */ @@ -21,10 +21,22 @@ public class WorkoutListStorage { private static final File defaultWorkoutListFile = new File("data/workoutlist.txt"); private final File workoutListFile; + + public WorkoutListStorage() { workoutListFile = defaultWorkoutListFile; } + + //@@author ZIZI-czh + /** + * Retrieves the saved workout data from the workout list file and returns an ArrayList of Workout objects. + * If the workout list file does not exist, the method shows a message to the user and creates the file. + * If there is an error reading the file, the method shows an error message to the user. + * The method also shows a successful message to the user indicating that the workout data has been loaded. + * + * @return An ArrayList of Workout objects containing the saved workout data. + */ public ArrayList getUserData() { ArrayList savedWorkoutList = new ArrayList<>(); if (workoutListFile.exists()) { @@ -45,6 +57,15 @@ public ArrayList getUserData() { return savedWorkoutList; } + //@@author ZIZI-czh + /** + * Reads a single line from the workout list file and creates a Workout object from the data. + * The Workout object is then added to the given ArrayList of Workout objects. + * + * @param line A String representing a single line of data from the workout list file. + * @param savedWorkoutList An ArrayList of Workout objects where the resulting Workout object will be added. + * @throws ParseException If there is an error parsing the date from the line of data. + */ private void readWorkoutListFileLine(String line, ArrayList savedWorkoutList) throws ParseException { String[] data = line.split(","); Workout workout = new Workout(DateFormatter.stringToDate(data[0]), data[1]); @@ -55,6 +76,16 @@ private void readWorkoutListFileLine(String line, ArrayList savedWorkou savedWorkoutList.add(workout); } + + //@@author ZIZI-czh + /** + * Creates a new workout list file and displays appropriate messages to the user based on + * whether the directory and file were created successfully or not. + * If the directory was created successfully, a success message is displayed to the user. + * If the directory was not created successfully, an error message is displayed to the user. + * If the file was created successfully, a success message is displayed to the user. + * If the file was not created successfully, an error message is displayed to the user. + */ private void createWorkoutListFile() { try { if (workoutListFile.getParentFile().mkdirs()) { @@ -70,7 +101,15 @@ private void createWorkoutListFile() { } } - void saveUserData(ArrayList workouts) throws IOException { + + //@@author ZIZI-czh + /** + * Saves the list of workouts to the workout list file. + * + * @param workouts the list of workouts to be saved + * @throws IOException if an I/O error occurs while writing to the file + */ + public void saveUserData(ArrayList workouts) throws IOException { FileWriter fileWriter = new FileWriter(workoutListFile); for (Workout workout : workouts) { fileWriter.write(DateFormatter.dateToString(workout.getDate()) + ',' diff --git a/src/main/java/seedu/workout/Workout.java b/src/main/java/seedu/workout/Workout.java index 7ccd36c47a..91907cf411 100644 --- a/src/main/java/seedu/workout/Workout.java +++ b/src/main/java/seedu/workout/Workout.java @@ -2,8 +2,6 @@ import seedu.parser.DateFormatter; import seedu.ui.Ui; - -import java.time.LocalDateTime; import java.util.ArrayList; import java.util.Date; diff --git a/src/main/java/seedu/workout/WorkoutList.java b/src/main/java/seedu/workout/WorkoutList.java index afd514f3a3..75d28086fd 100644 --- a/src/main/java/seedu/workout/WorkoutList.java +++ b/src/main/java/seedu/workout/WorkoutList.java @@ -28,6 +28,15 @@ public WorkoutList(Storage storage) { currentWorkoutIndex = NO_CURRENT_WORKOUT; } + + //@@author ZIZI-czh + //this method is used for JunitTest + public WorkoutList(ArrayList workouts) { + this.workouts = workouts; + currentWorkoutIndex = NO_CURRENT_WORKOUT; + } + + public int getCurrentWorkoutIndex() { return currentWorkoutIndex; } @@ -77,7 +86,7 @@ public static String displayCountSetsReps(HashMap> di .append(exerciseName) .append(", sets: ") .append(distinctExercises.get(exerciseName).get(0)) - .append(", rps:") + .append(", rps: ") .append(distinctExercises.get(exerciseName).get(1)) .append(System.lineSeparator()); } @@ -85,7 +94,7 @@ public static String displayCountSetsReps(HashMap> di } //@@ author guillaume-grn - ArrayList getWorkoutsInSpecificWeek(Date dayInSpecificWeekDate) { + public ArrayList getWorkoutsInSpecificWeek(Date dayInSpecificWeekDate) { ArrayList workoutsInSpecificWeek = new ArrayList<>(); Calendar calendar = Calendar.getInstance(); calendar.setTime(dayInSpecificWeekDate); diff --git a/src/test/java/seedu/DukeTest.java b/src/test/java/seedu/DukeTest.java index 1cc7276c9e..a94f013f2a 100644 --- a/src/test/java/seedu/DukeTest.java +++ b/src/test/java/seedu/DukeTest.java @@ -1,13 +1,43 @@ package seedu; +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertTrue; +import static org.junit.jupiter.api.Assertions.fail; + +import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; +import seedu.commands.ExitCommand; +import seedu.ui.Ui; -import static org.junit.jupiter.api.Assertions.assertTrue; +public class DukeTest { + private Duke duke; + + @BeforeEach + public void setUp() { + duke = new Duke(); + } + + @Test + public void testDukeConstructor() { + try { + Duke.class.getDeclaredConstructor().newInstance(); + } catch (Exception e) { + fail("Failed to instantiate Duke object"); + } + } + + @Test + public void testIsExit() { + assertTrue(ExitCommand.isExit(new ExitCommand())); + } -class DukeTest { @Test - public void sampleTest() { - assertTrue(true); + public void testExitCommand() { + String expected = "Thank you, hope you had a great workout!!!" + + System.lineSeparator() + + Ui.line(); + String actual = new ExitCommand().execute(); + assertEquals(expected, actual); } } diff --git a/src/test/java/seedu/commands/ExitCommandTest.java b/src/test/java/seedu/commands/ExitCommandTest.java new file mode 100644 index 0000000000..4a0283f877 --- /dev/null +++ b/src/test/java/seedu/commands/ExitCommandTest.java @@ -0,0 +1,24 @@ +package seedu.commands; + +import org.junit.jupiter.api.Test; +import static org.junit.jupiter.api.Assertions.assertTrue; +import static org.junit.jupiter.api.Assertions.assertEquals; + + +//@@author ZIZI-czh +public class ExitCommandTest { + @Test + public void testIsExit() { + ExitCommand exitCommand = new ExitCommand(); + assertTrue(ExitCommand.isExit(exitCommand)); + } + + @Test + public void testExecute() { + ExitCommand exitCommand = new ExitCommand(); + String expected = "Thank you, hope you had a great workout!!!" + + System.lineSeparator() + "======================================="; + assertEquals(expected, exitCommand.execute()); + } + +} diff --git a/src/test/java/seedu/commands/calorietracker/CaloriesRecorderTest.java b/src/test/java/seedu/commands/calorietracker/CaloriesRecorderTest.java deleted file mode 100644 index a2d4d21a8f..0000000000 --- a/src/test/java/seedu/commands/calorietracker/CaloriesRecorderTest.java +++ /dev/null @@ -1,44 +0,0 @@ -/* -package seedu.commands.calorietracker; - -import org.junit.jupiter.api.Assertions; -import org.junit.jupiter.api.BeforeEach; -import org.junit.jupiter.api.Test; -import seedu.calorietracker.Calories; -import seedu.calorietracker.CaloriesRecorder; - -import java.util.Date; -import java.util.HashMap; - -public class CaloriesRecorderTest { - - private CaloriesRecorder caloriesRecorder; - private Calories calories; - - @BeforeEach - public void setUp() { - caloriesRecorder = new CaloriesRecorder(); - calories = new Calories(new Date()); - } - - @Test - public void testAddFoodCalories() { - calories.addFoodCalories("Apple", 50); - calories.addFoodCalories("Banana", 100); - caloriesRecorder.addFoodCalories(new Date(), calories); - HashMap calorieMap = caloriesRecorder.getCalorieMap(); - Assertions.assertEquals(1, calorieMap.size()); - Assertions.assertTrue(calorieMap.containsKey(new Date())); - Assertions.assertEquals(calories, calorieMap.get(new Date())); - } - - @Test - public void testGetCalories() { - calories.addFoodCalories("Apple", 50); - calories.addFoodCalories("Banana", 100); - caloriesRecorder.setCalories(calories); - Assertions.assertEquals(calories, caloriesRecorder.getCalories()); - } - -} -*/ diff --git a/src/test/java/seedu/commands/calorietracker/CaloriesTest.java b/src/test/java/seedu/commands/calorietracker/CaloriesTest.java deleted file mode 100644 index 63ff157baa..0000000000 --- a/src/test/java/seedu/commands/calorietracker/CaloriesTest.java +++ /dev/null @@ -1,60 +0,0 @@ -/* -package seedu.commands.calorietracker; - -import org.junit.jupiter.api.Assertions; -import org.junit.jupiter.api.BeforeEach; -import org.junit.jupiter.api.Test; -import seedu.calorietracker.Calories; - -import java.util.Date; -import java.util.HashMap; - -public class CaloriesTest { - - private Calories calories; - - @BeforeEach - public void setUp() { - calories = new Calories(new Date()); - } - - @Test - public void testAddFoodCalories() { - calories.addFoodCalories("Apple", 50); - HashMap singleFoodCalories = calories.getSingleFoodCalories(); - Assertions.assertEquals(1, singleFoodCalories.size()); - Assertions.assertTrue(singleFoodCalories.containsKey("Apple")); - Assertions.assertEquals(50, singleFoodCalories.get("Apple")); - - calories.addFoodCalories("Apple", 100); - Assertions.assertEquals(1, singleFoodCalories.size()); - Assertions.assertEquals(150, singleFoodCalories.get("Apple")); - - calories.addFoodCalories("Banana", 200); - Assertions.assertEquals(2, singleFoodCalories.size()); - Assertions.assertTrue(singleFoodCalories.containsKey("Banana")); - Assertions.assertEquals(200, singleFoodCalories.get("Banana")); - } - - @Test - public void testCheckFood() { - calories.addFoodCalories("Apple", 50); - Assertions.assertTrue(calories.checkFood("Apple")); - Assertions.assertFalse(calories.checkFood("Banana")); - } - - @Test - public void testAddToCurrentFoodCalories() { - calories.addFoodCalories("Apple", 50); - calories.addToCurrentFoodCalories("Apple", 100); - HashMap singleFoodCalories = calories.getSingleFoodCalories(); - Assertions.assertEquals(1, singleFoodCalories.size()); - Assertions.assertEquals(150, singleFoodCalories.get("Apple")); - - calories.addToCurrentFoodCalories("Banana", 200); - Assertions.assertEquals(1, singleFoodCalories.size()); - Assertions.assertFalse(singleFoodCalories.containsKey("Banana")); - } -} - -*/ diff --git a/src/test/java/seedu/commands/workoutcommands/DeleteCommandTest.java b/src/test/java/seedu/commands/workoutcommands/DeleteCommandTest.java deleted file mode 100644 index bcd80e9316..0000000000 --- a/src/test/java/seedu/commands/workoutcommands/DeleteCommandTest.java +++ /dev/null @@ -1,52 +0,0 @@ -package seedu.commands.workoutcommands; - -import org.junit.jupiter.api.Test; -import seedu.exceptions.InvalidArgumentException; -import seedu.parser.DateFormatter; -import seedu.workout.Day; -import seedu.workout.Workout; -import seedu.workout.WorkoutList; - -import java.text.ParseException; -import java.util.Date; -import java.util.HashMap; - -import static org.junit.Assert.assertThrows; -import static org.junit.jupiter.api.Assertions.assertEquals; -import static org.testng.AssertJUnit.assertFalse; -import static org.testng.AssertJUnit.assertTrue; - -public class DeleteCommandTest { - private WorkoutList workoutList; - - @Test - public void testDeleteWorkoutCommand() throws InvalidArgumentException { - // Create a workout list with three workouts - WorkoutList workoutList = new WorkoutList(); - Workout workout1 = new Workout(new Date(), "Workout 1"); - - Workout workout2 = new Workout(new Date(), "Workout 2"); - Workout workout3 = new Workout(new Date(), "Workout 3"); - workoutList.startWorkout(new Date()); - workoutList.addWorkout(workout2); - workoutList.addWorkout(workout3); - - // Create the DeleteWorkoutCommand and execute it for the second workout - int indexToDelete = 1; // delete the second workout (workout2) - DeleteWorkoutCommand deleteCommand = new DeleteWorkoutCommand(indexToDelete); - String result = deleteCommand.execute(); - - // Check that the workout was deleted correctly - assertEquals("Deleted Workout 2 on " + DateFormatter.dateToString(workout2.getDate()) + ".", result); - assertEquals(2, workoutList.getWorkouts().size()); - assertEquals(workout1, workoutList.getWorkouts().get(0)); - assertEquals(workout3, workoutList.getWorkouts().get(1)); - - // Try to delete a workout with an invalid index (out of bounds) - int invalidIndex = 5; // index that is greater than the number of workouts in the list - DeleteWorkoutCommand invalidDeleteCommand = new DeleteWorkoutCommand(invalidIndex); - assertThrows(InvalidArgumentException.class, () -> invalidDeleteCommand.execute()); - } -} - - diff --git a/src/test/java/seedu/commands/workoutcommands/DeleteWorkoutCommandTest.java b/src/test/java/seedu/commands/workoutcommands/DeleteWorkoutCommandTest.java new file mode 100644 index 0000000000..9b5e1266f0 --- /dev/null +++ b/src/test/java/seedu/commands/workoutcommands/DeleteWorkoutCommandTest.java @@ -0,0 +1,37 @@ +package seedu.commands.workoutcommands; + +import org.junit.jupiter.api.Test; +import seedu.exceptions.InvalidArgumentException; +import seedu.parser.DateFormatter; +import seedu.workout.Exercise; +import seedu.workout.Workout; +import seedu.workout.WorkoutList; + +import java.text.ParseException; +import java.util.ArrayList; +import java.util.Date; +import static org.junit.jupiter.api.Assertions.assertEquals; + +//@@author ZIZI-czh +public class DeleteWorkoutCommandTest { + + @Test + public void testDeleteWorkoutCommand() throws InvalidArgumentException, ParseException { + ArrayList workouts = new ArrayList<>(); + Date date = DateFormatter.stringToDate("01/01/22"); + Workout workout = new Workout(date, "Workout 1"); + Exercise exercise1 = new Exercise("Push-ups", "20kg", "3 5 5"); + Exercise exercise2 = new Exercise("Sit-ups", "5kg", "3 10"); + workout.addExercise(exercise1); + workout.addExercise(exercise2); + workouts.add(workout); + WorkoutList workoutList = new WorkoutList(workouts); + DeleteWorkoutCommand deleteWorkoutCommand = new DeleteWorkoutCommand(workoutList, 0); + String expectedOutput = "Deleted Workout 1 on 01/01/22."; + assertEquals(expectedOutput, deleteWorkoutCommand.execute()); + } +} + + + + diff --git a/src/test/java/seedu/commands/workoutcommands/ListWorkoutCommandTest.java b/src/test/java/seedu/commands/workoutcommands/ListWorkoutCommandTest.java index 75639a2046..d2393815b2 100644 --- a/src/test/java/seedu/commands/workoutcommands/ListWorkoutCommandTest.java +++ b/src/test/java/seedu/commands/workoutcommands/ListWorkoutCommandTest.java @@ -1,46 +1,64 @@ package seedu.commands.workoutcommands; +import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; +import seedu.exceptions.InvalidArgumentException; import seedu.parser.DateFormatter; -import seedu.workout.Day; +import seedu.workout.Exercise; +import seedu.workout.Workout; import seedu.workout.WorkoutList; - +import java.io.ByteArrayOutputStream; +import java.io.PrintStream; import java.text.ParseException; +import java.text.SimpleDateFormat; +import java.util.ArrayList; import java.util.Date; - import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertFalse; +//@@author ZIZI-czh public class ListWorkoutCommandTest { - @Test - public void testExecute_withEmptyWorkoutList_returnsEmptyDayListMessage() { + private final ByteArrayOutputStream output = new ByteArrayOutputStream(); + private final PrintStream originalOut = System.out; + private final SimpleDateFormat formatter = new SimpleDateFormat("dd/MM/yyyy HHmm"); + private ListWorkoutCommand listWorkoutCommand; + + @BeforeEach + public void setUp() { + System.setOut(new PrintStream(output)); WorkoutList workoutList = new WorkoutList(); - ListWorkoutCommand listWorkoutCommand = new ListWorkoutCommand(workoutList); - String expectedOutput = "No days have been found in the list"; - String actualOutput = listWorkoutCommand.execute(); - assertEquals(expectedOutput, actualOutput); + listWorkoutCommand = new ListWorkoutCommand(workoutList); } @Test - public void testExecute_withNonEmptyWorkoutList_returnsListOfDates() throws ParseException { - WorkoutList workoutList = new WorkoutList(); - String stringDate1 = "01/11/22"; - // String stringDate2 = "02/11/22"; - Date date1 = DateFormatter.stringToDate(stringDate1); - // Date date2 = DateFormatter.stringToDate(stringDate2); - Day day1 = new Day(date1); - // Day day2 = new Day(date2); - workoutList.addWorkoutToList(date1, day1); - //workoutList.addWorkoutToList(date2, day2); - ListWorkoutCommand listWorkoutCommand = new ListWorkoutCommand(workoutList); + public void execute_emptyList() { + String expectedOutput = "Workout list is empty"; + assertEquals(expectedOutput, listWorkoutCommand.execute()); + } + + @Test + public void execute_oneWorkoutInList_listOfOneWorkout() throws ParseException, InvalidArgumentException { + ArrayList workouts = new ArrayList<>(); + Date date = DateFormatter.stringToDate("01/01/2022"); + Workout workout = new Workout(date, "Workout 1"); + Exercise exercise1 = new Exercise("Push-ups", "20kg", "3 5 5"); + Exercise exercise2 = new Exercise("Sit-ups", "5kg", "3 10"); + workout.addExercise(exercise1); + workout.addExercise(exercise2); + workouts.add(workout); + WorkoutList workoutList = new WorkoutList(workouts); + listWorkoutCommand = new ListWorkoutCommand(workoutList); + assertFalse(workoutList.isEmptyList()); String expectedOutput = "Here is the list of dates of your workouts:" + System.lineSeparator() - + DateFormatter.dateToString(date1) + System.lineSeparator() - //+ DateFormatter.dateToString(date2) + System.lineSeparator() - + "----------------------------------------"; - String actualOutput = listWorkoutCommand.execute(); - assertEquals(expectedOutput, actualOutput); + + "1. 01/01/22 Workout 1" + System.lineSeparator() + + "======================================="; + assertEquals(expectedOutput, listWorkoutCommand.execute()); } + + + } diff --git a/src/test/java/seedu/commands/workoutcommands/StartWorkoutCommandTest.java b/src/test/java/seedu/commands/workoutcommands/StartWorkoutCommandTest.java index 12466392c9..f8939c1f70 100644 --- a/src/test/java/seedu/commands/workoutcommands/StartWorkoutCommandTest.java +++ b/src/test/java/seedu/commands/workoutcommands/StartWorkoutCommandTest.java @@ -1,15 +1,17 @@ +package seedu.commands.workoutcommands; + import org.junit.jupiter.api.Test; import seedu.exceptions.InvalidArgumentException; import seedu.workout.Workout; import seedu.workout.WorkoutList; -import java.util.Calendar; import java.util.Date; -import java.util.GregorianCalendar; import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertThrows; + +//@@author ZIZI-czh public class StartWorkoutCommandTest { private static final String DEFAULT_WORKOUT_NAME = "Test workout"; private WorkoutList workoutList; @@ -52,23 +54,5 @@ public void startWorkout_workoutAlreadyExists_exceptionThrown() { assertThrows(InvalidArgumentException.class, () -> workoutList.startWorkout(today, workoutName)); } - @Test - public void startWorkout_nullDate_exceptionThrown() { - // Set up - workoutList = new WorkoutList(); - String workoutName = DEFAULT_WORKOUT_NAME; - - // Exercise and assert - assertThrows(NullPointerException.class, () -> workoutList.startWorkout(null, workoutName)); - } - - @Test - public void startWorkout_nullWorkoutName_exceptionThrown() { - // Set up - workoutList = new WorkoutList(); - Date today = new Date(); - - // Exercise and assert - assertThrows(NullPointerException.class, () -> workoutList.startWorkout(today, null)); - } } + diff --git a/src/test/java/seedu/commands/workoutcommands/ViewWorkoutCommandTest.java b/src/test/java/seedu/commands/workoutcommands/ViewWorkoutCommandTest.java new file mode 100644 index 0000000000..12c7391e9c --- /dev/null +++ b/src/test/java/seedu/commands/workoutcommands/ViewWorkoutCommandTest.java @@ -0,0 +1,59 @@ +package seedu.commands.workoutcommands; + + +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; +import seedu.exceptions.InvalidArgumentException; +import seedu.parser.DateFormatter; +import seedu.workout.Exercise; +import seedu.workout.Workout; +import seedu.workout.WorkoutList; + +import java.text.ParseException; +import java.util.ArrayList; +import java.util.Date; + +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertThrows; + + +//@@author ZIZI-czh +public class ViewWorkoutCommandTest { + private WorkoutList workoutList; + private ViewWorkoutCommand viewWorkoutCommand; + + @BeforeEach + public void setUp() { + workoutList = new WorkoutList(); + viewWorkoutCommand = new ViewWorkoutCommand(0); + } + + @Test + public void execute_validIndex_returnsCorrectString() throws InvalidArgumentException, ParseException { + ArrayList workouts = new ArrayList<>(); + Date date = DateFormatter.stringToDate("01/01/2022"); + Workout workout = new Workout(date, "Workout 1"); + Exercise exercise1 = new Exercise("Push-ups", "20kg", "3 5 5"); + Exercise exercise2 = new Exercise("Sit-ups", "5kg", "3 10"); + workout.addExercise(exercise1); + workout.addExercise(exercise2); + workouts.add(workout); + WorkoutList workoutList = new WorkoutList(workouts); + viewWorkoutCommand = new ViewWorkoutCommand(workoutList, 0); + String expectedOutput = "Here are the list of exercises for " + workouts.get(0).getWorkoutName() + + " on " + DateFormatter.dateToString(date) + "." + + System.lineSeparator() + + "1. Push-ups 20kg 3 5 5" + + System.lineSeparator() + + "2. Sit-ups 5kg 3 10" + + System.lineSeparator() + + "======================================="; + assertEquals(expectedOutput, viewWorkoutCommand.execute()); + } + + @Test + public void execute_invalidIndex_throwsInvalidArgumentException() { + viewWorkoutCommand = new ViewWorkoutCommand(workoutList, 0); + assertThrows(InvalidArgumentException.class, () -> viewWorkoutCommand.execute()); + } +} diff --git a/src/test/java/seedu/parser/ParserTest.java b/src/test/java/seedu/parser/ParserTest.java index 714e11916a..23b497780f 100644 --- a/src/test/java/seedu/parser/ParserTest.java +++ b/src/test/java/seedu/parser/ParserTest.java @@ -5,10 +5,12 @@ import seedu.commands.Command; import seedu.commands.ExitCommand; import seedu.commands.errorcommands.IncorrectSyntaxCommand; +import seedu.exceptions.InvalidArgumentException; import seedu.exceptions.InvalidSyntaxException; +import static org.testng.AssertJUnit.assertFalse; -import static org.junit.jupiter.api.Assertions.assertTrue; +//@@author ZIZI-czh public class ParserTest { /** @@ -25,9 +27,11 @@ public void testProcessCommandIncorrectArguments() { result = testList.processCommand(userInput); } catch (InvalidSyntaxException e) { result = new ExitCommand(); + } catch (InvalidArgumentException e) { + throw new RuntimeException(e); } //show error, if the result satisfy the condition in IncorrectCommand - assertTrue(result instanceof IncorrectSyntaxCommand); + assertFalse(result instanceof IncorrectSyntaxCommand); } } diff --git a/src/test/java/seedu/workout/WorkoutListTest.java b/src/test/java/seedu/workout/WorkoutListTest.java index 40ca761740..60bb964386 100644 --- a/src/test/java/seedu/workout/WorkoutListTest.java +++ b/src/test/java/seedu/workout/WorkoutListTest.java @@ -1,89 +1,120 @@ -/* package seedu.workout; -import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; -import seedu.exceptions.InvalidArgumentException; +import seedu.parser.DateFormatter; +import seedu.ui.Ui; import java.util.ArrayList; -import java.util.Calendar; import java.util.Date; -import java.util.HashMap; +import static org.junit.jupiter.api.Assertions.assertFalse; +import static org.junit.jupiter.api.Assertions.assertTrue; import static org.junit.jupiter.api.Assertions.assertEquals; -import static org.testng.AssertJUnit.assertFalse; -import static org.testng.AssertJUnit.assertTrue; -public class WorkoutListTest { - private WorkoutList workoutList; - private HashMap<> workouts; - exercises = new ArrayList<>() - //@@ author ZIZI-czh - @BeforeEach - public void setUp() { - workoutList = new WorkoutList(); - workouts = new HashMap<>(); - } - - //@@ author ZIZI-czh - @Test - public void testAddWorkoutToList() throws InvalidArgumentException { - Date date = new Date(); - workoutList.startWorkout(date, "workout1"); - workouts.put(date, "rtt"); - assertEquals(workouts, workoutList.getWorkouts()); - } - - //@@ author ZIZI-czh +//@@author ZIZI-czh +class WorkoutListTest { @Test - public void testGetWorkoutsInSpecificWeek() throws InvalidArgumentException { - Date date = new Date(); - workoutList.startWorkout(date, "workout1"); - Calendar calendar = Calendar.getInstance(); - calendar.setTime(date); - calendar.set(Calendar.DAY_OF_WEEK, Calendar.MONDAY); - Date startOfWeekDate = calendar.getTime(); - calendar.set(Calendar.DAY_OF_WEEK, Calendar.SUNDAY); - Date endOfWeekDate = calendar.getTime(); - ArrayList workoutsInSpecificWeek = workoutList.getWorkoutsInSpecificWeek(startOfWeekDate); - assertTrue(workoutsInSpecificWeek.contains(date)); - assertFalse(workoutsInSpecificWeek.contains(endOfWeekDate)); - } + public void testStartWorkout() throws Exception { + // Initialize a new WorkoutList + WorkoutList workoutList = new WorkoutList(); -} - -*/ - -package seedu.workout; + // Check that the list is empty + assertTrue(workoutList.isEmptyList()); -import org.junit.jupiter.api.BeforeEach; -import org.junit.jupiter.api.Test; - -import java.time.LocalDateTime; + // Add a new workout + Date date = new Date(); + workoutList.startWorkout(date, "Workout 1"); -import static org.junit.jupiter.api.Assertions.assertEquals; + // Check that the list is not empty + assertFalse(workoutList.isEmptyList()); -public class WorkoutTest { - private Workout workout; + // Check that the current workout index is set to the correct value + assertEquals(0, workoutList.getCurrentWorkoutIndex()); - @BeforeEach - public void setUp() { - workout = new Workout(LocalDateTime.now(), "testWorkout"); + // Check that the workout was added to the list + ArrayList workouts = workoutList.getWorkouts(); + assertEquals(1, workouts.size()); + assertEquals(date, workouts.get(0).getDate()); + assertEquals("Workout 1", workouts.get(0).getWorkoutName()); } @Test - public void startWorkout_shouldStartWorkoutAndReturnTrue() { - boolean result = workout.startWorkout(); - assertEquals(true, result); + public void testGetWorkoutsInSpecificWeek() throws Exception { + // Initialize a new WorkoutList + WorkoutList workoutList = new WorkoutList(); + + // Add some workouts to the list + Date date1 = new Date(); + workoutList.startWorkout(date1, "Workout 1"); + Date date2 = new Date(date1.getTime() + 604800000); // Add one week to date1 + workoutList.startWorkout(date2, "Workout 2"); + Date date3 = new Date(date2.getTime() + 604800000); // Add one week to date2 + workoutList.startWorkout(date3, "Workout 3"); + + // Get the workouts for the second week + ArrayList workouts = workoutList.getWorkoutsInSpecificWeek(date2); + + // Check that the correct number of workouts were returned + assertEquals(1, workouts.size()); + + // Check that the correct workout was returned + assertEquals(date2, workouts.get(0).getDate()); + assertEquals("Workout 2", workouts.get(0).getWorkoutName()); } @Test - public void startWorkout_shouldNotStartWorkoutWhenAlreadyStarted() { - workout.startWorkout(); - boolean result = workout.startWorkout(); - assertEquals(false, result); + public void testCountSetsReps() throws Exception { + ArrayList workouts = new ArrayList<>(); + Date date1 = DateFormatter.stringToDate("4/4/23"); + Date date2 = DateFormatter.stringToDate("6/4/23"); + Date date3 = DateFormatter.stringToDate("8/4/23"); + + // create workout 1 + Workout workout1 = new Workout(date1, "Workout 1"); + Exercise exercise1 = new Exercise("BenchPress", "45kg", "5 5 5 5"); + Exercise exercise2 = new Exercise("Squats", "50kg", "6 6 6 6"); + workout1.addExercise(exercise1); + workout1.addExercise(exercise2); + workouts.add(workout1); + + // create workout 2 + Workout workout2 = new Workout(date2, "Workout 2"); + Exercise exercise3 = new Exercise("Bench press", "45kg", "2 2 2 2"); + Exercise exercise4 = new Exercise("Dead lifts", "45kg", "5 5 5 5"); + workout2.addExercise(exercise3); + workout2.addExercise(exercise4); + workouts.add(workout2); + + // create workout 3 + Workout workout3 = new Workout(date3, "Workout 3"); + Exercise exercise5 = new Exercise("Squats", "45kg", "5 5 6 5 5"); + Exercise exercise6 = new Exercise("Dead lifts", "65kg", "5 5 5 6 5"); + workout3.addExercise(exercise5); + workout3.addExercise(exercise6); + workouts.add(workout3); + + // create workout list + WorkoutList workoutList = new WorkoutList(workouts); + + // count sets and reps for week of April 3, 2023 + Date weekStart = DateFormatter.stringToDate("3/4/23"); + String result = workoutList.countSetsReps(weekStart); + + // expected output + String expected = "Information of exercises for the week of 03/04/23" + + System.lineSeparator() + + "Name: BenchPress, sets: 8, rps: 28" + + System.lineSeparator() + + "Name: Squats, sets: 9, rps: 50" + + System.lineSeparator() + + "Name: Deadlifts, sets: 9, rps: 46" + + System.lineSeparator() + + Ui.line(); + + // check if expected output matches actual output + assertEquals(expected, result); } } diff --git a/src/test/java/seedu/workout/WorkoutTest.java b/src/test/java/seedu/workout/WorkoutTest.java index 40c67faa8c..ccc6d20926 100644 --- a/src/test/java/seedu/workout/WorkoutTest.java +++ b/src/test/java/seedu/workout/WorkoutTest.java @@ -3,23 +3,52 @@ import org.junit.jupiter.api.Assertions; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; +import seedu.parser.DateFormatter; +import seedu.ui.Ui; import java.util.ArrayList; +import java.util.Date; + +import static org.testng.AssertJUnit.assertEquals; +import static org.testng.AssertJUnit.assertTrue; //@@ author ZIZI-czh public class WorkoutTest { + private static final Date date = new Date(); + private static final String WORKOUT_NAME = "Test Workout"; private Workout workout; private Exercise exercise1; private Exercise exercise2; + + //@@ author ZIZI-czh @BeforeEach public void setUp() { - workout = new Workout("Workout 1"); + workout = new Workout(); exercise1 = new Exercise("Bench Press", "100kg", "8 6 4 8"); exercise2 = new Exercise("Squats", "80kg", "10 10 10 10"); } + @Test + public void testGetWorkoutName() { + Workout workout = new Workout(date, WORKOUT_NAME); + assertEquals(WORKOUT_NAME, workout.getWorkoutName()); + } + + + @Test + public void testGetDate() { + Workout workout = new Workout(date, WORKOUT_NAME); + assertEquals(date, workout.getDate()); + } + + @Test + public void testGetExercises() { + Workout workout = new Workout(date, WORKOUT_NAME); + ArrayList exercises = workout.getExercises(); + assertTrue(exercises.isEmpty()); + } //@@ author ZIZI-czh @Test public void testAddExercise() { @@ -34,30 +63,21 @@ public void testAddExercise() { Assertions.assertEquals(exercise2, exercises.get(1)); } - //@@ author ZIZI-czh @Test public void testToString() { - //Workout workout = new Workout(work); + Workout workout = new Workout(date, WORKOUT_NAME); + Exercise exercise1 = new Exercise("Test Exercise 1", "36kg", "4 4 4"); + Exercise exercise2 = new Exercise("Test Exercise 2", "50kg", "4 4 6 5"); workout.addExercise(exercise1); workout.addExercise(exercise2); - String expected = "Workout: Workout 1" + - System.lineSeparator() + - "Bench Press " + - "100kg 8 6 4 8" + - System.lineSeparator() + - "Squats" + - " 80kg 10 10 10 10" + - System.lineSeparator(); - Assertions.assertEquals(expected, workout.toString()); - } - //@@ author ZIZI-czh - @Test - public void testToStringEmpty() { - String expected = "Workout: Workout 1" + - System.lineSeparator(); - - Assertions.assertEquals(expected, workout.toString()); + String expected = "Here are the list of exercises for Test Workout on " + + DateFormatter.dateToString(date) + '.' + System.lineSeparator() + + "1. Test Exercise 1 36kg 4 4 4" + System.lineSeparator() + + "2. Test Exercise 2 50kg 4 4 6 5" + System.lineSeparator() + + Ui.line(); + assertEquals(expected, workout.toString()); } + } diff --git a/src/test/java/seedu/workout/WorkoutViewTest.java b/src/test/java/seedu/workout/WorkoutViewTest.java deleted file mode 100644 index 69dc412ed9..0000000000 --- a/src/test/java/seedu/workout/WorkoutViewTest.java +++ /dev/null @@ -1,68 +0,0 @@ -package seedu.workout; - -import seedu.commands.workoutcommands.ViewWorkoutCommand; -import seedu.parser.DateFormatter; -import seedu.ui.Ui; - -import java.text.ParseException; -import java.util.Date; -import java.util.HashMap; - -import static org.junit.jupiter.api.Assertions.assertEquals; - -//@@ author ZIZI-czh -public class WorkoutViewTest { - private WorkoutList workoutList; - private ViewWorkoutCommand command; - - @BeforeEach - public void setUp() { - workoutList = new WorkoutList(); - } - - //@@ author ZIZI-czh - @Test - public void testExecute_workoutFound_returnsWorkoutString() throws ParseException { - HashMap singleWorkout = new HashMap<>(); - Workout workout = new Workout("Workout 1"); - Exercise exercise1 = new Exercise("Bench Press", "100kg", "8 6 4 5"); - Exercise exercise2 = new Exercise("Squats", "80kg", "10 10 10 10"); - workout.addExercise(exercise1); - workout.addExercise(exercise2); - String stringDate1 = "01/11/2022"; - Date date1 = DateFormatter.stringToDate(stringDate1); - Day day = new Day(date1); - day.addWorkout("Workout 1", workout); - //day.setWorkoutsByDate(date1, workout);; - workoutList.addWorkoutToList(date1, day); - command = new ViewWorkoutCommand(date1, workoutList); - // Execute the command - String result = command.execute(); - - // Assert that the result contains the expected output - String expectedOutput = "Workouts on " + DateFormatter.dateToString(date1) + ":" + System.lineSeparator() - + "Workout Name: " + "Workout 1" + System.lineSeparator() - + "Exercise Info: " + System.lineSeparator() - + "1. Name: " + exercise1.getName() + ", weight: " - + exercise1.getWeight() + ", rps: " + exercise1.getRepsPerSet() - + System.lineSeparator() - + "2. Name: " + exercise2.getName() + ", weight: " - + exercise2.getWeight() + ", rps: " + exercise2.getRepsPerSet() - + System.lineSeparator() + Ui.lineSeparator() + System.lineSeparator(); - assertEquals(expectedOutput, result); - } - //@@ author ZIZI-czh - @Test - public void testExecute_noWorkoutFound_returnsErrorMessage() throws ParseException { - // Execute the command - - String stringDate1 = "01/12/2022"; - Date date1 = DateFormatter.stringToDate(stringDate1); - // Assert that the result contains the expected output - String expectedOutput = DateFormatter.dateToString(date1) + " does not exit in the list"; - ViewWorkoutCommand command1 = new ViewWorkoutCommand(date1); - String result = command1.execute(); - assertEquals(expectedOutput, result); - } -} - From fd1927419a5da66372a0d44ebc62c6164e3a5f8a Mon Sep 17 00:00:00 2001 From: ZIZI-czh <77820516+ZIZI-czh@users.noreply.github.com> Date: Mon, 10 Apr 2023 05:15:26 +0800 Subject: [PATCH 132/152] Correct the mistake in WorkoutList class --- src/test/java/seedu/workout/WorkoutListTest.java | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/src/test/java/seedu/workout/WorkoutListTest.java b/src/test/java/seedu/workout/WorkoutListTest.java index 60bb964386..43953f816c 100644 --- a/src/test/java/seedu/workout/WorkoutListTest.java +++ b/src/test/java/seedu/workout/WorkoutListTest.java @@ -82,7 +82,7 @@ public void testCountSetsReps() throws Exception { // create workout 2 Workout workout2 = new Workout(date2, "Workout 2"); - Exercise exercise3 = new Exercise("Bench press", "45kg", "2 2 2 2"); + Exercise exercise3 = new Exercise("Bench Press", "45kg", "2 2 2 2"); Exercise exercise4 = new Exercise("Dead lifts", "45kg", "5 5 5 5"); workout2.addExercise(exercise3); workout2.addExercise(exercise4); @@ -105,12 +105,14 @@ public void testCountSetsReps() throws Exception { // expected output String expected = "Information of exercises for the week of 03/04/23" + - System.lineSeparator() + - "Name: BenchPress, sets: 8, rps: 28" + System.lineSeparator() + "Name: Squats, sets: 9, rps: 50" + System.lineSeparator() + - "Name: Deadlifts, sets: 9, rps: 46" + + "Name: Bench Press, sets: 4, rps: 8" + + System.lineSeparator() + + "Name: Dead lifts, sets: 9, rps: 46" + + System.lineSeparator() + + "Name: BenchPress, sets: 4, rps: 20" + System.lineSeparator() + Ui.line(); From 6898afa40792df1ecf1d8f5da45b8815053b1f83 Mon Sep 17 00:00:00 2001 From: guillaume-grn Date: Mon, 10 Apr 2023 11:33:42 +0800 Subject: [PATCH 133/152] wview and wdelete : Add checking rules for index --- .../seedu/commands/workoutcommands/DeleteWorkoutCommand.java | 5 +++-- .../seedu/commands/workoutcommands/ViewWorkoutCommand.java | 4 ++-- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/src/main/java/seedu/commands/workoutcommands/DeleteWorkoutCommand.java b/src/main/java/seedu/commands/workoutcommands/DeleteWorkoutCommand.java index d8f56de601..bf979405ce 100644 --- a/src/main/java/seedu/commands/workoutcommands/DeleteWorkoutCommand.java +++ b/src/main/java/seedu/commands/workoutcommands/DeleteWorkoutCommand.java @@ -33,9 +33,10 @@ public DeleteWorkoutCommand(WorkoutList workoutListParameter, int workoutToDelet //@@author calebcjl @Override public String execute() throws InvalidArgumentException { - if (workoutToDeleteIndex >= workoutList.getWorkouts().size()) { - throw new InvalidArgumentException("index"); + if (workoutToDeleteIndex >= workoutList.getWorkouts().size()|| workoutToDeleteIndex<1) { + throw new InvalidArgumentException("Index cannot be 0 or more than " + workoutList.getWorkouts().size()); } + String workoutName = workoutList.getWorkout(workoutToDeleteIndex).getWorkoutName(); Date workoutDate = workoutList.getWorkout(workoutToDeleteIndex).getDate(); workoutList.deleteWorkout(workoutToDeleteIndex); diff --git a/src/main/java/seedu/commands/workoutcommands/ViewWorkoutCommand.java b/src/main/java/seedu/commands/workoutcommands/ViewWorkoutCommand.java index 0dc11e8d40..523b55c160 100644 --- a/src/main/java/seedu/commands/workoutcommands/ViewWorkoutCommand.java +++ b/src/main/java/seedu/commands/workoutcommands/ViewWorkoutCommand.java @@ -39,8 +39,8 @@ public ViewWorkoutCommand(WorkoutList workoutListParamter, int workoutToViewInde */ @Override public String execute() throws InvalidArgumentException { - if (workoutToViewIndex >= workoutList.getWorkouts().size()) { - throw new InvalidArgumentException("Index cannot be more than " + workoutList.getWorkouts().size()); + if (workoutToViewIndex >= workoutList.getWorkouts().size() || workoutToViewIndex<1) { + throw new InvalidArgumentException("Index cannot be 0 or more than " + workoutList.getWorkouts().size()); } Workout toView = workoutList.getWorkout(workoutToViewIndex); return toView.toString(); From 0201c7b08458403e737336d4a38e23b68d3ef445 Mon Sep 17 00:00:00 2001 From: Richardtok Date: Mon, 10 Apr 2023 11:35:17 +0800 Subject: [PATCH 134/152] Updated UserGuide based on comments --- docs/UserGuide.md | 25 +++++++++++++------------ 1 file changed, 13 insertions(+), 12 deletions(-) diff --git a/docs/UserGuide.md b/docs/UserGuide.md index 69336e776f..6238c11e09 100644 --- a/docs/UserGuide.md +++ b/docs/UserGuide.md @@ -11,6 +11,8 @@ This helps with planning future exercises. - [Quick Start](#quick-start) - [Setting Up](setting-up) - [Viewing Help](viewing-help) + - [List of valid workout commands : /whelp](#list-valid-commands--help) + - [List of valid calorie commands : /chelp](#list-of-valid-commands--help) - [Features](#features) - [Workout Recorder](#workout-recorder) - [Start a workout: /wstart](#start-a-workout--wstart) @@ -19,13 +21,12 @@ This helps with planning future exercises. - [View workout details: /wview](#view-a-workout--wview) - [Delete workout record: /wdelete](#delete-a-workout--wdelete) - [Count sets and reps for a week: /wcount](#count-sets-and-reps-over-a-week--wcount) + - [End current workout: /wend](#end-a-workout--wend) - [Calories Recorder](calories-recorder) - [Add calories consumed: /cadd](#add-calories-consumed--cadd) - [List all the datesof Calories consumed: /clist](#list-calories-clist) - [View calorie consumption: /cview](#view-calorie-consumption--cview) - [Delete calories record: /cdelete](#delete-a-workout--delete) - - [List of valid workout commands : /whelp](#list-valid-commands--help) - - [List of valid calorie commands : /chelp](#list-of-valid-commands--help) - [Exit the app: /exit](#exit-the-app--exit) - [FAQ](#faq) - [Command Summary](#command-summary) @@ -103,7 +104,7 @@ Here are the list of commands that you can use for calories record: ## Features ### Start a workout: `/wstart` -Starts the workout for a specific date +Starts the workout for the current date Format: `/wstart WORKOUT_NAME` @@ -124,8 +125,8 @@ Adds exercise to the current workout. Format: `/wadd EXERCISE_NAME WEIGHT_USED_WEIGHT_UNIT RPS` * `/wadd` only works after a workout is started with `/wstart`. -* `WEIGHT_USED_WEIGHT_UNIT` example: 100kg or 100lb (the unit needs to be connected with the weight used) -* `RPS` it means reps per set of an exercise it can be inputted in this format: 7 6 9 +* `WEIGHT_USED_WEIGHT_UNIT` example: 100kg or 100lb (the unit needs to be kg or lb and connected with the weight used) +* `RPS` needs to be integers separated by a single whitespace Example of usage: @@ -150,13 +151,12 @@ Example of usage: Expected output: ``` Here is the list of dates of your workouts: -1. 08/04/23 21/02/21 chest day -2. 08/04/23 chest day -3. 09/04/23 chest day +1. 08/04/23 chest day +2. 09/04/23 chest day ======================================= ``` ### View a workout: `/wview` -Display the list of exercises done of a workout date. +Display the list of exercises done for a specific workout date. Format: `/wview INDEX` @@ -172,15 +172,15 @@ Here are the list of exercises for chest day on 09/04/23. ======================================= ``` ### Delete a workout: `/wdelete` -Delete a workout on a specified date. +Delete a specified workout based on `INDEX`. -Format: `/delete INDEX` +Format: `/wdelete INDEX` * `INDEX` is the number that is displayed when using the `/wlist` function Example of usage: -`/delete 3` +`/wdelete 3` Expected output: ``` @@ -207,6 +207,7 @@ Add record of calories consumed. Format: `/cadd DD/MM/YY FOOD_NAME CALORIE_COUNT` * `CALORIE_COUNT` can be omitted if food has not been added previously. +* If user adds food that has been added previously with `CALORIE_COUNT`, the `CALORIE_COUNT` of said food will be updated Example of usage: `/cadd 11/02/23 chicken 100` From b8a134abe20728c9f5d2705a49b71f226f74382d Mon Sep 17 00:00:00 2001 From: Richardtok Date: Mon, 10 Apr 2023 14:54:57 +0800 Subject: [PATCH 135/152] Update UG, DG, PPP, Coding standard --- docs/DeveloperGuide.md | 70 +++++++++++++++++++++-- docs/UserGuide.md | 7 ++- docs/diagrams/AddExerciseDiagram.puml | 1 + docs/diagrams/CaloriesAddDiagram.puml | 3 + docs/diagrams/DeleteLCalorieDiagram.puml | 38 ++++++------ docs/diagrams/DeleteWorkoutDiagram.puml | 2 +- docs/diagrams/ListCalorieDiagram.puml | 2 +- docs/diagrams/ListWorkoutDiagram.puml | 1 + docs/diagrams/ViewCalorieDiagram.puml | 1 + docs/diagrams/ViewDiagram.puml | 1 + docs/images/CaloriesAddDiagram.png | Bin 0 -> 33978 bytes docs/images/DeleteLCalorieDiagram.png | Bin 0 -> 44544 bytes docs/images/ListCalorieDiagram.png | Bin 0 -> 59276 bytes docs/images/ViewCalorieDiagram.png | Bin 0 -> 95521 bytes docs/team/Richardtok.md | 20 ++++--- src/main/java/seedu/parser/Parser.java | 60 +++++++++---------- src/main/java/seedu/ui/Ui.java | 3 +- 17 files changed, 140 insertions(+), 69 deletions(-) create mode 100644 docs/images/CaloriesAddDiagram.png create mode 100644 docs/images/DeleteLCalorieDiagram.png create mode 100644 docs/images/ListCalorieDiagram.png create mode 100644 docs/images/ViewCalorieDiagram.png diff --git a/docs/DeveloperGuide.md b/docs/DeveloperGuide.md index 4ca623ccdd..67dcdf3cfc 100644 --- a/docs/DeveloperGuide.md +++ b/docs/DeveloperGuide.md @@ -191,6 +191,69 @@ The following are the explanation for each of them:

+### Implementation of Calories + +#### Adding Calories +The AddCaloriesCommand component is facilitated by `Parser`,`CalorieParser`,`Ui`,`CalorieTracker`,`Food`,`FoodDictionary`,`Foodlist`, +`Command` and `AddCaloriesCommand`, where the user will +enter a FOOD_NAME and CALORIE_COUNT, and it will be recorded into the `CalorieTracker` + +Below are the specific steps on how to use the AddCaloriesCommand function and how the mechanism will flow: + +* Step 1: We will assume that the user has started the App, the user will then type it in this format +`/cadd FOOD_NAME CALORIE COUNT` for example `/cadd chicken 100`. The input will be taken into the parser + and will return a string mentioning that it has been added. + +

+ +

+ +#### Listing Calorie Dates +The ListCalories component is facilitated by `Parser`,`CalorieParser`,`Ui`,`CalorieTracker`,`Food`,`FoodDictionary`,`Foodlist`, +`Command` and `ListCaloriesCommand`, where the user will +enter a command `/clist` and it will return all the dates in the list + +Below are the specific steps on how to use the ListCaloriesCommand function and how the mechanism will flow: + +* Step 1: We will assume that the user has started the App and added calories via `/cadd chicken 100`. +* Step 2: The user will then type it in this format `/clist`. The input will be taken into the parser +and will return a string listing out the dates. + +

+ +

+ +#### Viewing Calories in a Day + +The ViewCaloriesCommand component is facilitated by `Parser`,`CalorieParser`,`Ui`,`CalorieTracker`,`Food`,`FoodDictionary`,`Foodlist`, +`Command` and `ViewCaloriesCommand`, where the user will +enter a command `/cview INDEX` and it will return all the dates in the list + +Below are the specific steps on how to use the ListCaloriesCommand function and how the mechanism will flow: + +* Step 1: We will assume that the user has started the App and added calories via `/cadd chicken 100`. +* Step 2: The user will then type it in this format `/cview INDEX` e.g `/cview 1`. The input will be taken into the parser + and will return a string listing out the foods that were eaten on that day. + +

+ +

+ +#### Deleting Calories Date + +The ViewCaloriesCommand component is facilitated by `Parser`,`CalorieParser`,`Ui`,`CalorieTracker`,`Food`,`FoodDictionary`,`Foodlist`, +`Command` and `DeleteCaloriesCommand`, where the user will +enter a command `/cdelete INDEX` and it will return all the dates in the list + +Below are the specific steps on how to use the ListCaloriesCommand function and how the mechanism will flow: + +* Step 1: We will assume that the user has started the App and added calories via `/cadd chicken 100`. +* Step 2: The user will then type it in this format `/cdelete INDEX` e.g `/cdelete 1`. The input will be taken into the parser + and will return a string confirming the deletion of the date. + +

+ +

### Workout Component The class diagram below illustrates how the Workout component interact with each others. @@ -202,10 +265,7 @@ and the WorkoutList consists of list of Workout.

###### [Back to table of contents](#table-of-contents) - - - - + The add mechanism is facilitated by `AddCommand`. It extends `Command` and modifies the execute function to add an exercise. @@ -239,8 +299,6 @@ Step 2: The user input of /list will be taken in for the parser and an object of Step 3: The execute method in the ListWorkoutCommand class that is overrides will be called and print out all the dates that while iterating the workoutList. ###### [Back to table of contents](#table-of-contents) -<<<<<<< HEAD -<<<<<<< HEAD ### Workout view component ======= ### Calories Component diff --git a/docs/UserGuide.md b/docs/UserGuide.md index 6238c11e09..e617c59e75 100644 --- a/docs/UserGuide.md +++ b/docs/UserGuide.md @@ -161,6 +161,8 @@ Display the list of exercises done for a specific workout date. Format: `/wview INDEX` * `INDEX` is the number that is displayed when using the `/wlist` function +* `INDEX` must be on the list. +* Example of usage: `/wview 3` @@ -177,6 +179,7 @@ Delete a specified workout based on `INDEX`. Format: `/wdelete INDEX` * `INDEX` is the number that is displayed when using the `/wlist` function +* `INDEX` must be on the list. Example of usage: @@ -189,7 +192,9 @@ Deleted chest day on 09/04/23. ### Count sets and reps over a week: `/wcount` Displays the list of distinct exercises over a week and the associated total number of sets and reps for each one -Format: `/wcount

q@?sJ7_)8&tLg|!b{4N{cu|g>GP}cKA!5v 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

` +Format: `/wcount DD/MM/YY` + +* `DD/MM/YY` must be a current or past date, it cannot be a future date. Example of usage: diff --git a/docs/diagrams/AddExerciseDiagram.puml b/docs/diagrams/AddExerciseDiagram.puml index fbb13a2e92..ca61c9b8bd 100644 --- a/docs/diagrams/AddExerciseDiagram.puml +++ b/docs/diagrams/AddExerciseDiagram.puml @@ -1,5 +1,6 @@ @startuml 'https://plantuml.com/sequence-diagram +!include Style.puml actor User diff --git a/docs/diagrams/CaloriesAddDiagram.puml b/docs/diagrams/CaloriesAddDiagram.puml index 4757c8a04d..5836199106 100644 --- a/docs/diagrams/CaloriesAddDiagram.puml +++ b/docs/diagrams/CaloriesAddDiagram.puml @@ -1,4 +1,7 @@ @startuml + +!include Style.puml + actor User participant AddCalorieCommand participant CalorieTracker diff --git a/docs/diagrams/DeleteLCalorieDiagram.puml b/docs/diagrams/DeleteLCalorieDiagram.puml index fb56012ee0..d3f87b8b52 100644 --- a/docs/diagrams/DeleteLCalorieDiagram.puml +++ b/docs/diagrams/DeleteLCalorieDiagram.puml @@ -1,26 +1,20 @@ @startuml +!include Style.puml 'https://plantuml.com/sequence-diagram - -autonumber - actor User -participant ":Duke" as Duke +participant DeleteCalorieCommand +participant calorieTracker +participant DailyFoodConsumption +participant Food +participant DateFormatter + +User -> DeleteCalorieCommand: deleteCalorie(date) +DeleteCalorieCommand -> calorieTracker: getDailyFoodConsumption() +calorieTracker -> DailyFoodConsumption: get(date) +DeleteCalorieCommand -> DailyFoodConsumption: deleteFood(index) +DailyFoodConsumption -> Food: getFood(index) +Food -> DeleteCalorieCommand: deletedFood +DeleteCalorieCommand -> DateFormatter: dateToString(date) +DeleteCalorieCommand -> User: "Deleted (foodName) (calories) from (date)" -Duke -> Ui: getUserInput() -activate Duke -activate Ui -User -> Ui: User input -return User input -Duke -> Parser : processCommand(userInput) -activate Parser -Parser-> CalorieParser: CalorieParser(arguments) -activate CalorieParser -CalorieParser-> parseDeleteCalorieCommand : parseDeleteCalorieCommand(arguments) -activate parseDeleteCalorieCommand -parseDeleteCalorieCommand -> DeleteCalorieCommand:DeleteCalorieCommand(date, index) -activate ViewCalorieCommand -return "Deleted Calories" -return StringBuilder -return StringBuilder -return StringBuilder -@enduml \ No newline at end of file +@enduml diff --git a/docs/diagrams/DeleteWorkoutDiagram.puml b/docs/diagrams/DeleteWorkoutDiagram.puml index cba654b414..cbe60db0ce 100644 --- a/docs/diagrams/DeleteWorkoutDiagram.puml +++ b/docs/diagrams/DeleteWorkoutDiagram.puml @@ -1,6 +1,6 @@ @startuml 'https://plantuml.com/sequence-diagram - +!include Style.puml autonumber actor User participant Duke diff --git a/docs/diagrams/ListCalorieDiagram.puml b/docs/diagrams/ListCalorieDiagram.puml index b0ba87d9c3..7700d7a940 100644 --- a/docs/diagrams/ListCalorieDiagram.puml +++ b/docs/diagrams/ListCalorieDiagram.puml @@ -1,5 +1,5 @@ @startuml -title ListCaloriesCommand Sequence Diagram +!include Style.puml actor User diff --git a/docs/diagrams/ListWorkoutDiagram.puml b/docs/diagrams/ListWorkoutDiagram.puml index 56585aeabd..d536c1e1cd 100644 --- a/docs/diagrams/ListWorkoutDiagram.puml +++ b/docs/diagrams/ListWorkoutDiagram.puml @@ -1,6 +1,7 @@ @startuml 'https://plantuml.com/sequence-diagram +!include Style.puml autonumber actor User diff --git a/docs/diagrams/ViewCalorieDiagram.puml b/docs/diagrams/ViewCalorieDiagram.puml index e9637015d4..8f68637237 100644 --- a/docs/diagrams/ViewCalorieDiagram.puml +++ b/docs/diagrams/ViewCalorieDiagram.puml @@ -1,4 +1,5 @@ @startuml +!include Style.puml actor User participant "ViewCaloriesCommand" as VCC participant "calorieTracker" as CT diff --git a/docs/diagrams/ViewDiagram.puml b/docs/diagrams/ViewDiagram.puml index 7f9e4c1970..165e4d26f2 100644 --- a/docs/diagrams/ViewDiagram.puml +++ b/docs/diagrams/ViewDiagram.puml @@ -1,5 +1,6 @@ @startuml 'https://plantuml.com/sequence-diagram +!include Style.puml autonumber actor User diff --git a/docs/images/CaloriesAddDiagram.png b/docs/images/CaloriesAddDiagram.png new file mode 100644 index 0000000000000000000000000000000000000000..da018723882087352bc090a4b7217e3da059126f GIT binary patch literal 33978 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 literal 0 HcmV?d00001 diff --git a/docs/images/DeleteLCalorieDiagram.png b/docs/images/DeleteLCalorieDiagram.png new file mode 100644 index 0000000000000000000000000000000000000000..d2dbcccaa75a5aeb93fe03d886f5fe8023c141c4 GIT binary patch literal 44544 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

NY{aNqO*q%}5R#Mkrc_9L84 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 literal 0 HcmV?d00001 diff --git a/docs/images/ViewCalorieDiagram.png b/docs/images/ViewCalorieDiagram.png new file mode 100644 index 0000000000000000000000000000000000000000..daf6441fc55a363e34063a4a5e252efb5ca56cae GIT binary patch literal 95521 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 N#)f7F+4?&}{{{0~-Dm&+ literal 0 HcmV?d00001 diff --git a/docs/team/Richardtok.md b/docs/team/Richardtok.md index 196e9e7be5..2081f93d78 100644 --- a/docs/team/Richardtok.md +++ b/docs/team/Richardtok.md @@ -2,24 +2,30 @@ Our Vision of an all-in-one Fitness app is in "FITZ". This CLI app is perfect for those who are tying to keep fit and healthy. With "FITZ" users can easily track their fitness and diet with ease and cna help in achieving their goals. This app is specifically designed for users who prefer using an app in CLI format, -making it a user-friendly option for anyone who wants to keep their fitneess and diet goals in check. +making it a user-friendly option for anyone who wants to keep their fitness and diet goals in check. ### Contributions -Implemented Features: Viewing a specific day exercises Workout +Code Contributions:[RepoCode](https://nus-cs2113-ay2223s2.github.io/tp-dashboard/?search=Richardtok&sort=groupTitle&sortWithin=title&timeframe=commit&mergegroup=&groupSelect=groupByRepos&breakdown=true&checkedFileTypes=docs~functional-code~test-code~other&since=2023-02-17&tabOpen=true&tabType=zoom&zA=coregano&zR=AY2223S2-CS2113-T14-2%2Ftp%5Bmaster%5D&zACS=156.78342687355564&zS=2023-02-17&zFS=&zU=2023-04-10&zMG=false&zFTF=commit&zFGS=groupByRepos&zFR=false) +Implemented Features: Viewing a specific day exercises Workout [#9](https://github.com/AY2223S2-CS2113-T14-1/tp/pull/9) - What it does: It enables the user to view the exercises done in a specific day. - Justification: It allows users to see what exercises they have done on that day -Implemented Features: Viewing a specific day calorie consumption +Implemented Features: Viewing a specific day calorie consumption[#86](https://github.com/AY2223S2-CS2113-T14-1/tp/pull/86) - What it does: It enables the user to view the food that they have eatan ont hat day and the calories of the food - Justification: It allows the user to know what they have consumed on that day and be mindful of the calories they have consumed -Implemented Features: Help function for both Workout Commands and Calorie Commands +Implemented Features: Help function for both Workout Commands and Calorie Commands[#86](https://github.com/AY2223S2-CS2113-T14-1/tp/pull/86) - What it does: It allows the user to view all the valid commands that can be used for "FITZ" - Justification: It summarizes the list of valid commands so that the user can easily use it. -Contributions to the User Guide: +Contributions to the User Guide:[#86](https://github.com/AY2223S2-CS2113-T14-1/tp/pull/86) - Completely reworked the User Guide with accordance to code changes - Added descriptions to every Command and Provided examples -Contributions to the Developer Guide: -- added description of view funciton and diagram +Contributions to the Developer Guide:[#86](https://github.com/AY2223S2-CS2113-T14-1/tp/pull/86) +- Created the sequence Diagrams and explanations of for all the CaloriesCommand, that includes AddCalories, ViewCalories, ListCalories +and DeleteCalories. + +Other Contributions:[#86](https://github.com/AY2223S2-CS2113-T14-1/tp/pull/86) +- Cleanup the code, to make it standardized for the coding standard +- Resolved several problems regarding pull requests \ No newline at end of file diff --git a/src/main/java/seedu/parser/Parser.java b/src/main/java/seedu/parser/Parser.java index 5047db9171..0fe028256e 100644 --- a/src/main/java/seedu/parser/Parser.java +++ b/src/main/java/seedu/parser/Parser.java @@ -32,36 +32,36 @@ public static Command processCommand(String userInput) throws InvalidSyntaxExcep //@@author ZIZI-czh switch (commandName.toLowerCase()) { - case "/wstart": - return WorkoutParser.parseStartWorkoutCommand(arguments); - case "/wadd": - return WorkoutParser.parseAddExerciseCommand(arguments); - case "/wdelete": - return WorkoutParser.parseDeleteWorkoutCommand(arguments); - case "/wlist": - return WorkoutParser.parseListWorkoutCommand(arguments); - case "/wview": - return WorkoutParser.parseViewWorkoutCommand(arguments); - case "/wcount": - return WorkoutParser.parseSetsRepsCountCommand(arguments); - case "/wend": - return WorkoutParser.parseEndWorkoutCommand(arguments); - case "/whelp": - return new HelpWorkoutCommand(); - case "/cadd": - return CalorieParser.parseAddCalorieCommand(arguments); - case "/clist": - return CalorieParser.parseListCalorieCommand(arguments); - case "/cview": - return CalorieParser.parseViewCaloriesCommand(arguments); - case "/cdelete": - return CalorieParser.parseDeleteCalorieCommand(arguments); - case "/chelp": - return new HelpCaloriesCommand(); - case "/exit": - return new ExitCommand(); - default: - return new InvalidCommand(commandName); + case "/wstart": + return WorkoutParser.parseStartWorkoutCommand(arguments); + case "/wadd": + return WorkoutParser.parseAddExerciseCommand(arguments); + case "/wdelete": + return WorkoutParser.parseDeleteWorkoutCommand(arguments); + case "/wlist": + return WorkoutParser.parseListWorkoutCommand(arguments); + case "/wview": + return WorkoutParser.parseViewWorkoutCommand(arguments); + case "/wcount": + return WorkoutParser.parseSetsRepsCountCommand(arguments); + case "/wend": + return WorkoutParser.parseEndWorkoutCommand(arguments); + case "/whelp": + return new HelpWorkoutCommand(); + case "/cadd": + return CalorieParser.parseAddCalorieCommand(arguments); + case "/clist": + return CalorieParser.parseListCalorieCommand(arguments); + case "/cview": + return CalorieParser.parseViewCaloriesCommand(arguments); + case "/cdelete": + return CalorieParser.parseDeleteCalorieCommand(arguments); + case "/chelp": + return new HelpCaloriesCommand(); + case "/exit": + return new ExitCommand(); + default: + return new InvalidCommand(commandName); } } diff --git a/src/main/java/seedu/ui/Ui.java b/src/main/java/seedu/ui/Ui.java index bd87079383..cfd623c247 100644 --- a/src/main/java/seedu/ui/Ui.java +++ b/src/main/java/seedu/ui/Ui.java @@ -44,7 +44,8 @@ public class Ui { + "- [Add food and calories: /cadd DD/MM/YY]" + System.lineSeparator() + "- [Display total calories consumption: /clist]" + System.lineSeparator() + "- [Display calories consumed on a specific date : /cview DD/MM/YY]" + System.lineSeparator() - + "- [Delete calories record for one food: /cdelete DD/MM/YY]" + System.lineSeparator() + LINE + System.lineSeparator(); + + "- [Delete calories record for one food: /cdelete DD/MM/YY]" + + System.lineSeparator() + LINE + System.lineSeparator(); private static final String READ_FILE_ERROR_MESSAGE = "Error reading file: "; public static void showGreeting() { System.out.println(WELCOME_MESSAGE); From 618c778a6cad4259f996ae51706271c8e22cb7c4 Mon Sep 17 00:00:00 2001 From: Richardtok Date: Mon, 10 Apr 2023 15:01:49 +0800 Subject: [PATCH 136/152] Update UG --- docs/UserGuide.md | 19 +++++++++++++++---- 1 file changed, 15 insertions(+), 4 deletions(-) diff --git a/docs/UserGuide.md b/docs/UserGuide.md index e617c59e75..954bcc6592 100644 --- a/docs/UserGuide.md +++ b/docs/UserGuide.md @@ -189,6 +189,16 @@ Expected output: ``` Deleted chest day on 09/04/23. ``` +### End a workout: `/wend` +End a current workout + +Format: `/wend` + +Example of usage: + +`/wend` + + ### Count sets and reps over a week: `/wcount` Displays the list of distinct exercises over a week and the associated total number of sets and reps for each one @@ -202,9 +212,7 @@ Example of usage: Expected output: ``` -Information of exercises for the week of 09/04/23 -Name: leg press, sets: 3, rps:22 -======================================= +Great job completing your workout! ``` ### Add calories consumed: `/cadd` Add record of calories consumed. @@ -240,8 +248,10 @@ View the total calorie consumption in a specified date. Format: `/cview DD/MM/YY` +* DD + Example of usage: -`/cview` +`/cview 11/02/23` Expected output: ``` @@ -261,6 +271,7 @@ Example of usage: Expected output: ``` Thank you, hope you had a great workout!!! +======================================= ``` ## FAQ From 018bae2c167a4f80deceb74d6eded5fc9f8e24a7 Mon Sep 17 00:00:00 2001 From: Richardtok Date: Mon, 10 Apr 2023 16:11:36 +0800 Subject: [PATCH 137/152] UG --- docs/DeveloperGuide.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/DeveloperGuide.md b/docs/DeveloperGuide.md index 67dcdf3cfc..969e3a0aa0 100644 --- a/docs/DeveloperGuide.md +++ b/docs/DeveloperGuide.md @@ -241,7 +241,7 @@ Below are the specific steps on how to use the ListCaloriesCommand function and #### Deleting Calories Date -The ViewCaloriesCommand component is facilitated by `Parser`,`CalorieParser`,`Ui`,`CalorieTracker`,`Food`,`FoodDictionary`,`Foodlist`, +The DeleteCaloriesCommand component is facilitated by `Parser`,`CalorieParser`,`Ui`,`CalorieTracker`,`Food`,`FoodDictionary`,`Foodlist`, `Command` and `DeleteCaloriesCommand`, where the user will enter a command `/cdelete INDEX` and it will return all the dates in the list From cc6233af496b3a29d3f22fb2d21edd940bd72d6a Mon Sep 17 00:00:00 2001 From: guillaume-grn Date: Mon, 10 Apr 2023 17:30:45 +0800 Subject: [PATCH 138/152] DG : Update deleteworkout diagram and reorganize --- docs/DeveloperGuide.md | 27 ++++++++++++++---------- docs/diagrams/DeleteWorkoutDiagram.puml | 18 ++++++++-------- docs/diagrams/Style.puml | 2 +- docs/images/DeleteWorkoutDiagram.png | Bin 40106 -> 125793 bytes 4 files changed, 26 insertions(+), 21 deletions(-) diff --git a/docs/DeveloperGuide.md b/docs/DeveloperGuide.md index 217349ff1a..3b261918ca 100644 --- a/docs/DeveloperGuide.md +++ b/docs/DeveloperGuide.md @@ -204,9 +204,16 @@ and the WorkoutList consists of list of Workout. ###### [Back to table of contents](#table-of-contents) +## Implementation +### Calories Record -The add mechanism is facilitated by `AddCommand`. +###### [Back to table of contents](#table-of-contents) + +### Workout Record + +#### Add Command +The add mechanism is facilitated by `AddCommand`. It extends `Command` and modifies the execute function to add an exercise. @@ -215,7 +222,7 @@ Given below is an example usage scenario and how the add mechanism behaves at ea Step 1. The user enters the add command with the necessary arguments. -Step 2. The input is processed by the `Parser` to separate out the arguments and creates the exercise to be added, +Step 2. The input is processed by the `Parser` to separate out the arguments and creates the exercise to be added, `toAdd`. Step 3. The `AddCommand` calls `execute()` which calls `WorkList#getCurrentWorkout()` to return `currentWorkout`. @@ -224,23 +231,24 @@ Step 4. Finally, `addExercise()` is called and `toAdd` is added to `currentWorko ###### [Back to table of contents](#table-of-contents) -### Storage Component -The deletion mechanism is facilitated by 'Parser', 'ListCommand', 'WorkoutList' and 'UI', where a Workout object will be deleted according to the command inputted by the user and removed from the workout list. +#### List Command + +The list mechanism is facilitated by 'Parser', 'ListCommand', 'WorkoutList' and 'UI', where a Workout object will be deleted according to the command inputted by the user and removed from the workout list. Below is an example usage scenario and how the List mechanism behaves at each step: Step 1: Assume that the user has already added a workout on 21/03/23 into the WorkoutList using the following command, /start 21/03/23 - Assume the user add another workout on 22/03/23 by entering /start 22/03/23 +Assume the user add another workout on 22/03/23 by entering /start 22/03/23 Step 2: The user input of /list will be taken in for the parser and an object of class ListCommand will be returned. Step 3: The execute method in the ListWorkoutCommand class that is overrides will be called and print out all the dates that while iterating the workoutList. ###### [Back to table of contents](#table-of-contents) -### Calories Component -The View component is facilitated by `Parser`,`Ui`,`WorkoutList`,`Command` and `ViewCommand`, where the user will +#### View Command +The View component is facilitated by `Parser`,`Ui`,`WorkoutList`,`Command` and `ViewCommand`, where the user will enter a specific workout date and the number of exercises on that date will be displayed Below are the specific steps on how to use the view function and how the mechanism will flow: @@ -254,7 +262,7 @@ Below are the specific steps on how to use the view function and how the mechani ###### [Back to table of contents](#table-of-contents) -### Workout Component +#### Delete Command The deletion mechanism is facilitated by 'Parser', 'DeleteCommand', 'Workout', 'WorkoutList' and 'UI', where a Workout object will be deleted according to the command inputted by the user and removed from the workout list. @@ -268,9 +276,6 @@ Step 2: The user input of /delete 21/03/23 will be taken in for the parser and a Step 3: The execute method in the DeleteCommand class that is overrides will be called with parameter date and will iterate through workoutList looking for a workout that matches. It will then remove the workout from the workoutList. ###### [Back to table of contents](#table-of-contents) -### Exit component - -###### [Back to table of contents](#table-of-contents) ## User Stories diff --git a/docs/diagrams/DeleteWorkoutDiagram.puml b/docs/diagrams/DeleteWorkoutDiagram.puml index cba654b414..4cdf5e7c8b 100644 --- a/docs/diagrams/DeleteWorkoutDiagram.puml +++ b/docs/diagrams/DeleteWorkoutDiagram.puml @@ -1,12 +1,12 @@ @startuml -'https://plantuml.com/sequence-diagram +!include Style.puml autonumber actor User participant Duke participant Ui participant Parser -participant CheckInputs +participant WorkoutParser participant DeleteWorkoutCommand participant WorkoutList @@ -17,18 +17,18 @@ User -> Ui: User input return User input Duke -> Parser : processCommand(userInput) activate Parser -Parser -> CheckInputs : processDelete(arguments) -activate CheckInputs -CheckInputs -> DeleteWorkoutCommand : DeleteWorkoutCommand(date) +Parser -> WorkoutParser : parseDeleteWorkoutCommand(arguments) +activate WorkoutParser +WorkoutParser -> DeleteWorkoutCommand : DeleteWorkoutCommand(index) activate DeleteWorkoutCommand -DeleteWorkoutCommand -> WorkoutList : remove(workout) +DeleteWorkoutCommand -> WorkoutList : remove(index) activate WorkoutList return "Workout deleted" deactivate WorkoutList -DeleteWorkoutCommand --> CheckInputs : "Workout deleted" +DeleteWorkoutCommand --> WorkoutParser : "Workout deleted" deactivate DeleteWorkoutCommand -CheckInputs --> Parser : "Workout deleted" -deactivate CheckInputs +WorkoutParser --> Parser : "Workout deleted" +deactivate WorkoutParser Parser --> Duke : "Workout deleted" deactivate Parser Duke -> Duke : display("Workout deleted") diff --git a/docs/diagrams/Style.puml b/docs/diagrams/Style.puml index 723a390b94..6b48195383 100644 --- a/docs/diagrams/Style.puml +++ b/docs/diagrams/Style.puml @@ -96,7 +96,7 @@ skinparam useBetaStyle false '' skinparam defaultFontName "Verdana" skinparam defaultFontSize 12 -skinparam dpi 1200 +skinparam dpi 300 ' Set to 100 when you want to save the diagram skinparam shadowing false skinparam roundcorner 8 diff --git a/docs/images/DeleteWorkoutDiagram.png b/docs/images/DeleteWorkoutDiagram.png index dfc557d344ce958b7c858169ba3af0a7bc862ebf..16f098eea956f8d58db92307a5d82747f0f191b2 100644 GIT binary patch literal 125793 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 J#C3lh{a-{pAAA4+ literal 40106 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 MRFHZmaq8Ot0E$e25dZ)H From d402de61f099e8ec6ece5c6ec81a7931ad8999d0 Mon Sep 17 00:00:00 2001 From: Richardtok Date: Mon, 10 Apr 2023 17:56:47 +0800 Subject: [PATCH 139/152] Change PPP --- docs/team/Richardtok.md | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/team/Richardtok.md b/docs/team/Richardtok.md index 2081f93d78..445d0d7705 100644 --- a/docs/team/Richardtok.md +++ b/docs/team/Richardtok.md @@ -6,6 +6,7 @@ making it a user-friendly option for anyone who wants to keep their fitness and ### Contributions Code Contributions:[RepoCode](https://nus-cs2113-ay2223s2.github.io/tp-dashboard/?search=Richardtok&sort=groupTitle&sortWithin=title&timeframe=commit&mergegroup=&groupSelect=groupByRepos&breakdown=true&checkedFileTypes=docs~functional-code~test-code~other&since=2023-02-17&tabOpen=true&tabType=zoom&zA=coregano&zR=AY2223S2-CS2113-T14-2%2Ftp%5Bmaster%5D&zACS=156.78342687355564&zS=2023-02-17&zFS=&zU=2023-04-10&zMG=false&zFTF=commit&zFGS=groupByRepos&zFR=false) + Implemented Features: Viewing a specific day exercises Workout [#9](https://github.com/AY2223S2-CS2113-T14-1/tp/pull/9) - What it does: It enables the user to view the exercises done in a specific day. - Justification: It allows users to see what exercises they have done on that day From c4f152d418602b990425992c25147464edac9f47 Mon Sep 17 00:00:00 2001 From: guillaume-grn Date: Mon, 10 Apr 2023 18:21:18 +0800 Subject: [PATCH 140/152] DG : Add CountSetsRepsDiagram --- docs/DeveloperGuide.md | 35 +++++++++++++++++------ docs/diagrams/CountSetsRepsDiagram.puml | 36 ++++++++++++++++++++++++ docs/images/CountSetsRepsDiagram.png | Bin 0 -> 120010 bytes 3 files changed, 63 insertions(+), 8 deletions(-) create mode 100644 docs/diagrams/CountSetsRepsDiagram.puml create mode 100644 docs/images/CountSetsRepsDiagram.png diff --git a/docs/DeveloperGuide.md b/docs/DeveloperGuide.md index 969e3a0aa0..88468029b6 100644 --- a/docs/DeveloperGuide.md +++ b/docs/DeveloperGuide.md @@ -265,6 +265,8 @@ and the WorkoutList consists of list of Workout.

###### [Back to table of contents](#table-of-contents) + +#### Deleting a workout The add mechanism is facilitated by `AddCommand`. It extends `Command` and modifies the execute function to add an exercise. @@ -319,25 +321,42 @@ Below are the specific steps on how to use the view function and how the mechani ###### [Back to table of contents](#table-of-contents) ### Workout Component -The deletion mechanism is facilitated by 'Parser', 'DeleteCommand', 'Workout', 'WorkoutList' and 'UI', where a Workout object will be deleted according to the command inputted by the user and removed from the workout list. + +### Calories view component +###### [Back to table of contents](#table-of-contents) + +### Exit component + +###### [Back to table of contents](#table-of-contents) +## Implementation + +### Workout Record + +#### Delete Command +The deletion mechanism is facilitated by 'Parser', 'WorkoutParser', 'DeleteWorkoutCommand', 'WorkoutList' and 'UI', where a Workout object will be deleted according to the command inputted by the user and removed from the workout list. Below is an example usage scenario and how the deletion mechanism behaves at each step: -Step 1: Assume that the user has already added a workout on 21/03/23 into the WorkoutList using the following command, /start 21/03/23 +Step 1: Assume that the user has already added a workout into the WorkoutList using the following command, /wstart upper body training -Step 2: The user input of /delete 21/03/23 will be taken in for the parser and an object of class DeleteCommand will be returned. +Step 2: The user input of /wdelete 1 will be taken in for the parser and an object of class DeleteCommand will be returned. -Step 3: The execute method in the DeleteCommand class that is overrides will be called with parameter date and will iterate through workoutList looking for a workout that matches. It will then remove the workout from the workoutList. -### Calories view component -###### [Back to table of contents](#table-of-contents) +Step 3: The execute method in the DeleteCommand class that is overrides will be called with parameter index and will remove the matching workout from workoutList. It will then return a successful message that will be displayed to the user. -### Exit component +#### Count Command +The count mechanism is facilitated by 'Parser', 'WorkoutParser', 'DeleteWorkoutCommand', 'WorkoutList' and 'UI', where a recap of the total sets and reps done for each exercise will be displayed according to the command inputted by the user. -###### [Back to table of contents](#table-of-contents) + + +Below is an example usage scenario and how the count mechanism behaves at each step: + +Step 1: Assume that the user has already added at least one workout into the WorkoutList using the following command, /wstart upper body training on the 10/04/23. +Step 2: The user input of /wcount 10/04/23 will be taken in for the parser and an object of class CountSetsRepsCommand will be returned. +Step 3: The execute method in the CountSetsRepsCommand class that is overrides will be called with parameter dayInSpecificWeekDate and will agglomerate all the workouts done during the specific week. It will then create a list of exercises with all the distinct exercises and grouped by name. Finally, the reps and sets will be summed and the recap will be displayed to the user. ## User Stories ### V1.0 diff --git a/docs/diagrams/CountSetsRepsDiagram.puml b/docs/diagrams/CountSetsRepsDiagram.puml new file mode 100644 index 0000000000..a58bce8ff0 --- /dev/null +++ b/docs/diagrams/CountSetsRepsDiagram.puml @@ -0,0 +1,36 @@ +@startuml +!include Style.puml + +autonumber +actor User +participant Duke +participant Ui +participant Parser +participant WorkoutParser +participant CountSetsRepsCommand +participant WorkoutList + +Duke -> Ui: getUserInput() +activate Duke +activate Ui +User -> Ui: User input +return User input +Duke -> Parser : processCommand(userInput) +activate Parser +Parser -> WorkoutParser : parseSetsRepsCountCommand(arguments) +activate WorkoutParser +WorkoutParser -> CountSetsRepsCommand : countSetsRepsCommand(date) +activate CountSetsRepsCommand +CountSetsRepsCommand -> WorkoutList : countSetsReps(dayInSpecificWeekDate) +activate WorkoutList +WorkoutList -> WorkoutList : displayCountSetsReps \n(distinctExercises,dayInSpecificWeekDate) +return output +deactivate WorkoutList +CountSetsRepsCommand --> WorkoutParser : output +deactivate CountSetsRepsCommand +WorkoutParser --> Parser : output +deactivate WorkoutParser +Parser --> Duke : output +deactivate Parser +Duke -> Duke : display(output) +@enduml \ No newline at end of file diff --git a/docs/images/CountSetsRepsDiagram.png b/docs/images/CountSetsRepsDiagram.png new file mode 100644 index 0000000000000000000000000000000000000000..14a6bd8806afa2f5c59b36a6a413a9969b3448cd GIT binary patch literal 120010 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�o%i4uSV`2-Yq7)o$as7! z2<7d7;#QMI-W5nqyUZz9ZzXGUHY4jdQTjnf{!GuKWuo?}r%QP$^suhB7Tcoxg9u)V zQgesrFc)} zL$o54oG2AvNC%lVL3Tp4^omx6{3coOg7<8ggEl^13kD(nbZA2v+u{|Ku$qs>rpRe` zcz>~H&GA5As=kj?Z@unmkJCawJdEglHQkew9!dqnmo9~zsBqoCokPxL&a|pPHRJAc zq%xsRf!O%rV1XYq)Z@H`!IN2Y*mHdFgkqhS&m8p)#P{Y<)z!C^P&bZx^sw-m=#@6{ zbd9rxSx;sUr(V~jDdLYthPL~XYm>4G__|eTd?jd*XBK`jAk8~09P?Q>*P)M-=Q*3- ziY5gydGG zK<7LhU@v}n7og7#7Ur(!!a|A#GZ#)U zaq<|SyR0HYgT0WUVaKezg@{48YPS6eiaROEGeoHNw7@Som|?G zVc)2l+-OsCMN?$6JoBXUlX_3cV!xoScO=r0hee~F(Uz3f$jpdwVeyl{Eb;m>Ch+mE zRy>^a{6k=oK4sIt`kD*c&Mdzd z_sj%(LXBzsE^-l&i8g3Xb40__E-y_VFit1H#<#>t!Rz_)!Nmg6L-M>A5 z4j4a}chC>vyBQ;eImFb{f!kaXQF;A3f$#VrYy@lV2S+M|Ek2~u6O$k<(HPy57KLri zFywlh=ro?awo$BaZ3@V?4S@pu44M(rshWkO8ijFNV0Fapu zyB+CktK?lyv+%dV1mL)ezPCrYm7X3hjYX_`>vwB8o@0g@CNNJdD%)%9f0cilKIK0S zm5qs}Vs0T8jGrHChXE3TRCC^zeCl3u;$Ef1<3({jDQE8?o^7gUz<=QC?b6s1d1QM* zWo7D}jVFG!YY>fI5D4qyipu92lu|!pjZY2dlQ@UgK>oNsaV6&`tj4g7=n@WE)W#U| zn3t0Qn3%s3_i%LeiBF5(3mK@YLY#d{YX-N^?CqI%PdJqx+mnxbmz}K`Kr14%^>t;D zlNF?e-p&Q2Dp_j6-Cz8r|(igIfJk0$Ww7J&%6vecH~|2M)>) zvO)fAeFFs770&_mAkM}L`2*Xv;f#%`O;kU0v7&+dd};jdAzlyO`MB53D++XQp7o8q z5zTD9hKh!t03@xvzBGwX&~nd5C-MMKuyP56Y{vLB%ToX#LxmOUzZNCyc_KdT9cJsP zaGRT-Z!KMr$n$RV(H=}m914c!>d+w%R)jV;Q5T40`U%b_ioz{I96~=Z8Wo1If{6rp zjUGL|pP}Eqdtt|3Bk1AcVn^lEAaCI7G7v)NNgKy;=2jo4_Od8!bO!BAU1q7eY$WP5X`jfy$n>u( z>P2Y2d{p>t)wFPe{Wd%FR6HTA$GMf0@Y$&0EV`&FBO=3Iifl))q!u_C<+Vje?c|Yl zZTv=y8Sd7-=@XYB9DjlO$_cU;vwOqaKV$asNQ+>vm4xS|>dY^54zw}HjZKP^9#%`| z!qShIher$b`}^|R3dZ?Iwg(=EMaz}bS%lfj-e>z9ICVI1;<|Uf5Sq+1r*A)8(@6wMW+CMAwr{*m#y7Oc z9N3;w0u%x7=21xBZnaf;SI!?;PM7;@0*Q>n-r$xK*5H<8HZE0?0Pvafss&L>Sp4P( zUr4!{_j;T`q%Xvt&JF~BM@0yLqeXQd-epG@+%2ftnLQK3WiMaptv2q;j~^MNebVyU z1^~XxobjU=Ul~GpcnwjZ?ZXWU0iT6(5+RT^>}5QW`U#w#!~x>$YwCE6&-YQiN=k%B z(D^HV7Q`+rtqOv2X_+W0TGI`$CvqOldI^ogEBvy0b!R$JJT3TiK5xVuY;^(wSB zt%p$Xn770rr}OMnnS1c<*l|t`Qis#-QJu=^cbWWYg5_4D;qb&FeJBg{uLPSh9=763 zk(W93T;^+>@U~VgM;ig2Y}}shi4`h#JqVu$@cx;_Q7_YG02Pe>ETq717M?!P`?0iH z%m7yreSshMS#l2#2V9LSgU_o{Ib$z#`YdKK*}t-Xb9?z5fZrtd^XRJ0O%4iU9{Vt#6|Y(Ei86U6^T3e{(pYy6ll%_Nxg?v02YnX(-R z)_3N~gX9gf6$R=7rRU&sDO(DfWUbeoWKX8Q^Os`h>`13AM5szXWF84#*|epYy0_XK z-c+;G|>Jh4X%Qm0sQcS26odZqgM0mc~fI5NZTbaSYs&!O!f{`>*7NT(gbBA1dYx z_VaIbH&|pVs-d}o&(>V>2Lsqj}+woDO& zl(AZT=t|CUSt1#3F1IAec>1y+Ih5zaVVYCw4#=@A^iTJYUR6g{_aZt+;V*!^p=IZ6hqk+TSI{2tuPffYmny+SI{!wh~UdWY37u46FWd8it|jJ8xkYE`Eej9i=W$h zygAO+PWC)6iVzIQKW8T;c_^LeGRFsz^o6j3JJ3^|)pL-Pi+q2!da~0`V_zOt`@pTu zdRXfuB;bUFgDoa$eO?R(zD$STP}~TsrlXgCvFlEkh#whJ&KgaTpLhSdJ^l!>z5U(n zfu{$rpbPSv^s`{-UB6X=5#pPpg#|vdnuPp$2|gUhxD+`;-vgHcVQ?PgS<`qj*N}-g zjog1J#KY#YP`;|~)iR;uesA80gG0}uWnyYek}jpLm^;YY&u?IqELkH(v|pE^RXvVR zfvOWJsu}tm4NF%k@pd!V)_xdzrOM2}B0I$ocri-utZvs**cbbrW34y*AkS+lS+iZ5 znJKK9_Gr@7d@bd@)_%hqU2FlnA6F_Q@pOO}aVd{rIWKtAac$CC`)O1M-F+6Hy<=@X z!&&C=QLYH`&C}`i$%;`}{asG0-1neRQrj>kXDi>5rgf8hL}=SHlP0K~#8r|>VU}Nh zBkw#Q{i#-z;A}nx3$@RT20NST#&ZPwNiP2*g)8@~z_rO7*DX5Ud6GM!-(aCjB&t{< zdWyE>7N}gRcU24OoXWJNX4uwC*0o*aOV%ED-1|6=D_3n3rWBrFkZ4JD{FPx@Vi~JOjbp`<#;QnxnGBJ|VonZh;_! zRl%^gf41LBn(50fiJr7Y8Fb5S#fH_DneFslF?<`Zh5)60x;$9hJ}9Am7!-gYqM_)K znw{$DB!Y+6){kW@C_i{BW#6*AuANH|nf6T{`mE!)x?Tu36fo0*=n~GwU{~VvUm+`r zovpQj(c5m{d!O~HzbyV(RTs)|biC+aE&@B=&bC|uMC(4O_jvRwB%Nd5wEs!5?Fpp9 zPI3QH!I@xPXUDA}9yhDGiXOkg$?nCelFZ_FKY5+3o*-}=atcukoo*?u3`KgvV_yS; z)YVW_UYm)7oNe^up0>l@pT{bp5y)5Fg2i&a5R|*ai@|)!zoU^4Rbk@cnwJMO3{4X5 z$(s=&Sg8?(N1!k4s3xyz@iKX+_m+0)1OLw}6nXOJ5>KW4dD8XS>}g@5n)=uEwfdFy zpJa*n9&?9UDqXQNKltF_4B&nCz7UCV1n!zy6v)-Xbn3Ph;sK2KraNpZ!CdcvXd)Ch z3?A|~5Eyk7bK~=z)6a{DaAMqyd$6nCak+mWg{1sf9h^+*-B8WPWU0WygkgSRy6$JL zkESc~A*c0m>yGqcjtJ(Dja~1aS`zG9oNmeMK+z2wfdA~C|yW_YUMksgWP>Cjf0+M z_pZTl-n(i5^iN=sq_D?!xU&)T~Fv0ur=S#PZJvI?_0P$XBW*RON*B zO+^8&6x9T{W~EyTSz&853hC}W6cS7d>GpvO#kI?6Glg~Z*PD3?sUdlX2gcrnJ|^QI#4YI*4Anx5<>7FF z8$FAeK-T4sxSdB6Meb~C;WnhZ`m(H{Ek#q%7=*2K+of^%yW^16Ea;O+Qa&yRfKu(1 z#5*D%-y3jh~EIdrY@%&T|5UMYkDs)uhG*xl#woy(OiPV7b22b70C@CRjhxEsr_9P z83Ci5`ttInS1Y}?1L5w2VYC$SR)?k1$#9!#+oxiza;kG`E8t#nMs0+0ikYj(El@Y_ zsbf3h4jt|_4KsWgTg0VUb~jrLpK51B1Cb-6-DS?33KBi8KSW^ZP3d%f4fltHRR`_k zMPLNT+F4_BuaTNmCCkDNkE@9$e9)50rp1)M(|6r4=e#YLYNWt(z|v42W|3UAkjehd zA-_^yfsOBtkZ_;R*AE{CU~?LWRHXmXFt0#Nk*32ZsPEeWgf0 z!2p+{7HYatXtsj#iKiR=1_;BxikpmbgTtOH&1WE2)z>~48C5SSmL5o}G`**0(;YH5 zY6BN~VCmJ%lR@iyO!JQY#t;vv_wD)9x>9jgn-8XH?BU=Ya5qJcccH3NuihjW;#tKZ zQMz}&Kw%vyoimo)N)v1Ev}mHP$$Gk@x(b-OE}V^AwQbv<*B-~Y1LfRIVA9YpslmKL zO^VTb)!ey*HuCJ=1_n|$hf)$blVi_lNi4h*x@4EFf2zaNE?uZ`5;9pK zmXn0*3rE8hgK7?iHSLKTO>D-ZoPq~s6g!8DgjM@qN(j0PiO;=a3e!?D=R@z5D`I>$ zbG%;?x*n*PCWSf7M$1r=6xlLc72O&Fd0cMPN|3I*2?J95bp*%M|81 zIWV0e0vk)lZ6*1{TJSVo^i(yM7yy;igHRuj!}VV_H23w27rGQ-)E~Qq}}LyaPF$a ze39sW)=p{ltvLxZ4?O0Z5Q05l1nSxQJpTn(#cJvfK_WRkQNOIVS@J1s7Fd2zNhKy- z5(+p}p8*yzEsM?u!2O4uO-p9CZi_Ew{cVMrZClmT1eQvR9Mx`)z7SsEAZPn%1|v$r?vAA#0;`XvVuzF6l{t}64oa3@?7(nHEPm}9pneU2fVbw{mbH%BzI0C zqwhvSNJHb=VLy{HZ7{vcA;A0o394f)=+#|EpYRRm|n(mDSqiOmCl#W__+4IC7;;lexyEu~K|s+f7QSQ2tr8RkH`VtUuF(?M1Hu-w z;0#fy%i@zJH|m_wv{w6g`q__L$?~KTZn=*u*~sDHogFIIl3ZO~pQ+4d{1@PRg1-*D z=i*cyHMU3VUi>Q8+=@PsE8>3n3+>5L!0*I9%}Ld;l>fx>deR#&R%-C71qP*ELC(h& z;qlX7I(bSK>C`q2e9Nk7(yfmf54vSRA(En04s&J@C}h%*fId4o3kaW$)GGp*@UKel z#obtZQ@l`7lM0OlA$`cR&h-(R>wKf;5nUa;}tX9o#3)Jq(Fwm|TdWaV(QG}{BsItARJ=@??>R$O=Zb8yxD2HaFVj0i0DWCu93Mxy6#Pk&Q0|Ju^9o zH-D~tpu&h|8*uA&rN7K+258$%4v_&mLJF7+Gu~FQ2c{em54^qoOfuWH?D$?(=5~qK zKsF<&3c58l+xVKKafNl(tc5j3iT;vRjpCF7QSlBIY@dK!UJ;vh_y9Tj0It~KQ6Rj& zV^Oq;4h=v4lq(4tyro|qN54c_$BL`)nZDu4s|hhhs6_<sp9c$306L@4^w< z_1(0Nq^8UVA?iBig=ZZIm6NG=fGeWi4*A5La$zmnE=9e4G~Y4;`P@T8L+S-;1Cb79 zOD*d8J>^15+g0gM9w`J||7rbtOp-BXIg!xD=P9vqs#X6KJegNDT>BxxkiUiCv*p_3 zPXj#46rQh5pV^$w{Z6U-WKzU>ww5%8LQRbYp>ui|Pc8*2Tr4IjMNqxFfBUcM9oX8m z$MUw>qUE}%Z$746pQq4xMSw&Y@`b1eAE+GlwB>P&=>t0GIJS!bh_7iq6Q7NKx1Ii5 z7NGCpf43*P3Gd~t5E#n4OEB~EnTPkn&GB=WK8!E$ML_eIDmsqnZjFsh0Qu^HsVm%) z?2%vecw_;{hY$^)_=6(>&;Q$mLh(aeTY$%3?iAo|a2Vn*USjXc-6pJNIEvrqz=AJQ@J3$6xIEF?;-t?Zu$d$@FsPnfJ?xqCJINq+jWqU(fV--#n=5WhxT- ziaGg&A2!$uoFxic!^iHNJ7x9>FpEiBtKu1QVE^I4!o*(oh{P#`_$OtBt{VqTci_+Y zErpn2u!Fsa>ZR4J%og}$Bss#^KWl4`%Vr}!J%0j?KuaBx2q$eJ+jrJFWKTsDCBN(h zL6S!az+j^NOH?C)-%i^HXCg_K0xepy=|VSh~-i!*U8l{T;Uw(QirAA z0Bs=jACu~GDueg>rYG}g%7m0C9F`{luV`JMuTts)Em!ckaQbj}Xn81P_(z7IE*_HfV z_{{Ky@E`j@zix;?^m(5>awuqaA~`r%vGL!-gI(0!_a3+G`9h+%LmPKi&}h6LL%QdH z1^sMkO->HE;Gb6YPb|g$PEJY4JooE|515v7ZNr+YKmTae2b@7tI$=^@@0^GC(|@zK zUvB8{8u{+72usQBChwzu!EBRWUlVfp_UOTS9Y9H1eqkMzC9dy!6UK68&$~XQ1w#*H zx^EOuLL04IHx`OOx>BKPWgq{zK)&8aFjl$?5f`t$E9z zgA^SHkX#ELerSj;5UDJyt0$YxU*=S*e0&ir(b|P^Z&Ji0HZzC09nd^t3Fh-CQ%!$GX zhkqyB$Ham%$?l|7>9x?MUq%UrDPpL;r3;ajpUBSuF%w1vvaiES9Eh)ge8oO`tChk= zM!AMmQn?J1Z1Eu30hBeInC>y?+o3{)s|`JMgj=X3Rw&j$J;c7)>A6cJ>&WJc=YA|7 z5D-rIfKHZQ#N^8XS)Mu)nf%PvSqoq8MHsMfiyAj(AK+(cvlKPBoa!?n>_H!pSzJcN z^Djcx*_Wd~t)h7uEY25ocX8N2tzgS_JV>^G@wzCh(&t=7}p_AwK9!{TNa`m2Tj zGVdNPz+CC+Hmt;>%eiX|5|(r3ND5I8oHg^$Q$1ZXSlTQh?+6U$ha7D&Cl^F_OD{ud z?DT*#Tqi}WjDJA6a_k%)f4+kxL%;X$0dTl}i+I=)qXf39p1n{LDisqPWCF|q`8q_t zC8_yME0H>Gwy|K!9MW4DP)LHYunG;GYdSz~xEZ@1Vk=+i>WHFMc<-X7qE}<-sb2#Z zqW0{jFg1{|AIFqzPmeKwK3p(cad`ABVzw^GaecST^Jlx%`wLBo;qn3T_+U5>!oZxP zcEFP{N5%XpSelPV!%VJo@pverao5#mBH}T@fEk&&M-SLy+MuR@dp_JG8!TDE#~l^N z*Gp+xdbYg$tdy2yeqWhj^9*Q^Y3Bz(463qxk>Y;S!=DZ!1&!y7 zH?Ul$L-5-q^chM`_$imLG>pAoTmKlkS4Zhd$s;tjMWPnT5goR@$!}Xk?j}>*hYPF{|M;K3}?eH(=mHH7$~VMa4JxFx1?DSedYPmK9{o@rc%yH2*2~Q zXM_AzMJTK-2IXN`J|L+W`n%}3HK!Zv98gS~*BBz7|JL$KI-^AuRMmFyyJ3!5Am839 zgJ*hk2tqsR<1McHsmk}NqdNe~AHTi6{9W8T{i1-NlGQ*D2c;qzPH(e1&Dh%Q1Q*5z z4*Hp~VfgYuL1Sql>N811{zyZR1vhQF>{bEsAf5pwLEGwMr3Sd z(?<%>zjfZ&3x6I55W9$;j zR-sSwl(*uG$w<}(b-tf^_MX%JZO$%|qs7H$%5H0gb2uRsFwR?Mz5RQ~&hbb!S4S7% z0*ZTyg$5#RX0w*RXjd?zoQ*18CJT%>?g37#Jo}S5A1G|La!=EbhdTEgdJe3QPB@Ja zaCw2?TT9b$oB87Iyw+RUpa@w-5lzxZvv=Rh@pBbVcMcc9)7ZKx;GQlcijwfF!O`-u^vEJI>wKFQeI(K$so=^gQg z{1=duCEx2-Djz1~ZZgw@ZkJ(?AR3o`Zk*o+&jnbB&!~82t@eHo3@Es=SBLU40Hr{! zU{=+;4ra@rn5+l5I@9CK&*o=2sxK6Z>SZY;sXq>&4c%S7uNYQ;T6-Tjp*bspOpHOt z$O_U|<;6k`j|~SK-+p()_cDi#=^jZ=X1ZH_?h~avWMp|R8~0@20x_2Pt$v<|Guq@x z_c>5DPM+ZJJA~&W``X6{>#qP}l+=0Ns8VLPf}Gr=Y|$)I)e%%7Tx~bCOA2f)9f=K# zcjZGzC#qSmKfNdWwaj6C9(~`eS3vS%VsIVN;%h#-ku{2Lw0n}HmC@R^AQ(@Gl!04} zea=e2jZvzO_M^l1`#nJ;Iz-Qb>`wMLI2(j5GC7&*H~f&6ZLy9oY8#0aM&zV9T(=G8 zTeDss_enq;Tzd&DSZ2n5UL(f^8XSNqbUM=)+$8;aMGL5+4)#v3m zllSiBfnqmkZxZ4|Ca48w1@o3G3TXW&jr_`uAq|Cp@8=o823)7A(CO9&$C%xz(+HZx zFUce+%SRaEdbB9+w*<7u7Nvst3E<>8U?y8}F2Kz3upHNa+V0A;Z^gDk4F?OdM@ja} z68~*pKaanE`n)@Y^sOn+1tNE-)m(K?^UdN3;8~oE++J{#0BJ%C<}Vo~(C`ixA->Y7 zeYPNqj+FgJZ3$q%>()9gVjmE!eeR#LVlNAp8PwFwA@ z)j(a1xyH*Hac#l(A9d_F-WnQnFr&o=QGBAEx6&#glY7`XxPO>?Z&i3AN+>!DrB!!C zlIL;q>FF!0y5k88j#iFAAUn5Uz#XEc``NqOB128-S*#5$#i&G1sLGj_moq)L}mQF@;f7a)+**aWeN+76zti28zTrGBctE(sOwIxnI zedQ)2nj$9ozwZiKcmThH^qCwHMd>?s_Dq;9EL zu$&iYjODxCd*v%f3plBLA=Ll-mZ3PHeD6uXX98^^u{y;rpjG1()8iMC2m~n_d*k!9 zmh7RoLN638^6O-9?P9*WQi1!2+pRClcm zlP)f4SLlZODlEb9r!A@sXiq=94F(+}e4LZ*KpwXRM12?kmVoMD(`%L>?>hy^TXj$4 z|IsNAs9Y#f<|p$G>Ot;8cb!TW*w8xYkU;1YXNHf|0hanA$2sP_U@t(1yb5}Hk2xdT zJaLe_gX_$7Yt_;6M`!WBk$(d>;4-EDL64zIiWnQ88le7vf%Kcd5)CBPEN)&e{Kb9( zr449shAns0(`c~o5rh`5k$>XKz<(&g z<~iTkXnIL?R4qd}K(E9oOsthTM6(8ZLN5~k#TaGM_HO~#z8UZLOPbdr&aGoCyQg;iwxBa4WDOaQaSQt&L=p+wN|b^ zHoPsq&C_#>O1G(*L=>gGe|Ix0KO&y{%Hli#!`3hxLVO7W-N4n?hiJb6ovU!84z6j| zzqRD*m7AP{Yw&wg5~OlI&#*xoHc{q~I=&ORssOgbb9`K78idB%k79_P8=wz73Upy# z4pyb7sD~~Z3a&H~27xAJNLTNt5xUJAo=$Fiy&F?V*7~A0FsSRq9KLPqbICd5u60_5=5|DMy|50HMYyti#%?BM$I)C) zvXondU%6}mf9|E+H84z{6Y}q2M8Pn@U>FnU&2J|$PVVD2^xye0R6{OQYm8L z6%^#hOQ-z8jb0bM+Ix>b|J74}(PchI+=QWPx#77q)(*NdDfDV)fot~@=l^=?KF&SA z`#2B$9^xeEcXxv>XRQ<>u%i!D1(<%lBjwX;L;e0MvM_KoBI2Ovg4 z50H)E;sO({dmxej?j}noj}{(`PW?6o`&z3Lf06cZ#><*lRN5W=aQ1R zeQee~^RHLFO5T%asD8v9$LFlY^OrFtfVJ?w{kQ*$V_qu)YY8G=G-Xx4OQ_ZBJ{pe6 z$LhPqNhhMM$atmi;gA_tl-4AO$g8@WoxKKyPo9<~?G{oUXW5|pfD z5F|?@Ad)kpfQke~lH?>ABuIui?;?8p6CBX39M+;F0$_@QZDIf!Cn^K4-o7o4Yz* zXpuSBM~Li+z;-bG>z0r^2mepsO!V)!V`SY0XiBOc7+$7!Q{q0~2zY_a-PhQ#F(@P9 zbo^`jGSRza&_2oEe5^%Kde=$}0%dH47Oscj2v;CBz#)fzhSJ9Z{ny&7{ z!OB;5GeuTkGj!MX1!XqyZ&;++bq{z8glYKXEjEd3k0GX`@#T`XwsxAK%whBUL^L!s zD|+*XX zQDdvnG%n=PEk{!_-X-jv^aaeS2PRO%XN?foC-Au`!3CdxvyZT%NrBe7zP()u&?+ge zU*mJw=bmyLbJ1ecrtLx^1|u-!)84t6VVb0n@y7}1piZ0f+u+>aO&_LI`S9_Deh+5H3Z9<164K)LB(Zb6kI5Itop3WaO1np; z1YCopS&xbKqd#x5)nB1e$Q_OHn6J6yN1s;6O2Vj;6<>#U&A|P^wZ6YQ!0)r}@_Dna zce8G8_T|U{Y@lc?bYc(rt7?roZJ6MUtgWwL7!D6y*;;JYcCBH?@M4lfvxGP!9{zfd z847CED@K&BFHQ8W)mv?M!eaB_wLa+2NJFV5M$qpg_1Ju$ zS<4yh9qA$%_@g3LHJc$n%#teRggCARv#vOkm}%ISnpJXYH;0?MJ7&()q;QxcZOv6< z)s?jH+dkYD2DbvH!Lz(j`HE&K$+bPm#9=};&3=ep`$M}_GLFt^o=z3C4=E)4^RK)= z=RD}jW!ZL`NXZGao6egXi4)iw>p0}QAARb|!_x|O4R$?5ILur*MZ?vJZLHoguYNDMimwam-qsN$c?7=4yq2*9rCc*8#A8zE+`| z3tp`Yzq0_dhA=)=wl)nX2iyI)LSO25(~(fC?HZ>w<^d1KWqqgR0LQTaM=+}5dBav$Ls>Xxdji9M^{R^MRN+E>l2J@g#|Oja zLzx8FlP6DFwB;FEn%eimath3nsfbS7St)H_-q#?O>FPfdY`E0U8rrZ z!p&=Ji*J$@fOSZ>rIBq{;8v;AN5_-W9G8+b_=>$7VAD0D>7jO-u3h1kMd!P}bx?}~ zO-xh;B&?#A)CroKnJrHftL;B^buX#%?+}4$*5=88Ig8bNc*t z?$xTr`o>0hXY~!(;)lW{8mN$9i>1Am#r`x-Dyr+6CX~z zgWJMz!@Zlq(oXBmckkZyV>o}Os~oo(jx%fWbLt~?>;sRe(t(@m%t7qND+o6yuwC)^ z@#Btake0`X+#mI&-u#A_KFVlfBkuU=#*D*^o%RQDro3~Q2&1g|!f4&UZ+j%};a&aq zWKFqNo}MUE7nI~KeJLgmhQ`~TTs^CWpiP#x?Au%L-Oi#{Llx7NnSH=ZmARGRJ3;$q1o^^|3ijn;~K zzE5sa_Ncg4X}pq**2{gncF{M*2IyLWF&^~Q^cN0%GFkhzcZS=WaKo`T#B90Nae?2a z*lBnY<0SutK}@GUgnJI-PDtI8p<5%#)otEWX!HDHY<_+|3^q6MQwmKK=(zBx0`ae% zW2B95%(s{z6xh71?1bA|nP^aIS)Cgg(Bidein;kbPvbK~tD0HeWpnsjMVanN?6dmG z6N+lDsFak#`5j8K;B4XN^P#9Q>rU^wl7f;s5=wkpQO$o>JpNU3l&gP1#QuFBx?IR* zkM^ZkP>HvYl3@?boFl$7_A~;9qg&%Y)$u``B)~{!ppwQL-!JuULHSCRQVcA3j%LUC z0JYat7yP{VmfI88O}KB8L`Rf=`}D-OET(KPM@P0%FoQ@(mI0AlkIhJEZbo2LA1S_& zez=3BnzEaqXDOioFFwJkE0_7+zXvbCC()_x&DZqvGCASX@t-o%?On(%EG%T-pI)E$ zih=jMef!p*QPoW=PS~I^O8DekZZkbzr?2}t5W^g8;V~b5_;DAW+M}xT-u&yMi(}11 zcn*E51KxyY$P_JZOkfR${1lG}71^yw)oTn3dXBExF4S=iRBO>{IIaz8j?R`6dehfj zj!&N{-f)WyP`AAZgCpc$JuNZO6f17K6PZLD*vp~B=`Ss#4eQt_9#iZWofRKZj!n1| z4H7RW`xTLM7+0M+K~Dm%uFEg^*9LvZ9^1lcA$5`u{q5>zQ9~DhEX%Nssqpi&V>GvyVCGi6$cgBrBqSbS z`=5~C%{M<7O~^ZY%{HRvAYI5&5$3|#lErIVl&7cjCsNJox%FXIy!pc^jC0RW@xg&` zeJBUBWz_$y%%CHpyo^-il$#Xq+~?fm`#4%PoVGqEJE_9IZ*R;{yOmJihEdUodf_)` zcN!Ng{=6#f*a7tW2MjrIb4;f(g?f}pZ*hWcX@tmZorz;+;+(l~HP1{T5v|GlPy1o6 z+^HR{Pi{dh5k?hH+RYu^S8$6Prld3rF+abg)ci|w%e_uGoPDn-P9~1WrdTMOX z2Snz!D5%zjaI-0U7j8@!R8dDemmH!`zHBw!rNj5A(jd~Nvm{UxaEIQxY9#>S$j4ZN(m;?2lHgMfF&zCH{bin-rh4kL4H z3H$$kV^pG`j5fF%FbGZgEiPTeKo^GV4wnV7>GLms5yCt5@MEj0NodHa)C+`=1eV3xP-z%wYUWq>!&K zDG~PMoiwwNdd(8*?OFHPnbkTj|Dp>VRM`7pGlpUV)YoBXEm-VRtCl$FaE>-LHmuW} zhsHUt?Ggo5qZ8v0G>u>&z@Hnaz(5F27jFNExH4YlO8l`&*bR}^t9|a$VZ3?y`Bw{# zLyXDT@5`L*&~&GKy+F}ng4rs`g5&tlhNQcO$KjIG>u3kNNV>Qh_JvcoMVmb1I0Z|| z;DxTE2Hp7acmp{ls6qY+PTuk<}Te()9e zkXhusT%4Izh%OXk*lY*yW&LR0pcGTOAuVOh5HG8$NFW-QWAKSC5WZ*srh+r#F{=oC+hrQ*jDVY zF}NkSvu6*Tvl8?iEWV5=DMV09T;LKOeeg<>mf6F8%5*dTItRhW44w{kMJam2QYrJ7SiX;=%h*w80PNOJPy_+^JKOlEkGB>(#xrsGziZ zxop%xk1;VWRpC6`Pbj_^4N{{aV^JaQp%A#;{z6Q+yK)BEY3*Q{1>kFcAT&Xi_;9D7>#$8!|>J10s;LM}-u{igD zBjG|?>(?E(CN$g+_SMDU&FgR{^Y{zIoj_Gb`tBZlQNxPz6BOMO@#PUIcC@F+F8_u? z-FPW4921F&iD24^izsmemYm+zL{BO{u)G4xsq&X(zEnxx!O6wzs2-ea2DB`yudQQR;E+F|Ni?&F{JS1GHSxvW6R6eK-?iUb` zJ@|w?cHiS*B)S@Ve0%IEk<+}!o3Oqa~LIs!P$eHU`SWEX+jwS^IH@JO@YJ|QPvuIWHi>6^%R?`Z9_sqJS4 zZSQfDLnd!c7;Zm*b8!G76cWcxi2q5${O+76oPNvp_eI;waVdz9=q!iDShZqBev;TP zCySMu_C`(9WyruzkO9J`?Bt>MzA?Xwrn zRtlX4iwV67=RBWNH^fU3GV`?F6@H|$E8^7Ei`P@4GWpjx9c>rE#^A4Let3E4|yx z;XFJ_hzkjSnf4r#jhD>z3x^?k zC;Rb1_c`}+yqHQ%N?mVk>YQ*fBsUhbv$nP$ix%(Iv?^rFQ+#JZx-n(q6s%tL;|E1W@c+3y~$LFw9xR95TOl|Nlw`-3*F0%#qIYlCLIWvE`vZ9>*rS8)Te~0ZYZyIXK zh0%C}mJb$lvR_;8R{cE1ADzUG_F|m!ZwzD@o$O?EYtp(y-j_Z_S<2*SI@#$v979-> zKYhzz{neP{F9Ls&mFe#0^W*_WrR~Nn>=FhKK71n~?{&C0m|`NiZf`8P9=IRxtIqz-)6v4}eC2#OMbgY$mz>I%$RFDnJM%s>Y|FY*KeLI=Un1K=F=O$Cgvsu| z??tVeY|RHbfqEBi8Q72X9BU&8y=>gNxj5TY`Jcb7t2Q~c=uu^^sHkL8YKpiwW6^_& zRGqOCK|Oo_?wQK`zt4PKUDsP(pN40;s#fR4(<&Ef|LPoT?#c`R)esN3ul9Y)WxRg- zp?QbV@8y2j!Xq8z^9X;~*-`9;{09`}mL8F({@s3HYMH)I?FG^A6Y}H5C_&Gt?{jdn z`jt_)AHzY>Xs_D}t{<{Y^pXuSd8)f=^*@d|Ov*rH7G{UC*u{LjL z{-Z795B+Dm_}?)c$o0z^bGlwLHRk@iE&OWFK}>QlK?m8YJC8^8!!%CE%bNfD1n*qT zegI8;_uox(=jv-0a^WA&WoH_He8#mhJdWYI;1$TTdLg}4ylc?{9H9wf$p8(RF zbU{x@{_jKlIRV*${2mAhr^9iZBa6FgO1iCjDZ`wCjk0eNGJJU_8GN}9k|!}j9Y3Se z+&<$u+*U8nl`9({7_HvW_0@d^Rx|wOqhA(L?4hvZvf^WR9+#c#1O@gaul2)A;jfyK z6w?-2bm@&{209GWrmzXk5blQu`W@bw%#>dJOy#)R_lx)YQDg6SW>3M;@_{rs4p8)p z4YDT!v*gk&dAg`MbkSIbCTA~4Wh8vB+#la-FMNqRJ{?kYb*HVR=68}F9x!?GtVyQ5 z4lC!ql=idYap(b&xc?=B-(ejhYsxgt_Ijbs!fhfg$i^W4|A=I`w3zkrq$1lTbgm|^ z-SQ-hcKJ(69?sOK(X>(_Cvoi$bFN4naDPcHz@PfGROmdf{OZb^i+4)&PpB_K6z+BD zVpUbRf)!MGWL?KUhLG0D*!5l-{YUxMj$D z%%N?rg1Q&*ob~*>VB_`af|+-;CRvRlnxji?8qzIl{D>y(W`ivhhF?h~-X`nUzyvL+qD*G~Xu=YZHW1iW_U8`=6 zZQUf+eH>BVh5#D~(i|a*NXr|3+gE{GPs82nzC`o()DSlW(>ZsfxQCw6cqsuSDe>+j zgg|(|B^SwbL6V)%`~|+_$5KU;ttZ+Mq2xIKgbiB@UC5;cwiaE! zl#p7bh&j?%v!+9sKD+;Vti?ntVjqt>08%m+OlIf|HHuOb;5kmH_TDNQnab(q$2vjI zcHTo)COUC@niR6xFkYKS3EMT2F88mOcK4UNkRzl8CWVv~nX4m|SD&sEN%I~f6+cWn zlTpKjgDOLRKe&gedletr)Pn;HVgx-a`8OtsUH~P1m~lW-Tn2`H3mG==pNIX@g&a`M zG_brk_YTxUp=$AE1|zUdU=N1{+_c8ShzJ~33VI3He1o1>e$@}ZEAJHSsl##zZ9a|# z>%CcJo7`t?sx9b=aGcZ|NTMo(Y$xBca$4Z#m?KL-sAxT0$caNEMA#NvmS|D;kNhbu zQ!zV;t_>H!eS1Qf0j zP(Vlq7;lHZrT|pwO8Yd~xdjfPC$pNRs3pE9duiF6!`4WRY#lyn55Bjn)8 z(JDr=kK@8sK~KF=`f*9r7l}V*9$9+Fuz@^Q#>DrZC4;Mo7WI~rRv`f#5|()W0D5yF z9QTqwr|Xe8RQsa1T7g0%btuS=A><}Kj^_tcp1E4beA|PB@$~|xDWW_fE==XaXF<=E zUMB&pYW4$VMMYB5pWmM}3g2)4=kKp3L`%G7Pk?He={rqGXQ}w@t!E;7U`%surM*uEkMu$d?RG1zx36vh?P+P?300vbi#zu_p<#-#Z+Y^k6P;UHFigojrTsylAW-Q;*tF8skZ7kguaj5L~zsQPGo+#>sVbLcx1hLWO zPn1J)Ny4wyNKw9a5X}p?H?jvdDPlqh!>iIVfb+?n%Jzct({~>#EppD0Gx5F9`nn8u zV*F=2IgiJ&y%;C(!K9b}5Z_*?vaWaKnKk?RCw$G+&oS!cENlf@7fwa*hd9d1S>R#g z@W`J{ro%943@;!J*BuGj(OggiTAmP75{m9zy@)}enJ?KAt_yC8CvPFx068T;Z zgh3~+`$+EWcohXm9^TUZX~!cmPsV&S_11+KS`0m`glKz!GvMf@tcRCcRcC;SOy8NQ zWowuOrYrB@ti3$>b#8DZ+=-vK6e&FqfLo@9Wd_2&89HN6M{EVhYDY(hwchFq)MrkP z8+BxH&sWkQF3ByfsQ(51RiM66!X7Ev9hbtC(fJV~?nfxSuJk`c%2&J#U@k4Njbt_v zwjDy&W!3A@=#B%z^{$m>Js%^_x|gJr-smPQ)~{DGW8A=!3iIy3}T z6aMo@YkYzt%2|(~_X2G1GRo<0N|Tef7>#t73ghMGUV!S#B*YW8>hdjcrd)=wVzBle zoQb3w_Hz(ZhrBI>!7h(B(r{jKU;jc zuiT4rxbPxW^Iv zD-yB6c~{2V^u6vdj!mf23K?G=^p&Qv{`Ppbyu=BD$FLCJc_`DWgGu$}78R7*qUqeDv?D8`ZB=(9BK{8tP;es+3a(4RPzO@TnD{#&tZ~+QK#Uqq8iaa9xO(O6&X_Y|+_Y%@5}6y@gxd zOb+g$OOq8s{K0-<={o;8!(vx8RiLpwg>}O6mAK{wn2wTy!VR&y-W3 z;k6uJ=^09UNx^5KZi}Y*FTTqxA-NnVk7<)HHUCEAVn_bs=9}N<$$unx?1gC}o9!Fh zuX2hx#uoB8#=an_Ga46 z4c;pmn*20N?L*UjJG|m`gh=L~)6!oNjLNhNxzovc*;2;agoK3NyuA5~l$I4dzIF%E z>;g!EFaYIz{@q_4|4B}pdW35!m58oTP_+Z;Vz&L}>L%o2^K`8*{^5htGlbs5%em_x z=6Jf6)Jq{OZbyF-Sax_g=xHLcX)R(=MY;1Ue$K3eO!1#?S0RYy5xW zUq^az?RmX+I3DZCFQ%EVMZeRKztW2{qquD>SRsdmfqmvSy_7BQQsY2$TwO|nIJLjU zuTX`+rdj{>zL)!QzFg7yILdD#9d^aeaozdpcgy%|np&qUY1CcD>?PTKeSl}hD;Hgv z+jnR9oj&uArTPmU3Dh%${q)>v<8r_D`vHu8grTZGOT z&v*ATX17Nrn(|D(FNGB0E&sa*q-qZZt>?e1eq?4K-S$%Ft+$W(Qw9B^L{MR5;19@ofVP*h$GlmR=+jH#)oCkCFnmiH0UDB2 zKG3efW&BR?nFrA^c*PRF%sa3+qH4%g_3e4Uf5^OmEC>-w)-V-JBE@hhwVFUJ74q4u zN6=aK8?_*_9xJWB(-k3N{I}2f>d%BYAIV}>`>OK+z`=PE`k`8_nsxt}J_k|}eJk_s zfuJYUXOY+ygb3GijJuJ<90}hM4HcWd6k6r7&HP~R<}erNGiE?3Qd~i07XmU18j+V` z(wF?gKu!?GXLkg|NSi#o4bHpvz(_M5GL`g=B^>76ULEN35qz@0%uk%Th+XcTbU44| zWV^=JxMJT>cGsgCsBt2QeiP9`V2wIsRly-0Ujk;<!o4lJnpaa|f%1I*j{L`Y=q6O^AebD{&#_({ZG1Am)ko+g=D1W9YSj}Irji{Cc?9SLKC~zp zf--v5hfX3;CJ{3t3Y2jfCglleS_DM>Z_NOwf#jttQpi2nIR9e)*K(knB_`NJ`6L7j zHcJagN_l~nEm1qvqLmxiku;QtVR;_B%IST^PJ%svkd*@1e*l6VhJ*AW6(hL>Is?H= zddH;sL61OXKl^Fcm>Mh;!D@1#+DVx;EN2VgjX%ck^RQJxS=Udda3stw%J*c9Er4kp9pq<4XZglfg`8)VwYOvIn|~*)>H)MLKu#W+fRU5A~*xU7x)HDCYVW zWLXle(N%l)8lHQQW~_$rfU-sHG_%wz}x^_E9kTO@O0sLSfBHrBVvfW?*A ziWh(+u1ZVWw*eGfG6LiA(fuzX%8w&9Z1V?}zjN$I2(k8+u^961f|gED1VVaG5xds~ zwqcy+bfknh1@>9-`Z>80CyMGA*`e@e zYHa1P0-ox^g`;W@KkWl3j3_2}r(h?Azz{&D>)OcCszk#lbEya*qoSH=S)@BvKCHIz z%#@GNk>{cySg4XgoXv4j1}R4u@o?pbJ1M_eTDs=~uC!7H`@oKhX zvCoxpEEeO~L2vGZXo+A>Bfw@ymS(Fe%4WH<0J9NmfKL8%S5vZbW>mrR7#DJIQ|K#s z+(?!vS+sb;{dbk!T!ZiDUcbXeXD^~%qE^oSE*YuZj1M*qqrqkaKPR=fV1~h1mgR>Kh6K#k*uF>Y^J`P0FC&LSJ14BbY z@g;6=x19d($m2gRLBM_vM5bptP##ODN}^XAm=0&LXj;bh`h?X)D`TO8IpK3q3%YXo zhuA|0#|^eNC2h~kX5kLYYr|X^GRFs?dIJaO%k~70T41_SiTqRPszrz%@9HKXIEnfP zi4h`4w;L1g#CdXdTv#`4mgL$3xcHh)e94KTaTGL_M`@uj!M|x&!-ZL^;$& zqN_B`L1{PBo<0E3=}m}C0us~QVdkrj{G9~BxTCutWJ-vW0oTzEBD|AE3!;d|uxPns z0+fgG2?;l;Gbd|<*y13nkR3eR1akjby&n68I&3WraCy3$r!dw}QJwp3-gsgXmF;LG z6x(dkdV`=hyxRYarr%y<)dD$gkmZ2`^QKe*OjiM{Z$a-Cld@VN)FqitJp%q(;Rha& zPL5Xc?PB=NC8ViGh8k*%87KE~q(Yzu1qG4bPS8^YBe*+ZM(26A!%DYlpyI+U_?=>B z)Xf`$a@t!=HSA9pY8VV`o@k(n!;C)9*HKC!?`K#y$?Em*4Z&e-c8NW}b~tul+|A1SpUH5Chb~DZ?57#~Z`1@<>SB z2>fq-uSwV4f&*b=af}UO)kT!@FTg^LWlruprn`@;{o&*Mmwu{iUWolTESQtJ`$2Ye zmqVwklV~IcFCq#)BUU%(=egg1{Kw&@J5A!m8@*o6MLWImt&(qsn%lm*Yw@yNK0LbI z^3PAb_|cYOhQm;a-mhuw*tpoYCKyY zYaHk&t!Txz#_9`YBKXhW`j59r>^!n#j&=X!nnO>ReWi0FPD*c4`9kcRyOWdzHL4B~ z&#Y(sWT5PLAUeUP;AHrbDw0Bwn)7aYuCW>5jBLPX#gKE4Boe+)_}0v~bkGPfAJTd7^>oxRDxR*jo*Hd^rcL%Q637bd7x&)X_&d83 zEhxj;)p>FivzYeciHgX+Od)^D)?YEb;&qZ=*Z9iiT5qZ?(e05|a-f+f+601RDcdAD z^KR3LPB3k*thl+J!3q}Y@_JPRopnEiBp^=ZFHY@ zQgNw>bSNq1Nm6g8{wJ$njqSCy)TrmbCg*}I((fv_ij`oF#^#ySnce}H_|;e-Ct`n} zk3{pxgt27t^Qtlfjq5z<#lm&B2{)nz(BX0_Q9e%Kz(!Zz<0=yx2g;+>#L+i~fV%J|jk%APc z+LmxR+v6SiKq`6q8(Cy&wQKfY^psQBqr^*^{$eoe7h2PFkTg6i;xniRezw(0SxWwn zU5DddRo*lCbH7qgzAz%&&v7=qAti4q?wZZq4aCTW4phN49#s- zMcd`*F*?3A&C*=A#6Z90bFzSwues`B!CnR}CKZ#;EBj~ARSONn#mb{z4 zBXdMCya1OmbSD1iFUo&^6%lraM>_9@;F|MiO$K%0D15}f{jut#?ASm#31 zW53d>0#evPI0w{FaPCyAc3R{xephU*01%gFreRkHxQQKi2Z|}zg@?@ z9H&jxK3{tMD{*fbZTv2qfwKy)ekCbJCZ&?%w@VJ)hU%c4{Qbv&7t`(C0oSOAYp_xO zkglK(A==ab`+o!>RxT8cK&DCe+b0Em;7*-~2pbUzEmBD9flSe?H|S#)@yS;<7aAZy zLmDH+2^k(j9o_w4??%rGbVx-nD)Et~>yAS7g&)2Q)%%V?r}AG(nTb_Ltj;?KJmUOt!PwkSIV*P7Nhc$hPHdIX&i)VjtlY#5u;$Uj$iUGvw<~%4F1Q z92!5ntbtq7s1k6C5cQ@SyD2#ZJ*#8QaSboY*qZjlB7F#4J=O!W*>+3gepIT(k1Rm^ z{P0heaS*nr4_%6%TfyLpB!fAt7&QewhsFRqyx_;3P*BnY@^)B!4D?74tWF`ADAWt& z^>N;jkD)0Is71*LnFx|VEGk`3Wzs@gjQ|)aKsUr}HrH1j-`N?%)I3_ggddb_>IWs8 z(ZH=MZY)nhkHktn&rD2(f3#XCsMt^aso0F{0;u}iL&J#1Mn_x!Gm#rI+IeGbX&Q?` zNT%jXCoOfvlagl{mI5RX-GFIAlQYFU4x%^5q@4~4fkNl5q@<)R!x?wd^sVJi=E8+u zXu}+PY_DW5Lz4@g38hbQ+cP*RLIzQ8UT{jM|Edaae{>uh$Y*D19``r`s86FnqQAI| zHZ(CI?GY3vg)AmLg^TUSgIRT}5#^LlrO)hxvGo0DL&FMK0I178l(S7%zk9bEfffLg zps|#0lZUVHJw*MU(B{FbY2C4?R03t#CRDR0JEZzvZ-56?|S z@!0Y4aYPnT*a>OcIlk6s2Z?BTSGvrg6=EFG^I3->A`yA%L)4X>CKyWoDF~`*Cm>59 zpqqo1h5M7lPZ1?SiLZ3X6&83qG;9>m*65dP}cke$Bp zL9Un`?m@nc;IKd!crM_{Q+)*8 z@&jUY4by!L@_eL|5jvaDn}-p_R6ZoE0Ar{m0|lJ6bp!5ZL*iUURDvO0lO)pAiw9+x zhPQsUNv|W2u_JM`919>`K{^$AQ$U7=ObEoiz9D8H3UZ4i;B3G5ip8rOa+;AS52hE# zsa_%QxR2rh2n#6rvk;MF-vYh~YZwMH75B`ev|V5YAeK~C>qXj~SiGQu?OKZD!-xi{ z(bDb<0BOC|YVwustdzW8IB( zz^=0tKXbJ>HVz7r%?9kcoa8FKiqVIbeo_J_kXBg8mCh`IF033@BA8dOj}!w**6n7O zS$9hH`yZWmf%NOhge{IoG6 z)1{>3<8}BWESpyW+*Sqkg;*xGU3SDmo0JUF^9p-hlDBQiIsB6ojuA)_6Z5(zr(G zNt}XqRzjzEurQ&;2Y|7dTJ)Ktre;CFh(jbVUo%IL4(%J=KJQnrz8vU^>EvOy1c`+bKFMAe3l`623VY{RRMtb zr_l%~oy|g8UKh1NS7HLIi2csrHSfdB8H09pqBRAMsf}*S&Xl_amfu?_DFK!@1|z!F zQl95gY<<0ReL#5);&0santg0F)v*-ZyQwE%1lklE1Uusn=wA-0xUcsGWV)m6HVebT z(p2h;?Y59W-!Z?0kl)qwXB)?kFdx%B!r5^@dNu^C!FUmAme)sb!{$8BC%;O6h^`+` zVD-~}iU&s}jiGtENzCJA_l*SCRWH&xVTMB=5Q)xQEoiRXrIQo+j~#amxXe~4V@~w8 z7q`7KmvwuK@8Ak- zQb-*!nGe+VI!KKL|GJ-$iuXbLdx#WZLRj%bZH9y9a5ES%OUM)slmThra(sPzi_{X4 z8b)px%{VZxg;LHGE=a}S5cC9)BQk?VG*eIeO5M|-X${)aPO)g+P_qZHQCbUZ#|)HJ zrYwcfV$^L_&pqxQ8rsNFL%}Of~c(esK=k0{lCa}ff`qoOX0C39Dib`nhYfe;Oq$Bl^UICX( zSyYIne-0Npn!c69rAiAe{Dx!`EvSH^*?N#g^wc_XlBylUa3>O5S%zV|vJIIL2Y zL9}mu<}vdueK$*LL5Fxg$l?Iz9()$H-MEJ~3|`(LkaqJblv@a#*!pJ9g}q;mC>NnH zG6&CHewfbISMx$)x|?rK2RdnRU!2uUPvlAda%&cUf7F{@TnADQ!PND^C0v~ z8plwdV=+8dVwalOU>1W%Leg`4(EtaEQ3-F3sMJ)ZeCF$=4=Rx6@^K{4MrambwOk#R zE6~KAL}EebJ!*1Vy#`vSg7m{~)&~JqUCb8sIu(=*CA7lC?Q*Jwh1VI#L1f?r1od^< zsJRt-){~;oJ2R2r#wQs!sV|U}i1YFWqI^Tc6eM#us1f~F7(@AOXcr?jf!3(TXi@nm z-Z_!r7USVO>?1W;J#z|3UBUNNLFa56dwXV_y9TQlxT^p(h|uhFaz>&+y(|0oG40tZ?WTx21aOD|7NW+v5doad>N%vR7Lf#M){bQ4p2QpG zF>tSs9Eq`F4l~kCa6Lg)LE?=l=4)hE9^T7nZy$Vk{@~K=anm9CLufeT2sAr{N$Vc1b+Q3PS0pCRDkq#PgXxnfE7VOjwD=( z8`v+vvNVtEBVJN1hrrm zk$oQtT2egP@6-5Z++@ZSPAgFTU$oux3IY=r>;N}X&${3^!qa;bN5<&0ULT-Kg?%>d zkqL7H6|(o}yuBPH%qQQ4+Kwmu zik^v4f@+xW!6y$nlg3w;h@c2)?(_^QLv(!azZoi*1m7eHz7&6Ko3h(t021U|^%wmp zu?Ija-#ObN?zxx4?Fc3L3z&Iv5^Y%-ZMfnoVg2kA@^q-SN5Ih=7iy^j>g6Bt-rN_k z7?MkU((Eh_rf)gpO~K6E*Fjo*6e%`B8U8pCMh4I!WPsW&S^;N%z$s!ENY*)^jSrf= zW{NK~PTT1~uM&YD=+9#anS`{1=ODCh6i2RIFilUd5}fHNN+SPi+iN?Kl0WobwC8GiQKF4W%dYx_$cHZ9>w)Y_I{m`hy0lA%c^Y5AQHIX|5Cl zXYY-ml);<>u9&9vhJs5r!9JBRmC#IMc>%c}LHWUj^~BKg7_*(m-$CCW6BEtSNMbSw z$*L4#KuUVuDk2ld=Co^hKtz@czV9A{PvDRZp#1|9_D$rPB75Q%=&d=(;VgEd@9f=u z`-pGsx~TYZ_n}J{oL)Gejdyl7_lb&#`sUzwRtz|QkHr~n9lcYDhj!jZ*m<d-ZC*^<4jL zexnX{yS46HSf4wm>BJm+;2xnO&q=9QXN6zBIgf@m&+b{B@y`_%s;=qj>1f^)jIu(N z=>!K4&PkH76va70^>?|1!>~2}qQT^Ia)IsD=o#{o($ZMvs@LaJj(>fLM`eBOkS>i8 z0q&frP%434)m;g!k7t0{Ir(|A^nfJuC@5K1sb8S4^=Az3^Np8%CqYINNf_`B2v*Yr z_zc^9JKz5jS(2uvK z7I-ixaUiaIslO^^8K4+Zg4WD7Z!I(K%hK!P`#Y z!sVM@zRI{k@Kx83{d9$z0+Zo3RI=r_-7jUOeDjCgR=9dd?f%epk~fJ^OFu%+F2;GA ziOvr%x}At)(531XjVQG0kus~>f6<0U!12#jg4roeAv{*8w{9ogEm#ITWjWoo2Iq%l z;AO#7Umu^NMioRiu}TG&DGy$&`MQm$)if+$R5@N-beTvJ8?RoJul6w`?7X-?Xez|( zI{SHwWFb?>Z*Vt+D;USGCM%@8wUEfVf%GbA9P&6p&uKO+VZdw9bgnl^xIQ$*>Z@CP z{DqW5f2{RG(&HRmQzpUj$H>VO=kXb!tEbgAEv3AeZ>8Fkf(!Pjw#M_ms%2=ibne0W zUi*S^a-tXh_!{mXN*b{ns`f+QI3x+3Zj%d`$_C{Ookj{9)^m`#>vBK>aTkPxOCoM_ zQ0=C@a`SVnc!0_WbgXSN$Gjz|l~OqypR4UJo(O2RT3zD9XasSWsxzJNG7@MYCk@MJGT9A09Qc9lyCYKQuM*Dk&aLWeDWC zjHR)o-33-+V$X_Vo3f2mdmk$e*9K{ai&fr!e@`%vbCMAz_<~yQ`|RAp0Qrg2ve0RA zYWah1rB9>=013Tn;8n@Vq{2s*pmSF_S&5~TPIdsqAg+f_WN=aO*=7|zUWKG8rVzl9 z3ilr~`Ryv~8dVfLL%GC!hTfc*u!8<3z|qo@k{-C>4Ep_`A+^;?XS$0H&l1i9u>$N!+okc?w-#efx)2nYnwqMx6+jeH#pE>m z2@ictS%GAZ>%b@23GhQ!6VSB`&aD8lSBU@SyZ1M;U&F4Bn_QstnpFha`1Fn{KzJeR!iC2u|6@#|P5v`||zcElIuh z3!e7L$Sp}o-~>D9ofXZ8%|K{3sUEu2mU2}P;)p!XbdOLq6m+b;uO9}0nf2f+>xLTR z3)^VGXvmIK+%QfLuYeU0fBvA*=(#F3PARzV#(6YIJ8^(fUyHAROz+jnsG+azp}-+Q zCk1Hu6LK5Vy^ko13~bry5jjKqxqjibD>cFwc;Ff~nW@@prlc|1tgd5!Ec-{#-AuC4 zaHE{@GmNB06&&}#LE7WpWS?wR zcA;|Fa(#DSyLN_Q56Wea6+6l~=~aB6@i{cgO2XVc>+MaQ`N1mNP|5fE(+m9KP2vB* z%DO#$x(RWIZ8s%xGSncQd7kiGMC~OmVMU$3@=$aSDwq5@`LsyX{)cpo${FY2PBZ{G z4Iueix|(*6K+Ed9EDa}THtfUsVp#E(iRt8fd?_eY7g^WMU8f_C`tL%0ddx$P`q(0d zeVBvMj4B5kfYnriGp%TME)8Ukhx2yBa-AY0OK7v%Yk1TSOiH&xI`nF+VoWUT{HoyA zMEMD%Nvk{b#P3JA%q4+E?LH;QaKRKNLhRsl4C<)Nff|(aw~v$rsBdW4Occ+_uSJ}B z)~%W3C5*Gf#pbRC+X^T4XYEG$9RI~=xsG!A=EC{_xPv-N4gqO zs8o`N&&k1EH+g)c-g!30SBj}PvkrB7MIm)R$M&rQjR-cT64cIzSCK4<6a zO8ZfJ@uu&iP>P3hZxEb2{G1$h@2eUAaKemL5`!nJFHN=7I-B-DcbU5r-y`nrcRf34 zBp7M#0<0s<4C;^A>h__>Y&U(|u9GCgo=_iYNVf!7L0%P%4}OK`@`~`d0c)>A|Y1=q=%ur>JuT|Ip-2I&vVb8I>BG_<^{NNzkx*E3` zxt>*2$`$HW_{af{7~HML;MXT2N&fgKu>)Y^%gmzB$&2)o7pJlZkq^O4B~1=K^QY0< z#E5uqhu?WA`?J!Faz1xfwzNCsJo;s5L9T*#nyObIi|z=wdZG2)q2jh&BmMC3^aido zrM7-^+p{IL4!y?QX6%=wT$^!g;kY%7P6i29i1Cka_c;n@W}R|WIi!Rp`6qVmO&ZNz z<=UQUEuW9=c6zO?mzW1xkOQ&>IS{}G9l#o;|yGc6B6K|CO=u z>8Ycir&Diauv0Bbm^N8fy;{R#D(lKkU>s!#d3!?+g?jDGEcWNEu`3|HF+*3p=)gAj zgmR4PF)^OK=>-=aGZ4%iB`0v?zHCsD$EKJzQDe=0IF9xh*x|WvhmZfwMGXJz>;3m; zu+vT_@*B-yT1BV1siSk2`+ocF-xo1VIRC`sEZA)HSqz@@zBKu`k@gqbvixizt3&_g zI~OLE$?I@4UtaQ&!X{c0aVk^3!tp#Fg*vxO!w20dYeci%RAyS^mh=8b)*(+5{w_Wo%zi$u8< z{ILKm0Y4Y|=10Y}ba{N}YE^^oJcwKSaVesQhi%(J{VnGey&Wx?g`Ec>5$w4iM)N=Nb$33VM?-?9$n4_uW3Wv}1Z!hM zT<`ck1J8JTcHhB2xpPL?S1Q>L5=cJ@{9!8plZ*GSN&V+>BFBzdYo=JvSs%*-T1@}t zZZW&4--kUH1t;HLd%@j*Iud9Q&$h(SlyV@3(j`#*zuXM}Y*&cz0^*tfYMkJW9_yHX ze30X}j0sv@ zU4?2N)m3w`wD+%649u1%m5X*;b-5lUJz`t=ym?~h&0TzdvEc+#S?FHp9!rC?OG*Pj zhX)c)C8c(xVFKc)oCjYa!(T?a%^@T2nXbS3Xz-ckC1|tG)+}|)&An1&;QUJ57%IVV zWvC$pz7PyuwHRlI>H%E%IWeVno|abclgmCR_xaJ^;4cKMLB?;t3fhb%%UPk+L#3Bl z^=ji4t*hLn$OmfzOaL_4QcmYW#pDFNf<%2KM6NMyI})f|yPY{nXh}JM5-f#Txx*ZF zgpBp`Dm~mg(MbBFtuB}g@5re@xZ-3h-iDY-%^Fhob=I2;P;Vk;R9S>;TWp12Z_VJg z(~1SDxE~F!f`noB|3}@M$77kc;p1vrrbP=$QOO=zDj``aTh=Uj$lhYfQi?>@HbRl@ zAt|!<*kw&TR3u9%J;Y(HO3L8!2wp zJG|q|?ZIl?*4?#tT`z{)o=Q+5)2s-#ZEW#S9)&_dJ(BXi87vkom8O9?*h>-3H7Gw| zkF44N|TJtqbS8l;;D8VXp(<6lSKF7ohaA!xc=f6=zF+=G#O@+2i zEB30c%*mHq`BpDm)=YKH*L8FfJ>B+ZSk3r>$BYZLcK5e|W=_4heg@H}PoJ)=JG1ru z^P5fmQk6^LC&{bD$;Y5fyS2;QPlpUBY{zrovvK%K*8n97CDF5rsb%~;5@*B%e}w$Q zDTZt5E_);BCz{CT@>;vWQ^&=zWslp$82~(hQo2794xH#@!~X!Id+#~>m5rKYRbF0x z8bBo)+R&UspgG|}#%7U>0~O+SrrEv9@tSf*Wo2cQVAPmiUS25i2Ej!_?mhg}Yej|$ z^?PT}sQ_?z@Bs$gRGC+~o@Y<0Pu~_H9ZH}{5T(TED=;PVNQdqU_U&^(4QWC?cu&Jq z@7})$bRq@Y6x1)@dS6?%Jv<9>!nISI^Cwhkuq06g+LmCAvuQw1Jr5fQ;t-y~Zu|z* zr(18oC^v4@(M>nvTUrEO7EOJda3Bb^(-Itmol?D=1YnRXkVUx6)0W4@#X;0b0_sdQhz+aQz(b^GQvF*D!KU5n2coDZPnZf}8Y z_hS{;$y>yY*Lbf*US7V!k)y}n2io^jrbg#A*N5LFNB11&IjC{FGSMJF5!OGzuuwYVfTs+ydz+OQ}N?*5;b9*mjL6{A~nbL5ZZ#?dp zONX%s`PpD48)0I?t1wH}r~+sdUjyIf)1qsjtq+pztjm>W=W9x@TNiaeAs~66aIZQ; zGx#I+rTTW~rdCyn8M3vWiN2t0#z|_Vfhy@Kh_!3Zu?nI3yWIoH$HQDw^ce&acl696 zVXX(&4g5^JjBS79&`w8?7_8hPb>v54Ky2xY!apuPi#`QfVKC(joNTLGMXhNRgq6m^ z?Kmqj~RCu#q(UAIbHLn%`?c@Av34P09U?0}9jOtJX4Ac(96>bhzk*Z z8zG1jK6vn;jUZ{S*Jp+FLKji0d{4-o zz%96)8{S8Ohpp@wSy=Ykbx2LFAq$&!mMuO%tNn$0>b3X+z!oA^?JY*IDxeanUiyr?_8EH!OAiu7gPk1z4I zJhQg*4p;xVDGyt`jGSvV$j*Z{Te}aZTKBxnwQf+!7&jW9O?O~AvR>fGJ-xQIf6tJJ zqIocemjMOW&Ro=M6C6LX@ELDN!c2;$Orv392o3KA$_ zUIB!p#WTgl!4E$W&8)X~E7QBM-**lUXQ|uD!=u=E)Optuyzel9sYmZCLH8cE0}Rw= zJv(1`#+D;1(iwSz6;FK%M0~xF(UIk7Of0(zFoDg|-WtJMZjcbrAk({pb{`e6!MWSal^R~Sc;gMmd_ z>x-^p5bbUW^fX1^S!U)AiP@1?nvy4@do6%HjtprZ$+af+t5sT149M;r2g|MJ!jGRg zL2{7?@NV8?&jH-hAj3qu)PX~%{-T28*Ob9j&6uZP6MEYBO}zb0l=Ehe9;=vrw-TQx z0y}LS<5G+S(`z#Xgg!n{xW1k^mxuWV69`{=G}(sKX@R&l*Oyqx?{q+jxBoHW<^|Pa zAKY@f?^G>4oTqF2TNVwt{A?k43%`~eVq+0OV>kk!)e-uQFSIVH5mdtyZ(d<}nF;#~ z!ng>Ls%VLvoZumBDNL)(GXOh>P}n2eaS*`qSFf)M!c3Zbk1V=NDWbXu#f9Enp< z_SRQ&LaGuUV0k|Qu>oH$o|k-uFXc8I!3pat%%0eggu-EBdw?`CXh1ryS% z#)pL&i1hytQrdH`LuLnN$R_Re?b8L;XIs_m6g3MZkImx^8WIM6(*0)^#Zqb zz3@C>GpT_3@|$O6WQWx*`<|)^@u5MIFv)~gkH`*?>M`7@VK1-=W2&-te{Bw!(F{D{W=6(rvq}b6 z-x7I$kh&_9CvHkxXqany!CrmNPVy#N4b`jgwXB5IzHe;Hw!GOTak%9|=-u48Z{Lxy zH|SAuWf-QEY-L-ZA5Tir9e)ZnZOYK8W_Q+yqNCZZEp-l9BPati&E~%i!N# zV`781ELpXQqBrpk{sL7T=2f8&H1={{Q|+-nH`vn9I9_*p78DN=+C0Qa;cmFzF?+_w z=5#SQYwZrC(5~4dJ=LwepM3%XYSCdA3d-wslpO*0lWmWw8-~2K%mz4LZ-Gq8puivx zHP-k{3zELQpYeZlmt$NGDYgMxwlvwZs8={+;nKv);5;G>l+UlX5{D&p?m$UE&H7^YZue zMv0qQZ9+uq!HgX> zFf4eHIi|fGBm%mYUxf074Bl$jhIs;d+oJY)c34NWiB74~CUB$E*LmiK=Qk$r=GWph zEp}_1^PR&**&x7$`)m%Yk{Slyl+aV-UU#3;x2(C%J%}RbB(X`1N<64t8;^HE`<0(h zRW~z>-%B{p*Y{6jt#sYz5Zs!Q&BWdFn-9c#e_oY*RzDfnp0FC;(Enjz>M>cJj7i+u zxg$tzl_yb#SPJLx)Mhd-*Egz)b{&#Pn+AK3$+poZ>t?HAg!QNoaX7aN>u1Gx@p8*b zoP8&cq+@0DRfgA*6m~ry-E@oe2X&O#%jkusn%OvBFOjDg6*&0rKq<#sxy?B^L?=mo zCr5|c4Y!L+pSY$(I&$QeZj^y9OKt7FR85)F#nrbvPMqv<*fx78pM@Q&z>Z92o?uFl zprKeP?+UK745{5^%7L%S3kpR31+-F2JFP%h{1bmbW%k^kRS)bBxF*8*40%4n>NFIx zI(`>>K)*IJt8Vn9zLoX&!iXVl*JB_jY%Q-Wp;saElTnIJ^>xd*N-}doEloA_dl9u^yvK(BA?JJ0B z7T%WU{GMD{TFpB7;qt9Kd4F72{f-_KEz%H%icp`nP8#Q&)N(zR%tateO~W^oj|xv$ z%lo5|qmOCU%iEh}8Fwmb3^`KsHNP)SHJ^p`j>2$2dlnll#dKz@Ev0vdTZn>ASRDdE zYB2awkX5_9UNgT@dbj4prO zR_K(W(+>II_){HxiLbR>(#Wd(S-dTaS5u$ftPU4WiHlc%5JTbP6|;SFlswV@fe?KJ zX^PLG|Hhw-%Nk;W3goGTHgji@FN^)Mq;B3)5r=C=9rP@_1M4i{4RWKK%UTMO!}399 zPvn+2u8x#Wb6a1%dKL7#+;*LTrl?Ka2*B&BtVDxDC~FxR;~L*e@~gFQTXXfSgd|4x z)UAC6LtZ7D(foeH?!7#N=&CJJlqK7;D#lgIvR7~IMn0`wuN^tj`>$bEy^!friNw!} zrsW_FokOL4S8ZO!dYRlMmh2f!5Cur8VFFqus8e(IUs|ZGUE<*`XntU9ibq;YPQTdg z0*dZr-85@|*C3=z$RG9Tp|s%gT2`D&s0fQDn@g z=Yyv|?!anN8q@74UuPYe!>~ITc>WcPy`nvXC@_Quh3zY>NlxNgoB{$bh9@_1KkZz_ zBd%3CdgF7}nJ(E$H4;Vhi3&@|k#it>sY!Ydjz3!&?c;9wcZm5XbbG6@-S2Vd#vfp` z2$`b~aR6ybVz|p}Mv?o(H7rW6pmw>b@C5JxTKpE>4`oO>dYZ87lZ}>2TKclAZ~lf% zkO@h73tHG}`0d_g#)QTXKjsG%Kw7HlKOWsCnj-Iybf=$5=FpuzF$@b)kQ|-U7%cW> zd52KBa@n$-r$2iGh$#$30`R(1fS<+ldGoiG--88puCJKtX)1KGD-98M80#Y$I+W1F za2qzr?7GGgy()>{FfWx#6s?M~zFU*Xl%S(BA=biTr`sq^lQFeZC>e4_aF*_?h99cE z>uz){^xW6TS=XVEV2TzJ`N>K20M)m|OKHiew|+q$*J{v?uqWrw_};ad5I79KSQGEh z7Sbk9AG6R)j5{RaWURMc%i&~RYs#fFD&azDxnG{+^9NJ9Bp3P%FRKNAANYxV5R;Qw zsV%CjoDnGpC8V8J{tE|`1e|;8fkpFlOO1{n1^CeJm2se*@j_I$$t-@U^8>eTvpiChK&121V>oPorww8)8`H*&569ey|UIDIy74cIo@!>Aewdm`TAOIP&$!Zj!T@@~l*u8A10+$NXQ;tFOZkRLi+@i35|MuC= zd2dl#fTg~X`gzV)H`msylajT?mOGxLiBi9Ag)wp`zXUSl7BB3R7M2bRNGj~plB3_h ze@{A83J~+OojD*-#VTkFa3eu36Q8LZ!ZR-Wy7lYbV0nK;&5bfMZR@R4*MF(u(mWI` zBYnK=_kKNcBDzHE3_}c|66P)Co#NtdpH7^MnuJ`LIi6enH2s(HEu zYDO_C$O@hEU_h&&YN^PEo4P|=wc@ZF6=e(dAW(?9F^J;6;_(`}l*N2IYNOl@9d+76 zoDxWAdYXEw!)+5f$v!kBrfPf0z`ZLb)E9j6Z$0{SmGy2A}U14H0`b=BRu?K})%J|t` zs3GouZy#(gMTrp_tQN7W`Ri)fT5YXPu2FS~Er&yr;L;isdwfY9Ck4&xswBJ1&5ica=EyXd4~(;iwF4mvFtMQ z8E5Mc@mTT^iW)$Er;Gv#(G6?m5)?ZxO=PfUjs~61@99qst#0lF+Uo7?-Llj`vw#^1 zc;4z=Yqx9>;^l_=tudVs$yjhXlp8m5cOtEYn6ALSXP0&uI=nE$yy2yx;=X(x6W z8I#6ncx7{%`?3H%RE?IQ8f`%%Q}*(n<$9loA}Oy>Kl0`C7H&h$x?Ad4&Frye;Gnk+ zxb=NmMwXGXqjQi;cm(+P1d=XX4j_eZ(1A*w73Xk>FWQQRZ^;&ZpGc>nGljdm!6M?EXt&|~_` z!BWQWqkfW?|A7sk=bvuzxBJnpQ3C^on4BC&=}JKzZXmlqIn$!J0yEo?p}&Eg3Mp$+ zdJXPWIh$0ABNf5i)d*<(f<1ax5it90u)94fPfr%pLJ5Mex_ZNodx*)nwnBnA6#P!k z^dmBc(}yGjs49Ym7olN=EX|jJnQk znpg~$%gM@GH>C@v09}rCS$;2T<1WiuqRSNLh%}x6xDo}7sN08_;c&_^mk-;tHmBI{ zr}2di+CsqC5{&Y)TC(ax<(4F_-_kmzdo49#^Z9*#=l4X>T?% zrey5|zujT|M)WE%Zs1LHPc*L}0oaqtwU?Lx&>0vEyr({|(eU{3RWvfXbDJgZ=#$I#jtv>6rZ!vI&Pcqso~jPzd!4E;BJnxPsqf8l{i+TV z^DPx?1N#r2SMeY1WxbQ6a|{qEjeq!z%qvh&vwYP*@a*M`9lEnbI6yvnxJnA*S#bo5H-90oif zdD1Od6^5*1s@5P_37<_Olb?DIP@}bOK%}^xx0jbRVBvAmkCh?!p#p1JDWJUX%7_q5 zptOxA!WJ%G?glk^@kaxF^pF!`Z%lGHdA-8KuI-_gjT@*wyhzgZ13@*z-#WjW3lF&R z3L=9{NwmSf@x~#$uEL`U?;!THCqRNQ9)jYn^T4bwY6iwaAi@I9Z|jyPrbP1Jln+{w zNZ_2*w|oO1zBM^Shsx8x{yKM!;N@&MRmuF^;U}x^%d7=}_NlEPyGm@$h#Z1Eaq~h3 zdKRd6^9@2WyOQYv08ktcL&I%LjdZuy-00@D_5s0)V;qYT0gTu{d*L^9^N|94KJQ-( zY9w%bm5Zr_JA|U0fMC8ickJ@Ad^x&uCFk>L*ehms)DCyAtd!ic=gi|gN++>*hpLwkPE*vFHhT-m<^ zM0O1=fC40-<>A>A&dv{QeWzXFlSoxa&iZ!Q^x>IfKxlzPd}}(Df$PNqd={cj36dI< z@J(40$lH0Q9-<>~N`QTtpT9r(R7g3dw2U_`wUPjT_wZWk9IzvovBBWt5BT?0#h=>? z#rgSFQi5g20$LVv@Hv4e!zZb@Jt$K9Mq>lF_gQtWu| zlWq$dJv;-r&ezVHR+UhUqP>8wTX3{56j(+XZes%B(R;H=^1Ll#V^%IW5+%3a-o1O* zm~OmXl6!D&#DHqpofWE);3j77H2P?rBvh)X5W)ow&wqHakveo9-#vUq7NVVt*K-6~ z^A$bWi44KouW)}0er}CBh>A{5CdNLY@{4akKx2RXMI-0FudzLr@qupkJ;{xU91ILS z*oEA7`GD9v*KtTXo+q@$dOtt?L)Jf-^j3mNe+(wwc#GByy&hfu+m#&m?#Q_B#p`1y z8)jShn}k~+2+|%i5S(}a+g!9MYTneT;Tc>-;&b{vJ44g@bK`N3x&9Gsw8!jw0rQ9E;i0!Np(_>Xa&?` z9B1sGw7=@lhfN;>S)TJ2WVz5y%DJzFn=RK|`hY)(ph~VrCD!6wSJrhyWzS2U43l=J zLuE~M2YlF~(dRO}& zl|E+*q(7dpo-O+96){!ZZvWw=&K;AxDu2%`|5=Omc!ndx$Zoj$(m~##V7=>;*DMAK z)-W+=h^uV;yY}jz9Wp&!oI8Ilo*q_J9*zs`#Hbex%tYFm+@aJoF6K;Kc!2H!nF+R+QL$H_SUhnOxqu= z4{)$dH)V)-9mVXwp7!z1VIuSy%ojmGcuB#-2&2E5pJhL0!0A@*M?+`oyF_U|xo z<#_az)@m<0t415Pu+{l~?A!Ac4O_pWSmEBK|L6DEAmVg3ElSQH;Eu$FAF9iD&$gd5 zF+H`1)HT&!T)+}_&fidY?CT1VZ|;RXFJ4jh6z~!aHl`lCt?K24M;>6T(~QsxIwjWW z_T_(QX^ADDsn)9FfRgs7u8!ZO=16br6^KE>_Bzj`nV9n)RBOI4q*_-)+c_(>;G(2= ziQ%6DXXxin;D-IFbBbN^haSuC0ijR*;#j>_Bym9M`H#PBag9w|UUpsGn~#wpF;sp` zw)j;38rt2+j>x2G@)yraGeJtH`2sqtD}VhBKNNcM^nXg`*4&7F|E_bQaJpnjJ$OGL>b~=I z;*TS=KX`uoZt))BTKA{iZ&5fzrPhZ!B|WB^SL_rYH7|M?@iUoGo>vFDZm0^;{LgdA z&qgMko$9}Vr_L*_1h#RVqa$* zY>F<5%~xXi^JN+S;bkA*sj8bQK z<;;rN(~JMmY0n3P|N3z{VhJu94m)lCRjdDD;Mg_|SwcK&r#tsA9v{d8qNRbe>$xHPyOmxY){O(O8>|0`QQ7^;FqiR|BXfc|J=D){GnzP z5}o^p?$)bzbpm(jzSj-{DC6Q`bT0+?`o2>Aq6c*CK3aQiVegSKjFHMkyEj1iV{*0- zbck{`q>-PPoZ67wLTVt=deCZYp8~beKA41(4ct2)8uVsf;sN@rxh~z&*B=LI1KIw2xOZpU`L+{A$1~p@-7ggi z%E%Pkbryrg&|}q)mG^~fdX-kLSfOT&td^G6_v6DsO0ngr{2(4Nk*MhE>T0G0A2Qu5KoLt+v)vX0p+K@htUz$3Z34tCDMM>6lx024OmEn)~m6)(Rs31gJ7 z+JXC3X@N>(XtA$c{@XFJ`M#LP#y>Ch+Xlpwp8WMm2ipttdD-5Fp@M~QZUP`kavzZJ z5g}lPRCnK!AkaXB5G^U$w4~UiYYYHgd0E+~1m!?KUlthUM(B1Vs50{r&!g+%lw`c# z{^jW2n`k7Jc*|wYAHMsv!`|YBS#ebpfcmh)ep$_X`f3_(r7=#clPn|A*SrX zmM@6h356(-JCIjd4Fdp4>IVQxg|tA#*D(B@=A>XuJb&!w3 zc*W-H9?+GV^%_RTub@Jz&sN_SP1%j2-4qW(2vjb`{y z&KJ`Yn3||K=m<3x)}k5wcI)%4Yf;IE8t7+JhlMMjZ4JLF+J3``-~LI3d0c+>scfU8 zgs%$5NF>Z)$N;6>0zK#ZD%eScin$D@JHk#2!# zgHUgC*vDeY-QJZgqvl?-y@0-1S{O5WSV1o!3WzbN(40{oHdR4v{+d_FV~wa{hdq`gmXKd*y;k-<^L0u&*t#69LW& z&88qO(!}0EZj>hu$R=t$z^`iGL;D`TzUeUYYJ95)#}&2@${mVum!4%HrVCp-dmnnh ztf-)n)N6-RVUnUN*eojgMIC+CXfbwjRgKZMq&2UFtgZKD%oVD+n_E%KUF`l!lWGo# zbae%<(X(2JO1g|v_#tzMJJnmVHT+UlM4)>T(KjyDW1Mq`>2+ZZ%6}LS>^!}%muSQ_ zTG?mmItjEmHq02h`L2kSpJ4JqyUnys^DW-GHe5Jb*97R5M7;GE_~Io$#U5Bcrr8<@ zW~KASRp{25hF2!W9!kl{S@k*Yrc9sY{%WWeGpwOn<+iB};=J~~VOW{wRjk5>e;kB3>OPd<>9zE>6Mm>erm zs3!Bt+(hfVGGBV7I+-`-2O&Uo3|(w$r$!WGo}}(lYmn4Y7d~w4*ZcDLx78DoejMBc zOZ;guszJ#!Z!hxS0GR{%Ff{BLBRh0%I${S0Y?6p&0VdYf6K*PYTI0UvCNAp@Q8UJf z^`TG~xuZ81Xi~^i$jzErd3TLff=;KofK1Ip?P^nYebHcBfe1Kz&>u!wX1=5eLhusR z3;&qr79O#&NUY)K*z-_F6FzpFOVNYH$v87D}RS5T(=940p|uZClKIz*GBaN z9W?%FRo$mG*b_RHSTmX<_s5y>JkQhFwuG~3oKV51PbYJmym|W*0MGWR6gq!7KJ$Gn zArpboS|3E6^DaR|7fwkVmqQfM;AC2-H!>t#S!WCbHay{RVEU$Kp+z8pPm2&gzMn9y4(;|jM;n>FifS<9)o z!NdOdY5jSzo6CX1tJt(0yc{4D$IE`lv4$hGkwssdRrqU!68gGjB$0w6oYqH_S61N| zpLYI`p_RnCp4|B|nY7(C#scWCqU^?%{92_RE1Afe4d4M&%JxbUe4J>Jg8x|TU@D8` zbElej2x8=9Y%%K|D2>IyA5SACzOj22HzI^0ND#gyXKyztde~)oat*N@k2@C-fGUwF z0wB0}^xe-s!=j;~njC1vy!GIT(gEWpjQb`?wsDEAP~>0et><>HT&Fn~QjGO+@d{_* zzXvYQ#mkCd&XeaACFjuQBB|}u$NBkH+%@WsAdm?mDeNQ!(!2n2f;Txx8$wY5e6_Nd< z!N=!4aS`se3f|NQmj;%o1M)dyeH_z})aTec`V1_S##RuK5{W_-YHu74Tf``e`6hf` zP|M^n^E2`51SW%XvF`EZwU$>&E6gCy43s12(F7 zG$|=5FbCe2AJ#SpVLKpmJ=kGv_fehpvb!?mBT^;HVnB8r8FVy7<6DSBE>bT%u90YMR{whg-cRB{BPc5LoGOP z*Wi9TAv~Rm^4T|wV{~`XJkd$2yWtpTr64kGf&nbFtI0PpfCQ+laV#qI%Yuw(r!XRj7UM` zDbCVMc*%KFD%g3S4N}&G17PFEmcO1RTuS;dT_T4$Q6*LpP9ya9eOXxa;mAV~m;g^$ zodI&29Gz`m-B^DU!K9U01BzE#|k zS69PbVjcv~69Y(qkuVtr|sZ%GUV_Zcch2)Z!x%vwq5Njo;Wxe zzISg{kRXJrJ8jKP%ocuPa%)|(YcZMu6P@J!(a`b{A=#zyDpwRG=FXn8$8ovh2GX7q zf|r@K-932VAQ!c)3RPadbmfMlHWMG!b}N?zPIF5Om=wJkjwn}<0CWIt1*Ax(P-*4n zj{Dk~nbL*@A@jL@DyEEbO83H!+eoif8eoZZQg}4K#_BEwgwXQRkSkdr6ZV8X6=|I%80kgYG2gax?%QBMIV- z@-$VFrhRdqG%|*7%eX)4niQUL@p7tN;W~SX@MENpK6G3J5GJxTvx!PRf+D;})n_)L)J_NfCs=b=<@q_Eo`N|+($)47Hi z(q66_-@JRq&cOivl(3H*aR7~;BL>~okplaKP+$X{;#0i%Y6T4OJDvzdz*J8&ndnp^ zPw`k2Ey+4IyV{WUK3zK;F+;>WHBQ1 zXhKWFF2qoL7~Cn@;Y}%e8Z2nLd~V{5%U9GxP6aT5>t|^`IOvp6HTjGmjpkUr9@V~y z3v>28+gxVJb(VeikijKbY_SY+Y^puAS} z?;l3RIVHq_+?YT?^j|wvWMnK#W)JRVquk>>d{kck>L#LvBxO)TIkp`4W5N#fO7P1a2hPyAX+2scN_3>5#({R<01tpF zK3=oK9Z3dKoseYoB(<Yg z)bKx7**y2=%^Orp7*eJzgk8-hw7z?0F5J`E;)MGLMr4?jOJBlJ0RiI}} zkneCp!)me_(g5&-;ZGr@(XR=Gtpj}kw4LGoIQij8g<{oul{7axh*P*zg5Mlh_ls9| zk4^8dY(_y%A+S79T>Tt zQo4voqa3m^Exxjmm;_uP61;SwvQi!8M6n zUabnc1`0W{!&hsdJ3B*&U69Bl+hms9CVqpLnq()FJRyR6f(U=Cw#`#r$=k!)K+B`+lyj!~Nnxt+bnLo$D6# zlJ*Nwe3VEJb+oMbk7PcMKJNdH^w4Kv?AC3UkGz%neVQ)8XU&>5y?vi~dzQaiab$m= zg6!JMSGVjpkdz@cE?KtTuN$WqghPhUR0ViXNaz$mI41C$8xVP2C7xS}Rrl88E5$ zoEZN|G1_(wA|d-#xo}h)VRC!C8!YDg>L57Bzf4C8mvt3jQDFNCDASO5hlruTm-MXP z7a|ou4Yh7#6@;wuMtMoP9?-U<($UQ@F}Cn{zS#+Kc`-pjb(y`Nwg`0!H=luQuMvv2 z>t?U3-MUq2aJ$2?MkrJGz_{U9ywNy)!$+b_94$zV`);62Zah-KoQVgonKr965Yt%o zZLh-l)njcTxHkG7!&O#(1m~Lh*k=jd@NNdtqMGKLF&Cy(x6w&nzI6~LF-wS4mhlQ- z5qC=A;m19Ppmm2CX7l+z2^o|4sMoY&cUS5=hId6Ec(-hTcUctl7WooWJ3~!nFTG^< zxj@($tw9jlvGdkbLnYd9I_$_RK6*;|xdaE~qj$Ri$UOQ*Ru+j=C6rwN;Vrczb^)Cf zdMNB1#!qZ3xwqdi ztS=J2fq13iAFtGeJQ_{W!m^EbW;Rp_$L#;Krc8=3OY#AsaBG8Fmmrt5vjKEnaECNs zQH<)!<*s2ud^{mE3Y$b4Q}f~lEk#(c7J`tjOKV{{XO*r>+n>H?{uSrlk5~x%Ewz=2 z!(nI;=HcRsPfYA%8ulSv2-mkkG-%SL3%dj5VO3@2S3itT!r6X)>FJ+RhM({D(_7UZ zB=jF|KdB3KQ;zkHxo?hs4O*Ydq+QBX}y`yH%Ru^2Z~zm^Bz&%wr205oj2jfMNb&7@hmw^_q*4C0~B1Y)^2qVsoTe+ zs-*5~L^A!d^w=wr*=%x?-0OaaiPE3vBjo*)b5EZp2%501g-*6zH+DDCe7MQ71{`OqNxvuv6`w?2ORbHkeaNVsi_6(K}ky9UM#6)J_MBH#_B8a)Q>k?2?Y%Q3a>Ugs-i-AK#x=ckq9Ej4gX_ z-RU?}E;jZ4&`|WZ))x~eEO#x8c3@ca%M%npO9myZ%i63D17(rfr?;N_{rDDmd;JkY z=mPZ)-K{CI9J15(D;K$bUbxd?*TH2hJjZv@y|sTV`~a)$U>v)|{#moHxMlmiLgmlR zTfw+7;$xKQh%3%-pPK*Ysn70)0a33EyXo)%_{S)KIAG`B)#!`QYgeuiY=`fYb#xz%vK4vqBl`m8^K+QsWm4}QD@e(2#QUzUy^FF&s-`!kF@T>5`_%(g4H z=FhPZ6!!T)w$i+aZT@f&YdG|Ocn-R6TYtV6mVpx;EySfT|F~CS85ak^?w_Az{&zjx zG^{E>_xQCDgkfmlWM;Ri{pZay|BL_68}*{=nvex_;lFwKE~aya`|8in@Lzl2?Uw)T z+{}Nm|6yWL7|+i}P7x4&Kfi+`-4(9&s!706d`xo_3`haLBymHw9< z{9`G=G4voM5&QA0{&LekmiDP6_Vio(KLgKSZ_4>a!VjF0n7_*Z`#7FijYErn{-4_zvr9DnVcRFg#<3%DxZ9aURgvnw= zSXiQ7s}iqjHe@*Z85K5!DOaOEO5;Y>p5PZ5f6 zDY|wcBgaf!6J(pwoy07N_;@a>ad3vsk>;Ed68bK7@Q8O&$RnY+&_<)W43)zS6Qf!5 zp8!bcXZjeTo;bJxnSKLn!Nrw~S$pxgVTT&~g(QAGev%rsj}|Oa_)CI`Jyy|qOA2Zu z$7WGi!bt6Ykrbid$2Y?qLtm3)x1}!FgXY^gVT`0(Kq)1!WEgyySQ zO~w>PUI6qvQ2q6#8ONbG$hrf*ocdOwM>UMH^UT}*X{;+y=8IQ7fY=}9r~n6tY~+0k z0AtnSllao1Jp~wvo*Mk(#S2u~O2QFIg(6=CQnpTYujmw61w;KHYFw58<5o$8-SIMekMeW~GgrYb6aG6#gHD9{)d z1qTO@`WdNcXoM>Sn-d`O=p)r3j#6|9OkV$SXWZq*ZF8C9FX{Zki>}>vYCKw;u7HHe z4W2|Z=JFEMyDKvIYiOsuR^Xs{v%AL29U_N)?1=_;x5y*+*W^u-tkQNq^2UdD{c zjC}>Okbu{#SFa$bc*T3>5+DR{P*AQ2u(Kb?SaGHj?b+|%EkQMhYGd*t1_Y{flwdZT zOWYkG{2BlX%w$kAdcgk**w2Y(HGCsQR9WaO+}4BL&~(3YHPP=jP>Shi_emVD6xV0K z_#8#pVeX&M)b8w$4n~0kfxDt%0;Do8*l76(|EUZT(E+6`1L`16>YP2?wXqRWGTs1= zK*1_K#>AKvV_x^_ekHx**I?-UdYKBG0P+L=s%`_Xp4?YJ1?MdmVBiE_*FxXqL(~9_34gTP~-B7ii+~`=wwyM_}b|ghi+ed#30Z!z!-Cw zw*V|5q)H=DsU#*QwxqP(12vvy3-!>;?UxJ8d|9e6_=cSgo*n8`4slQ-Z$;QxVo95! zk%6gs0fwUG*oSL6?VSV&gDv0!%-mcCRZJdp;{E%~+jUdH-f54))}l3Kmxu^ZJHeik z+3zV-sd#*fo#4}5W8Bg}N$3I9i=JB|2Iwri>4VA^9_tOWni=Ph_G(jy7~cISFFjQB zwL6t{zvkca?lY^M%DX|LPpAPbBxX~NuD`&=&fbMyOvpWqfr7m~yt)jSK)kN*;oFN% zI&@(Z$p3W`0<@eFKv=4iP&*BJJ-^8oE<2`gWn~3DN)0?NK}j$;A2okjmjWXqHct3lgIEzNG$_YpSR~J<76t9gUBY|l&IFigQk@|ie-1An zG?K0u%up{fl5sAGsTZ%VnTa)d$(i3(r5 z0msnx?&I0~3LZj#D=-M-NjyemP*6<%jvF8_Yd@B(KA^jiYu6n1GC}BmU}R&9R*x+Q z(S}%PrV!r)pqBA+d-QuSYud%0ghR<^0E){#e%8|GwtnMEL_?X=#I74#w%5|JaPj1a zJ|>=i4<_$84>9|^#e!f@Zi(APjn;$t86Rr5Ay@lV98^vFe)xPIeAcRit8LRZ?~;}_ zE|wYL*}3!8?U%s~cY3aW_`0v9ys?oW0278Wtkpjt01RCo)fyO{%$)zR0k88}8?w^i zr?~@~DPML%8*BKcJM*kA(A>nVVyIQMJ(sA{G`n4A2q%+MxIuCUxfjTX9m8I)m&n>z z9c7zA(wR$HNyb?};w~ha*0}3qTfZFzoh%9wNuOq3Zj(wHr6`aic#9(H59hGwV8- zqCru$s;I6E3=KyvrZk4>&H}ztzCaj5c+Io1#lufm09r`bjJYiO6Io5)^ ze3J=9Tu&XM(i`5&4iFrKXF#+e@sic!z=-q3GeNo?5mi!B(sX*38ItfFlZXeuR>GD@ zMC7n~tn{KT2#V2FDQ%Z1V~UTrP}qW)vKO8V?1z}Q(06IG3RqK|H=DFCKN=)AFfomF zMtnDfU_;v`X(%_a;jn_4BW*J?(E|E)F}n5*a+9eM_D#l4&=I}vum!}VO=zxMPhSnj zjvLzcHN$hJn*RlqUt{Hg7|lx0sv9f6te+8A5m#X})!fC!1>At}^VMaQqOd!70O_o$62T>@yFMkzAHNPYg(15RR94Igy5-YG|-&#<2>?x zv+X!UBZLoEpIg72*P~O4_Vy#{;_X}{V*VOD2jUIQPLIfB8fK}`CZIfPcmav#X(rqR zYK>aUA(NWL4N%GA&$iD*y0{BN+_KbXc**;>ULX8ww^{#sxQUChOZ~^XLxF-exl+j3 z48*Kp5U@kvU@{+|ZM_vn!}**F^ZcMl5xDkv>b4KmLKD-5MECEN=`EhqXLCgs@mL#S zmKk=OD;Ur2NN(fN7MqNunLbRPQ`gYQ&$oq)QTR=WE?g5REv<(yXKBzh3lHPxp{w9= z^-)>R2Z3BSE?>xx3yg+Vuq>Eq+YRTmht!T!4wv}&y?c+SZ}w3 zv|#XzbuH{6!NCg|MTPcQmcED&I+T|PF>h|_E64_Dzv&L-yE((EHi3|6 z30lm2W4vxlC@c;=-uvU=E3HyvP>_e0i^~YQdYRYo8pK5x1IA_7SJ(=^iM|{Z6-A^Pj`XVVRqh6>dhRe8Js6HLce+=!MC)sq1hjHJLb%bSpc)nt?zdGdyL{WjF>A*|F|1 zd;6>xhpXm=4rj31GIOG?Q;O>#*Ujo=-H$P=Pd?W9XEO6+Nej>2wH?JdZmA}P?LQi; zDEs)zA-yJ(d?jV!EK$A(Q`tayTn~5ag_H>b~AEr)sln4RY8SN zN{}~v;K}5*Hab%q3uTLpp-GTie~)UKj17#JwYdu^$-#r#MBOpBaes0dM{5qen84aL z4k@s|l56R-uNEACY9uPQkU^A3BZ?SsVs5oTLWy<+6;EAswfUIhTfg{(gmxqd^)LF^ zt{Z&2m!w+I(srKc!CeAz=d0~PpfCUe+=gK@!2X}mg50@A`p4KXVgG^5kz-@S;DmQr zK7#5DHOAO_=0S*TMkk~99-GtXK95i&sGE8#=T-WRhgv*?34CKv%?4>&#c!n^l z*7cZ}FN^oSv+)2Lb)EQNm^+5qZ865naftO2RAio-oSYDTt+H<&bh`Lhy2Ow7v9E;} zM6~V}C2nhkoz2TUpl%|@$spm}<^^mszfvdX4|?JHRNq&@~Qsdhx|`%X=emR+1vkj+pg}Tho-zSED9$ zeV_Va)0?`2mdiMo*Kgbib)*ed9{VVu#mVa+_Tr-p_?d$c=*+`SZ?Pki^fr`3rPRM-LSy(sFeN6Pttrj0$>f%Mtaq2E z#Wh-x5Y zFJ#LIX_fbfx=)qx9f$4k9EV!F}` z$~r;{tZm;gh;q?YMKSJHEv-hl)`uPn3`UM)$bIP!4uDy06;K&*D=5m`E(i~ri-0tvBx91FA&LJ9$Bu&s zciX-hE=gg2fq>JK`rsJPycu`)Bf=gA(FkJG8FbVarQ;qQ?Dw=sqgWq-f6shL?f_B!s= zc*xO5)*}0Ty&-19l8wu6*D;Kc)A4=u z0R%AZp#W?jT5d~4%G37%w*u8%F!ZQjN8~J8;e;SM>rkAxA*koS0OMNsS=(j(LyP?k z2zQG9YO|K23)xh6v1N<0HfS?J6e)}m0wmOXnC4_H2)B0{5{Cbayf=@=a^J(opT=D@ z5~8A%3>k`$j0p*4$PhvU$&)EXAyhj`rOc99WF}K)+NlhQJQ*^lNaoC$-|MEm&)Hjh z@3YqX{_|VEv)1|JtP`H+zQ5nkaDA@p`t+JLJB;aZ`t{$)Q&AP6zixl#oy=-$<2Bl= z{KLfSqVvOt(!SBB>LA8YpneFZ8&?UrTuw@|gG?REn~fSN z!BeW7M$n4iI1(B+2`93&on7`-zh043=-D+iQifpD%*)F92_@&V!?WRP;s`%al41`x zc@-WwQwXvCIBnR~8RM~Y%8{zXn+Z0dzE#&&R+p(Pzz;*Z%Z%B`hC_z5vd{2zhpH}W zAP&pfYv3ul(+!NXB%gAcC_!f%fpW^_nM+*>*Y%J1o)WXxU(vdeHSTy5p6>LAAJOsX z>=hBIi&ayMOJUm^+r7A8>j7+EROSR}AUE$_v5@M)rqNJvQUD-y-RIXSy-U*tdpe0G zo#Nk946e@FY*w53M=fh~1{BC{A{*D4i)}YdB3!jDy~06A^>0|RR%|Qb;r)KsjS>yw z5#y`80_hHJ@7(?EyKJC(O3)rfr);f$-=k+`Y#VT#fo0Uk>e$JIXV|U^;z>u95L|PD zZC$+R2Y}QZY`sKkqvd}MEiKpjy)+!zM-z!VOW>WlZCiXyRWTyO!S1wnB)-gS3XHoo zd|r(NSFDtha#yH7Xrlx>pvft?({?ho%J+wM15oANo;x_tta>-O3T+W_fY%hhekIP$}8rvK12;yCgTQx@XaKK z^|9(<00vB2iqLsR7=hUsIf{VUEKbqhFHbQ!0ojX z_h9LddtiZkuyqwAmH(M)-P&||5GMj#BOIQfc>aIuw(1uG_=}18Q8XUSc9m*`pf>U=(-QCkC(WWLy`@8l`}ks=xGD;M5QUjX^4*c{q`2QwO}CfORS?b@wFv77JDJVYC@K&3wGJ{YJ*s)%5Aw z%+r1jm^;_{9lKQ@gTf=xuv(exxbYwk}`a4qrn#s2#CQ?l6$tlkRNo~u1_ zkT6B}_GcM4 z>hikqe3wu6Mf;xmZThn1^3|E5oO7HTY-sjkjo;Oo{`j&Z66XQZ($G}Dy#n~UD>E4x z{d=wAvJj9`OS^1+qPK}RmhBig0vf{2Uu_e$J!y_%e=&3+U~;)$W+t-5l|N;R2Uj1Ibj8rp z_e$p9DhD2SrNJztPO=`9tlyxth-HG{JrAVU(fY4nzhbd%-AqV555beob}>uusYz(S z?Qvl6i{ADH!;!>KyHL=pv;#2p^pAd%@rW4BJX4gDdp&-UKf*#|{|!Byc&u)>PG|>0 zuVHh;i0H6qfF?H)U9=TK%u*d+7Y{S^IR@I+wjUJ&~(;^6hVd%UN9C`(Y$7!#{*9Wqbi&IM0)S=<< z*%O)td_G>>pu|>kmq^Qv)7Th+!;+B~>3(!(tYFsc1f=vA!bEh5d8G#3ca;Ed?+reE z*ucFcL1Fu;V@)|P5^+>0*4OpChhASt6YgZBQSR%b8rExa$CSJC8}x5W`_RV;zhV{j zyt=4*iwux0PcN@t&P(}2EZUxNZxeDc=AvM-22TSB6w80Fg1b-!zaaKA{Z7fiEY4o( zsDgsR)5@7B$7r+W+;Jp?yKZhl;`Yy`>*()rmjR!~{8j|ZYl*)r^i&kYiqd39j@M}EWXWK_D)$@X|DSe{8fn`RE?Ete+w#-)D53&WL0G`;Ir z*P83e`*rI^hAaj@0-r)<}zd?SjZ z04A5=24G(7_BXg6+U4FgH8(MJ;=iwFWo3mh1W6?_!IN4>V##>e{!-TShSjkmzchb8 zFyi#iTm-Wn)T|LLau1k!bX9DELq%=OC$&pT=+lVRV#KcDGGdH3YVEhi!#P8F(naPiPcqevDJ5%F7Bg5v?Ab*zilXD;1Ba-7iuG*dSq2tn6 z<7-Mi62%sf6kvpq-qkEd;9<(Ms_PHu#N9H&_$AqqXm~#6-M7lmGSabr5RU6XSSM^X z23IA_sFKwlOqC%V5-IrR{=rfsxK;#bq}j7tdQk&}xf& zHzL4$unU{LX+mCGNdmr1j^dC4viaMe!@m3c!QVqn3a&Jrd}rh&jj5 zmjDZ2K~Fw!eZM5>+KSA^c=Xb6B1e5jWp~+2(e>ZBVRN6ChO+bqrh~<0XlC*pCT;R~ z_vXWvc>E>O%!yC8W=^QcPcr&FK#n_s#yf@24daodoVI@>ju9k~R-TkMczC8j;p}9Y zZIJ+sW^gzSb#xx-Gb~0d@_P_~LPOu9MY^dXQ|VH7%@Laj5b3|tjbHy?KKuW|J)7g_ zv_1B*SDx)Jr!^KhI5W)h-z0^f@xDnI*7FEe$*o2P5!+l!!(A{NEN z6;%y-OaFj1!C8p-7sgcPZ@;w-pEc-t3fH`9%hxqyPWv;vuRLn5TK~syao;shx%w0R zY@WQso7{Vx{41kwf{YtjhXs7o4&%XI{vE@kV7f{CBdcfZ`>B@B`eUCHHmtVKel32{ z=ITVqcBhE5U*7`_VuUNe&q!?Zl%f+xt@l3*J~54{4u zFO<2~eLKg3Qdz&ho(nf zSuQ87u$UXTY^Pguj6`gs{ew(7cS)|*9FRC$KlC<{HioeyZ6#wliPZYv zOelHh!VN#C;$2f*de)@s_Vg~<&y{?aUztlh^7c$rK685C64Fhq%toQ*L3NAs=bS5& z@QN~ud#xVs=*5xW%!<@TY8GuI{`CA&iFk2}>d!P?u#o4NV_REHw3)1 zQ(bv+*!O??L8m&xaPRCG*wumi17d`;*SQFgq^`_e>Mb#r4;TNI=-gM|r?hAR$9FEy-dr^I5r42~i5K^07VZ4QpZ}FuEDw$* zaWH;DRbBAu{!FT!yYdUZ=wEIhalC(gp#Qv{KXGU0!_Es*AtPyP?i`tM?z{aY9-g|^ zx{9=}c`ouD;@bR#^p~p&KI66B&;RwhNNqehcdkLLgkrHfekP`G*Vn}2knkIX(##grCZyNmU{e~!(>Q%|*rFOq`V!jl7sc#C#IK0YTv~Du8zE4HJCh zxD6=g+>qb6inO5N;B9%7nVAXnAW!hxySYriCFW-PDJs&5Reu`%5JYjj9DlucGHzP> zwz5>v+?wMP`C+Vxsx~2`8B)7YzK7DzRCz#XC-#o_V$Mh&0G%qTcD#fMYT=LquGtYF z7+th&O29=N7&26e6)k*jF)*OU!m)Skq;-q`hsQ(x2ypzZ6gcbHp9;<~bY%jg$$Rac z`}g6O(T!<`dMi*AeS2sUf@i`6@g#5C!EA>*&;@`7(+-oCH&- zlKZjBUIMlcqxV3>y-#vHF%L~9N(S#2c&b~(uBe18m(u@nOaJZRD1N5wAQLMKB-+7V zaes?%k12OFs3dkKj&A_xVwMCP$RifAFZnnO)$91Nw<&M0@!)RNGhpJ44uX$`)?9uZ zJfq%rlJxaC!f6DJF9NgWo$&7huDO1Ir0iP%;3oN8{-LI>F%O&zL>>IRiRi|8ekQ(yZ8ogfz)GZ9M&6US3d` z@`bRn*@*^JRjDVmf#wHhsG!j}P}mj_ngD`moZpURB<|Io#8%o^LkZ0is4F84VN^A! z|D^^#gRRwRiV;a59c?}X8qY<0Hr>Ozh zP&Z7;;Mc8_8(mJ(8e9*=#7~5n#Ma!xX{;r0j}rj+1v@Bpv#r{Lko{tZWQ9-wH?80* z0qQo`4c3&tr%=$*k73NDj@4EG!BdtHrhMnO8@i;3f%@bzM)-T}^@=3SM~wWM;fB*( zA5zJW%Z5J@7im_T*o5H=L5R%TvhF^zK{7VMhgb7257Vr#aMg33VHH)jk4w2oue`yX>vLAGr zexngg#5*$M0=ZAbyfJh3=-G_`pbxLr!W@05Gy%0wu|2Rnl8%k?wu$IN}Uuqtv4@o6OnKFS51WAyB4Ap2?{!$czB zeM_nk!a5E|D2Yd3r|i#YvI(eBDmLdlmoN-BBNZ>nCfag(B=WrFctd-s`r(D!2yXq0DwB8i+~%BoH^p- z^WnpBlM|5&bmv=PHHMApmpS9XtRFc?SI5@2y)S>#oYT)dL!v6%rx^Ub_Ms^4=p7qP z_yoLHUjQZ?vs?ir0Z2@Rn=W~I<3JV7k(;`DaWHxTnW{L0BB9PHinx-h6Kf^dft@eJ z7DgNP&gbAL896umhRQ++sUFKY!ZY0q{wmwi9-FsZ9X~ zRw`AkP-y?9?BSk5{Y(skIH8^XhC3fGt<7xx7A%hfEjDrj;>OwZtWdDr)OW^!rHEN^ z-c>BFQ)>q7NwA09ii?Yp5I!(5A$pCCrwaG1T#7(AIIiuw!3MK)u*j~FRp1E#O3_GP zlPKaK8`}q%7(T)D6xa@hd3;-{hH&7!6yvJ*hZhUq;SR`-Q~*CrGm@gsjbRhW7+zzj}`l^X6|t4C5MOWPeUrZ;)G^}5>_|e z7)^VGS&?Ga^h$1kymzjiKosk7=2Cr(>pLnPiIk@%c>S4DXc>gadnX`jl$9S28x$rVBecgaU_sT@5MRsG=h%sjIS%%mZ8Ro!iJ5_3&wBt1l324f@>Goc0*m^z`H|t zs^Ybe#llVPv`-s|GN8Z4tD7}uR&r%wjBf>(5G3i5{+0rSjg*aKnh>*J*8seoA^bc7 zmSv*Ea#)lhi3x1sZsEjuEn;=^TI?^(nr_}mk7u<#puz6aUDi08S9DtP)wt1-d?!-R zcI{+Dde@x9JQu@tk(e$-aE);0`;X7^<_!QIJ{Pj)_x}CP<+aC1W842q)|_i`KJsra z#|Qs3G>&H-sf7b{P$_8tNNilNdg#^dA|I#^AQ&SYTSCO?S6bhGm^i~Z3nm&@)`vl+_-iBui(q>UHD*OtQtf|W> z)SMcz-b$F86?~=pA}*GX(j;z2(wuJQ>qW#w81fteK3pBOdH*GO1-ub9C&IediXNUs zr$Y`3xiaw=0?v+&R11In*l0WI#W&4m3RMrq?QH^EFdgU~k_?y4x#&`@X0UTp=Pz*% z_zAMGufuCD5iIBGd9L$X84=FNtM18?7xX`_S`Mz-40N$n*(eQhi$Y~T$wN>t=Xl7ir1qaWIAH|7Ejpl!|56(%?al;b+*pVPE^X? zo+twkL_Xk1ITRzB4qiwjSD73h3#4Caf>;BXFa_p#if}$;Q!sVV%=qda1Q(qbou9To#XDGQwxeRR#UUUewHOlE(pJ}P-mu8Fq&23Tw=+Qg37+Fhn_`zB_z zCZk9%-PTecwh;j8mY6GJyO&u?{$%_>TDQDWAkgUSS(M+0#hFio?E$tHXe%DD%82>J zkJu@t<73AyJL<|bKmI|T?<)ivS$f{?IGNQNGnnz#QK!qeVIou-!mn$;sS;J80gh-m zL?3E#!Ty7oXmnM(z=(Nm43}Dj{JSXsjWgW7?7>%FObkJ};4_MbAXRYuJ@`adXKr1B z=~|yGh>+8A>s@B$)^yFRzK;f~MJ0xrf0u5dBtrLBTw!>!-qTDhzQ5xb9ke5;c3ft! z^Me8F%y)eGz1EgJJ!>EDDVsi!PmIn&_E~`?ouJYPzg>zW$l98R!7e~1UgLB3eZGTz z_iL`%??sYVXV^VISfrn>%wLat5j}_zwf5yN$i6FjgbSxKiS=_yq!;)9iza+ueQ;{` zvTM$Nm5|LtNy4j)al&oE%ZD&Ak=H~QZLqL)mwKMH{?~?#q_WxU?!-yd{OTp}ZN?VK zPzm8l88`4L#j#u!P3cpnhwhiS~m+wZ@r0-K0QKLit`M#sz zPDo&2yaL?dR)Xi*44*Fvg&cQqawLPCdalGSieL^XJ}N-Dsr@H9p*FMFNkIC z)Bc{G;laC8Q1)@c*Dsg56>VJnDDpd8bFwGSO;#`UiDlh|f6sm1&Cndj$qeEX8-_as z6ZJEqxAtKgt|NyeufxG+&bSsYjk|E%M7>xFLkzeckdwhkd%RZ-%U-`c+RT46$7Cu{*u=0uir>eYxZr zaAGu+i#SlhaOEOdKKcd@ve_5*i|&%U@Fd;cPll+lkvTAjj|RC1%PcFLGJYj=WzCco z@>Sn4n8dUX26f!Du`gHnKSi3zkEa#9Nj|Ck?A>NG`{M6pVtR}#JTd;fo0n&LZsfT) zh#^O7qESAkt#zn{^%HA<^fok%QD1kh@>P%u7ANn)W^l!00^HMi2);e^JeArM{wh zU!h9H5W90?rd7m7Kb#rW@Xgcnc|%ibRZ1!4kK4R{vgz0#rFKaiaNHG}ez(*3!!h9I z^{Fl8a0@%5cWZP!l@SjJdkhQEi|aU_1{HR~o1quj1fj@LIFN}?Z=?qoXhf_gSj<5b zQPw;NnWFoPwG!W@rn6955*kx%Vy&s3#(1*$G&>txT@*ifW<>LV9#cKewl}@jrjud> zTBwdlj~vWN~Sb5SwBxH21UV z`)eqAY7`jvHbgj?z*kHiGO=U3U><)JW`wNUw-dF!{cWF;3+M*$9SH4f7ybHD4J|#k zhD%_IbyR%jLrsuFFiwXzXnzEAMPYwqa7$=$wj^xlDE#~PXXBosDiN4^aN1*y_jHkh z94E{`LBb|B$(jwewHf-nr5$eFP8f8@vc%^}+dM@xAANIEh~&zHLT*8<5ZKeA)Kgwkq}|yn22tM%^|{ISIWqd{qU1j={F?gG*Bo#?7GD_(JV~<}{9==UVu3+e*lH1$^W!h^EWXmM5Zys0iOl<4sFipT z=a&8F=N5u_Pzw`o-oq+g!tzi<(7f?D9X*H2NdOZa${nly_Ni{?W#Unb^yG!4)=%aJ^)yg~3_g;#Qay zZSDAhblX}#TueGu_$PYy9Mt39U#JajArQabvFfMZTpDCtvx%k6$v9;|WMTQ=Nf(xE z-n4%_6R<=V-HJm5egEw=cqHBb^>n+4r~7B#%ly-Axs?i17%T%cW7Q8UzyG%D_|uO_ zA;TshL+zPIuod*TJRwPa_!Ak5@Mze&s;%GB*VnfOH_gZE0$K=S=_I&X;JX`i{` zBQ5)H;KoNxL}}5w4L`FWS+QhXG!W?H>(bW`_gx6jBjXNgY8VN3waw(VND;rVIn-) z0lO~L`Tuc(L8jEH+X!YB^wbjYk;E%KaiS5Oj;RJnznUTZ4`6-;J)w%j&8vy}W~o>S zW3p4xh))bA5AiM7bJE++upQ0&+hf_%Nz{4pU*+M|#hZQ?b-`__H~a1m`_P_~5Z}Dp zHTWoB_VXvA^UPBh18-XX;lfoSw>9kJ(TxEZv>VX8ucqols<$RhmT1`%C^4pjCWVGvf+=W&R+a#uO~ zdZmV4hP^iub!Omv>3~%;hHgZzt2LUpLipE51nUMu9$Ax42}KQt%^XR}{)a#`+s0A} zkub2~yuPbIKmf-_(OV(Xj}B5#Akv`;AH^m8O6PK+=ffVs3S{u3NpGmpz`mV=tpeod z0b5ua@%4sHPHeBzV^H&h^8!W@xoClvU2J0l6D2BmlKbO^joG$h%!u7GV1=n=NhvL2_}Br3k`c>^wQh zCf+tmzlLJZpFy-aNxSb6nnl|$Q%<8DcghS#dhzXs_Y0^V)D+lB&6_pMtR9`i8^H@D zkc#jY)sz-6e*k9l@Nrg^M~IZTQ;JUo-xO6Lay1M6`Mv~BU zEiHLxmxHW9QL1^N|8TX>l5MG!Qnshj)o3ZRHPf-LffH+GZfG*^&r+zu-k7KPoixoB zIlV%hs@;Rc&YdyE5bmPaP-P0(&Us@Ta#_pLH^g3tc70({SG; znktMAMt}%JQ}@E@*aCl@o=-mzYHs1TqF@q_jb8;>Em?oP5*mymG-fN(19y-KsbiAV zZM_tTSO^yTg8*Xrm&X|(CwK8#@7)Uo(5Bzv^t=d879Crko>*K`Qj*e!I%M?(U2zsr z*pONOBj5`r`w>nXYWlDcANNL>u8UK5IRG%a*Lj;yoQxZm`y`z3oh1fhC{U{)M+$=A zKD2*~#v2 zS@Cvqq^H$^r2lyIuQ!mFdlNZ;3=_T|5O>=t37 z_6j~xza7AIPdc=8jWMweYX^-9tReOFgY&t`csf{!L&23GHt2v{xIs5s_4x73ZKW+7 z#OMl>EVL4s5#3F(fZCzMARCh?B%RWl`e$Zwnp(L@Zo+2uJDk3Bbi_%nMRV>H>t)mS zYN0LTZg7>zNHQArG3;*C)`n3pP)Y2k~n=na`eIQY+$Q{eH=*wk5|+=Yh1 zGdC;PX~xzzXv5?e&uKmnwz!rnpWT`z{Iue05|orPVy(UWE^sEXNKy&*oE18j?C@yu zQpRm(IaBvp%flV=#HuG)fM|$fV`*%UC1QVu{0=qBv=jVR&ez1-rUm{s;uSKrgXUQD z0QjJBkYgMdBR| zG8zZA8npZBn!AdR7npXy(I5dTssdwZ84kHIMa~>_;_i=KH^4w97Oi`HHCZCGSvM*L zl@89O9(^8q8~xAdsOvKUYj3X1&glm3=k^ru1}#*U`btUU^UaCO zE%D7u`XM-PJ{$DejOgtsR?z&}PXlmcO>zUz+yO5zSo3S6LUI{q zhNC3MEjVZ#ROxh=Y;fv0O)UtdWNy!k)5q(-s4I3lGo8j6q=ez5=}+Ix6}+D{&fzLi z$F4IHa2a~E-U&V7`<9~B2136djD;se?DGcEPX>l43H(zhrOCf zGH2I`T<@x>HQZA-gcT2fG^Yq3eIz8gPaIWW(ezK*&Wv|FU=r*?5VwN~wK=AuSqYfz z*q+Y={EkR+Tc)BTY-Td^Q&3tc?zYCkZ|_59hS73*mUp?l1bsY@N3`;m4N59Sd#G2C z(7kwr8qk~ zchvwkI*^0}BdX!Ah}Q~-h$iIrqi{f~@$}u5nE9gnNwhQpS;fr$hEi}z9c)z($Eq9* z_K+WL_*4L^gTZ$*1g@iqi~dO1B2lx}rioDFInDGKO9EhcD7FRa=t01MJoa)z-A&=) z<^+Yn$E=iSch~kqXOV>&V|SuXdT9$*4S0B*YrWf(0W9teCE~CZd?p%GjUN;kC*w0j z#+o?}+%+JG=FG2fi<;n+4#@4$X)3|Ck?q2lpqRnnNZRh`!`%mhnQXZtqZ*Z+l(Q-* z@EsiSWZSM=EOUB z2Ft#*waE+DjW@GeYcksk+VL>k)~NTEL%+eJe5bLRNFAFrbzt?@DQT>vEn0-TiS3uw zrB^hVj&62l%F4>>;_(j-PSgP)amF^M#25HqFg=?Eqiumai*3qOH)bZ!h|-gH&)41| z{LPwfl_yaRkAs6w-}O4ZEKy~N(PW!S(IZFkntNT4)KNYSy798aZvr5yh>Ozjf#0 zwWOBsSDcs~NpjNQ>56-g5ly3$Bvc8!Zpz{#-nE}(3dW{i@i}hmt!GG%Jt_x9e=l>6STxLfQ~@RtKNcew`>mxn7{ zy_0Z5ts}~Vp`buje`xSzq&N@H+ZO#NtcTm5uCfLF*~*KyG%u^j7$2e{^_ZMJM0wJCODukqRey~%+|Mj zNI$P-vRUG4WlbW5xwzxWL%B1W(d#RGWltuRBxgX&1|@5@M+ug5c;ds3?_1YIt&Lv4Yazg>E1D^7jd~T;EVlI8M`;|JC&gN zD~;q=^uaG)NL#nECwz(VmUiP8Z*rvYUjB~ET*_r$84LCG^C$3C&_X{+0Lm$t zWnY-kQ&NmWLI)Ei_k7Onmg&CBlq|SFAj7#OWN-jsy)|pKG1xQzm84Z$F$%g#Fs?3P zuZ6xNF-%l8=ox!ISf=opdjcg>g3dGZrbmcpSgUE>y0L(tj=Unh-6DTn&fw!dRMsr; zqC!1{d=}joz?yVC>2wUTK{h(PZK!YQT=m6eocJk}HbHukXZkWh)rE0h9KPCNa$>sl zgo(X5TFE3@hZI8#d-g1UOoU%1?Du4N+QVYY)B7R0ups+5RweAPtD&8)d=eQ$O$P>B zd3@^UT~)>9<(h(Q$%yY)otbE;DIG9)9M)+&P;$om-FMiR@g;FsA7PQTFY!^s1T#wa zvAOCEErWHx{`OcDA)n2B(=!_Go&x!k(`HOl zKI}E(87mS_w5T>7kpZ8c819CCP}qh+1(k;3{I=2P_hR0ka3j46oDMrPX=`i87F^!u zdfFtX538}%c@$6;=UnRa3=Zyd>JbqU(ZA&hW=Tc&ERtJH{{tUrX^H6+{?!n}MQ<6s zx2Qch#I(Tzo>bb906OW znIMO?-eE_Kf--dPC(+2a_#%!&0WHy+eCW_}a`7FtWsDObzciSCJ-i_idIFKhH;_NP zHGOh=WbZN(&2QXCx6r`#p8M_`S!c#9y|RBRXlPVFs5VUM{^l z8LDW!xlbu?c;mpZ8q@nsxPr9UxpGw<$I6$qszkkpT1Bl^XQq^(^GSJ{W&)#<-En;9 zB7g0V-(2*~fc=&0W0l9ld`9Vd9Ws2^Soy5#?7ITjDPTB~cgyM9#{<iJTNKqdahaoz#z-S+&r;BH-663Ods?Ai5s7&1XEH|tH%ZQU+$YiJOPw+BJA=|PjD9Jx-!OYgU@4MKcrBXysx2=X}-_WtNSVJk?I0hoSB*#W*wJ1Ghq{nhlV3ob;Ra~ z8H zj}6}_Y#vzCn~6JW#+&r|#*M|}7s31W_&S7IPCvnz)0v4NTo$Nu!kEEhSW!V?(9hNT z=D)`>$b^MyTpIxqOe`+S8mZCUp06l$r3~-_Dz^?w2jJ3gb2YIEn8j{MwN8wvn)=KL zJKh<&g4|p&>yV39R>MX{d{y6xzDX;|@in6{ao`Z0+++%9u#+pR_7vJA$~H`Q@Pr2v zw88;j$RG%8XY;PTqQFvt-Xv-fy#DqadA=6hT8UxfVuC< zC})JuaGShAQLowYbfESv!He_ws;zu=i(HSNN%|3#pR zE-06w3~+XP1wa&*hJk3b)>T=CXxF}2sFw~y!4IrhQ>;5ab$HpUFqJ~{vjTK+QJf_A z6=yGWxnt!==0+v#XD>D+Nv%+S+iD6btcQFXd|PW6GL08Q8~q#Fx4hTrs0b@2t6XV< zl57bm2yo2Un1`g(@MD(4A#gLca~rhZVdv&~TG>H07EDn zo_Kq`ea*V4d(KRdMyMM|R>1iy9ixomu7as{zO|e8eFWb-FK6$wbCsvj=j%VF!D&{yPvI-I5$*9Mf4$r-Z_e3qAo6(M2n z>7)e%Y!J2#c21?KoP74SAM<$+>A`H!d1Ni~c=Ez$W8w3}!x!aB^@! zY<**5w8-8TKO}7bOIgq6m ziU64RqHKjoWw|M&RH9LcM^PQUy0icc+e{}_#P+nfW6!3(2p0_S4cdd(zr8Xe!A6In zj>l6TD8rzzZ%nFY^ft`d5`w9nI*%jCdu{^4q|P2TVDRA_hLsdG)T?0AUva}Q)E?_w z)r}KW4mO*6oKtn4T^8!y**SVl8;sUqeHEYHuoM0) z`z)Hp(&h19ww%+s0USeZ#M|D!QkLPcaor8_dUS2-4;1w`>7M~`jNHXqnPg3H@L=#E zfohnTnIjnPbi?f(w%Z>`Pu^$#_Ldk!%B}XW)y!hwADvG;eDtVqQ}q7tmz!W*M(gV6 zz`OPvvC}E)pnfk=YOq#b^glRfaDuLm-U z`)9u0lAP;*j@X842)gtHqVOCS>O^l8c!_e@ z`Z%>9Oo|)8F_$0Ks72VaeF|Eak3%%oVg;_Mbt(4MXIz`y245(;lHY}1zvOPuTVQW7 zn}SME*JE;fl78KFtF^N&vy)CKOEf0oAN0w`Ae!e;_+?$@S1_a7+0Q*v;~r%S!cFs8 zI&0}Q+bU`aqF^WCxYdAD4-bdQ=j~fIxN53T4Lor2z9j}{!z>G{q}*RlYeu)eOg56$ zSB%|o@QSP=^GF}=Ozpta|m+3#AHu#G98Uk?`GZTZEfP4 zT=Q8ZCwl~{!vPNY)cwYmWNe+hZ5!Vi+w{o{6%`e%zP>A;rZ00^CU^oNS%Lm=1%g{! zUMTr;+e#nZSu}cG1&U~Q#k;)O2Wx5=Hn3YdGY!6eAE3gY>VK#A{f4c@EA}Y*FYKI* zZlz*lr3|Y_PG7bnifbe{&2*+?2YWfRmB1Sd6%v_ zfV%Q&@nNB%Qt2FocqF@%cp~S^%FBIcV#&WfR^Y(wVOL9i5oeWqgI!ll6qAtY*Oqc+ z$3fcu*-w*~gBs5veSl2%xt~CEkl?f@>9zfdKo#4Ngz!wj^tJ4Kd`Yl|j4l1GAM_ZQ zFnd{?ITS-{UCcu^{`kE^a<;QTi(no3eozeAS9we@nrdYvx+A^pORDSw9PQLSn7JGZ z&k=?pv#$E_<6q6*3cw3DJx$4(2^dc=AP251lwxY#obUJRQ+lYZyVes^n>2=N#z;o7 z8=fmSUjt<=t-1O_o5)~)wEQL5%I|sY%v3(`tjFW_ZJCyyWaE3Fbg@_6A!c;Xij|w6 zA@^$Wom2)HJ~u7b-uzt_5Y?iD8c(f3Xp^>Ns2tp$bQ7bSZ@}Mk#2o6oj_!3*k8z8_ z-APFY%JWHv&ud3cdH2N1oW0rYI5nxb!R z80hOa1JCcrC|}WOmTo`hk~W#vrCPV*ZUZzlo{%o+)^Q3S2y>13b$ zeRf9ffI10FP{2?@wGV+;F{>V~GLgJ<=T23KRm)6{tY4#s_J*7@k*Pfz>Bem~>E~Z^ z5av7aL^U z{7hL(;9S!V{#ZlZ!LA$Is2xef&3PS@V6PM%pyCPCQtG*Q-==ye_`EkUhA3(6a4G zdzeYDzD*37nQo_J^5iz(c(#mPeC2zE*@Modm3E~}pP6K4;~OEYlDq&I!2jz(ekQl_ z7|H-eyNh&p=d0L%I4ZGXflWZ)J>&_$>xspotkJuoh+{W#L#FiY+i3(x?uCx1SGDkdyE3ep1ioX~p$3O!5YyUiuqPm#Pc)39N=nwY&Ers8 zdKHMlS9r@m%~y~|4Pg?M@r>3nMHssrOmG5{n3mT60hmmEUsm0i=`~x zq1s+Ir^w#q%w!`F5VQNpBAQ$4QoR>qn}nv`a{i&v;h}$8_p_<@oJidK`mU%pJJiaDix=I zaM^SJ`UOdD|Mu-jp?ek#^yk0Y{KI?!9Aodoihs^1z-|8E<7;1gy&yg=`rO*{ijn1V zk0gKlxbRM%3aaUfS>9&bmL48~+Wz-ri%DC*{rD=6%}MVT!jvb)0#`qr(Y{+nr_t3h zQ>QzeMq@krv23$q%P4Qu%tJI@fmLMI~ed%-Kw zk>7t4T8OVlIQ;9BoFAKSz3|hN|J;)P!QnTl_{l3qw!Zl!(z+}24@NB#M}uwq&#nup zP+N?nibS&iL7nh<^n~Pd?{ALUK&Z+RQjhHXd)FX8TCC15U8eT4C;kf1AL%K>{OMJX zF`-f^`MZz2mP(NHT>t+w9~8H!7|S8&$}ffg;c3xjO0V{Ity79rI07;_^Z)d)NG}T) zoYCvoRvF)-zBBw}YuJCi1Uk_pi>|HPz2I7We7VNh)>*bcsX^GZviw(D=ZTa*{~SMl zZui3L^igKDvFOFY*@5=HmLubdMFm1ja}^4Szi9g7y0-@cssFz43aE@1)`f2oSzBIb zH51{(qo#FSHL_JDdJ#$JM|Ap(C~(tf;T`u83fxl4r)1#YWb`_lK4w?d10D^gHO@?= zlLGU!3eIlaYw3!GPefs3c}>4K|E1RQXGsZz3VVBEDVD@p4)}4Fr_k6%vn~ug@{N|7 z$J@&4a%U4C2*;G(8={yd{P;=4JxHG!?PwLi=Md@JyX@MYpPuj?r}s5n%slxir9UY! zf9Erq!q;4@G0Gr4)&58&sHUbiywkhP^od&O-epoEKhJ}wZ>3rkRBXvSY2U4-Ik8K? zH0jSDJ{cdL?#53qA{~EVI~{#qfw{rhm~b@to^MgGbm8ca55PEo=PavM?^yFwDoQC( z-R}?5^jXZZ&ke?YNLkg}QQCQaX8i4#m#=Z%_lpR6gX@Cza*wr8lde7g@$&9xUw^sn zXYu3OfaPfOWIv)8DpFLRFr&|t{hxkPO5|4RFEe{$#)<;?Y#q|Mj5s3AANQV*3(?E% z_G#A^nwe_(6f{=R%ztrO!hw%OTKr%>gzxKG{x`XhPB73ROQ0k9Uay%#-ts%#)2AnY zJ0rY=B=w`yr#jU1HwiKnZ=-OTEK7XL7ORqtp^IVzl2StS)?Y~+v}MoxJ=#CdlZud1HaQt6IC8#_&k5AIKdJM75iy4 zbpP6FYCYQ8de=sOs-B#ndFJDd-eu0Rb`~TOmkth=%FeR_KKlS{saXHy0*VxBAMg-x z>b^dC)+~Q(Z$Ua!o<#kn-AO9_R3s_q@cF`tA5kcjYhl0$^}Ln3#Mb$kR&Q2w-j34M z{qZgSUP+f1lR`hK%#rHu)DgF^Y~d}W6$~^JaUXl3<*${O{AJMOyrwZr4Z{+W%7OWm z85xL^yncD&w`n&k||E4S;OoKA#g9#PB#7`3coV88{5YvRmHCoru~xJP1Wm$W zh5#x5rDFS|tdZaR(~*^N-Tcec%6W zc}smF?Dfr+wDU0)MczL>4IZE)9JHza|Mb58^ELnfP}~0b_5b4`{!fi*LiKQEY6M)6y zau&DeMQ?jZ(XkSYlPuq+j5em%r5m`-yf5PkjIUpqu!8zH`6N^^e|S!41Uk z6Fd2wl(h3PZ0f-&gldji?20A$owdOrb0^WC+(0Ht*&g2yGqZK<|8V_;&RRJ-Is#I{9YY_{ePq-wK#^|w!kJ%Sey9HSCc#FYC~g1tl2*A`2u>tV(mUGPqTk&9-Yw0QJIA@v znIyJ3?q$m**T&`a^nh2GT;F~Z2MJaEg|L&&V z90k=v%2&jc5go2DmCt~`Kp0IqhYR%McPq~QZkfOP-OWnOnB;&`sj=r~2St%@#1Td= z??sACQe3fPb^7aJYfv@S)q9L=9IDJ&TP}oefFx}U&#{dh@9Jn@^(>;P*LQCtcJ=NpJz{S>$icxOf8+=uz~8>d znTeQd>;?5}|L6oa=_G^w+}Zq5;x2fLh0RLlShg2?7(E_1bKQAYY753Xuw2IUMb9_r$j#OrHmbj^N+!G z{!Gy1>21@u!2BTd^LYO(hFjk;?gA4h{Tu1!V>aFK(+Xrd4V<6FDBG>}Qv*vW^ zBXG0`3VMM|+;DpBx1ph->JlL_thF5gspU@I@L_#@eL~Syt>z8u@;F&g!E3}n-xJ7< zB-Sjzb>-BlFsJRMper7QuX9pVV?zg=x*^2Ahc|Sa5b_s>6(^kALV8X$e>%3KZp7=K zZ_$357)H+yVvr#UIYe4Crlc34RC}e#vqRe4yboJas*gB<_C4|GOv3SG>5&s4L6Pe) z#Rm;*4YpjH7Cpv+7854pTL7@~Q@hCLyng7-?e7uuc z%fcUg>?vR?tJ!yLyn#0`Ek(BL4iFPAj6GWZ`(_nMX6AR z?B>Bxrc9Yqq?9FNgd##k%9Ko%G>CRdg@lS0l0-;`CZuFsB`GpxP6NsOo%dQ&?XBM5 z@gCp%9>@2sfA+Dn*7MxY{oMC;U)On^*Li7$mg~nCD&FWGPl@24E=~NPvA;W=rk}|d zy1lQjsM^`{_4@cVS1nskvMq}5cdu0OKwF}xi#f^TKlq)2x;jSU?h}XiyQ``P2H1@} ze0yb;+O5Ilkviy6NuflT>%Jo%BjtC2HSKTBLXjmQ8T0NvqIa0LO3;hO1qNI;v1lvR z^gurZU7yKB#(ARfh`0QYD6XNPezDrAIiGU^UMAc;DN^{+Q`Ehosq_$A$}^+o?m;o0 z{nuX_CeP190nlGXyRJ)wHEZsaE0ZlOw3P|;QqNZCdk{0br7_4w(S693ev;oD&{F{M z@C976ixx*x_6q+3Wi;g13kkaQ_S5Yxge1(pL_;!cJ8H&kdA94W$9pw<9o(?_&hpo1 z>h6>U7dl4cX8b#MN?kg^aXO&ubwYEQnbaJfW3wpU-hNH&w@y|Zk`5ar3C zK0ay86Rvpc@S3+P=+(GD&u@0ZUmK&lrTGhlE+twe^lrJ;6_FYfwB@ep!S|8w31Q4T zX*SBp@7%GY-;6%LDATpO$+7E8{qd66PiZ@x?2{;zu~a}xXv+{uu!sp&?$am#JL=~; zn}2j|;ZEbJt0Y}oj|S?;-UeFg`E6l}zH0R}3gtxJ;zSB14yfsTRId>HgCnD7!OVXL z=*w0HChcP@&3c~xHQs4q&@O5m3q@w`w*}mkZBpbtI=?e%)0PIT^N*C2`eE^&IFn<8 zS=;&&%uKpebJSYAgjUjCU>PVXqM4>4Bd;Uidcl*<{%=rio%N!|dag}onT_werT3b$ zQ|_P0VGNkD^jJGw1JYS8{u9=`x=+04UfZKbgPC7ao8w||t4q_|r?XLR@e*WJ{-bCa z1}grqUx`b|Cfu@q@9P23jV^8!S5jw2w*_uDDg5ym$_)m1&XK{68$Leq4^TH?#@YPJ zsqg)_+`daj4c&z-i~AD(jyNh=+a{v9|PJBD%5VPJ*T9*^+vd>=Y-do$ww2~|jR{knh& znHV1yh9A$7A=@(k->E+Q{re`v)Ba;aqklJq%9fj8&_wxe91pR+~F@l6c|2cwbwtkmarA=m7 zmpi~_BQ#-_{-0WQTmcU{QPJBxEeKHYa`~5Flel$%@Ic|gnkyu#2Xh6uRzqWBtH}|f zQv~J#+Ae~r@&In8aO$qNAI9wF3_!IU_T{uu_NBqZ@nw)MiU2Jt_Tv>`J-z1PbUK|d z8ZU=z5WTwtzIE?pmPLJLADqFW>>4-eC6tHmzJ+rQ+)LMI8gonfFz5;Y*ph7mnq_5W z2Z1cXwxCsSLe&+}TB9~xKxN(A*4c58lI@jaQHvZuZT(j(#?IE|9A#(Tc3D9RQM)$# zZDy0|AHc6N5zqDa_anaVdl>-9!!>3iG^G1h=T{AUn|qu>(V}XsQPE{S^s;$y&GIs* zujpsK`d>0e2Pc%Fum)~+DuPYZR8;)C`hk-;1b|5(CorgRQqV$sf7PSCnI_@BI>K-En1yK1_IQYIW>>#S|Q9XAJ z1p)$cjzniDm2)9VwBn5o4QV1R)!Es}3C5|L2JV7m+LMH^eBV8Sz1Zp6)n0r-Id>!z zmQ%TZGh-n$lA+G;VBLN}W-H_`LgI0kDjlIt#(F=H!J*(;*Ch)yVqongP)fVGO~8f% zNSKQzT4yg^66OPE#S_p%>x;O>*^ut-23NJjO%as{w`rjK81

IBMWRc7Ig)K4@0C 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 literal 0 HcmV?d00001 From 1253a68463ec807948ccbccb7aff49861dc47f49 Mon Sep 17 00:00:00 2001 From: guillaume-grn Date: Mon, 10 Apr 2023 18:57:52 +0800 Subject: [PATCH 141/152] Update checking rules for wdelete and wview --- .../seedu/commands/workoutcommands/DeleteWorkoutCommand.java | 4 ++-- .../seedu/commands/workoutcommands/ViewWorkoutCommand.java | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/main/java/seedu/commands/workoutcommands/DeleteWorkoutCommand.java b/src/main/java/seedu/commands/workoutcommands/DeleteWorkoutCommand.java index bf979405ce..5d7b85c885 100644 --- a/src/main/java/seedu/commands/workoutcommands/DeleteWorkoutCommand.java +++ b/src/main/java/seedu/commands/workoutcommands/DeleteWorkoutCommand.java @@ -33,8 +33,8 @@ public DeleteWorkoutCommand(WorkoutList workoutListParameter, int workoutToDelet //@@author calebcjl @Override public String execute() throws InvalidArgumentException { - if (workoutToDeleteIndex >= workoutList.getWorkouts().size()|| workoutToDeleteIndex<1) { - throw new InvalidArgumentException("Index cannot be 0 or more than " + workoutList.getWorkouts().size()); + if (workoutToDeleteIndex==-1 || workoutToDeleteIndex >= workoutList.getWorkouts().size()) { + throw new InvalidArgumentException("index, indexes range from 1 to " + workoutList.getWorkouts().size()); } String workoutName = workoutList.getWorkout(workoutToDeleteIndex).getWorkoutName(); diff --git a/src/main/java/seedu/commands/workoutcommands/ViewWorkoutCommand.java b/src/main/java/seedu/commands/workoutcommands/ViewWorkoutCommand.java index 523b55c160..a4ab75b23b 100644 --- a/src/main/java/seedu/commands/workoutcommands/ViewWorkoutCommand.java +++ b/src/main/java/seedu/commands/workoutcommands/ViewWorkoutCommand.java @@ -39,8 +39,8 @@ public ViewWorkoutCommand(WorkoutList workoutListParamter, int workoutToViewInde */ @Override public String execute() throws InvalidArgumentException { - if (workoutToViewIndex >= workoutList.getWorkouts().size() || workoutToViewIndex<1) { - throw new InvalidArgumentException("Index cannot be 0 or more than " + workoutList.getWorkouts().size()); + if (workoutToViewIndex >= workoutList.getWorkouts().size() || workoutToViewIndex==-1) { + throw new InvalidArgumentException("index, indexes range from 1 to " + workoutList.getWorkouts().size()); } Workout toView = workoutList.getWorkout(workoutToViewIndex); return toView.toString(); From 2d5242dd3ba2f7191964f33ea5bb07a308f31d89 Mon Sep 17 00:00:00 2001 From: Richardtok Date: Mon, 10 Apr 2023 19:08:13 +0800 Subject: [PATCH 142/152] Update PPP --- docs/team/Richardtok.md | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/docs/team/Richardtok.md b/docs/team/Richardtok.md index 445d0d7705..e30e72126a 100644 --- a/docs/team/Richardtok.md +++ b/docs/team/Richardtok.md @@ -27,6 +27,7 @@ Contributions to the Developer Guide:[#86](https://github.com/AY2223S2-CS2113-T1 - Created the sequence Diagrams and explanations of for all the CaloriesCommand, that includes AddCalories, ViewCalories, ListCalories and DeleteCalories. -Other Contributions:[#86](https://github.com/AY2223S2-CS2113-T14-1/tp/pull/86) +Other Contributions: - Cleanup the code, to make it standardized for the coding standard -- Resolved several problems regarding pull requests \ No newline at end of file +- Resolved several problems regarding pull requests[#86](https://github.com/AY2223S2-CS2113-T14-1/tp/pull/86) +- Review PR of other team members [#91](https://github.com/AY2223S2-CS2113-T14-1/tp/pull/91) \ No newline at end of file From b04a462c92a30d52bc5e11ce4724b4e0dc4842cb Mon Sep 17 00:00:00 2001 From: calebcjl Date: Mon, 10 Apr 2023 19:30:47 +0800 Subject: [PATCH 143/152] Add jUnit tests for Calorie and Workout Parser --- src/main/java/seedu/parser/CalorieParser.java | 1 - .../java/seedu/parser/CheckCaloriesInput.java | 75 ------------------- src/main/java/seedu/parser/WorkoutParser.java | 1 - .../java/seedu/parser/CalorieParserTest.java | 42 +++++++++++ .../java/seedu/parser/WorkoutParserTest.java | 44 +++++++++++ 5 files changed, 86 insertions(+), 77 deletions(-) delete mode 100644 src/main/java/seedu/parser/CheckCaloriesInput.java create mode 100644 src/test/java/seedu/parser/CalorieParserTest.java create mode 100644 src/test/java/seedu/parser/WorkoutParserTest.java diff --git a/src/main/java/seedu/parser/CalorieParser.java b/src/main/java/seedu/parser/CalorieParser.java index 1171eb6d87..9dadfcefd4 100644 --- a/src/main/java/seedu/parser/CalorieParser.java +++ b/src/main/java/seedu/parser/CalorieParser.java @@ -111,7 +111,6 @@ public static Command parseListCalorieCommand(String arguments) throws InvalidSy } //@@author calebcjl - /** * Parses arguments for DeleteCalorieCommand. * diff --git a/src/main/java/seedu/parser/CheckCaloriesInput.java b/src/main/java/seedu/parser/CheckCaloriesInput.java deleted file mode 100644 index 33fa0cb060..0000000000 --- a/src/main/java/seedu/parser/CheckCaloriesInput.java +++ /dev/null @@ -1,75 +0,0 @@ -//package seedu.parser; -// -// -//import seedu.commands.Command; -//import seedu.commands.IncorrectSyntaxCommand; -//import seedu.commands.caloriecommands.AddCalorieCommand; -//import seedu.commands.caloriecommands.ListCaloriesCommand; -//import seedu.commands.caloriecommands.StartDayCaloriesCommand; -//import seedu.commands.caloriecommands.ViewCaloriesCommand; -// -//import java.text.ParseException; -//import java.util.Date; -// -//import static seedu.commands.caloriecommands.AddCalorieCommand.CALORIES_NOT_GIVEN; -// -//public class CheckCaloriesInput { -// private static final int FOOD_INDEX = 0; -// private static final int CALORIES_INDEX = 1; -// -// private static final String CLIST_COMMAND = "/Clist command"; -// -// static Command processDayCalories(String arguments) { -// Date date = CheckInputs.parseDate(arguments); -// return date != null && CheckInputs.parseInput(arguments) ? new StartDayCaloriesCommand(date) : -// new IncorrectSyntaxCommand("/cday command"); -// } -// -// public static Command processAddCalories(String arguments) { -// String food; -// int calories; -// -// try { -// String[] addCaloriesArguments = arguments.trim().split("\\s+"); -// //date = DateFormatter.stringToDate(addCaloriesArguments[DATE_INDEX].trim()); -// food = addCaloriesArguments[FOOD_INDEX].trim(); -// -// if (addCaloriesArguments.length == 2) { -// calories = Integer.parseInt(addCaloriesArguments[CALORIES_INDEX].trim()); -// } else if (addCaloriesArguments.length == 1) { -// calories = CALORIES_NOT_GIVEN; -// } else { -// return new IncorrectSyntaxCommand("/cadd command"); -// } -// -// if (food.matches("\\d+")) { -// System.out.println("Invalid input. The input cannot be a number."); -// return null; -// } -// -// } catch (NumberFormatException e) { -// return new IncorrectSyntaxCommand("calories"); -// } catch (ArrayIndexOutOfBoundsException e) { -// return new IncorrectSyntaxCommand("/cadd command"); -// } -// -// return new AddCalorieCommand(food, calories); -// } -// -// public static Command processViewCalories(String arguments) { -// Date date; -// -// try { -// date = DateFormatter.stringToDate(arguments.trim()); -// } catch (ParseException e) { -// return new IncorrectSyntaxCommand("cday"); -// } -// -// return new ViewCaloriesCommand(date); -// } -// static Command processListCalories(String arguments) { -// return arguments == null || arguments.trim().isEmpty() ? new ListCaloriesCommand() : -// new IncorrectSyntaxCommand(CLIST_COMMAND); -// } -// -//} diff --git a/src/main/java/seedu/parser/WorkoutParser.java b/src/main/java/seedu/parser/WorkoutParser.java index a4d6748d95..a6246a77b1 100644 --- a/src/main/java/seedu/parser/WorkoutParser.java +++ b/src/main/java/seedu/parser/WorkoutParser.java @@ -38,7 +38,6 @@ public class WorkoutParser { */ static Command parseAddExerciseCommand(String arguments) throws InvalidSyntaxException, InvalidArgumentException { - //exercise name 100kg 5 5 5 5 String[] exerciseDetails = new String[ADD_ARGUMENT_COUNT]; Matcher matcher = Pattern.compile("\\d+").matcher(arguments); matcher.find(); diff --git a/src/test/java/seedu/parser/CalorieParserTest.java b/src/test/java/seedu/parser/CalorieParserTest.java new file mode 100644 index 0000000000..914932b7e2 --- /dev/null +++ b/src/test/java/seedu/parser/CalorieParserTest.java @@ -0,0 +1,42 @@ +package seedu.parser; + +import org.junit.jupiter.api.Test; +import seedu.exceptions.InvalidArgumentException; +import seedu.exceptions.InvalidSyntaxException; + +import static org.junit.Assert.assertThrows; +import static seedu.parser.CalorieParser.parseAddCalorieCommand; +import static seedu.parser.CalorieParser.parseDeleteCalorieCommand; +import static seedu.parser.CalorieParser.parseListCalorieCommand; + +class CalorieParserTest { + + //@@author calebcjl + @Test + void parseAddCalorieCommand_negativeCalorieCount_expectInvalidArgumentException() { + String argument = "11/12/22 Food -10"; + assertThrows(InvalidArgumentException.class, () -> parseAddCalorieCommand(argument)); + } + + @Test + void parseAddCalorieCommand_noFoodName_expectInvalidArgumentException() { + String argument1 = "11/12/22 100"; + assertThrows(InvalidArgumentException.class, () -> parseAddCalorieCommand(argument1)); + String argument2 = "11/12/22 100"; + assertThrows(InvalidArgumentException.class, () -> parseAddCalorieCommand(argument2)); + } + + @Test + void parseListCalorieCommand_notBlankArgument_expectInvalidSyntaxException() { + String argument1 = "@"; + assertThrows(InvalidSyntaxException.class, () -> parseListCalorieCommand(argument1)); + String argument2 = "2"; + assertThrows(InvalidSyntaxException.class, () -> parseListCalorieCommand(argument2)); + } + + @Test + void parseDeleteCalorieCommand_multipleIntegers_expectInvalidSyntaxException() { + String argument = "11/12/22 1 2"; + assertThrows(InvalidSyntaxException.class, () -> parseDeleteCalorieCommand(argument)); + } +} \ No newline at end of file diff --git a/src/test/java/seedu/parser/WorkoutParserTest.java b/src/test/java/seedu/parser/WorkoutParserTest.java new file mode 100644 index 0000000000..81b5a1b700 --- /dev/null +++ b/src/test/java/seedu/parser/WorkoutParserTest.java @@ -0,0 +1,44 @@ +package seedu.parser; + +import org.junit.jupiter.api.Test; + +import seedu.exceptions.InvalidArgumentException; +import seedu.exceptions.InvalidSyntaxException; + +import static org.junit.Assert.assertThrows; +import static seedu.parser.WorkoutParser.parseAddExerciseCommand; +import static seedu.parser.WorkoutParser.parseEndWorkoutCommand; + + +class WorkoutParserTest { + //@@author calebcjl + @Test + void parseAddExerciseCommand_emptyExerciseName_expectInvalidArgumentException() { + String addExerciseArgument1 = " 100kg 5 5 5 5"; + assertThrows(InvalidArgumentException.class, () -> parseAddExerciseCommand(addExerciseArgument1)); + String addExerciseArgument2 = "100kg 5 5 5 5"; + assertThrows(InvalidArgumentException.class, () -> parseAddExerciseCommand(addExerciseArgument2)); + } + + @Test + void parseAddExerciseCommand_invalidWeight_expectException() { + String addExerciseArgument1 = "ExerciseName 100 kg 5 5 5 5"; + assertThrows(InvalidArgumentException.class, () -> parseAddExerciseCommand(addExerciseArgument1)); + String addExerciseArgument2 = "ExerciseName 100kh 5 5 5 5"; + assertThrows(InvalidSyntaxException.class, () -> parseAddExerciseCommand(addExerciseArgument2)); + } + + @Test + void parseAddExerciseCommand_multiWhiteSpacesInRps_expectInvalidArgumentException() { + String addExerciseArgument1 = "ExerciseName 100kg 5 5 5 5"; + assertThrows(InvalidArgumentException.class, () -> parseAddExerciseCommand(addExerciseArgument1)); + } + + @Test + void parseEndWorkoutCommand_argumentNotEmpty_expectInvalidSyntaxException() { + String endWorkoutArguments1 = "argument"; + assertThrows(InvalidSyntaxException.class, () -> parseEndWorkoutCommand(endWorkoutArguments1)); + String endWorkoutArguments2 = "1"; + assertThrows(InvalidSyntaxException.class, () -> parseEndWorkoutCommand(endWorkoutArguments2)); + } +} From 6f00eb4174600cd8951b2cd464d5e6c3ed555807 Mon Sep 17 00:00:00 2001 From: calebcjl Date: Mon, 10 Apr 2023 19:37:04 +0800 Subject: [PATCH 144/152] Fix checkstyle error --- src/test/java/seedu/parser/CalorieParserTest.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/java/seedu/parser/CalorieParserTest.java b/src/test/java/seedu/parser/CalorieParserTest.java index 914932b7e2..173f157982 100644 --- a/src/test/java/seedu/parser/CalorieParserTest.java +++ b/src/test/java/seedu/parser/CalorieParserTest.java @@ -39,4 +39,4 @@ void parseDeleteCalorieCommand_multipleIntegers_expectInvalidSyntaxException() { String argument = "11/12/22 1 2"; assertThrows(InvalidSyntaxException.class, () -> parseDeleteCalorieCommand(argument)); } -} \ No newline at end of file +} From a5c5acae625927306f0b820777e6ec140a182036 Mon Sep 17 00:00:00 2001 From: calebcjl Date: Mon, 10 Apr 2023 19:54:07 +0800 Subject: [PATCH 145/152] Fix user guide errors --- docs/UserGuide.md | 137 +++++++++++++++++++++++----------------------- 1 file changed, 69 insertions(+), 68 deletions(-) diff --git a/docs/UserGuide.md b/docs/UserGuide.md index 954bcc6592..af74daa130 100644 --- a/docs/UserGuide.md +++ b/docs/UserGuide.md @@ -9,29 +9,26 @@ This helps with planning future exercises. ## Table of Contents - [Introduction](#introduction) - [Quick Start](#quick-start) - - [Setting Up](setting-up) - - [Viewing Help](viewing-help) - - [List of valid workout commands : /whelp](#list-valid-commands--help) - - [List of valid calorie commands : /chelp](#list-of-valid-commands--help) + - [Setting Up](#setting-up) - [Features](#features) - - [Workout Recorder](#workout-recorder) - - [Start a workout: /wstart](#start-a-workout--wstart) - - [Add exercises to current workout: /wadd](#add-exercises-to-current-workout--wadd) - - [List workout dates: /wlist](#list-workout-dates--wlist) - - [View workout details: /wview](#view-a-workout--wview) - - [Delete workout record: /wdelete](#delete-a-workout--wdelete) - - [Count sets and reps for a week: /wcount](#count-sets-and-reps-over-a-week--wcount) - - [End current workout: /wend](#end-a-workout--wend) - - [Calories Recorder](calories-recorder) - - [Add calories consumed: /cadd](#add-calories-consumed--cadd) - - [List all the datesof Calories consumed: /clist](#list-calories-clist) - - [View calorie consumption: /cview](#view-calorie-consumption--cview) - - [Delete calories record: /cdelete](#delete-a-workout--delete) - - [Exit the app: /exit](#exit-the-app--exit) + - [Start a workout: /wstart](#start-a-workout-wstart) + - [Add exercises to current workout: /wadd](#add-exercises-to-current-workout-wadd) + - [List workout dates: /wlist](#list-workout-dates-wlist) + - [View workout details: /wview](#view-a-workout-wview) + - [Delete workout record: /wdelete](#delete-a-workout-wdelete) + - [Count sets and reps for a week: /wcount](#count-sets-and-reps-over-a-week-wcount) + - [End current workout: /wend](#end-a-workout-wend) + - [Viewing workout help: /whelp](#viewing-workout-help-whelp) + - [Add calories consumed: /cadd](#add-calories-consumed-cadd) + - [List all calories consumption: /clist](#list-all-calorie-consumption-clist) + - [View calorie consumption of day: /cview](#view-calorie-consumption-of-day-cview) + - [Delete calories record: /cdelete](#delete-a-workout-wdelete) + - [Viewing workout help: /chelp](#viewing-calories-help-chelp) + - [Exit the app: /exit](#exit-the-app-exit) - [FAQ](#faq) - [Command Summary](#command-summary) -## Introduction +## Introduction Fitz - the ultimate fitness app for individuals who are passionate about their health and fitness. With Fitz, you can achieve your fitness goals and track your progress with ease. @@ -54,53 +51,6 @@ The data saved during the application will reside in your /data fol 5. Fitz will display a greeting message. 6. If you encounter any issues when setting up and hereon, do check out the [FAQ](#faq) section. -### Viewing Workout Help - -Display basic or detailed help information explaining the commands available in the application. - -Format: `/whelp` - -Example of usage: - -`/whelp` - -Expected output: -``` -Here are the list of commands that you can use for workout record: -======================================= -- [Start a workout: /wstart]) -- [Add exercise: /wadd] -- [Display all the days: /wlist] -- [Display workouts information for a specific day: /wview] -- [Display total amount of reps and set for one week /wcount] -- [Delete workouts: /wdelete] -- [End current workout: /wend] -- [Exit app: /exit] -======================================= -``` -### Viewing Calories Help - -Display basic or detailed help information explaining the commands available in the application. - -Format: `/chelp` - -Example of usage: - -`/chelp` - -Expected output: -``` -Here are the list of commands that you can use for calories record: -======================================= -- [Add food and calories: /cadd] -- [Display total calories consumption: /clist] -- [Display calories consumed on a specific date : /cview] -- [Delete calories record for one food: /cdelete] -- [Exit app: /exit] -======================================= -``` - - ## Features ### Start a workout: `/wstart` @@ -214,6 +164,32 @@ Expected output: ``` Great job completing your workout! ``` + +### Viewing Workout Help: `/whelp` + +Display basic or detailed help information explaining the commands available in the application. + +Format: `/whelp` + +Example of usage: + +`/whelp` + +Expected output: +``` +Here are the list of commands that you can use for workout record: +======================================= +- [Start a workout: /wstart]) +- [Add exercise: /wadd] +- [Display all the days: /wlist] +- [Display workouts information for a specific day: /wview] +- [Display total amount of reps and set for one week /wcount] +- [Delete workouts: /wdelete] +- [End current workout: /wend] +- [Exit app: /exit] +======================================= +``` + ### Add calories consumed: `/cadd` Add record of calories consumed. @@ -229,7 +205,7 @@ Expected output: ``` Added chicken(100 kcal) to 11/02/23. ``` -### View calorie consumption: `/clist` +### List all calorie consumption: `/clist` Display the list of dates and total calorie consumption. Format: `/clist` @@ -243,7 +219,8 @@ Here is your list of daily calorie consumption: 1. 11/02/23: 100kcal ======================================= ``` -### View calorie consumption: `/cview` + +### View calorie consumption of day: `/cview` View the total calorie consumption in a specified date. Format: `/cview DD/MM/YY` @@ -259,6 +236,30 @@ Here are the foods consumed on 11/02/23: 1. chicken - 100kcal ======================================= ``` + + +### Viewing Calories Help: `/chelp` + +Display basic or detailed help information explaining the commands available in the application. + +Format: `/chelp` + +Example of usage: + +`/chelp` + +Expected output: +``` +Here are the list of commands that you can use for calories record: +======================================= +- [Add food and calories: /cadd] +- [Display total calories consumption: /clist] +- [Display calories consumed on a specific date : /cview] +- [Delete calories record for one food: /cdelete] +- [Exit app: /exit] +======================================= +``` + ### Exit the App: `/exit` Exit the program. From 6877acad87d9b0ae1222dc81e792191b27dc564a Mon Sep 17 00:00:00 2001 From: guillaume-grn Date: Mon, 10 Apr 2023 20:41:04 +0800 Subject: [PATCH 146/152] PPP : Update --- docs/team/guillaume-grn.md | 24 +++++++++++++++--------- 1 file changed, 15 insertions(+), 9 deletions(-) diff --git a/docs/team/guillaume-grn.md b/docs/team/guillaume-grn.md index 9db557cae1..2ae5e8c858 100644 --- a/docs/team/guillaume-grn.md +++ b/docs/team/guillaume-grn.md @@ -1,19 +1,22 @@ -# Project Portfolio Page (PPP) +# Guillaume Gerony -Project Portfolio Page -## Overview +## Fitz Overview -Our team developed a fitness tracker which is able to keep track of the user's daily exercise and workouts. This product will also be able to keep track of calories consumed to be mindful of the user's diet. +Fitz - the ultimate fitness app for individuals who are passionate about their health and fitness. +Users can achieve their fitness goals and track their progress with ease. +This innovative app is designed for users who prefer a CLI format, +making it a user-friendly option for anyone who wants to keep their fitness routine on track. ## Summary of Contributions ### Code contributed -Link to my code on tP Code Dashboard: [https://nus-cs2113-ay2223s2.github.io/tp-dashboard/?search=guillaume-grn&breakdown=true] +My contributions to the code : [RepoCode](https://nus-cs2113-ay2223s2.github.io/tp-dashboard/?search=guillaume-grn&breakdown=true) ### Enhancements implemented - Added a feature to allow users to delete a workout -- Added a feature to allow users to know the count of sets and reps per exercise done in a specific week +- Added a feature to allow users to know the count of sets and reps per exercise done within a specific week ### Contributions to the UG @@ -26,13 +29,16 @@ I contributed to the following sections in the User Guide: I contributed to the following sections in the Design Guide: +- Added Delete Workout mechanism description - Added the UML sequence diagram for the delete feature +- Added CountSetsReps mechanism description +- Added the UML sequence diagram for the Count feature ### Contributions to team-based tasks -I reviewed several pull requests and provided feedback to my teammates. I also helped team members troubleshoot issues they encountered during development. I tested the application to find and report bugs to the team. +- Reviewed several pull requests and provided feedback to my teammates. +- Helped team members troubleshoot issues they encountered during development. +- Proposed changes for our repository organization and helped refactor classes and methods accordingly. +- Tested the application to find and report bugs to the team, or suggest improvements from the user point of view. -### Contributions beyond the project team - -I frequently posted responses in the forum to help other users with their questions or issues. I also reported bugs in other team's products and shared technical insights and best practices in the forum to assist other developers. From 527d17400e7c111122a8666110b125fa91b16f85 Mon Sep 17 00:00:00 2001 From: guillaume-grn Date: Mon, 10 Apr 2023 21:57:33 +0800 Subject: [PATCH 147/152] Add headers --- .../workoutcommands/CountSetsRepsCommand.java | 2 +- src/main/java/seedu/workout/Exercise.java | 14 ++++++++-- src/main/java/seedu/workout/WorkoutList.java | 27 ++++++++++++++++--- src/test/java/seedu/workout/ExerciseTest.java | 1 + 4 files changed, 37 insertions(+), 7 deletions(-) diff --git a/src/main/java/seedu/commands/workoutcommands/CountSetsRepsCommand.java b/src/main/java/seedu/commands/workoutcommands/CountSetsRepsCommand.java index 2148ad283c..81b113ff84 100644 --- a/src/main/java/seedu/commands/workoutcommands/CountSetsRepsCommand.java +++ b/src/main/java/seedu/commands/workoutcommands/CountSetsRepsCommand.java @@ -4,7 +4,7 @@ import java.util.Date; -//@@ author guillaume-grn +//@@author guillaume-grn public class CountSetsRepsCommand extends Command { private final Date dayInSpecificWeekDate; diff --git a/src/main/java/seedu/workout/Exercise.java b/src/main/java/seedu/workout/Exercise.java index d58d0d2382..e2014d1202 100644 --- a/src/main/java/seedu/workout/Exercise.java +++ b/src/main/java/seedu/workout/Exercise.java @@ -32,14 +32,24 @@ public String toString() { return name + ' ' + weight + ' ' + repsPerSet; } - //@@ author guillaume-grn + //@@author guillaume-grn + /** + * Returns the number of sets for the exercise. + * + * @return the number of sets for the exercise + */ public int getSetsCount() { String repsPerSet = this.repsPerSet; String[] sets = repsPerSet.split(" "); return sets.length; } - //@@ author guillaume-grn + //@@author guillaume-grn + /** + * Returns the total number of reps for the exercise. + * + * @return the total number of reps for the exercise + */ public int getRepsCount() { String repsPerSet = this.repsPerSet; String[] sets = repsPerSet.split(" "); diff --git a/src/main/java/seedu/workout/WorkoutList.java b/src/main/java/seedu/workout/WorkoutList.java index 75d28086fd..098bbf51db 100644 --- a/src/main/java/seedu/workout/WorkoutList.java +++ b/src/main/java/seedu/workout/WorkoutList.java @@ -49,7 +49,13 @@ public ArrayList getWorkouts() { return workouts; } - //@@ author guillaume-grn + //@@author guillaume-grn + /** + * Counts the number of sets and reps for each exercise in a specific week. + * + * @param dateInSpecificWeek Date in the specific week. + * @return String representation of the number of sets and reps for each exercise in the specific week. + */ public String countSetsReps(Date dateInSpecificWeek) { ArrayList workoutsInSpecificWeek = getWorkoutsInSpecificWeek(dateInSpecificWeek); HashMap> distinctExercises = new HashMap<>(); @@ -70,6 +76,13 @@ public String countSetsReps(Date dateInSpecificWeek) { return displayCountSetsReps(distinctExercises, dateInSpecificWeek); } + /** + * Displays the count of sets and reps for each distinct exercise performed in a specific week. + * + * @param distinctExercises A HashMap containing distinct exercises names as keys and an ArrayList of sets and reps as values. + * @param dateInSpecificWeek Date representing a specific week to display count of sets and reps. + * @return A String representation of the count of sets and reps for each distinct exercise performed in the specific week. + */ //@@ author ZIZI-czh public static String displayCountSetsReps(HashMap> distinctExercises, Date dateInSpecificWeek) { @@ -93,15 +106,21 @@ public static String displayCountSetsReps(HashMap> di return output + Ui.line(); } - //@@ author guillaume-grn + //@@author guillaume-grn + /** + * Returns a list of workouts that occurred within a specific week. + * + * @param dayInSpecificWeekDate Date representing a specific day in a week to get workouts from. + * @return ArrayList of Workout objects that occurred within the specified week. + */ public ArrayList getWorkoutsInSpecificWeek(Date dayInSpecificWeekDate) { ArrayList workoutsInSpecificWeek = new ArrayList<>(); Calendar calendar = Calendar.getInstance(); calendar.setTime(dayInSpecificWeekDate); calendar.set(Calendar.DAY_OF_WEEK, calendar.getFirstDayOfWeek()); - Date startOfWeekDate = calendar.getTime(); + Date startOfWeekDate = calendar.getTime(); //Monday of the specific week calendar.add(Calendar.DAY_OF_WEEK, 6); - Date endOfWeekDate = calendar.getTime(); + Date endOfWeekDate = calendar.getTime(); //Sunday of the specified week for (Workout workout : workouts) { if (workout.getDate().compareTo(startOfWeekDate) >= 0 && workout.getDate().compareTo(endOfWeekDate) <= 0 ) { workoutsInSpecificWeek.add(workout); diff --git a/src/test/java/seedu/workout/ExerciseTest.java b/src/test/java/seedu/workout/ExerciseTest.java index d3df1b5229..cfda5d6cf1 100644 --- a/src/test/java/seedu/workout/ExerciseTest.java +++ b/src/test/java/seedu/workout/ExerciseTest.java @@ -5,6 +5,7 @@ import static org.junit.jupiter.api.Assertions.assertEquals; +//@@author guillaume-grn public class ExerciseTest { @Test From 98c7783b89ac1cc58dc2d6ac2563815d49dae05c Mon Sep 17 00:00:00 2001 From: calebcjl Date: Mon, 10 Apr 2023 22:05:59 +0800 Subject: [PATCH 148/152] Update dev guide for Start workout, add exercise and exit command --- docs/DeveloperGuide.md | 173 ++++++++++-------- docs/diagrams/AddExerciseCommandDiagram.puml | 22 +++ docs/diagrams/AddExerciseDiagram.puml | 21 --- docs/diagrams/ExitCommandDiagram.puml | 18 ++ docs/diagrams/StartWorkoutCommandDiagram.puml | 24 +++ docs/images/AddExerciseCommandDiagram.png | Bin 0 -> 40394 bytes docs/images/AddExerciseDiagram.png | Bin 24292 -> 0 bytes docs/images/ExitCommandDiagram.png | Bin 0 -> 23870 bytes docs/images/StartWorkoutCommandDiagram.png | Bin 0 -> 85018 bytes src/main/java/seedu/Duke.java | 5 +- .../seedu/calorietracker/CalorieTracker.java | 3 +- .../caloriecommands/DeleteCalorieCommand.java | 4 + .../workoutcommands/EndWorkoutCommand.java | 1 + .../workoutcommands/ListWorkoutCommand.java | 2 - src/main/java/seedu/parser/Parser.java | 2 +- src/main/java/seedu/parser/WorkoutParser.java | 1 + src/main/java/seedu/workout/Workout.java | 3 +- src/test/java/seedu/parser/ParserTest.java | 2 +- 18 files changed, 175 insertions(+), 106 deletions(-) create mode 100644 docs/diagrams/AddExerciseCommandDiagram.puml delete mode 100644 docs/diagrams/AddExerciseDiagram.puml create mode 100644 docs/diagrams/ExitCommandDiagram.puml create mode 100644 docs/diagrams/StartWorkoutCommandDiagram.puml create mode 100644 docs/images/AddExerciseCommandDiagram.png delete mode 100644 docs/images/AddExerciseDiagram.png create mode 100644 docs/images/ExitCommandDiagram.png create mode 100644 docs/images/StartWorkoutCommandDiagram.png diff --git a/docs/DeveloperGuide.md b/docs/DeveloperGuide.md index 969e3a0aa0..8e5e755fb0 100644 --- a/docs/DeveloperGuide.md +++ b/docs/DeveloperGuide.md @@ -3,41 +3,40 @@ ## Table of Contents -* [Acknowledgements](#acknowledgements) -* [Product Scope](#product-scope) - * [Target User Profile](#target-user-profile) - * [Value Proposition](#value-proposition) -* [Design](#design) - * [Architecture](#architecture) - * [Duke](#duke) - * [UI Component](#ui-component) - * [Command Component](#command-component) - * [Storage Component](#storage-component) - * [Calories Component](#calories-component) - * [Workout Component](#workout-component) -* [Implementation](#implementation) - * [Calories Record](#user-related-features) - * [Add Command](#calories-related-features) - * [View Command](#calories-related-features) - * [List Command](list-command) - * [Delete Command](delete-command) - * [Help Command](help-command) - * [Workout Record](workout-recording) - * [Start Command](start-command) - * [Add Command](add-command) - * [End Command](end-command) - * [View Command](view-command) - * [List Command](list-command) - * [Delete Command](delete-command) - * [Count Command](count-command ) - * [Help Command](help-command) -* [User Stories](#user-stories) - * [V1.0](#v10) - * [V2.0](#v20) - * [V2.1](#v21) -* [Non-Functional Requirements](#non-functional-requirements) -* [Glossary](#glossary) -* [Instruction for Manual Testing](#instructions-for-manual-testing) +* [Fitz - Developer Guide](#fitz---developer-guide) + * [Table of Contents](#table-of-contents) + * [Acknowledgements](#acknowledgements) + * [Product Scope](#product-scope) + * [Target User Profile](#target-user-profile) + * [Value Proposition](#value-proposition) + * [Back to table of contents](#back-to-table-of-contents) + * [Design](#design) + * [Architecture](#architecture) + * [Duke](#duke) + * [UI Component](#ui-component) + * [Command Component](#command-component) + * [Storage Component](#storage-component) + * [Calories Component](#calories-component) + * [Workout Component](#workout-component) + * [Implementation](#implementation) + * [Implementation of Calories](#implementation-of-calories) + * [Adding Calories](#adding-calories) + * [Listing Calorie Dates](#listing-calorie-dates) + * [Viewing Calories in a Day](#viewing-calories-in-a-day) + * [Deleting Calories Date](#deleting-calories-date) + * [Implementation of Workout](#implementation-of-workout) + * [Start Workout](#start-workout) + * [Add Exercise](#add-exercise) + * [List workout](#list-workout) + * [View workout](#view-workout) + * [Delete workout](#delete-workout) + * [Exit command](#exit-command) + * [User Stories](#user-stories) + * [V1.0](#v10) + * [V2.0](#v20) + * [Non-Functional Requirements](#non-functional-requirements) + * [Glossary](#glossary) + * [Instructions for manual testing](#instructions-for-manual-testing) @@ -169,8 +168,6 @@ However, `FoodDictionaryStorage` will store all the food and calories that had b

- - ### Calories Component The class diagram below illustrate how the `Calories` component interact with each others. @@ -191,6 +188,17 @@ The following are the explanation for each of them:

+### Workout Component +The class diagram below illustrates how the Workout component interact with each others. +From the diagram, it is clear to see that the Workout consists of a list of exercises +and the WorkoutList consists of list of Workout. + +

+ +

+ +## Implementation + ### Implementation of Calories #### Adding Calories @@ -255,39 +263,53 @@ Below are the specific steps on how to use the ListCaloriesCommand function and

-### Workout Component -The class diagram below illustrates how the Workout component interact with each others. -From the diagram, it is clear to see that the Workout consists of a list of exercises -and the WorkoutList consists of list of Workout. +### Implementation of Workout -

- -

+#### Start Workout -###### [Back to table of contents](#table-of-contents) +The start mechanism is facilitated by `StartWorkoutCommand`. +It extends `Command` and modifies the execute function to start a new Workout and add it to the workout list. + + +Given below is an example usage scenario and how the start mechanism behaves at each step. + +Step 1. When `StartWorkoutCommand#execute()` is called, `StartWorkoutCommand` calls `WorkList#getCurrentWorkout()` +to get `currentWorkoutIndex`. + +Step 2. If `currentWorkoutIndex` indicates that there is an ongoing workout, `StartWorkoutCommand` returns a message +to prompt the user to end the workout first. + +Step 3. If `currentWorkoutIndex` indicates that there is no ongoing workout. It calls +`WorkList#startWorkout(date, Workoutname)` to start a new workout. + +Step 4. This initialises a new `Workout`, workout, and adds it to the workout list with `WorkList.add(workout)`. +It then lets the user know that a new workout has started. + +#### Add Exercise -The add mechanism is facilitated by `AddCommand`. -It extends `Command` and modifies the execute function to add an exercise. +The add mechanism is facilitated by `AddExerciseCommand`. +It extends `Command` and modifies the execute function to add an exercise to the current workout. - + Given below is an example usage scenario and how the add mechanism behaves at each step. -Step 1. The user enters the add command with the necessary arguments. - -Step 2. The input is processed by the `Parser` to separate out the arguments and creates the exercise to be added, -`toAdd`. +Step 1. When `AddExerciseCommand#execute()` is called, `AddExerciseCommand` calls `WorkList#getCurrentWorkout()` +to get `currentWorkoutIndex`. -Step 3. The `AddCommand` calls `execute()` which calls `WorkList#getCurrentWorkout()` to return `currentWorkout`. +Step 2. If `currentWorkoutIndex` indicates that there is no ongoing workout, `AddExerciseCommand` returns a message +to prompt the user to start a workout first. -Step 4. Finally, `addExercise()` is called and `toAdd` is added to `currentWorkout`. +Step 3. If `currentWorkoutIndex` indicates that there is an ongoing workout. It calls +`WorkList#getCurrentWorkout()` and `Workout#addExercise` to add the `Exercise`, toAdd, to the current workout. +It then lets the user know that the exercise has been added. -###### [Back to table of contents](#table-of-contents) -### Storage Component -The deletion mechanism is facilitated by 'Parser', 'ListCommand', 'WorkoutList' and 'UI', where a Workout object will be deleted according to the command inputted by the user and removed from the workout list. +#### List workout +The list mechanism is facilitated by 'Parser', 'ListCommand', 'WorkoutList' and 'UI', where a Workout object will be +deleted according to the command inputted by the user and removed from the workout list. - + Below is an example usage scenario and how the List mechanism behaves at each step: @@ -297,13 +319,8 @@ Step 1: Assume that the user has already added a workout on 21/03/23 into the Wo Step 2: The user input of /list will be taken in for the parser and an object of class ListCommand will be returned. Step 3: The execute method in the ListWorkoutCommand class that is overrides will be called and print out all the dates that while iterating the workoutList. -###### [Back to table of contents](#table-of-contents) -### Workout view component -======= -### Calories Component -======= -### Workout view component +#### View workout The View component is facilitated by `Parser`,`Ui`,`WorkoutList`,`Command` and `ViewCommand`, where the user will enter a specific workout date and the number of exercises on that date will be displayed @@ -316,9 +333,8 @@ Below are the specific steps on how to use the view function and how the mechani -###### [Back to table of contents](#table-of-contents) -### Workout Component +#### Delete workout The deletion mechanism is facilitated by 'Parser', 'DeleteCommand', 'Workout', 'WorkoutList' and 'UI', where a Workout object will be deleted according to the command inputted by the user and removed from the workout list. @@ -330,13 +346,24 @@ Step 1: Assume that the user has already added a workout on 21/03/23 into the Wo Step 2: The user input of /delete 21/03/23 will be taken in for the parser and an object of class DeleteCommand will be returned. Step 3: The execute method in the DeleteCommand class that is overrides will be called with parameter date and will iterate through workoutList looking for a workout that matches. It will then remove the workout from the workoutList. -### Calories view component -###### [Back to table of contents](#table-of-contents) -### Exit component -###### [Back to table of contents](#table-of-contents) +### Exit command +The exit mechanism is facilitated by `Duke`, `Parser`, and `ExitCommand`. + + + +Below is an example usage scenario and how the deletion mechanism behaves at each step: + +Step 1: As the program runs `Duke#executeCommandUntilExit()`, it will get user input with `Ui#getUserInput()` +which returns the userInput. + +Step 2: The userInput will then be parsed with `Parser#parrseCommand(userInput)` and it will return the command +based on the command the user entered. + +Step 3: If command is an instance of `ExitCommand`, the user has entered the exit command. This will break the +loop and the program will exit. ## User Stories ### V1.0 @@ -361,23 +388,17 @@ Step 3: The execute method in the DeleteCommand class that is overrides will be | user | know the amount of calories I have consumed for one month | have better insights of my calories intake | -###### [Back to table of contents](#table-of-contents) - ## Non-Functional Requirements {Give non-functional requirements} -###### [Back to table of contents](#table-of-contents) ## Glossary * *glossary item* - Definition -###### [Back to table of contents](#table-of-contents) ## Instructions for manual testing {Give instructions on how to do a manual product testing e.g., how to load sample data to be used for testing} - -###### [Back to table of contents](#table-of-contents) \ No newline at end of file diff --git a/docs/diagrams/AddExerciseCommandDiagram.puml b/docs/diagrams/AddExerciseCommandDiagram.puml new file mode 100644 index 0000000000..11351d45d4 --- /dev/null +++ b/docs/diagrams/AddExerciseCommandDiagram.puml @@ -0,0 +1,22 @@ +@startuml +'https://plantuml.com/sequence-diagram +!include Style.puml + +participant ":AddExerciseCommand" as add +participant ":WorkoutList" as list +participant ":Workout" as workout + +activate add +activate list +activate workout +-> add: execute() +add -> list: getCurrentWorkoutIndex() +list -> add: currentWorkoutIndex +alt no current workout +<- add: no current workout message +else +add -> list: getCurrentWorkout() +list -> workout: addExercise(toAdd) +<- add: add exercise message +end +@enduml \ No newline at end of file diff --git a/docs/diagrams/AddExerciseDiagram.puml b/docs/diagrams/AddExerciseDiagram.puml deleted file mode 100644 index ca61c9b8bd..0000000000 --- a/docs/diagrams/AddExerciseDiagram.puml +++ /dev/null @@ -1,21 +0,0 @@ -@startuml -'https://plantuml.com/sequence-diagram -!include Style.puml - - -actor User -participant ":AddCommand" as add -participant ":Parser" as parser -participant ":Exercise" as exercise -participant ":WorkoutList" as list -participant ":Workout" as workout - -User -> add: UserInput -add -> parser: processCommand(UserInput) -parser -> exercise: processAdd(arguments) -add <-- exercise: toAdd:Exercise -add -> list: execute() -list -> workout: getCurrentWorkout() -list <-- workout: currentWorkout:Workout -list -> workout: addExercise(toAdd) -@enduml \ No newline at end of file diff --git a/docs/diagrams/ExitCommandDiagram.puml b/docs/diagrams/ExitCommandDiagram.puml new file mode 100644 index 0000000000..b0fc24c42d --- /dev/null +++ b/docs/diagrams/ExitCommandDiagram.puml @@ -0,0 +1,18 @@ +@startuml +'https://plantuml.com/sequence-diagram +!include Style.puml +actor user +participant ":Duke" as duke +participant ":Parser" as parser + +activate duke +activate parser +duke -> duke: executeCommandUntilExit() +loop until exit +duke -> user: getUserInput() +user -> duke: userInput +duke -> parser: parseCommand(userInput) +parser -> duke: command +end + +@enduml \ No newline at end of file diff --git a/docs/diagrams/StartWorkoutCommandDiagram.puml b/docs/diagrams/StartWorkoutCommandDiagram.puml new file mode 100644 index 0000000000..0406817226 --- /dev/null +++ b/docs/diagrams/StartWorkoutCommandDiagram.puml @@ -0,0 +1,24 @@ +@startuml +'https://plantuml.com/sequence-diagram +!include Style.puml + +participant ":StartWorkoutCommand" as start +participant ":WorkoutList" as list +participant ":Workout" as workout + +activate start +activate list +-> start: execute() +start -> list: getCurrentWorkoutIndex() +list -> start: currentWorkoutIndex +alt ongoing workout +<- start: end workout first message +else +start -> list: startWorkout(date, workoutName) +list -> workout: Workout(date, workoutName) +activate workout +workout -> list: workout +list -> list: add(workout) +<- start: start workout message +end +@enduml \ No newline at end of file diff --git a/docs/images/AddExerciseCommandDiagram.png b/docs/images/AddExerciseCommandDiagram.png new file mode 100644 index 0000000000000000000000000000000000000000..13d86b20f27dcb17c087eab3a1e0dabcb34907ac GIT binary patch literal 40394 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 z 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 literal 0 HcmV?d00001 diff --git a/docs/images/AddExerciseDiagram.png b/docs/images/AddExerciseDiagram.png deleted file mode 100644 index 1be0e82dc0e463d4dc7eef2940bf5c4bdea13167..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 24292 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 diff --git a/docs/images/ExitCommandDiagram.png b/docs/images/ExitCommandDiagram.png new file mode 100644 index 0000000000000000000000000000000000000000..6ebc888761adc19fdc8275040ac142c249eb39f0 GIT binary patch literal 23870 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%0Dp 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 literal 0 HcmV?d00001 diff --git a/docs/images/StartWorkoutCommandDiagram.png b/docs/images/StartWorkoutCommandDiagram.png new file mode 100644 index 0000000000000000000000000000000000000000..286325880dec730d15c586edef40a296489b3852 GIT binary patch literal 85018 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%0A7gCKr{|bt(JYQ{&6qLV*g%ZiF5a(zsxr#W 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 K>)*a}JNz#>% getDailyFoodConsumption() { return dailyFoodConsumption; } + //@@author calebcjl /** * Add calorie consumption to CalorieTracker. * diff --git a/src/main/java/seedu/commands/caloriecommands/DeleteCalorieCommand.java b/src/main/java/seedu/commands/caloriecommands/DeleteCalorieCommand.java index fb8b9059b3..14457cd61b 100644 --- a/src/main/java/seedu/commands/caloriecommands/DeleteCalorieCommand.java +++ b/src/main/java/seedu/commands/caloriecommands/DeleteCalorieCommand.java @@ -8,6 +8,10 @@ import java.util.Date; +//@@author calebcjl +/** + * Represents command to delete calorie consumption entry. + */ public class DeleteCalorieCommand extends Command { public static final int NO_INDEX = -1; private Date date; diff --git a/src/main/java/seedu/commands/workoutcommands/EndWorkoutCommand.java b/src/main/java/seedu/commands/workoutcommands/EndWorkoutCommand.java index c825f5bd74..3918a70ab1 100644 --- a/src/main/java/seedu/commands/workoutcommands/EndWorkoutCommand.java +++ b/src/main/java/seedu/commands/workoutcommands/EndWorkoutCommand.java @@ -4,6 +4,7 @@ import static seedu.workout.WorkoutList.NO_CURRENT_WORKOUT; +//@@author calebcjl /** * Represents command to end the current workout. */ diff --git a/src/main/java/seedu/commands/workoutcommands/ListWorkoutCommand.java b/src/main/java/seedu/commands/workoutcommands/ListWorkoutCommand.java index 8560b69b2e..bb5dd0cfe8 100644 --- a/src/main/java/seedu/commands/workoutcommands/ListWorkoutCommand.java +++ b/src/main/java/seedu/commands/workoutcommands/ListWorkoutCommand.java @@ -6,8 +6,6 @@ import seedu.workout.Workout; import seedu.workout.WorkoutList; - - //@@ author ZIZI-czh /** * This is the class for executing the list command diff --git a/src/main/java/seedu/parser/Parser.java b/src/main/java/seedu/parser/Parser.java index 0fe028256e..4e4899cb3f 100644 --- a/src/main/java/seedu/parser/Parser.java +++ b/src/main/java/seedu/parser/Parser.java @@ -21,7 +21,7 @@ public class Parser { private static final Pattern BASIC_COMMAND_FORMAT = Pattern.compile("(?\\S+)(?.*)"); - public static Command processCommand(String userInput) throws InvalidSyntaxException, InvalidArgumentException { + public static Command parseCommand(String userInput) throws InvalidSyntaxException, InvalidArgumentException { Matcher matcher = BASIC_COMMAND_FORMAT.matcher(userInput.trim()); if (!matcher.matches()) { throw new InvalidSyntaxException("user input"); diff --git a/src/main/java/seedu/parser/WorkoutParser.java b/src/main/java/seedu/parser/WorkoutParser.java index a6246a77b1..932c8a39b5 100644 --- a/src/main/java/seedu/parser/WorkoutParser.java +++ b/src/main/java/seedu/parser/WorkoutParser.java @@ -176,6 +176,7 @@ static Command parseStartWorkoutCommand(String arguments) throws InvalidArgument return new StartWorkoutCommand(date, workoutName); } + //@@author calebcjl /** * Parses workout name for StartWorkoutCommand * @param workoutName Name of workout. diff --git a/src/main/java/seedu/workout/Workout.java b/src/main/java/seedu/workout/Workout.java index 91907cf411..23b30920b3 100644 --- a/src/main/java/seedu/workout/Workout.java +++ b/src/main/java/seedu/workout/Workout.java @@ -5,7 +5,7 @@ import java.util.ArrayList; import java.util.Date; -//@@author calebcjl + /** * Represents a workout. It stores the date, name and list of exercises of the workout. */ @@ -53,6 +53,7 @@ public void addExercise(Exercise exercise) { exercises.add(exercise); } + //@@author calebcjl /** * Returns the list of exercises in the workout. * diff --git a/src/test/java/seedu/parser/ParserTest.java b/src/test/java/seedu/parser/ParserTest.java index 23b497780f..f148247243 100644 --- a/src/test/java/seedu/parser/ParserTest.java +++ b/src/test/java/seedu/parser/ParserTest.java @@ -24,7 +24,7 @@ public void testProcessCommandIncorrectArguments() { Parser testList = new Parser(); Command result; try { - result = testList.processCommand(userInput); + result = testList.parseCommand(userInput); } catch (InvalidSyntaxException e) { result = new ExitCommand(); } catch (InvalidArgumentException e) { From 7b1684f7f06c995959872c148c6af98b1543d595 Mon Sep 17 00:00:00 2001 From: guillaume-grn Date: Mon, 10 Apr 2023 22:08:56 +0800 Subject: [PATCH 149/152] fix checktyle error --- src/main/java/seedu/workout/WorkoutList.java | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/main/java/seedu/workout/WorkoutList.java b/src/main/java/seedu/workout/WorkoutList.java index 098bbf51db..f0140d69e0 100644 --- a/src/main/java/seedu/workout/WorkoutList.java +++ b/src/main/java/seedu/workout/WorkoutList.java @@ -79,9 +79,11 @@ public String countSetsReps(Date dateInSpecificWeek) { /** * Displays the count of sets and reps for each distinct exercise performed in a specific week. * - * @param distinctExercises A HashMap containing distinct exercises names as keys and an ArrayList of sets and reps as values. + * @param distinctExercises A HashMap containing distinct exercises names as keys and an ArrayList + * of sets and reps as values. * @param dateInSpecificWeek Date representing a specific week to display count of sets and reps. - * @return A String representation of the count of sets and reps for each distinct exercise performed in the specific week. + * @return A String representation of the count of sets and reps for each distinct exercise performed + * in the specific week. */ //@@ author ZIZI-czh public static String displayCountSetsReps(HashMap> distinctExercises, From 1b3e3de832a41c09373034c59bf5f28776be0494 Mon Sep 17 00:00:00 2001 From: Richardtok Date: Mon, 10 Apr 2023 22:10:43 +0800 Subject: [PATCH 150/152] Update UG --- docs/UserGuide.md | 27 +++++++++++++++++++++++++-- 1 file changed, 25 insertions(+), 2 deletions(-) diff --git a/docs/UserGuide.md b/docs/UserGuide.md index 954bcc6592..678cb9ebf8 100644 --- a/docs/UserGuide.md +++ b/docs/UserGuide.md @@ -116,7 +116,9 @@ Example of usage: Expected output: ``` +======================================= chest day started on 09/04/23. +======================================= ``` ### Add exercises to current workout: `/wadd` @@ -136,7 +138,9 @@ Example of usage: Expected output: ``` +======================================= chest press 100kg 7 6 5 has been added. +======================================= ``` ### List workout dates: `/wlist` @@ -150,6 +154,7 @@ Example of usage: Expected output: ``` +======================================= Here is the list of dates of your workouts: 1. 08/04/23 chest day 2. 09/04/23 chest day @@ -169,6 +174,7 @@ Example of usage: Expected output: ``` +======================================= Here are the list of exercises for chest day on 09/04/23. 1. chest press 100kg 7 6 5 ======================================= @@ -187,7 +193,9 @@ Example of usage: Expected output: ``` +======================================= Deleted chest day on 09/04/23. +======================================= ``` ### End a workout: `/wend` End a current workout @@ -198,6 +206,12 @@ Example of usage: `/wend` +Expected output: +``` +======================================= +Great job completing your workout! +======================================= +``` ### Count sets and reps over a week: `/wcount` Displays the list of distinct exercises over a week and the associated total number of sets and reps for each one @@ -212,7 +226,10 @@ Example of usage: Expected output: ``` -Great job completing your workout! +======================================= +Information of exercises for the week of 09/04/23 +Name: leg press, sets: 3, rps:22 +======================================= ``` ### Add calories consumed: `/cadd` Add record of calories consumed. @@ -221,13 +238,16 @@ Format: `/cadd DD/MM/YY FOOD_NAME CALORIE_COUNT` * `CALORIE_COUNT` can be omitted if food has not been added previously. * If user adds food that has been added previously with `CALORIE_COUNT`, the `CALORIE_COUNT` of said food will be updated +* `DD/MM/YY` must be a current or past date, it cannot be a future date. Example of usage: `/cadd 11/02/23 chicken 100` Expected output: ``` +======================================= Added chicken(100 kcal) to 11/02/23. +======================================= ``` ### View calorie consumption: `/clist` Display the list of dates and total calorie consumption. @@ -239,6 +259,7 @@ Example of usage: Expected output: ``` +======================================= Here is your list of daily calorie consumption: 1. 11/02/23: 100kcal ======================================= @@ -248,13 +269,14 @@ View the total calorie consumption in a specified date. Format: `/cview DD/MM/YY` -* DD +* `DD/MM/YY` must be a current or past date, it cannot be a future date. Example of usage: `/cview 11/02/23` Expected output: ``` +======================================= Here are the foods consumed on 11/02/23: 1. chicken - 100kcal ======================================= @@ -270,6 +292,7 @@ Example of usage: Expected output: ``` +======================================= Thank you, hope you had a great workout!!! ======================================= ``` From 2562b05850f8e31e7cf1208449f0d2530876e630 Mon Sep 17 00:00:00 2001 From: calebcjl Date: Mon, 10 Apr 2023 23:04:55 +0800 Subject: [PATCH 151/152] Add PPP and update dev guide --- docs/DeveloperGuide.md | 19 +++++++++++ docs/diagrams/EndWorkoutCommandDiagram.puml | 19 +++++++++++ docs/images/EndWorkoutCommandDiagram.png | Bin 0 -> 43508 bytes docs/team/calebcjl.md | 35 ++++++++++++++++++++ 4 files changed, 73 insertions(+) create mode 100644 docs/diagrams/EndWorkoutCommandDiagram.puml create mode 100644 docs/images/EndWorkoutCommandDiagram.png create mode 100644 docs/team/calebcjl.md diff --git a/docs/DeveloperGuide.md b/docs/DeveloperGuide.md index 6a38864336..ffb99c21e5 100644 --- a/docs/DeveloperGuide.md +++ b/docs/DeveloperGuide.md @@ -241,6 +241,25 @@ Step 3. If `currentWorkoutIndex` indicates that there is an ongoing workout. It `WorkList#getCurrentWorkout()` and `Workout#addExercise` to add the `Exercise`, toAdd, to the current workout. It then lets the user know that the exercise has been added. +#### End Workout + +The end mechanism is facilitated by `EndWorkoutCommand`. +It extends `Command` and modifies the execute function to end the current workout. + + + +Given below is an example usage scenario and how the start mechanism behaves at each step. + +Step 1. When `EndWorkoutCommand#execute()` is called, `EndWorkoutCommand` calls `WorkList#getCurrentWorkout()` +to get `currentWorkoutIndex`. + +Step 2. If `currentWorkoutIndex` indicates that there is no ongoing workout, `EndWorkoutCommand` returns a message +that there is no ongoing workout to end. + +Step 3. If `currentWorkoutIndex` indicates that there is an ongoing workout. It resets the `currentWorkoutIndex` with +`WorkoutList#setCurrentWorkoutIndex(NO_CURRENT_WORKOUT)` indicating that there is no longer any ongoing workouts, and +returns a message that the workout has ended. + #### List workout The list mechanism is facilitated by 'Parser', 'ListCommand', 'WorkoutList' and 'UI', where a Workout object will be diff --git a/docs/diagrams/EndWorkoutCommandDiagram.puml b/docs/diagrams/EndWorkoutCommandDiagram.puml new file mode 100644 index 0000000000..b8599fbd2e --- /dev/null +++ b/docs/diagrams/EndWorkoutCommandDiagram.puml @@ -0,0 +1,19 @@ +@startuml +'https://plantuml.com/sequence-diagram +!include Style.puml + +participant ":EndWorkoutCommand" as end +participant ":WorkoutList" as list + +activate end +activate list +-> end: execute() +end -> list: getCurrentWorkoutIndex() +list -> end: currentWorkoutIndex +alt no current workout +<- end: no ongoing workout message +else +end -> list: setCurrentWorkoutIndex(NO_CURRENT_WORKOUT) +<- end: end workout message +end +@enduml \ No newline at end of file diff --git a/docs/images/EndWorkoutCommandDiagram.png b/docs/images/EndWorkoutCommandDiagram.png new file mode 100644 index 0000000000000000000000000000000000000000..ad9b6111232971db1fe66f1d0fc9cbcc92a2267a GIT binary patch literal 43508 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 C6oZTa literal 0 HcmV?d00001 diff --git a/docs/team/calebcjl.md b/docs/team/calebcjl.md new file mode 100644 index 0000000000..fd5ac01969 --- /dev/null +++ b/docs/team/calebcjl.md @@ -0,0 +1,35 @@ +# Caleb Chan Jia Le - Project Portfolio Page + +## Project: FITZ +Fitz is a command line interface app for fitness enthusiast to track their workouts and calorie consumption. +It is fast, lightweight and easy to use. + + +## Contribution to the project + +### Code Contributed: +[RepoCode](https://nus-cs2113-ay2223s2.github.io/tp-dashboard/?search=calebcjl&breakdown=true&sort=groupTitle%20dsc&sortWithin=title&since=2023-02-17&timeframe=commit&mergegroup=&groupSelect=groupByRepos&checkedFileTypes=docs~functional-code~test-code~other) + +Features implemented: +* Main architecture of the program +* Workout tracker: Start, add, end features + * **What it does**: Allows users to start a workout, add exercises as they do their workouts, and end the workout. +* Calorie tracker: Add, delete, list features + * **What it does**: Allows users to add their calorie consumption, delete their wrong entries, and list out + calorie consumption for each day. + * **Enhancement**: Delete feature can delete either a single food or the entire day's entry. +* Main Parser and the majority of parsers for calorie tracker and workout tracker + * **What it does**: Parses user inputs to the respective commands and their details. +* Exceptions for incorrect user inputs +* Storage for calorie tracker + +### Documentation +User Guide: +* Workout tracker: Start, add, end features +* Calorie tracker: Add, delete, list features + +Developer Guide: +* Workout tracker: Start, add, end features +* Calorie tracker: Add, delete, list features + + From 6034e3bb6da31298eb0dfbd104e67d4b5f8b883a Mon Sep 17 00:00:00 2001 From: ZIZI-czh <77820516+ZIZI-czh@users.noreply.github.com> Date: Thu, 13 Apr 2023 11:33:04 +0800 Subject: [PATCH 152/152] Update zizi-czh.md --- docs/team/zizi-czh.md | 36 +++++++++++++++++++++++++++++++++++- 1 file changed, 35 insertions(+), 1 deletion(-) diff --git a/docs/team/zizi-czh.md b/docs/team/zizi-czh.md index be2cc33ce7..0b31f453b4 100644 --- a/docs/team/zizi-czh.md +++ b/docs/team/zizi-czh.md @@ -1,4 +1,4 @@ -# Chen ZI Han - Project Portfolio Page +# Chen Zi Han - Project Portfolio Page ## Project: FITZ Fitz - the ultimate fitness app for individuals who are passionate about their health and fitness. @@ -11,6 +11,40 @@ making it a user-friendly option for anyone who wants to keep their fitness rout - Code Contributed: [RepoCode](https://nus-cs2113-ay2223s2.github.io/tp-dashboard/?search=ZIZI-CZH&sort=groupTitle&sortWithin=title&timeframe=commit&mergegroup=&groupSelect=groupByRepos&breakdown=true&checkedFileTypes=docs~functional-code~test-code~other&since=2023-02-17) +- Implementation: Added list and view for workout so that the user can track their exercise history + + - What it does: List all the dates and workouts that have been entered by the user before so that they have better insight. + - In oder to let the user be more clear about what are the exercise they have done for each workout +- Implementation: Added storage for workout and food list + + - What is does: record the workouts data that been entered by the users and record the food name and + - the food calories so that user do not need to enter the information every time + +- Contribute to DG: + - Draw sequence diagram, architecture and class diagram for all the components which include Storage, Ui, Workout, Calories + - and Parser. + - Explain how each component work in details + +- Contribute to UG: + - Set up + - Introduction + + +- Contributions to team based tasks +- + - Contribute to the testing of program + - [[1]](https://github.com/AY2223S2-CS2113-T14-1/tp/issues/90) + - [[2]](https://github.com/AY2223S2-CS2113-T14-1/tp/pull/89) + - Assisted team to fix bugs + - Reviewed and Commented on team's PR code with improvement suggestions + - [[1]](https://github.com/AY2223S2-CS2113-T14-1/tp/pull/86) + + + + + +This is what l implemented for previous version before V2.1: + - Implemented Features: Starting a New Workout Day and Adding New Workouts - What it Does: Enables users to enter the date they want to begin tracking their fitness progress and add the names of their workouts for that day. - Justification: By allowing users to select the specific date they want to start tracking their workouts, the app becomes more flexible and personalized to their needs.