OperResult result;
if (level == endLevel) {
if (keys[level - 1] == null) {
deleteSubTreeRecursively(root, level, kContext);
result = new OperResult(true, new PageNumber(BTreeSpec.INVALID_PAGENO));
} else result = delete(keys[level - 1], root, kContext);
} else {
BTreePage rootPage = getPage(root);
if (rootPage.getPage() != null) {
BTreePage leafPage = rootPage.getLeaf(keys[level - 1], kContext, BTreePage.INSERT);