Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Development: Set the isGraded flag to false for student athena requests #10155

Merged

Merge branch 'develop' into chore/text/set-is-graded-false-student-at…

ef7f8de
Select commit
Loading
Failed to load commit list.
Sign in for the full log view
Merged

Development: Set the isGraded flag to false for student athena requests #10155

Merge branch 'develop' into chore/text/set-is-graded-false-student-at…
ef7f8de
Select commit
Loading
Failed to load commit list.
GitHub Actions / PostgreSQL Tests failed Jan 20, 2025 in 1s

8313 passed, 8 failed and 1 skipped

Tests failed
Report exceeded GitHub limit of 65535 bytes and has been trimmed

Annotations

Check failure on line 256 in src/test/java/de/tum/cit/aet/artemis/core/service/DataExportCreationServiceTest.java

See this annotation in the file changed.

@github-actions github-actions / PostgreSQL Tests

de.tum.cit.aet.artemis.core.service.DataExportCreationServiceTest ► testDataExportCreationSuccess_containsCorrectCourseContent()

Failed test found in:
  build/test-results/test/TEST-de.tum.cit.aet.artemis.core.service.DataExportCreationServiceTest.xml
Error:
  java.lang.AssertionError: 
Raw output
java.lang.AssertionError: 
Expecting actual:
  [de.tum.cit.aet.artemis.atlas.domain.science.ScienceEvent@0,
    de.tum.cit.aet.artemis.atlas.domain.science.ScienceEvent@0,
    de.tum.cit.aet.artemis.atlas.domain.science.ScienceEvent@0]
to contain exactly in any order:
  [de.tum.cit.aet.artemis.atlas.domain.science.ScienceEvent@42,
    de.tum.cit.aet.artemis.atlas.domain.science.ScienceEvent@40,
    de.tum.cit.aet.artemis.atlas.domain.science.ScienceEvent@41]
elements not found:
  [de.tum.cit.aet.artemis.atlas.domain.science.ScienceEvent@42,
    de.tum.cit.aet.artemis.atlas.domain.science.ScienceEvent@40,
    de.tum.cit.aet.artemis.atlas.domain.science.ScienceEvent@41]
and elements not expected:
  [de.tum.cit.aet.artemis.atlas.domain.science.ScienceEvent@0,
    de.tum.cit.aet.artemis.atlas.domain.science.ScienceEvent@0,
    de.tum.cit.aet.artemis.atlas.domain.science.ScienceEvent@0]
when comparing values using Comparator$$Lambda/0x00007fb728267270
	at de.tum.cit.aet.artemis.core.service.DataExportCreationServiceTest.assertScienceEventsCSVFile(DataExportCreationServiceTest.java:256)
	at de.tum.cit.aet.artemis.core.service.DataExportCreationServiceTest.testDataExportCreationSuccess_containsCorrectCourseContent(DataExportCreationServiceTest.java:214)
	at java.base/java.lang.reflect.Method.invoke(Method.java:580)
	at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:387)
	at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1312)
	at java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1843)
	at java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1808)
	at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:188)

Check failure on line 892 in src/test/java/de/tum/cit/aet/artemis/exam/ExamParticipationIntegrationTest.java

See this annotation in the file changed.

@github-actions github-actions / PostgreSQL Tests

de.tum.cit.aet.artemis.exam.ExamParticipationIntegrationTest ► testGetExamScore(boolean, boolean) [2] withCourseBonus=true, withSecondCorrectionAndStarted=false

Failed test found in:
  build/test-results/test/TEST-de.tum.cit.aet.artemis.exam.ExamParticipationIntegrationTest.xml
  build/test-results/test/TEST-de.tum.cit.aet.artemis.exam.ExamParticipationIntegrationTest.xml
Error:
  org.awaitility.core.ConditionTimeoutException: Condition with Lambda expression in de.tum.cit.aet.artemis.exam.ExamParticipationIntegrationTest was not fulfilled within 1 minutes.
