IBranch branch = masterDegreeProofVersion.getMasterDegreeThesis().getStudentCurricularPlan() .getBranch();
return InfoMasterDegreeProofVersion.newInfoFromDomain(masterDegreeProofVersion);
    public InfoMasterDegreeProofVersion run(Integer studentCurricularPlanID)            throws FenixServiceException {        InfoMasterDegreeProofVersion infoMasterDegreeProofVersion = null;        try {            ISuportePersistente sp = PersistenceSupportFactory.getDefaultPersistenceSupport();            IStudentCurricularPlan studentCurricularPlan = (IStudentCurricularPlan) sp                    .getIStudentCurricularPlanPersistente().readByOID(StudentCurricularPlan.class,                            studentCurricularPlanID);            IDegreeCurricularPlanStrategyFactory degreeCurricularPlanStrategyFactory = DegreeCurricularPlanStrategyFactory                    .getInstance();            IMasterDegreeCurricularPlanStrategy masterDegreeCurricularPlanStrategy = (IMasterDegreeCurricularPlanStrategy) degreeCurricularPlanStrategyFactory                    .getDegreeCurricularPlanStrategy(studentCurricularPlan.getDegreeCurricularPlan());            if (!masterDegreeCurricularPlanStrategy.checkEndOfScholarship(studentCurricularPlan))                throw new ScholarshipNotFinishedServiceException(                        "error.exception.masterDegree.scholarshipNotFinished");            IMasterDegreeProofVersion masterDegreeProofVersion = sp                    .getIPersistentMasterDegreeProofVersion().readActiveByStudentCurricularPlan(                            studentCurricularPlan);            if (masterDegreeProofVersion == null)                throw new NonExistingServiceException(                        "error.exception.masterDegree.nonExistingMasterDegreeProofVersion");            IBranch branch = masterDegreeProofVersion.getMasterDegreeThesis().getStudentCurricularPlan()                    .getBranch();            if (branch != null) {                branch.getIdInternal();            }            infoMasterDegreeProofVersion = Cloner                    .copyIMasterDegreeProofVersion2InfoMasterDegreeProofVersion(masterDegreeProofVersion);        } catch (ExcepcaoPersistencia ex) {            FenixServiceException newEx = new FenixServiceException("Persistence layer error");            newEx.fillInStackTrace();            throw newEx;        }        return infoMasterDegreeProofVersion;    }