diff --git a/GCINewArchitectureGSoC2011.wiki b/GCINewArchitectureGSoC2011.wiki
index f2d13ed..dc69853 100644
--- a/GCINewArchitectureGSoC2011.wiki
+++ b/GCINewArchitectureGSoC2011.wiki
@@ -9,20 +9,20 @@
 ----
 
 =Design and Implementation= 
-==Changes to the existing models== 
+==Converting roles and updating references== 
 Minor changes have to be made to the GCI models such that fields that refer to student/org_admin/mentor should now refer to profile as we are getting rid of Mentor/OrgAdmin entities and Students are defined by their StudentInfo coupled to the profile.
 ===Implementation===
  * A GCIProfile model will be written which extends soc.models.role.profile and the GCI specific fields are added to this model and the GCIStudentInfo model which is coupled to the student's profile.
  * If someone is both OrgAdmin and Mentor for the same organization, then we will not need to update the GCIProfile with mentor information (mentor_for field).We assume that an org admin is also a mentor.
- * After this, the references can be modified, for example 
-{{{
-reference_class=soc.modules.gsoc.models.student.GCIStudent
-}}}
- is changed to 
-{{{
-reference_class=soc.modules.gsoc.models.profile.GCIProfile 
-}}}
- * We will then write a script to update each of these references.
+ * The GCIProfile model contains the GCI specific notification settings.
+  * Currently, GCI has a different notification system where a user X can subscribe to the notification to a particular task by clicking a star on the task and can un-subscribe the task by clicking on the same star again, org_admin,mentor and the student claiming are automatically subscribed.
+  * In addition to this, we will now have Profile based notification settings where a user will be given an option to whether subscribe for the notifications automatically or not, for example a student at the time of profile creation can check/uncheck automatically subscribe to tasks I claim.The same can be applied for mentor and org_admin.
+ * The GCIStudentInfo model contains additional fields specific to GCI
+  * number_of_tasks_completed -> contains number of tasks completed by the student
+  * consent_form -> A signed Parental consent form
+  * student_id_form -> Student ID to verify a student
+  * grade -> The grade in which the student is
+ * We then write a script to convert the roles itself.Basically for each student,mentor or org_admin entity we create a GCIProfile.And then we update all these references in the models containing them.we will use the deferred library which lets us retrieve entites in batches and update their references easily. 
 
 ==Move list generator to the core== 
 As the list generator is required even for the GCI module, we move the list generatorfrom gsoc module to the core.
@@ -133,20 +133,6 @@
  * A view will have other required methods specific to that view.
 
 ----
-=Plan Documents=
-==GCIProfile and GCIStudent models==
- * The GCIProfile model contains the GCI specific notification settings.
-  * Currently, GCI has a different notification system where a user X can subscribe to the notification to a particular task by clicking a star on the task and can un-subscribe the task by clicking on the same star again, org_admin,mentor and the student claiming are automatically subscribed.
-  * In addition to this, we will now have Profile based notification settings where a user will be given an option to whether subscribe for the notifications automatically or not, for example a student at the time of profile creation can check/uncheck automatically subscribe to tasks I claim.The same can be applied for mentor and org_admin.
- * The GCIStudentInfo model contains additional fields specific to GCI
-  * number_of_tasks_completed -> contains number of tasks completed by the student
-  * consent_form -> A signed Parental consent form
-  * student_id_form -> Student ID to verify a student
-  * grade -> The grade in which the student is
-----  
-
-
-
 = Meetings and Agendas =
 == Tuesday, May 17:10:00 in UTC ==
 === Meeting Notes ===
