} else {
} else if (executionPeriod != null) {
    public Date getCalendarStartDate() throws FenixFilterException, FenixServiceException {        final ExecutionPeriod executionPeriod = getExecutionPeriod();        final String evaluationTypeClassname = getEvaluationTypeClassname();        final StudentCurricularPlan studentCurricularPlan = getStudent().getActiveStudentCurricularPlan();        final DegreeCurricularPlan degreeCurricularPlan = (studentCurricularPlan != null) ? studentCurricularPlan.getDegreeCurricularPlan() : null;        final ExecutionDegree executionDegree = findExecutinDegree(degreeCurricularPlan, executionPeriod);        if (evaluationTypeClassname == null || evaluationTypeClassname.length() == 0 || executionDegree == null) {        	if (executionDegree != null && executionPeriod.getSemester().intValue() == 1 && executionDegree.getPeriodLessonsFirstSemester() != null) {        		return executionDegree.getPeriodLessonsFirstSemester().getStart();        	} else if (executionDegree != null && executionPeriod.getSemester().intValue() == 2 && executionDegree.getPeriodLessonsSecondSemester() != null) {        		return executionDegree.getPeriodLessonsSecondSemester().getStart();        	} else {        		return executionPeriod.getBeginDate();        	}        } else {            if (evaluationTypeClassname.equals(Exam.class.getName())) {                if (executionPeriod.getSemester().intValue() == 1) {                    return executionDegree.getPeriodExamsFirstSemester().getStart();                } else if (executionPeriod.getSemester().intValue() == 2) {                    return executionDegree.getPeriodExamsSecondSemester().getStart();                }            } else if (evaluationTypeClassname.equals(WrittenTest.class.getName())) {                if (executionPeriod.getSemester().intValue() == 1) {                    return executionDegree.getPeriodLessonsFirstSemester().getStart();                } else if (executionPeriod.getSemester().intValue() == 2) {                    return executionDegree.getPeriodLessonsSecondSemester().getStart();                }            } else if (evaluationTypeClassname.equals(WrittenTest.class.getName())                    || evaluationTypeClassname.equals(Project.class.getName())) {                if (executionPeriod.getSemester().intValue() == 1) {                    return executionDegree.getPeriodLessonsFirstSemester().getStart();                } else if (executionPeriod.getSemester().intValue() == 2) {                    return executionDegree.getPeriodLessonsSecondSemester().getStart();                }            }        }        return null;    }