Index: main/kofacustom.dspg/trunk/src/kofacustom/dspg/applicants/applicant.py
===================================================================
--- main/kofacustom.dspg/trunk/src/kofacustom/dspg/applicants/applicant.py	(revision 14831)
+++ main/kofacustom.dspg/trunk/src/kofacustom/dspg/applicants/applicant.py	(revision 14865)
@@ -23,10 +23,11 @@
 from kofacustom.nigeria.applicants.applicant import NigeriaApplicant
 from kofacustom.dspg.applicants.interfaces import(
-    ICustomApplicant, ICustomUGApplicantEdit, ICustomPGApplicantEdit, IPUTMEApplicantEdit)
+    ICustomApplicant, ICustomUGApplicantEdit, ICustomPGApplicantEdit,
+    IPUTMEApplicantEdit, ICustomSpecialApplicant)
 
 class CustomApplicant(NigeriaApplicant):
 
     grok.implements(ICustomApplicant, ICustomUGApplicantEdit,
-        ICustomPGApplicantEdit, IPUTMEApplicantEdit)
+        ICustomPGApplicantEdit, IPUTMEApplicantEdit, ICustomSpecialApplicant)
     grok.provides(ICustomApplicant)
 
Index: main/kofacustom.dspg/trunk/src/kofacustom/dspg/applicants/browser.py
===================================================================
--- main/kofacustom.dspg/trunk/src/kofacustom/dspg/applicants/browser.py	(revision 14831)
+++ main/kofacustom.dspg/trunk/src/kofacustom/dspg/applicants/browser.py	(revision 14865)
@@ -26,5 +26,5 @@
 from waeup.kofa.interfaces import IExtFileStore, IKofaUtils
 from waeup.kofa.applicants.interfaces import (
-    IApplicant, IApplicantEdit, ISpecialApplicant)
+    IApplicant, IApplicantEdit)
 from waeup.kofa.applicants.browser import (ApplicantDisplayFormPage,
     ApplicantManageFormPage, ApplicantEditFormPage,
@@ -42,4 +42,5 @@
 from kofacustom.dspg.applicants.interfaces import (
     ICustomUGApplicant, ICustomUGApplicantEdit,
+    ICustomSpecialApplicant,
     ND_OMIT_DISPLAY_FIELDS,
     ND_OMIT_PDF_FIELDS,
@@ -80,5 +81,5 @@
     def form_fields(self):
         if self.context.special:
-            return grok.AutoFields(ISpecialApplicant)
+            return grok.AutoFields(ICustomSpecialApplicant)
         form_fields = grok.AutoFields(ICustomUGApplicant)
         if self.context.is_nd:
@@ -162,5 +163,5 @@
     def form_fields(self):
         if self.context.special:
-            form_fields = grok.AutoFields(ISpecialApplicant)
+            form_fields = grok.AutoFields(ICustomSpecialApplicant)
             form_fields['applicant_id'].for_display = True
             return form_fields
@@ -176,4 +177,10 @@
         return form_fields
 
+    def setUpWidgets(self, ignore_request=False):
+        super(CustomApplicantManageFormPage,self).setUpWidgets(ignore_request)
+        if self.context.special:
+            self.widgets['carryover_courses'].height = 3
+        return
+
 class CustomApplicantEditFormPage(ApplicantEditFormPage):
     """An applicant-centered edit view for applicant data.
@@ -186,5 +193,5 @@
     def form_fields(self):
         if self.context.special:
-            form_fields = grok.AutoFields(ISpecialApplicant).omit(
+            form_fields = grok.AutoFields(ICustomSpecialApplicant).omit(
                 'locked', 'suspended')
             form_fields['applicant_id'].for_display = True
@@ -203,4 +210,10 @@
         form_fields['reg_number'].for_display = True
         return form_fields
+
+    def setUpWidgets(self, ignore_request=False):
+        super(CustomApplicantEditFormPage,self).setUpWidgets(ignore_request)
+        if self.context.special:
+            self.widgets['carryover_courses'].height = 3
+        return
 
     @property
Index: main/kofacustom.dspg/trunk/src/kofacustom/dspg/applicants/interfaces.py
===================================================================
--- main/kofacustom.dspg/trunk/src/kofacustom/dspg/applicants/interfaces.py	(revision 14831)
+++ main/kofacustom.dspg/trunk/src/kofacustom/dspg/applicants/interfaces.py	(revision 14865)
@@ -28,5 +28,6 @@
 from waeup.kofa.schema import FormattedDate, TextLineChoice, PhoneNumber
 from waeup.kofa.students.vocabularies import nats_vocab, GenderSource
-from waeup.kofa.applicants.interfaces import contextual_reg_num_source
+from waeup.kofa.applicants.interfaces import (
+    contextual_reg_num_source, ISpecialApplicant)
 from kofacustom.nigeria.applicants.interfaces import (
     LGASource, high_qual, high_grade, exam_types,
@@ -281,5 +282,15 @@
     """
 
-class ICustomApplicant(ICustomUGApplicant, ICustomPGApplicant):
+class ICustomSpecialApplicant(ISpecialApplicant):
+
+    carryover_courses = schema.Text(
+        title = _(u'Carry-Over Courses'),
+        required = False,
+        description = _(
+            u'Enter course titles if carry-over remedial payment.'),
+        )
+
+class ICustomApplicant(ICustomUGApplicant, ICustomPGApplicant,
+                       ICustomSpecialApplicant):
     """An interface for both types of applicants.
 
