public boolean hasEnrolmentInCurricularCourseBefore(final CurricularCourse curricularCourse,
final ExecutionSemester executionSemester) {
for (final CurriculumModule curriculumModule : getCurriculumModulesSet()) {
if (curriculumModule.isEnrolment()) {
final Enrolment enrolment = (Enrolment) curriculumModule;
if (!enrolment.isAnnulled() && enrolment.getExecutionPeriod().isBefore(executionSemester)
&& enrolment.getCurricularCourse() == curricularCourse) {
return true;
}
} else if (curriculumModule instanceof CurriculumGroup) {
final CurriculumGroup curriculumGroup = (CurriculumGroup) curriculumModule;
if (curriculumGroup.hasEnrolmentInCurricularCourseBefore(curricularCourse, executionSemester)) {