Raw output
org.awaitility.core.ConditionTimeoutException: Condition with Lambda expression in de.tum.cit.aet.artemis.exam.ExamParticipationIntegrationTest was not fulfilled within 1 minutes.
	at app//org.awaitility.core.ConditionAwaiter.await(ConditionAwaiter.java:167)
	at app//org.awaitility.core.CallableCondition.await(CallableCondition.java:78)
	at app//org.awaitility.core.CallableCondition.await(CallableCondition.java:26)
	at app//org.awaitility.core.ConditionFactory.until(ConditionFactory.java:1006)
	at app//org.awaitility.core.ConditionFactory.until(ConditionFactory.java:975)
	at app//de.tum.cit.aet.artemis.exam.ExamParticipationIntegrationTest.testGetExamScore(ExamParticipationIntegrationTest.java:892)
	at [email protected]/java.lang.reflect.Method.invoke(Method.java:580)
	at [email protected]/java.util.stream.ForEachOps$ForEachOp$OfRef.accept(ForEachOps.java:184)
	at [email protected]/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197)
	at [email protected]/java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:179)
	at [email protected]/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197)
	at [email protected]/java.util.stream.ForEachOps$ForEachOp$OfRef.accept(ForEachOps.java:184)
	at [email protected]/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197)
	at [email protected]/java.util.stream.ForEachOps$ForEachOp$OfRef.accept(ForEachOps.java:184)
	at [email protected]/java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1708)
	at [email protected]/java.util.stream.ReferencePipeline$Head.forEach(ReferencePipeline.java:762)
	at [email protected]/java.util.stream.ReferencePipeline$7$1.accept(ReferencePipeline.java:276)
	at [email protected]/java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1708)
	at [email protected]/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:509)
	at [email protected]/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:499)
	at [email protected]/java.util.stream.ForEachOps$ForEachOp.evaluateSequential(ForEachOps.java:151)
	at [email protected]/java.util.stream.ForEachOps$ForEachOp$OfRef.evaluateSequential(ForEachOps.java:174)
	at [email protected]/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
	at [email protected]/java.util.stream.ReferencePipeline.forEach(ReferencePipeline.java:596)
	at [email protected]/java.util.stream.ReferencePipeline$7$1.accept(ReferencePipeline.java:276)
	at [email protected]/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197)
	at [email protected]/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197)
	at [email protected]/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197)
	at [email protected]/java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1708)
	at [email protected]/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:509)
	at [email protected]/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:499)
	at [email protected]/java.util.stream.ForEachOps$ForEachOp.evaluateSequential(ForEachOps.java:151)
	at [email protected]/java.util.stream.ForEachOps$ForEachOp$OfRef.evaluateSequential(ForEachOps.java:174)
	at [email protected]/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
	at [email protected]/java.util.stream.ReferencePipeline.forEach(ReferencePipeline.java:596)
	at [email protected]/java.util.stream.ReferencePipeline$7$1.accept(ReferencePipeline.java:276)
	at [email protected]/java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1708)
	at [email protected]/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:509)
	at [email protected]/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:499)
	at [email protected]/java.util.stream.ForEachOps$ForEachOp.evaluateSequential(ForEachOps.java:151)
	at [email protected]/java.util.stream.ForEachOps$ForEachOp$OfRef.evaluateSequential(ForEachOps.java:174)
	at [email protected]/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
	at [email protected]/java.util.stream.ReferencePipeline.forEach(ReferencePipeline.java:596)
	at [email protected]/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:387)
	at [email protected]/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1312)
	at [email protected]/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1843)
	at [email protected]/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1808)
	at [email protected]/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:188)

Check failure on line 141 in src/main/java/de/tum/cit/aet/artemis/exam/service/ExamLiveEventsService.java

See this annotation in the file changed.

@github-actions github-actions / PostgreSQL Tests

de.tum.cit.aet.artemis.modeling.ModelingExerciseIntegrationTest ► testUpdateModelingExerciseForExam_asInstructor()

Failed test found in:
  build/test-results/test/TEST-de.tum.cit.aet.artemis.modeling.ModelingExerciseIntegrationTest.xml
Error:
  Wanted but not invoked:
Raw output
Wanted but not invoked:
examLiveEventsService.createAndSendProblemStatementUpdateEvent(
    ModelingExercise{id=1479, maxPoints='5.0', diagramType='ClassDiagram', exampleSolutionModel='This is my example solution model', exampleSolutionExplanation='This is my example solution model'},
    "notified!",
    <any>
);
-> at de.tum.cit.aet.artemis.exam.service.ExamLiveEventsService.createAndSendProblemStatementUpdateEvent(ExamLiveEventsService.java:141)
Actually, there were zero interactions with this mock.

	at app//de.tum.cit.aet.artemis.exam.service.ExamLiveEventsService.createAndSendProblemStatementUpdateEvent(ExamLiveEventsService.java:141)
	at app//de.tum.cit.aet.artemis.modeling.ModelingExerciseIntegrationTest.testUpdateModelingExerciseForExam_asInstructor(ModelingExerciseIntegrationTest.java:271)
	at [email protected]/java.lang.reflect.Method.invoke(Method.java:580)
	at [email protected]/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:387)
	at [email protected]/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1312)
	at [email protected]/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1843)
	at [email protected]/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1808)
	at [email protected]/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:188)

