protected static List<ByteArrayId> getRowIdsAtTier( final BinnedNumericDataset index, final byte tierId, final SpaceFillingCurve sfc, final BigInteger maxEstimatedDuplicateIds, final int sfcIndex) { final List<ByteArrayId> retVal = new ArrayList<ByteArrayId>(); final BigInteger rowCount = sfc.getEstimatedIdCount(index); if (rowCount.equals(BigInteger.ONE)) { final byte[] tierAndBinId = ByteArrayUtils.combineArrays(new byte[] {tierId}, index.getBinId()); final double[] maxValues = index.getMaxValuesPerDimension(); retVal.add(new ByteArrayId(ByteArrayUtils.combineArrays(tierAndBinId, sfc.getId(maxValues)))); return retVal; } else if ((maxEstimatedDuplicateIds == null) || (rowCount.compareTo(maxEstimatedDuplicateIds) <= 0) || (sfcIndex == 0)) { return decomposeRangesForEntry(index, tierId, sfc); } return null; }