public override StringRebuilder GetLeaf(int position, out int offset) { if (position < _left.Length) { return(_left.GetLeaf(position, out offset)); } else { var leaf = _right.GetLeaf(position - _left.Length, out offset); offset += _left.Length; return(leaf); } }