Check failure on line 79 in src/main/java/de/tum/cit/aet/artemis/core/service/ScheduleService.java

See this annotation in the file changed.

@github-actions github-actions / PostgreSQL Tests

de.tum.cit.aet.artemis.programming.ProgrammingExerciseScheduleServiceTest ► cancelAllSchedulesOnRemovingExerciseDueDate()

Failed test found in:
  build/test-results/test/TEST-de.tum.cit.aet.artemis.programming.ProgrammingExerciseScheduleServiceTest.xml
Error:
  Argument(s) are different! Wanted:
Raw output
Argument(s) are different! Wanted:
scheduleService.scheduleTask(
    ProgrammingExercise{id=13, templateRepositoryUri='https://version-control.fake.fake/git/SHORT2A8AAB020876F04FE10878C000C532F7BCC5TSTEXC/short2a8aab020876f04fe10878c000c532f7bcc5tstexc-exercise.git', solutionRepositoryUri='https://version-control.fake.fake/git/SHORT2A8AAB020876F04FE10878C000C532F7BCC5TSTEXC/short2a8aab020876f04fe10878c000c532f7bcc5tstexc-solution.git', templateBuildPlanId='SHORT2A8AAB020876F04FE10878C000C532F7BCC5TSTEXC-BASE', solutionBuildPlanId='SHORT2A8AAB020876F04FE10878C000C532F7BCC5TSTEXC-SOLUTION', allowOnlineEditor='true', allowOnlineIde='false', programmingLanguage='JAVA', packageName='de.test'', testCasesChanged='false'},
    DUE,
    <any java.lang.Runnable>
);
-> at de.tum.cit.aet.artemis.core.service.ScheduleService.scheduleTask(ScheduleService.java:79)
Actual invocations have different arguments at positions [1, 2]:
scheduleService.scheduleTask(
    ProgrammingExercise{id=13, templateRepositoryUri='https://version-control.fake.fake/git/SHORT2A8AAB020876F04FE10878C000C532F7BCC5TSTEXC/short2a8aab020876f04fe10878c000c532f7bcc5tstexc-exercise.git', solutionRepositoryUri='https://version-control.fake.fake/git/SHORT2A8AAB020876F04FE10878C000C532F7BCC5TSTEXC/short2a8aab020876f04fe10878c000c532f7bcc5tstexc-solution.git', templateBuildPlanId='SHORT2A8AAB020876F04FE10878C000C532F7BCC5TSTEXC-BASE', solutionBuildPlanId='SHORT2A8AAB020876F04FE10878C000C532F7BCC5TSTEXC-SOLUTION', allowOnlineEditor='true', allowOnlineIde='false', programmingLanguage='JAVA', packageName='de.test'', testCasesChanged='false'},
    RELEASE,
    [Tuple[x=2025-01-21T16:48:00.576Z, y=de.tum.cit.aet.artemis.programming.service.ProgrammingExerciseScheduleService$$Lambda/0x00007fb72a467900@278483e8]]
);
-> at de.tum.cit.aet.artemis.programming.service.ProgrammingExerciseScheduleService.scheduleTemplateCommitCombination(ProgrammingExerciseScheduleService.java:304)
scheduleService.cancelScheduledTaskForLifecycle(
    13L,
    RELEASE
);
-> at de.tum.cit.aet.artemis.core.service.ScheduleService.scheduleTask(ScheduleService.java:110)
scheduleService.cancelScheduledTaskForLifecycle(
    13L,
    DUE
);
-> at de.tum.cit.aet.artemis.programming.service.ProgrammingExerciseScheduleService.scheduleCourseExercise(ProgrammingExerciseScheduleService.java:286)
scheduleService.cancelScheduledTaskForLifecycle(
    13L,
    BUILD_AND_TEST_AFTER_DUE_DATE
);
-> at de.tum.cit.aet.artemis.programming.service.ProgrammingExerciseScheduleService.scheduleCourseExercise(ProgrammingExerciseScheduleService.java:294)
scheduleService.cancelAllScheduledParticipationTasks(
    13L,
    54L
);
-> at de.tum.cit.aet.artemis.programming.service.ProgrammingExerciseScheduleService.scheduleParticipationTasks(ProgrammingExerciseScheduleService.java:344)
scheduleService.cancelScheduledTaskForParticipationLifecycle(
    13L,
    54L,
    DUE
);
-> at de.tum.cit.aet.artemis.core.service.ScheduleService.cancelAllScheduledParticipationTasks(ScheduleService.java:185)
scheduleService.cancelScheduledTaskForParticipationLifecycle(
    13L,
    54L,
    BUILD_AND_TEST_AFTER_DUE_DATE
);
-> at de.tum.cit.aet.artemis.core.service.ScheduleService.cancelAllScheduledParticipationTasks(ScheduleService.java:185)
scheduleService.cancelAllScheduledParticipationTasks(
    13L,
    55L
);
-> at de.tum.cit.aet.artemis.programming.service.ProgrammingExerciseScheduleService.scheduleParticipationTasks(ProgrammingExerciseScheduleService.java:344)
scheduleService.cancelScheduledTaskForParticipationLifecycle(
    13L,
    55L,
    DUE
);
-> at de.tum.cit.aet.artemis.core.service.ScheduleService.cancelAllScheduledParticipationTasks(ScheduleService.java:185)
scheduleService.cancelScheduledTaskForParticipationLifecycle(
    13L,
    55L,
    BUILD_AND_TEST_AFTER_DUE_DATE
);
-> at de.tum.cit.aet.artemis.core.service.ScheduleService.cancelAllScheduledParticipationTasks(ScheduleService.java:185)
scheduleService.scheduleParticipationTask(
    ProgrammingExerciseStudentParticipation{id=56, repositoryUri='https://version-control.fake.fake/git/SHORT2A8AAB020876F04FE10878C000C532F7BCC5TSTEXC/short2a8aab020876f04fe10878c000c532f7bcc5tstexc-programmingexercisescheduleservicestudent3.git', buildPlanId='SHORT2A8AAB020876F04FE10878C000C532F7BCC5TSTEXC-PROGRAMMINGEXERCISESCHEDULESERVICESTUDENT3', initializationState='INITIALIZED', initializationDate='2025-01-20T16:48:16.740Z', individualDueDate=2025-01-20T16:48:17.581Z', presentationScore=null},
    DUE,
    de.tum.cit.aet.artemis.programming.service.ProgrammingExerciseScheduleService$$Lambda/0x00007fb72a4cc470@5046ba79
);
-> at de.tum.cit.aet.artemis.programming.service.ProgrammingExerciseScheduleService.scheduleAfterDueDateForParticipation(ProgrammingExerciseScheduleService.java:375)
scheduleService.cancelScheduledTaskForParticipationLifecycle(
    13L,
    56L,
    DUE
);
-> at de.tum.cit.aet.artemis.core.service.ScheduleService.scheduleParticipationTask(ScheduleService.java:123)
scheduleService.cancelScheduledTaskForParticipationLifecycle(
    13L,
    56L,
    BUILD_AND_TEST_AFTER_DUE_DATE
);
-> at de.tum.cit.aet.artemis.programming.service.ProgrammingExerciseScheduleService.scheduleParticipationWithIndividualDueDate(ProgrammingExerciseScheduleService.java:370)

	at app//de.tum.cit.aet.artemis.core.service.ScheduleService.scheduleTask(ScheduleService.java:79)
	at app//de.tum.cit.aet.artemis.programming.ProgrammingExerciseScheduleServiceTest.cancelAllSchedulesOnRemovingExerciseDueDate(ProgrammingExerciseScheduleServiceTest.java:421)
	at [email protected]/java.lang.reflect.Method.invoke(Method.java:580)
	at [email protected]/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:387)
	at [email protected]/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1312)
	at [email protected]/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1843)
	at [email protected]/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1808)
	at [email protected]/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:188)

