char (int index) { InnerLeaf leaf = myLastLeaf; if (leaf == null || index < leaf.start || index >= leaf.end) { myLastLeaf = leaf = findLeaf(index); } return leaf.leafNode.charAt(index - leaf.start); }