diff --git a/MelangePlan0310.wiki b/MelangePlan0310.wiki
index ebacaea..9497eae 100644
--- a/MelangePlan0310.wiki
+++ b/MelangePlan0310.wiki
@@ -23,15 +23,15 @@
 ||Display changes in StudentProposals||A StudentProposal usually has multiple iterations. A request from the organizations was to make these changes more visible by somehow displaying the history of a proposal (diffs or complete histories are an idea)||GSoC 2010 ||Very Low|| ||
 
 == GHOP ==
-|| *Short Name* || *Description* || *Duration* || *Schelduled* || *Priority* || *Primary Contributors* ||
-||~~ GHOP Organization Registration ~~|| Check/Fix/Implement the Organization registration for GHOP Organizations, including Org Admin and Mentor invitations. || 1 week || 14 June || High || Madhusudan ||
-|| GHOP Task Quota assignment || Create the page where Program Administrators can see/update the quota for each organization. Does not need to be Task API anymore because the current list can send along the keys, however it does need to scale. || 2 weeks || 21 June || High || Madhusudan ||
-||~~ GHOP Task creation by org admins ~~|| Allow GHOP Org Admins to create tasks for their own org which can be directly published or stored for later publishing. || 2 weeks || 5 July || High || Madhusudan ||
-||~~ GHOP Task suggestion by mentors, all can edit ~~|| Allow GHOP Mentors to suggest tasks for their organization and let the Org Admin accept/publish the task, both in bulk and on a per-task basis || 1 week || 12 July || High || Madhusudan ||
-||~~  GHOP Task workflow ~~ (Have tested it and fixed bugs as much as a single person can break, want more help. If anything else is reported will work on it)|| Run the current workflow from the point that a task is published till the completion of a Task. Includes, checking access to make sure that a mentor/org admin can't claim a task and someone who has claimed a task or is a Student can't become a Org Admin/Mentor. || 2 weeks || 13 September || High || Madhusudan ||
-||  GHOP Task pages || Besides the per-task page there are a few more important pages to be checked/fixed/implemented.  Namely the org home page with a lists of their tasks, a page with all tasks for a single program and a page for listing "My tasks" showing either the ones you have claimed or are mentoring. || 1 week || 20 September|| High || Madhusudan ||
-|| GHOP statistics || Page to gather GHOP Statistics, might make use of the work from Mario and Daniel. Most importantly we need to know who completed what amount of tasks on a overall and per-org basis.|| 2 weeks || 27 September || High || Madhusudan ||
-|| ~~GHOP Notifications~~ || http://code.google.com/p/soc/issues/detail?id=921 || 1 week || 27 September || High || Madhusudan ||
-|| GHOP Task work upload || Allowing uploads to be made as part of a WorkSubmission || 3 weeks || 21 November || Medium || Madhusudan ||
-|| GHOP User Manual - Issue 923 || There is a skeleton [http://code.google.com/p/soc/wiki/GHOPUserManual GHOP User Manual in the wiki]. This needs to include all the details and nuances about how to use GHOP module. || 2 weeks || 4 October || High || Madhusudan and others ||
-|| GHOP Testing period || Similar to the GSoC testing period we will run GHOP through its paces publicly during this time. || 2 weeks || 11 October || High || All ||
\ No newline at end of file
+|| *Short Name* || *Description* || *Status* || *Duration* || *Schelduled* || *Priority* || *Primary Contributors* ||
+||~~ GHOP Organization Registration ~~|| Check/Fix/Implement the Organization registration for GHOP Organizations, including Org Admin and Mentor invitations. || Complete || 1 week || 14 June || High || Madhusudan ||
+|| GHOP Task Quota assignment || Create the page where Program Administrators can see/update the quota for each organization. Does not need to be Task API anymore because the current list can send along the keys, however it does need to scale. || To be started || 2 weeks || 21 June || High || Madhusudan ||
+||~~ GHOP Task creation by org admins ~~|| Allow GHOP Org Admins to create tasks for their own org which can be directly published or stored for later publishing. || Complete || 2 weeks || 5 July || High || Madhusudan ||
+||~~ GHOP Task suggestion by mentors, all can edit ~~|| Allow GHOP Mentors to suggest tasks for their organization and let the Org Admin accept/publish the task, both in bulk and on a per-task basis || Complete || 1 week || 12 July || High || Madhusudan ||
+||~~  GHOP Task workflow ~~ (Have tested it and fixed bugs as much as a single person can break, want more help. If anything else is reported will work on it)|| Run the current workflow from the point that a task is published till the completion of a Task. Includes, checking access to make sure that a mentor/org admin can't claim a task and someone who has claimed a task or is a Student can't become a Org Admin/Mentor. || Complete || 2 weeks || 13 September || High || Madhusudan ||
+||  GHOP Task pages || Besides the per-task page there are a few more important pages to be checked/fixed/implemented.  Namely the org home page with a lists of their tasks, a page with all tasks for a single program and a page for listing "My tasks" showing either the ones you have claimed or are mentoring. || Started || 1 week || 20 September|| High || Madhusudan ||
+|| GHOP statistics || Page to gather GHOP Statistics, might make use of the work from Mario and Daniel. Most importantly we need to know who completed what amount of tasks on a overall and per-org basis.|| Not started || 2 weeks || 27 September || High || Madhusudan ||
+|| ~~GHOP Notifications~~ || http://code.google.com/p/soc/issues/detail?id=921 || Complete || 1 week || 27 September || High || Madhusudan ||
+|| GHOP Task work upload || Allowing uploads to be made as part of a WorkSubmission || Won't fix for GHOP 2010 || 3 weeks || 21 November || Medium || Madhusudan ||
+|| GHOP User Manual - Issue 923 || There is a skeleton [http://code.google.com/p/soc/wiki/GHOPUserManual GHOP User Manual in the wiki]. This needs to include all the details and nuances about how to use GHOP module. || Started - Contributions needed || 2 weeks || 4 October || High || Madhusudan and others ||
+|| GHOP Testing period || Similar to the GSoC testing period we will run GHOP through its paces publicly during this time. || Not started || 2 weeks || 11 October || High || All ||
\ No newline at end of file