Check failure on line 780 in src/test/java/de/tum/cit/aet/artemis/core/util/RequestUtilService.java

See this annotation in the file changed.

@github-actions github-actions / PostgreSQL Tests

de.tum.cit.aet.artemis.quiz.QuizExerciseIntegrationTest ► testDeleteQuizExerciseWithSubmittedAnswers(QuizMode) [1] quizMode=SYNCHRONIZED

Failed test found in:
  build/test-results/test/TEST-de.tum.cit.aet.artemis.quiz.QuizExerciseIntegrationTest.xml
  build/test-results/test/TEST-de.tum.cit.aet.artemis.quiz.QuizExerciseIntegrationTest.xml
  build/test-results/test/TEST-de.tum.cit.aet.artemis.quiz.QuizExerciseIntegrationTest.xml
Error:
  java.lang.AssertionError: Response status expected:<200> but was:<500>
Raw output
java.lang.AssertionError: Response status expected:<200> but was:<500>
	at org.springframework.test.util.AssertionErrors.fail(AssertionErrors.java:61)
	at org.springframework.test.util.AssertionErrors.assertEquals(AssertionErrors.java:128)
	at org.springframework.test.web.servlet.result.StatusResultMatchers.lambda$is$1(StatusResultMatchers.java:65)
	at org.springframework.test.web.servlet.MockMvc$1.andExpect(MockMvc.java:214)
	at de.tum.cit.aet.artemis.core.util.RequestUtilService.delete(RequestUtilService.java:780)
	at de.tum.cit.aet.artemis.quiz.QuizExerciseIntegrationTest.testDeleteQuizExerciseWithSubmittedAnswers(QuizExerciseIntegrationTest.java:518)
	at java.base/java.lang.reflect.Method.invoke(Method.java:580)
	at java.base/java.util.stream.ForEachOps$ForEachOp$OfRef.accept(ForEachOps.java:184)
	at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197)
	at java.base/java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:179)
	at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197)
	at java.base/java.util.stream.ForEachOps$ForEachOp$OfRef.accept(ForEachOps.java:184)
	at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197)
	at java.base/java.util.stream.ForEachOps$ForEachOp$OfRef.accept(ForEachOps.java:184)
	at java.base/java.util.stream.ForEachOps$ForEachOp$OfRef.accept(ForEachOps.java:184)
	at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197)
	at java.base/java.util.Iterator.forEachRemaining(Iterator.java:133)
	at java.base/java.util.Spliterators$IteratorSpliterator.forEachRemaining(Spliterators.java:1939)
	at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:509)
	at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:499)
	at java.base/java.util.stream.ForEachOps$ForEachOp.evaluateSequential(ForEachOps.java:151)
	at java.base/java.util.stream.ForEachOps$ForEachOp$OfRef.evaluateSequential(ForEachOps.java:174)
	at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
	at java.base/java.util.stream.ReferencePipeline.forEach(ReferencePipeline.java:596)
	at java.base/java.util.stream.ReferencePipeline$7$1.accept(ReferencePipeline.java:276)
	at java.base/java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1708)
	at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:509)
	at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:499)
	at java.base/java.util.stream.ForEachOps$ForEachOp.evaluateSequential(ForEachOps.java:151)
	at java.base/java.util.stream.ForEachOps$ForEachOp$OfRef.evaluateSequential(ForEachOps.java:174)
	at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
	at java.base/java.util.stream.ReferencePipeline.forEach(ReferencePipeline.java:596)
	at java.base/java.util.stream.ReferencePipeline$7$1.accept(ReferencePipeline.java:276)
	at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197)
	at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197)
	at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197)
	at java.base/java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1708)
	at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:509)
	at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:499)
	at java.base/java.util.stream.ForEachOps$ForEachOp.evaluateSequential(ForEachOps.java:151)
	at java.base/java.util.stream.ForEachOps$ForEachOp$OfRef.evaluateSequential(ForEachOps.java:174)
	at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
	at java.base/java.util.stream.ReferencePipeline.forEach(ReferencePipeline.java:596)
	at java.base/java.util.stream.ReferencePipeline$7$1.accept(ReferencePipeline.java:276)
	at java.base/java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1708)
	at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:509)
	at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:499)
	at java.base/java.util.stream.ForEachOps$ForEachOp.evaluateSequential(ForEachOps.java:151)
	at java.base/java.util.stream.ForEachOps$ForEachOp$OfRef.evaluateSequential(ForEachOps.java:174)
	at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
	at java.base/java.util.stream.ReferencePipeline.forEach(ReferencePipeline.java:596)
	at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:387)
	at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1312)
	at java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1843)
	at java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1808)
	at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:188)