protected String PrintStack() { if (stack.Empty()) return ""; StringBuilder s = new StringBuilder(); foreach (String part in stack) s.Append('.').Append(part); return s.ToString(1, s.Length - 1); }