Coverage Report - org.kuali.student.enrollment.class2.acal.service.decorators.AcademicCalendarServiceDecorator
 
Classes in this File Line Coverage Branch Coverage Complexity
AcademicCalendarServiceDecorator
0%
0/122
0%
0/2
1.017
 
 1  
 /**
 2  
  * Copyright 2010 The Kuali Foundation Licensed under the Educational Community
 3  
  * License, Version 2.0 (the "License"); you may not use this file except in
 4  
  * compliance with the License. You may obtain a copy of the License at
 5  
  * http://www.osedu.org/licenses/ECL-2.0 Unless required by applicable law or
 6  
  * agreed to in writing, software distributed under the License is distributed
 7  
  * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
 8  
  * express or implied. See the License for the specific language governing
 9  
  * permissions and limitations under the License.
 10  
  */
 11  
 
 12  
 package org.kuali.student.enrollment.class2.acal.service.decorators;
 13  
 
 14  
 import java.util.Date;
 15  
 import java.util.List;
 16  
 
 17  
 import org.kuali.rice.core.api.criteria.QueryByCriteria;
 18  
 import org.kuali.student.enrollment.acal.dto.AcademicCalendarInfo;
 19  
 import org.kuali.student.enrollment.acal.dto.AcalEventInfo;
 20  
 import org.kuali.student.enrollment.acal.dto.HolidayCalendarInfo;
 21  
 import org.kuali.student.enrollment.acal.dto.HolidayInfo;
 22  
 import org.kuali.student.enrollment.acal.dto.KeyDateInfo;
 23  
 import org.kuali.student.enrollment.acal.dto.TermInfo;
 24  
 import org.kuali.student.enrollment.acal.service.AcademicCalendarService;
 25  
 import org.kuali.student.r2.common.dto.ContextInfo;
 26  
 import org.kuali.student.r2.common.dto.StatusInfo;
 27  
 import org.kuali.student.r2.common.dto.ValidationResultInfo;
 28  
 import org.kuali.student.r2.common.exceptions.AlreadyExistsException;
 29  
 import org.kuali.student.r2.common.exceptions.DataValidationErrorException;
 30  
 import org.kuali.student.r2.common.exceptions.DoesNotExistException;
 31  
 import org.kuali.student.r2.common.exceptions.InvalidParameterException;
 32  
 import org.kuali.student.r2.common.exceptions.MissingParameterException;
 33  
 import org.kuali.student.r2.common.exceptions.OperationFailedException;
 34  
 import org.kuali.student.r2.common.exceptions.PermissionDeniedException;
 35  
 import org.kuali.student.r2.common.exceptions.ReadOnlyException;
 36  
 import org.kuali.student.r2.common.exceptions.VersionMismatchException;
 37  
 import org.kuali.student.r2.core.atp.service.AtpService;
 38  
 import org.kuali.student.r2.core.state.dto.StateInfo;
 39  
 import org.kuali.student.r2.core.type.dto.TypeInfo;
 40  
 
 41  
 import javax.jws.WebParam;
 42  
 
 43  0
 public class AcademicCalendarServiceDecorator implements AcademicCalendarService {
 44  
 
 45  
     private AtpService atpService;
 46  
 
 47  
     public AtpService getAtpService() {
 48  0
         return atpService;
 49  
     }
 50  
 
 51  
     public void setAtpService(AtpService atpService) {
 52  0
         this.atpService = atpService;
 53  0
     }
 54  
 
 55  
     private AcademicCalendarService nextDecorator;
 56  
 
 57  
     public AcademicCalendarService getNextDecorator() throws OperationFailedException {
 58  0
         if (null == nextDecorator) {
 59  0
             throw new OperationFailedException("Misconfigured application: nextDecorator is null");
 60  
         }
 61  
 
 62  0
         return nextDecorator;
 63  
     }
 64  
 
 65  
     public void setNextDecorator(AcademicCalendarService nextDecorator) {
 66  0
         this.nextDecorator = nextDecorator;
 67  0
     }
 68  
 
 69  
     @Override
 70  
     public TypeInfo getAcademicCalendarType(String academicCalendarTypeKey, ContextInfo contextInfo) throws DoesNotExistException, InvalidParameterException, MissingParameterException,
 71  
             OperationFailedException, PermissionDeniedException {
 72  0
         return (getNextDecorator().getAcademicCalendarType(academicCalendarTypeKey, contextInfo));
 73  
     }
 74  
 
 75  
     @Override
 76  
     public List<TypeInfo> getAcademicCalendarTypes(ContextInfo contextInfo) throws InvalidParameterException, MissingParameterException, OperationFailedException, PermissionDeniedException {
 77  0
         return (getNextDecorator().getAcademicCalendarTypes(contextInfo));
 78  
     }
 79  
 
 80  
     @Override
 81  
     public StateInfo getAcademicCalendarState(String academicCalendarStateKey, ContextInfo contextInfo) throws DoesNotExistException, InvalidParameterException, MissingParameterException,
 82  
             OperationFailedException, PermissionDeniedException {
 83  0
         return (getNextDecorator().getAcademicCalendarState(academicCalendarStateKey, contextInfo));
 84  
     }
 85  
 
 86  
     @Override
 87  
     public List<StateInfo> getAcademicCalendarStates(ContextInfo contextInfo) throws InvalidParameterException, MissingParameterException, OperationFailedException, PermissionDeniedException {
 88  0
         return (getNextDecorator().getAcademicCalendarStates(contextInfo));
 89  
     }
 90  
 
 91  
     @Override
 92  
     public AcademicCalendarInfo getAcademicCalendar(String academicCalendarId, ContextInfo contextInfo) throws DoesNotExistException, InvalidParameterException, MissingParameterException,
 93  
             OperationFailedException, PermissionDeniedException {
 94  0
         return (getNextDecorator().getAcademicCalendar(academicCalendarId, contextInfo));
 95  
     }
 96  
 
 97  
     @Override
 98  
     public List<AcademicCalendarInfo> getAcademicCalendarsByIds(List<String> academicCalendarIds, ContextInfo contextInfo) throws DoesNotExistException, InvalidParameterException,
 99  
             MissingParameterException, OperationFailedException, PermissionDeniedException {
 100  0
         return (getNextDecorator().getAcademicCalendarsByIds(academicCalendarIds, contextInfo));
 101  
     }
 102  
 
 103  
     @Override
 104  
     public List<String> getAcademicCalendarIdsByType(String academicCalendarTypeKey, ContextInfo contextInfo) throws InvalidParameterException, MissingParameterException, OperationFailedException,
 105  
             PermissionDeniedException {
 106  0
         return (getNextDecorator().getAcademicCalendarIdsByType(academicCalendarTypeKey, contextInfo));
 107  
     }
 108  
 
 109  
     @Override
 110  
     public List<AcademicCalendarInfo> getAcademicCalendarsByStartYear(Integer year, ContextInfo contextInfo) throws InvalidParameterException, MissingParameterException, OperationFailedException,
 111  
             PermissionDeniedException {
 112  0
         return (getNextDecorator().getAcademicCalendarsByStartYear(year, contextInfo));
 113  
     }
 114  
 
 115  
     @Override
 116  
     public List<String> searchForAcademicCalendarIds(QueryByCriteria criteria, ContextInfo contextInfo) throws InvalidParameterException, MissingParameterException, OperationFailedException,
 117  
             PermissionDeniedException {
 118  0
         return (getNextDecorator().searchForAcademicCalendarIds(criteria, contextInfo));
 119  
     }
 120  
 
 121  
     @Override
 122  
     public List<AcademicCalendarInfo> searchForAcademicCalendars(QueryByCriteria criteria, ContextInfo contextInfo) throws InvalidParameterException, MissingParameterException,
 123  
             OperationFailedException, PermissionDeniedException {
 124  0
         return (getNextDecorator().searchForAcademicCalendars(criteria, contextInfo));
 125  
     }
 126  
 
 127  
     @Override
 128  
     public List<ValidationResultInfo> validateAcademicCalendar(String validationTypeKey, String academicCalendarTypeKey, AcademicCalendarInfo academicCalendarInfo, ContextInfo contextInfo)
 129  
             throws DoesNotExistException, InvalidParameterException, MissingParameterException, OperationFailedException, PermissionDeniedException {
 130  0
         return (getNextDecorator().validateAcademicCalendar(validationTypeKey, academicCalendarTypeKey, academicCalendarInfo, contextInfo));
 131  
     }
 132  
 
 133  
     @Override
 134  
     public AcademicCalendarInfo createAcademicCalendar(String academicCalendarTypeKey, AcademicCalendarInfo academicCalendarInfo, ContextInfo contextInfo) throws DataValidationErrorException,
 135  
             DoesNotExistException, InvalidParameterException, MissingParameterException, OperationFailedException, PermissionDeniedException, ReadOnlyException {
 136  0
         return (getNextDecorator().createAcademicCalendar(academicCalendarTypeKey, academicCalendarInfo, contextInfo));
 137  
     }
 138  
 
 139  
     @Override
 140  
     public AcademicCalendarInfo updateAcademicCalendar(String academicCalendarId, AcademicCalendarInfo academicCalendarInfo, ContextInfo contextInfo) throws DataValidationErrorException,
 141  
             DoesNotExistException, InvalidParameterException, MissingParameterException, OperationFailedException, PermissionDeniedException, ReadOnlyException, VersionMismatchException {
 142  0
         return (getNextDecorator().updateAcademicCalendar(academicCalendarId, academicCalendarInfo, contextInfo));
 143  
     }
 144  
 
 145  
     @Override
 146  
     public StatusInfo deleteAcademicCalendar(String academicCalendarId, ContextInfo contextInfo) throws DoesNotExistException, InvalidParameterException, MissingParameterException,
 147  
             OperationFailedException, PermissionDeniedException {
 148  0
         return (getNextDecorator().deleteAcademicCalendar(academicCalendarId, contextInfo));
 149  
     }
 150  
 
 151  
     @Override
 152  
     public AcademicCalendarInfo copyAcademicCalendar(String academicCalendarId, Date startDate, Date endDate, ContextInfo contextInfo) throws DoesNotExistException, InvalidParameterException,
 153  
             MissingParameterException, OperationFailedException, PermissionDeniedException {
 154  0
         return (getNextDecorator().copyAcademicCalendar(academicCalendarId, startDate, endDate, contextInfo));
 155  
     }
 156  
 
 157  
     @Override
 158  
     public String getAcademicCalendarData(String academicCalendarId, String calendarDataFormatTypeKey, ContextInfo contextInfo) throws DoesNotExistException, InvalidParameterException,
 159  
             MissingParameterException, OperationFailedException, PermissionDeniedException {
 160  0
         return (getNextDecorator().getAcademicCalendarData(academicCalendarId, calendarDataFormatTypeKey, contextInfo));
 161  
     }
 162  
 
 163  
     @Override
 164  
     public TypeInfo getHolidayCalendarType(String holidayCalendarTypeKey, ContextInfo contextInfo) throws DoesNotExistException, InvalidParameterException, MissingParameterException,
 165  
             OperationFailedException, PermissionDeniedException {
 166  0
         return (getNextDecorator().getHolidayCalendarType(holidayCalendarTypeKey, contextInfo));
 167  
     }
 168  
 
 169  
     @Override
 170  
     public List<TypeInfo> getHolidayCalendarTypes(ContextInfo contextInfo) throws InvalidParameterException, MissingParameterException, OperationFailedException, PermissionDeniedException {
 171  0
         return (getNextDecorator().getHolidayCalendarTypes(contextInfo));
 172  
     }
 173  
 
 174  
     @Override
 175  
     public StateInfo getHolidayCalendarState(String holidayCalendarStateKey, ContextInfo contextInfo) throws DoesNotExistException, InvalidParameterException, MissingParameterException,
 176  
             OperationFailedException, PermissionDeniedException {
 177  0
         return (getNextDecorator().getHolidayCalendarState(holidayCalendarStateKey, contextInfo));
 178  
     }
 179  
 
 180  
     @Override
 181  
     public List<StateInfo> getHolidayCalendarStates(ContextInfo contextInfo) throws InvalidParameterException, MissingParameterException, OperationFailedException, PermissionDeniedException {
 182  0
         return (getNextDecorator().getHolidayCalendarStates(contextInfo));
 183  
     }
 184  
 
 185  
     @Override
 186  
     public HolidayCalendarInfo getHolidayCalendar(String holidayCalendarId, ContextInfo contextInfo) throws DoesNotExistException, InvalidParameterException, MissingParameterException,
 187  
             OperationFailedException, PermissionDeniedException {
 188  0
         return (getNextDecorator().getHolidayCalendar(holidayCalendarId, contextInfo));
 189  
     }
 190  
 
 191  
     @Override
 192  
     public List<HolidayCalendarInfo> getHolidayCalendarsByIds(List<String> holidayCalendarIds, ContextInfo contextInfo) throws DoesNotExistException, InvalidParameterException,
 193  
             MissingParameterException, OperationFailedException, PermissionDeniedException {
 194  0
         return (getNextDecorator().getHolidayCalendarsByIds(holidayCalendarIds, contextInfo));
 195  
     }
 196  
 
 197  
     @Override
 198  
     public List<String> getHolidayCalendarIdsByType(String holidayCalendarTypeKey, ContextInfo contextInfo) throws InvalidParameterException, MissingParameterException, OperationFailedException,
 199  
             PermissionDeniedException {
 200  0
         return (getNextDecorator().getHolidayCalendarIdsByType(holidayCalendarTypeKey, contextInfo));
 201  
     }
 202  
 
 203  
     @Override
 204  
     public List<HolidayCalendarInfo> getHolidayCalendarsByStartYear(Integer year, ContextInfo contextInfo) throws InvalidParameterException, MissingParameterException, OperationFailedException,
 205  
             PermissionDeniedException {
 206  0
         return (getNextDecorator().getHolidayCalendarsByStartYear(year, contextInfo));
 207  
     }
 208  
 
 209  
     @Override
 210  
     public List<String> searchForHolidayCalendarIds(QueryByCriteria criteria, ContextInfo contextInfo) throws InvalidParameterException, MissingParameterException, OperationFailedException,
 211  
             PermissionDeniedException {
 212  0
         return (getNextDecorator().searchForHolidayCalendarIds(criteria, contextInfo));
 213  
     }
 214  
 
 215  
     @Override
 216  
     public List<HolidayCalendarInfo> searchForHolidayCalendars(QueryByCriteria criteria, ContextInfo contextInfo) throws InvalidParameterException, MissingParameterException,
 217  
             OperationFailedException, PermissionDeniedException {
 218  0
         return (getNextDecorator().searchForHolidayCalendars(criteria, contextInfo));
 219  
     }
 220  
 
 221  
     @Override
 222  
     public List<ValidationResultInfo> validateHolidayCalendar(String validationTypeKey, String holidayCalendarTypeKey, HolidayCalendarInfo holidayCalendarInfo, ContextInfo contextInfo)
 223  
             throws DoesNotExistException, InvalidParameterException, MissingParameterException, OperationFailedException, PermissionDeniedException {
 224  0
         return (getNextDecorator().validateHolidayCalendar(validationTypeKey, holidayCalendarTypeKey, holidayCalendarInfo, contextInfo));
 225  
     }
 226  
 
 227  
     @Override
 228  
     public HolidayCalendarInfo createHolidayCalendar(String holidayCalendarTypeKey, HolidayCalendarInfo holidayCalendarInfo, ContextInfo contextInfo) throws DataValidationErrorException,
 229  
             DoesNotExistException, InvalidParameterException, MissingParameterException, OperationFailedException, PermissionDeniedException, ReadOnlyException {
 230  0
         return (getNextDecorator().createHolidayCalendar(holidayCalendarTypeKey, holidayCalendarInfo, contextInfo));
 231  
     }
 232  
 
 233  
     @Override
 234  
     public HolidayCalendarInfo copyHolidayCalendar(String holidayCalendarId, Date startDate, Date endDate, ContextInfo contextInfo) throws DoesNotExistException, InvalidParameterException, MissingParameterException, OperationFailedException, PermissionDeniedException {
 235  0
         return (getNextDecorator().copyHolidayCalendar(holidayCalendarId,startDate,endDate,contextInfo));
 236  
     }
 237  
 
 238  
     @Override
 239  
     public HolidayCalendarInfo updateHolidayCalendar(String holidayCalendarId, HolidayCalendarInfo holidayCalendarInfo, ContextInfo contextInfo) throws DataValidationErrorException,
 240  
             DoesNotExistException, InvalidParameterException, MissingParameterException, OperationFailedException, PermissionDeniedException, ReadOnlyException, VersionMismatchException {
 241  0
         return (getNextDecorator().updateHolidayCalendar(holidayCalendarId, holidayCalendarInfo, contextInfo));
 242  
     }
 243  
 
 244  
     @Override
 245  
     public StatusInfo deleteHolidayCalendar(String holidayCalendarId, ContextInfo contextInfo) throws DoesNotExistException, InvalidParameterException, MissingParameterException,
 246  
             OperationFailedException, PermissionDeniedException {
 247  0
         return (getNextDecorator().deleteHolidayCalendar(holidayCalendarId, contextInfo));
 248  
     }
 249  
 
 250  
     @Override
 251  
     public TypeInfo getTermType(String termTypeKey, ContextInfo contextInfo) throws DoesNotExistException, InvalidParameterException, MissingParameterException, OperationFailedException,
 252  
             PermissionDeniedException {
 253  0
         return (getNextDecorator().getTermType(termTypeKey, contextInfo));
 254  
     }
 255  
 
 256  
     @Override
 257  
     public List<TypeInfo> getTermTypes(ContextInfo contextInfo) throws InvalidParameterException, MissingParameterException, OperationFailedException, PermissionDeniedException {
 258  0
         return (getNextDecorator().getTermTypes(contextInfo));
 259  
     }
 260  
 
 261  
     @Override
 262  
     public List<TypeInfo> getTermTypesForAcademicCalendarType(String academicCalendarTypeKey, ContextInfo contextInfo) throws DoesNotExistException, InvalidParameterException,
 263  
             MissingParameterException, OperationFailedException, PermissionDeniedException {
 264  0
         return (getNextDecorator().getTermTypesForAcademicCalendarType(academicCalendarTypeKey, contextInfo));
 265  
     }
 266  
 
 267  
     @Override
 268  
     public List<TypeInfo> getTermTypesForTermType(String termTypeKey, ContextInfo contextInfo) throws DoesNotExistException, InvalidParameterException, MissingParameterException,
 269  
             OperationFailedException, PermissionDeniedException {
 270  0
         return (getNextDecorator().getTermTypesForTermType(termTypeKey, contextInfo));
 271  
     }
 272  
 
 273  
     @Override
 274  
     public StateInfo getTermState(String termStateKey, ContextInfo contextInfo) throws DoesNotExistException, InvalidParameterException, MissingParameterException, OperationFailedException,
 275  
             PermissionDeniedException {
 276  0
         return (getNextDecorator().getTermState(termStateKey, contextInfo));
 277  
     }
 278  
 
 279  
     @Override
 280  
     public List<StateInfo> getTermStates(ContextInfo contextInfo) throws InvalidParameterException, MissingParameterException, OperationFailedException, PermissionDeniedException {
 281  0
         return (getNextDecorator().getTermStates(contextInfo));
 282  
     }
 283  
 
 284  
     @Override
 285  
     public TermInfo getTerm(String termId, ContextInfo contextInfo) throws DoesNotExistException, InvalidParameterException, MissingParameterException, OperationFailedException,
 286  
             PermissionDeniedException {
 287  0
         return (getNextDecorator().getTerm(termId, contextInfo));
 288  
     }
 289  
 
 290  
     @Override
 291  
     public List<TermInfo> getTermsByIds(List<String> termIds, ContextInfo contextInfo) throws DoesNotExistException, InvalidParameterException, MissingParameterException, OperationFailedException,
 292  
             PermissionDeniedException {
 293  0
         return (getNextDecorator().getTermsByIds(termIds, contextInfo));
 294  
     }
 295  
 
 296  
     @Override
 297  
     public List<String> getTermIdsByType(String termTypeKey, ContextInfo contextInfo) throws DoesNotExistException, InvalidParameterException, MissingParameterException, OperationFailedException, PermissionDeniedException {
 298  0
         return (getNextDecorator().getTermIdsByType(termTypeKey, contextInfo));
 299  
     }
 300  
 
 301  
     @Override
 302  
     public List<TermInfo> getTermsByCode(String code, ContextInfo contextInfo) throws InvalidParameterException, MissingParameterException, OperationFailedException, PermissionDeniedException {
 303  0
         return (getNextDecorator().getTermsByCode(code, contextInfo));
 304  
     }
 305  
 
 306  
     @Override
 307  
     public List<TermInfo> getTermsForAcademicCalendar(String academicCalendarId, ContextInfo contextInfo) throws DoesNotExistException, InvalidParameterException, MissingParameterException,
 308  
             OperationFailedException, PermissionDeniedException {
 309  0
         return (getNextDecorator().getTermsForAcademicCalendar(academicCalendarId, contextInfo));
 310  
     }
 311  
 
 312  
     @Override
 313  
     public List<TermInfo> getIncludedTermsInTerm(String termId, ContextInfo contextInfo) throws DoesNotExistException, InvalidParameterException, MissingParameterException, OperationFailedException,
 314  
             PermissionDeniedException {
 315  0
         return (getNextDecorator().getIncludedTermsInTerm(termId, contextInfo));
 316  
     }
 317  
 
 318  
     @Override
 319  
     public List<TermInfo> getContainingTerms(String termId, ContextInfo contextInfo) throws DoesNotExistException, InvalidParameterException, MissingParameterException, OperationFailedException,
 320  
             PermissionDeniedException {
 321  0
         return (getNextDecorator().getContainingTerms(termId, contextInfo));
 322  
     }
 323  
 
 324  
     @Override
 325  
     public List<String> searchForTermIds(QueryByCriteria criteria, ContextInfo contextInfo) throws InvalidParameterException, MissingParameterException, OperationFailedException,
 326  
             PermissionDeniedException {
 327  0
         return (getNextDecorator().searchForTermIds(criteria, contextInfo));
 328  
     }
 329  
 
 330  
     @Override
 331  
     public List<TermInfo> searchForTerms(QueryByCriteria criteria, ContextInfo contextInfo) throws InvalidParameterException, MissingParameterException, OperationFailedException,
 332  
             PermissionDeniedException {
 333  0
         return (getNextDecorator().searchForTerms(criteria, contextInfo));
 334  
     }
 335  
 
 336  
     @Override
 337  
     public List<ValidationResultInfo> validateTerm(String validationTypeKey, String termTypeKey, TermInfo termInfo, ContextInfo contextInfo) throws DoesNotExistException, InvalidParameterException,
 338  
             MissingParameterException, OperationFailedException, PermissionDeniedException {
 339  0
         return (getNextDecorator().validateTerm(validationTypeKey, termTypeKey, termInfo, contextInfo));
 340  
     }
 341  
 
 342  
     @Override
 343  
     public TermInfo createTerm(String termTypeKey, TermInfo termInfo, ContextInfo contextInfo) throws DataValidationErrorException, DoesNotExistException, InvalidParameterException,
 344  
             MissingParameterException, OperationFailedException, PermissionDeniedException, ReadOnlyException {
 345  0
         return (getNextDecorator().createTerm(termTypeKey, termInfo, contextInfo));
 346  
     }
 347  
 
 348  
     @Override
 349  
     public TermInfo updateTerm(String termId, TermInfo termInfo, ContextInfo contextInfo) throws DataValidationErrorException, DoesNotExistException, InvalidParameterException,
 350  
             MissingParameterException, OperationFailedException, PermissionDeniedException, ReadOnlyException, VersionMismatchException {
 351  0
         return (getNextDecorator().updateTerm(termId, termInfo, contextInfo));
 352  
     }
 353  
 
 354  
     @Override
 355  
     public StatusInfo deleteTerm(String termId, ContextInfo contextInfo) throws DoesNotExistException, InvalidParameterException, MissingParameterException, OperationFailedException,
 356  
             PermissionDeniedException {
 357  0
         return (getNextDecorator().deleteTerm(termId, contextInfo));
 358  
     }
 359  
 
 360  
     @Override
 361  
     public StatusInfo addTermToAcademicCalendar(String academicCalendarId, String termId, ContextInfo contextInfo) throws AlreadyExistsException, DoesNotExistException, InvalidParameterException,
 362  
             MissingParameterException, OperationFailedException, PermissionDeniedException {
 363  0
         return (getNextDecorator().addTermToAcademicCalendar(academicCalendarId, termId, contextInfo));
 364  
     }
 365  
 
 366  
     @Override
 367  
     public StatusInfo removeTermFromAcademicCalendar(String academicCalendarId, String termId, ContextInfo contextInfo) throws DoesNotExistException, InvalidParameterException,
 368  
             MissingParameterException, OperationFailedException, PermissionDeniedException {
 369  0
         return (getNextDecorator().removeTermFromAcademicCalendar(academicCalendarId, termId, contextInfo));
 370  
     }
 371  
 
 372  
     @Override
 373  
     public StatusInfo addTermToTerm(String termId, String includedTermId, ContextInfo contextInfo) throws AlreadyExistsException, DoesNotExistException, InvalidParameterException,
 374  
             MissingParameterException, OperationFailedException, PermissionDeniedException {
 375  0
         return (getNextDecorator().addTermToTerm(termId, includedTermId, contextInfo));
 376  
     }
 377  
 
 378  
     @Override
 379  
     public StatusInfo removeTermFromTerm(String termId, String includedTermId, ContextInfo contextInfo) throws DoesNotExistException, InvalidParameterException, MissingParameterException,
 380  
             OperationFailedException, PermissionDeniedException {
 381  0
         return (getNextDecorator().removeTermFromTerm(termId, includedTermId, contextInfo));
 382  
     }
 383  
 
 384  
     @Override
 385  
     public TypeInfo getKeyDateType(String keyDateTypeKey, ContextInfo contextInfo) throws DoesNotExistException, InvalidParameterException, MissingParameterException, OperationFailedException,
 386  
             PermissionDeniedException {
 387  0
         return (getNextDecorator().getKeyDateType(keyDateTypeKey, contextInfo));
 388  
     }
 389  
 
 390  
     @Override
 391  
     public List<TypeInfo> getKeyDateTypes(ContextInfo contextInfo) throws InvalidParameterException, MissingParameterException, OperationFailedException, PermissionDeniedException {
 392  0
         return (getNextDecorator().getKeyDateTypes(contextInfo));
 393  
     }
 394  
 
 395  
     @Override
 396  
     public List<TypeInfo> getKeyDateTypesForTermType(String termTypeKey, ContextInfo contextInfo) throws DoesNotExistException, InvalidParameterException, MissingParameterException,
 397  
             OperationFailedException, PermissionDeniedException {
 398  0
         return (getNextDecorator().getKeyDateTypesForTermType(termTypeKey, contextInfo));
 399  
     }
 400  
 
 401  
     @Override
 402  
     public StateInfo getKeyDateState(String keyDateStateKey, ContextInfo contextInfo) throws DoesNotExistException, InvalidParameterException, MissingParameterException, OperationFailedException,
 403  
             PermissionDeniedException {
 404  0
         return (getNextDecorator().getKeyDateState(keyDateStateKey, contextInfo));
 405  
     }
 406  
 
 407  
     @Override
 408  
     public List<StateInfo> getKeyDateStates(ContextInfo contextInfo) throws InvalidParameterException, MissingParameterException, OperationFailedException, PermissionDeniedException {
 409  0
         return (getNextDecorator().getKeyDateStates(contextInfo));
 410  
     }
 411  
 
 412  
     @Override
 413  
     public KeyDateInfo getKeyDate(String keyDateId, ContextInfo contextInfo) throws DoesNotExistException, InvalidParameterException, MissingParameterException, OperationFailedException,
 414  
             PermissionDeniedException {
 415  0
         return (getNextDecorator().getKeyDate(keyDateId, contextInfo));
 416  
     }
 417  
 
 418  
     @Override
 419  
     public List<KeyDateInfo> getKeyDatesByIds(List<String> keyDateIds, ContextInfo contextInfo) throws DoesNotExistException, InvalidParameterException, MissingParameterException,
 420  
             OperationFailedException, PermissionDeniedException {
 421  0
         return (getNextDecorator().getKeyDatesByIds(keyDateIds, contextInfo));
 422  
     }
 423  
 
 424  
     @Override
 425  
     public List<String> getKeyDateIdsByType(String keyDateTypeKey, ContextInfo contextInfo) throws DoesNotExistException, InvalidParameterException, MissingParameterException, OperationFailedException,
 426  
             PermissionDeniedException {
 427  0
         return (getNextDecorator().getKeyDateIdsByType(keyDateTypeKey, contextInfo));
 428  
     }
 429  
 
 430  
     @Override
 431  
     public List<String> getKeyDateIdsByTypeForTerm(String keyDateTypeKey, String termId, ContextInfo contextInfo) throws DoesNotExistException, InvalidParameterException, MissingParameterException, OperationFailedException, PermissionDeniedException {
 432  0
         return (getNextDecorator().getKeyDateIdsByTypeForTerm(keyDateTypeKey, termId, contextInfo));
 433  
     }
 434  
 
 435  
     @Override
 436  
     public List<KeyDateInfo> getKeyDatesForTerm(String termId, ContextInfo contextInfo) throws DoesNotExistException, InvalidParameterException, MissingParameterException, OperationFailedException,
 437  
             PermissionDeniedException {
 438  0
         return (getNextDecorator().getKeyDatesForTerm(termId, contextInfo));
 439  
     }
 440  
 
 441  
     @Override
 442  
     public List<KeyDateInfo> getKeyDatesForTermByDate(String termId, Date startDate, Date endDate, ContextInfo contextInfo) throws DoesNotExistException, InvalidParameterException,
 443  
             MissingParameterException, OperationFailedException, PermissionDeniedException {
 444  0
         return (getNextDecorator().getKeyDatesForTermByDate(termId, startDate, endDate, contextInfo));
 445  
     }
 446  
 
 447  
     @Override
 448  
     public List<KeyDateInfo> getImpactedKeyDates(String keyDateId, ContextInfo contextInfo) throws DoesNotExistException, InvalidParameterException, MissingParameterException,
 449  
             OperationFailedException, PermissionDeniedException {
 450  0
         return (getNextDecorator().getImpactedKeyDates(keyDateId, contextInfo));
 451  
     }
 452  
 
 453  
     @Override
 454  
     public List<String> searchForKeyDateIds(QueryByCriteria criteria, ContextInfo contextInfo) throws InvalidParameterException, MissingParameterException, OperationFailedException,
 455  
             PermissionDeniedException {
 456  0
         return (getNextDecorator().searchForKeyDateIds(criteria, contextInfo));
 457  
     }
 458  
 
 459  
     @Override
 460  
     public List<KeyDateInfo> searchForKeyDates(QueryByCriteria criteria, ContextInfo contextInfo) throws InvalidParameterException, MissingParameterException, OperationFailedException,
 461  
             PermissionDeniedException {
 462  0
         return (getNextDecorator().searchForKeyDates(criteria, contextInfo));
 463  
     }
 464  
 
 465  
     @Override
 466  
     public List<ValidationResultInfo> validateKeyDate(String validationTypeKey, String termId, String keyDateTypeKey, KeyDateInfo keyDateInfo, ContextInfo contextInfo) throws DoesNotExistException,
 467  
             InvalidParameterException, MissingParameterException, OperationFailedException, PermissionDeniedException {
 468  0
         return (getNextDecorator().validateKeyDate(validationTypeKey, termId, keyDateTypeKey, keyDateInfo, contextInfo));
 469  
     }
 470  
 
 471  
     @Override
 472  
     public KeyDateInfo createKeyDate(String termId, String keyDateTypeKey, KeyDateInfo keyDateInfo, ContextInfo contextInfo) throws DataValidationErrorException, DoesNotExistException,
 473  
             InvalidParameterException, MissingParameterException, OperationFailedException, PermissionDeniedException, ReadOnlyException {
 474  0
         return (getNextDecorator().createKeyDate(termId, keyDateTypeKey, keyDateInfo, contextInfo));
 475  
     }
 476  
 
 477  
     @Override
 478  
     public KeyDateInfo updateKeyDate(String keyDateId, KeyDateInfo keyDateInfo, ContextInfo contextInfo) throws DataValidationErrorException, DoesNotExistException, InvalidParameterException,
 479  
             MissingParameterException, OperationFailedException, PermissionDeniedException, ReadOnlyException, VersionMismatchException {
 480  0
         return (getNextDecorator().updateKeyDate(keyDateId, keyDateInfo, contextInfo));
 481  
     }
 482  
 
 483  
     @Override
 484  
     public StatusInfo deleteKeyDate(String keyDateId, ContextInfo contextInfo) throws DoesNotExistException, InvalidParameterException, MissingParameterException, OperationFailedException,
 485  
             PermissionDeniedException {
 486  0
         return (getNextDecorator().deleteKeyDate(keyDateId, contextInfo));
 487  
     }
 488  
 
 489  
     @Override
 490  
     public KeyDateInfo calculateKeyDate(String keyDateId, ContextInfo contextInfo) throws DoesNotExistException, InvalidParameterException, MissingParameterException, OperationFailedException,
 491  
             PermissionDeniedException {
 492  0
         return (getNextDecorator().calculateKeyDate(keyDateId, contextInfo));
 493  
     }
 494  
 
 495  
     @Override
 496  
     public TypeInfo getAcalEventType(String acalEventTypeKey, ContextInfo contextInfo) throws DoesNotExistException, InvalidParameterException, MissingParameterException, OperationFailedException,
 497  
             PermissionDeniedException {
 498  0
         return (getNextDecorator().getAcalEventType(acalEventTypeKey, contextInfo));
 499  
     }
 500  
 
 501  
     @Override
 502  
     public List<TypeInfo> getAcalEventTypes(ContextInfo contextInfo) throws InvalidParameterException, MissingParameterException, OperationFailedException, PermissionDeniedException {
 503  0
         return (getNextDecorator().getAcalEventTypes(contextInfo));
 504  
     }
 505  
 
 506  
     @Override
 507  
     public List<TypeInfo> getAcalEventTypesForAcademicCalendarType(String academicCalendarTypeKey, ContextInfo contextInfo) throws DoesNotExistException, InvalidParameterException,
 508  
             MissingParameterException, OperationFailedException, PermissionDeniedException {
 509  0
         return (getNextDecorator().getAcalEventTypesForAcademicCalendarType(academicCalendarTypeKey, contextInfo));
 510  
     }
 511  
 
 512  
     @Override
 513  
     public StateInfo getAcalEventState(String acalEventStateKey, ContextInfo contextInfo) throws DoesNotExistException, InvalidParameterException, MissingParameterException, OperationFailedException,
 514  
             PermissionDeniedException {
 515  0
         return (getNextDecorator().getAcalEventState(acalEventStateKey, contextInfo));
 516  
     }
 517  
 
 518  
     @Override
 519  
     public List<StateInfo> getAcalEventStates(ContextInfo contextInfo) throws InvalidParameterException, MissingParameterException, OperationFailedException, PermissionDeniedException {
 520  0
         return (getNextDecorator().getAcalEventStates(contextInfo));
 521  
     }
 522  
 
 523  
     @Override
 524  
     public AcalEventInfo getAcalEvent(String acalEventId, ContextInfo contextInfo) throws DoesNotExistException, InvalidParameterException, MissingParameterException, OperationFailedException,
 525  
             PermissionDeniedException {
 526  0
         return (getNextDecorator().getAcalEvent(acalEventId, contextInfo));
 527  
     }
 528  
 
 529  
     @Override
 530  
     public List<AcalEventInfo> getAcalEventsByIds(List<String> acalEventIds, ContextInfo contextInfo) throws DoesNotExistException, InvalidParameterException, MissingParameterException,
 531  
             OperationFailedException, PermissionDeniedException {
 532  0
         return (getNextDecorator().getAcalEventsByIds(acalEventIds, contextInfo));
 533  
     }
 534  
 
 535  
     @Override
 536  
     public List<String> getAcalEventIdsByType(String acalEventTypeKey, ContextInfo contextInfo) throws InvalidParameterException, MissingParameterException, OperationFailedException,
 537  
             PermissionDeniedException {
 538  0
         return (getNextDecorator().getAcalEventIdsByType(acalEventTypeKey, contextInfo));
 539  
     }
 540  
 
 541  
     @Override
 542  
     public List<AcalEventInfo> getAcalEventsForAcademicCalendar(String academicCalendarId, ContextInfo contextInfo) throws DoesNotExistException, InvalidParameterException, MissingParameterException,
 543  
             OperationFailedException, PermissionDeniedException {
 544  0
         return (getNextDecorator().getAcalEventsForAcademicCalendar(academicCalendarId, contextInfo));
 545  
     }
 546  
 
 547  
     @Override
 548  
     public List<AcalEventInfo> getAcalEventsForAcademicCalendarByDate(String academicCalendarId, Date startDate, Date endDate, ContextInfo contextInfo) throws DoesNotExistException,
 549  
             InvalidParameterException, MissingParameterException, OperationFailedException, PermissionDeniedException {
 550  0
         return (getNextDecorator().getAcalEventsForAcademicCalendarByDate(academicCalendarId, startDate, endDate, contextInfo));
 551  
     }
 552  
 
 553  
     @Override
 554  
     public List<AcalEventInfo> getImpactedAcalEvents(String acalEventId, ContextInfo contextInfo) throws DoesNotExistException, InvalidParameterException, MissingParameterException,
 555  
             OperationFailedException, PermissionDeniedException {
 556  0
         return (getNextDecorator().getImpactedAcalEvents(acalEventId, contextInfo));
 557  
     }
 558  
 
 559  
     @Override
 560  
     public List<String> searchForAcalEventIds(QueryByCriteria criteria, ContextInfo contextInfo) throws InvalidParameterException, MissingParameterException, OperationFailedException,
 561  
             PermissionDeniedException {
 562  0
         return (getNextDecorator().searchForAcalEventIds(criteria, contextInfo));
 563  
     }
 564  
 
 565  
     @Override
 566  
     public List<AcalEventInfo> searchForAcalEvents(QueryByCriteria criteria, ContextInfo contextInfo) throws InvalidParameterException, MissingParameterException, OperationFailedException,
 567  
             PermissionDeniedException {
 568  0
         return (getNextDecorator().searchForAcalEvents(criteria, contextInfo));
 569  
     }
 570  
 
 571  
     @Override
 572  
     public List<ValidationResultInfo> validateAcalEvent(String validationTypeKey, String termId, String acalEventTypeKey, AcalEventInfo acalEventInfo, ContextInfo contextInfo)
 573  
             throws DoesNotExistException, InvalidParameterException, MissingParameterException, OperationFailedException, PermissionDeniedException {
 574  0
         return (getNextDecorator().validateAcalEvent(validationTypeKey, termId, acalEventTypeKey, acalEventInfo, contextInfo));
 575  
     }
 576  
 
 577  
     @Override
 578  
     public AcalEventInfo createAcalEvent(String termId, String acalEventTypeKey, AcalEventInfo acalEventInfo, ContextInfo contextInfo) throws DataValidationErrorException, DoesNotExistException,
 579  
             InvalidParameterException, MissingParameterException, OperationFailedException, PermissionDeniedException, ReadOnlyException {
 580  0
         return (getNextDecorator().createAcalEvent(termId, acalEventTypeKey, acalEventInfo, contextInfo));
 581  
     }
 582  
 
 583  
     @Override
 584  
     public AcalEventInfo updateAcalEvent(String acalEventId, AcalEventInfo acalEventInfo, ContextInfo contextInfo) throws DataValidationErrorException, DoesNotExistException,
 585  
             InvalidParameterException, MissingParameterException, OperationFailedException, PermissionDeniedException, ReadOnlyException, VersionMismatchException {
 586  0
         return (getNextDecorator().updateAcalEvent(acalEventId, acalEventInfo, contextInfo));
 587  
     }
 588  
 
 589  
     @Override
 590  
     public StatusInfo deleteAcalEvent(String acalEventId, ContextInfo contextInfo) throws DoesNotExistException, InvalidParameterException, MissingParameterException, OperationFailedException,
 591  
             PermissionDeniedException {
 592  0
         return (getNextDecorator().deleteAcalEvent(acalEventId, contextInfo));
 593  
     }
 594  
 
 595  
     @Override
 596  
     public AcalEventInfo calculateAcalEvent(String acalEventId, ContextInfo contextInfo) throws DoesNotExistException, InvalidParameterException, MissingParameterException, OperationFailedException,
 597  
             PermissionDeniedException {
 598  0
         return (getNextDecorator().calculateAcalEvent(acalEventId, contextInfo));
 599  
     }
 600  
 
 601  
     @Override
 602  
     public TypeInfo getHolidayType(String holidayTypeKey, ContextInfo contextInfo) throws DoesNotExistException, InvalidParameterException, MissingParameterException, OperationFailedException,
 603  
             PermissionDeniedException {
 604  0
         return (getNextDecorator().getHolidayType(holidayTypeKey, contextInfo));
 605  
     }
 606  
 
 607  
     @Override
 608  
     public List<TypeInfo> getHolidayTypes(ContextInfo contextInfo) throws InvalidParameterException, MissingParameterException, OperationFailedException, PermissionDeniedException {
 609  0
         return (getNextDecorator().getHolidayTypes(contextInfo));
 610  
     }
 611  
 
 612  
     @Override
 613  
     public List<TypeInfo> getHolidayTypesForHolidayCalendarType(String holidayCalendarTypeKey, ContextInfo contextInfo) throws DoesNotExistException, InvalidParameterException,
 614  
             MissingParameterException, OperationFailedException, PermissionDeniedException {
 615  0
         return (getNextDecorator().getHolidayTypesForHolidayCalendarType(holidayCalendarTypeKey, contextInfo));
 616  
     }
 617  
 
 618  
     @Override
 619  
     public StateInfo getHolidayState(String holidayStateKey, ContextInfo contextInfo) throws DoesNotExistException, InvalidParameterException, MissingParameterException, OperationFailedException,
 620  
             PermissionDeniedException {
 621  0
         return (getNextDecorator().getHolidayState(holidayStateKey, contextInfo));
 622  
     }
 623  
 
 624  
     @Override
 625  
     public List<StateInfo> getHolidayStates(ContextInfo contextInfo) throws InvalidParameterException, MissingParameterException, OperationFailedException, PermissionDeniedException {
 626  0
         return (getNextDecorator().getHolidayStates(contextInfo));
 627  
     }
 628  
 
 629  
     @Override
 630  
     public HolidayInfo getHoliday(String holidayId, ContextInfo contextInfo) throws DoesNotExistException, InvalidParameterException, MissingParameterException, OperationFailedException,
 631  
             PermissionDeniedException {
 632  0
         return (getNextDecorator().getHoliday(holidayId, contextInfo));
 633  
     }
 634  
 
 635  
     @Override
 636  
     public List<HolidayInfo> getHolidaysByIds(List<String> holidayIds, ContextInfo contextInfo) throws DoesNotExistException, InvalidParameterException, MissingParameterException,
 637  
             OperationFailedException, PermissionDeniedException {
 638  0
         return (getNextDecorator().getHolidaysByIds(holidayIds, contextInfo));
 639  
     }
 640  
 
 641  
     @Override
 642  
     public List<String> getHolidayIdsByType(String holidayTypeKey, ContextInfo contextInfo) throws DoesNotExistException, InvalidParameterException, MissingParameterException, OperationFailedException,
 643  
             PermissionDeniedException {
 644  0
         return (getNextDecorator().getHolidayIdsByType(holidayTypeKey, contextInfo));
 645  
     }
 646  
 
 647  
     @Override
 648  
     public List<HolidayInfo> getHolidaysForHolidayCalendar(String holidayCalendarId, ContextInfo contextInfo) throws DoesNotExistException, InvalidParameterException, MissingParameterException,
 649  
             OperationFailedException, PermissionDeniedException {
 650  0
         return (getNextDecorator().getHolidaysForHolidayCalendar(holidayCalendarId, contextInfo));
 651  
     }
 652  
 
 653  
     @Override
 654  
     public List<HolidayInfo> getHolidaysForHolidayCalendarByDate(String holidayCalendarId, Date startDate, Date endDate, ContextInfo contextInfo) throws DoesNotExistException,
 655  
             InvalidParameterException, MissingParameterException, OperationFailedException, PermissionDeniedException {
 656  0
         return (getNextDecorator().getHolidaysForHolidayCalendarByDate(holidayCalendarId, startDate, endDate, contextInfo));
 657  
     }
 658  
 
 659  
     @Override
 660  
     public List<HolidayInfo> getImpactedHolidays(String holidayId, ContextInfo contextInfo) throws DoesNotExistException, InvalidParameterException, MissingParameterException,
 661  
             OperationFailedException, PermissionDeniedException {
 662  0
         return (getNextDecorator().getImpactedHolidays(holidayId, contextInfo));
 663  
     }
 664  
 
 665  
     @Override
 666  
     public List<String> searchForHolidayIds(QueryByCriteria criteria, ContextInfo contextInfo) throws InvalidParameterException, MissingParameterException, OperationFailedException,
 667  
             PermissionDeniedException {
 668  0
         return (getNextDecorator().searchForHolidayIds(criteria, contextInfo));
 669  
     }
 670  
 
 671  
     @Override
 672  
     public List<HolidayInfo> searchForHolidays(QueryByCriteria criteria, ContextInfo contextInfo) throws InvalidParameterException, MissingParameterException, OperationFailedException,
 673  
             PermissionDeniedException {
 674  0
         return (getNextDecorator().searchForHolidays(criteria, contextInfo));
 675  
     }
 676  
 
 677  
     @Override
 678  
     public List<ValidationResultInfo> validateHoliday(String validationTypeKey, String holidayCalendarId, String holidayTypeKey, HolidayInfo holidayInfo, ContextInfo contextInfo)
 679  
             throws DoesNotExistException, InvalidParameterException, MissingParameterException, OperationFailedException, PermissionDeniedException {
 680  0
         return (getNextDecorator().validateHoliday(validationTypeKey, holidayCalendarId, holidayTypeKey, holidayInfo, contextInfo));
 681  
     }
 682  
 
 683  
     @Override
 684  
     public HolidayInfo createHoliday(String holidayCalendarId, String holidayTypeKey, HolidayInfo holidayInfo, ContextInfo contextInfo) throws DataValidationErrorException, DoesNotExistException,
 685  
             InvalidParameterException, MissingParameterException, OperationFailedException, PermissionDeniedException, ReadOnlyException {
 686  0
         return (getNextDecorator().createHoliday(holidayCalendarId, holidayTypeKey, holidayInfo, contextInfo));
 687  
     }
 688  
 
 689  
     @Override
 690  
     public HolidayInfo updateHoliday(String holidayId, HolidayInfo holidayInfo, ContextInfo contextInfo) throws DataValidationErrorException, DoesNotExistException, InvalidParameterException,
 691  
             MissingParameterException, OperationFailedException, PermissionDeniedException, ReadOnlyException, VersionMismatchException {
 692  0
         return (getNextDecorator().updateHoliday(holidayId, holidayInfo, contextInfo));
 693  
     }
 694  
 
 695  
     @Override
 696  
     public StatusInfo deleteHoliday(String holidayId, ContextInfo contextInfo) throws DoesNotExistException, InvalidParameterException, MissingParameterException, OperationFailedException,
 697  
             PermissionDeniedException {
 698  0
         return (getNextDecorator().deleteHoliday(holidayId, contextInfo));
 699  
     }
 700  
 
 701  
     @Override
 702  
     public HolidayInfo calculateHoliday(String holidayId, ContextInfo contextInfo) throws DoesNotExistException, InvalidParameterException, MissingParameterException, OperationFailedException,
 703  
             PermissionDeniedException {
 704  0
         return (getNextDecorator().calculateHoliday(holidayId, contextInfo));
 705  
     }
 706  
 
 707  
     @Override
 708  
     public Integer getInstructionalDaysForTerm(String termId, ContextInfo contextInfo) throws DoesNotExistException, InvalidParameterException, MissingParameterException, OperationFailedException,
 709  
             PermissionDeniedException {
 710  0
         return (getNextDecorator().getInstructionalDaysForTerm(termId, contextInfo));
 711  
     }
 712  
 
 713  
     @Override
 714  
     public List<TermInfo> getCurrentTerms(String processKey, ContextInfo contextInfo) throws DoesNotExistException, InvalidParameterException, MissingParameterException, OperationFailedException,
 715  
             PermissionDeniedException {
 716  0
         return (getNextDecorator().getCurrentTerms(processKey, contextInfo));
 717  
     }
 718  
 
 719  
     @Override
 720  
     public List<AcademicCalendarInfo> getAcademicCalendarsForTerm(String termId, ContextInfo contextInfo) throws InvalidParameterException, MissingParameterException, OperationFailedException,
 721  
             PermissionDeniedException, DoesNotExistException {
 722  
 
 723  0
         return (getNextDecorator().getAcademicCalendarsForTerm(termId, contextInfo));
 724  
     }
 725  
 
 726  
     @Override
 727  
     public List<HolidayInfo> getHolidaysByDateForAcademicCalendar(String academicCalendarId, Date startDate, Date endDate, ContextInfo contextInfo) throws DoesNotExistException,
 728  
             InvalidParameterException, MissingParameterException, OperationFailedException, PermissionDeniedException {
 729  0
         return (getNextDecorator().getHolidaysByDateForAcademicCalendar(academicCalendarId, startDate, endDate, contextInfo));
 730  
     }
 731  
 }