*::: ClassAd::sPrintExpr() *DONE*
 *::: ClassAd::NextExpr() *DONE*
 *::: ClassAd::NextDirtyExpr() *DONE*
-*::: ClassAd::SetDirtyFlag() *DONE, needs callsite changes*
-*::: ClassAd::GetDirtyFlag() *DONE, needs callsite changes*
+*::: ClassAd::SetDirtyFlag() *DONE*
+*::: ClassAd::GetDirtyFlag() *DONE*
 *::: ClassAd::ClearAllDirtyFlags() *DONE*
 *::: ClassAd::GetReferences() *INCOMPLETE*
 *::: ClassAd::ChainCollapse() *DONE*
 *::: ClassAd::EscapeStringValue() *DONE, will need callsite changes*
-*::: ClassAd::CopyAttribute() *DONE, needs callsite changes*
+*::: ClassAd::CopyAttribute() *DONE*
 *::: ClassAd::fPrintAsXML() *DONE*
 *::: ClassAd::sPrintAsXML() *DONE*
 *::: ClassAd::IsValidAttrValue() *DONE*
@@ -43,7 +43,7 @@
 *: Write helper functions for these methods which we can't emulate transparently *[4 hours]*:
 *:: ExprTree::PrintToNewStr() *DONE*
 *:: ExprTree::PrintToStr() *DONE*
-*:: ExprTree::EvalTree() *DONE, needs callsite changes*
+*:: ExprTree::EvalTree() *DONE*
 
 *: Write compatibility versions of these free-standing functions that are part of old {quote:ClassAds}:
 *:: int Parse(const char*s, MyString&name, ExprTree*&tree, int*pos = NULL) *DONE*
@@ -69,7 +69,7 @@
 
 *: Arrange header and make files so that switching between old and new {quote:ClassAds} can be done with the flip of a switch. *[1 day]*.
 
-*: Fix up the one or two callsites in matchmaker.cpp that move an ad from one {quote:ClassAdList} to another *[4 hours]*.
+*: Fix up the one or two callsites in matchmaker.cpp that move an ad from one {quote:ClassAdList} to another *DONE*.
 
 *: The following methods will need some fixing at the callsites *[5 days]*:
 *:: ExprTree::RArg() *DONE*