code: public boolean next() {
  		while (true) {
  			currentSlot++;
  			if (!isOverflowing) { // not in an overflow block
  				// if it reached the end of the block
  				if (currentSlot >= currentPage.getNumRecords()) {
  					if (getSiblingFlag(currentPage) != -1) {
  						moveTo(getSiblingFlag(currentPage), -1);
  						continue;
  					}
  					return false;
  					// if the key of this slot match what we want
  				} else if (searchRange.match(getKey(currentPage, currentSlot, keyType.length()))) {
  					/*
  					 * Move to records in overflow blocks first. An overflow block
  					 * cannot be empty.
  					 */
  					if (currentSlot == 0 && getOverflowFlag(currentPage) != -1) {
  						isOverflowing = true;
  						overflowFrom = currentPage.currentBlk().number();
  						moveTo(getOverflowFlag(currentPage), 0);
  					}
  					return true;
  				} else if (searchRange.betweenMinAndMax(getKey(currentPage, currentSlot, keyType.length()))) {
  					continue;
  				} else
  					return false;
  			} else { // in an overflow block
  				// All the records in an overflow block have the same key
  				// so that we do not need to check the key in an overflow block.
  				
  				if (currentSlot >= currentPage.getNumRecords()) {
  					moveTo(getOverflowFlag(currentPage), 0);
  					/*
  					 * Move back to the first record in the regular block finally.
  					 */
  					if (currentPage.currentBlk().number() == overflowFrom) {
  						isOverflowing = false;
  						overflowFrom = -1;
  					}
  				}
  				
  				return true;
  			}
  		}
  	}
docs: Moves to the next B-tree leaf record matching the search key.
  
  @return false if there are no more leaf records for the search key