public int CompareTo(object obj) { throw new InvalidOperationException("state machine should not use CompareTo"); }