protected void Grow(int requestedLen) { int newLen = Math.Max(capacity * 2, requestedLen); newLen = Math.Max(newLen, 16); char[] newBuffer = new char[newLen]; Array.Copy(buffer, 0, newBuffer, 0, capacity); buffer = newBuffer; capacity = newLen; }