public int CompareTo(object obj)
{
if (obj == null) { return 1; }
Phrase P = obj as Phrase;
if (P != null) { return value.CompareTo(P.value); }
else { throw new ArgumentException("Object is not a Phrase"); }
}