public override string ToString() { var buffer = new StringBuilder(); ToStringRecursively(this, buffer, 0); return buffer.ToString(); }