You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@datasketches.apache.org by gi...@apache.org on 2023/08/15 00:58:52 UTC

[datasketches-java] branch gh-pages updated: Deploying to gh-pages from @ apache/datasketches-java@8b7ae7d8772e3442c06bab03a0784becffcc492a 🚀

This is an automated email from the ASF dual-hosted git repository.

github-bot pushed a commit to branch gh-pages
in repository https://gitbox.apache.org/repos/asf/datasketches-java.git


The following commit(s) were added to refs/heads/gh-pages by this push:
     new fa09db98 Deploying to gh-pages from @ apache/datasketches-java@8b7ae7d8772e3442c06bab03a0784becffcc492a 🚀
fa09db98 is described below

commit fa09db98147937f152239998fddc4e637f1cdbf4
Author: leerho <le...@users.noreply.github.com>
AuthorDate: Tue Aug 15 00:58:48 2023 +0000

    Deploying to gh-pages from @ apache/datasketches-java@8b7ae7d8772e3442c06bab03a0784becffcc492a 🚀
---
 docs/master/allclasses-index.html                  | 198 ++++----
 docs/master/allclasses.html                        |   9 +-
 docs/master/constant-values.html                   |  36 +-
 docs/master/deprecated-list.html                   |  37 +-
 docs/master/index-all.html                         | 392 ++++++++++++---
 docs/master/member-search-index.js                 |   2 +-
 docs/master/member-search-index.zip                | Bin 15046 -> 16034 bytes
 .../datasketches/common/ArrayOfBooleansSerDe.html  | 228 ++++++++-
 .../datasketches/common/ArrayOfDoublesSerDe.html   | 228 ++++++++-
 .../datasketches/common/ArrayOfItemsSerDe.html     | 215 ++++++++-
 .../datasketches/common/ArrayOfLongsSerDe.html     | 228 ++++++++-
 .../datasketches/common/ArrayOfNumbersSerDe.html   | 228 ++++++++-
 .../datasketches/common/ArrayOfStringsSerDe.html   | 209 +++++++-
 .../common/ArrayOfUtf16StringsSerDe.html           | 205 +++++++-
 .../apache/datasketches/common/ByteArrayUtil.html  |  73 ++-
 .../org/apache/datasketches/common/Util.html       | 219 ++++++++-
 .../common/class-use/ArrayOfItemsSerDe.html        |  62 ++-
 .../apache/datasketches/common/package-use.html    |   6 +
 .../apache/datasketches/kll/KllDoublesSketch.html  | 235 ++++-----
 .../datasketches/kll/KllDoublesSketchIterator.html |   2 +-
 .../kll/KllDoublesSketchSortedView.html            |  68 +--
 .../kll/KllDoublesSketchSortedViewIterator.html    |   2 +-
 .../apache/datasketches/kll/KllFloatsSketch.html   | 235 ++++-----
 .../datasketches/kll/KllFloatsSketchIterator.html  |   2 +-
 .../kll/KllFloatsSketchSortedView.html             |  68 +--
 .../kll/KllFloatsSketchSortedViewIterator.html     |   2 +-
 .../{KllDoublesSketch.html => KllItemsSketch.html} | 526 +++++++++------------
 .../KllItemsSketchIterator.html}                   |  28 +-
 ...rtedView.KllItemsSketchSortedViewIterator.html} | 152 ++----
 .../KllItemsSketchSortedView.html}                 | 254 +++++++---
 ...tchType.html => KllSketch.SketchStructure.html} | 128 +++--
 .../datasketches/kll/KllSketch.SketchType.html     |  57 ++-
 .../org/apache/datasketches/kll/KllSketch.html     | 190 +++-----
 .../kll/class-use/KllDoublesSketch.html            |   4 +-
 .../kll/class-use/KllFloatsSketch.html             |   4 +-
 .../{KllFloatsSketch.html => KllItemsSketch.html}  |  75 ++-
 .../class-use/KllItemsSketchIterator.html}         |  59 +--
 ...rtedView.KllItemsSketchSortedViewIterator.html} |  28 +-
 .../class-use/KllItemsSketchSortedView.html}       |  28 +-
 ...lSketch.html => KllSketch.SketchStructure.html} |  50 +-
 .../datasketches/kll/class-use/KllSketch.html      |  22 +
 .../apache/datasketches/kll/package-summary.html   |  30 ++
 .../org/apache/datasketches/kll/package-tree.html  |   9 +
 .../org/apache/datasketches/kll/package-use.html   |  24 +
 .../quantiles/CompactDoublesSketch.html            |  21 +-
 .../datasketches/quantiles/DoublesSketch.html      |  21 +-
 .../quantiles/DoublesSketchIterator.html           |   2 +-
 .../quantiles/DoublesSketchSortedViewIterator.html |   2 +-
 .../apache/datasketches/quantiles/ItemsSketch.html |  13 +-
 .../quantiles/ItemsSketchIterator.html             |   2 +-
 ...hSortedView.ItemsSketchSortedViewIterator.html} | 152 ++----
 .../quantiles/ItemsSketchSortedView.html           | 149 +++---
 .../quantiles/ItemsSketchSortedViewIterator.html   | 430 -----------------
 .../apache/datasketches/quantiles/ItemsUnion.html  |   4 +-
 .../quantiles/UpdateDoublesSketch.html             |  21 +-
 ...hSortedView.ItemsSketchSortedViewIterator.html} |  18 +-
 .../datasketches/quantiles/package-summary.html    |   2 +-
 .../datasketches/quantiles/package-tree.html       |   6 +-
 .../apache/datasketches/quantiles/package-use.html |   2 +-
 .../quantilescommon/DoublesSortedView.html         |  94 ++--
 .../quantilescommon/FloatsSortedView.html          |  94 ++--
 .../quantilescommon/GenericInequalitySearch.html   |   2 +-
 .../quantilescommon/GenericSortedView.html         | 141 +++---
 .../quantilescommon/GenericSortedViewIterator.html | 225 ++++++++-
 .../datasketches/quantilescommon/QuantilesAPI.html | 128 ++++-
 .../quantilescommon/QuantilesDoublesAPI.html       |  21 +-
 .../quantilescommon/QuantilesFloatsAPI.html        |  21 +-
 .../quantilescommon/QuantilesGenericAPI.html       |  23 +-
 .../QuantilesGenericSketchIterator.html            |   2 +-
 .../quantilescommon/QuantilesSketchIterator.html   |   2 +-
 .../quantilescommon/QuantilesUtil.html             |  54 +--
 .../datasketches/quantilescommon/SortedView.html   |   2 +-
 .../quantilescommon/SortedViewIterator.html        |   4 +-
 .../class-use/GenericSortedView.html               |  33 +-
 .../class-use/GenericSortedViewIterator.html       |  59 ++-
 .../class-use/QuantileSearchCriteria.html          |  96 +++-
 .../quantilescommon/class-use/QuantilesAPI.html    |   7 +
 ...tilesGenericAPI.GenericPartitionBoundaries.html |  32 +-
 .../class-use/QuantilesGenericAPI.html             |  31 ++
 .../class-use/QuantilesGenericSketchIterator.html  |  48 +-
 .../class-use/QuantilesSketchIterator.html         |   7 +
 .../quantilescommon/class-use/SortedView.html      |   7 +
 .../class-use/SortedViewIterator.html              |  25 +-
 .../quantilescommon/package-summary.html           |  36 +-
 .../datasketches/quantilescommon/package-tree.html |   2 +-
 .../datasketches/quantilescommon/package-use.html  |  35 +-
 .../org/apache/datasketches/req/ReqSketch.html     |  21 +-
 .../apache/datasketches/req/ReqSketchIterator.html |   2 +-
 .../datasketches/req/ReqSketchSortedView.html      |  70 +--
 .../req/ReqSketchSortedViewIterator.html           |   2 +-
 docs/master/overview-tree.html                     |  12 +-
 docs/master/package-search-index.zip               | Bin 344 -> 344 bytes
 docs/master/type-search-index.js                   |   2 +-
 docs/master/type-search-index.zip                  | Bin 1574 -> 1605 bytes
 94 files changed, 4537 insertions(+), 2505 deletions(-)

diff --git a/docs/master/allclasses-index.html b/docs/master/allclasses-index.html
index c5b46e8c..46e6abd0 100644
--- a/docs/master/allclasses-index.html
+++ b/docs/master/allclasses-index.html
@@ -27,7 +27,7 @@
     catch(err) {
     }
 //-->
-var data = {"i0":2,"i1":2,"i2":2,"i3":2,"i4":2,"i5":1,"i6":2,"i7":2,"i8":2,"i9":2,"i10":2,"i11":2,"i12":1,"i13":2,"i14":2,"i15":2,"i16":2,"i17":2,"i18":2,"i19":2,"i20":2,"i21":2,"i22":2,"i23":2,"i24":2,"i25":2,"i26":2,"i27":2,"i28":2,"i29":2,"i30":2,"i31":2,"i32":2,"i33":2,"i34":2,"i35":2,"i36":2,"i37":2,"i38":2,"i39":2,"i40":2,"i41":2,"i42":2,"i43":2,"i44":2,"i45":2,"i46":2,"i47":2,"i48":2,"i49":1,"i50":1,"i51":2,"i52":4,"i53":2,"i54":2,"i55":2,"i56":2,"i57":2,"i58":4,"i59":4,"i60":2,"i [...]
+var data = {"i0":2,"i1":2,"i2":2,"i3":2,"i4":2,"i5":1,"i6":2,"i7":2,"i8":2,"i9":2,"i10":2,"i11":2,"i12":1,"i13":2,"i14":2,"i15":2,"i16":2,"i17":2,"i18":2,"i19":2,"i20":2,"i21":2,"i22":2,"i23":2,"i24":2,"i25":2,"i26":2,"i27":2,"i28":2,"i29":2,"i30":2,"i31":2,"i32":2,"i33":2,"i34":2,"i35":2,"i36":2,"i37":2,"i38":2,"i39":2,"i40":2,"i41":2,"i42":2,"i43":2,"i44":2,"i45":2,"i46":2,"i47":2,"i48":2,"i49":1,"i50":1,"i51":2,"i52":4,"i53":2,"i54":2,"i55":2,"i56":2,"i57":2,"i58":4,"i59":4,"i60":2,"i [...]
 var tabs = {65535:["t0","All Classes"],1:["t1","Interface Summary"],2:["t2","Class Summary"],4:["t3","Enum Summary"],8:["t4","Exception Summary"],32:["t6","Annotation Types Summary"]};
 var altColor = "altColor";
 var rowColor = "rowColor";
@@ -546,7 +546,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 </th>
 </tr>
 <tr id="i67" class="rowColor">
-<td class="colFirst"><a href="org/apache/datasketches/quantilescommon/GenericSortedViewIterator.html" title="interface in org.apache.datasketches.quantilescommon">GenericSortedViewIterator</a>&lt;<a href="org/apache/datasketches/quantilescommon/GenericSortedViewIterator.html" title="type parameter in GenericSortedViewIterator">T</a>&gt;</td>
+<td class="colFirst"><a href="org/apache/datasketches/quantilescommon/GenericSortedViewIterator.html" title="class in org.apache.datasketches.quantilescommon">GenericSortedViewIterator</a>&lt;<a href="org/apache/datasketches/quantilescommon/GenericSortedViewIterator.html" title="type parameter in GenericSortedViewIterator">T</a>&gt;</td>
 <th class="colLast" scope="row">
 <div class="block">The quantiles SortedView Iterator for generic types.</div>
 </th>
@@ -664,7 +664,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 </th>
 </tr>
 <tr id="i86" class="altColor">
-<td class="colFirst"><a href="org/apache/datasketches/quantiles/ItemsSketchSortedViewIterator.html" title="class in org.apache.datasketches.quantiles">ItemsSketchSortedViewIterator</a>&lt;<a href="org/apache/datasketches/quantiles/ItemsSketchSortedViewIterator.html" title="type parameter in ItemsSketchSortedViewIterator">T</a>&gt;</td>
+<td class="colFirst"><a href="org/apache/datasketches/quantiles/ItemsSketchSortedView.ItemsSketchSortedViewIterator.html" title="class in org.apache.datasketches.quantiles">ItemsSketchSortedView.ItemsSketchSortedViewIterator</a>&lt;<a href="org/apache/datasketches/quantiles/ItemsSketchSortedView.ItemsSketchSortedViewIterator.html" title="type parameter in ItemsSketchSortedView.ItemsSketchSortedViewIterator">T</a>&gt;</td>
 <th class="colLast" scope="row">
 <div class="block">Iterator over ItemsSketchSortedView.</div>
 </th>
@@ -736,18 +736,48 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 </th>
 </tr>
 <tr id="i98" class="altColor">
+<td class="colFirst"><a href="org/apache/datasketches/kll/KllItemsSketch.html" title="class in org.apache.datasketches.kll">KllItemsSketch</a>&lt;<a href="org/apache/datasketches/kll/KllItemsSketch.html" title="type parameter in KllItemsSketch">T</a>&gt;</td>
+<th class="colLast" scope="row">
+<div class="block">This variation of the KllSketch implements generic data types.</div>
+</th>
+</tr>
+<tr id="i99" class="rowColor">
+<td class="colFirst"><a href="org/apache/datasketches/kll/KllItemsSketchIterator.html" title="class in org.apache.datasketches.kll">KllItemsSketchIterator</a>&lt;<a href="org/apache/datasketches/kll/KllItemsSketchIterator.html" title="type parameter in KllItemsSketchIterator">T</a>&gt;</td>
+<th class="colLast" scope="row">
+<div class="block">Iterator over KllItemsSketch.</div>
+</th>
+</tr>
+<tr id="i100" class="altColor">
+<td class="colFirst"><a href="org/apache/datasketches/kll/KllItemsSketchSortedView.html" title="class in org.apache.datasketches.kll">KllItemsSketchSortedView</a>&lt;<a href="org/apache/datasketches/kll/KllItemsSketchSortedView.html" title="type parameter in KllItemsSketchSortedView">T</a>&gt;</td>
+<th class="colLast" scope="row">
+<div class="block">The SortedView of the KllItemsSketch.</div>
+</th>
+</tr>
+<tr id="i101" class="rowColor">
+<td class="colFirst"><a href="org/apache/datasketches/kll/KllItemsSketchSortedView.KllItemsSketchSortedViewIterator.html" title="class in org.apache.datasketches.kll">KllItemsSketchSortedView.KllItemsSketchSortedViewIterator</a>&lt;<a href="org/apache/datasketches/kll/KllItemsSketchSortedView.KllItemsSketchSortedViewIterator.html" title="type parameter in KllItemsSketchSortedView.KllItemsSketchSortedViewIterator">T</a>&gt;</td>
+<th class="colLast" scope="row">
+<div class="block">Iterator over KllItemsSketchSortedView.</div>
+</th>
+</tr>
+<tr id="i102" class="altColor">
 <td class="colFirst"><a href="org/apache/datasketches/kll/KllSketch.html" title="class in org.apache.datasketches.kll">KllSketch</a></td>
 <th class="colLast" scope="row">
 <div class="block">This class is the root of the KLL sketch class hierarchy.</div>
 </th>
 </tr>
-<tr id="i99" class="rowColor">
+<tr id="i103" class="rowColor">
+<td class="colFirst"><a href="org/apache/datasketches/kll/KllSketch.SketchStructure.html" title="enum in org.apache.datasketches.kll">KllSketch.SketchStructure</a></td>
+<th class="colLast" scope="row">
+<div class="block">Used primarily to define the structure of the serialized sketch.</div>
+</th>
+</tr>
+<tr id="i104" class="altColor">
 <td class="colFirst"><a href="org/apache/datasketches/kll/KllSketch.SketchType.html" title="enum in org.apache.datasketches.kll">KllSketch.SketchType</a></td>
 <th class="colLast" scope="row">
 <div class="block">Used to define the variable type of the current instance of this class.</div>
 </th>
 </tr>
-<tr id="i100" class="altColor">
+<tr id="i105" class="rowColor">
 <td class="colFirst"><a href="org/apache/datasketches/frequencies/LongsSketch.html" title="class in org.apache.datasketches.frequencies">LongsSketch</a></td>
 <th class="colLast" scope="row">
 <div class="block">This sketch is useful for tracking approximate frequencies of <i>long</i> items with optional
@@ -755,20 +785,20 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
  such items.</div>
 </th>
 </tr>
-<tr id="i101" class="rowColor">
+<tr id="i106" class="altColor">
 <td class="colFirst"><a href="org/apache/datasketches/frequencies/LongsSketch.Row.html" title="class in org.apache.datasketches.frequencies">LongsSketch.Row</a></td>
 <th class="colLast" scope="row">
 <div class="block">Row class that defines the return values from a getFrequentItems query.</div>
 </th>
 </tr>
-<tr id="i102" class="altColor">
+<tr id="i107" class="rowColor">
 <td class="colFirst"><a href="org/apache/datasketches/cpc/MergingValidation.html" title="class in org.apache.datasketches.cpc">MergingValidation</a></td>
 <th class="colLast" scope="row">
 <div class="block">This code is used both by unit tests, for short running tests,
  and by the characterization repository for longer running, more exhaustive testing.</div>
 </th>
 </tr>
-<tr id="i103" class="rowColor">
+<tr id="i108" class="altColor">
 <td class="colFirst"><a href="org/apache/datasketches/hash/MurmurHash3.html" title="class in org.apache.datasketches.hash">MurmurHash3</a></td>
 <th class="colLast" scope="row">
 <div class="block">
@@ -776,26 +806,26 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
  excellent avalanche and 2-way bit independence properties.</div>
 </th>
 </tr>
-<tr id="i104" class="altColor">
+<tr id="i109" class="rowColor">
 <td class="colFirst"><a href="org/apache/datasketches/hash/MurmurHash3Adaptor.html" title="class in org.apache.datasketches.hash">MurmurHash3Adaptor</a></td>
 <th class="colLast" scope="row">
 <div class="block">A general purpose wrapper for the MurmurHash3.</div>
 </th>
 </tr>
-<tr id="i105" class="rowColor">
+<tr id="i110" class="altColor">
 <td class="colFirst"><a href="org/apache/datasketches/theta/PairwiseSetOperations.html" title="class in org.apache.datasketches.theta">PairwiseSetOperations</a></td>
 <th class="colLast" scope="row">Deprecated.
 <div class="deprecationComment">v2.0.0.</div>
 </th>
 </tr>
-<tr id="i106" class="altColor">
+<tr id="i111" class="rowColor">
 <td class="colFirst"><a href="org/apache/datasketches/fdt/PostProcessor.html" title="class in org.apache.datasketches.fdt">PostProcessor</a></td>
 <th class="colLast" scope="row">
 <div class="block">This processes the contents of a FDT sketch to extract the
  primary keys with the most frequent unique combinations of the non-primary dimensions.</div>
 </th>
 </tr>
-<tr id="i107" class="rowColor">
+<tr id="i112" class="altColor">
 <td class="colFirst"><a href="org/apache/datasketches/quantilescommon/QuantilesAPI.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesAPI</a></td>
 <th class="colLast" scope="row">
 <div class="block">This is a stochastic streaming sketch that enables near-real time analysis of the
@@ -803,103 +833,103 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
  that the items are comparable.</div>
 </th>
 </tr>
-<tr id="i108" class="altColor">
+<tr id="i113" class="rowColor">
 <td class="colFirst"><a href="org/apache/datasketches/quantilescommon/QuantilesDoublesAPI.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesDoublesAPI</a></td>
 <th class="colLast" scope="row">
 <div class="block">The Quantiles API for item type <i>double</i>.</div>
 </th>
 </tr>
-<tr id="i109" class="rowColor">
+<tr id="i114" class="altColor">
 <td class="colFirst"><a href="org/apache/datasketches/quantilescommon/QuantilesDoublesAPI.DoublesPartitionBoundaries.html" title="class in org.apache.datasketches.quantilescommon">QuantilesDoublesAPI.DoublesPartitionBoundaries</a></td>
 <th class="colLast" scope="row">
 <div class="block">This encapsulates the essential information needed to construct actual partitions and is returned from the
  <i>getPartitionBoundaries(int, QuantileSearchCritera)</i> method.</div>
 </th>
 </tr>
-<tr id="i110" class="altColor">
+<tr id="i115" class="rowColor">
 <td class="colFirst"><a href="org/apache/datasketches/quantilescommon/QuantilesDoublesSketchIterator.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesDoublesSketchIterator</a></td>
 <th class="colLast" scope="row">
 <div class="block">The quantiles sketch iterator for primitive type double.</div>
 </th>
 </tr>
-<tr id="i111" class="rowColor">
+<tr id="i116" class="altColor">
 <td class="colFirst"><a href="org/apache/datasketches/quantilescommon/QuantileSearchCriteria.html" title="enum in org.apache.datasketches.quantilescommon">QuantileSearchCriteria</a></td>
 <th class="colLast" scope="row">
 <div class="block">These search criteria are used by the KLL, REQ and Classic Quantiles sketches in the DataSketches library.</div>
 </th>
 </tr>
-<tr id="i112" class="altColor">
+<tr id="i117" class="rowColor">
 <td class="colFirst"><a href="org/apache/datasketches/quantilescommon/QuantilesFloatsAPI.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesFloatsAPI</a></td>
 <th class="colLast" scope="row">
 <div class="block">The Quantiles API for item type <i>float</i>.</div>
 </th>
 </tr>
-<tr id="i113" class="rowColor">
+<tr id="i118" class="altColor">
 <td class="colFirst"><a href="org/apache/datasketches/quantilescommon/QuantilesFloatsAPI.FloatsPartitionBoundaries.html" title="class in org.apache.datasketches.quantilescommon">QuantilesFloatsAPI.FloatsPartitionBoundaries</a></td>
 <th class="colLast" scope="row">
 <div class="block">This encapsulates the essential information needed to construct actual partitions and is returned from the
  <i>getPartitionBoundaries(int, QuantileSearchCritera)</i> method.</div>
 </th>
 </tr>
-<tr id="i114" class="altColor">
+<tr id="i119" class="rowColor">
 <td class="colFirst"><a href="org/apache/datasketches/quantilescommon/QuantilesFloatsSketchIterator.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesFloatsSketchIterator</a></td>
 <th class="colLast" scope="row">
 <div class="block">The quantiles sketch iterator for primitive type float.</div>
 </th>
 </tr>
-<tr id="i115" class="rowColor">
+<tr id="i120" class="altColor">
 <td class="colFirst"><a href="org/apache/datasketches/quantilescommon/QuantilesGenericAPI.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesGenericAPI</a>&lt;<a href="org/apache/datasketches/quantilescommon/QuantilesGenericAPI.html" title="type parameter in QuantilesGenericAPI">T</a>&gt;</td>
 <th class="colLast" scope="row">
 <div class="block">The Quantiles API for item type <i>generic</i>.</div>
 </th>
 </tr>
-<tr id="i116" class="altColor">
+<tr id="i121" class="rowColor">
 <td class="colFirst"><a href="org/apache/datasketches/quantilescommon/QuantilesGenericAPI.GenericPartitionBoundaries.html" title="class in org.apache.datasketches.quantilescommon">QuantilesGenericAPI.GenericPartitionBoundaries</a>&lt;<a href="org/apache/datasketches/quantilescommon/QuantilesGenericAPI.GenericPartitionBoundaries.html" title="type parameter in QuantilesGenericAPI.GenericPartitionBoundaries">T</a>&gt;</td>
 <th class="colLast" scope="row">
 <div class="block">This encapsulates the essential information needed to construct actual partitions and is returned from the
  <i>getPartitionBoundaries(int, QuantileSearchCritera)</i> method.</div>
 </th>
 </tr>
-<tr id="i117" class="rowColor">
+<tr id="i122" class="altColor">
 <td class="colFirst"><a href="org/apache/datasketches/quantilescommon/QuantilesGenericSketchIterator.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesGenericSketchIterator</a>&lt;<a href="org/apache/datasketches/quantilescommon/QuantilesGenericSketchIterator.html" title="type parameter in QuantilesGenericSketchIterator">T</a>&gt;</td>
 <th class="colLast" scope="row">
 <div class="block">The quantiles sketch iterator for generic types.</div>
 </th>
 </tr>
-<tr id="i118" class="altColor">
+<tr id="i123" class="rowColor">
 <td class="colFirst"><a href="org/apache/datasketches/quantilescommon/QuantilesSketchIterator.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesSketchIterator</a></td>
 <th class="colLast" scope="row">
 <div class="block">This is the base interface for the SketchIterator hierarchy used for viewing the
  non-ordered quantiles retained by a sketch.</div>
 </th>
 </tr>
-<tr id="i119" class="rowColor">
+<tr id="i124" class="altColor">
 <td class="colFirst"><a href="org/apache/datasketches/quantilescommon/QuantilesUtil.html" title="class in org.apache.datasketches.quantilescommon">QuantilesUtil</a></td>
 <th class="colLast" scope="row">
 <div class="block">Utilities for the quantiles sketches.</div>
 </th>
 </tr>
-<tr id="i120" class="altColor">
+<tr id="i125" class="rowColor">
 <td class="colFirst"><a href="org/apache/datasketches/cpc/QuickMergingValidation.html" title="class in org.apache.datasketches.cpc">QuickMergingValidation</a></td>
 <th class="colLast" scope="row">
 <div class="block">This code is used both by unit tests, for short running tests,
  and by the characterization repository for longer running, more exhaustive testing.</div>
 </th>
 </tr>
-<tr id="i121" class="rowColor">
+<tr id="i126" class="altColor">
 <td class="colFirst"><a href="org/apache/datasketches/thetacommon/QuickSelect.html" title="class in org.apache.datasketches.thetacommon">QuickSelect</a></td>
 <th class="colLast" scope="row">
 <div class="block">QuickSelect algorithm improved from Sedgewick.</div>
 </th>
 </tr>
-<tr id="i122" class="altColor">
+<tr id="i127" class="rowColor">
 <td class="colFirst"><a href="org/apache/datasketches/req/ReqDebug.html" title="interface in org.apache.datasketches.req">ReqDebug</a></td>
 <th class="colLast" scope="row">
 <div class="block">The signaling interface that allows comprehensive analysis of the ReqSketch and ReqCompactor
  while eliminating code clutter in the main classes.</div>
 </th>
 </tr>
-<tr id="i123" class="rowColor">
+<tr id="i128" class="altColor">
 <td class="colFirst"><a href="org/apache/datasketches/req/ReqSketch.html" title="class in org.apache.datasketches.req">ReqSketch</a></td>
 <th class="colLast" scope="row">
 <div class="block">This Relative Error Quantiles Sketch is the Java implementation based on the paper
@@ -907,120 +937,120 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
  Justin Thaler, Pavel Veselý, and loosely derived from a Python prototype written by Pavel Veselý.</div>
 </th>
 </tr>
-<tr id="i124" class="altColor">
+<tr id="i129" class="rowColor">
 <td class="colFirst"><a href="org/apache/datasketches/req/ReqSketchBuilder.html" title="class in org.apache.datasketches.req">ReqSketchBuilder</a></td>
 <th class="colLast" scope="row">
 <div class="block">For building a new ReqSketch</div>
 </th>
 </tr>
-<tr id="i125" class="rowColor">
+<tr id="i130" class="altColor">
 <td class="colFirst"><a href="org/apache/datasketches/req/ReqSketchIterator.html" title="class in org.apache.datasketches.req">ReqSketchIterator</a></td>
 <th class="colLast" scope="row">
 <div class="block">Iterator over all retained items of the ReqSketch.</div>
 </th>
 </tr>
-<tr id="i126" class="altColor">
+<tr id="i131" class="rowColor">
 <td class="colFirst"><a href="org/apache/datasketches/req/ReqSketchSortedView.html" title="class in org.apache.datasketches.req">ReqSketchSortedView</a></td>
 <th class="colLast" scope="row">
 <div class="block">The SortedView of the ReqSketch.</div>
 </th>
 </tr>
-<tr id="i127" class="rowColor">
+<tr id="i132" class="altColor">
 <td class="colFirst"><a href="org/apache/datasketches/req/ReqSketchSortedViewIterator.html" title="class in org.apache.datasketches.req">ReqSketchSortedViewIterator</a></td>
 <th class="colLast" scope="row">
 <div class="block">Iterator over ReqSketchSortedView.</div>
 </th>
 </tr>
-<tr id="i128" class="altColor">
+<tr id="i133" class="rowColor">
 <td class="colFirst"><a href="org/apache/datasketches/sampling/ReservoirItemsSketch.html" title="class in org.apache.datasketches.sampling">ReservoirItemsSketch</a>&lt;<a href="org/apache/datasketches/sampling/ReservoirItemsSketch.html" title="type parameter in ReservoirItemsSketch">T</a>&gt;</td>
 <th class="colLast" scope="row">
 <div class="block">This sketch provides a reservoir sample over an input stream of items.</div>
 </th>
 </tr>
-<tr id="i129" class="rowColor">
+<tr id="i134" class="altColor">
 <td class="colFirst"><a href="org/apache/datasketches/sampling/ReservoirItemsUnion.html" title="class in org.apache.datasketches.sampling">ReservoirItemsUnion</a>&lt;<a href="org/apache/datasketches/sampling/ReservoirItemsUnion.html" title="type parameter in ReservoirItemsUnion">T</a>&gt;</td>
 <th class="colLast" scope="row">
 <div class="block">Class to union reservoir samples of generic items.</div>
 </th>
 </tr>
-<tr id="i130" class="altColor">
+<tr id="i135" class="rowColor">
 <td class="colFirst"><a href="org/apache/datasketches/sampling/ReservoirLongsSketch.html" title="class in org.apache.datasketches.sampling">ReservoirLongsSketch</a></td>
 <th class="colLast" scope="row">
 <div class="block">This sketch provides a reservoir sample over an input stream of <code>long</code>s.</div>
 </th>
 </tr>
-<tr id="i131" class="rowColor">
+<tr id="i136" class="altColor">
 <td class="colFirst"><a href="org/apache/datasketches/sampling/ReservoirLongsUnion.html" title="class in org.apache.datasketches.sampling">ReservoirLongsUnion</a></td>
 <th class="colLast" scope="row">
 <div class="block">Class to union reservoir samples of longs.</div>
 </th>
 </tr>
-<tr id="i132" class="altColor">
+<tr id="i137" class="rowColor">
 <td class="colFirst"><a href="org/apache/datasketches/common/ResizeFactor.html" title="enum in org.apache.datasketches.common">ResizeFactor</a></td>
 <th class="colLast" scope="row">
 <div class="block">For the Families that accept this configuration parameter, it controls the size multiple that
  affects how fast the internal cache grows, when more space is required.</div>
 </th>
 </tr>
-<tr id="i133" class="rowColor">
+<tr id="i138" class="altColor">
 <td class="colFirst"><a href="org/apache/datasketches/sampling/SampleSubsetSummary.html" title="class in org.apache.datasketches.sampling">SampleSubsetSummary</a></td>
 <th class="colLast" scope="row">
 <div class="block">A simple object o capture the results of a subset sum query on a sampling sketch.</div>
 </th>
 </tr>
-<tr id="i134" class="altColor">
+<tr id="i139" class="rowColor">
 <td class="colFirst"><a href="org/apache/datasketches/tuple/SerializerDeserializer.html" title="class in org.apache.datasketches.tuple">SerializerDeserializer</a></td>
 <th class="colLast" scope="row">
 <div class="block">Multipurpose serializer-deserializer for a collection of sketches defined by the enum.</div>
 </th>
 </tr>
-<tr id="i135" class="rowColor">
+<tr id="i140" class="altColor">
 <td class="colFirst"><a href="org/apache/datasketches/tuple/SerializerDeserializer.SketchType.html" title="enum in org.apache.datasketches.tuple">SerializerDeserializer.SketchType</a></td>
 <th class="colLast" scope="row">
 <div class="block">Defines the sketch classes that this SerializerDeserializer can handle.</div>
 </th>
 </tr>
-<tr id="i136" class="altColor">
+<tr id="i141" class="rowColor">
 <td class="colFirst"><a href="org/apache/datasketches/theta/SetOperation.html" title="class in org.apache.datasketches.theta">SetOperation</a></td>
 <th class="colLast" scope="row">
 <div class="block">The parent API for all Set Operations</div>
 </th>
 </tr>
-<tr id="i137" class="rowColor">
+<tr id="i142" class="altColor">
 <td class="colFirst"><a href="org/apache/datasketches/theta/SetOperationBuilder.html" title="class in org.apache.datasketches.theta">SetOperationBuilder</a></td>
 <th class="colLast" scope="row">
 <div class="block">For building a new SetOperation.</div>
 </th>
 </tr>
-<tr id="i138" class="altColor">
+<tr id="i143" class="rowColor">
 <td class="colFirst"><a href="org/apache/datasketches/thetacommon/SetOperationCornerCases.html" title="class in org.apache.datasketches.thetacommon">SetOperationCornerCases</a></td>
 <th class="colLast" scope="row">
 <div class="block">Simplifies and speeds up set operations by resolving specific corner cases.</div>
 </th>
 </tr>
-<tr id="i139" class="rowColor">
+<tr id="i144" class="altColor">
 <td class="colFirst"><a href="org/apache/datasketches/thetacommon/SetOperationCornerCases.AnotbAction.html" title="enum in org.apache.datasketches.thetacommon">SetOperationCornerCases.AnotbAction</a></td>
 <th class="colLast" scope="row">&nbsp;</th>
 </tr>
-<tr id="i140" class="altColor">
+<tr id="i145" class="rowColor">
 <td class="colFirst"><a href="org/apache/datasketches/thetacommon/SetOperationCornerCases.CornerCase.html" title="enum in org.apache.datasketches.thetacommon">SetOperationCornerCases.CornerCase</a></td>
 <th class="colLast" scope="row">&nbsp;</th>
 </tr>
-<tr id="i141" class="rowColor">
+<tr id="i146" class="altColor">
 <td class="colFirst"><a href="org/apache/datasketches/thetacommon/SetOperationCornerCases.IntersectAction.html" title="enum in org.apache.datasketches.thetacommon">SetOperationCornerCases.IntersectAction</a></td>
 <th class="colLast" scope="row">&nbsp;</th>
 </tr>
-<tr id="i142" class="altColor">
+<tr id="i147" class="rowColor">
 <td class="colFirst"><a href="org/apache/datasketches/thetacommon/SetOperationCornerCases.UnionAction.html" title="enum in org.apache.datasketches.thetacommon">SetOperationCornerCases.UnionAction</a></td>
 <th class="colLast" scope="row">&nbsp;</th>
 </tr>
-<tr id="i143" class="rowColor">
+<tr id="i148" class="altColor">
 <td class="colFirst"><a href="org/apache/datasketches/theta/Sketch.html" title="class in org.apache.datasketches.theta">Sketch</a></td>
 <th class="colLast" scope="row">
 <div class="block">The top-level class for all theta sketches.</div>
 </th>
 </tr>
-<tr id="i144" class="altColor">
+<tr id="i149" class="rowColor">
 <td class="colFirst"><a href="org/apache/datasketches/tuple/Sketch.html" title="class in org.apache.datasketches.tuple">Sketch</a>&lt;<a href="org/apache/datasketches/tuple/Sketch.html" title="type parameter in Sketch">S</a> extends <a href="org/apache/datasketches/tuple/Summary.html" title="interface in org.apache.datasketches.tuple">Summary</a>&gt;</td>
 <th class="colLast" scope="row">
 <div class="block">This is an equivalent to org.apache.datasketches.theta.Sketch with
@@ -1028,212 +1058,212 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
  in the sketch.</div>
 </th>
 </tr>
-<tr id="i145" class="rowColor">
+<tr id="i150" class="altColor">
 <td class="colFirst"><a href="org/apache/datasketches/theta/Sketches.html" title="class in org.apache.datasketches.theta">Sketches</a></td>
 <th class="colLast" scope="row">
 <div class="block">This class brings together the common sketch and set operation creation methods and
  the public static methods into one place.</div>
 </th>
 </tr>
-<tr id="i146" class="altColor">
+<tr id="i151" class="rowColor">
 <td class="colFirst"><a href="org/apache/datasketches/tuple/Sketches.html" title="class in org.apache.datasketches.tuple">Sketches</a></td>
 <th class="colLast" scope="row">
 <div class="block">Convenient static methods to instantiate generic tuple sketches.</div>
 </th>
 </tr>
-<tr id="i147" class="rowColor">
+<tr id="i152" class="altColor">
 <td class="colFirst"><a href="org/apache/datasketches/common/SketchesArgumentException.html" title="class in org.apache.datasketches.common">SketchesArgumentException</a></td>
 <th class="colLast" scope="row">
 <div class="block">Illegal Arguments Exception class for the library</div>
 </th>
 </tr>
-<tr id="i148" class="altColor">
+<tr id="i153" class="rowColor">
 <td class="colFirst"><a href="org/apache/datasketches/common/SketchesException.html" title="class in org.apache.datasketches.common">SketchesException</a></td>
 <th class="colLast" scope="row">
 <div class="block">Exception class for the library</div>
 </th>
 </tr>
-<tr id="i149" class="rowColor">
+<tr id="i154" class="altColor">
 <td class="colFirst"><a href="org/apache/datasketches/common/SketchesReadOnlyException.html" title="class in org.apache.datasketches.common">SketchesReadOnlyException</a></td>
 <th class="colLast" scope="row">
 <div class="block">Write operation attempted on a read-only class.</div>
 </th>
 </tr>
-<tr id="i150" class="altColor">
+<tr id="i155" class="rowColor">
 <td class="colFirst"><a href="org/apache/datasketches/common/SketchesStateException.html" title="class in org.apache.datasketches.common">SketchesStateException</a></td>
 <th class="colLast" scope="row">
 <div class="block">Illegal State Exception class for the library</div>
 </th>
 </tr>
-<tr id="i151" class="rowColor">
+<tr id="i156" class="altColor">
 <td class="colFirst"><a href="org/apache/datasketches/quantilescommon/SortedView.html" title="interface in org.apache.datasketches.quantilescommon">SortedView</a></td>
 <th class="colLast" scope="row">
 <div class="block">This is the base interface for the Sorted View interface hierarchy.</div>
 </th>
 </tr>
-<tr id="i152" class="altColor">
+<tr id="i157" class="rowColor">
 <td class="colFirst"><a href="org/apache/datasketches/quantilescommon/SortedViewIterator.html" title="interface in org.apache.datasketches.quantilescommon">SortedViewIterator</a></td>
 <th class="colLast" scope="row">
 <div class="block">This is the base interface for the SortedViewIterator hierarchy used with a SortedView obtained
  from a quantile-type sketch.</div>
 </th>
 </tr>
-<tr id="i153" class="rowColor">
+<tr id="i158" class="altColor">
 <td class="colFirst"><a href="org/apache/datasketches/cpc/StreamingValidation.html" title="class in org.apache.datasketches.cpc">StreamingValidation</a></td>
 <th class="colLast" scope="row">
 <div class="block">This code is used both by unit tests, for short running tests,
  and by the characterization repository for longer running, more exhaustive testing.</div>
 </th>
 </tr>
-<tr id="i154" class="altColor">
+<tr id="i159" class="rowColor">
 <td class="colFirst"><a href="org/apache/datasketches/tuple/Summary.html" title="interface in org.apache.datasketches.tuple">Summary</a></td>
 <th class="colLast" scope="row">
 <div class="block">Interface for user-defined Summary, which is associated with every hash in a tuple sketch</div>
 </th>
 </tr>
-<tr id="i155" class="rowColor">
+<tr id="i160" class="altColor">
 <td class="colFirst"><a href="org/apache/datasketches/tuple/SummaryDeserializer.html" title="interface in org.apache.datasketches.tuple">SummaryDeserializer</a>&lt;<a href="org/apache/datasketches/tuple/SummaryDeserializer.html" title="type parameter in SummaryDeserializer">S</a> extends <a href="org/apache/datasketches/tuple/Summary.html" title="interface in org.apache.datasketches.tuple">Summary</a>&gt;</td>
 <th class="colLast" scope="row">
 <div class="block">Interface for deserializing user-defined Summary</div>
 </th>
 </tr>
-<tr id="i156" class="altColor">
+<tr id="i161" class="rowColor">
 <td class="colFirst"><a href="org/apache/datasketches/tuple/SummaryFactory.html" title="interface in org.apache.datasketches.tuple">SummaryFactory</a>&lt;<a href="org/apache/datasketches/tuple/SummaryFactory.html" title="type parameter in SummaryFactory">S</a> extends <a href="org/apache/datasketches/tuple/Summary.html" title="interface in org.apache.datasketches.tuple">Summary</a>&gt;</td>
 <th class="colLast" scope="row">
 <div class="block">Interface for user-defined SummaryFactory</div>
 </th>
 </tr>
-<tr id="i157" class="rowColor">
+<tr id="i162" class="altColor">
 <td class="colFirst"><a href="org/apache/datasketches/tuple/SummarySetOperations.html" title="interface in org.apache.datasketches.tuple">SummarySetOperations</a>&lt;<a href="org/apache/datasketches/tuple/SummarySetOperations.html" title="type parameter in SummarySetOperations">S</a> extends <a href="org/apache/datasketches/tuple/Summary.html" title="interface in org.apache.datasketches.tuple">Summary</a>&gt;</td>
 <th class="colLast" scope="row">
 <div class="block">This is to provide methods of producing unions and intersections of two Summary objects.</div>
 </th>
 </tr>
-<tr id="i158" class="altColor">
+<tr id="i163" class="rowColor">
 <td class="colFirst"><a href="org/apache/datasketches/common/SuppressFBWarnings.html" title="annotation in org.apache.datasketches.common">SuppressFBWarnings</a></td>
 <th class="colLast" scope="row">
 <div class="block">Used to suppress SpotBug warnings.</div>
 </th>
 </tr>
-<tr id="i159" class="rowColor">
+<tr id="i164" class="altColor">
 <td class="colFirst"><a href="org/apache/datasketches/cpc/TestUtil.html" title="class in org.apache.datasketches.cpc">TestUtil</a></td>
 <th class="colLast" scope="row">&nbsp;</th>
 </tr>
-<tr id="i160" class="altColor">
+<tr id="i165" class="rowColor">
 <td class="colFirst"><a href="org/apache/datasketches/hll/TgtHllType.html" title="enum in org.apache.datasketches.hll">TgtHllType</a></td>
 <th class="colLast" scope="row">
 <div class="block">Specifies the target type of HLL sketch to be created.</div>
 </th>
 </tr>
-<tr id="i161" class="rowColor">
+<tr id="i166" class="altColor">
 <td class="colFirst"><a href="org/apache/datasketches/thetacommon/ThetaUtil.html" title="class in org.apache.datasketches.thetacommon">ThetaUtil</a></td>
 <th class="colLast" scope="row">
 <div class="block">Utility methods for the Theta Family of sketches</div>
 </th>
 </tr>
-<tr id="i162" class="altColor">
+<tr id="i167" class="rowColor">
 <td class="colFirst"><a href="org/apache/datasketches/tuple/TupleSketchIterator.html" title="class in org.apache.datasketches.tuple">TupleSketchIterator</a>&lt;<a href="org/apache/datasketches/tuple/TupleSketchIterator.html" title="type parameter in TupleSketchIterator">S</a> extends <a href="org/apache/datasketches/tuple/Summary.html" title="interface in org.apache.datasketches.tuple">Summary</a>&gt;</td>
 <th class="colLast" scope="row">
 <div class="block">Iterator over a generic tuple sketch</div>
 </th>
 </tr>
-<tr id="i163" class="rowColor">
+<tr id="i168" class="altColor">
 <td class="colFirst"><a href="org/apache/datasketches/hll/Union.html" title="class in org.apache.datasketches.hll">Union</a></td>
 <th class="colLast" scope="row">
 <div class="block">This performs union operations for all HllSketches.</div>
 </th>
 </tr>
-<tr id="i164" class="altColor">
+<tr id="i169" class="rowColor">
 <td class="colFirst"><a href="org/apache/datasketches/theta/Union.html" title="class in org.apache.datasketches.theta">Union</a></td>
 <th class="colLast" scope="row">
 <div class="block">Compute the union of two or more theta sketches.</div>
 </th>
 </tr>
-<tr id="i165" class="rowColor">
+<tr id="i170" class="altColor">
 <td class="colFirst"><a href="org/apache/datasketches/tuple/Union.html" title="class in org.apache.datasketches.tuple">Union</a>&lt;<a href="org/apache/datasketches/tuple/Union.html" title="type parameter in Union">S</a> extends <a href="org/apache/datasketches/tuple/Summary.html" title="interface in org.apache.datasketches.tuple">Summary</a>&gt;</td>
 <th class="colLast" scope="row">
 <div class="block">Compute the union of two or more generic tuple sketches or generic tuple sketches combined with
  theta sketches.</div>
 </th>
 </tr>
-<tr id="i166" class="altColor">
+<tr id="i171" class="rowColor">
 <td class="colFirst"><a href="org/apache/datasketches/hllmap/UniqueCountMap.html" title="class in org.apache.datasketches.hllmap">UniqueCountMap</a></td>
 <th class="colLast" scope="row">
 <div class="block">This is a real-time, key-value HLL mapping sketch that tracks approximate unique counts of
  identifiers (the values) associated with each key.</div>
 </th>
 </tr>
-<tr id="i167" class="rowColor">
+<tr id="i172" class="altColor">
 <td class="colFirst"><a href="org/apache/datasketches/tuple/UpdatableSketch.html" title="class in org.apache.datasketches.tuple">UpdatableSketch</a>&lt;<a href="org/apache/datasketches/tuple/UpdatableSketch.html" title="type parameter in UpdatableSketch">U</a>,&#8203;<a href="org/apache/datasketches/tuple/UpdatableSketch.html" title="type parameter in UpdatableSketch">S</a> extends <a href="org/apache/datasketches/tuple/UpdatableSummary.html" title="interface in org.apache.datasketches.t [...]
 <th class="colLast" scope="row">
 <div class="block">An extension of QuickSelectSketch&lt;S&gt;, which can be updated with many types of keys.</div>
 </th>
 </tr>
-<tr id="i168" class="altColor">
+<tr id="i173" class="rowColor">
 <td class="colFirst"><a href="org/apache/datasketches/tuple/UpdatableSketchBuilder.html" title="class in org.apache.datasketches.tuple">UpdatableSketchBuilder</a>&lt;<a href="org/apache/datasketches/tuple/UpdatableSketchBuilder.html" title="type parameter in UpdatableSketchBuilder">U</a>,&#8203;<a href="org/apache/datasketches/tuple/UpdatableSketchBuilder.html" title="type parameter in UpdatableSketchBuilder">S</a> extends <a href="org/apache/datasketches/tuple/UpdatableSummary.html" tit [...]
 <th class="colLast" scope="row">
 <div class="block">For building a new generic tuple UpdatableSketch</div>
 </th>
 </tr>
-<tr id="i169" class="rowColor">
+<tr id="i174" class="altColor">
 <td class="colFirst"><a href="org/apache/datasketches/tuple/UpdatableSummary.html" title="interface in org.apache.datasketches.tuple">UpdatableSummary</a>&lt;<a href="org/apache/datasketches/tuple/UpdatableSummary.html" title="type parameter in UpdatableSummary">U</a>&gt;</td>
 <th class="colLast" scope="row">
 <div class="block">Interface for updating user-defined Summary</div>
 </th>
 </tr>
-<tr id="i170" class="altColor">
+<tr id="i175" class="rowColor">
 <td class="colFirst"><a href="org/apache/datasketches/quantiles/UpdateDoublesSketch.html" title="class in org.apache.datasketches.quantiles">UpdateDoublesSketch</a></td>
 <th class="colLast" scope="row">&nbsp;</th>
 </tr>
-<tr id="i171" class="rowColor">
+<tr id="i176" class="altColor">
 <td class="colFirst"><a href="org/apache/datasketches/theta/UpdateReturnState.html" title="enum in org.apache.datasketches.theta">UpdateReturnState</a></td>
 <th class="colLast" scope="row">
 <div class="block"><a href="./resources/dictionary.html#updateReturnState">See Update Return State</a></div>
 </th>
 </tr>
-<tr id="i172" class="altColor">
+<tr id="i177" class="rowColor">
 <td class="colFirst"><a href="org/apache/datasketches/theta/UpdateSketch.html" title="class in org.apache.datasketches.theta">UpdateSketch</a></td>
 <th class="colLast" scope="row">
 <div class="block">The parent class for the  Update Sketch families, such as QuickSelect and Alpha.</div>
 </th>
 </tr>
-<tr id="i173" class="rowColor">
+<tr id="i178" class="altColor">
 <td class="colFirst"><a href="org/apache/datasketches/theta/UpdateSketchBuilder.html" title="class in org.apache.datasketches.theta">UpdateSketchBuilder</a></td>
 <th class="colLast" scope="row">
 <div class="block">For building a new UpdateSketch.</div>
 </th>
 </tr>
-<tr id="i174" class="altColor">
+<tr id="i179" class="rowColor">
 <td class="colFirst"><a href="org/apache/datasketches/common/Util.html" title="class in org.apache.datasketches.common">Util</a></td>
 <th class="colLast" scope="row">
 <div class="block">Common utility functions.</div>
 </th>
 </tr>
-<tr id="i175" class="rowColor">
+<tr id="i180" class="altColor">
 <td class="colFirst"><a href="org/apache/datasketches/tuple/Util.html" title="class in org.apache.datasketches.tuple">Util</a></td>
 <th class="colLast" scope="row">
 <div class="block">Common utility functions for Tuples</div>
 </th>
 </tr>
-<tr id="i176" class="altColor">
+<tr id="i181" class="rowColor">
 <td class="colFirst"><a href="org/apache/datasketches/sampling/VarOptItemsSamples.html" title="class in org.apache.datasketches.sampling">VarOptItemsSamples</a>&lt;<a href="org/apache/datasketches/sampling/VarOptItemsSamples.html" title="type parameter in VarOptItemsSamples">T</a>&gt;</td>
 <th class="colLast" scope="row">
 <div class="block">This class provides access to the samples contained in a VarOptItemsSketch.</div>
 </th>
 </tr>
-<tr id="i177" class="rowColor">
+<tr id="i182" class="altColor">
 <td class="colFirst"><a href="org/apache/datasketches/sampling/VarOptItemsSketch.html" title="class in org.apache.datasketches.sampling">VarOptItemsSketch</a>&lt;<a href="org/apache/datasketches/sampling/VarOptItemsSketch.html" title="type parameter in VarOptItemsSketch">T</a>&gt;</td>
 <th class="colLast" scope="row">
 <div class="block">This sketch provides a variance optimal sample over an input stream of weighted items.</div>
 </th>
 </tr>
-<tr id="i178" class="altColor">
+<tr id="i183" class="rowColor">
 <td class="colFirst"><a href="org/apache/datasketches/sampling/VarOptItemsUnion.html" title="class in org.apache.datasketches.sampling">VarOptItemsUnion</a>&lt;<a href="org/apache/datasketches/sampling/VarOptItemsUnion.html" title="type parameter in VarOptItemsUnion">T</a>&gt;</td>
 <th class="colLast" scope="row">
 <div class="block">Provides a unioning operation over varopt sketches.</div>
 </th>
 </tr>
-<tr id="i179" class="rowColor">
+<tr id="i184" class="altColor">
 <td class="colFirst"><a href="org/apache/datasketches/hash/XxHash.html" title="class in org.apache.datasketches.hash">XxHash</a></td>
 <th class="colLast" scope="row">
 <div class="block">The XxHash is a fast, non-cryptographic, 64-bit hash function that has
diff --git a/docs/master/allclasses.html b/docs/master/allclasses.html
index cb1f37ec..32de8877 100644
--- a/docs/master/allclasses.html
+++ b/docs/master/allclasses.html
@@ -89,7 +89,7 @@
 <li><a href="org/apache/datasketches/quantilescommon/GenericInequalitySearch.html" title="class in org.apache.datasketches.quantilescommon">GenericInequalitySearch</a></li>
 <li><a href="org/apache/datasketches/quantilescommon/GenericInequalitySearch.Inequality.html" title="enum in org.apache.datasketches.quantilescommon">GenericInequalitySearch.Inequality</a></li>
 <li><a href="org/apache/datasketches/quantilescommon/GenericSortedView.html" title="interface in org.apache.datasketches.quantilescommon"><span class="interfaceName">GenericSortedView</span></a></li>
-<li><a href="org/apache/datasketches/quantilescommon/GenericSortedViewIterator.html" title="interface in org.apache.datasketches.quantilescommon"><span class="interfaceName">GenericSortedViewIterator</span></a></li>
+<li><a href="org/apache/datasketches/quantilescommon/GenericSortedViewIterator.html" title="class in org.apache.datasketches.quantilescommon">GenericSortedViewIterator</a></li>
 <li><a href="org/apache/datasketches/fdt/Group.html" title="class in org.apache.datasketches.fdt">Group</a></li>
 <li><a href="org/apache/datasketches/theta/HashIterator.html" title="interface in org.apache.datasketches.theta"><span class="interfaceName">HashIterator</span></a></li>
 <li><a href="org/apache/datasketches/thetacommon/HashOperations.html" title="class in org.apache.datasketches.thetacommon">HashOperations</a></li>
@@ -108,7 +108,7 @@
 <li><a href="org/apache/datasketches/frequencies/ItemsSketch.Row.html" title="class in org.apache.datasketches.frequencies">ItemsSketch.Row</a></li>
 <li><a href="org/apache/datasketches/quantiles/ItemsSketchIterator.html" title="class in org.apache.datasketches.quantiles">ItemsSketchIterator</a></li>
 <li><a href="org/apache/datasketches/quantiles/ItemsSketchSortedView.html" title="class in org.apache.datasketches.quantiles">ItemsSketchSortedView</a></li>
-<li><a href="org/apache/datasketches/quantiles/ItemsSketchSortedViewIterator.html" title="class in org.apache.datasketches.quantiles">ItemsSketchSortedViewIterator</a></li>
+<li><a href="org/apache/datasketches/quantiles/ItemsSketchSortedView.ItemsSketchSortedViewIterator.html" title="class in org.apache.datasketches.quantiles">ItemsSketchSortedView.ItemsSketchSortedViewIterator</a></li>
 <li><a href="org/apache/datasketches/quantiles/ItemsUnion.html" title="class in org.apache.datasketches.quantiles">ItemsUnion</a></li>
 <li><a href="org/apache/datasketches/theta/JaccardSimilarity.html" title="class in org.apache.datasketches.theta">JaccardSimilarity</a></li>
 <li><a href="org/apache/datasketches/tuple/JaccardSimilarity.html" title="class in org.apache.datasketches.tuple">JaccardSimilarity</a></li>
@@ -120,7 +120,12 @@
 <li><a href="org/apache/datasketches/kll/KllFloatsSketchIterator.html" title="class in org.apache.datasketches.kll">KllFloatsSketchIterator</a></li>
 <li><a href="org/apache/datasketches/kll/KllFloatsSketchSortedView.html" title="class in org.apache.datasketches.kll">KllFloatsSketchSortedView</a></li>
 <li><a href="org/apache/datasketches/kll/KllFloatsSketchSortedViewIterator.html" title="class in org.apache.datasketches.kll">KllFloatsSketchSortedViewIterator</a></li>
+<li><a href="org/apache/datasketches/kll/KllItemsSketch.html" title="class in org.apache.datasketches.kll">KllItemsSketch</a></li>
+<li><a href="org/apache/datasketches/kll/KllItemsSketchIterator.html" title="class in org.apache.datasketches.kll">KllItemsSketchIterator</a></li>
+<li><a href="org/apache/datasketches/kll/KllItemsSketchSortedView.html" title="class in org.apache.datasketches.kll">KllItemsSketchSortedView</a></li>
+<li><a href="org/apache/datasketches/kll/KllItemsSketchSortedView.KllItemsSketchSortedViewIterator.html" title="class in org.apache.datasketches.kll">KllItemsSketchSortedView.KllItemsSketchSortedViewIterator</a></li>
 <li><a href="org/apache/datasketches/kll/KllSketch.html" title="class in org.apache.datasketches.kll">KllSketch</a></li>
+<li><a href="org/apache/datasketches/kll/KllSketch.SketchStructure.html" title="enum in org.apache.datasketches.kll">KllSketch.SketchStructure</a></li>
 <li><a href="org/apache/datasketches/kll/KllSketch.SketchType.html" title="enum in org.apache.datasketches.kll">KllSketch.SketchType</a></li>
 <li><a href="org/apache/datasketches/frequencies/LongsSketch.html" title="class in org.apache.datasketches.frequencies">LongsSketch</a></li>
 <li><a href="org/apache/datasketches/frequencies/LongsSketch.Row.html" title="class in org.apache.datasketches.frequencies">LongsSketch.Row</a></li>
diff --git a/docs/master/constant-values.html b/docs/master/constant-values.html
index 66b2dc4d..910a6bf1 100644
--- a/docs/master/constant-values.html
+++ b/docs/master/constant-values.html
@@ -222,7 +222,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <ul class="blockList">
 <li class="blockList">
 <table class="constantsSummary">
-<caption><span>org.apache.datasketches.quantilescommon.<a href="org/apache/datasketches/quantilescommon/QuantilesUtil.html" title="class in org.apache.datasketches.quantilescommon">QuantilesUtil</a></span><span class="tabEnd">&nbsp;</span></caption>
+<caption><span>org.apache.datasketches.quantilescommon.<a href="org/apache/datasketches/quantilescommon/QuantilesAPI.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesAPI</a></span><span class="tabEnd">&nbsp;</span></caption>
 <tr>
 <th class="colFirst" scope="col">Modifier and Type</th>
 <th class="colSecond" scope="col">Constant Field</th>
@@ -230,11 +230,39 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><a id="org.apache.datasketches.quantilescommon.QuantilesUtil.THROWS_EMPTY">
+<td class="colFirst"><a id="org.apache.datasketches.quantilescommon.QuantilesAPI.EMPTY_MSG">
 <!--   -->
 </a><code>public&nbsp;static&nbsp;final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a></code></td>
-<th class="colSecond" scope="row"><code><a href="org/apache/datasketches/quantilescommon/QuantilesUtil.html#THROWS_EMPTY">THROWS_EMPTY</a></code></th>
-<td class="colLast"><code>"The sketch must not be empty at this point."</code></td>
+<th class="colSecond" scope="row"><code><a href="org/apache/datasketches/quantilescommon/QuantilesAPI.html#EMPTY_MSG">EMPTY_MSG</a></code></th>
+<td class="colLast"><code>"The sketch must not be empty for this operation. "</code></td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><a id="org.apache.datasketches.quantilescommon.QuantilesAPI.MEM_REQ_SVR_NULL_MSG">
+<!--   -->
+</a><code>public&nbsp;static&nbsp;final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a></code></td>
+<th class="colSecond" scope="row"><code><a href="org/apache/datasketches/quantilescommon/QuantilesAPI.html#MEM_REQ_SVR_NULL_MSG">MEM_REQ_SVR_NULL_MSG</a></code></th>
+<td class="colLast"><code>"MemoryRequestServer must not be null. "</code></td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><a id="org.apache.datasketches.quantilescommon.QuantilesAPI.NOT_SINGLE_ITEM_MSG">
+<!--   -->
+</a><code>public&nbsp;static&nbsp;final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a></code></td>
+<th class="colSecond" scope="row"><code><a href="org/apache/datasketches/quantilescommon/QuantilesAPI.html#NOT_SINGLE_ITEM_MSG">NOT_SINGLE_ITEM_MSG</a></code></th>
+<td class="colLast"><code>"Sketch does not have just one item. "</code></td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><a id="org.apache.datasketches.quantilescommon.QuantilesAPI.TGT_IS_READ_ONLY_MSG">
+<!--   -->
+</a><code>public&nbsp;static&nbsp;final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a></code></td>
+<th class="colSecond" scope="row"><code><a href="org/apache/datasketches/quantilescommon/QuantilesAPI.html#TGT_IS_READ_ONLY_MSG">TGT_IS_READ_ONLY_MSG</a></code></th>
+<td class="colLast"><code>"Target sketch is Read Only, cannot write. "</code></td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><a id="org.apache.datasketches.quantilescommon.QuantilesAPI.UNSUPPORTED_MSG">
+<!--   -->
+</a><code>public&nbsp;static&nbsp;final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a></code></td>
+<th class="colSecond" scope="row"><code><a href="org/apache/datasketches/quantilescommon/QuantilesAPI.html#UNSUPPORTED_MSG">UNSUPPORTED_MSG</a></code></th>
+<td class="colLast"><code>"Unsupported operation for this Sketch Type. "</code></td>
 </tr>
 </tbody>
 </table>
diff --git a/docs/master/deprecated-list.html b/docs/master/deprecated-list.html
index cd27555a..80c65cf7 100644
--- a/docs/master/deprecated-list.html
+++ b/docs/master/deprecated-list.html
@@ -138,39 +138,58 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 </tr>
 <tbody>
 <tr class="altColor">
-<th class="colDeprecatedItemName" scope="row"><a href="org/apache/datasketches/kll/KllSketch.html#getCurrentCompactSerializedSizeBytes()">org.apache.datasketches.kll.KllSketch.getCurrentCompactSerializedSizeBytes()</a></th>
-<td class="colLast">
-<div class="deprecationComment">version 4.0.0 use <a href="org/apache/datasketches/kll/KllSketch.html#getSerializedSizeBytes()"><code>KllSketch.getSerializedSizeBytes()</code></a>.</div>
-</td>
+<th class="colDeprecatedItemName" scope="row"><a href="org/apache/datasketches/common/ArrayOfBooleansSerDe.html#deserializeFromMemory(org.apache.datasketches.memory.Memory,int)">org.apache.datasketches.common.ArrayOfBooleansSerDe.deserializeFromMemory&#8203;(Memory, int)</a></th>
+<td class="colLast"></td>
 </tr>
 <tr class="rowColor">
-<th class="colDeprecatedItemName" scope="row"><a href="org/apache/datasketches/kll/KllSketch.html#getCurrentUpdatableSerializedSizeBytes()">org.apache.datasketches.kll.KllSketch.getCurrentUpdatableSerializedSizeBytes()</a></th>
+<th class="colDeprecatedItemName" scope="row"><a href="org/apache/datasketches/common/ArrayOfDoublesSerDe.html#deserializeFromMemory(org.apache.datasketches.memory.Memory,int)">org.apache.datasketches.common.ArrayOfDoublesSerDe.deserializeFromMemory&#8203;(Memory, int)</a></th>
+<td class="colLast"></td>
+</tr>
+<tr class="altColor">
+<th class="colDeprecatedItemName" scope="row"><a href="org/apache/datasketches/common/ArrayOfItemsSerDe.html#deserializeFromMemory(org.apache.datasketches.memory.Memory,int)">org.apache.datasketches.common.ArrayOfItemsSerDe.deserializeFromMemory&#8203;(Memory, int)</a></th>
 <td class="colLast">
-<div class="deprecationComment">version 4.0.0 use <a href="org/apache/datasketches/kll/KllSketch.html#getSerializedSizeBytes()"><code>KllSketch.getSerializedSizeBytes()</code></a>.</div>
+<div class="deprecationComment">use
+ <a href="org/apache/datasketches/common/ArrayOfItemsSerDe.html#deserializeFromMemory(org.apache.datasketches.memory.Memory,long,int)"><code>deserializeFromMemory(mem, offset, numItems)</code></a></div>
 </td>
 </tr>
+<tr class="rowColor">
+<th class="colDeprecatedItemName" scope="row"><a href="org/apache/datasketches/common/ArrayOfLongsSerDe.html#deserializeFromMemory(org.apache.datasketches.memory.Memory,int)">org.apache.datasketches.common.ArrayOfLongsSerDe.deserializeFromMemory&#8203;(Memory, int)</a></th>
+<td class="colLast"></td>
+</tr>
+<tr class="altColor">
+<th class="colDeprecatedItemName" scope="row"><a href="org/apache/datasketches/common/ArrayOfNumbersSerDe.html#deserializeFromMemory(org.apache.datasketches.memory.Memory,int)">org.apache.datasketches.common.ArrayOfNumbersSerDe.deserializeFromMemory&#8203;(Memory, int)</a></th>
+<td class="colLast"></td>
+</tr>
+<tr class="rowColor">
+<th class="colDeprecatedItemName" scope="row"><a href="org/apache/datasketches/common/ArrayOfStringsSerDe.html#deserializeFromMemory(org.apache.datasketches.memory.Memory,int)">org.apache.datasketches.common.ArrayOfStringsSerDe.deserializeFromMemory&#8203;(Memory, int)</a></th>
+<td class="colLast"></td>
+</tr>
 <tr class="altColor">
+<th class="colDeprecatedItemName" scope="row"><a href="org/apache/datasketches/common/ArrayOfUtf16StringsSerDe.html#deserializeFromMemory(org.apache.datasketches.memory.Memory,int)">org.apache.datasketches.common.ArrayOfUtf16StringsSerDe.deserializeFromMemory&#8203;(Memory, int)</a></th>
+<td class="colLast"></td>
+</tr>
+<tr class="rowColor">
 <th class="colDeprecatedItemName" scope="row"><a href="org/apache/datasketches/theta/PairwiseSetOperations.html#aNotB(org.apache.datasketches.theta.Sketch,org.apache.datasketches.theta.Sketch)">org.apache.datasketches.theta.PairwiseSetOperations.aNotB&#8203;(Sketch, Sketch)</a></th>
 <td class="colLast">
 <div class="deprecationComment">v2.0.0. Use <a href="org/apache/datasketches/theta/AnotB.html#aNotB(org.apache.datasketches.theta.Sketch,org.apache.datasketches.theta.Sketch)"><code>AnotB.aNotB(Sketch, Sketch)</code></a> instead, which has more
  complete seed handling.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <th class="colDeprecatedItemName" scope="row"><a href="org/apache/datasketches/theta/PairwiseSetOperations.html#intersect(org.apache.datasketches.theta.Sketch,org.apache.datasketches.theta.Sketch)">org.apache.datasketches.theta.PairwiseSetOperations.intersect&#8203;(Sketch, Sketch)</a></th>
 <td class="colLast">
 <div class="deprecationComment">v2.0.0. Use <a href="org/apache/datasketches/theta/Intersection.html#intersect(org.apache.datasketches.theta.Sketch,org.apache.datasketches.theta.Sketch)"><code>Intersection.intersect(Sketch, Sketch)</code></a> instead, which has more
  complete seed handling.</div>
 </td>
 </tr>
-<tr class="altColor">
+<tr class="rowColor">
 <th class="colDeprecatedItemName" scope="row"><a href="org/apache/datasketches/theta/PairwiseSetOperations.html#union(org.apache.datasketches.theta.CompactSketch,org.apache.datasketches.theta.CompactSketch)">org.apache.datasketches.theta.PairwiseSetOperations.union&#8203;(CompactSketch, CompactSketch)</a></th>
 <td class="colLast">
 <div class="deprecationComment">v2.0.0. Please use <a href="org/apache/datasketches/theta/Union.html#union(org.apache.datasketches.theta.Sketch,org.apache.datasketches.theta.Sketch)"><code>Union.union(Sketch, Sketch)</code></a> instead, which has more
  complete seed handling.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <th class="colDeprecatedItemName" scope="row"><a href="org/apache/datasketches/tuple/Sketches.html#heapifyUpdatableSketch(org.apache.datasketches.memory.Memory,org.apache.datasketches.tuple.SummaryDeserializer,org.apache.datasketches.tuple.SummaryFactory)">org.apache.datasketches.tuple.Sketches.heapifyUpdatableSketch&#8203;(Memory, SummaryDeserializer&lt;S&gt;, SummaryFactory&lt;S&gt;)</a></th>
 <td class="colLast">
 <div class="deprecationComment">As of 3.0.0, heapifying an UpdatableSketch is deprecated.
diff --git a/docs/master/index-all.html b/docs/master/index-all.html
index 246aa422..0b1ab037 100644
--- a/docs/master/index-all.html
+++ b/docs/master/index-all.html
@@ -718,6 +718,12 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <dd>
 <div class="block">The Compact Sketch family is a member of the Theta Sketch Framework of sketches.</div>
 </dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/kll/KllSketch.SketchStructure.html#COMPACT_EMPTY">COMPACT_EMPTY</a></span> - org.apache.datasketches.kll.<a href="org/apache/datasketches/kll/KllSketch.SketchStructure.html" title="enum in org.apache.datasketches.kll">KllSketch.SketchStructure</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/kll/KllSketch.SketchStructure.html#COMPACT_FULL">COMPACT_FULL</a></span> - org.apache.datasketches.kll.<a href="org/apache/datasketches/kll/KllSketch.SketchStructure.html" title="enum in org.apache.datasketches.kll">KllSketch.SketchStructure</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/kll/KllSketch.SketchStructure.html#COMPACT_SINGLE">COMPACT_SINGLE</a></span> - org.apache.datasketches.kll.<a href="org/apache/datasketches/kll/KllSketch.SketchStructure.html" title="enum in org.apache.datasketches.kll">KllSketch.SketchStructure</a></dt>
+<dd>&nbsp;</dd>
 <dt><a href="org/apache/datasketches/quantiles/CompactDoublesSketch.html" title="class in org.apache.datasketches.quantiles"><span class="typeNameLink">CompactDoublesSketch</span></a> - Class in <a href="org/apache/datasketches/quantiles/package-summary.html">org.apache.datasketches.quantiles</a></dt>
 <dd>
 <div class="block">Compact sketches are inherently <i>read ony</i>.</div>
@@ -807,6 +813,10 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <dd>
 <div class="block">Return a deep copy of this sketch onto the Java heap with the specified TgtHllType.</div>
 </dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/common/ByteArrayUtil.html#copyBytes(byte%5B%5D,int,byte%5B%5D,int,int)">copyBytes(byte[], int, byte[], int, int)</a></span> - Static method in class org.apache.datasketches.common.<a href="org/apache/datasketches/common/ByteArrayUtil.html" title="class in org.apache.datasketches.common">ByteArrayUtil</a></dt>
+<dd>
+<div class="block">Copies bytes from source to target with offsets on both the source and target.</div>
+</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/tuple/Util.html#copySummaryArray(S%5B%5D)">copySummaryArray(S[])</a></span> - Static method in class org.apache.datasketches.tuple.<a href="org/apache/datasketches/tuple/Util.html" title="class in org.apache.datasketches.tuple">Util</a></dt>
 <dd>
 <div class="block">Will copy compact summary arrays as well as hashed summary tables (with nulls).</div>
@@ -955,20 +965,51 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <div class="block">Optional call that describes the details of the results of the search.</div>
 </dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/common/ArrayOfBooleansSerDe.html#deserializeFromMemory(org.apache.datasketches.memory.Memory,int)">deserializeFromMemory(Memory, int)</a></span> - Method in class org.apache.datasketches.common.<a href="org/apache/datasketches/common/ArrayOfBooleansSerDe.html" title="class in org.apache.datasketches.common">ArrayOfBooleansSerDe</a></dt>
-<dd>&nbsp;</dd>
+<dd>
+<div class="deprecationBlock"><span class="deprecatedLabel">Deprecated.</span></div>
+</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/common/ArrayOfDoublesSerDe.html#deserializeFromMemory(org.apache.datasketches.memory.Memory,int)">deserializeFromMemory(Memory, int)</a></span> - Method in class org.apache.datasketches.common.<a href="org/apache/datasketches/common/ArrayOfDoublesSerDe.html" title="class in org.apache.datasketches.common">ArrayOfDoublesSerDe</a></dt>
-<dd>&nbsp;</dd>
+<dd>
+<div class="deprecationBlock"><span class="deprecatedLabel">Deprecated.</span></div>
+</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/common/ArrayOfItemsSerDe.html#deserializeFromMemory(org.apache.datasketches.memory.Memory,int)">deserializeFromMemory(Memory, int)</a></span> - Method in class org.apache.datasketches.common.<a href="org/apache/datasketches/common/ArrayOfItemsSerDe.html" title="class in org.apache.datasketches.common">ArrayOfItemsSerDe</a></dt>
 <dd>
-<div class="block">Deserialize an array of items from a given Memory object.</div>
+<div class="deprecationBlock"><span class="deprecatedLabel">Deprecated.</span>
+<div class="deprecationComment">use
+ <a href="org/apache/datasketches/common/ArrayOfItemsSerDe.html#deserializeFromMemory(org.apache.datasketches.memory.Memory,long,int)"><code>deserializeFromMemory(mem, offset, numItems)</code></a></div>
+</div>
 </dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/common/ArrayOfLongsSerDe.html#deserializeFromMemory(org.apache.datasketches.memory.Memory,int)">deserializeFromMemory(Memory, int)</a></span> - Method in class org.apache.datasketches.common.<a href="org/apache/datasketches/common/ArrayOfLongsSerDe.html" title="class in org.apache.datasketches.common">ArrayOfLongsSerDe</a></dt>
-<dd>&nbsp;</dd>
+<dd>
+<div class="deprecationBlock"><span class="deprecatedLabel">Deprecated.</span></div>
+</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/common/ArrayOfNumbersSerDe.html#deserializeFromMemory(org.apache.datasketches.memory.Memory,int)">deserializeFromMemory(Memory, int)</a></span> - Method in class org.apache.datasketches.common.<a href="org/apache/datasketches/common/ArrayOfNumbersSerDe.html" title="class in org.apache.datasketches.common">ArrayOfNumbersSerDe</a></dt>
-<dd>&nbsp;</dd>
+<dd>
+<div class="deprecationBlock"><span class="deprecatedLabel">Deprecated.</span></div>
+</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/common/ArrayOfStringsSerDe.html#deserializeFromMemory(org.apache.datasketches.memory.Memory,int)">deserializeFromMemory(Memory, int)</a></span> - Method in class org.apache.datasketches.common.<a href="org/apache/datasketches/common/ArrayOfStringsSerDe.html" title="class in org.apache.datasketches.common">ArrayOfStringsSerDe</a></dt>
-<dd>&nbsp;</dd>
+<dd>
+<div class="deprecationBlock"><span class="deprecatedLabel">Deprecated.</span></div>
+</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/common/ArrayOfUtf16StringsSerDe.html#deserializeFromMemory(org.apache.datasketches.memory.Memory,int)">deserializeFromMemory(Memory, int)</a></span> - Method in class org.apache.datasketches.common.<a href="org/apache/datasketches/common/ArrayOfUtf16StringsSerDe.html" title="class in org.apache.datasketches.common">ArrayOfUtf16StringsSerDe</a></dt>
+<dd>
+<div class="deprecationBlock"><span class="deprecatedLabel">Deprecated.</span></div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/common/ArrayOfBooleansSerDe.html#deserializeFromMemory(org.apache.datasketches.memory.Memory,long,int)">deserializeFromMemory(Memory, long, int)</a></span> - Method in class org.apache.datasketches.common.<a href="org/apache/datasketches/common/ArrayOfBooleansSerDe.html" title="class in org.apache.datasketches.common">ArrayOfBooleansSerDe</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/common/ArrayOfDoublesSerDe.html#deserializeFromMemory(org.apache.datasketches.memory.Memory,long,int)">deserializeFromMemory(Memory, long, int)</a></span> - Method in class org.apache.datasketches.common.<a href="org/apache/datasketches/common/ArrayOfDoublesSerDe.html" title="class in org.apache.datasketches.common">ArrayOfDoublesSerDe</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/common/ArrayOfItemsSerDe.html#deserializeFromMemory(org.apache.datasketches.memory.Memory,long,int)">deserializeFromMemory(Memory, long, int)</a></span> - Method in class org.apache.datasketches.common.<a href="org/apache/datasketches/common/ArrayOfItemsSerDe.html" title="class in org.apache.datasketches.common">ArrayOfItemsSerDe</a></dt>
+<dd>
+<div class="block">Deserialize a contiguous sequence of serialized items from a given Memory.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/common/ArrayOfLongsSerDe.html#deserializeFromMemory(org.apache.datasketches.memory.Memory,long,int)">deserializeFromMemory(Memory, long, int)</a></span> - Method in class org.apache.datasketches.common.<a href="org/apache/datasketches/common/ArrayOfLongsSerDe.html" title="class in org.apache.datasketches.common">ArrayOfLongsSerDe</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/common/ArrayOfNumbersSerDe.html#deserializeFromMemory(org.apache.datasketches.memory.Memory,long,int)">deserializeFromMemory(Memory, long, int)</a></span> - Method in class org.apache.datasketches.common.<a href="org/apache/datasketches/common/ArrayOfNumbersSerDe.html" title="class in org.apache.datasketches.common">ArrayOfNumbersSerDe</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/common/ArrayOfStringsSerDe.html#deserializeFromMemory(org.apache.datasketches.memory.Memory,long,int)">deserializeFromMemory(Memory, long, int)</a></span> - Method in class org.apache.datasketches.common.<a href="org/apache/datasketches/common/ArrayOfStringsSerDe.html" title="class in org.apache.datasketches.common">ArrayOfStringsSerDe</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/common/ArrayOfUtf16StringsSerDe.html#deserializeFromMemory(org.apache.datasketches.memory.Memory,long,int)">deserializeFromMemory(Memory, long, int)</a></span> - Method in class org.apache.datasketches.common.<a href="org/apache/datasketches/common/ArrayOfUtf16StringsSerDe.html" title="class in org.apache.datasketches.common">ArrayOfUtf16StringsSerDe</a></dt>
 <dd>&nbsp;</dd>
 <dt><a href="org/apache/datasketches/tuple/DeserializeResult.html" title="class in org.apache.datasketches.tuple"><span class="typeNameLink">DeserializeResult</span></a>&lt;<a href="org/apache/datasketches/tuple/DeserializeResult.html" title="type parameter in DeserializeResult">T</a>&gt; - Class in <a href="org/apache/datasketches/tuple/package-summary.html">org.apache.datasketches.tuple</a></dt>
 <dd>
@@ -1178,6 +1219,8 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/thetacommon/SetOperationCornerCases.CornerCase.html#Empty_Exact">Empty_Exact</a></span> - org.apache.datasketches.thetacommon.<a href="org/apache/datasketches/thetacommon/SetOperationCornerCases.CornerCase.html" title="enum in org.apache.datasketches.thetacommon">SetOperationCornerCases.CornerCase</a></dt>
 <dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/quantilescommon/QuantilesAPI.html#EMPTY_MSG">EMPTY_MSG</a></span> - Static variable in interface org.apache.datasketches.quantilescommon.<a href="org/apache/datasketches/quantilescommon/QuantilesAPI.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesAPI</a></dt>
+<dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/quantilescommon/GenericInequalitySearch.Inequality.html#EQ">EQ</a></span> - org.apache.datasketches.quantilescommon.<a href="org/apache/datasketches/quantilescommon/GenericInequalitySearch.Inequality.html" title="enum in org.apache.datasketches.quantilescommon">GenericInequalitySearch.Inequality</a></dt>
 <dd>
 <div class="block">Given a sorted array of increasing values <i>arr[]</i> and a key value <i>V</i>,
@@ -1457,10 +1500,12 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <dd>
 <div class="block">The Sorted View for quantiles of generic type.</div>
 </dd>
-<dt><a href="org/apache/datasketches/quantilescommon/GenericSortedViewIterator.html" title="interface in org.apache.datasketches.quantilescommon"><span class="typeNameLink">GenericSortedViewIterator</span></a>&lt;<a href="org/apache/datasketches/quantilescommon/GenericSortedViewIterator.html" title="type parameter in GenericSortedViewIterator">T</a>&gt; - Interface in <a href="org/apache/datasketches/quantilescommon/package-summary.html">org.apache.datasketches.quantilescommon</a></dt>
+<dt><a href="org/apache/datasketches/quantilescommon/GenericSortedViewIterator.html" title="class in org.apache.datasketches.quantilescommon"><span class="typeNameLink">GenericSortedViewIterator</span></a>&lt;<a href="org/apache/datasketches/quantilescommon/GenericSortedViewIterator.html" title="type parameter in GenericSortedViewIterator">T</a>&gt; - Class in <a href="org/apache/datasketches/quantilescommon/package-summary.html">org.apache.datasketches.quantilescommon</a></dt>
 <dd>
 <div class="block">The quantiles SortedView Iterator for generic types.</div>
 </dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/quantilescommon/GenericSortedViewIterator.html#%3Cinit%3E(T%5B%5D,long%5B%5D)">GenericSortedViewIterator(T[], long[])</a></span> - Constructor for class org.apache.datasketches.quantilescommon.<a href="org/apache/datasketches/quantilescommon/GenericSortedViewIterator.html" title="class in org.apache.datasketches.quantilescommon">GenericSortedViewIterator</a></dt>
+<dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/theta/HashIterator.html#get()">get()</a></span> - Method in interface org.apache.datasketches.theta.<a href="org/apache/datasketches/theta/HashIterator.html" title="interface in org.apache.datasketches.theta">HashIterator</a></dt>
 <dd>
 <div class="block">Gets the hash value</div>
@@ -1497,6 +1542,8 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <dd>
 <div class="block">Returns the average memory storage per key that is dedicated to sketching the unique counts.</div>
 </dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/kll/KllSketch.SketchType.html#getBytes()">getBytes()</a></span> - Method in enum org.apache.datasketches.kll.<a href="org/apache/datasketches/kll/KllSketch.SketchType.html" title="enum in org.apache.datasketches.kll">KllSketch.SketchType</a></dt>
+<dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/thetacommon/SetOperationCornerCases.CornerCase.html#getCaseDescription()">getCaseDescription()</a></span> - Method in enum org.apache.datasketches.thetacommon.<a href="org/apache/datasketches/thetacommon/SetOperationCornerCases.CornerCase.html" title="enum in org.apache.datasketches.thetacommon">SetOperationCornerCases.CornerCase</a></dt>
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/quantilescommon/QuantilesDoublesAPI.html#getCDF(double%5B%5D)">getCDF(double[])</a></span> - Method in interface org.apache.datasketches.quantilescommon.<a href="org/apache/datasketches/quantilescommon/QuantilesDoublesAPI.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesDoublesAPI</a></dt>
@@ -1545,6 +1592,10 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <dd>
 <div class="block">This is equivalent to <a href="org/apache/datasketches/quantilescommon/QuantilesGenericAPI.html#getCDF(T%5B%5D,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)"><code>getCDF(splitPoints, INCLUSIVE)</code></a></div>
 </dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/kll/KllItemsSketch.html#getCDF(T%5B%5D,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">getCDF(T[], QuantileSearchCriteria)</a></span> - Method in class org.apache.datasketches.kll.<a href="org/apache/datasketches/kll/KllItemsSketch.html" title="class in org.apache.datasketches.kll">KllItemsSketch</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/kll/KllItemsSketchSortedView.html#getCDF(T%5B%5D,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">getCDF(T[], QuantileSearchCriteria)</a></span> - Method in class org.apache.datasketches.kll.<a href="org/apache/datasketches/kll/KllItemsSketchSortedView.html" title="class in org.apache.datasketches.kll">KllItemsSketchSortedView</a></dt>
+<dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/quantiles/ItemsSketch.html#getCDF(T%5B%5D,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">getCDF(T[], QuantileSearchCriteria)</a></span> - Method in class org.apache.datasketches.quantiles.<a href="org/apache/datasketches/quantiles/ItemsSketch.html" title="class in org.apache.datasketches.quantiles">ItemsSketch</a></dt>
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/quantiles/ItemsSketchSortedView.html#getCDF(T%5B%5D,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">getCDF(T[], QuantileSearchCriteria)</a></span> - Method in class org.apache.datasketches.quantiles.<a href="org/apache/datasketches/quantiles/ItemsSketchSortedView.html" title="class in org.apache.datasketches.quantiles">ItemsSketchSortedView</a></dt>
@@ -1561,6 +1612,22 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
  as a monotonically increasing array of double ranks (or cumulative probabilities) on the interval [0.0, 1.0],
  given a set of splitPoints.</div>
 </dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/common/ArrayOfBooleansSerDe.html#getClassOfT()">getClassOfT()</a></span> - Method in class org.apache.datasketches.common.<a href="org/apache/datasketches/common/ArrayOfBooleansSerDe.html" title="class in org.apache.datasketches.common">ArrayOfBooleansSerDe</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/common/ArrayOfDoublesSerDe.html#getClassOfT()">getClassOfT()</a></span> - Method in class org.apache.datasketches.common.<a href="org/apache/datasketches/common/ArrayOfDoublesSerDe.html" title="class in org.apache.datasketches.common">ArrayOfDoublesSerDe</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/common/ArrayOfItemsSerDe.html#getClassOfT()">getClassOfT()</a></span> - Method in class org.apache.datasketches.common.<a href="org/apache/datasketches/common/ArrayOfItemsSerDe.html" title="class in org.apache.datasketches.common">ArrayOfItemsSerDe</a></dt>
+<dd>
+<div class="block">Returns the concrete class of type T</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/common/ArrayOfLongsSerDe.html#getClassOfT()">getClassOfT()</a></span> - Method in class org.apache.datasketches.common.<a href="org/apache/datasketches/common/ArrayOfLongsSerDe.html" title="class in org.apache.datasketches.common">ArrayOfLongsSerDe</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/common/ArrayOfNumbersSerDe.html#getClassOfT()">getClassOfT()</a></span> - Method in class org.apache.datasketches.common.<a href="org/apache/datasketches/common/ArrayOfNumbersSerDe.html" title="class in org.apache.datasketches.common">ArrayOfNumbersSerDe</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/common/ArrayOfStringsSerDe.html#getClassOfT()">getClassOfT()</a></span> - Method in class org.apache.datasketches.common.<a href="org/apache/datasketches/common/ArrayOfStringsSerDe.html" title="class in org.apache.datasketches.common">ArrayOfStringsSerDe</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/common/ArrayOfUtf16StringsSerDe.html#getClassOfT()">getClassOfT()</a></span> - Method in class org.apache.datasketches.common.<a href="org/apache/datasketches/common/ArrayOfUtf16StringsSerDe.html" title="class in org.apache.datasketches.common">ArrayOfUtf16StringsSerDe</a></dt>
+<dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/theta/CompactSketch.html#getCompactBytes()">getCompactBytes()</a></span> - Method in class org.apache.datasketches.theta.<a href="org/apache/datasketches/theta/CompactSketch.html" title="class in org.apache.datasketches.theta">CompactSketch</a></dt>
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/theta/Sketch.html#getCompactBytes()">getCompactBytes()</a></span> - Method in class org.apache.datasketches.theta.<a href="org/apache/datasketches/theta/Sketch.html" title="class in org.apache.datasketches.theta">Sketch</a></dt>
@@ -1601,7 +1668,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/quantiles/DoublesSketchSortedViewIterator.html#getCumulativeWeight(org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">getCumulativeWeight(QuantileSearchCriteria)</a></span> - Method in class org.apache.datasketches.quantiles.<a href="org/apache/datasketches/quantiles/DoublesSketchSortedViewIterator.html" title="class in org.apache.datasketches.quantiles">DoublesSketchSortedViewIterator</a></dt>
 <dd>&nbsp;</dd>
-<dt><span class="memberNameLink"><a href="org/apache/datasketches/quantiles/ItemsSketchSortedViewIterator.html#getCumulativeWeight(org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">getCumulativeWeight(QuantileSearchCriteria)</a></span> - Method in class org.apache.datasketches.quantiles.<a href="org/apache/datasketches/quantiles/ItemsSketchSortedViewIterator.html" title="class in org.apache.datasketches.quantiles">ItemsSketchSortedViewIterator</a></dt>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/quantilescommon/GenericSortedViewIterator.html#getCumulativeWeight(org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">getCumulativeWeight(QuantileSearchCriteria)</a></span> - Method in class org.apache.datasketches.quantilescommon.<a href="org/apache/datasketches/quantilescommon/GenericSortedViewIterator.html" title="class in org.apache.datasketches.quantilescommon">GenericSortedViewIterator</a></dt>
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/quantilescommon/SortedViewIterator.html#getCumulativeWeight(org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">getCumulativeWeight(QuantileSearchCriteria)</a></span> - Method in interface org.apache.datasketches.quantilescommon.<a href="org/apache/datasketches/quantilescommon/SortedViewIterator.html" title="interface in org.apache.datasketches.quantilescommon">SortedViewIterator</a></dt>
 <dd>
@@ -1613,6 +1680,8 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/kll/KllFloatsSketchSortedView.html#getCumulativeWeights()">getCumulativeWeights()</a></span> - Method in class org.apache.datasketches.kll.<a href="org/apache/datasketches/kll/KllFloatsSketchSortedView.html" title="class in org.apache.datasketches.kll">KllFloatsSketchSortedView</a></dt>
 <dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/kll/KllItemsSketchSortedView.html#getCumulativeWeights()">getCumulativeWeights()</a></span> - Method in class org.apache.datasketches.kll.<a href="org/apache/datasketches/kll/KllItemsSketchSortedView.html" title="class in org.apache.datasketches.kll">KllItemsSketchSortedView</a></dt>
+<dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/quantiles/DoublesSketchSortedView.html#getCumulativeWeights()">getCumulativeWeights()</a></span> - Method in class org.apache.datasketches.quantiles.<a href="org/apache/datasketches/quantiles/DoublesSketchSortedView.html" title="class in org.apache.datasketches.quantiles">DoublesSketchSortedView</a></dt>
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/quantiles/ItemsSketchSortedView.html#getCumulativeWeights()">getCumulativeWeights()</a></span> - Method in class org.apache.datasketches.quantiles.<a href="org/apache/datasketches/quantiles/ItemsSketchSortedView.html" title="class in org.apache.datasketches.quantiles">ItemsSketchSortedView</a></dt>
@@ -1637,12 +1706,6 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <dd>
 <div class="block">For compact sketches this is the same as getMaxBytes().</div>
 </dd>
-<dt><span class="memberNameLink"><a href="org/apache/datasketches/kll/KllSketch.html#getCurrentCompactSerializedSizeBytes()">getCurrentCompactSerializedSizeBytes()</a></span> - Method in class org.apache.datasketches.kll.<a href="org/apache/datasketches/kll/KllSketch.html" title="class in org.apache.datasketches.kll">KllSketch</a></dt>
-<dd>
-<div class="deprecationBlock"><span class="deprecatedLabel">Deprecated.</span>
-<div class="deprecationComment">version 4.0.0 use <a href="org/apache/datasketches/kll/KllSketch.html#getSerializedSizeBytes()"><code>KllSketch.getSerializedSizeBytes()</code></a>.</div>
-</div>
-</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/quantiles/DoublesSketch.html#getCurrentCompactSerializedSizeBytes()">getCurrentCompactSerializedSizeBytes()</a></span> - Method in class org.apache.datasketches.quantiles.<a href="org/apache/datasketches/quantiles/DoublesSketch.html" title="class in org.apache.datasketches.quantiles">DoublesSketch</a></dt>
 <dd>
 <div class="block">Returns the current number of bytes this sketch would require to store in the compact Memory Format.</div>
@@ -1655,12 +1718,6 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <dd>
 <div class="block">Returns the current number of counters the sketch is configured to support.</div>
 </dd>
-<dt><span class="memberNameLink"><a href="org/apache/datasketches/kll/KllSketch.html#getCurrentUpdatableSerializedSizeBytes()">getCurrentUpdatableSerializedSizeBytes()</a></span> - Method in class org.apache.datasketches.kll.<a href="org/apache/datasketches/kll/KllSketch.html" title="class in org.apache.datasketches.kll">KllSketch</a></dt>
-<dd>
-<div class="deprecationBlock"><span class="deprecatedLabel">Deprecated.</span>
-<div class="deprecationComment">version 4.0.0 use <a href="org/apache/datasketches/kll/KllSketch.html#getSerializedSizeBytes()"><code>KllSketch.getSerializedSizeBytes()</code></a>.</div>
-</div>
-</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/quantiles/DoublesSketch.html#getCurrentUpdatableSerializedSizeBytes()">getCurrentUpdatableSerializedSizeBytes()</a></span> - Method in class org.apache.datasketches.quantiles.<a href="org/apache/datasketches/quantiles/DoublesSketch.html" title="class in org.apache.datasketches.quantiles">DoublesSketch</a></dt>
 <dd>
 <div class="block">Returns the current number of bytes this sketch would require to store in the updatable Memory Format.</div>
@@ -1926,8 +1983,6 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <dd>
 <div class="block">Accesses the iterator's current object</div>
 </dd>
-<dt><span class="memberNameLink"><a href="org/apache/datasketches/kll/KllSketch.html#getK()">getK()</a></span> - Method in class org.apache.datasketches.kll.<a href="org/apache/datasketches/kll/KllSketch.html" title="class in org.apache.datasketches.kll">KllSketch</a></dt>
-<dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/quantiles/DoublesSketch.html#getK()">getK()</a></span> - Method in class org.apache.datasketches.quantiles.<a href="org/apache/datasketches/quantiles/DoublesSketch.html" title="class in org.apache.datasketches.quantiles">DoublesSketch</a></dt>
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/quantiles/DoublesSketchBuilder.html#getK()">getK()</a></span> - Method in class org.apache.datasketches.quantiles.<a href="org/apache/datasketches/quantiles/DoublesSketchBuilder.html" title="class in org.apache.datasketches.quantiles">DoublesSketchBuilder</a></dt>
@@ -2159,10 +2214,6 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <dd>
 <div class="block">Ref: <a href="org/apache/datasketches/theta/SetOperation.html#getMaxIntersectionBytes(int)"><code>SetOperation.getMaxIntersectionBytes(int)</code></a></div>
 </dd>
-<dt><span class="memberNameLink"><a href="org/apache/datasketches/kll/KllDoublesSketch.html#getMaxItem()">getMaxItem()</a></span> - Method in class org.apache.datasketches.kll.<a href="org/apache/datasketches/kll/KllDoublesSketch.html" title="class in org.apache.datasketches.kll">KllDoublesSketch</a></dt>
-<dd>&nbsp;</dd>
-<dt><span class="memberNameLink"><a href="org/apache/datasketches/kll/KllFloatsSketch.html#getMaxItem()">getMaxItem()</a></span> - Method in class org.apache.datasketches.kll.<a href="org/apache/datasketches/kll/KllFloatsSketch.html" title="class in org.apache.datasketches.kll">KllFloatsSketch</a></dt>
-<dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/quantiles/DoublesSketch.html#getMaxItem()">getMaxItem()</a></span> - Method in class org.apache.datasketches.quantiles.<a href="org/apache/datasketches/quantiles/DoublesSketch.html" title="class in org.apache.datasketches.quantiles">DoublesSketch</a></dt>
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/quantiles/ItemsSketch.html#getMaxItem()">getMaxItem()</a></span> - Method in class org.apache.datasketches.quantiles.<a href="org/apache/datasketches/quantiles/ItemsSketch.html" title="class in org.apache.datasketches.quantiles">ItemsSketch</a></dt>
@@ -2222,14 +2273,6 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <div class="block">The actual size of a compressed CPC sketch has a small random variance, but the following
  empirically measured size should be large enough for at least 99.9 percent of sketches.</div>
 </dd>
-<dt><span class="memberNameLink"><a href="org/apache/datasketches/kll/KllDoublesSketch.html#getMaxSerializedSizeBytes(int,long,boolean)">getMaxSerializedSizeBytes(int, long, boolean)</a></span> - Static method in class org.apache.datasketches.kll.<a href="org/apache/datasketches/kll/KllDoublesSketch.html" title="class in org.apache.datasketches.kll">KllDoublesSketch</a></dt>
-<dd>
-<div class="block">Returns upper bound on the serialized size of a KllDoublesSketch given the following parameters.</div>
-</dd>
-<dt><span class="memberNameLink"><a href="org/apache/datasketches/kll/KllFloatsSketch.html#getMaxSerializedSizeBytes(int,long,boolean)">getMaxSerializedSizeBytes(int, long, boolean)</a></span> - Static method in class org.apache.datasketches.kll.<a href="org/apache/datasketches/kll/KllFloatsSketch.html" title="class in org.apache.datasketches.kll">KllFloatsSketch</a></dt>
-<dd>
-<div class="block">Returns upper bound on the serialized size of a KllFloatsSketch given the following parameters.</div>
-</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/kll/KllSketch.html#getMaxSerializedSizeBytes(int,long,org.apache.datasketches.kll.KllSketch.SketchType,boolean)">getMaxSerializedSizeBytes(int, long, KllSketch.SketchType, boolean)</a></span> - Static method in class org.apache.datasketches.kll.<a href="org/apache/datasketches/kll/KllSketch.html" title="class in org.apache.datasketches.kll">KllSketch</a></dt>
 <dd>
 <div class="block">Returns upper bound on the serialized size of a KllSketch given the following parameters.</div>
@@ -2271,10 +2314,6 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <dd>
 <div class="block">Returns total bytes used by all internal maps</div>
 </dd>
-<dt><span class="memberNameLink"><a href="org/apache/datasketches/kll/KllDoublesSketch.html#getMinItem()">getMinItem()</a></span> - Method in class org.apache.datasketches.kll.<a href="org/apache/datasketches/kll/KllDoublesSketch.html" title="class in org.apache.datasketches.kll">KllDoublesSketch</a></dt>
-<dd>&nbsp;</dd>
-<dt><span class="memberNameLink"><a href="org/apache/datasketches/kll/KllFloatsSketch.html#getMinItem()">getMinItem()</a></span> - Method in class org.apache.datasketches.kll.<a href="org/apache/datasketches/kll/KllFloatsSketch.html" title="class in org.apache.datasketches.kll">KllFloatsSketch</a></dt>
-<dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/quantiles/DoublesSketch.html#getMinItem()">getMinItem()</a></span> - Method in class org.apache.datasketches.quantiles.<a href="org/apache/datasketches/quantiles/DoublesSketch.html" title="class in org.apache.datasketches.quantiles">DoublesSketch</a></dt>
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/quantiles/ItemsSketch.html#getMinItem()">getMinItem()</a></span> - Method in class org.apache.datasketches.quantiles.<a href="org/apache/datasketches/quantiles/ItemsSketch.html" title="class in org.apache.datasketches.quantiles">ItemsSketch</a></dt>
@@ -2301,15 +2340,13 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/kll/KllFloatsSketchSortedViewIterator.html#getN()">getN()</a></span> - Method in class org.apache.datasketches.kll.<a href="org/apache/datasketches/kll/KllFloatsSketchSortedViewIterator.html" title="class in org.apache.datasketches.kll">KllFloatsSketchSortedViewIterator</a></dt>
 <dd>&nbsp;</dd>
-<dt><span class="memberNameLink"><a href="org/apache/datasketches/kll/KllSketch.html#getN()">getN()</a></span> - Method in class org.apache.datasketches.kll.<a href="org/apache/datasketches/kll/KllSketch.html" title="class in org.apache.datasketches.kll">KllSketch</a></dt>
-<dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/quantiles/DoublesSketch.html#getN()">getN()</a></span> - Method in class org.apache.datasketches.quantiles.<a href="org/apache/datasketches/quantiles/DoublesSketch.html" title="class in org.apache.datasketches.quantiles">DoublesSketch</a></dt>
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/quantiles/DoublesSketchSortedViewIterator.html#getN()">getN()</a></span> - Method in class org.apache.datasketches.quantiles.<a href="org/apache/datasketches/quantiles/DoublesSketchSortedViewIterator.html" title="class in org.apache.datasketches.quantiles">DoublesSketchSortedViewIterator</a></dt>
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/quantiles/ItemsSketch.html#getN()">getN()</a></span> - Method in class org.apache.datasketches.quantiles.<a href="org/apache/datasketches/quantiles/ItemsSketch.html" title="class in org.apache.datasketches.quantiles">ItemsSketch</a></dt>
 <dd>&nbsp;</dd>
-<dt><span class="memberNameLink"><a href="org/apache/datasketches/quantiles/ItemsSketchSortedViewIterator.html#getN()">getN()</a></span> - Method in class org.apache.datasketches.quantiles.<a href="org/apache/datasketches/quantiles/ItemsSketchSortedViewIterator.html" title="class in org.apache.datasketches.quantiles">ItemsSketchSortedViewIterator</a></dt>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/quantilescommon/GenericSortedViewIterator.html#getN()">getN()</a></span> - Method in class org.apache.datasketches.quantilescommon.<a href="org/apache/datasketches/quantilescommon/GenericSortedViewIterator.html" title="class in org.apache.datasketches.quantilescommon">GenericSortedViewIterator</a></dt>
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/quantilescommon/QuantilesAPI.html#getN()">getN()</a></span> - Method in interface org.apache.datasketches.quantilescommon.<a href="org/apache/datasketches/quantilescommon/QuantilesAPI.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesAPI</a></dt>
 <dd>
@@ -2335,6 +2372,8 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <dd>
 <div class="block">Returns the number of items processed from the input stream</div>
 </dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/kll/KllSketch.SketchType.html#getName()">getName()</a></span> - Method in enum org.apache.datasketches.kll.<a href="org/apache/datasketches/kll/KllSketch.SketchType.html" title="enum in org.apache.datasketches.kll">KllSketch.SketchType</a></dt>
+<dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/tuple/arrayofdoubles/ArrayOfDoublesUpdatableSketch.html#getNominalEntries()">getNominalEntries()</a></span> - Method in class org.apache.datasketches.tuple.arrayofdoubles.<a href="org/apache/datasketches/tuple/arrayofdoubles/ArrayOfDoublesUpdatableSketch.html" title="class in org.apache.datasketches.tuple.arrayofdoubles">ArrayOfDoublesUpdatableSketch</a></dt>
 <dd>
 <div class="block">Gets the configured nominal number of entries</div>
@@ -2345,7 +2384,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/quantiles/DoublesSketchSortedViewIterator.html#getNormalizedRank(org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">getNormalizedRank(QuantileSearchCriteria)</a></span> - Method in class org.apache.datasketches.quantiles.<a href="org/apache/datasketches/quantiles/DoublesSketchSortedViewIterator.html" title="class in org.apache.datasketches.quantiles">DoublesSketchSortedViewIterator</a></dt>
 <dd>&nbsp;</dd>
-<dt><span class="memberNameLink"><a href="org/apache/datasketches/quantiles/ItemsSketchSortedViewIterator.html#getNormalizedRank(org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">getNormalizedRank(QuantileSearchCriteria)</a></span> - Method in class org.apache.datasketches.quantiles.<a href="org/apache/datasketches/quantiles/ItemsSketchSortedViewIterator.html" title="class in org.apache.datasketches.quantiles">ItemsSketchSortedViewIterator</a></dt>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/quantilescommon/GenericSortedViewIterator.html#getNormalizedRank(org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">getNormalizedRank(QuantileSearchCriteria)</a></span> - Method in class org.apache.datasketches.quantilescommon.<a href="org/apache/datasketches/quantilescommon/GenericSortedViewIterator.html" title="class in org.apache.datasketches.quantilescommon">GenericSortedViewIterator</a></dt>
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/quantilescommon/SortedViewIterator.html#getNormalizedRank(org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">getNormalizedRank(QuantileSearchCriteria)</a></span> - Method in interface org.apache.datasketches.quantilescommon.<a href="org/apache/datasketches/quantilescommon/SortedViewIterator.html" title="interface in org.apache.datasketches.quantilescommon">SortedViewIterator</a></dt>
 <dd>
@@ -2456,6 +2495,8 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/kll/KllFloatsSketch.html#getPartitionBoundaries(int,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">getPartitionBoundaries(int, QuantileSearchCriteria)</a></span> - Method in class org.apache.datasketches.kll.<a href="org/apache/datasketches/kll/KllFloatsSketch.html" title="class in org.apache.datasketches.kll">KllFloatsSketch</a></dt>
 <dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/kll/KllItemsSketch.html#getPartitionBoundaries(int,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">getPartitionBoundaries(int, QuantileSearchCriteria)</a></span> - Method in class org.apache.datasketches.kll.<a href="org/apache/datasketches/kll/KllItemsSketch.html" title="class in org.apache.datasketches.kll">KllItemsSketch</a></dt>
+<dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/quantiles/DoublesSketch.html#getPartitionBoundaries(int,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">getPartitionBoundaries(int, QuantileSearchCriteria)</a></span> - Method in class org.apache.datasketches.quantiles.<a href="org/apache/datasketches/quantiles/DoublesSketch.html" title="class in org.apache.datasketches.quantiles">DoublesSketch</a></dt>
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/quantiles/ItemsSketch.html#getPartitionBoundaries(int,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">getPartitionBoundaries(int, QuantileSearchCriteria)</a></span> - Method in class org.apache.datasketches.quantiles.<a href="org/apache/datasketches/quantiles/ItemsSketch.html" title="class in org.apache.datasketches.quantiles">ItemsSketch</a></dt>
@@ -2522,6 +2563,10 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <dd>
 <div class="block">This is equivalent to <a href="org/apache/datasketches/quantilescommon/QuantilesGenericAPI.html#getPMF(T%5B%5D,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)"><code>getPMF(splitPoints, INCLUSIVE)</code></a></div>
 </dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/kll/KllItemsSketch.html#getPMF(T%5B%5D,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">getPMF(T[], QuantileSearchCriteria)</a></span> - Method in class org.apache.datasketches.kll.<a href="org/apache/datasketches/kll/KllItemsSketch.html" title="class in org.apache.datasketches.kll">KllItemsSketch</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/kll/KllItemsSketchSortedView.html#getPMF(T%5B%5D,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">getPMF(T[], QuantileSearchCriteria)</a></span> - Method in class org.apache.datasketches.kll.<a href="org/apache/datasketches/kll/KllItemsSketchSortedView.html" title="class in org.apache.datasketches.kll">KllItemsSketchSortedView</a></dt>
+<dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/quantiles/ItemsSketch.html#getPMF(T%5B%5D,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">getPMF(T[], QuantileSearchCriteria)</a></span> - Method in class org.apache.datasketches.quantiles.<a href="org/apache/datasketches/quantiles/ItemsSketch.html" title="class in org.apache.datasketches.quantiles">ItemsSketch</a></dt>
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/quantiles/ItemsSketchSortedView.html#getPMF(T%5B%5D,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">getPMF(T[], QuantileSearchCriteria)</a></span> - Method in class org.apache.datasketches.quantiles.<a href="org/apache/datasketches/quantiles/ItemsSketchSortedView.html" title="class in org.apache.datasketches.quantiles">ItemsSketchSortedView</a></dt>
@@ -2546,6 +2591,8 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <dd>
 <div class="block">Returns the PostProcessor that enables multiple queries against the sketch results.</div>
 </dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/kll/KllSketch.SketchStructure.html#getPreInts()">getPreInts()</a></span> - Method in enum org.apache.datasketches.kll.<a href="org/apache/datasketches/kll/KllSketch.SketchStructure.html" title="enum in org.apache.datasketches.kll">KllSketch.SketchStructure</a></dt>
+<dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/fdt/Group.html#getPrimaryKey()">getPrimaryKey()</a></span> - Method in class org.apache.datasketches.fdt.<a href="org/apache/datasketches/fdt/Group.html" title="class in org.apache.datasketches.fdt">Group</a></dt>
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/theta/UpdateSketchBuilder.html#getPropagateOrderedCompact()">getPropagateOrderedCompact()</a></span> - Method in class org.apache.datasketches.theta.<a href="org/apache/datasketches/theta/UpdateSketchBuilder.html" title="class in org.apache.datasketches.theta">UpdateSketchBuilder</a></dt>
@@ -2560,14 +2607,14 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/kll/KllFloatsSketchSortedViewIterator.html#getQuantile()">getQuantile()</a></span> - Method in class org.apache.datasketches.kll.<a href="org/apache/datasketches/kll/KllFloatsSketchSortedViewIterator.html" title="class in org.apache.datasketches.kll">KllFloatsSketchSortedViewIterator</a></dt>
 <dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/kll/KllItemsSketchIterator.html#getQuantile()">getQuantile()</a></span> - Method in class org.apache.datasketches.kll.<a href="org/apache/datasketches/kll/KllItemsSketchIterator.html" title="class in org.apache.datasketches.kll">KllItemsSketchIterator</a></dt>
+<dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/quantiles/DoublesSketchIterator.html#getQuantile()">getQuantile()</a></span> - Method in class org.apache.datasketches.quantiles.<a href="org/apache/datasketches/quantiles/DoublesSketchIterator.html" title="class in org.apache.datasketches.quantiles">DoublesSketchIterator</a></dt>
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/quantiles/DoublesSketchSortedViewIterator.html#getQuantile()">getQuantile()</a></span> - Method in class org.apache.datasketches.quantiles.<a href="org/apache/datasketches/quantiles/DoublesSketchSortedViewIterator.html" title="class in org.apache.datasketches.quantiles">DoublesSketchSortedViewIterator</a></dt>
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/quantiles/ItemsSketchIterator.html#getQuantile()">getQuantile()</a></span> - Method in class org.apache.datasketches.quantiles.<a href="org/apache/datasketches/quantiles/ItemsSketchIterator.html" title="class in org.apache.datasketches.quantiles">ItemsSketchIterator</a></dt>
 <dd>&nbsp;</dd>
-<dt><span class="memberNameLink"><a href="org/apache/datasketches/quantiles/ItemsSketchSortedViewIterator.html#getQuantile()">getQuantile()</a></span> - Method in class org.apache.datasketches.quantiles.<a href="org/apache/datasketches/quantiles/ItemsSketchSortedViewIterator.html" title="class in org.apache.datasketches.quantiles">ItemsSketchSortedViewIterator</a></dt>
-<dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/quantilescommon/DoublesSortedViewIterator.html#getQuantile()">getQuantile()</a></span> - Method in interface org.apache.datasketches.quantilescommon.<a href="org/apache/datasketches/quantilescommon/DoublesSortedViewIterator.html" title="interface in org.apache.datasketches.quantilescommon">DoublesSortedViewIterator</a></dt>
 <dd>
 <div class="block">Gets the quantile at the current index.</div>
@@ -2576,10 +2623,8 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <dd>
 <div class="block">Gets the quantile at the current index.</div>
 </dd>
-<dt><span class="memberNameLink"><a href="org/apache/datasketches/quantilescommon/GenericSortedViewIterator.html#getQuantile()">getQuantile()</a></span> - Method in interface org.apache.datasketches.quantilescommon.<a href="org/apache/datasketches/quantilescommon/GenericSortedViewIterator.html" title="interface in org.apache.datasketches.quantilescommon">GenericSortedViewIterator</a></dt>
-<dd>
-<div class="block">Gets the quantile at the current index.</div>
-</dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/quantilescommon/GenericSortedViewIterator.html#getQuantile()">getQuantile()</a></span> - Method in class org.apache.datasketches.quantilescommon.<a href="org/apache/datasketches/quantilescommon/GenericSortedViewIterator.html" title="class in org.apache.datasketches.quantilescommon">GenericSortedViewIterator</a></dt>
+<dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/quantilescommon/QuantilesDoublesSketchIterator.html#getQuantile()">getQuantile()</a></span> - Method in interface org.apache.datasketches.quantilescommon.<a href="org/apache/datasketches/quantilescommon/QuantilesDoublesSketchIterator.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesDoublesSketchIterator</a></dt>
 <dd>
 <div class="block">Gets the double quantile at the current index.</div>
@@ -2618,6 +2663,10 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/kll/KllFloatsSketchSortedView.html#getQuantile(double,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">getQuantile(double, QuantileSearchCriteria)</a></span> - Method in class org.apache.datasketches.kll.<a href="org/apache/datasketches/kll/KllFloatsSketchSortedView.html" title="class in org.apache.datasketches.kll">KllFloatsSketchSortedView</a></dt>
 <dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/kll/KllItemsSketch.html#getQuantile(double,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">getQuantile(double, QuantileSearchCriteria)</a></span> - Method in class org.apache.datasketches.kll.<a href="org/apache/datasketches/kll/KllItemsSketch.html" title="class in org.apache.datasketches.kll">KllItemsSketch</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/kll/KllItemsSketchSortedView.html#getQuantile(double,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">getQuantile(double, QuantileSearchCriteria)</a></span> - Method in class org.apache.datasketches.kll.<a href="org/apache/datasketches/kll/KllItemsSketchSortedView.html" title="class in org.apache.datasketches.kll">KllItemsSketchSortedView</a></dt>
+<dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/quantiles/DoublesSketch.html#getQuantile(double,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">getQuantile(double, QuantileSearchCriteria)</a></span> - Method in class org.apache.datasketches.quantiles.<a href="org/apache/datasketches/quantiles/DoublesSketch.html" title="class in org.apache.datasketches.quantiles">DoublesSketch</a></dt>
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/quantiles/DoublesSketchSortedView.html#getQuantile(double,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">getQuantile(double, QuantileSearchCriteria)</a></span> - Method in class org.apache.datasketches.quantiles.<a href="org/apache/datasketches/quantiles/DoublesSketchSortedView.html" title="class in org.apache.datasketches.quantiles">DoublesSketchSortedView</a></dt>
@@ -2664,6 +2713,8 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <div class="block">Gets the lower bound of the quantile confidence interval in which the quantile of the
  given rank exists.</div>
 </dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/kll/KllItemsSketch.html#getQuantileLowerBound(double)">getQuantileLowerBound(double)</a></span> - Method in class org.apache.datasketches.kll.<a href="org/apache/datasketches/kll/KllItemsSketch.html" title="class in org.apache.datasketches.kll">KllItemsSketch</a></dt>
+<dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/quantiles/DoublesSketch.html#getQuantileLowerBound(double)">getQuantileLowerBound(double)</a></span> - Method in class org.apache.datasketches.quantiles.<a href="org/apache/datasketches/quantiles/DoublesSketch.html" title="class in org.apache.datasketches.quantiles">DoublesSketch</a></dt>
 <dd>
 <div class="block">Gets the lower bound of the quantile confidence interval in which the quantile of the
@@ -2697,6 +2748,8 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/kll/KllFloatsSketchSortedView.html#getQuantiles()">getQuantiles()</a></span> - Method in class org.apache.datasketches.kll.<a href="org/apache/datasketches/kll/KllFloatsSketchSortedView.html" title="class in org.apache.datasketches.kll">KllFloatsSketchSortedView</a></dt>
 <dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/kll/KllItemsSketchSortedView.html#getQuantiles()">getQuantiles()</a></span> - Method in class org.apache.datasketches.kll.<a href="org/apache/datasketches/kll/KllItemsSketchSortedView.html" title="class in org.apache.datasketches.kll">KllItemsSketchSortedView</a></dt>
+<dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/quantiles/DoublesSketchSortedView.html#getQuantiles()">getQuantiles()</a></span> - Method in class org.apache.datasketches.quantiles.<a href="org/apache/datasketches/quantiles/DoublesSketchSortedView.html" title="class in org.apache.datasketches.quantiles">DoublesSketchSortedView</a></dt>
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/quantiles/ItemsSketchSortedView.html#getQuantiles()">getQuantiles()</a></span> - Method in class org.apache.datasketches.quantiles.<a href="org/apache/datasketches/quantiles/ItemsSketchSortedView.html" title="class in org.apache.datasketches.quantiles">ItemsSketchSortedView</a></dt>
@@ -2733,6 +2786,8 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/kll/KllFloatsSketch.html#getQuantiles(double%5B%5D,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">getQuantiles(double[], QuantileSearchCriteria)</a></span> - Method in class org.apache.datasketches.kll.<a href="org/apache/datasketches/kll/KllFloatsSketch.html" title="class in org.apache.datasketches.kll">KllFloatsSketch</a></dt>
 <dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/kll/KllItemsSketch.html#getQuantiles(double%5B%5D,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">getQuantiles(double[], QuantileSearchCriteria)</a></span> - Method in class org.apache.datasketches.kll.<a href="org/apache/datasketches/kll/KllItemsSketch.html" title="class in org.apache.datasketches.kll">KllItemsSketch</a></dt>
+<dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/quantiles/DoublesSketch.html#getQuantiles(double%5B%5D,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">getQuantiles(double[], QuantileSearchCriteria)</a></span> - Method in class org.apache.datasketches.quantiles.<a href="org/apache/datasketches/quantiles/DoublesSketch.html" title="class in org.apache.datasketches.quantiles">DoublesSketch</a></dt>
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/quantiles/ItemsSketch.html#getQuantiles(double%5B%5D,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">getQuantiles(double[], QuantileSearchCriteria)</a></span> - Method in class org.apache.datasketches.quantiles.<a href="org/apache/datasketches/quantiles/ItemsSketch.html" title="class in org.apache.datasketches.quantiles">ItemsSketch</a></dt>
@@ -2761,6 +2816,8 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <div class="block">Gets the upper bound of the quantile confidence interval in which the true quantile of the
  given rank exists.</div>
 </dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/kll/KllItemsSketch.html#getQuantileUpperBound(double)">getQuantileUpperBound(double)</a></span> - Method in class org.apache.datasketches.kll.<a href="org/apache/datasketches/kll/KllItemsSketch.html" title="class in org.apache.datasketches.kll">KllItemsSketch</a></dt>
+<dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/quantiles/DoublesSketch.html#getQuantileUpperBound(double)">getQuantileUpperBound(double)</a></span> - Method in class org.apache.datasketches.quantiles.<a href="org/apache/datasketches/quantiles/DoublesSketch.html" title="class in org.apache.datasketches.quantiles">DoublesSketch</a></dt>
 <dd>
 <div class="block">Gets the upper bound of the quantile confidence interval in which the true quantile of the
@@ -2836,6 +2893,10 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <dd>
 <div class="block">This is equivalent to <a href="org/apache/datasketches/quantilescommon/QuantilesGenericAPI.html#getRank(T,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)"><code>getRank(T quantile, INCLUSIVE)</code></a></div>
 </dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/kll/KllItemsSketch.html#getRank(T,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">getRank(T, QuantileSearchCriteria)</a></span> - Method in class org.apache.datasketches.kll.<a href="org/apache/datasketches/kll/KllItemsSketch.html" title="class in org.apache.datasketches.kll">KllItemsSketch</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/kll/KllItemsSketchSortedView.html#getRank(T,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">getRank(T, QuantileSearchCriteria)</a></span> - Method in class org.apache.datasketches.kll.<a href="org/apache/datasketches/kll/KllItemsSketchSortedView.html" title="class in org.apache.datasketches.kll">KllItemsSketchSortedView</a></dt>
+<dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/quantiles/ItemsSketch.html#getRank(T,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">getRank(T, QuantileSearchCriteria)</a></span> - Method in class org.apache.datasketches.quantiles.<a href="org/apache/datasketches/quantiles/ItemsSketch.html" title="class in org.apache.datasketches.quantiles">ItemsSketch</a></dt>
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/quantiles/ItemsSketchSortedView.html#getRank(T,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">getRank(T, QuantileSearchCriteria)</a></span> - Method in class org.apache.datasketches.quantiles.<a href="org/apache/datasketches/quantiles/ItemsSketchSortedView.html" title="class in org.apache.datasketches.quantiles">ItemsSketchSortedView</a></dt>
@@ -2858,6 +2919,11 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <div class="block">Gets the lower bound of the rank confidence interval in which the true rank of the
  given rank exists.</div>
 </dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/kll/KllItemsSketch.html#getRankLowerBound(double)">getRankLowerBound(double)</a></span> - Method in class org.apache.datasketches.kll.<a href="org/apache/datasketches/kll/KllItemsSketch.html" title="class in org.apache.datasketches.kll">KllItemsSketch</a></dt>
+<dd>
+<div class="block">Gets the lower bound of the rank confidence interval in which the true rank of the
+ given rank exists.</div>
+</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/quantiles/DoublesSketch.html#getRankLowerBound(double)">getRankLowerBound(double)</a></span> - Method in class org.apache.datasketches.quantiles.<a href="org/apache/datasketches/quantiles/DoublesSketch.html" title="class in org.apache.datasketches.quantiles">DoublesSketch</a></dt>
 <dd>
 <div class="block">Gets the lower bound of the rank confidence interval in which the true rank of the
@@ -2909,6 +2975,8 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <dd>
 <div class="block">This is equivalent to <a href="org/apache/datasketches/quantilescommon/QuantilesGenericAPI.html#getRanks(T%5B%5D,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)"><code>getRanks(quantiles, INCLUSIVE)</code></a></div>
 </dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/kll/KllItemsSketch.html#getRanks(T%5B%5D,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">getRanks(T[], QuantileSearchCriteria)</a></span> - Method in class org.apache.datasketches.kll.<a href="org/apache/datasketches/kll/KllItemsSketch.html" title="class in org.apache.datasketches.kll">KllItemsSketch</a></dt>
+<dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/quantiles/ItemsSketch.html#getRanks(T%5B%5D,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">getRanks(T[], QuantileSearchCriteria)</a></span> - Method in class org.apache.datasketches.quantiles.<a href="org/apache/datasketches/quantiles/ItemsSketch.html" title="class in org.apache.datasketches.quantiles">ItemsSketch</a></dt>
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/quantilescommon/QuantilesGenericAPI.html#getRanks(T%5B%5D,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">getRanks(T[], QuantileSearchCriteria)</a></span> - Method in interface org.apache.datasketches.quantilescommon.<a href="org/apache/datasketches/quantilescommon/QuantilesGenericAPI.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesGenericAPI</a></dt>
@@ -2926,6 +2994,11 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <div class="block">Gets the upper bound of the rank confidence interval in which the true rank of the
  given rank exists.</div>
 </dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/kll/KllItemsSketch.html#getRankUpperBound(double)">getRankUpperBound(double)</a></span> - Method in class org.apache.datasketches.kll.<a href="org/apache/datasketches/kll/KllItemsSketch.html" title="class in org.apache.datasketches.kll">KllItemsSketch</a></dt>
+<dd>
+<div class="block">Gets the upper bound of the rank confidence interval in which the true rank of the
+ given rank exists.</div>
+</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/quantiles/DoublesSketch.html#getRankUpperBound(double)">getRankUpperBound(double)</a></span> - Method in class org.apache.datasketches.quantiles.<a href="org/apache/datasketches/quantiles/DoublesSketch.html" title="class in org.apache.datasketches.quantiles">DoublesSketch</a></dt>
 <dd>
 <div class="block">Gets the upper bound of the rank confidence interval in which the true rank of the
@@ -3164,7 +3237,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 </dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/kll/KllSketch.html#getSerializedSizeBytes()">getSerializedSizeBytes()</a></span> - Method in class org.apache.datasketches.kll.<a href="org/apache/datasketches/kll/KllSketch.html" title="class in org.apache.datasketches.kll">KllSketch</a></dt>
 <dd>
-<div class="block">Returns the current number of bytes this Sketch would require if serialized.</div>
+<div class="block">Returns the current number of bytes this Sketch would require if serialized in compact form.</div>
 </dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/quantiles/DoublesSketch.html#getSerializedSizeBytes()">getSerializedSizeBytes()</a></span> - Method in class org.apache.datasketches.quantiles.<a href="org/apache/datasketches/quantiles/DoublesSketch.html" title="class in org.apache.datasketches.quantiles">DoublesSketch</a></dt>
 <dd>&nbsp;</dd>
@@ -3178,6 +3251,8 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 </dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/req/ReqSketch.html#getSerializedSizeBytes()">getSerializedSizeBytes()</a></span> - Method in class org.apache.datasketches.req.<a href="org/apache/datasketches/req/ReqSketch.html" title="class in org.apache.datasketches.req">ReqSketch</a></dt>
 <dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/kll/KllSketch.SketchStructure.html#getSerVer()">getSerVer()</a></span> - Method in enum org.apache.datasketches.kll.<a href="org/apache/datasketches/kll/KllSketch.SketchStructure.html" title="enum in org.apache.datasketches.kll">KllSketch.SketchStructure</a></dt>
+<dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/common/ByteArrayUtil.html#getShortBE(byte%5B%5D,int)">getShortBE(byte[], int)</a></span> - Static method in class org.apache.datasketches.common.<a href="org/apache/datasketches/common/ByteArrayUtil.html" title="class in org.apache.datasketches.common">ByteArrayUtil</a></dt>
 <dd>
 <div class="block">Get a <i>short</i> from the given byte array starting at the given offset
@@ -3194,6 +3269,8 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <dd>
 <div class="block">Gets a result iterator object.</div>
 </dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/kll/KllSketch.SketchStructure.html#getSketchStructure(int,int)">getSketchStructure(int, int)</a></span> - Static method in enum org.apache.datasketches.kll.<a href="org/apache/datasketches/kll/KllSketch.SketchStructure.html" title="enum in org.apache.datasketches.kll">KllSketch.SketchStructure</a></dt>
+<dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/quantiles/ItemsSketch.html#getSketchType()">getSketchType()</a></span> - Method in class org.apache.datasketches.quantiles.<a href="org/apache/datasketches/quantiles/ItemsSketch.html" title="class in org.apache.datasketches.quantiles">ItemsSketch</a></dt>
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/tuple/SerializerDeserializer.html#getSketchType(org.apache.datasketches.memory.Memory)">getSketchType(Memory)</a></span> - Static method in class org.apache.datasketches.tuple.<a href="org/apache/datasketches/tuple/SerializerDeserializer.html" title="class in org.apache.datasketches.tuple">SerializerDeserializer</a></dt>
@@ -3204,6 +3281,8 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/kll/KllFloatsSketch.html#getSortedView()">getSortedView()</a></span> - Method in class org.apache.datasketches.kll.<a href="org/apache/datasketches/kll/KllFloatsSketch.html" title="class in org.apache.datasketches.kll">KllFloatsSketch</a></dt>
 <dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/kll/KllItemsSketch.html#getSortedView()">getSortedView()</a></span> - Method in class org.apache.datasketches.kll.<a href="org/apache/datasketches/kll/KllItemsSketch.html" title="class in org.apache.datasketches.kll">KllItemsSketch</a></dt>
+<dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/quantiles/DoublesSketch.html#getSortedView()">getSortedView()</a></span> - Method in class org.apache.datasketches.quantiles.<a href="org/apache/datasketches/quantiles/DoublesSketch.html" title="class in org.apache.datasketches.quantiles">DoublesSketch</a></dt>
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/quantiles/ItemsSketch.html#getSortedView()">getSortedView()</a></span> - Method in class org.apache.datasketches.quantiles.<a href="org/apache/datasketches/quantiles/ItemsSketch.html" title="class in org.apache.datasketches.quantiles">ItemsSketch</a></dt>
@@ -3383,13 +3462,15 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/kll/KllFloatsSketchSortedViewIterator.html#getWeight()">getWeight()</a></span> - Method in class org.apache.datasketches.kll.<a href="org/apache/datasketches/kll/KllFloatsSketchSortedViewIterator.html" title="class in org.apache.datasketches.kll">KllFloatsSketchSortedViewIterator</a></dt>
 <dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/kll/KllItemsSketchIterator.html#getWeight()">getWeight()</a></span> - Method in class org.apache.datasketches.kll.<a href="org/apache/datasketches/kll/KllItemsSketchIterator.html" title="class in org.apache.datasketches.kll">KllItemsSketchIterator</a></dt>
+<dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/quantiles/DoublesSketchIterator.html#getWeight()">getWeight()</a></span> - Method in class org.apache.datasketches.quantiles.<a href="org/apache/datasketches/quantiles/DoublesSketchIterator.html" title="class in org.apache.datasketches.quantiles">DoublesSketchIterator</a></dt>
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/quantiles/DoublesSketchSortedViewIterator.html#getWeight()">getWeight()</a></span> - Method in class org.apache.datasketches.quantiles.<a href="org/apache/datasketches/quantiles/DoublesSketchSortedViewIterator.html" title="class in org.apache.datasketches.quantiles">DoublesSketchSortedViewIterator</a></dt>
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/quantiles/ItemsSketchIterator.html#getWeight()">getWeight()</a></span> - Method in class org.apache.datasketches.quantiles.<a href="org/apache/datasketches/quantiles/ItemsSketchIterator.html" title="class in org.apache.datasketches.quantiles">ItemsSketchIterator</a></dt>
 <dd>&nbsp;</dd>
-<dt><span class="memberNameLink"><a href="org/apache/datasketches/quantiles/ItemsSketchSortedViewIterator.html#getWeight()">getWeight()</a></span> - Method in class org.apache.datasketches.quantiles.<a href="org/apache/datasketches/quantiles/ItemsSketchSortedViewIterator.html" title="class in org.apache.datasketches.quantiles">ItemsSketchSortedViewIterator</a></dt>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/quantilescommon/GenericSortedViewIterator.html#getWeight()">getWeight()</a></span> - Method in class org.apache.datasketches.quantilescommon.<a href="org/apache/datasketches/quantilescommon/GenericSortedViewIterator.html" title="class in org.apache.datasketches.quantilescommon">GenericSortedViewIterator</a></dt>
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/quantilescommon/QuantilesSketchIterator.html#getWeight()">getWeight()</a></span> - Method in interface org.apache.datasketches.quantilescommon.<a href="org/apache/datasketches/quantilescommon/QuantilesSketchIterator.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesSketchIterator</a></dt>
 <dd>
@@ -3752,6 +3833,10 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <dd>
 <div class="block">Heapify the given Memory and seed as a ArrayOfDoublesUpdatableSketch</div>
 </dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/kll/KllItemsSketch.html#heapify(org.apache.datasketches.memory.Memory,java.util.Comparator,org.apache.datasketches.common.ArrayOfItemsSerDe)">heapify(Memory, Comparator&lt;? super T&gt;, ArrayOfItemsSerDe&lt;T&gt;)</a></span> - Static method in class org.apache.datasketches.kll.<a href="org/apache/datasketches/kll/KllItemsSketch.html" title="class in org.apache.datasketches.kll">KllItemsSketch</a></dt>
+<dd>
+<div class="block">Factory heapify takes a compact sketch image in Memory and instantiates an on-heap sketch.</div>
+</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/sampling/ReservoirItemsSketch.html#heapify(org.apache.datasketches.memory.Memory,org.apache.datasketches.common.ArrayOfItemsSerDe)">heapify(Memory, ArrayOfItemsSerDe&lt;T&gt;)</a></span> - Static method in class org.apache.datasketches.sampling.<a href="org/apache/datasketches/sampling/ReservoirItemsSketch.html" title="class in org.apache.datasketches.sampling">ReservoirItemsSketch</a></dt>
 <dd>
 <div class="block">Returns a sketch instance of this class from the given srcMem,
@@ -4055,6 +4140,11 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <dd>
 <div class="block">Returns a Little-Endian byte array extracted from the given int.</div>
 </dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/common/Util.html#intToFixedLengthString(int,int)">intToFixedLengthString(int, int)</a></span> - Static method in class org.apache.datasketches.common.<a href="org/apache/datasketches/common/Util.html" title="class in org.apache.datasketches.common">Util</a></dt>
+<dd>
+<div class="block">Converts the given number to a string prepended with spaces, if necessary, to
+ match the given length.</div>
+</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/common/Util.html#INVERSE_GOLDEN">INVERSE_GOLDEN</a></span> - Static variable in class org.apache.datasketches.common.<a href="org/apache/datasketches/common/Util.html" title="class in org.apache.datasketches.common">Util</a></dt>
 <dd>
 <div class="block">The inverse golden ratio as a fraction.</div>
@@ -4079,6 +4169,8 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 </dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/theta/UpdateSketch.html#isCompact()">isCompact()</a></span> - Method in class org.apache.datasketches.theta.<a href="org/apache/datasketches/theta/UpdateSketch.html" title="class in org.apache.datasketches.theta">UpdateSketch</a></dt>
 <dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/kll/KllSketch.html#isCompactMemoryFormat()">isCompactMemoryFormat()</a></span> - Method in class org.apache.datasketches.kll.<a href="org/apache/datasketches/kll/KllSketch.html" title="class in org.apache.datasketches.kll">KllSketch</a></dt>
+<dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/kll/KllSketch.html#isDirect()">isDirect()</a></span> - Method in class org.apache.datasketches.kll.<a href="org/apache/datasketches/kll/KllSketch.html" title="class in org.apache.datasketches.kll">KllSketch</a></dt>
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/quantiles/DoublesSketch.html#isDirect()">isDirect()</a></span> - Method in class org.apache.datasketches.quantiles.<a href="org/apache/datasketches/quantiles/DoublesSketch.html" title="class in org.apache.datasketches.quantiles">DoublesSketch</a></dt>
@@ -4122,6 +4214,8 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/kll/KllFloatsSketchSortedView.html#isEmpty()">isEmpty()</a></span> - Method in class org.apache.datasketches.kll.<a href="org/apache/datasketches/kll/KllFloatsSketchSortedView.html" title="class in org.apache.datasketches.kll">KllFloatsSketchSortedView</a></dt>
 <dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/kll/KllItemsSketchSortedView.html#isEmpty()">isEmpty()</a></span> - Method in class org.apache.datasketches.kll.<a href="org/apache/datasketches/kll/KllItemsSketchSortedView.html" title="class in org.apache.datasketches.kll">KllItemsSketchSortedView</a></dt>
+<dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/kll/KllSketch.html#isEmpty()">isEmpty()</a></span> - Method in class org.apache.datasketches.kll.<a href="org/apache/datasketches/kll/KllSketch.html" title="class in org.apache.datasketches.kll">KllSketch</a></dt>
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/quantiles/DoublesSketch.html#isEmpty()">isEmpty()</a></span> - Method in class org.apache.datasketches.quantiles.<a href="org/apache/datasketches/quantiles/DoublesSketch.html" title="class in org.apache.datasketches.quantiles">DoublesSketch</a></dt>
@@ -4279,6 +4373,8 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <dd>
 <div class="block">Returns a single item from the samples contained in the sketch.</div>
 </dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/kll/KllSketch.SketchType.html#ITEMS_SKETCH">ITEMS_SKETCH</a></span> - org.apache.datasketches.kll.<a href="org/apache/datasketches/kll/KllSketch.SketchType.html" title="enum in org.apache.datasketches.kll">KllSketch.SketchType</a></dt>
+<dd>&nbsp;</dd>
 <dt><a href="org/apache/datasketches/frequencies/ItemsSketch.html" title="class in org.apache.datasketches.frequencies"><span class="typeNameLink">ItemsSketch</span></a>&lt;<a href="org/apache/datasketches/frequencies/ItemsSketch.html" title="type parameter in ItemsSketch">T</a>&gt; - Class in <a href="org/apache/datasketches/frequencies/package-summary.html">org.apache.datasketches.frequencies</a></dt>
 <dd>
 <div class="block">This sketch is useful for tracking approximate frequencies of items of type <i>&lt;T&gt;</i>
@@ -4307,7 +4403,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <dd>
 <div class="block">The SortedView of the Classic Quantiles ItemsSketch.</div>
 </dd>
-<dt><a href="org/apache/datasketches/quantiles/ItemsSketchSortedViewIterator.html" title="class in org.apache.datasketches.quantiles"><span class="typeNameLink">ItemsSketchSortedViewIterator</span></a>&lt;<a href="org/apache/datasketches/quantiles/ItemsSketchSortedViewIterator.html" title="type parameter in ItemsSketchSortedViewIterator">T</a>&gt; - Class in <a href="org/apache/datasketches/quantiles/package-summary.html">org.apache.datasketches.quantiles</a></dt>
+<dt><a href="org/apache/datasketches/quantiles/ItemsSketchSortedView.ItemsSketchSortedViewIterator.html" title="class in org.apache.datasketches.quantiles"><span class="typeNameLink">ItemsSketchSortedView.ItemsSketchSortedViewIterator</span></a>&lt;<a href="org/apache/datasketches/quantiles/ItemsSketchSortedView.ItemsSketchSortedViewIterator.html" title="type parameter in ItemsSketchSortedView.ItemsSketchSortedViewIterator">T</a>&gt; - Class in <a href="org/apache/datasketches/quantiles/ [...]
 <dd>
 <div class="block">Iterator over ItemsSketchSortedView.</div>
 </dd>
@@ -4323,6 +4419,10 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/kll/KllFloatsSketchSortedView.html#iterator()">iterator()</a></span> - Method in class org.apache.datasketches.kll.<a href="org/apache/datasketches/kll/KllFloatsSketchSortedView.html" title="class in org.apache.datasketches.kll">KllFloatsSketchSortedView</a></dt>
 <dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/kll/KllItemsSketch.html#iterator()">iterator()</a></span> - Method in class org.apache.datasketches.kll.<a href="org/apache/datasketches/kll/KllItemsSketch.html" title="class in org.apache.datasketches.kll">KllItemsSketch</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/kll/KllItemsSketchSortedView.html#iterator()">iterator()</a></span> - Method in class org.apache.datasketches.kll.<a href="org/apache/datasketches/kll/KllItemsSketchSortedView.html" title="class in org.apache.datasketches.kll">KllItemsSketchSortedView</a></dt>
+<dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/quantiles/DoublesSketch.html#iterator()">iterator()</a></span> - Method in class org.apache.datasketches.quantiles.<a href="org/apache/datasketches/quantiles/DoublesSketch.html" title="class in org.apache.datasketches.quantiles">DoublesSketch</a></dt>
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/quantiles/DoublesSketchSortedView.html#iterator()">iterator()</a></span> - Method in class org.apache.datasketches.quantiles.<a href="org/apache/datasketches/quantiles/DoublesSketchSortedView.html" title="class in org.apache.datasketches.quantiles">DoublesSketchSortedView</a></dt>
@@ -4456,10 +4556,38 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <dd>
 <div class="block">Iterator over KllFloatsSketchSortedView</div>
 </dd>
+<dt><a href="org/apache/datasketches/kll/KllItemsSketch.html" title="class in org.apache.datasketches.kll"><span class="typeNameLink">KllItemsSketch</span></a>&lt;<a href="org/apache/datasketches/kll/KllItemsSketch.html" title="type parameter in KllItemsSketch">T</a>&gt; - Class in <a href="org/apache/datasketches/kll/package-summary.html">org.apache.datasketches.kll</a></dt>
+<dd>
+<div class="block">This variation of the KllSketch implements generic data types.</div>
+</dd>
+<dt><a href="org/apache/datasketches/kll/KllItemsSketchIterator.html" title="class in org.apache.datasketches.kll"><span class="typeNameLink">KllItemsSketchIterator</span></a>&lt;<a href="org/apache/datasketches/kll/KllItemsSketchIterator.html" title="type parameter in KllItemsSketchIterator">T</a>&gt; - Class in <a href="org/apache/datasketches/kll/package-summary.html">org.apache.datasketches.kll</a></dt>
+<dd>
+<div class="block">Iterator over KllItemsSketch.</div>
+</dd>
+<dt><a href="org/apache/datasketches/kll/KllItemsSketchSortedView.html" title="class in org.apache.datasketches.kll"><span class="typeNameLink">KllItemsSketchSortedView</span></a>&lt;<a href="org/apache/datasketches/kll/KllItemsSketchSortedView.html" title="type parameter in KllItemsSketchSortedView">T</a>&gt; - Class in <a href="org/apache/datasketches/kll/package-summary.html">org.apache.datasketches.kll</a></dt>
+<dd>
+<div class="block">The SortedView of the KllItemsSketch.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/kll/KllItemsSketchSortedView.html#%3Cinit%3E(org.apache.datasketches.kll.KllItemsSketch)">KllItemsSketchSortedView(KllItemsSketch&lt;T&gt;)</a></span> - Constructor for class org.apache.datasketches.kll.<a href="org/apache/datasketches/kll/KllItemsSketchSortedView.html" title="class in org.apache.datasketches.kll">KllItemsSketchSortedView</a></dt>
+<dd>
+<div class="block">Constructs this Sorted View given the sketch</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/kll/KllItemsSketchSortedView.html#%3Cinit%3E(T%5B%5D,long%5B%5D,long,T,java.util.Comparator)">KllItemsSketchSortedView(T[], long[], long, T, Comparator&lt;? super T&gt;)</a></span> - Constructor for class org.apache.datasketches.kll.<a href="org/apache/datasketches/kll/KllItemsSketchSortedView.html" title="class in org.apache.datasketches.kll">KllItemsSketchSortedView</a></dt>
+<dd>
+<div class="block">Construct from elements for testing only.</div>
+</dd>
+<dt><a href="org/apache/datasketches/kll/KllItemsSketchSortedView.KllItemsSketchSortedViewIterator.html" title="class in org.apache.datasketches.kll"><span class="typeNameLink">KllItemsSketchSortedView.KllItemsSketchSortedViewIterator</span></a>&lt;<a href="org/apache/datasketches/kll/KllItemsSketchSortedView.KllItemsSketchSortedViewIterator.html" title="type parameter in KllItemsSketchSortedView.KllItemsSketchSortedViewIterator">T</a>&gt; - Class in <a href="org/apache/datasketches/kll/ [...]
+<dd>
+<div class="block">Iterator over KllItemsSketchSortedView.</div>
+</dd>
 <dt><a href="org/apache/datasketches/kll/KllSketch.html" title="class in org.apache.datasketches.kll"><span class="typeNameLink">KllSketch</span></a> - Class in <a href="org/apache/datasketches/kll/package-summary.html">org.apache.datasketches.kll</a></dt>
 <dd>
 <div class="block">This class is the root of the KLL sketch class hierarchy.</div>
 </dd>
+<dt><a href="org/apache/datasketches/kll/KllSketch.SketchStructure.html" title="enum in org.apache.datasketches.kll"><span class="typeNameLink">KllSketch.SketchStructure</span></a> - Enum in <a href="org/apache/datasketches/kll/package-summary.html">org.apache.datasketches.kll</a></dt>
+<dd>
+<div class="block">Used primarily to define the structure of the serialized sketch.</div>
+</dd>
 <dt><a href="org/apache/datasketches/kll/KllSketch.SketchType.html" title="enum in org.apache.datasketches.kll"><span class="typeNameLink">KllSketch.SketchType</span></a> - Enum in <a href="org/apache/datasketches/kll/package-summary.html">org.apache.datasketches.kll</a></dt>
 <dd>
 <div class="block">Used to define the variable type of the current instance of this class.</div>
@@ -4470,6 +4598,10 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 </a>
 <h2 class="title">L</h2>
 <dl>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/common/Util.html#le(java.lang.Object,java.lang.Object,java.util.Comparator)">le(Object, Object, Comparator&lt;? super T&gt;)</a></span> - Static method in class org.apache.datasketches.common.<a href="org/apache/datasketches/common/Util.html" title="class in org.apache.datasketches.common">Util</a></dt>
+<dd>
+<div class="block">Is item1 Less-Than-Or-Equal-To item2</div>
+</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/quantilescommon/GenericInequalitySearch.Inequality.html#LE">LE</a></span> - org.apache.datasketches.quantilescommon.<a href="org/apache/datasketches/quantilescommon/GenericInequalitySearch.Inequality.html" title="enum in org.apache.datasketches.quantilescommon">GenericInequalitySearch.Inequality</a></dt>
 <dd>
 <div class="block">Given a sorted array of increasing values <i>arr[]</i> and a key value <i>V</i>,
@@ -4532,6 +4664,10 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <dd>
 <div class="block">The java line separator character as a String.</div>
 </dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/common/Util.html#lt(java.lang.Object,java.lang.Object,java.util.Comparator)">lt(Object, Object, Comparator&lt;? super T&gt;)</a></span> - Static method in class org.apache.datasketches.common.<a href="org/apache/datasketches/common/Util.html" title="class in org.apache.datasketches.common">Util</a></dt>
+<dd>
+<div class="block">Is item1 Less-Than item2</div>
+</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/quantilescommon/GenericInequalitySearch.Inequality.html#LT">LT</a></span> - org.apache.datasketches.quantilescommon.<a href="org/apache/datasketches/quantilescommon/GenericInequalitySearch.Inequality.html" title="enum in org.apache.datasketches.quantilescommon">GenericInequalitySearch.Inequality</a></dt>
 <dd>
 <div class="block">Given a sorted array of increasing values <i>arr[]</i> and a key value <i>v</i>,
@@ -4570,6 +4706,12 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <dd>
 <div class="block">The largest Log2 nom entries allowed: 26.</div>
 </dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/common/Util.html#maxT(java.lang.Object,java.lang.Object,java.util.Comparator)">maxT(Object, Object, Comparator&lt;? super T&gt;)</a></span> - Static method in class org.apache.datasketches.common.<a href="org/apache/datasketches/common/Util.html" title="class in org.apache.datasketches.common">Util</a></dt>
+<dd>
+<div class="block">Finds the maximum of two generic items</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/quantilescommon/QuantilesAPI.html#MEM_REQ_SVR_NULL_MSG">MEM_REQ_SVR_NULL_MSG</a></span> - Static variable in interface org.apache.datasketches.quantilescommon.<a href="org/apache/datasketches/quantilescommon/QuantilesAPI.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesAPI</a></dt>
+<dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/theta/Intersection.html#memChecks(org.apache.datasketches.memory.Memory)">memChecks(Memory)</a></span> - Static method in class org.apache.datasketches.theta.<a href="org/apache/datasketches/theta/Intersection.html" title="class in org.apache.datasketches.theta">Intersection</a></dt>
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/frequencies/ItemsSketch.html#merge(org.apache.datasketches.frequencies.ItemsSketch)">merge(ItemsSketch&lt;T&gt;)</a></span> - Method in class org.apache.datasketches.frequencies.<a href="org/apache/datasketches/frequencies/ItemsSketch.html" title="class in org.apache.datasketches.frequencies">ItemsSketch</a></dt>
@@ -4580,6 +4722,12 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <dd>
 <div class="block">This function merges the other sketch into this one.</div>
 </dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/kll/KllDoublesSketch.html#merge(org.apache.datasketches.kll.KllSketch)">merge(KllSketch)</a></span> - Method in class org.apache.datasketches.kll.<a href="org/apache/datasketches/kll/KllDoublesSketch.html" title="class in org.apache.datasketches.kll">KllDoublesSketch</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/kll/KllFloatsSketch.html#merge(org.apache.datasketches.kll.KllSketch)">merge(KllSketch)</a></span> - Method in class org.apache.datasketches.kll.<a href="org/apache/datasketches/kll/KllFloatsSketch.html" title="class in org.apache.datasketches.kll">KllFloatsSketch</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/kll/KllItemsSketch.html#merge(org.apache.datasketches.kll.KllSketch)">merge(KllSketch)</a></span> - Method in class org.apache.datasketches.kll.<a href="org/apache/datasketches/kll/KllItemsSketch.html" title="class in org.apache.datasketches.kll">KllItemsSketch</a></dt>
+<dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/kll/KllSketch.html#merge(org.apache.datasketches.kll.KllSketch)">merge(KllSketch)</a></span> - Method in class org.apache.datasketches.kll.<a href="org/apache/datasketches/kll/KllSketch.html" title="class in org.apache.datasketches.kll">KllSketch</a></dt>
 <dd>
 <div class="block">Merges another sketch into this one.</div>
@@ -4617,6 +4765,10 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <dd>
 <div class="block">Returns the smallest log hash table size given the count of items and the rebuild threshold.</div>
 </dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/common/Util.html#minT(java.lang.Object,java.lang.Object,java.util.Comparator)">minT(Object, Object, Comparator&lt;? super T&gt;)</a></span> - Static method in class org.apache.datasketches.common.<a href="org/apache/datasketches/common/Util.html" title="class in org.apache.datasketches.common">Util</a></dt>
+<dd>
+<div class="block">Finds the minimum of two generic items</div>
+</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/hash/MurmurHash3Adaptor.html#modulo(long%5B%5D,int)">modulo(long[], int)</a></span> - Static method in class org.apache.datasketches.hash.<a href="org/apache/datasketches/hash/MurmurHash3Adaptor.html" title="class in org.apache.datasketches.hash">MurmurHash3Adaptor</a></dt>
 <dd>
 <div class="block">Returns the remainder from the modulo division of the 128-bit output of the murmurHash3 by the
@@ -4661,19 +4813,19 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 </dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/kll/KllDoublesSketch.html#newDirectInstance(int,org.apache.datasketches.memory.WritableMemory,org.apache.datasketches.memory.MemoryRequestServer)">newDirectInstance(int, WritableMemory, MemoryRequestServer)</a></span> - Static method in class org.apache.datasketches.kll.<a href="org/apache/datasketches/kll/KllDoublesSketch.html" title="class in org.apache.datasketches.kll">KllDoublesSketch</a></dt>
 <dd>
-<div class="block">Create a new direct instance of this sketch with a given <em>k</em>.</div>
+<div class="block">Create a new direct updatable instance of this sketch with a given <em>k</em>.</div>
 </dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/kll/KllFloatsSketch.html#newDirectInstance(int,org.apache.datasketches.memory.WritableMemory,org.apache.datasketches.memory.MemoryRequestServer)">newDirectInstance(int, WritableMemory, MemoryRequestServer)</a></span> - Static method in class org.apache.datasketches.kll.<a href="org/apache/datasketches/kll/KllFloatsSketch.html" title="class in org.apache.datasketches.kll">KllFloatsSketch</a></dt>
 <dd>
-<div class="block">Create a new direct instance of this sketch with a given <em>k</em>.</div>
+<div class="block">Create a new direct updatable instance of this sketch with a given <em>k</em>.</div>
 </dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/kll/KllDoublesSketch.html#newDirectInstance(org.apache.datasketches.memory.WritableMemory,org.apache.datasketches.memory.MemoryRequestServer)">newDirectInstance(WritableMemory, MemoryRequestServer)</a></span> - Static method in class org.apache.datasketches.kll.<a href="org/apache/datasketches/kll/KllDoublesSketch.html" title="class in org.apache.datasketches.kll">KllDoublesSketch</a></dt>
 <dd>
-<div class="block">Create a new direct instance of this sketch with the default <em>k</em>.</div>
+<div class="block">Create a new direct updatable instance of this sketch with the default <em>k</em>.</div>
 </dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/kll/KllFloatsSketch.html#newDirectInstance(org.apache.datasketches.memory.WritableMemory,org.apache.datasketches.memory.MemoryRequestServer)">newDirectInstance(WritableMemory, MemoryRequestServer)</a></span> - Static method in class org.apache.datasketches.kll.<a href="org/apache/datasketches/kll/KllFloatsSketch.html" title="class in org.apache.datasketches.kll">KllFloatsSketch</a></dt>
 <dd>
-<div class="block">Create a new direct instance of this sketch with the default <em>k</em>.</div>
+<div class="block">Create a new direct updatable instance of this sketch with the default <em>k</em>.</div>
 </dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/kll/KllDoublesSketch.html#newHeapInstance()">newHeapInstance()</a></span> - Static method in class org.apache.datasketches.kll.<a href="org/apache/datasketches/kll/KllDoublesSketch.html" title="class in org.apache.datasketches.kll">KllDoublesSketch</a></dt>
 <dd>
@@ -4691,6 +4843,14 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <dd>
 <div class="block">Create a new heap instance of this sketch with a given parameter <em>k</em>.</div>
 </dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/kll/KllItemsSketch.html#newHeapInstance(int,java.util.Comparator,org.apache.datasketches.common.ArrayOfItemsSerDe)">newHeapInstance(int, Comparator&lt;? super T&gt;, ArrayOfItemsSerDe&lt;T&gt;)</a></span> - Static method in class org.apache.datasketches.kll.<a href="org/apache/datasketches/kll/KllItemsSketch.html" title="class in org.apache.datasketches.kll">KllItemsSketch</a></dt>
+<dd>
+<div class="block">Create a new heap instance of this sketch with a given parameter <em>k</em>.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/kll/KllItemsSketch.html#newHeapInstance(java.util.Comparator,org.apache.datasketches.common.ArrayOfItemsSerDe)">newHeapInstance(Comparator&lt;? super T&gt;, ArrayOfItemsSerDe&lt;T&gt;)</a></span> - Static method in class org.apache.datasketches.kll.<a href="org/apache/datasketches/kll/KllItemsSketch.html" title="class in org.apache.datasketches.kll">KllItemsSketch</a></dt>
+<dd>
+<div class="block">Create a new heap instance of this sketch with the default <em>k = 200</em>.</div>
+</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/sampling/ReservoirItemsSketch.html#newInstance(int)">newInstance(int)</a></span> - Static method in class org.apache.datasketches.sampling.<a href="org/apache/datasketches/sampling/ReservoirItemsSketch.html" title="class in org.apache.datasketches.sampling">ReservoirItemsSketch</a></dt>
 <dd>
 <div class="block">Construct a mergeable sampling sketch with up to k samples using the default resize
@@ -4748,13 +4908,15 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/kll/KllFloatsSketchSortedViewIterator.html#next()">next()</a></span> - Method in class org.apache.datasketches.kll.<a href="org/apache/datasketches/kll/KllFloatsSketchSortedViewIterator.html" title="class in org.apache.datasketches.kll">KllFloatsSketchSortedViewIterator</a></dt>
 <dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/kll/KllItemsSketchIterator.html#next()">next()</a></span> - Method in class org.apache.datasketches.kll.<a href="org/apache/datasketches/kll/KllItemsSketchIterator.html" title="class in org.apache.datasketches.kll">KllItemsSketchIterator</a></dt>
+<dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/quantiles/DoublesSketchIterator.html#next()">next()</a></span> - Method in class org.apache.datasketches.quantiles.<a href="org/apache/datasketches/quantiles/DoublesSketchIterator.html" title="class in org.apache.datasketches.quantiles">DoublesSketchIterator</a></dt>
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/quantiles/DoublesSketchSortedViewIterator.html#next()">next()</a></span> - Method in class org.apache.datasketches.quantiles.<a href="org/apache/datasketches/quantiles/DoublesSketchSortedViewIterator.html" title="class in org.apache.datasketches.quantiles">DoublesSketchSortedViewIterator</a></dt>
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/quantiles/ItemsSketchIterator.html#next()">next()</a></span> - Method in class org.apache.datasketches.quantiles.<a href="org/apache/datasketches/quantiles/ItemsSketchIterator.html" title="class in org.apache.datasketches.quantiles">ItemsSketchIterator</a></dt>
 <dd>&nbsp;</dd>
-<dt><span class="memberNameLink"><a href="org/apache/datasketches/quantiles/ItemsSketchSortedViewIterator.html#next()">next()</a></span> - Method in class org.apache.datasketches.quantiles.<a href="org/apache/datasketches/quantiles/ItemsSketchSortedViewIterator.html" title="class in org.apache.datasketches.quantiles">ItemsSketchSortedViewIterator</a></dt>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/quantilescommon/GenericSortedViewIterator.html#next()">next()</a></span> - Method in class org.apache.datasketches.quantilescommon.<a href="org/apache/datasketches/quantilescommon/GenericSortedViewIterator.html" title="class in org.apache.datasketches.quantilescommon">GenericSortedViewIterator</a></dt>
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/quantilescommon/QuantilesSketchIterator.html#next()">next()</a></span> - Method in interface org.apache.datasketches.quantilescommon.<a href="org/apache/datasketches/quantilescommon/QuantilesSketchIterator.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesSketchIterator</a></dt>
 <dd>
@@ -4798,6 +4960,8 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <dd>
 <div class="block">Computes an approximation to normalCDF(x).</div>
 </dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/quantilescommon/QuantilesAPI.html#NOT_SINGLE_ITEM_MSG">NOT_SINGLE_ITEM_MSG</a></span> - Static variable in interface org.apache.datasketches.quantilescommon.<a href="org/apache/datasketches/quantilescommon/QuantilesAPI.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesAPI</a></dt>
+<dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/theta/AnotB.html#notB(org.apache.datasketches.theta.Sketch)">notB(Sketch)</a></span> - Method in class org.apache.datasketches.theta.<a href="org/apache/datasketches/theta/AnotB.html" title="class in org.apache.datasketches.theta">AnotB</a></dt>
 <dd>
 <div class="block">This is part of a multistep, stateful AnotB operation and sets the given Theta sketch as the
@@ -4825,6 +4989,10 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
  two's complement binary representation of the specified long value, or 64 if the value is equal
  to minus one.</div>
 </dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/common/Util.html#numDigits(int)">numDigits(int)</a></span> - Static method in class org.apache.datasketches.common.<a href="org/apache/datasketches/common/Util.html" title="class in org.apache.datasketches.common">Util</a></dt>
+<dd>
+<div class="block">Computes the number of decimal digits of the number n</div>
+</dd>
 </dl>
 <a id="I:O">
 <!--   -->
@@ -5253,6 +5421,8 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <dd>
 <div class="block">Resets this sketch to the empty state.</div>
 </dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/kll/KllItemsSketch.html#reset()">reset()</a></span> - Method in class org.apache.datasketches.kll.<a href="org/apache/datasketches/kll/KllItemsSketch.html" title="class in org.apache.datasketches.kll">KllItemsSketch</a></dt>
+<dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/quantiles/CompactDoublesSketch.html#reset()">reset()</a></span> - Method in class org.apache.datasketches.quantiles.<a href="org/apache/datasketches/quantiles/CompactDoublesSketch.html" title="class in org.apache.datasketches.quantiles">CompactDoublesSketch</a></dt>
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/quantiles/DoublesSketch.html#reset()">reset()</a></span> - Method in class org.apache.datasketches.quantiles.<a href="org/apache/datasketches/quantiles/DoublesSketch.html" title="class in org.apache.datasketches.quantiles">DoublesSketch</a></dt>
@@ -5388,21 +5558,37 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <dd>
 <div class="block">Defines the sketch classes that this SerializerDeserializer can handle.</div>
 </dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/common/ArrayOfBooleansSerDe.html#serializeToByteArray(java.lang.Boolean)">serializeToByteArray(Boolean)</a></span> - Method in class org.apache.datasketches.common.<a href="org/apache/datasketches/common/ArrayOfBooleansSerDe.html" title="class in org.apache.datasketches.common">ArrayOfBooleansSerDe</a></dt>
+<dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/common/ArrayOfBooleansSerDe.html#serializeToByteArray(java.lang.Boolean%5B%5D)">serializeToByteArray(Boolean[])</a></span> - Method in class org.apache.datasketches.common.<a href="org/apache/datasketches/common/ArrayOfBooleansSerDe.html" title="class in org.apache.datasketches.common">ArrayOfBooleansSerDe</a></dt>
 <dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/common/ArrayOfDoublesSerDe.html#serializeToByteArray(java.lang.Double)">serializeToByteArray(Double)</a></span> - Method in class org.apache.datasketches.common.<a href="org/apache/datasketches/common/ArrayOfDoublesSerDe.html" title="class in org.apache.datasketches.common">ArrayOfDoublesSerDe</a></dt>
+<dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/common/ArrayOfDoublesSerDe.html#serializeToByteArray(java.lang.Double%5B%5D)">serializeToByteArray(Double[])</a></span> - Method in class org.apache.datasketches.common.<a href="org/apache/datasketches/common/ArrayOfDoublesSerDe.html" title="class in org.apache.datasketches.common">ArrayOfDoublesSerDe</a></dt>
 <dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/common/ArrayOfLongsSerDe.html#serializeToByteArray(java.lang.Long)">serializeToByteArray(Long)</a></span> - Method in class org.apache.datasketches.common.<a href="org/apache/datasketches/common/ArrayOfLongsSerDe.html" title="class in org.apache.datasketches.common">ArrayOfLongsSerDe</a></dt>
+<dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/common/ArrayOfLongsSerDe.html#serializeToByteArray(java.lang.Long%5B%5D)">serializeToByteArray(Long[])</a></span> - Method in class org.apache.datasketches.common.<a href="org/apache/datasketches/common/ArrayOfLongsSerDe.html" title="class in org.apache.datasketches.common">ArrayOfLongsSerDe</a></dt>
 <dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/common/ArrayOfNumbersSerDe.html#serializeToByteArray(java.lang.Number)">serializeToByteArray(Number)</a></span> - Method in class org.apache.datasketches.common.<a href="org/apache/datasketches/common/ArrayOfNumbersSerDe.html" title="class in org.apache.datasketches.common">ArrayOfNumbersSerDe</a></dt>
+<dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/common/ArrayOfNumbersSerDe.html#serializeToByteArray(java.lang.Number%5B%5D)">serializeToByteArray(Number[])</a></span> - Method in class org.apache.datasketches.common.<a href="org/apache/datasketches/common/ArrayOfNumbersSerDe.html" title="class in org.apache.datasketches.common">ArrayOfNumbersSerDe</a></dt>
 <dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/common/ArrayOfStringsSerDe.html#serializeToByteArray(java.lang.String)">serializeToByteArray(String)</a></span> - Method in class org.apache.datasketches.common.<a href="org/apache/datasketches/common/ArrayOfStringsSerDe.html" title="class in org.apache.datasketches.common">ArrayOfStringsSerDe</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/common/ArrayOfUtf16StringsSerDe.html#serializeToByteArray(java.lang.String)">serializeToByteArray(String)</a></span> - Method in class org.apache.datasketches.common.<a href="org/apache/datasketches/common/ArrayOfUtf16StringsSerDe.html" title="class in org.apache.datasketches.common">ArrayOfUtf16StringsSerDe</a></dt>
+<dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/common/ArrayOfStringsSerDe.html#serializeToByteArray(java.lang.String%5B%5D)">serializeToByteArray(String[])</a></span> - Method in class org.apache.datasketches.common.<a href="org/apache/datasketches/common/ArrayOfStringsSerDe.html" title="class in org.apache.datasketches.common">ArrayOfStringsSerDe</a></dt>
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/common/ArrayOfUtf16StringsSerDe.html#serializeToByteArray(java.lang.String%5B%5D)">serializeToByteArray(String[])</a></span> - Method in class org.apache.datasketches.common.<a href="org/apache/datasketches/common/ArrayOfUtf16StringsSerDe.html" title="class in org.apache.datasketches.common">ArrayOfUtf16StringsSerDe</a></dt>
 <dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/common/ArrayOfItemsSerDe.html#serializeToByteArray(T)">serializeToByteArray(T)</a></span> - Method in class org.apache.datasketches.common.<a href="org/apache/datasketches/common/ArrayOfItemsSerDe.html" title="class in org.apache.datasketches.common">ArrayOfItemsSerDe</a></dt>
+<dd>
+<div class="block">Serialize a single unserialized item to a byte array.</div>
+</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/common/ArrayOfItemsSerDe.html#serializeToByteArray(T%5B%5D)">serializeToByteArray(T[])</a></span> - Method in class org.apache.datasketches.common.<a href="org/apache/datasketches/common/ArrayOfItemsSerDe.html" title="class in org.apache.datasketches.common">ArrayOfItemsSerDe</a></dt>
 <dd>
-<div class="block">Serialize an array of items to byte array.</div>
+<div class="block">Serialize an array of unserialized items to a byte array of contiguous serialized items.</div>
 </dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/frequencies/LongsSketch.html#serializeToString()">serializeToString()</a></span> - Method in class org.apache.datasketches.frequencies.<a href="org/apache/datasketches/frequencies/LongsSketch.html" title="class in org.apache.datasketches.frequencies">LongsSketch</a></dt>
 <dd>
@@ -5606,6 +5792,50 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <dd>
 <div class="block">Tests similarity of a measured Sketch against an expected Sketch.</div>
 </dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/common/ArrayOfBooleansSerDe.html#sizeOf(java.lang.Boolean)">sizeOf(Boolean)</a></span> - Method in class org.apache.datasketches.common.<a href="org/apache/datasketches/common/ArrayOfBooleansSerDe.html" title="class in org.apache.datasketches.common">ArrayOfBooleansSerDe</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/common/ArrayOfBooleansSerDe.html#sizeOf(java.lang.Boolean%5B%5D)">sizeOf(Boolean[])</a></span> - Method in class org.apache.datasketches.common.<a href="org/apache/datasketches/common/ArrayOfBooleansSerDe.html" title="class in org.apache.datasketches.common">ArrayOfBooleansSerDe</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/common/ArrayOfDoublesSerDe.html#sizeOf(java.lang.Double)">sizeOf(Double)</a></span> - Method in class org.apache.datasketches.common.<a href="org/apache/datasketches/common/ArrayOfDoublesSerDe.html" title="class in org.apache.datasketches.common">ArrayOfDoublesSerDe</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/common/ArrayOfDoublesSerDe.html#sizeOf(java.lang.Double%5B%5D)">sizeOf(Double[])</a></span> - Method in class org.apache.datasketches.common.<a href="org/apache/datasketches/common/ArrayOfDoublesSerDe.html" title="class in org.apache.datasketches.common">ArrayOfDoublesSerDe</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/common/ArrayOfLongsSerDe.html#sizeOf(java.lang.Long)">sizeOf(Long)</a></span> - Method in class org.apache.datasketches.common.<a href="org/apache/datasketches/common/ArrayOfLongsSerDe.html" title="class in org.apache.datasketches.common">ArrayOfLongsSerDe</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/common/ArrayOfLongsSerDe.html#sizeOf(java.lang.Long%5B%5D)">sizeOf(Long[])</a></span> - Method in class org.apache.datasketches.common.<a href="org/apache/datasketches/common/ArrayOfLongsSerDe.html" title="class in org.apache.datasketches.common">ArrayOfLongsSerDe</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/common/ArrayOfNumbersSerDe.html#sizeOf(java.lang.Number)">sizeOf(Number)</a></span> - Method in class org.apache.datasketches.common.<a href="org/apache/datasketches/common/ArrayOfNumbersSerDe.html" title="class in org.apache.datasketches.common">ArrayOfNumbersSerDe</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/common/ArrayOfNumbersSerDe.html#sizeOf(java.lang.Number%5B%5D)">sizeOf(Number[])</a></span> - Method in class org.apache.datasketches.common.<a href="org/apache/datasketches/common/ArrayOfNumbersSerDe.html" title="class in org.apache.datasketches.common">ArrayOfNumbersSerDe</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/common/ArrayOfStringsSerDe.html#sizeOf(java.lang.String)">sizeOf(String)</a></span> - Method in class org.apache.datasketches.common.<a href="org/apache/datasketches/common/ArrayOfStringsSerDe.html" title="class in org.apache.datasketches.common">ArrayOfStringsSerDe</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/common/ArrayOfUtf16StringsSerDe.html#sizeOf(java.lang.String)">sizeOf(String)</a></span> - Method in class org.apache.datasketches.common.<a href="org/apache/datasketches/common/ArrayOfUtf16StringsSerDe.html" title="class in org.apache.datasketches.common">ArrayOfUtf16StringsSerDe</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/common/ArrayOfBooleansSerDe.html#sizeOf(org.apache.datasketches.memory.Memory,long,int)">sizeOf(Memory, long, int)</a></span> - Method in class org.apache.datasketches.common.<a href="org/apache/datasketches/common/ArrayOfBooleansSerDe.html" title="class in org.apache.datasketches.common">ArrayOfBooleansSerDe</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/common/ArrayOfDoublesSerDe.html#sizeOf(org.apache.datasketches.memory.Memory,long,int)">sizeOf(Memory, long, int)</a></span> - Method in class org.apache.datasketches.common.<a href="org/apache/datasketches/common/ArrayOfDoublesSerDe.html" title="class in org.apache.datasketches.common">ArrayOfDoublesSerDe</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/common/ArrayOfItemsSerDe.html#sizeOf(org.apache.datasketches.memory.Memory,long,int)">sizeOf(Memory, long, int)</a></span> - Method in class org.apache.datasketches.common.<a href="org/apache/datasketches/common/ArrayOfItemsSerDe.html" title="class in org.apache.datasketches.common">ArrayOfItemsSerDe</a></dt>
+<dd>
+<div class="block">Returns the serialized size in bytes of the number of contiguous serialized items in Memory.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/common/ArrayOfLongsSerDe.html#sizeOf(org.apache.datasketches.memory.Memory,long,int)">sizeOf(Memory, long, int)</a></span> - Method in class org.apache.datasketches.common.<a href="org/apache/datasketches/common/ArrayOfLongsSerDe.html" title="class in org.apache.datasketches.common">ArrayOfLongsSerDe</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/common/ArrayOfNumbersSerDe.html#sizeOf(org.apache.datasketches.memory.Memory,long,int)">sizeOf(Memory, long, int)</a></span> - Method in class org.apache.datasketches.common.<a href="org/apache/datasketches/common/ArrayOfNumbersSerDe.html" title="class in org.apache.datasketches.common">ArrayOfNumbersSerDe</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/common/ArrayOfStringsSerDe.html#sizeOf(org.apache.datasketches.memory.Memory,long,int)">sizeOf(Memory, long, int)</a></span> - Method in class org.apache.datasketches.common.<a href="org/apache/datasketches/common/ArrayOfStringsSerDe.html" title="class in org.apache.datasketches.common">ArrayOfStringsSerDe</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/common/ArrayOfUtf16StringsSerDe.html#sizeOf(org.apache.datasketches.memory.Memory,long,int)">sizeOf(Memory, long, int)</a></span> - Method in class org.apache.datasketches.common.<a href="org/apache/datasketches/common/ArrayOfUtf16StringsSerDe.html" title="class in org.apache.datasketches.common">ArrayOfUtf16StringsSerDe</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/common/ArrayOfItemsSerDe.html#sizeOf(T)">sizeOf(T)</a></span> - Method in class org.apache.datasketches.common.<a href="org/apache/datasketches/common/ArrayOfItemsSerDe.html" title="class in org.apache.datasketches.common">ArrayOfItemsSerDe</a></dt>
+<dd>
+<div class="block">Returns the serialized size in bytes of a single unserialized item.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/common/ArrayOfItemsSerDe.html#sizeOf(T%5B%5D)">sizeOf(T[])</a></span> - Method in class org.apache.datasketches.common.<a href="org/apache/datasketches/common/ArrayOfItemsSerDe.html" title="class in org.apache.datasketches.common">ArrayOfItemsSerDe</a></dt>
+<dd>
+<div class="block">Returns the serialized size in bytes of the array of items.</div>
+</dd>
 <dt><a href="org/apache/datasketches/theta/Sketch.html" title="class in org.apache.datasketches.theta"><span class="typeNameLink">Sketch</span></a> - Class in <a href="org/apache/datasketches/theta/package-summary.html">org.apache.datasketches.theta</a></dt>
 <dd>
 <div class="block">The top-level class for all theta sketches.</div>
@@ -5769,6 +5999,8 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/cpc/TestUtil.html#%3Cinit%3E()">TestUtil()</a></span> - Constructor for class org.apache.datasketches.cpc.<a href="org/apache/datasketches/cpc/TestUtil.html" title="class in org.apache.datasketches.cpc">TestUtil</a></dt>
 <dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/quantilescommon/QuantilesAPI.html#TGT_IS_READ_ONLY_MSG">TGT_IS_READ_ONLY_MSG</a></span> - Static variable in interface org.apache.datasketches.quantilescommon.<a href="org/apache/datasketches/quantilescommon/QuantilesAPI.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesAPI</a></dt>
+<dd>&nbsp;</dd>
 <dt><a href="org/apache/datasketches/hll/TgtHllType.html" title="enum in org.apache.datasketches.hll"><span class="typeNameLink">TgtHllType</span></a> - Enum in <a href="org/apache/datasketches/hll/package-summary.html">org.apache.datasketches.hll</a></dt>
 <dd>
 <div class="block">Specifies the target type of HLL sketch to be created.</div>
@@ -5777,8 +6009,6 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <dd>
 <div class="block">Utility methods for the Theta Family of sketches</div>
 </dd>
-<dt><span class="memberNameLink"><a href="org/apache/datasketches/quantilescommon/QuantilesUtil.html#THROWS_EMPTY">THROWS_EMPTY</a></span> - Static variable in class org.apache.datasketches.quantilescommon.<a href="org/apache/datasketches/quantilescommon/QuantilesUtil.html" title="class in org.apache.datasketches.quantilescommon">QuantilesUtil</a></dt>
-<dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/cpc/CpcSketch.html#toByteArray()">toByteArray()</a></span> - Method in class org.apache.datasketches.cpc.<a href="org/apache/datasketches/cpc/CpcSketch.html" title="class in org.apache.datasketches.cpc">CpcSketch</a></dt>
 <dd>
 <div class="block">Return this sketch as a compressed byte array.</div>
@@ -5791,6 +6021,8 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/kll/KllFloatsSketch.html#toByteArray()">toByteArray()</a></span> - Method in class org.apache.datasketches.kll.<a href="org/apache/datasketches/kll/KllFloatsSketch.html" title="class in org.apache.datasketches.kll">KllFloatsSketch</a></dt>
 <dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/kll/KllItemsSketch.html#toByteArray()">toByteArray()</a></span> - Method in class org.apache.datasketches.kll.<a href="org/apache/datasketches/kll/KllItemsSketch.html" title="class in org.apache.datasketches.kll">KllItemsSketch</a></dt>
+<dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/quantiles/DoublesSketch.html#toByteArray()">toByteArray()</a></span> - Method in class org.apache.datasketches.quantiles.<a href="org/apache/datasketches/quantiles/DoublesSketch.html" title="class in org.apache.datasketches.quantiles">DoublesSketch</a></dt>
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/quantiles/DoublesUnion.html#toByteArray()">toByteArray()</a></span> - Method in class org.apache.datasketches.quantiles.<a href="org/apache/datasketches/quantiles/DoublesUnion.html" title="class in org.apache.datasketches.quantiles">DoublesUnion</a></dt>
@@ -6066,6 +6298,18 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <dd>
 <div class="block">Returns a human readable string of the preamble of a byte array image of a CpcSketch.</div>
 </dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/common/ArrayOfBooleansSerDe.html#toString(java.lang.Boolean)">toString(Boolean)</a></span> - Method in class org.apache.datasketches.common.<a href="org/apache/datasketches/common/ArrayOfBooleansSerDe.html" title="class in org.apache.datasketches.common">ArrayOfBooleansSerDe</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/common/ArrayOfDoublesSerDe.html#toString(java.lang.Double)">toString(Double)</a></span> - Method in class org.apache.datasketches.common.<a href="org/apache/datasketches/common/ArrayOfDoublesSerDe.html" title="class in org.apache.datasketches.common">ArrayOfDoublesSerDe</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/common/ArrayOfLongsSerDe.html#toString(java.lang.Long)">toString(Long)</a></span> - Method in class org.apache.datasketches.common.<a href="org/apache/datasketches/common/ArrayOfLongsSerDe.html" title="class in org.apache.datasketches.common">ArrayOfLongsSerDe</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/common/ArrayOfNumbersSerDe.html#toString(java.lang.Number)">toString(Number)</a></span> - Method in class org.apache.datasketches.common.<a href="org/apache/datasketches/common/ArrayOfNumbersSerDe.html" title="class in org.apache.datasketches.common">ArrayOfNumbersSerDe</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/common/ArrayOfStringsSerDe.html#toString(java.lang.String)">toString(String)</a></span> - Method in class org.apache.datasketches.common.<a href="org/apache/datasketches/common/ArrayOfStringsSerDe.html" title="class in org.apache.datasketches.common">ArrayOfStringsSerDe</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/common/ArrayOfUtf16StringsSerDe.html#toString(java.lang.String)">toString(String)</a></span> - Method in class org.apache.datasketches.common.<a href="org/apache/datasketches/common/ArrayOfUtf16StringsSerDe.html" title="class in org.apache.datasketches.common">ArrayOfUtf16StringsSerDe</a></dt>
+<dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/frequencies/ItemsSketch.html#toString(org.apache.datasketches.memory.Memory)">toString(Memory)</a></span> - Static method in class org.apache.datasketches.frequencies.<a href="org/apache/datasketches/frequencies/ItemsSketch.html" title="class in org.apache.datasketches.frequencies">ItemsSketch</a></dt>
 <dd>
 <div class="block">Returns a human readable string of the preamble of a Memory image of a ItemsSketch.</div>
@@ -6106,6 +6350,10 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <dd>
 <div class="block">Returns a human readable string of the preamble of a Memory image of a CpcSketch.</div>
 </dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/common/ArrayOfItemsSerDe.html#toString(T)">toString(T)</a></span> - Method in class org.apache.datasketches.common.<a href="org/apache/datasketches/common/ArrayOfItemsSerDe.html" title="class in org.apache.datasketches.common">ArrayOfItemsSerDe</a></dt>
+<dd>
+<div class="block">Returns a human readable string of an item.</div>
+</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/hll/HllSketch.html#toUpdatableByteArray()">toUpdatableByteArray()</a></span> - Method in class org.apache.datasketches.hll.<a href="org/apache/datasketches/hll/HllSketch.html" title="class in org.apache.datasketches.hll">HllSketch</a></dt>
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/hll/Union.html#toUpdatableByteArray()">toUpdatableByteArray()</a></span> - Method in class org.apache.datasketches.hll.<a href="org/apache/datasketches/hll/Union.html" title="class in org.apache.datasketches.hll">Union</a></dt>
@@ -6269,6 +6517,10 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 </dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/theta/BitPacking.html#unpackBits(long%5B%5D,int,int,byte%5B%5D,int,int)">unpackBits(long[], int, int, byte[], int, int)</a></span> - Static method in class org.apache.datasketches.theta.<a href="org/apache/datasketches/theta/BitPacking.html" title="class in org.apache.datasketches.theta">BitPacking</a></dt>
 <dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/quantilescommon/QuantilesAPI.html#UNSUPPORTED_MSG">UNSUPPORTED_MSG</a></span> - Static variable in interface org.apache.datasketches.quantilescommon.<a href="org/apache/datasketches/quantilescommon/QuantilesAPI.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesAPI</a></dt>
+<dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/kll/KllSketch.SketchStructure.html#UPDATABLE">UPDATABLE</a></span> - org.apache.datasketches.kll.<a href="org/apache/datasketches/kll/KllSketch.SketchStructure.html" title="enum in org.apache.datasketches.kll">KllSketch.SketchStructure</a></dt>
+<dd>&nbsp;</dd>
 <dt><a href="org/apache/datasketches/tuple/UpdatableSketch.html" title="class in org.apache.datasketches.tuple"><span class="typeNameLink">UpdatableSketch</span></a>&lt;<a href="org/apache/datasketches/tuple/UpdatableSketch.html" title="type parameter in UpdatableSketch">U</a>,&#8203;<a href="org/apache/datasketches/tuple/UpdatableSketch.html" title="type parameter in UpdatableSketch">S</a> extends <a href="org/apache/datasketches/tuple/UpdatableSummary.html" title="interface in org.apac [...]
 <dd>
 <div class="block">An extension of QuickSelectSketch&lt;S&gt;, which can be updated with many types of keys.</div>
@@ -6550,11 +6802,13 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <dd>
 <div class="block">Update this sketch with an item and a frequency count of one.</div>
 </dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/kll/KllItemsSketch.html#update(T)">update(T)</a></span> - Method in class org.apache.datasketches.kll.<a href="org/apache/datasketches/kll/KllItemsSketch.html" title="class in org.apache.datasketches.kll">KllItemsSketch</a></dt>
+<dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/quantiles/ItemsSketch.html#update(T)">update(T)</a></span> - Method in class org.apache.datasketches.quantiles.<a href="org/apache/datasketches/quantiles/ItemsSketch.html" title="class in org.apache.datasketches.quantiles">ItemsSketch</a></dt>
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/quantiles/ItemsUnion.html#update(T)">update(T)</a></span> - Method in class org.apache.datasketches.quantiles.<a href="org/apache/datasketches/quantiles/ItemsUnion.html" title="class in org.apache.datasketches.quantiles">ItemsUnion</a></dt>
 <dd>
-<div class="block">Update this union with the given double (or float) data Item.</div>
+<div class="block">Update this union with the given dataItem.</div>
 </dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/quantilescommon/QuantilesGenericAPI.html#update(T)">update(T)</a></span> - Method in interface org.apache.datasketches.quantilescommon.<a href="org/apache/datasketches/quantilescommon/QuantilesGenericAPI.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesGenericAPI</a></dt>
 <dd>
@@ -6626,6 +6880,10 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <dd>
 <div class="block">Validates the preamble-Longs value given the family ID</div>
 </dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/quantilescommon/GenericSortedView.html#validateItems(T%5B%5D,java.util.Comparator)">validateItems(T[], Comparator&lt;? super T&gt;)</a></span> - Static method in interface org.apache.datasketches.quantilescommon.<a href="org/apache/datasketches/quantilescommon/GenericSortedView.html" title="interface in org.apache.datasketches.quantilescommon">GenericSortedView</a></dt>
+<dd>
+<div class="block">Checks the sequential validity of the given array of generic items.</div>
+</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/tuple/SerializerDeserializer.html#validateType(byte,org.apache.datasketches.tuple.SerializerDeserializer.SketchType)">validateType(byte, SerializerDeserializer.SketchType)</a></span> - Static method in class org.apache.datasketches.tuple.<a href="org/apache/datasketches/tuple/SerializerDeserializer.html" title="class in org.apache.datasketches.tuple">SerializerDeserializer</a></dt>
 <dd>
 <div class="block">Validates the sketch type byte versus the expected value</div>
@@ -6651,6 +6909,10 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <dd>
 <div class="block">Returns the enum constant of this type with the specified name.</div>
 </dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/kll/KllSketch.SketchStructure.html#valueOf(java.lang.String)">valueOf(String)</a></span> - Static method in enum org.apache.datasketches.kll.<a href="org/apache/datasketches/kll/KllSketch.SketchStructure.html" title="enum in org.apache.datasketches.kll">KllSketch.SketchStructure</a></dt>
+<dd>
+<div class="block">Returns the enum constant of this type with the specified name.</div>
+</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/kll/KllSketch.SketchType.html#valueOf(java.lang.String)">valueOf(String)</a></span> - Static method in enum org.apache.datasketches.kll.<a href="org/apache/datasketches/kll/KllSketch.SketchType.html" title="enum in org.apache.datasketches.kll">KllSketch.SketchType</a></dt>
 <dd>
 <div class="block">Returns the enum constant of this type with the specified name.</div>
@@ -6719,6 +6981,11 @@ the order they are declared.</div>
 <div class="block">Returns an array containing the constants of this enum type, in
 the order they are declared.</div>
 </dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/kll/KllSketch.SketchStructure.html#values()">values()</a></span> - Static method in enum org.apache.datasketches.kll.<a href="org/apache/datasketches/kll/KllSketch.SketchStructure.html" title="enum in org.apache.datasketches.kll">KllSketch.SketchStructure</a></dt>
+<dd>
+<div class="block">Returns an array containing the constants of this enum type, in
+the order they are declared.</div>
+</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/kll/KllSketch.SketchType.html#values()">values()</a></span> - Static method in enum org.apache.datasketches.kll.<a href="org/apache/datasketches/kll/KllSketch.SketchType.html" title="enum in org.apache.datasketches.kll">KllSketch.SketchType</a></dt>
 <dd>
 <div class="block">Returns an array containing the constants of this enum type, in
@@ -6887,6 +7154,11 @@ the order they are declared.</div>
 <dd>
 <div class="block">Wrap the given Memory and seed as an ArrayOfDoublesUnion</div>
 </dd>
+<dt><span class="memberNameLink"><a href="org/apache/datasketches/kll/KllItemsSketch.html#wrap(org.apache.datasketches.memory.Memory,java.util.Comparator,org.apache.datasketches.common.ArrayOfItemsSerDe)">wrap(Memory, Comparator&lt;? super T&gt;, ArrayOfItemsSerDe&lt;T&gt;)</a></span> - Static method in class org.apache.datasketches.kll.<a href="org/apache/datasketches/kll/KllItemsSketch.html" title="class in org.apache.datasketches.kll">KllItemsSketch</a></dt>
+<dd>
+<div class="block">Constructs a thin wrapper on the heap around a Memory (or WritableMemory) already initialized with a
+ validated sketch image of a type T consistent with the given comparator and serDe.</div>
+</dd>
 <dt><span class="memberNameLink"><a href="org/apache/datasketches/quantiles/DoublesUnion.html#wrap(org.apache.datasketches.memory.WritableMemory)">wrap(WritableMemory)</a></span> - Static method in class org.apache.datasketches.quantiles.<a href="org/apache/datasketches/quantiles/DoublesUnion.html" title="class in org.apache.datasketches.quantiles">DoublesUnion</a></dt>
 <dd>
 <div class="block">Returns an updatable Union object that wraps off-heap data of the given memory image of
diff --git a/docs/master/member-search-index.js b/docs/master/member-search-index.js
index e680e5b2..d119aa12 100644
--- a/docs/master/member-search-index.js
+++ b/docs/master/member-search-index.js
@@ -1 +1 @@
-memberSearchIndex = [{"p":"org.apache.datasketches.common","c":"Family","l":"A_NOT_B"},{"p":"org.apache.datasketches.common","c":"Family","l":"ALPHA"},{"p":"org.apache.datasketches.tuple.adouble","c":"DoubleSummary.Mode","l":"AlwaysOne"},{"p":"org.apache.datasketches.tuple.aninteger","c":"IntegerSummary.Mode","l":"AlwaysOne"},{"p":"org.apache.datasketches.theta","c":"AnotB","l":"AnotB()","url":"%3Cinit%3E()"},{"p":"org.apache.datasketches.tuple","c":"AnotB","l":"AnotB()","url":"%3Cinit%3 [...]
\ No newline at end of file
+memberSearchIndex = [{"p":"org.apache.datasketches.common","c":"Family","l":"A_NOT_B"},{"p":"org.apache.datasketches.common","c":"Family","l":"ALPHA"},{"p":"org.apache.datasketches.tuple.adouble","c":"DoubleSummary.Mode","l":"AlwaysOne"},{"p":"org.apache.datasketches.tuple.aninteger","c":"IntegerSummary.Mode","l":"AlwaysOne"},{"p":"org.apache.datasketches.theta","c":"AnotB","l":"AnotB()","url":"%3Cinit%3E()"},{"p":"org.apache.datasketches.tuple","c":"AnotB","l":"AnotB()","url":"%3Cinit%3 [...]
\ No newline at end of file
diff --git a/docs/master/member-search-index.zip b/docs/master/member-search-index.zip
index afc1471d..3a24c00b 100644
Binary files a/docs/master/member-search-index.zip and b/docs/master/member-search-index.zip differ
diff --git a/docs/master/org/apache/datasketches/common/ArrayOfBooleansSerDe.html b/docs/master/org/apache/datasketches/common/ArrayOfBooleansSerDe.html
index 0f64aee0..726241ca 100644
--- a/docs/master/org/apache/datasketches/common/ArrayOfBooleansSerDe.html
+++ b/docs/master/org/apache/datasketches/common/ArrayOfBooleansSerDe.html
@@ -27,8 +27,8 @@
     catch(err) {
     }
 //-->
-var data = {"i0":9,"i1":10,"i2":10};
-var tabs = {65535:["t0","All Methods"],1:["t1","Static Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
+var data = {"i0":9,"i1":42,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10,"i7":10,"i8":10,"i9":10};
+var tabs = {65535:["t0","All Methods"],1:["t1","Static Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"],32:["t6","Deprecated Methods"]};
 var altColor = "altColor";
 var rowColor = "rowColor";
 var tableTab = "tableTab";
@@ -179,7 +179,7 @@ extends <a href="ArrayOfItemsSerDe.html" title="class in org.apache.datasketches
 </a>
 <h3>Method Summary</h3>
 <table class="memberSummary">
-<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t1" class="tableTab"><span><a href="javascript:show(1);">Static Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd [...]
+<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t1" class="tableTab"><span><a href="javascript:show(1);">Static Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd [...]
 <tr>
 <th class="colFirst" scope="col">Modifier and Type</th>
 <th class="colSecond" scope="col">Method</th>
@@ -195,16 +195,69 @@ extends <a href="ArrayOfItemsSerDe.html" title="class in org.apache.datasketches
 <tr id="i1" class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang" class="externalLink">Boolean</a>[]</code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#deserializeFromMemory(org.apache.datasketches.memory.Memory,int)">deserializeFromMemory</a></span>&#8203;(org.apache.datasketches.memory.Memory&nbsp;mem,
-                     int&nbsp;length)</code></th>
+                     int&nbsp;numItems)</code></th>
 <td class="colLast">
-<div class="block">Deserialize an array of items from a given Memory object.</div>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
 </td>
 </tr>
 <tr id="i2" class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang" class="externalLink">Boolean</a>[]</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#deserializeFromMemory(org.apache.datasketches.memory.Memory,long,int)">deserializeFromMemory</a></span>&#8203;(org.apache.datasketches.memory.Memory&nbsp;mem,
+                     long&nbsp;offsetBytes,
+                     int&nbsp;numItems)</code></th>
+<td class="colLast">
+<div class="block">Deserialize a contiguous sequence of serialized items from a given Memory.</div>
+</td>
+</tr>
+<tr id="i3" class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang" class="externalLink">Class</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang" class="externalLink">Boolean</a>&gt;</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getClassOfT()">getClassOfT</a></span>()</code></th>
+<td class="colLast">
+<div class="block">Returns the concrete class of type T</div>
+</td>
+</tr>
+<tr id="i4" class="altColor">
+<td class="colFirst"><code>byte[]</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#serializeToByteArray(java.lang.Boolean)">serializeToByteArray</a></span>&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang" class="externalLink">Boolean</a>&nbsp;item)</code></th>
+<td class="colLast">
+<div class="block">Serialize a single unserialized item to a byte array.</div>
+</td>
+</tr>
+<tr id="i5" class="rowColor">
 <td class="colFirst"><code>byte[]</code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#serializeToByteArray(java.lang.Boolean%5B%5D)">serializeToByteArray</a></span>&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang" class="externalLink">Boolean</a>[]&nbsp;items)</code></th>
 <td class="colLast">
-<div class="block">Serialize an array of items to byte array.</div>
+<div class="block">Serialize an array of unserialized items to a byte array of contiguous serialized items.</div>
+</td>
+</tr>
+<tr id="i6" class="altColor">
+<td class="colFirst"><code>int</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#sizeOf(java.lang.Boolean)">sizeOf</a></span>&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang" class="externalLink">Boolean</a>&nbsp;item)</code></th>
+<td class="colLast">
+<div class="block">Returns the serialized size in bytes of a single unserialized item.</div>
+</td>
+</tr>
+<tr id="i7" class="rowColor">
+<td class="colFirst"><code>int</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#sizeOf(java.lang.Boolean%5B%5D)">sizeOf</a></span>&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang" class="externalLink">Boolean</a>[]&nbsp;items)</code></th>
+<td class="colLast">
+<div class="block">Returns the serialized size in bytes of the array of items.</div>
+</td>
+</tr>
+<tr id="i8" class="altColor">
+<td class="colFirst"><code>int</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#sizeOf(org.apache.datasketches.memory.Memory,long,int)">sizeOf</a></span>&#8203;(org.apache.datasketches.memory.Memory&nbsp;mem,
+      long&nbsp;offsetBytes,
+      int&nbsp;numItems)</code></th>
+<td class="colLast">
+<div class="block">Returns the serialized size in bytes of the number of contiguous serialized items in Memory.</div>
+</td>
+</tr>
+<tr id="i9" class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a></code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#toString(java.lang.Boolean)">toString</a></span>&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang" class="externalLink">Boolean</a>&nbsp;item)</code></th>
+<td class="colLast">
+<div class="block">Returns a human readable string of an item.</div>
 </td>
 </tr>
 </table>
@@ -267,6 +320,25 @@ extends <a href="ArrayOfItemsSerDe.html" title="class in org.apache.datasketches
 </dl>
 </li>
 </ul>
+<a id="serializeToByteArray(java.lang.Boolean)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>serializeToByteArray</h4>
+<pre class="methodSignature">public&nbsp;byte[]&nbsp;serializeToByteArray&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang" class="externalLink">Boolean</a>&nbsp;item)</pre>
+<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="ArrayOfItemsSerDe.html#serializeToByteArray(T)">ArrayOfItemsSerDe</a></code></span></div>
+<div class="block">Serialize a single unserialized item to a byte array.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="ArrayOfItemsSerDe.html#serializeToByteArray(T)">serializeToByteArray</a></code>&nbsp;in class&nbsp;<code><a href="ArrayOfItemsSerDe.html" title="class in org.apache.datasketches.common">ArrayOfItemsSerDe</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang" class="externalLink">Boolean</a>&gt;</code></dd>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>item</code> - the item to be serialized</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>serialized representation of the given item</dd>
+</dl>
+</li>
+</ul>
 <a id="serializeToByteArray(java.lang.Boolean[])">
 <!--   -->
 </a>
@@ -275,38 +347,158 @@ extends <a href="ArrayOfItemsSerDe.html" title="class in org.apache.datasketches
 <h4>serializeToByteArray</h4>
 <pre class="methodSignature">public&nbsp;byte[]&nbsp;serializeToByteArray&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang" class="externalLink">Boolean</a>[]&nbsp;items)</pre>
 <div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="ArrayOfItemsSerDe.html#serializeToByteArray(T%5B%5D)">ArrayOfItemsSerDe</a></code></span></div>
-<div class="block">Serialize an array of items to byte array.
- The size of the array doesn't need to be serialized.
- This method is called by the sketch serialization process.</div>
+<div class="block">Serialize an array of unserialized items to a byte array of contiguous serialized items.</div>
 <dl>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
 <dd><code><a href="ArrayOfItemsSerDe.html#serializeToByteArray(T%5B%5D)">serializeToByteArray</a></code>&nbsp;in class&nbsp;<code><a href="ArrayOfItemsSerDe.html" title="class in org.apache.datasketches.common">ArrayOfItemsSerDe</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang" class="externalLink">Boolean</a>&gt;</code></dd>
 <dt><span class="paramLabel">Parameters:</span></dt>
 <dd><code>items</code> - array of items to be serialized</dd>
 <dt><span class="returnLabel">Returns:</span></dt>
-<dd>serialized representation of the given array of items</dd>
+<dd>contiguous, serialized representation of the given array of unserialized items</dd>
 </dl>
 </li>
 </ul>
 <a id="deserializeFromMemory(org.apache.datasketches.memory.Memory,int)">
 <!--   -->
 </a>
-<ul class="blockListLast">
+<ul class="blockList">
 <li class="blockList">
 <h4>deserializeFromMemory</h4>
-<pre class="methodSignature">public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang" class="externalLink">Boolean</a>[]&nbsp;deserializeFromMemory&#8203;(org.apache.datasketches.memory.Memory&nbsp;mem,
-                                       int&nbsp;length)</pre>
+<pre class="methodSignature"><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Deprecated.html?is-external=true" title="class or interface in java.lang" class="externalLink">@Deprecated</a>
+public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang" class="externalLink">Boolean</a>[]&nbsp;deserializeFromMemory&#8203;(org.apache.datasketches.memory.Memory&nbsp;mem,
+                                       int&nbsp;numItems)</pre>
+<div class="deprecationBlock"><span class="deprecatedLabel">Deprecated.</span></div>
 <div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="ArrayOfItemsSerDe.html#deserializeFromMemory(org.apache.datasketches.memory.Memory,int)">ArrayOfItemsSerDe</a></code></span></div>
-<div class="block">Deserialize an array of items from a given Memory object.
- This method is called by the sketch deserialization process.</div>
+<div class="block">Deserialize a contiguous sequence of serialized items from a given Memory.</div>
 <dl>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
 <dd><code><a href="ArrayOfItemsSerDe.html#deserializeFromMemory(org.apache.datasketches.memory.Memory,int)">deserializeFromMemory</a></code>&nbsp;in class&nbsp;<code><a href="ArrayOfItemsSerDe.html" title="class in org.apache.datasketches.common">ArrayOfItemsSerDe</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang" class="externalLink">Boolean</a>&gt;</code></dd>
 <dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>mem</code> - Memory containing a serialized array of items</dd>
-<dd><code>length</code> - number of items in the serialized array</dd>
+<dd><code>mem</code> - Memory containing a contiguous sequence of serialized items</dd>
+<dd><code>numItems</code> - number of items in the contiguous serialized sequence.</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>array of deserialized items</dd>
+</dl>
+</li>
+</ul>
+<a id="deserializeFromMemory(org.apache.datasketches.memory.Memory,long,int)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>deserializeFromMemory</h4>
+<pre class="methodSignature">public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang" class="externalLink">Boolean</a>[]&nbsp;deserializeFromMemory&#8203;(org.apache.datasketches.memory.Memory&nbsp;mem,
+                                       long&nbsp;offsetBytes,
+                                       int&nbsp;numItems)</pre>
+<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="ArrayOfItemsSerDe.html#deserializeFromMemory(org.apache.datasketches.memory.Memory,long,int)">ArrayOfItemsSerDe</a></code></span></div>
+<div class="block">Deserialize a contiguous sequence of serialized items from a given Memory.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="ArrayOfItemsSerDe.html#deserializeFromMemory(org.apache.datasketches.memory.Memory,long,int)">deserializeFromMemory</a></code>&nbsp;in class&nbsp;<code><a href="ArrayOfItemsSerDe.html" title="class in org.apache.datasketches.common">ArrayOfItemsSerDe</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang" class="externalLink">Boolean</a>&gt;</code></dd>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>mem</code> - Memory containing a contiguous sequence of serialized items</dd>
+<dd><code>offsetBytes</code> - the starting offset in the given Memory.</dd>
+<dd><code>numItems</code> - number of items in the contiguous serialized sequence.</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>array of deserialized items</dd>
+</dl>
+</li>
+</ul>
+<a id="sizeOf(java.lang.Boolean)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>sizeOf</h4>
+<pre class="methodSignature">public&nbsp;int&nbsp;sizeOf&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang" class="externalLink">Boolean</a>&nbsp;item)</pre>
+<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="ArrayOfItemsSerDe.html#sizeOf(T)">ArrayOfItemsSerDe</a></code></span></div>
+<div class="block">Returns the serialized size in bytes of a single unserialized item.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="ArrayOfItemsSerDe.html#sizeOf(T)">sizeOf</a></code>&nbsp;in class&nbsp;<code><a href="ArrayOfItemsSerDe.html" title="class in org.apache.datasketches.common">ArrayOfItemsSerDe</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang" class="externalLink">Boolean</a>&gt;</code></dd>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>item</code> - a specific item</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the serialized size in bytes of a single unserialized item.</dd>
+</dl>
+</li>
+</ul>
+<a id="sizeOf(java.lang.Boolean[])">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>sizeOf</h4>
+<pre class="methodSignature">public&nbsp;int&nbsp;sizeOf&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang" class="externalLink">Boolean</a>[]&nbsp;items)</pre>
+<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="ArrayOfItemsSerDe.html#sizeOf(T%5B%5D)">ArrayOfItemsSerDe</a></code></span></div>
+<div class="block">Returns the serialized size in bytes of the array of items.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
+<dd><code><a href="ArrayOfItemsSerDe.html#sizeOf(T%5B%5D)">sizeOf</a></code>&nbsp;in class&nbsp;<code><a href="ArrayOfItemsSerDe.html" title="class in org.apache.datasketches.common">ArrayOfItemsSerDe</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang" class="externalLink">Boolean</a>&gt;</code></dd>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>items</code> - an array of items.</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the serialized size in bytes of the array of items.</dd>
+</dl>
+</li>
+</ul>
+<a id="sizeOf(org.apache.datasketches.memory.Memory,long,int)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>sizeOf</h4>
+<pre class="methodSignature">public&nbsp;int&nbsp;sizeOf&#8203;(org.apache.datasketches.memory.Memory&nbsp;mem,
+                  long&nbsp;offsetBytes,
+                  int&nbsp;numItems)</pre>
+<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="ArrayOfItemsSerDe.html#sizeOf(org.apache.datasketches.memory.Memory,long,int)">ArrayOfItemsSerDe</a></code></span></div>
+<div class="block">Returns the serialized size in bytes of the number of contiguous serialized items in Memory.
+ The capacity of the given Memory can be much larger that the required size of the items.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="ArrayOfItemsSerDe.html#sizeOf(org.apache.datasketches.memory.Memory,long,int)">sizeOf</a></code>&nbsp;in class&nbsp;<code><a href="ArrayOfItemsSerDe.html" title="class in org.apache.datasketches.common">ArrayOfItemsSerDe</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang" class="externalLink">Boolean</a>&gt;</code></dd>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>mem</code> - the given Memory.</dd>
+<dd><code>offsetBytes</code> - the starting offset in the given Memory.</dd>
+<dd><code>numItems</code> - the number of serialized items contained in the Memory</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the serialized size in bytes of the given number of items.</dd>
+</dl>
+</li>
+</ul>
+<a id="toString(java.lang.Boolean)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>toString</h4>
+<pre class="methodSignature">public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;toString&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang" class="externalLink">Boolean</a>&nbsp;item)</pre>
+<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="ArrayOfItemsSerDe.html#toString(T)">ArrayOfItemsSerDe</a></code></span></div>
+<div class="block">Returns a human readable string of an item.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="ArrayOfItemsSerDe.html#toString(T)">toString</a></code>&nbsp;in class&nbsp;<code><a href="ArrayOfItemsSerDe.html" title="class in org.apache.datasketches.common">ArrayOfItemsSerDe</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang" class="externalLink">Boolean</a>&gt;</code></dd>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>item</code> - a specific item</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a human readable string of an item.</dd>
+</dl>
+</li>
+</ul>
+<a id="getClassOfT()">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>getClassOfT</h4>
+<pre class="methodSignature">public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang" class="externalLink">Class</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang" class="externalLink">Boolean</a>&gt;&nbsp;getClassOfT()</pre>
+<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="ArrayOfItemsSerDe.html#getClassOfT()">ArrayOfItemsSerDe</a></code></span></div>
+<div class="block">Returns the concrete class of type T</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="ArrayOfItemsSerDe.html#getClassOfT()">getClassOfT</a></code>&nbsp;in class&nbsp;<code><a href="ArrayOfItemsSerDe.html" title="class in org.apache.datasketches.common">ArrayOfItemsSerDe</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang" class="externalLink">Boolean</a>&gt;</code></dd>
 <dt><span class="returnLabel">Returns:</span></dt>
-<dd>deserialized array of items</dd>
+<dd>the concrete class of type T</dd>
 </dl>
 </li>
 </ul>
diff --git a/docs/master/org/apache/datasketches/common/ArrayOfDoublesSerDe.html b/docs/master/org/apache/datasketches/common/ArrayOfDoublesSerDe.html
index c14b51f5..6a0e8488 100644
--- a/docs/master/org/apache/datasketches/common/ArrayOfDoublesSerDe.html
+++ b/docs/master/org/apache/datasketches/common/ArrayOfDoublesSerDe.html
@@ -27,8 +27,8 @@
     catch(err) {
     }
 //-->
-var data = {"i0":10,"i1":10};
-var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
+var data = {"i0":42,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10,"i7":10,"i8":10};
+var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"],32:["t6","Deprecated Methods"]};
 var altColor = "altColor";
 var rowColor = "rowColor";
 var tableTab = "tableTab";
@@ -179,7 +179,7 @@ extends <a href="ArrayOfItemsSerDe.html" title="class in org.apache.datasketches
 </a>
 <h3>Method Summary</h3>
 <table class="memberSummary">
-<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
+<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t6" class="tableTab"><span><a href="javascript:show(32);">Deprecated Methods</a></span><span class="t [...]
 <tr>
 <th class="colFirst" scope="col">Modifier and Type</th>
 <th class="colSecond" scope="col">Method</th>
@@ -188,16 +188,69 @@ extends <a href="ArrayOfItemsSerDe.html" title="class in org.apache.datasketches
 <tr id="i0" class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Double.html?is-external=true" title="class or interface in java.lang" class="externalLink">Double</a>[]</code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#deserializeFromMemory(org.apache.datasketches.memory.Memory,int)">deserializeFromMemory</a></span>&#8203;(org.apache.datasketches.memory.Memory&nbsp;mem,
-                     int&nbsp;length)</code></th>
+                     int&nbsp;numItems)</code></th>
 <td class="colLast">
-<div class="block">Deserialize an array of items from a given Memory object.</div>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
 </td>
 </tr>
 <tr id="i1" class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Double.html?is-external=true" title="class or interface in java.lang" class="externalLink">Double</a>[]</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#deserializeFromMemory(org.apache.datasketches.memory.Memory,long,int)">deserializeFromMemory</a></span>&#8203;(org.apache.datasketches.memory.Memory&nbsp;mem,
+                     long&nbsp;offsetBytes,
+                     int&nbsp;numItems)</code></th>
+<td class="colLast">
+<div class="block">Deserialize a contiguous sequence of serialized items from a given Memory.</div>
+</td>
+</tr>
+<tr id="i2" class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang" class="externalLink">Class</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Double.html?is-external=true" title="class or interface in java.lang" class="externalLink">Double</a>&gt;</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getClassOfT()">getClassOfT</a></span>()</code></th>
+<td class="colLast">
+<div class="block">Returns the concrete class of type T</div>
+</td>
+</tr>
+<tr id="i3" class="rowColor">
+<td class="colFirst"><code>byte[]</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#serializeToByteArray(java.lang.Double)">serializeToByteArray</a></span>&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Double.html?is-external=true" title="class or interface in java.lang" class="externalLink">Double</a>&nbsp;item)</code></th>
+<td class="colLast">
+<div class="block">Serialize a single unserialized item to a byte array.</div>
+</td>
+</tr>
+<tr id="i4" class="altColor">
 <td class="colFirst"><code>byte[]</code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#serializeToByteArray(java.lang.Double%5B%5D)">serializeToByteArray</a></span>&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Double.html?is-external=true" title="class or interface in java.lang" class="externalLink">Double</a>[]&nbsp;items)</code></th>
 <td class="colLast">
-<div class="block">Serialize an array of items to byte array.</div>
+<div class="block">Serialize an array of unserialized items to a byte array of contiguous serialized items.</div>
+</td>
+</tr>
+<tr id="i5" class="rowColor">
+<td class="colFirst"><code>int</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#sizeOf(java.lang.Double)">sizeOf</a></span>&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Double.html?is-external=true" title="class or interface in java.lang" class="externalLink">Double</a>&nbsp;item)</code></th>
+<td class="colLast">
+<div class="block">Returns the serialized size in bytes of a single unserialized item.</div>
+</td>
+</tr>
+<tr id="i6" class="altColor">
+<td class="colFirst"><code>int</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#sizeOf(java.lang.Double%5B%5D)">sizeOf</a></span>&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Double.html?is-external=true" title="class or interface in java.lang" class="externalLink">Double</a>[]&nbsp;items)</code></th>
+<td class="colLast">
+<div class="block">Returns the serialized size in bytes of the array of items.</div>
+</td>
+</tr>
+<tr id="i7" class="rowColor">
+<td class="colFirst"><code>int</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#sizeOf(org.apache.datasketches.memory.Memory,long,int)">sizeOf</a></span>&#8203;(org.apache.datasketches.memory.Memory&nbsp;mem,
+      long&nbsp;offsetBytes,
+      int&nbsp;numItems)</code></th>
+<td class="colLast">
+<div class="block">Returns the serialized size in bytes of the number of contiguous serialized items in Memory.</div>
+</td>
+</tr>
+<tr id="i8" class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a></code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#toString(java.lang.Double)">toString</a></span>&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Double.html?is-external=true" title="class or interface in java.lang" class="externalLink">Double</a>&nbsp;item)</code></th>
+<td class="colLast">
+<div class="block">Returns a human readable string of an item.</div>
 </td>
 </tr>
 </table>
@@ -243,6 +296,25 @@ extends <a href="ArrayOfItemsSerDe.html" title="class in org.apache.datasketches
 <!--   -->
 </a>
 <h3>Method Detail</h3>
+<a id="serializeToByteArray(java.lang.Double)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>serializeToByteArray</h4>
+<pre class="methodSignature">public&nbsp;byte[]&nbsp;serializeToByteArray&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Double.html?is-external=true" title="class or interface in java.lang" class="externalLink">Double</a>&nbsp;item)</pre>
+<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="ArrayOfItemsSerDe.html#serializeToByteArray(T)">ArrayOfItemsSerDe</a></code></span></div>
+<div class="block">Serialize a single unserialized item to a byte array.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="ArrayOfItemsSerDe.html#serializeToByteArray(T)">serializeToByteArray</a></code>&nbsp;in class&nbsp;<code><a href="ArrayOfItemsSerDe.html" title="class in org.apache.datasketches.common">ArrayOfItemsSerDe</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Double.html?is-external=true" title="class or interface in java.lang" class="externalLink">Double</a>&gt;</code></dd>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>item</code> - the item to be serialized</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>serialized representation of the given item</dd>
+</dl>
+</li>
+</ul>
 <a id="serializeToByteArray(java.lang.Double[])">
 <!--   -->
 </a>
@@ -251,38 +323,158 @@ extends <a href="ArrayOfItemsSerDe.html" title="class in org.apache.datasketches
 <h4>serializeToByteArray</h4>
 <pre class="methodSignature">public&nbsp;byte[]&nbsp;serializeToByteArray&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Double.html?is-external=true" title="class or interface in java.lang" class="externalLink">Double</a>[]&nbsp;items)</pre>
 <div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="ArrayOfItemsSerDe.html#serializeToByteArray(T%5B%5D)">ArrayOfItemsSerDe</a></code></span></div>
-<div class="block">Serialize an array of items to byte array.
- The size of the array doesn't need to be serialized.
- This method is called by the sketch serialization process.</div>
+<div class="block">Serialize an array of unserialized items to a byte array of contiguous serialized items.</div>
 <dl>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
 <dd><code><a href="ArrayOfItemsSerDe.html#serializeToByteArray(T%5B%5D)">serializeToByteArray</a></code>&nbsp;in class&nbsp;<code><a href="ArrayOfItemsSerDe.html" title="class in org.apache.datasketches.common">ArrayOfItemsSerDe</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Double.html?is-external=true" title="class or interface in java.lang" class="externalLink">Double</a>&gt;</code></dd>
 <dt><span class="paramLabel">Parameters:</span></dt>
 <dd><code>items</code> - array of items to be serialized</dd>
 <dt><span class="returnLabel">Returns:</span></dt>
-<dd>serialized representation of the given array of items</dd>
+<dd>contiguous, serialized representation of the given array of unserialized items</dd>
 </dl>
 </li>
 </ul>
 <a id="deserializeFromMemory(org.apache.datasketches.memory.Memory,int)">
 <!--   -->
 </a>
-<ul class="blockListLast">
+<ul class="blockList">
 <li class="blockList">
 <h4>deserializeFromMemory</h4>
-<pre class="methodSignature">public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Double.html?is-external=true" title="class or interface in java.lang" class="externalLink">Double</a>[]&nbsp;deserializeFromMemory&#8203;(org.apache.datasketches.memory.Memory&nbsp;mem,
-                                      int&nbsp;length)</pre>
+<pre class="methodSignature"><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Deprecated.html?is-external=true" title="class or interface in java.lang" class="externalLink">@Deprecated</a>
+public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Double.html?is-external=true" title="class or interface in java.lang" class="externalLink">Double</a>[]&nbsp;deserializeFromMemory&#8203;(org.apache.datasketches.memory.Memory&nbsp;mem,
+                                      int&nbsp;numItems)</pre>
+<div class="deprecationBlock"><span class="deprecatedLabel">Deprecated.</span></div>
 <div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="ArrayOfItemsSerDe.html#deserializeFromMemory(org.apache.datasketches.memory.Memory,int)">ArrayOfItemsSerDe</a></code></span></div>
-<div class="block">Deserialize an array of items from a given Memory object.
- This method is called by the sketch deserialization process.</div>
+<div class="block">Deserialize a contiguous sequence of serialized items from a given Memory.</div>
 <dl>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
 <dd><code><a href="ArrayOfItemsSerDe.html#deserializeFromMemory(org.apache.datasketches.memory.Memory,int)">deserializeFromMemory</a></code>&nbsp;in class&nbsp;<code><a href="ArrayOfItemsSerDe.html" title="class in org.apache.datasketches.common">ArrayOfItemsSerDe</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Double.html?is-external=true" title="class or interface in java.lang" class="externalLink">Double</a>&gt;</code></dd>
 <dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>mem</code> - Memory containing a serialized array of items</dd>
-<dd><code>length</code> - number of items in the serialized array</dd>
+<dd><code>mem</code> - Memory containing a contiguous sequence of serialized items</dd>
+<dd><code>numItems</code> - number of items in the contiguous serialized sequence.</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>array of deserialized items</dd>
+</dl>
+</li>
+</ul>
+<a id="deserializeFromMemory(org.apache.datasketches.memory.Memory,long,int)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>deserializeFromMemory</h4>
+<pre class="methodSignature">public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Double.html?is-external=true" title="class or interface in java.lang" class="externalLink">Double</a>[]&nbsp;deserializeFromMemory&#8203;(org.apache.datasketches.memory.Memory&nbsp;mem,
+                                      long&nbsp;offsetBytes,
+                                      int&nbsp;numItems)</pre>
+<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="ArrayOfItemsSerDe.html#deserializeFromMemory(org.apache.datasketches.memory.Memory,long,int)">ArrayOfItemsSerDe</a></code></span></div>
+<div class="block">Deserialize a contiguous sequence of serialized items from a given Memory.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="ArrayOfItemsSerDe.html#deserializeFromMemory(org.apache.datasketches.memory.Memory,long,int)">deserializeFromMemory</a></code>&nbsp;in class&nbsp;<code><a href="ArrayOfItemsSerDe.html" title="class in org.apache.datasketches.common">ArrayOfItemsSerDe</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Double.html?is-external=true" title="class or interface in java.lang" class="externalLink">Double</a>&gt;</code></dd>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>mem</code> - Memory containing a contiguous sequence of serialized items</dd>
+<dd><code>offsetBytes</code> - the starting offset in the given Memory.</dd>
+<dd><code>numItems</code> - number of items in the contiguous serialized sequence.</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>array of deserialized items</dd>
+</dl>
+</li>
+</ul>
+<a id="sizeOf(java.lang.Double)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>sizeOf</h4>
+<pre class="methodSignature">public&nbsp;int&nbsp;sizeOf&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Double.html?is-external=true" title="class or interface in java.lang" class="externalLink">Double</a>&nbsp;item)</pre>
+<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="ArrayOfItemsSerDe.html#sizeOf(T)">ArrayOfItemsSerDe</a></code></span></div>
+<div class="block">Returns the serialized size in bytes of a single unserialized item.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="ArrayOfItemsSerDe.html#sizeOf(T)">sizeOf</a></code>&nbsp;in class&nbsp;<code><a href="ArrayOfItemsSerDe.html" title="class in org.apache.datasketches.common">ArrayOfItemsSerDe</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Double.html?is-external=true" title="class or interface in java.lang" class="externalLink">Double</a>&gt;</code></dd>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>item</code> - a specific item</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the serialized size in bytes of a single unserialized item.</dd>
+</dl>
+</li>
+</ul>
+<a id="sizeOf(java.lang.Double[])">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>sizeOf</h4>
+<pre class="methodSignature">public&nbsp;int&nbsp;sizeOf&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Double.html?is-external=true" title="class or interface in java.lang" class="externalLink">Double</a>[]&nbsp;items)</pre>
+<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="ArrayOfItemsSerDe.html#sizeOf(T%5B%5D)">ArrayOfItemsSerDe</a></code></span></div>
+<div class="block">Returns the serialized size in bytes of the array of items.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
+<dd><code><a href="ArrayOfItemsSerDe.html#sizeOf(T%5B%5D)">sizeOf</a></code>&nbsp;in class&nbsp;<code><a href="ArrayOfItemsSerDe.html" title="class in org.apache.datasketches.common">ArrayOfItemsSerDe</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Double.html?is-external=true" title="class or interface in java.lang" class="externalLink">Double</a>&gt;</code></dd>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>items</code> - an array of items.</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the serialized size in bytes of the array of items.</dd>
+</dl>
+</li>
+</ul>
+<a id="sizeOf(org.apache.datasketches.memory.Memory,long,int)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>sizeOf</h4>
+<pre class="methodSignature">public&nbsp;int&nbsp;sizeOf&#8203;(org.apache.datasketches.memory.Memory&nbsp;mem,
+                  long&nbsp;offsetBytes,
+                  int&nbsp;numItems)</pre>
+<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="ArrayOfItemsSerDe.html#sizeOf(org.apache.datasketches.memory.Memory,long,int)">ArrayOfItemsSerDe</a></code></span></div>
+<div class="block">Returns the serialized size in bytes of the number of contiguous serialized items in Memory.
+ The capacity of the given Memory can be much larger that the required size of the items.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="ArrayOfItemsSerDe.html#sizeOf(org.apache.datasketches.memory.Memory,long,int)">sizeOf</a></code>&nbsp;in class&nbsp;<code><a href="ArrayOfItemsSerDe.html" title="class in org.apache.datasketches.common">ArrayOfItemsSerDe</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Double.html?is-external=true" title="class or interface in java.lang" class="externalLink">Double</a>&gt;</code></dd>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>mem</code> - the given Memory.</dd>
+<dd><code>offsetBytes</code> - the starting offset in the given Memory.</dd>
+<dd><code>numItems</code> - the number of serialized items contained in the Memory</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the serialized size in bytes of the given number of items.</dd>
+</dl>
+</li>
+</ul>
+<a id="toString(java.lang.Double)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>toString</h4>
+<pre class="methodSignature">public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;toString&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Double.html?is-external=true" title="class or interface in java.lang" class="externalLink">Double</a>&nbsp;item)</pre>
+<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="ArrayOfItemsSerDe.html#toString(T)">ArrayOfItemsSerDe</a></code></span></div>
+<div class="block">Returns a human readable string of an item.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="ArrayOfItemsSerDe.html#toString(T)">toString</a></code>&nbsp;in class&nbsp;<code><a href="ArrayOfItemsSerDe.html" title="class in org.apache.datasketches.common">ArrayOfItemsSerDe</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Double.html?is-external=true" title="class or interface in java.lang" class="externalLink">Double</a>&gt;</code></dd>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>item</code> - a specific item</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a human readable string of an item.</dd>
+</dl>
+</li>
+</ul>
+<a id="getClassOfT()">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>getClassOfT</h4>
+<pre class="methodSignature">public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang" class="externalLink">Class</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Double.html?is-external=true" title="class or interface in java.lang" class="externalLink">Double</a>&gt;&nbsp;getClassOfT()</pre>
+<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="ArrayOfItemsSerDe.html#getClassOfT()">ArrayOfItemsSerDe</a></code></span></div>
+<div class="block">Returns the concrete class of type T</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="ArrayOfItemsSerDe.html#getClassOfT()">getClassOfT</a></code>&nbsp;in class&nbsp;<code><a href="ArrayOfItemsSerDe.html" title="class in org.apache.datasketches.common">ArrayOfItemsSerDe</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Double.html?is-external=true" title="class or interface in java.lang" class="externalLink">Double</a>&gt;</code></dd>
 <dt><span class="returnLabel">Returns:</span></dt>
-<dd>deserialized array of items</dd>
+<dd>the concrete class of type T</dd>
 </dl>
 </li>
 </ul>
diff --git a/docs/master/org/apache/datasketches/common/ArrayOfItemsSerDe.html b/docs/master/org/apache/datasketches/common/ArrayOfItemsSerDe.html
index ba25e4aa..75a8941c 100644
--- a/docs/master/org/apache/datasketches/common/ArrayOfItemsSerDe.html
+++ b/docs/master/org/apache/datasketches/common/ArrayOfItemsSerDe.html
@@ -27,8 +27,8 @@
     catch(err) {
     }
 //-->
-var data = {"i0":6,"i1":6};
-var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],4:["t3","Abstract Methods"]};
+var data = {"i0":38,"i1":6,"i2":6,"i3":6,"i4":6,"i5":6,"i6":6,"i7":10,"i8":6};
+var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],4:["t3","Abstract Methods"],8:["t4","Concrete Methods"],32:["t6","Deprecated Methods"]};
 var altColor = "altColor";
 var rowColor = "rowColor";
 var tableTab = "tableTab";
@@ -182,7 +182,7 @@ extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html
 </a>
 <h3>Method Summary</h3>
 <table class="memberSummary">
-<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t3" class="tableTab"><span><a href="javascript:show(4);">Abstract Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
+<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t3" class="tableTab"><span><a href="javascript:show(4);">Abstract Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabE [...]
 <tr>
 <th class="colFirst" scope="col">Modifier and Type</th>
 <th class="colSecond" scope="col">Method</th>
@@ -193,14 +193,70 @@ extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#deserializeFromMemory(org.apache.datasketches.memory.Memory,int)">deserializeFromMemory</a></span>&#8203;(org.apache.datasketches.memory.Memory&nbsp;mem,
                      int&nbsp;numItems)</code></th>
 <td class="colLast">
-<div class="block">Deserialize an array of items from a given Memory object.</div>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span>
+<div class="deprecationComment">use
+ <a href="#deserializeFromMemory(org.apache.datasketches.memory.Memory,long,int)"><code>deserializeFromMemory(mem, offset, numItems)</code></a></div>
+</div>
 </td>
 </tr>
 <tr id="i1" class="rowColor">
+<td class="colFirst"><code>abstract <a href="ArrayOfItemsSerDe.html" title="type parameter in ArrayOfItemsSerDe">T</a>[]</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#deserializeFromMemory(org.apache.datasketches.memory.Memory,long,int)">deserializeFromMemory</a></span>&#8203;(org.apache.datasketches.memory.Memory&nbsp;mem,
+                     long&nbsp;offsetBytes,
+                     int&nbsp;numItems)</code></th>
+<td class="colLast">
+<div class="block">Deserialize a contiguous sequence of serialized items from a given Memory.</div>
+</td>
+</tr>
+<tr id="i2" class="altColor">
+<td class="colFirst"><code>abstract <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang" class="externalLink">Class</a>&lt;?&gt;</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getClassOfT()">getClassOfT</a></span>()</code></th>
+<td class="colLast">
+<div class="block">Returns the concrete class of type T</div>
+</td>
+</tr>
+<tr id="i3" class="rowColor">
+<td class="colFirst"><code>abstract byte[]</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#serializeToByteArray(T)">serializeToByteArray</a></span>&#8203;(<a href="ArrayOfItemsSerDe.html" title="type parameter in ArrayOfItemsSerDe">T</a>&nbsp;item)</code></th>
+<td class="colLast">
+<div class="block">Serialize a single unserialized item to a byte array.</div>
+</td>
+</tr>
+<tr id="i4" class="altColor">
 <td class="colFirst"><code>abstract byte[]</code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#serializeToByteArray(T%5B%5D)">serializeToByteArray</a></span>&#8203;(<a href="ArrayOfItemsSerDe.html" title="type parameter in ArrayOfItemsSerDe">T</a>[]&nbsp;items)</code></th>
 <td class="colLast">
-<div class="block">Serialize an array of items to byte array.</div>
+<div class="block">Serialize an array of unserialized items to a byte array of contiguous serialized items.</div>
+</td>
+</tr>
+<tr id="i5" class="rowColor">
+<td class="colFirst"><code>abstract int</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#sizeOf(org.apache.datasketches.memory.Memory,long,int)">sizeOf</a></span>&#8203;(org.apache.datasketches.memory.Memory&nbsp;mem,
+      long&nbsp;offsetBytes,
+      int&nbsp;numItems)</code></th>
+<td class="colLast">
+<div class="block">Returns the serialized size in bytes of the number of contiguous serialized items in Memory.</div>
+</td>
+</tr>
+<tr id="i6" class="altColor">
+<td class="colFirst"><code>abstract int</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#sizeOf(T)">sizeOf</a></span>&#8203;(<a href="ArrayOfItemsSerDe.html" title="type parameter in ArrayOfItemsSerDe">T</a>&nbsp;item)</code></th>
+<td class="colLast">
+<div class="block">Returns the serialized size in bytes of a single unserialized item.</div>
+</td>
+</tr>
+<tr id="i7" class="rowColor">
+<td class="colFirst"><code>int</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#sizeOf(T%5B%5D)">sizeOf</a></span>&#8203;(<a href="ArrayOfItemsSerDe.html" title="type parameter in ArrayOfItemsSerDe">T</a>[]&nbsp;items)</code></th>
+<td class="colLast">
+<div class="block">Returns the serialized size in bytes of the array of items.</div>
+</td>
+</tr>
+<tr id="i8" class="altColor">
+<td class="colFirst"><code>abstract <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a></code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#toString(T)">toString</a></span>&#8203;(<a href="ArrayOfItemsSerDe.html" title="type parameter in ArrayOfItemsSerDe">T</a>&nbsp;item)</code></th>
+<td class="colLast">
+<div class="block">Returns a human readable string of an item.</div>
 </td>
 </tr>
 </table>
@@ -246,6 +302,24 @@ extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html
 <!--   -->
 </a>
 <h3>Method Detail</h3>
+<a id="serializeToByteArray(java.lang.Object)">
+<!--   -->
+</a><a id="serializeToByteArray(T)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>serializeToByteArray</h4>
+<pre class="methodSignature">public abstract&nbsp;byte[]&nbsp;serializeToByteArray&#8203;(<a href="ArrayOfItemsSerDe.html" title="type parameter in ArrayOfItemsSerDe">T</a>&nbsp;item)</pre>
+<div class="block">Serialize a single unserialized item to a byte array.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>item</code> - the item to be serialized</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>serialized representation of the given item</dd>
+</dl>
+</li>
+</ul>
 <a id="serializeToByteArray(java.lang.Object[])">
 <!--   -->
 </a><a id="serializeToByteArray(T[])">
@@ -255,33 +329,144 @@ extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html
 <li class="blockList">
 <h4>serializeToByteArray</h4>
 <pre class="methodSignature">public abstract&nbsp;byte[]&nbsp;serializeToByteArray&#8203;(<a href="ArrayOfItemsSerDe.html" title="type parameter in ArrayOfItemsSerDe">T</a>[]&nbsp;items)</pre>
-<div class="block">Serialize an array of items to byte array.
- The size of the array doesn't need to be serialized.
- This method is called by the sketch serialization process.</div>
+<div class="block">Serialize an array of unserialized items to a byte array of contiguous serialized items.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
 <dd><code>items</code> - array of items to be serialized</dd>
 <dt><span class="returnLabel">Returns:</span></dt>
-<dd>serialized representation of the given array of items</dd>
+<dd>contiguous, serialized representation of the given array of unserialized items</dd>
 </dl>
 </li>
 </ul>
 <a id="deserializeFromMemory(org.apache.datasketches.memory.Memory,int)">
 <!--   -->
 </a>
-<ul class="blockListLast">
+<ul class="blockList">
+<li class="blockList">
+<h4>deserializeFromMemory</h4>
+<pre class="methodSignature"><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Deprecated.html?is-external=true" title="class or interface in java.lang" class="externalLink">@Deprecated</a>
+public abstract&nbsp;<a href="ArrayOfItemsSerDe.html" title="type parameter in ArrayOfItemsSerDe">T</a>[]&nbsp;deserializeFromMemory&#8203;(org.apache.datasketches.memory.Memory&nbsp;mem,
+                                          int&nbsp;numItems)</pre>
+<div class="deprecationBlock"><span class="deprecatedLabel">Deprecated.</span>
+<div class="deprecationComment">use
+ <a href="#deserializeFromMemory(org.apache.datasketches.memory.Memory,long,int)"><code>deserializeFromMemory(mem, offset, numItems)</code></a></div>
+</div>
+<div class="block">Deserialize a contiguous sequence of serialized items from a given Memory.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>mem</code> - Memory containing a contiguous sequence of serialized items</dd>
+<dd><code>numItems</code> - number of items in the contiguous serialized sequence.</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>array of deserialized items</dd>
+</dl>
+</li>
+</ul>
+<a id="deserializeFromMemory(org.apache.datasketches.memory.Memory,long,int)">
+<!--   -->
+</a>
+<ul class="blockList">
 <li class="blockList">
 <h4>deserializeFromMemory</h4>
 <pre class="methodSignature">public abstract&nbsp;<a href="ArrayOfItemsSerDe.html" title="type parameter in ArrayOfItemsSerDe">T</a>[]&nbsp;deserializeFromMemory&#8203;(org.apache.datasketches.memory.Memory&nbsp;mem,
+                                          long&nbsp;offsetBytes,
                                           int&nbsp;numItems)</pre>
-<div class="block">Deserialize an array of items from a given Memory object.
- This method is called by the sketch deserialization process.</div>
+<div class="block">Deserialize a contiguous sequence of serialized items from a given Memory.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>mem</code> - Memory containing a serialized array of items</dd>
-<dd><code>numItems</code> - number of items in the serialized array</dd>
+<dd><code>mem</code> - Memory containing a contiguous sequence of serialized items</dd>
+<dd><code>offsetBytes</code> - the starting offset in the given Memory.</dd>
+<dd><code>numItems</code> - number of items in the contiguous serialized sequence.</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>array of deserialized items</dd>
+</dl>
+</li>
+</ul>
+<a id="sizeOf(java.lang.Object)">
+<!--   -->
+</a><a id="sizeOf(T)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>sizeOf</h4>
+<pre class="methodSignature">public abstract&nbsp;int&nbsp;sizeOf&#8203;(<a href="ArrayOfItemsSerDe.html" title="type parameter in ArrayOfItemsSerDe">T</a>&nbsp;item)</pre>
+<div class="block">Returns the serialized size in bytes of a single unserialized item.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>item</code> - a specific item</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the serialized size in bytes of a single unserialized item.</dd>
+</dl>
+</li>
+</ul>
+<a id="sizeOf(java.lang.Object[])">
+<!--   -->
+</a><a id="sizeOf(T[])">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>sizeOf</h4>
+<pre class="methodSignature">public&nbsp;int&nbsp;sizeOf&#8203;(<a href="ArrayOfItemsSerDe.html" title="type parameter in ArrayOfItemsSerDe">T</a>[]&nbsp;items)</pre>
+<div class="block">Returns the serialized size in bytes of the array of items.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>items</code> - an array of items.</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the serialized size in bytes of the array of items.</dd>
+</dl>
+</li>
+</ul>
+<a id="sizeOf(org.apache.datasketches.memory.Memory,long,int)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>sizeOf</h4>
+<pre class="methodSignature">public abstract&nbsp;int&nbsp;sizeOf&#8203;(org.apache.datasketches.memory.Memory&nbsp;mem,
+                           long&nbsp;offsetBytes,
+                           int&nbsp;numItems)</pre>
+<div class="block">Returns the serialized size in bytes of the number of contiguous serialized items in Memory.
+ The capacity of the given Memory can be much larger that the required size of the items.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>mem</code> - the given Memory.</dd>
+<dd><code>offsetBytes</code> - the starting offset in the given Memory.</dd>
+<dd><code>numItems</code> - the number of serialized items contained in the Memory</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the serialized size in bytes of the given number of items.</dd>
+</dl>
+</li>
+</ul>
+<a id="toString(java.lang.Object)">
+<!--   -->
+</a><a id="toString(T)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>toString</h4>
+<pre class="methodSignature">public abstract&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;toString&#8203;(<a href="ArrayOfItemsSerDe.html" title="type parameter in ArrayOfItemsSerDe">T</a>&nbsp;item)</pre>
+<div class="block">Returns a human readable string of an item.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>item</code> - a specific item</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a human readable string of an item.</dd>
+</dl>
+</li>
+</ul>
+<a id="getClassOfT()">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>getClassOfT</h4>
+<pre class="methodSignature">public abstract&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang" class="externalLink">Class</a>&lt;?&gt;&nbsp;getClassOfT()</pre>
+<div class="block">Returns the concrete class of type T</div>
+<dl>
 <dt><span class="returnLabel">Returns:</span></dt>
-<dd>deserialized array of items</dd>
+<dd>the concrete class of type T</dd>
 </dl>
 </li>
 </ul>
diff --git a/docs/master/org/apache/datasketches/common/ArrayOfLongsSerDe.html b/docs/master/org/apache/datasketches/common/ArrayOfLongsSerDe.html
index fbb976af..74e765ac 100644
--- a/docs/master/org/apache/datasketches/common/ArrayOfLongsSerDe.html
+++ b/docs/master/org/apache/datasketches/common/ArrayOfLongsSerDe.html
@@ -27,8 +27,8 @@
     catch(err) {
     }
 //-->
-var data = {"i0":10,"i1":10};
-var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
+var data = {"i0":42,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10,"i7":10,"i8":10};
+var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"],32:["t6","Deprecated Methods"]};
 var altColor = "altColor";
 var rowColor = "rowColor";
 var tableTab = "tableTab";
@@ -179,7 +179,7 @@ extends <a href="ArrayOfItemsSerDe.html" title="class in org.apache.datasketches
 </a>
 <h3>Method Summary</h3>
 <table class="memberSummary">
-<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
+<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t6" class="tableTab"><span><a href="javascript:show(32);">Deprecated Methods</a></span><span class="t [...]
 <tr>
 <th class="colFirst" scope="col">Modifier and Type</th>
 <th class="colSecond" scope="col">Method</th>
@@ -188,16 +188,69 @@ extends <a href="ArrayOfItemsSerDe.html" title="class in org.apache.datasketches
 <tr id="i0" class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang" class="externalLink">Long</a>[]</code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#deserializeFromMemory(org.apache.datasketches.memory.Memory,int)">deserializeFromMemory</a></span>&#8203;(org.apache.datasketches.memory.Memory&nbsp;mem,
-                     int&nbsp;length)</code></th>
+                     int&nbsp;numItems)</code></th>
 <td class="colLast">
-<div class="block">Deserialize an array of items from a given Memory object.</div>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
 </td>
 </tr>
 <tr id="i1" class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang" class="externalLink">Long</a>[]</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#deserializeFromMemory(org.apache.datasketches.memory.Memory,long,int)">deserializeFromMemory</a></span>&#8203;(org.apache.datasketches.memory.Memory&nbsp;mem,
+                     long&nbsp;offsetBytes,
+                     int&nbsp;numItems)</code></th>
+<td class="colLast">
+<div class="block">Deserialize a contiguous sequence of serialized items from a given Memory.</div>
+</td>
+</tr>
+<tr id="i2" class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang" class="externalLink">Class</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang" class="externalLink">Long</a>&gt;</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getClassOfT()">getClassOfT</a></span>()</code></th>
+<td class="colLast">
+<div class="block">Returns the concrete class of type T</div>
+</td>
+</tr>
+<tr id="i3" class="rowColor">
+<td class="colFirst"><code>byte[]</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#serializeToByteArray(java.lang.Long)">serializeToByteArray</a></span>&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang" class="externalLink">Long</a>&nbsp;item)</code></th>
+<td class="colLast">
+<div class="block">Serialize a single unserialized item to a byte array.</div>
+</td>
+</tr>
+<tr id="i4" class="altColor">
 <td class="colFirst"><code>byte[]</code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#serializeToByteArray(java.lang.Long%5B%5D)">serializeToByteArray</a></span>&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang" class="externalLink">Long</a>[]&nbsp;items)</code></th>
 <td class="colLast">
-<div class="block">Serialize an array of items to byte array.</div>
+<div class="block">Serialize an array of unserialized items to a byte array of contiguous serialized items.</div>
+</td>
+</tr>
+<tr id="i5" class="rowColor">
+<td class="colFirst"><code>int</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#sizeOf(java.lang.Long)">sizeOf</a></span>&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang" class="externalLink">Long</a>&nbsp;item)</code></th>
+<td class="colLast">
+<div class="block">Returns the serialized size in bytes of a single unserialized item.</div>
+</td>
+</tr>
+<tr id="i6" class="altColor">
+<td class="colFirst"><code>int</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#sizeOf(java.lang.Long%5B%5D)">sizeOf</a></span>&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang" class="externalLink">Long</a>[]&nbsp;items)</code></th>
+<td class="colLast">
+<div class="block">Returns the serialized size in bytes of the array of items.</div>
+</td>
+</tr>
+<tr id="i7" class="rowColor">
+<td class="colFirst"><code>int</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#sizeOf(org.apache.datasketches.memory.Memory,long,int)">sizeOf</a></span>&#8203;(org.apache.datasketches.memory.Memory&nbsp;mem,
+      long&nbsp;offsetBytes,
+      int&nbsp;numItems)</code></th>
+<td class="colLast">
+<div class="block">Returns the serialized size in bytes of the number of contiguous serialized items in Memory.</div>
+</td>
+</tr>
+<tr id="i8" class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a></code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#toString(java.lang.Long)">toString</a></span>&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang" class="externalLink">Long</a>&nbsp;item)</code></th>
+<td class="colLast">
+<div class="block">Returns a human readable string of an item.</div>
 </td>
 </tr>
 </table>
@@ -243,6 +296,25 @@ extends <a href="ArrayOfItemsSerDe.html" title="class in org.apache.datasketches
 <!--   -->
 </a>
 <h3>Method Detail</h3>
+<a id="serializeToByteArray(java.lang.Long)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>serializeToByteArray</h4>
+<pre class="methodSignature">public&nbsp;byte[]&nbsp;serializeToByteArray&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang" class="externalLink">Long</a>&nbsp;item)</pre>
+<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="ArrayOfItemsSerDe.html#serializeToByteArray(T)">ArrayOfItemsSerDe</a></code></span></div>
+<div class="block">Serialize a single unserialized item to a byte array.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="ArrayOfItemsSerDe.html#serializeToByteArray(T)">serializeToByteArray</a></code>&nbsp;in class&nbsp;<code><a href="ArrayOfItemsSerDe.html" title="class in org.apache.datasketches.common">ArrayOfItemsSerDe</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang" class="externalLink">Long</a>&gt;</code></dd>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>item</code> - the item to be serialized</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>serialized representation of the given item</dd>
+</dl>
+</li>
+</ul>
 <a id="serializeToByteArray(java.lang.Long[])">
 <!--   -->
 </a>
@@ -251,38 +323,158 @@ extends <a href="ArrayOfItemsSerDe.html" title="class in org.apache.datasketches
 <h4>serializeToByteArray</h4>
 <pre class="methodSignature">public&nbsp;byte[]&nbsp;serializeToByteArray&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang" class="externalLink">Long</a>[]&nbsp;items)</pre>
 <div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="ArrayOfItemsSerDe.html#serializeToByteArray(T%5B%5D)">ArrayOfItemsSerDe</a></code></span></div>
-<div class="block">Serialize an array of items to byte array.
- The size of the array doesn't need to be serialized.
- This method is called by the sketch serialization process.</div>
+<div class="block">Serialize an array of unserialized items to a byte array of contiguous serialized items.</div>
 <dl>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
 <dd><code><a href="ArrayOfItemsSerDe.html#serializeToByteArray(T%5B%5D)">serializeToByteArray</a></code>&nbsp;in class&nbsp;<code><a href="ArrayOfItemsSerDe.html" title="class in org.apache.datasketches.common">ArrayOfItemsSerDe</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang" class="externalLink">Long</a>&gt;</code></dd>
 <dt><span class="paramLabel">Parameters:</span></dt>
 <dd><code>items</code> - array of items to be serialized</dd>
 <dt><span class="returnLabel">Returns:</span></dt>
-<dd>serialized representation of the given array of items</dd>
+<dd>contiguous, serialized representation of the given array of unserialized items</dd>
 </dl>
 </li>
 </ul>
 <a id="deserializeFromMemory(org.apache.datasketches.memory.Memory,int)">
 <!--   -->
 </a>
-<ul class="blockListLast">
+<ul class="blockList">
 <li class="blockList">
 <h4>deserializeFromMemory</h4>
-<pre class="methodSignature">public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang" class="externalLink">Long</a>[]&nbsp;deserializeFromMemory&#8203;(org.apache.datasketches.memory.Memory&nbsp;mem,
-                                    int&nbsp;length)</pre>
+<pre class="methodSignature"><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Deprecated.html?is-external=true" title="class or interface in java.lang" class="externalLink">@Deprecated</a>
+public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang" class="externalLink">Long</a>[]&nbsp;deserializeFromMemory&#8203;(org.apache.datasketches.memory.Memory&nbsp;mem,
+                                    int&nbsp;numItems)</pre>
+<div class="deprecationBlock"><span class="deprecatedLabel">Deprecated.</span></div>
 <div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="ArrayOfItemsSerDe.html#deserializeFromMemory(org.apache.datasketches.memory.Memory,int)">ArrayOfItemsSerDe</a></code></span></div>
-<div class="block">Deserialize an array of items from a given Memory object.
- This method is called by the sketch deserialization process.</div>
+<div class="block">Deserialize a contiguous sequence of serialized items from a given Memory.</div>
 <dl>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
 <dd><code><a href="ArrayOfItemsSerDe.html#deserializeFromMemory(org.apache.datasketches.memory.Memory,int)">deserializeFromMemory</a></code>&nbsp;in class&nbsp;<code><a href="ArrayOfItemsSerDe.html" title="class in org.apache.datasketches.common">ArrayOfItemsSerDe</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang" class="externalLink">Long</a>&gt;</code></dd>
 <dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>mem</code> - Memory containing a serialized array of items</dd>
-<dd><code>length</code> - number of items in the serialized array</dd>
+<dd><code>mem</code> - Memory containing a contiguous sequence of serialized items</dd>
+<dd><code>numItems</code> - number of items in the contiguous serialized sequence.</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>array of deserialized items</dd>
+</dl>
+</li>
+</ul>
+<a id="deserializeFromMemory(org.apache.datasketches.memory.Memory,long,int)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>deserializeFromMemory</h4>
+<pre class="methodSignature">public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang" class="externalLink">Long</a>[]&nbsp;deserializeFromMemory&#8203;(org.apache.datasketches.memory.Memory&nbsp;mem,
+                                    long&nbsp;offsetBytes,
+                                    int&nbsp;numItems)</pre>
+<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="ArrayOfItemsSerDe.html#deserializeFromMemory(org.apache.datasketches.memory.Memory,long,int)">ArrayOfItemsSerDe</a></code></span></div>
+<div class="block">Deserialize a contiguous sequence of serialized items from a given Memory.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="ArrayOfItemsSerDe.html#deserializeFromMemory(org.apache.datasketches.memory.Memory,long,int)">deserializeFromMemory</a></code>&nbsp;in class&nbsp;<code><a href="ArrayOfItemsSerDe.html" title="class in org.apache.datasketches.common">ArrayOfItemsSerDe</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang" class="externalLink">Long</a>&gt;</code></dd>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>mem</code> - Memory containing a contiguous sequence of serialized items</dd>
+<dd><code>offsetBytes</code> - the starting offset in the given Memory.</dd>
+<dd><code>numItems</code> - number of items in the contiguous serialized sequence.</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>array of deserialized items</dd>
+</dl>
+</li>
+</ul>
+<a id="sizeOf(java.lang.Long)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>sizeOf</h4>
+<pre class="methodSignature">public&nbsp;int&nbsp;sizeOf&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang" class="externalLink">Long</a>&nbsp;item)</pre>
+<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="ArrayOfItemsSerDe.html#sizeOf(T)">ArrayOfItemsSerDe</a></code></span></div>
+<div class="block">Returns the serialized size in bytes of a single unserialized item.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="ArrayOfItemsSerDe.html#sizeOf(T)">sizeOf</a></code>&nbsp;in class&nbsp;<code><a href="ArrayOfItemsSerDe.html" title="class in org.apache.datasketches.common">ArrayOfItemsSerDe</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang" class="externalLink">Long</a>&gt;</code></dd>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>item</code> - a specific item</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the serialized size in bytes of a single unserialized item.</dd>
+</dl>
+</li>
+</ul>
+<a id="sizeOf(java.lang.Long[])">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>sizeOf</h4>
+<pre class="methodSignature">public&nbsp;int&nbsp;sizeOf&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang" class="externalLink">Long</a>[]&nbsp;items)</pre>
+<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="ArrayOfItemsSerDe.html#sizeOf(T%5B%5D)">ArrayOfItemsSerDe</a></code></span></div>
+<div class="block">Returns the serialized size in bytes of the array of items.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
+<dd><code><a href="ArrayOfItemsSerDe.html#sizeOf(T%5B%5D)">sizeOf</a></code>&nbsp;in class&nbsp;<code><a href="ArrayOfItemsSerDe.html" title="class in org.apache.datasketches.common">ArrayOfItemsSerDe</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang" class="externalLink">Long</a>&gt;</code></dd>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>items</code> - an array of items.</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the serialized size in bytes of the array of items.</dd>
+</dl>
+</li>
+</ul>
+<a id="sizeOf(org.apache.datasketches.memory.Memory,long,int)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>sizeOf</h4>
+<pre class="methodSignature">public&nbsp;int&nbsp;sizeOf&#8203;(org.apache.datasketches.memory.Memory&nbsp;mem,
+                  long&nbsp;offsetBytes,
+                  int&nbsp;numItems)</pre>
+<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="ArrayOfItemsSerDe.html#sizeOf(org.apache.datasketches.memory.Memory,long,int)">ArrayOfItemsSerDe</a></code></span></div>
+<div class="block">Returns the serialized size in bytes of the number of contiguous serialized items in Memory.
+ The capacity of the given Memory can be much larger that the required size of the items.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="ArrayOfItemsSerDe.html#sizeOf(org.apache.datasketches.memory.Memory,long,int)">sizeOf</a></code>&nbsp;in class&nbsp;<code><a href="ArrayOfItemsSerDe.html" title="class in org.apache.datasketches.common">ArrayOfItemsSerDe</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang" class="externalLink">Long</a>&gt;</code></dd>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>mem</code> - the given Memory.</dd>
+<dd><code>offsetBytes</code> - the starting offset in the given Memory.</dd>
+<dd><code>numItems</code> - the number of serialized items contained in the Memory</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the serialized size in bytes of the given number of items.</dd>
+</dl>
+</li>
+</ul>
+<a id="toString(java.lang.Long)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>toString</h4>
+<pre class="methodSignature">public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;toString&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang" class="externalLink">Long</a>&nbsp;item)</pre>
+<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="ArrayOfItemsSerDe.html#toString(T)">ArrayOfItemsSerDe</a></code></span></div>
+<div class="block">Returns a human readable string of an item.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="ArrayOfItemsSerDe.html#toString(T)">toString</a></code>&nbsp;in class&nbsp;<code><a href="ArrayOfItemsSerDe.html" title="class in org.apache.datasketches.common">ArrayOfItemsSerDe</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang" class="externalLink">Long</a>&gt;</code></dd>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>item</code> - a specific item</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a human readable string of an item.</dd>
+</dl>
+</li>
+</ul>
+<a id="getClassOfT()">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>getClassOfT</h4>
+<pre class="methodSignature">public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang" class="externalLink">Class</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang" class="externalLink">Long</a>&gt;&nbsp;getClassOfT()</pre>
+<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="ArrayOfItemsSerDe.html#getClassOfT()">ArrayOfItemsSerDe</a></code></span></div>
+<div class="block">Returns the concrete class of type T</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="ArrayOfItemsSerDe.html#getClassOfT()">getClassOfT</a></code>&nbsp;in class&nbsp;<code><a href="ArrayOfItemsSerDe.html" title="class in org.apache.datasketches.common">ArrayOfItemsSerDe</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang" class="externalLink">Long</a>&gt;</code></dd>
 <dt><span class="returnLabel">Returns:</span></dt>
-<dd>deserialized array of items</dd>
+<dd>the concrete class of type T</dd>
 </dl>
 </li>
 </ul>
diff --git a/docs/master/org/apache/datasketches/common/ArrayOfNumbersSerDe.html b/docs/master/org/apache/datasketches/common/ArrayOfNumbersSerDe.html
index 12c903e6..bdb8c10d 100644
--- a/docs/master/org/apache/datasketches/common/ArrayOfNumbersSerDe.html
+++ b/docs/master/org/apache/datasketches/common/ArrayOfNumbersSerDe.html
@@ -27,8 +27,8 @@
     catch(err) {
     }
 //-->
-var data = {"i0":10,"i1":10};
-var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
+var data = {"i0":42,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10,"i7":10,"i8":10};
+var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"],32:["t6","Deprecated Methods"]};
 var altColor = "altColor";
 var rowColor = "rowColor";
 var tableTab = "tableTab";
@@ -187,7 +187,7 @@ extends <a href="ArrayOfItemsSerDe.html" title="class in org.apache.datasketches
 </a>
 <h3>Method Summary</h3>
 <table class="memberSummary">
-<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
+<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t6" class="tableTab"><span><a href="javascript:show(32);">Deprecated Methods</a></span><span class="t [...]
 <tr>
 <th class="colFirst" scope="col">Modifier and Type</th>
 <th class="colSecond" scope="col">Method</th>
@@ -196,16 +196,69 @@ extends <a href="ArrayOfItemsSerDe.html" title="class in org.apache.datasketches
 <tr id="i0" class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Number.html?is-external=true" title="class or interface in java.lang" class="externalLink">Number</a>[]</code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#deserializeFromMemory(org.apache.datasketches.memory.Memory,int)">deserializeFromMemory</a></span>&#8203;(org.apache.datasketches.memory.Memory&nbsp;mem,
-                     int&nbsp;length)</code></th>
+                     int&nbsp;numItems)</code></th>
 <td class="colLast">
-<div class="block">Deserialize an array of items from a given Memory object.</div>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
 </td>
 </tr>
 <tr id="i1" class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Number.html?is-external=true" title="class or interface in java.lang" class="externalLink">Number</a>[]</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#deserializeFromMemory(org.apache.datasketches.memory.Memory,long,int)">deserializeFromMemory</a></span>&#8203;(org.apache.datasketches.memory.Memory&nbsp;mem,
+                     long&nbsp;offsetBytes,
+                     int&nbsp;numItems)</code></th>
+<td class="colLast">
+<div class="block">Deserialize a contiguous sequence of serialized items from a given Memory.</div>
+</td>
+</tr>
+<tr id="i2" class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang" class="externalLink">Class</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Number.html?is-external=true" title="class or interface in java.lang" class="externalLink">Number</a>&gt;</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getClassOfT()">getClassOfT</a></span>()</code></th>
+<td class="colLast">
+<div class="block">Returns the concrete class of type T</div>
+</td>
+</tr>
+<tr id="i3" class="rowColor">
+<td class="colFirst"><code>byte[]</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#serializeToByteArray(java.lang.Number)">serializeToByteArray</a></span>&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Number.html?is-external=true" title="class or interface in java.lang" class="externalLink">Number</a>&nbsp;item)</code></th>
+<td class="colLast">
+<div class="block">Serialize a single unserialized item to a byte array.</div>
+</td>
+</tr>
+<tr id="i4" class="altColor">
 <td class="colFirst"><code>byte[]</code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#serializeToByteArray(java.lang.Number%5B%5D)">serializeToByteArray</a></span>&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Number.html?is-external=true" title="class or interface in java.lang" class="externalLink">Number</a>[]&nbsp;items)</code></th>
 <td class="colLast">
-<div class="block">Serialize an array of items to byte array.</div>
+<div class="block">Serialize an array of unserialized items to a byte array of contiguous serialized items.</div>
+</td>
+</tr>
+<tr id="i5" class="rowColor">
+<td class="colFirst"><code>int</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#sizeOf(java.lang.Number)">sizeOf</a></span>&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Number.html?is-external=true" title="class or interface in java.lang" class="externalLink">Number</a>&nbsp;item)</code></th>
+<td class="colLast">
+<div class="block">Returns the serialized size in bytes of a single unserialized item.</div>
+</td>
+</tr>
+<tr id="i6" class="altColor">
+<td class="colFirst"><code>int</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#sizeOf(java.lang.Number%5B%5D)">sizeOf</a></span>&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Number.html?is-external=true" title="class or interface in java.lang" class="externalLink">Number</a>[]&nbsp;items)</code></th>
+<td class="colLast">
+<div class="block">Returns the serialized size in bytes of the array of items.</div>
+</td>
+</tr>
+<tr id="i7" class="rowColor">
+<td class="colFirst"><code>int</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#sizeOf(org.apache.datasketches.memory.Memory,long,int)">sizeOf</a></span>&#8203;(org.apache.datasketches.memory.Memory&nbsp;mem,
+      long&nbsp;offsetBytes,
+      int&nbsp;numItems)</code></th>
+<td class="colLast">
+<div class="block">Returns the serialized size in bytes of the number of contiguous serialized items in Memory.</div>
+</td>
+</tr>
+<tr id="i8" class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a></code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#toString(java.lang.Number)">toString</a></span>&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Number.html?is-external=true" title="class or interface in java.lang" class="externalLink">Number</a>&nbsp;item)</code></th>
+<td class="colLast">
+<div class="block">Returns a human readable string of an item.</div>
 </td>
 </tr>
 </table>
@@ -251,6 +304,25 @@ extends <a href="ArrayOfItemsSerDe.html" title="class in org.apache.datasketches
 <!--   -->
 </a>
 <h3>Method Detail</h3>
+<a id="serializeToByteArray(java.lang.Number)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>serializeToByteArray</h4>
+<pre class="methodSignature">public&nbsp;byte[]&nbsp;serializeToByteArray&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Number.html?is-external=true" title="class or interface in java.lang" class="externalLink">Number</a>&nbsp;item)</pre>
+<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="ArrayOfItemsSerDe.html#serializeToByteArray(T)">ArrayOfItemsSerDe</a></code></span></div>
+<div class="block">Serialize a single unserialized item to a byte array.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="ArrayOfItemsSerDe.html#serializeToByteArray(T)">serializeToByteArray</a></code>&nbsp;in class&nbsp;<code><a href="ArrayOfItemsSerDe.html" title="class in org.apache.datasketches.common">ArrayOfItemsSerDe</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Number.html?is-external=true" title="class or interface in java.lang" class="externalLink">Number</a>&gt;</code></dd>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>item</code> - the item to be serialized</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>serialized representation of the given item</dd>
+</dl>
+</li>
+</ul>
 <a id="serializeToByteArray(java.lang.Number[])">
 <!--   -->
 </a>
@@ -259,38 +331,158 @@ extends <a href="ArrayOfItemsSerDe.html" title="class in org.apache.datasketches
 <h4>serializeToByteArray</h4>
 <pre class="methodSignature">public&nbsp;byte[]&nbsp;serializeToByteArray&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Number.html?is-external=true" title="class or interface in java.lang" class="externalLink">Number</a>[]&nbsp;items)</pre>
 <div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="ArrayOfItemsSerDe.html#serializeToByteArray(T%5B%5D)">ArrayOfItemsSerDe</a></code></span></div>
-<div class="block">Serialize an array of items to byte array.
- The size of the array doesn't need to be serialized.
- This method is called by the sketch serialization process.</div>
+<div class="block">Serialize an array of unserialized items to a byte array of contiguous serialized items.</div>
 <dl>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
 <dd><code><a href="ArrayOfItemsSerDe.html#serializeToByteArray(T%5B%5D)">serializeToByteArray</a></code>&nbsp;in class&nbsp;<code><a href="ArrayOfItemsSerDe.html" title="class in org.apache.datasketches.common">ArrayOfItemsSerDe</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Number.html?is-external=true" title="class or interface in java.lang" class="externalLink">Number</a>&gt;</code></dd>
 <dt><span class="paramLabel">Parameters:</span></dt>
 <dd><code>items</code> - array of items to be serialized</dd>
 <dt><span class="returnLabel">Returns:</span></dt>
-<dd>serialized representation of the given array of items</dd>
+<dd>contiguous, serialized representation of the given array of unserialized items</dd>
 </dl>
 </li>
 </ul>
 <a id="deserializeFromMemory(org.apache.datasketches.memory.Memory,int)">
 <!--   -->
 </a>
-<ul class="blockListLast">
+<ul class="blockList">
 <li class="blockList">
 <h4>deserializeFromMemory</h4>
-<pre class="methodSignature">public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Number.html?is-external=true" title="class or interface in java.lang" class="externalLink">Number</a>[]&nbsp;deserializeFromMemory&#8203;(org.apache.datasketches.memory.Memory&nbsp;mem,
-                                      int&nbsp;length)</pre>
+<pre class="methodSignature"><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Deprecated.html?is-external=true" title="class or interface in java.lang" class="externalLink">@Deprecated</a>
+public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Number.html?is-external=true" title="class or interface in java.lang" class="externalLink">Number</a>[]&nbsp;deserializeFromMemory&#8203;(org.apache.datasketches.memory.Memory&nbsp;mem,
+                                      int&nbsp;numItems)</pre>
+<div class="deprecationBlock"><span class="deprecatedLabel">Deprecated.</span></div>
 <div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="ArrayOfItemsSerDe.html#deserializeFromMemory(org.apache.datasketches.memory.Memory,int)">ArrayOfItemsSerDe</a></code></span></div>
-<div class="block">Deserialize an array of items from a given Memory object.
- This method is called by the sketch deserialization process.</div>
+<div class="block">Deserialize a contiguous sequence of serialized items from a given Memory.</div>
 <dl>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
 <dd><code><a href="ArrayOfItemsSerDe.html#deserializeFromMemory(org.apache.datasketches.memory.Memory,int)">deserializeFromMemory</a></code>&nbsp;in class&nbsp;<code><a href="ArrayOfItemsSerDe.html" title="class in org.apache.datasketches.common">ArrayOfItemsSerDe</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Number.html?is-external=true" title="class or interface in java.lang" class="externalLink">Number</a>&gt;</code></dd>
 <dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>mem</code> - Memory containing a serialized array of items</dd>
-<dd><code>length</code> - number of items in the serialized array</dd>
+<dd><code>mem</code> - Memory containing a contiguous sequence of serialized items</dd>
+<dd><code>numItems</code> - number of items in the contiguous serialized sequence.</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>array of deserialized items</dd>
+</dl>
+</li>
+</ul>
+<a id="deserializeFromMemory(org.apache.datasketches.memory.Memory,long,int)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>deserializeFromMemory</h4>
+<pre class="methodSignature">public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Number.html?is-external=true" title="class or interface in java.lang" class="externalLink">Number</a>[]&nbsp;deserializeFromMemory&#8203;(org.apache.datasketches.memory.Memory&nbsp;mem,
+                                      long&nbsp;offsetBytes,
+                                      int&nbsp;numItems)</pre>
+<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="ArrayOfItemsSerDe.html#deserializeFromMemory(org.apache.datasketches.memory.Memory,long,int)">ArrayOfItemsSerDe</a></code></span></div>
+<div class="block">Deserialize a contiguous sequence of serialized items from a given Memory.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="ArrayOfItemsSerDe.html#deserializeFromMemory(org.apache.datasketches.memory.Memory,long,int)">deserializeFromMemory</a></code>&nbsp;in class&nbsp;<code><a href="ArrayOfItemsSerDe.html" title="class in org.apache.datasketches.common">ArrayOfItemsSerDe</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Number.html?is-external=true" title="class or interface in java.lang" class="externalLink">Number</a>&gt;</code></dd>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>mem</code> - Memory containing a contiguous sequence of serialized items</dd>
+<dd><code>offsetBytes</code> - the starting offset in the given Memory.</dd>
+<dd><code>numItems</code> - number of items in the contiguous serialized sequence.</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>array of deserialized items</dd>
+</dl>
+</li>
+</ul>
+<a id="sizeOf(java.lang.Number)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>sizeOf</h4>
+<pre class="methodSignature">public&nbsp;int&nbsp;sizeOf&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Number.html?is-external=true" title="class or interface in java.lang" class="externalLink">Number</a>&nbsp;item)</pre>
+<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="ArrayOfItemsSerDe.html#sizeOf(T)">ArrayOfItemsSerDe</a></code></span></div>
+<div class="block">Returns the serialized size in bytes of a single unserialized item.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="ArrayOfItemsSerDe.html#sizeOf(T)">sizeOf</a></code>&nbsp;in class&nbsp;<code><a href="ArrayOfItemsSerDe.html" title="class in org.apache.datasketches.common">ArrayOfItemsSerDe</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Number.html?is-external=true" title="class or interface in java.lang" class="externalLink">Number</a>&gt;</code></dd>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>item</code> - a specific item</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the serialized size in bytes of a single unserialized item.</dd>
+</dl>
+</li>
+</ul>
+<a id="sizeOf(java.lang.Number[])">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>sizeOf</h4>
+<pre class="methodSignature">public&nbsp;int&nbsp;sizeOf&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Number.html?is-external=true" title="class or interface in java.lang" class="externalLink">Number</a>[]&nbsp;items)</pre>
+<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="ArrayOfItemsSerDe.html#sizeOf(T%5B%5D)">ArrayOfItemsSerDe</a></code></span></div>
+<div class="block">Returns the serialized size in bytes of the array of items.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
+<dd><code><a href="ArrayOfItemsSerDe.html#sizeOf(T%5B%5D)">sizeOf</a></code>&nbsp;in class&nbsp;<code><a href="ArrayOfItemsSerDe.html" title="class in org.apache.datasketches.common">ArrayOfItemsSerDe</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Number.html?is-external=true" title="class or interface in java.lang" class="externalLink">Number</a>&gt;</code></dd>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>items</code> - an array of items.</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the serialized size in bytes of the array of items.</dd>
+</dl>
+</li>
+</ul>
+<a id="sizeOf(org.apache.datasketches.memory.Memory,long,int)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>sizeOf</h4>
+<pre class="methodSignature">public&nbsp;int&nbsp;sizeOf&#8203;(org.apache.datasketches.memory.Memory&nbsp;mem,
+                  long&nbsp;offsetBytes,
+                  int&nbsp;numItems)</pre>
+<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="ArrayOfItemsSerDe.html#sizeOf(org.apache.datasketches.memory.Memory,long,int)">ArrayOfItemsSerDe</a></code></span></div>
+<div class="block">Returns the serialized size in bytes of the number of contiguous serialized items in Memory.
+ The capacity of the given Memory can be much larger that the required size of the items.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="ArrayOfItemsSerDe.html#sizeOf(org.apache.datasketches.memory.Memory,long,int)">sizeOf</a></code>&nbsp;in class&nbsp;<code><a href="ArrayOfItemsSerDe.html" title="class in org.apache.datasketches.common">ArrayOfItemsSerDe</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Number.html?is-external=true" title="class or interface in java.lang" class="externalLink">Number</a>&gt;</code></dd>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>mem</code> - the given Memory.</dd>
+<dd><code>offsetBytes</code> - the starting offset in the given Memory.</dd>
+<dd><code>numItems</code> - the number of serialized items contained in the Memory</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the serialized size in bytes of the given number of items.</dd>
+</dl>
+</li>
+</ul>
+<a id="toString(java.lang.Number)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>toString</h4>
+<pre class="methodSignature">public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;toString&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Number.html?is-external=true" title="class or interface in java.lang" class="externalLink">Number</a>&nbsp;item)</pre>
+<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="ArrayOfItemsSerDe.html#toString(T)">ArrayOfItemsSerDe</a></code></span></div>
+<div class="block">Returns a human readable string of an item.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="ArrayOfItemsSerDe.html#toString(T)">toString</a></code>&nbsp;in class&nbsp;<code><a href="ArrayOfItemsSerDe.html" title="class in org.apache.datasketches.common">ArrayOfItemsSerDe</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Number.html?is-external=true" title="class or interface in java.lang" class="externalLink">Number</a>&gt;</code></dd>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>item</code> - a specific item</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a human readable string of an item.</dd>
+</dl>
+</li>
+</ul>
+<a id="getClassOfT()">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>getClassOfT</h4>
+<pre class="methodSignature">public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang" class="externalLink">Class</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Number.html?is-external=true" title="class or interface in java.lang" class="externalLink">Number</a>&gt;&nbsp;getClassOfT()</pre>
+<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="ArrayOfItemsSerDe.html#getClassOfT()">ArrayOfItemsSerDe</a></code></span></div>
+<div class="block">Returns the concrete class of type T</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="ArrayOfItemsSerDe.html#getClassOfT()">getClassOfT</a></code>&nbsp;in class&nbsp;<code><a href="ArrayOfItemsSerDe.html" title="class in org.apache.datasketches.common">ArrayOfItemsSerDe</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Number.html?is-external=true" title="class or interface in java.lang" class="externalLink">Number</a>&gt;</code></dd>
 <dt><span class="returnLabel">Returns:</span></dt>
-<dd>deserialized array of items</dd>
+<dd>the concrete class of type T</dd>
 </dl>
 </li>
 </ul>
diff --git a/docs/master/org/apache/datasketches/common/ArrayOfStringsSerDe.html b/docs/master/org/apache/datasketches/common/ArrayOfStringsSerDe.html
index 9da263f6..58290b0c 100644
--- a/docs/master/org/apache/datasketches/common/ArrayOfStringsSerDe.html
+++ b/docs/master/org/apache/datasketches/common/ArrayOfStringsSerDe.html
@@ -27,8 +27,8 @@
     catch(err) {
     }
 //-->
-var data = {"i0":10,"i1":10};
-var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
+var data = {"i0":42,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10,"i7":10};
+var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"],32:["t6","Deprecated Methods"]};
 var altColor = "altColor";
 var rowColor = "rowColor";
 var tableTab = "tableTab";
@@ -143,7 +143,9 @@ extends <a href="ArrayOfItemsSerDe.html" title="class in org.apache.datasketches
  This class serializes strings in UTF-8 format, which is more compact compared to
  <a href="ArrayOfUtf16StringsSerDe.html" title="class in org.apache.datasketches.common"><code>ArrayOfUtf16StringsSerDe</code></a>. In an extreme case when all strings are in ASCII,
  this method is 2 times more compact, but it takes more time to encode and decode
- by a factor of 1.5 to 2.</div>
+ by a factor of 1.5 to 2.
+
+ <p>The serialization</div>
 <dl>
 <dt><span class="simpleTagLabel">Author:</span></dt>
 <dd>Alexander Saydakov</dd>
@@ -183,7 +185,7 @@ extends <a href="ArrayOfItemsSerDe.html" title="class in org.apache.datasketches
 </a>
 <h3>Method Summary</h3>
 <table class="memberSummary">
-<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
+<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t6" class="tableTab"><span><a href="javascript:show(32);">Deprecated Methods</a></span><span class="t [...]
 <tr>
 <th class="colFirst" scope="col">Modifier and Type</th>
 <th class="colSecond" scope="col">Method</th>
@@ -194,18 +196,71 @@ extends <a href="ArrayOfItemsSerDe.html" title="class in org.apache.datasketches
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#deserializeFromMemory(org.apache.datasketches.memory.Memory,int)">deserializeFromMemory</a></span>&#8203;(org.apache.datasketches.memory.Memory&nbsp;mem,
                      int&nbsp;numItems)</code></th>
 <td class="colLast">
-<div class="block">Deserialize an array of items from a given Memory object.</div>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
 </td>
 </tr>
 <tr id="i1" class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>[]</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#deserializeFromMemory(org.apache.datasketches.memory.Memory,long,int)">deserializeFromMemory</a></span>&#8203;(org.apache.datasketches.memory.Memory&nbsp;mem,
+                     long&nbsp;offsetBytes,
+                     int&nbsp;numItems)</code></th>
+<td class="colLast">
+<div class="block">Deserialize a contiguous sequence of serialized items from a given Memory.</div>
+</td>
+</tr>
+<tr id="i2" class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang" class="externalLink">Class</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&gt;</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getClassOfT()">getClassOfT</a></span>()</code></th>
+<td class="colLast">
+<div class="block">Returns the concrete class of type T</div>
+</td>
+</tr>
+<tr id="i3" class="rowColor">
+<td class="colFirst"><code>byte[]</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#serializeToByteArray(java.lang.String)">serializeToByteArray</a></span>&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;item)</code></th>
+<td class="colLast">
+<div class="block">Serialize a single unserialized item to a byte array.</div>
+</td>
+</tr>
+<tr id="i4" class="altColor">
 <td class="colFirst"><code>byte[]</code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#serializeToByteArray(java.lang.String%5B%5D)">serializeToByteArray</a></span>&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>[]&nbsp;items)</code></th>
 <td class="colLast">
-<div class="block">Serialize an array of items to byte array.</div>
+<div class="block">Serialize an array of unserialized items to a byte array of contiguous serialized items.</div>
+</td>
+</tr>
+<tr id="i5" class="rowColor">
+<td class="colFirst"><code>int</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#sizeOf(java.lang.String)">sizeOf</a></span>&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;item)</code></th>
+<td class="colLast">
+<div class="block">Returns the serialized size in bytes of a single unserialized item.</div>
+</td>
+</tr>
+<tr id="i6" class="altColor">
+<td class="colFirst"><code>int</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#sizeOf(org.apache.datasketches.memory.Memory,long,int)">sizeOf</a></span>&#8203;(org.apache.datasketches.memory.Memory&nbsp;mem,
+      long&nbsp;offsetBytes,
+      int&nbsp;numItems)</code></th>
+<td class="colLast">
+<div class="block">Returns the serialized size in bytes of the number of contiguous serialized items in Memory.</div>
+</td>
+</tr>
+<tr id="i7" class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a></code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#toString(java.lang.String)">toString</a></span>&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;item)</code></th>
+<td class="colLast">
+<div class="block">Returns a human readable string of an item.</div>
 </td>
 </tr>
 </table>
 <ul class="blockList">
+<li class="blockList"><a id="methods.inherited.from.class.org.apache.datasketches.common.ArrayOfItemsSerDe">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;org.apache.datasketches.common.<a href="ArrayOfItemsSerDe.html" title="class in org.apache.datasketches.common">ArrayOfItemsSerDe</a></h3>
+<code><a href="ArrayOfItemsSerDe.html#sizeOf(T%5B%5D)">sizeOf</a></code></li>
+</ul>
+<ul class="blockList">
 <li class="blockList"><a id="methods.inherited.from.class.java.lang.Object">
 <!--   -->
 </a>
@@ -247,6 +302,25 @@ extends <a href="ArrayOfItemsSerDe.html" title="class in org.apache.datasketches
 <!--   -->
 </a>
 <h3>Method Detail</h3>
+<a id="serializeToByteArray(java.lang.String)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>serializeToByteArray</h4>
+<pre class="methodSignature">public&nbsp;byte[]&nbsp;serializeToByteArray&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;item)</pre>
+<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="ArrayOfItemsSerDe.html#serializeToByteArray(T)">ArrayOfItemsSerDe</a></code></span></div>
+<div class="block">Serialize a single unserialized item to a byte array.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="ArrayOfItemsSerDe.html#serializeToByteArray(T)">serializeToByteArray</a></code>&nbsp;in class&nbsp;<code><a href="ArrayOfItemsSerDe.html" title="class in org.apache.datasketches.common">ArrayOfItemsSerDe</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&gt;</code></dd>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>item</code> - the item to be serialized</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>serialized representation of the given item</dd>
+</dl>
+</li>
+</ul>
 <a id="serializeToByteArray(java.lang.String[])">
 <!--   -->
 </a>
@@ -255,38 +329,139 @@ extends <a href="ArrayOfItemsSerDe.html" title="class in org.apache.datasketches
 <h4>serializeToByteArray</h4>
 <pre class="methodSignature">public&nbsp;byte[]&nbsp;serializeToByteArray&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>[]&nbsp;items)</pre>
 <div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="ArrayOfItemsSerDe.html#serializeToByteArray(T%5B%5D)">ArrayOfItemsSerDe</a></code></span></div>
-<div class="block">Serialize an array of items to byte array.
- The size of the array doesn't need to be serialized.
- This method is called by the sketch serialization process.</div>
+<div class="block">Serialize an array of unserialized items to a byte array of contiguous serialized items.</div>
 <dl>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
 <dd><code><a href="ArrayOfItemsSerDe.html#serializeToByteArray(T%5B%5D)">serializeToByteArray</a></code>&nbsp;in class&nbsp;<code><a href="ArrayOfItemsSerDe.html" title="class in org.apache.datasketches.common">ArrayOfItemsSerDe</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&gt;</code></dd>
 <dt><span class="paramLabel">Parameters:</span></dt>
 <dd><code>items</code> - array of items to be serialized</dd>
 <dt><span class="returnLabel">Returns:</span></dt>
-<dd>serialized representation of the given array of items</dd>
+<dd>contiguous, serialized representation of the given array of unserialized items</dd>
 </dl>
 </li>
 </ul>
 <a id="deserializeFromMemory(org.apache.datasketches.memory.Memory,int)">
 <!--   -->
 </a>
-<ul class="blockListLast">
+<ul class="blockList">
 <li class="blockList">
 <h4>deserializeFromMemory</h4>
-<pre class="methodSignature">public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>[]&nbsp;deserializeFromMemory&#8203;(org.apache.datasketches.memory.Memory&nbsp;mem,
+<pre class="methodSignature"><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Deprecated.html?is-external=true" title="class or interface in java.lang" class="externalLink">@Deprecated</a>
+public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>[]&nbsp;deserializeFromMemory&#8203;(org.apache.datasketches.memory.Memory&nbsp;mem,
                                       int&nbsp;numItems)</pre>
+<div class="deprecationBlock"><span class="deprecatedLabel">Deprecated.</span></div>
 <div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="ArrayOfItemsSerDe.html#deserializeFromMemory(org.apache.datasketches.memory.Memory,int)">ArrayOfItemsSerDe</a></code></span></div>
-<div class="block">Deserialize an array of items from a given Memory object.
- This method is called by the sketch deserialization process.</div>
+<div class="block">Deserialize a contiguous sequence of serialized items from a given Memory.</div>
 <dl>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
 <dd><code><a href="ArrayOfItemsSerDe.html#deserializeFromMemory(org.apache.datasketches.memory.Memory,int)">deserializeFromMemory</a></code>&nbsp;in class&nbsp;<code><a href="ArrayOfItemsSerDe.html" title="class in org.apache.datasketches.common">ArrayOfItemsSerDe</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&gt;</code></dd>
 <dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>mem</code> - Memory containing a serialized array of items</dd>
-<dd><code>numItems</code> - number of items in the serialized array</dd>
+<dd><code>mem</code> - Memory containing a contiguous sequence of serialized items</dd>
+<dd><code>numItems</code> - number of items in the contiguous serialized sequence.</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>array of deserialized items</dd>
+</dl>
+</li>
+</ul>
+<a id="deserializeFromMemory(org.apache.datasketches.memory.Memory,long,int)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>deserializeFromMemory</h4>
+<pre class="methodSignature">public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>[]&nbsp;deserializeFromMemory&#8203;(org.apache.datasketches.memory.Memory&nbsp;mem,
+                                      long&nbsp;offsetBytes,
+                                      int&nbsp;numItems)</pre>
+<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="ArrayOfItemsSerDe.html#deserializeFromMemory(org.apache.datasketches.memory.Memory,long,int)">ArrayOfItemsSerDe</a></code></span></div>
+<div class="block">Deserialize a contiguous sequence of serialized items from a given Memory.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="ArrayOfItemsSerDe.html#deserializeFromMemory(org.apache.datasketches.memory.Memory,long,int)">deserializeFromMemory</a></code>&nbsp;in class&nbsp;<code><a href="ArrayOfItemsSerDe.html" title="class in org.apache.datasketches.common">ArrayOfItemsSerDe</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&gt;</code></dd>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>mem</code> - Memory containing a contiguous sequence of serialized items</dd>
+<dd><code>offsetBytes</code> - the starting offset in the given Memory.</dd>
+<dd><code>numItems</code> - number of items in the contiguous serialized sequence.</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>array of deserialized items</dd>
+</dl>
+</li>
+</ul>
+<a id="sizeOf(java.lang.String)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>sizeOf</h4>
+<pre class="methodSignature">public&nbsp;int&nbsp;sizeOf&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;item)</pre>
+<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="ArrayOfItemsSerDe.html#sizeOf(T)">ArrayOfItemsSerDe</a></code></span></div>
+<div class="block">Returns the serialized size in bytes of a single unserialized item.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="ArrayOfItemsSerDe.html#sizeOf(T)">sizeOf</a></code>&nbsp;in class&nbsp;<code><a href="ArrayOfItemsSerDe.html" title="class in org.apache.datasketches.common">ArrayOfItemsSerDe</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&gt;</code></dd>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>item</code> - a specific item</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the serialized size in bytes of a single unserialized item.</dd>
+</dl>
+</li>
+</ul>
+<a id="sizeOf(org.apache.datasketches.memory.Memory,long,int)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>sizeOf</h4>
+<pre class="methodSignature">public&nbsp;int&nbsp;sizeOf&#8203;(org.apache.datasketches.memory.Memory&nbsp;mem,
+                  long&nbsp;offsetBytes,
+                  int&nbsp;numItems)</pre>
+<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="ArrayOfItemsSerDe.html#sizeOf(org.apache.datasketches.memory.Memory,long,int)">ArrayOfItemsSerDe</a></code></span></div>
+<div class="block">Returns the serialized size in bytes of the number of contiguous serialized items in Memory.
+ The capacity of the given Memory can be much larger that the required size of the items.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="ArrayOfItemsSerDe.html#sizeOf(org.apache.datasketches.memory.Memory,long,int)">sizeOf</a></code>&nbsp;in class&nbsp;<code><a href="ArrayOfItemsSerDe.html" title="class in org.apache.datasketches.common">ArrayOfItemsSerDe</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&gt;</code></dd>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>mem</code> - the given Memory.</dd>
+<dd><code>offsetBytes</code> - the starting offset in the given Memory.</dd>
+<dd><code>numItems</code> - the number of serialized items contained in the Memory</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the serialized size in bytes of the given number of items.</dd>
+</dl>
+</li>
+</ul>
+<a id="toString(java.lang.String)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>toString</h4>
+<pre class="methodSignature">public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;toString&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;item)</pre>
+<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="ArrayOfItemsSerDe.html#toString(T)">ArrayOfItemsSerDe</a></code></span></div>
+<div class="block">Returns a human readable string of an item.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="ArrayOfItemsSerDe.html#toString(T)">toString</a></code>&nbsp;in class&nbsp;<code><a href="ArrayOfItemsSerDe.html" title="class in org.apache.datasketches.common">ArrayOfItemsSerDe</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&gt;</code></dd>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>item</code> - a specific item</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a human readable string of an item.</dd>
+</dl>
+</li>
+</ul>
+<a id="getClassOfT()">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>getClassOfT</h4>
+<pre class="methodSignature">public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang" class="externalLink">Class</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&gt;&nbsp;getClassOfT()</pre>
+<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="ArrayOfItemsSerDe.html#getClassOfT()">ArrayOfItemsSerDe</a></code></span></div>
+<div class="block">Returns the concrete class of type T</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="ArrayOfItemsSerDe.html#getClassOfT()">getClassOfT</a></code>&nbsp;in class&nbsp;<code><a href="ArrayOfItemsSerDe.html" title="class in org.apache.datasketches.common">ArrayOfItemsSerDe</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&gt;</code></dd>
 <dt><span class="returnLabel">Returns:</span></dt>
-<dd>deserialized array of items</dd>
+<dd>the concrete class of type T</dd>
 </dl>
 </li>
 </ul>
diff --git a/docs/master/org/apache/datasketches/common/ArrayOfUtf16StringsSerDe.html b/docs/master/org/apache/datasketches/common/ArrayOfUtf16StringsSerDe.html
index adfef1d2..479d18ec 100644
--- a/docs/master/org/apache/datasketches/common/ArrayOfUtf16StringsSerDe.html
+++ b/docs/master/org/apache/datasketches/common/ArrayOfUtf16StringsSerDe.html
@@ -27,8 +27,8 @@
     catch(err) {
     }
 //-->
-var data = {"i0":10,"i1":10};
-var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
+var data = {"i0":42,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10,"i7":10};
+var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"],32:["t6","Deprecated Methods"]};
 var altColor = "altColor";
 var rowColor = "rowColor";
 var tableTab = "tableTab";
@@ -183,7 +183,7 @@ extends <a href="ArrayOfItemsSerDe.html" title="class in org.apache.datasketches
 </a>
 <h3>Method Summary</h3>
 <table class="memberSummary">
-<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
+<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t6" class="tableTab"><span><a href="javascript:show(32);">Deprecated Methods</a></span><span class="t [...]
 <tr>
 <th class="colFirst" scope="col">Modifier and Type</th>
 <th class="colSecond" scope="col">Method</th>
@@ -194,18 +194,71 @@ extends <a href="ArrayOfItemsSerDe.html" title="class in org.apache.datasketches
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#deserializeFromMemory(org.apache.datasketches.memory.Memory,int)">deserializeFromMemory</a></span>&#8203;(org.apache.datasketches.memory.Memory&nbsp;mem,
                      int&nbsp;numItems)</code></th>
 <td class="colLast">
-<div class="block">Deserialize an array of items from a given Memory object.</div>
+<div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
 </td>
 </tr>
 <tr id="i1" class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>[]</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#deserializeFromMemory(org.apache.datasketches.memory.Memory,long,int)">deserializeFromMemory</a></span>&#8203;(org.apache.datasketches.memory.Memory&nbsp;mem,
+                     long&nbsp;offsetBytes,
+                     int&nbsp;numItems)</code></th>
+<td class="colLast">
+<div class="block">Deserialize a contiguous sequence of serialized items from a given Memory.</div>
+</td>
+</tr>
+<tr id="i2" class="altColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang" class="externalLink">Class</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&gt;</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getClassOfT()">getClassOfT</a></span>()</code></th>
+<td class="colLast">
+<div class="block">Returns the concrete class of type T</div>
+</td>
+</tr>
+<tr id="i3" class="rowColor">
+<td class="colFirst"><code>byte[]</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#serializeToByteArray(java.lang.String)">serializeToByteArray</a></span>&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;item)</code></th>
+<td class="colLast">
+<div class="block">Serialize a single unserialized item to a byte array.</div>
+</td>
+</tr>
+<tr id="i4" class="altColor">
 <td class="colFirst"><code>byte[]</code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#serializeToByteArray(java.lang.String%5B%5D)">serializeToByteArray</a></span>&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>[]&nbsp;items)</code></th>
 <td class="colLast">
-<div class="block">Serialize an array of items to byte array.</div>
+<div class="block">Serialize an array of unserialized items to a byte array of contiguous serialized items.</div>
+</td>
+</tr>
+<tr id="i5" class="rowColor">
+<td class="colFirst"><code>int</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#sizeOf(java.lang.String)">sizeOf</a></span>&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;item)</code></th>
+<td class="colLast">
+<div class="block">Returns the serialized size in bytes of a single unserialized item.</div>
+</td>
+</tr>
+<tr id="i6" class="altColor">
+<td class="colFirst"><code>int</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#sizeOf(org.apache.datasketches.memory.Memory,long,int)">sizeOf</a></span>&#8203;(org.apache.datasketches.memory.Memory&nbsp;mem,
+      long&nbsp;offsetBytes,
+      int&nbsp;numItems)</code></th>
+<td class="colLast">
+<div class="block">Returns the serialized size in bytes of the number of contiguous serialized items in Memory.</div>
+</td>
+</tr>
+<tr id="i7" class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a></code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#toString(java.lang.String)">toString</a></span>&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;item)</code></th>
+<td class="colLast">
+<div class="block">Returns a human readable string of an item.</div>
 </td>
 </tr>
 </table>
 <ul class="blockList">
+<li class="blockList"><a id="methods.inherited.from.class.org.apache.datasketches.common.ArrayOfItemsSerDe">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;org.apache.datasketches.common.<a href="ArrayOfItemsSerDe.html" title="class in org.apache.datasketches.common">ArrayOfItemsSerDe</a></h3>
+<code><a href="ArrayOfItemsSerDe.html#sizeOf(T%5B%5D)">sizeOf</a></code></li>
+</ul>
+<ul class="blockList">
 <li class="blockList"><a id="methods.inherited.from.class.java.lang.Object">
 <!--   -->
 </a>
@@ -247,6 +300,25 @@ extends <a href="ArrayOfItemsSerDe.html" title="class in org.apache.datasketches
 <!--   -->
 </a>
 <h3>Method Detail</h3>
+<a id="serializeToByteArray(java.lang.String)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>serializeToByteArray</h4>
+<pre class="methodSignature">public&nbsp;byte[]&nbsp;serializeToByteArray&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;item)</pre>
+<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="ArrayOfItemsSerDe.html#serializeToByteArray(T)">ArrayOfItemsSerDe</a></code></span></div>
+<div class="block">Serialize a single unserialized item to a byte array.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="ArrayOfItemsSerDe.html#serializeToByteArray(T)">serializeToByteArray</a></code>&nbsp;in class&nbsp;<code><a href="ArrayOfItemsSerDe.html" title="class in org.apache.datasketches.common">ArrayOfItemsSerDe</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&gt;</code></dd>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>item</code> - the item to be serialized</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>serialized representation of the given item</dd>
+</dl>
+</li>
+</ul>
 <a id="serializeToByteArray(java.lang.String[])">
 <!--   -->
 </a>
@@ -255,38 +327,139 @@ extends <a href="ArrayOfItemsSerDe.html" title="class in org.apache.datasketches
 <h4>serializeToByteArray</h4>
 <pre class="methodSignature">public&nbsp;byte[]&nbsp;serializeToByteArray&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>[]&nbsp;items)</pre>
 <div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="ArrayOfItemsSerDe.html#serializeToByteArray(T%5B%5D)">ArrayOfItemsSerDe</a></code></span></div>
-<div class="block">Serialize an array of items to byte array.
- The size of the array doesn't need to be serialized.
- This method is called by the sketch serialization process.</div>
+<div class="block">Serialize an array of unserialized items to a byte array of contiguous serialized items.</div>
 <dl>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
 <dd><code><a href="ArrayOfItemsSerDe.html#serializeToByteArray(T%5B%5D)">serializeToByteArray</a></code>&nbsp;in class&nbsp;<code><a href="ArrayOfItemsSerDe.html" title="class in org.apache.datasketches.common">ArrayOfItemsSerDe</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&gt;</code></dd>
 <dt><span class="paramLabel">Parameters:</span></dt>
 <dd><code>items</code> - array of items to be serialized</dd>
 <dt><span class="returnLabel">Returns:</span></dt>
-<dd>serialized representation of the given array of items</dd>
+<dd>contiguous, serialized representation of the given array of unserialized items</dd>
 </dl>
 </li>
 </ul>
 <a id="deserializeFromMemory(org.apache.datasketches.memory.Memory,int)">
 <!--   -->
 </a>
-<ul class="blockListLast">
+<ul class="blockList">
 <li class="blockList">
 <h4>deserializeFromMemory</h4>
-<pre class="methodSignature">public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>[]&nbsp;deserializeFromMemory&#8203;(org.apache.datasketches.memory.Memory&nbsp;mem,
+<pre class="methodSignature"><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Deprecated.html?is-external=true" title="class or interface in java.lang" class="externalLink">@Deprecated</a>
+public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>[]&nbsp;deserializeFromMemory&#8203;(org.apache.datasketches.memory.Memory&nbsp;mem,
                                       int&nbsp;numItems)</pre>
+<div class="deprecationBlock"><span class="deprecatedLabel">Deprecated.</span></div>
 <div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="ArrayOfItemsSerDe.html#deserializeFromMemory(org.apache.datasketches.memory.Memory,int)">ArrayOfItemsSerDe</a></code></span></div>
-<div class="block">Deserialize an array of items from a given Memory object.
- This method is called by the sketch deserialization process.</div>
+<div class="block">Deserialize a contiguous sequence of serialized items from a given Memory.</div>
 <dl>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
 <dd><code><a href="ArrayOfItemsSerDe.html#deserializeFromMemory(org.apache.datasketches.memory.Memory,int)">deserializeFromMemory</a></code>&nbsp;in class&nbsp;<code><a href="ArrayOfItemsSerDe.html" title="class in org.apache.datasketches.common">ArrayOfItemsSerDe</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&gt;</code></dd>
 <dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>mem</code> - Memory containing a serialized array of items</dd>
-<dd><code>numItems</code> - number of items in the serialized array</dd>
+<dd><code>mem</code> - Memory containing a contiguous sequence of serialized items</dd>
+<dd><code>numItems</code> - number of items in the contiguous serialized sequence.</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>array of deserialized items</dd>
+</dl>
+</li>
+</ul>
+<a id="deserializeFromMemory(org.apache.datasketches.memory.Memory,long,int)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>deserializeFromMemory</h4>
+<pre class="methodSignature">public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>[]&nbsp;deserializeFromMemory&#8203;(org.apache.datasketches.memory.Memory&nbsp;mem,
+                                      long&nbsp;offsetBytes,
+                                      int&nbsp;numItems)</pre>
+<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="ArrayOfItemsSerDe.html#deserializeFromMemory(org.apache.datasketches.memory.Memory,long,int)">ArrayOfItemsSerDe</a></code></span></div>
+<div class="block">Deserialize a contiguous sequence of serialized items from a given Memory.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="ArrayOfItemsSerDe.html#deserializeFromMemory(org.apache.datasketches.memory.Memory,long,int)">deserializeFromMemory</a></code>&nbsp;in class&nbsp;<code><a href="ArrayOfItemsSerDe.html" title="class in org.apache.datasketches.common">ArrayOfItemsSerDe</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&gt;</code></dd>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>mem</code> - Memory containing a contiguous sequence of serialized items</dd>
+<dd><code>offsetBytes</code> - the starting offset in the given Memory.</dd>
+<dd><code>numItems</code> - number of items in the contiguous serialized sequence.</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>array of deserialized items</dd>
+</dl>
+</li>
+</ul>
+<a id="sizeOf(java.lang.String)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>sizeOf</h4>
+<pre class="methodSignature">public&nbsp;int&nbsp;sizeOf&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;item)</pre>
+<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="ArrayOfItemsSerDe.html#sizeOf(T)">ArrayOfItemsSerDe</a></code></span></div>
+<div class="block">Returns the serialized size in bytes of a single unserialized item.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="ArrayOfItemsSerDe.html#sizeOf(T)">sizeOf</a></code>&nbsp;in class&nbsp;<code><a href="ArrayOfItemsSerDe.html" title="class in org.apache.datasketches.common">ArrayOfItemsSerDe</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&gt;</code></dd>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>item</code> - a specific item</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the serialized size in bytes of a single unserialized item.</dd>
+</dl>
+</li>
+</ul>
+<a id="sizeOf(org.apache.datasketches.memory.Memory,long,int)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>sizeOf</h4>
+<pre class="methodSignature">public&nbsp;int&nbsp;sizeOf&#8203;(org.apache.datasketches.memory.Memory&nbsp;mem,
+                  long&nbsp;offsetBytes,
+                  int&nbsp;numItems)</pre>
+<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="ArrayOfItemsSerDe.html#sizeOf(org.apache.datasketches.memory.Memory,long,int)">ArrayOfItemsSerDe</a></code></span></div>
+<div class="block">Returns the serialized size in bytes of the number of contiguous serialized items in Memory.
+ The capacity of the given Memory can be much larger that the required size of the items.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="ArrayOfItemsSerDe.html#sizeOf(org.apache.datasketches.memory.Memory,long,int)">sizeOf</a></code>&nbsp;in class&nbsp;<code><a href="ArrayOfItemsSerDe.html" title="class in org.apache.datasketches.common">ArrayOfItemsSerDe</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&gt;</code></dd>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>mem</code> - the given Memory.</dd>
+<dd><code>offsetBytes</code> - the starting offset in the given Memory.</dd>
+<dd><code>numItems</code> - the number of serialized items contained in the Memory</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the serialized size in bytes of the given number of items.</dd>
+</dl>
+</li>
+</ul>
+<a id="toString(java.lang.String)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>toString</h4>
+<pre class="methodSignature">public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;toString&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;item)</pre>
+<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="ArrayOfItemsSerDe.html#toString(T)">ArrayOfItemsSerDe</a></code></span></div>
+<div class="block">Returns a human readable string of an item.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="ArrayOfItemsSerDe.html#toString(T)">toString</a></code>&nbsp;in class&nbsp;<code><a href="ArrayOfItemsSerDe.html" title="class in org.apache.datasketches.common">ArrayOfItemsSerDe</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&gt;</code></dd>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>item</code> - a specific item</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>a human readable string of an item.</dd>
+</dl>
+</li>
+</ul>
+<a id="getClassOfT()">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>getClassOfT</h4>
+<pre class="methodSignature">public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang" class="externalLink">Class</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&gt;&nbsp;getClassOfT()</pre>
+<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="ArrayOfItemsSerDe.html#getClassOfT()">ArrayOfItemsSerDe</a></code></span></div>
+<div class="block">Returns the concrete class of type T</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="ArrayOfItemsSerDe.html#getClassOfT()">getClassOfT</a></code>&nbsp;in class&nbsp;<code><a href="ArrayOfItemsSerDe.html" title="class in org.apache.datasketches.common">ArrayOfItemsSerDe</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&gt;</code></dd>
 <dt><span class="returnLabel">Returns:</span></dt>
-<dd>deserialized array of items</dd>
+<dd>the concrete class of type T</dd>
 </dl>
 </li>
 </ul>
diff --git a/docs/master/org/apache/datasketches/common/ByteArrayUtil.html b/docs/master/org/apache/datasketches/common/ByteArrayUtil.html
index 728fd53d..959be2e8 100644
--- a/docs/master/org/apache/datasketches/common/ByteArrayUtil.html
+++ b/docs/master/org/apache/datasketches/common/ByteArrayUtil.html
@@ -27,7 +27,7 @@
     catch(err) {
     }
 //-->
-var data = {"i0":9,"i1":9,"i2":9,"i3":9,"i4":9,"i5":9,"i6":9,"i7":9,"i8":9,"i9":9,"i10":9,"i11":9,"i12":9,"i13":9,"i14":9,"i15":9,"i16":9,"i17":9,"i18":9,"i19":9};
+var data = {"i0":9,"i1":9,"i2":9,"i3":9,"i4":9,"i5":9,"i6":9,"i7":9,"i8":9,"i9":9,"i10":9,"i11":9,"i12":9,"i13":9,"i14":9,"i15":9,"i16":9,"i17":9,"i18":9,"i19":9,"i20":9};
 var tabs = {65535:["t0","All Methods"],1:["t1","Static Methods"],8:["t4","Concrete Methods"]};
 var altColor = "altColor";
 var rowColor = "rowColor";
@@ -181,6 +181,17 @@ extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html
 <th class="colLast" scope="col">Description</th>
 </tr>
 <tr id="i0" class="altColor">
+<td class="colFirst"><code>static void</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#copyBytes(byte%5B%5D,int,byte%5B%5D,int,int)">copyBytes</a></span>&#8203;(byte[]&nbsp;source,
+         int&nbsp;srcStart,
+         byte[]&nbsp;target,
+         int&nbsp;tgtStart,
+         int&nbsp;numBytes)</code></th>
+<td class="colLast">
+<div class="block">Copies bytes from source to target with offsets on both the source and target.</div>
+</td>
+</tr>
+<tr id="i1" class="rowColor">
 <td class="colFirst"><code>static double</code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getDoubleBE(byte%5B%5D,int)">getDoubleBE</a></span>&#8203;(byte[]&nbsp;array,
            int&nbsp;offset)</code></th>
@@ -189,7 +200,7 @@ extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html
  in big endian order.</div>
 </td>
 </tr>
-<tr id="i1" class="rowColor">
+<tr id="i2" class="altColor">
 <td class="colFirst"><code>static double</code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getDoubleLE(byte%5B%5D,int)">getDoubleLE</a></span>&#8203;(byte[]&nbsp;array,
            int&nbsp;offset)</code></th>
@@ -198,7 +209,7 @@ extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html
  in little endian order.</div>
 </td>
 </tr>
-<tr id="i2" class="altColor">
+<tr id="i3" class="rowColor">
 <td class="colFirst"><code>static float</code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getFloatBE(byte%5B%5D,int)">getFloatBE</a></span>&#8203;(byte[]&nbsp;array,
           int&nbsp;offset)</code></th>
@@ -207,7 +218,7 @@ extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html
  in big endian order.</div>
 </td>
 </tr>
-<tr id="i3" class="rowColor">
+<tr id="i4" class="altColor">
 <td class="colFirst"><code>static float</code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getFloatLE(byte%5B%5D,int)">getFloatLE</a></span>&#8203;(byte[]&nbsp;array,
           int&nbsp;offset)</code></th>
@@ -216,7 +227,7 @@ extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html
  in little endian order.</div>
 </td>
 </tr>
-<tr id="i4" class="altColor">
+<tr id="i5" class="rowColor">
 <td class="colFirst"><code>static int</code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getIntBE(byte%5B%5D,int)">getIntBE</a></span>&#8203;(byte[]&nbsp;array,
         int&nbsp;offset)</code></th>
@@ -225,7 +236,7 @@ extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html
  in big endian order.</div>
 </td>
 </tr>
-<tr id="i5" class="rowColor">
+<tr id="i6" class="altColor">
 <td class="colFirst"><code>static int</code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getIntLE(byte%5B%5D,int)">getIntLE</a></span>&#8203;(byte[]&nbsp;array,
         int&nbsp;offset)</code></th>
@@ -234,7 +245,7 @@ extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html
  in little endian order.</div>
 </td>
 </tr>
-<tr id="i6" class="altColor">
+<tr id="i7" class="rowColor">
 <td class="colFirst"><code>static long</code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getLongBE(byte%5B%5D,int)">getLongBE</a></span>&#8203;(byte[]&nbsp;array,
          int&nbsp;offset)</code></th>
@@ -243,7 +254,7 @@ extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html
  in big endian order.</div>
 </td>
 </tr>
-<tr id="i7" class="rowColor">
+<tr id="i8" class="altColor">
 <td class="colFirst"><code>static long</code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getLongLE(byte%5B%5D,int)">getLongLE</a></span>&#8203;(byte[]&nbsp;array,
          int&nbsp;offset)</code></th>
@@ -252,7 +263,7 @@ extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html
  in little endian order.</div>
 </td>
 </tr>
-<tr id="i8" class="altColor">
+<tr id="i9" class="rowColor">
 <td class="colFirst"><code>static short</code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getShortBE(byte%5B%5D,int)">getShortBE</a></span>&#8203;(byte[]&nbsp;array,
           int&nbsp;offset)</code></th>
@@ -261,7 +272,7 @@ extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html
  in big endian order.</div>
 </td>
 </tr>
-<tr id="i9" class="rowColor">
+<tr id="i10" class="altColor">
 <td class="colFirst"><code>static short</code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getShortLE(byte%5B%5D,int)">getShortLE</a></span>&#8203;(byte[]&nbsp;array,
           int&nbsp;offset)</code></th>
@@ -270,7 +281,7 @@ extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html
  in little endian order.</div>
 </td>
 </tr>
-<tr id="i10" class="altColor">
+<tr id="i11" class="rowColor">
 <td class="colFirst"><code>static void</code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#putDoubleBE(byte%5B%5D,int,double)">putDoubleBE</a></span>&#8203;(byte[]&nbsp;array,
            int&nbsp;offset,
@@ -280,7 +291,7 @@ extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html
  in big endian order.</div>
 </td>
 </tr>
-<tr id="i11" class="rowColor">
+<tr id="i12" class="altColor">
 <td class="colFirst"><code>static void</code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#putDoubleLE(byte%5B%5D,int,double)">putDoubleLE</a></span>&#8203;(byte[]&nbsp;array,
            int&nbsp;offset,
@@ -290,7 +301,7 @@ extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html
  in little endian order.</div>
 </td>
 </tr>
-<tr id="i12" class="altColor">
+<tr id="i13" class="rowColor">
 <td class="colFirst"><code>static void</code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#putFloatBE(byte%5B%5D,int,float)">putFloatBE</a></span>&#8203;(byte[]&nbsp;array,
           int&nbsp;offset,
@@ -300,7 +311,7 @@ extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html
  in big endian order.</div>
 </td>
 </tr>
-<tr id="i13" class="rowColor">
+<tr id="i14" class="altColor">
 <td class="colFirst"><code>static void</code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#putFloatLE(byte%5B%5D,int,float)">putFloatLE</a></span>&#8203;(byte[]&nbsp;array,
           int&nbsp;offset,
@@ -310,7 +321,7 @@ extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html
  in little endian order.</div>
 </td>
 </tr>
-<tr id="i14" class="altColor">
+<tr id="i15" class="rowColor">
 <td class="colFirst"><code>static void</code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#putIntBE(byte%5B%5D,int,int)">putIntBE</a></span>&#8203;(byte[]&nbsp;array,
         int&nbsp;offset,
@@ -320,7 +331,7 @@ extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html
  in big endian order.</div>
 </td>
 </tr>
-<tr id="i15" class="rowColor">
+<tr id="i16" class="altColor">
 <td class="colFirst"><code>static void</code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#putIntLE(byte%5B%5D,int,int)">putIntLE</a></span>&#8203;(byte[]&nbsp;array,
         int&nbsp;offset,
@@ -330,7 +341,7 @@ extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html
  in little endian order.</div>
 </td>
 </tr>
-<tr id="i16" class="altColor">
+<tr id="i17" class="rowColor">
 <td class="colFirst"><code>static void</code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#putLongBE(byte%5B%5D,int,long)">putLongBE</a></span>&#8203;(byte[]&nbsp;array,
          int&nbsp;offset,
@@ -340,7 +351,7 @@ extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html
  in big endian order.</div>
 </td>
 </tr>
-<tr id="i17" class="rowColor">
+<tr id="i18" class="altColor">
 <td class="colFirst"><code>static void</code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#putLongLE(byte%5B%5D,int,long)">putLongLE</a></span>&#8203;(byte[]&nbsp;array,
          int&nbsp;offset,
@@ -350,7 +361,7 @@ extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html
  in little endian order.</div>
 </td>
 </tr>
-<tr id="i18" class="altColor">
+<tr id="i19" class="rowColor">
 <td class="colFirst"><code>static void</code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#putShortBE(byte%5B%5D,int,short)">putShortBE</a></span>&#8203;(byte[]&nbsp;array,
           int&nbsp;offset,
@@ -360,7 +371,7 @@ extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html
  in big endian order.</div>
 </td>
 </tr>
-<tr id="i19" class="rowColor">
+<tr id="i20" class="altColor">
 <td class="colFirst"><code>static void</code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#putShortLE(byte%5B%5D,int,short)">putShortLE</a></span>&#8203;(byte[]&nbsp;array,
           int&nbsp;offset,
@@ -413,6 +424,28 @@ extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html
 <!--   -->
 </a>
 <h3>Method Detail</h3>
+<a id="copyBytes(byte[],int,byte[],int,int)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>copyBytes</h4>
+<pre class="methodSignature">public static&nbsp;void&nbsp;copyBytes&#8203;(byte[]&nbsp;source,
+                             int&nbsp;srcStart,
+                             byte[]&nbsp;target,
+                             int&nbsp;tgtStart,
+                             int&nbsp;numBytes)</pre>
+<div class="block">Copies bytes from source to target with offsets on both the source and target.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>source</code> - the given source</dd>
+<dd><code>srcStart</code> - the source starting index</dd>
+<dd><code>target</code> - the give target</dd>
+<dd><code>tgtStart</code> - the target starting index</dd>
+<dd><code>numBytes</code> - the number of bytes to be transferred.</dd>
+</dl>
+</li>
+</ul>
 <a id="getShortLE(byte[],int)">
 <!--   -->
 </a>
diff --git a/docs/master/org/apache/datasketches/common/Util.html b/docs/master/org/apache/datasketches/common/Util.html
index 90db7d38..a3887010 100644
--- a/docs/master/org/apache/datasketches/common/Util.html
+++ b/docs/master/org/apache/datasketches/common/Util.html
@@ -27,7 +27,7 @@
     catch(err) {
     }
 //-->
-var data = {"i0":9,"i1":9,"i2":9,"i3":9,"i4":9,"i5":9,"i6":9,"i7":9,"i8":9,"i9":9,"i10":9,"i11":9,"i12":9,"i13":9,"i14":9,"i15":9,"i16":9,"i17":9,"i18":9,"i19":9,"i20":9,"i21":9,"i22":9,"i23":9,"i24":9,"i25":9,"i26":9,"i27":9,"i28":9,"i29":9,"i30":9,"i31":9,"i32":9,"i33":9,"i34":9,"i35":9,"i36":9,"i37":9,"i38":9,"i39":9,"i40":9,"i41":9};
+var data = {"i0":9,"i1":9,"i2":9,"i3":9,"i4":9,"i5":9,"i6":9,"i7":9,"i8":9,"i9":9,"i10":9,"i11":9,"i12":9,"i13":9,"i14":9,"i15":9,"i16":9,"i17":9,"i18":9,"i19":9,"i20":9,"i21":9,"i22":9,"i23":9,"i24":9,"i25":9,"i26":9,"i27":9,"i28":9,"i29":9,"i30":9,"i31":9,"i32":9,"i33":9,"i34":9,"i35":9,"i36":9,"i37":9,"i38":9,"i39":9,"i40":9,"i41":9,"i42":9,"i43":9,"i44":9,"i45":9,"i46":9,"i47":9};
 var tabs = {65535:["t0","All Methods"],1:["t1","Static Methods"],8:["t4","Concrete Methods"]};
 var altColor = "altColor";
 var rowColor = "rowColor";
@@ -400,27 +400,36 @@ extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html
 </td>
 </tr>
 <tr id="i23" class="rowColor">
+<td class="colFirst"><code>static <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a></code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#intToFixedLengthString(int,int)">intToFixedLengthString</a></span>&#8203;(int&nbsp;number,
+                      int&nbsp;length)</code></th>
+<td class="colLast">
+<div class="block">Converts the given number to a string prepended with spaces, if necessary, to
+ match the given length.</div>
+</td>
+</tr>
+<tr id="i24" class="altColor">
 <td class="colFirst"><code>static double</code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#invPow2(int)">invPow2</a></span>&#8203;(int&nbsp;e)</code></th>
 <td class="colLast">
 <div class="block">Computes the inverse integer power of 2: 1/(2^e) = 2^(-e).</div>
 </td>
 </tr>
-<tr id="i24" class="altColor">
+<tr id="i25" class="rowColor">
 <td class="colFirst"><code>static boolean</code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#isEven(long)">isEven</a></span>&#8203;(long&nbsp;n)</code></th>
 <td class="colLast">
 <div class="block">Returns true if given n is even.</div>
 </td>
 </tr>
-<tr id="i25" class="rowColor">
+<tr id="i26" class="altColor">
 <td class="colFirst"><code>static boolean</code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#isIntPowerOf2(int)">isIntPowerOf2</a></span>&#8203;(int&nbsp;powerOf2)</code></th>
 <td class="colLast">
 <div class="block">Returns true if given int argument is exactly a positive power of 2 and greater than zero.</div>
 </td>
 </tr>
-<tr id="i26" class="altColor">
+<tr id="i27" class="rowColor">
 <td class="colFirst"><code>static boolean</code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#isLessThanUnsigned(long,long)">isLessThanUnsigned</a></span>&#8203;(long&nbsp;n1,
                   long&nbsp;n2)</code></th>
@@ -428,35 +437,44 @@ extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html
 <div class="block">Unsigned compare with longs.</div>
 </td>
 </tr>
-<tr id="i27" class="rowColor">
+<tr id="i28" class="altColor">
 <td class="colFirst"><code>static boolean</code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#isLongPowerOf2(long)">isLongPowerOf2</a></span>&#8203;(long&nbsp;powerOf2)</code></th>
 <td class="colLast">
 <div class="block">Returns true if given long argument is exactly a positive power of 2 and greater than zero.</div>
 </td>
 </tr>
-<tr id="i28" class="altColor">
+<tr id="i29" class="rowColor">
 <td class="colFirst"><code>static boolean</code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#isMultipleOf8AndGT0(long)">isMultipleOf8AndGT0</a></span>&#8203;(long&nbsp;v)</code></th>
 <td class="colLast">
 <div class="block">Returns true if v is a multiple of 8 and greater than zero</div>
 </td>
 </tr>
-<tr id="i29" class="rowColor">
+<tr id="i30" class="altColor">
 <td class="colFirst"><code>static boolean</code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#isOdd(long)">isOdd</a></span>&#8203;(long&nbsp;n)</code></th>
 <td class="colLast">
 <div class="block">Returns true if given n is odd.</div>
 </td>
 </tr>
-<tr id="i30" class="altColor">
+<tr id="i31" class="rowColor">
+<td class="colFirst"><code>static &lt;T&gt;&nbsp;boolean</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#le(java.lang.Object,java.lang.Object,java.util.Comparator)">le</a></span>&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a>&nbsp;item1,
+  <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a>&nbsp;item2,
+  <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Comparator.html?is-external=true" title="class or interface in java.util" class="externalLink">Comparator</a>&lt;? super T&gt;&nbsp;c)</code></th>
+<td class="colLast">
+<div class="block">Is item1 Less-Than-Or-Equal-To item2</div>
+</td>
+</tr>
+<tr id="i32" class="altColor">
 <td class="colFirst"><code>static double</code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#log2(double)">log2</a></span>&#8203;(double&nbsp;value)</code></th>
 <td class="colLast">
 <div class="block">The log base 2 of the value</div>
 </td>
 </tr>
-<tr id="i31" class="rowColor">
+<tr id="i33" class="rowColor">
 <td class="colFirst"><code>static double</code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#logBaseOfX(double,double)">logBaseOfX</a></span>&#8203;(double&nbsp;logBase,
           double&nbsp;x)</code></th>
@@ -464,7 +482,7 @@ extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html
 <div class="block">Returns the logarithm_logBase of x.</div>
 </td>
 </tr>
-<tr id="i32" class="altColor">
+<tr id="i34" class="altColor">
 <td class="colFirst"><code>static byte[]</code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#longToBytes(long,byte%5B%5D)">longToBytes</a></span>&#8203;(long&nbsp;v,
            byte[]&nbsp;arr)</code></th>
@@ -472,28 +490,55 @@ extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html
 <div class="block">Returns a Little-Endian byte array extracted from the given long.</div>
 </td>
 </tr>
-<tr id="i33" class="rowColor">
+<tr id="i35" class="rowColor">
 <td class="colFirst"><code>static <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a></code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#longToHexBytes(long)">longToHexBytes</a></span>&#8203;(long&nbsp;v)</code></th>
 <td class="colLast">
 <div class="block">Returns a string of spaced hex bytes in Big-Endian order.</div>
 </td>
 </tr>
-<tr id="i34" class="altColor">
+<tr id="i36" class="altColor">
+<td class="colFirst"><code>static &lt;T&gt;&nbsp;boolean</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#lt(java.lang.Object,java.lang.Object,java.util.Comparator)">lt</a></span>&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a>&nbsp;item1,
+  <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a>&nbsp;item2,
+  <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Comparator.html?is-external=true" title="class or interface in java.util" class="externalLink">Comparator</a>&lt;? super T&gt;&nbsp;c)</code></th>
+<td class="colLast">
+<div class="block">Is item1 Less-Than item2</div>
+</td>
+</tr>
+<tr id="i37" class="rowColor">
+<td class="colFirst"><code>static &lt;T&gt;&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a></code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#maxT(java.lang.Object,java.lang.Object,java.util.Comparator)">maxT</a></span>&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a>&nbsp;item1,
+    <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a>&nbsp;item2,
+    <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Comparator.html?is-external=true" title="class or interface in java.util" class="externalLink">Comparator</a>&lt;? super T&gt;&nbsp;c)</code></th>
+<td class="colLast">
+<div class="block">Finds the maximum of two generic items</div>
+</td>
+</tr>
+<tr id="i38" class="altColor">
 <td class="colFirst"><code>static <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a></code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#milliSecToString(long)">milliSecToString</a></span>&#8203;(long&nbsp;mS)</code></th>
 <td class="colLast">
 <div class="block">Returns the given time in milliseconds formatted as Hours:Min:Sec.mSec</div>
 </td>
 </tr>
-<tr id="i35" class="rowColor">
+<tr id="i39" class="rowColor">
+<td class="colFirst"><code>static &lt;T&gt;&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a></code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#minT(java.lang.Object,java.lang.Object,java.util.Comparator)">minT</a></span>&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a>&nbsp;item1,
+    <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a>&nbsp;item2,
+    <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Comparator.html?is-external=true" title="class or interface in java.util" class="externalLink">Comparator</a>&lt;? super T&gt;&nbsp;c)</code></th>
+<td class="colLast">
+<div class="block">Finds the minimum of two generic items</div>
+</td>
+</tr>
+<tr id="i40" class="altColor">
 <td class="colFirst"><code>static <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a></code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#nanoSecToString(long)">nanoSecToString</a></span>&#8203;(long&nbsp;nS)</code></th>
 <td class="colLast">
 <div class="block">Returns the given time in nanoseconds formatted as Sec.mSec_uSec_nSec</div>
 </td>
 </tr>
-<tr id="i36" class="altColor">
+<tr id="i41" class="rowColor">
 <td class="colFirst"><code>static int</code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#numberOfLeadingOnes(long)">numberOfLeadingOnes</a></span>&#8203;(long&nbsp;v)</code></th>
 <td class="colLast">
@@ -502,7 +547,7 @@ extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html
  to minus one.</div>
 </td>
 </tr>
-<tr id="i37" class="rowColor">
+<tr id="i42" class="altColor">
 <td class="colFirst"><code>static int</code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#numberOfTrailingOnes(long)">numberOfTrailingOnes</a></span>&#8203;(long&nbsp;v)</code></th>
 <td class="colLast">
@@ -511,7 +556,14 @@ extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html
  to minus one.</div>
 </td>
 </tr>
-<tr id="i38" class="altColor">
+<tr id="i43" class="rowColor">
+<td class="colFirst"><code>static int</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#numDigits(int)">numDigits</a></span>&#8203;(int&nbsp;n)</code></th>
+<td class="colLast">
+<div class="block">Computes the number of decimal digits of the number n</div>
+</td>
+</tr>
+<tr id="i44" class="altColor">
 <td class="colFirst"><code>static double</code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#powerSeriesNextDouble(int,double,boolean,double)">powerSeriesNextDouble</a></span>&#8203;(int&nbsp;ppb,
                      double&nbsp;curPoint,
@@ -522,7 +574,7 @@ extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html
  <i>point = logBase<sup>( i / ppb )</sup></i> given the current point in the series.</div>
 </td>
 </tr>
-<tr id="i39" class="rowColor">
+<tr id="i45" class="rowColor">
 <td class="colFirst"><code>static long</code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#pwr2SeriesNext(int,long)">pwr2SeriesNext</a></span>&#8203;(int&nbsp;ppo,
               long&nbsp;curPoint)</code></th>
@@ -531,7 +583,7 @@ extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html
  <i>point = 2<sup>( i / ppo )</sup></i> given the current point in the series.</div>
 </td>
 </tr>
-<tr id="i40" class="altColor">
+<tr id="i46" class="altColor">
 <td class="colFirst"><code>static int</code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#pwr2SeriesPrev(int,int)">pwr2SeriesPrev</a></span>&#8203;(int&nbsp;ppo,
               int&nbsp;curPoint)</code></th>
@@ -540,7 +592,7 @@ extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html
  <i>point = 2<sup>( i / ppo )</sup></i> given the current point in the series.</div>
 </td>
 </tr>
-<tr id="i41" class="rowColor">
+<tr id="i47" class="rowColor">
 <td class="colFirst"><code>static <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a></code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#zeroPad(java.lang.String,int)">zeroPad</a></span>&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;s,
        int&nbsp;fieldLength)</code></th>
@@ -1487,7 +1539,7 @@ extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html
 <a id="getResourceBytes(java.lang.String)">
 <!--   -->
 </a>
-<ul class="blockListLast">
+<ul class="blockList">
 <li class="blockList">
 <h4>getResourceBytes</h4>
 <pre class="methodSignature">public static&nbsp;byte[]&nbsp;getResourceBytes&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;shortFileName)</pre>
@@ -1502,6 +1554,133 @@ extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html
 </dl>
 </li>
 </ul>
+<a id="numDigits(int)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>numDigits</h4>
+<pre class="methodSignature">public static&nbsp;int&nbsp;numDigits&#8203;(int&nbsp;n)</pre>
+<div class="block">Computes the number of decimal digits of the number n</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>n</code> - the given number</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the number of decimal digits of the number n</dd>
+</dl>
+</li>
+</ul>
+<a id="intToFixedLengthString(int,int)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>intToFixedLengthString</h4>
+<pre class="methodSignature">public static&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;intToFixedLengthString&#8203;(int&nbsp;number,
+                                            int&nbsp;length)</pre>
+<div class="block">Converts the given number to a string prepended with spaces, if necessary, to
+ match the given length.
+
+ <p>For example, assume a sequence of integers from 1 to 1000. The largest value has
+ four decimal digits. Convert the entire sequence of strings to the form "   1" to "1000".
+ When these strings are sorted they will be in numerical sequence: "   1", "   2", ... "1000".</p></div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>number</code> - the given number</dd>
+<dd><code>length</code> - the desired string length.</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the given number to a string prepended with spaces</dd>
+</dl>
+</li>
+</ul>
+<a id="minT(java.lang.Object,java.lang.Object,java.util.Comparator)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>minT</h4>
+<pre class="methodSignature">public static&nbsp;&lt;T&gt;&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a>&nbsp;minT&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a>&nbsp;item1,
+                              <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a>&nbsp;item2,
+                              <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Comparator.html?is-external=true" title="class or interface in java.util" class="externalLink">Comparator</a>&lt;? super T&gt;&nbsp;c)</pre>
+<div class="block">Finds the minimum of two generic items</div>
+<dl>
+<dt><span class="paramLabel">Type Parameters:</span></dt>
+<dd><code>T</code> - the type</dd>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>item1</code> - item one</dd>
+<dd><code>item2</code> - item two</dd>
+<dd><code>c</code> - the given comparator</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the minimum value</dd>
+</dl>
+</li>
+</ul>
+<a id="maxT(java.lang.Object,java.lang.Object,java.util.Comparator)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>maxT</h4>
+<pre class="methodSignature">public static&nbsp;&lt;T&gt;&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a>&nbsp;maxT&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a>&nbsp;item1,
+                              <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a>&nbsp;item2,
+                              <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Comparator.html?is-external=true" title="class or interface in java.util" class="externalLink">Comparator</a>&lt;? super T&gt;&nbsp;c)</pre>
+<div class="block">Finds the maximum of two generic items</div>
+<dl>
+<dt><span class="paramLabel">Type Parameters:</span></dt>
+<dd><code>T</code> - the type</dd>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>item1</code> - item one</dd>
+<dd><code>item2</code> - item two</dd>
+<dd><code>c</code> - the given comparator</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the maximum value</dd>
+</dl>
+</li>
+</ul>
+<a id="lt(java.lang.Object,java.lang.Object,java.util.Comparator)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>lt</h4>
+<pre class="methodSignature">public static&nbsp;&lt;T&gt;&nbsp;boolean&nbsp;lt&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a>&nbsp;item1,
+                             <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a>&nbsp;item2,
+                             <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Comparator.html?is-external=true" title="class or interface in java.util" class="externalLink">Comparator</a>&lt;? super T&gt;&nbsp;c)</pre>
+<div class="block">Is item1 Less-Than item2</div>
+<dl>
+<dt><span class="paramLabel">Type Parameters:</span></dt>
+<dd><code>T</code> - the type</dd>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>item1</code> - item one</dd>
+<dd><code>item2</code> - item two</dd>
+<dd><code>c</code> - the given comparator</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>true if item1 Less-Than item2</dd>
+</dl>
+</li>
+</ul>
+<a id="le(java.lang.Object,java.lang.Object,java.util.Comparator)">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>le</h4>
+<pre class="methodSignature">public static&nbsp;&lt;T&gt;&nbsp;boolean&nbsp;le&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a>&nbsp;item1,
+                             <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a>&nbsp;item2,
+                             <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Comparator.html?is-external=true" title="class or interface in java.util" class="externalLink">Comparator</a>&lt;? super T&gt;&nbsp;c)</pre>
+<div class="block">Is item1 Less-Than-Or-Equal-To item2</div>
+<dl>
+<dt><span class="paramLabel">Type Parameters:</span></dt>
+<dd><code>T</code> - the type</dd>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>item1</code> - item one</dd>
+<dd><code>item2</code> - item two</dd>
+<dd><code>c</code> - the given comparator</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>true if item1 Less-Than-Or-Equal-To item2</dd>
+</dl>
+</li>
+</ul>
 </li>
 </ul>
 </section>
diff --git a/docs/master/org/apache/datasketches/common/class-use/ArrayOfItemsSerDe.html b/docs/master/org/apache/datasketches/common/class-use/ArrayOfItemsSerDe.html
index ee64bc70..b94dc980 100644
--- a/docs/master/org/apache/datasketches/common/class-use/ArrayOfItemsSerDe.html
+++ b/docs/master/org/apache/datasketches/common/class-use/ArrayOfItemsSerDe.html
@@ -120,13 +120,20 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 </td>
 </tr>
 <tr class="altColor">
+<th class="colFirst" scope="row"><a href="#org.apache.datasketches.kll">org.apache.datasketches.kll</a></th>
+<td class="colLast">
+<div class="block">This package is for the implementations of the sketch algorithm developed by Zohar Karnin, Kevin Lang,
+ and Edo Liberty that is commonly referred to as the "KLL" sketch after the authors' last names.</div>
+</td>
+</tr>
+<tr class="rowColor">
 <th class="colFirst" scope="row"><a href="#org.apache.datasketches.quantiles">org.apache.datasketches.quantiles</a></th>
 <td class="colLast">
 <div class="block">The quantiles package contains stochastic streaming algorithms that enable single-pass
  analysis of the distribution of a stream of quantiles.</div>
 </td>
 </tr>
-<tr class="rowColor">
+<tr class="altColor">
 <th class="colFirst" scope="row"><a href="#org.apache.datasketches.sampling">org.apache.datasketches.sampling</a></th>
 <td class="colLast">
 <div class="block">This package is dedicated to streaming algorithms that enable fixed size, uniform sampling of
@@ -232,6 +239,59 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 </section>
 </li>
 <li class="blockList">
+<section><a id="org.apache.datasketches.kll">
+<!--   -->
+</a>
+<h3>Uses of <a href="../ArrayOfItemsSerDe.html" title="class in org.apache.datasketches.common">ArrayOfItemsSerDe</a> in <a href="../../kll/package-summary.html">org.apache.datasketches.kll</a></h3>
+<table class="useSummary">
+<caption><span>Methods in <a href="../../kll/package-summary.html">org.apache.datasketches.kll</a> with parameters of type <a href="../ArrayOfItemsSerDe.html" title="class in org.apache.datasketches.common">ArrayOfItemsSerDe</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colSecond" scope="col">Method</th>
+<th class="colLast" scope="col">Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code>static &lt;T&gt;&nbsp;<a href="../../kll/KllItemsSketch.html" title="class in org.apache.datasketches.kll">KllItemsSketch</a>&lt;T&gt;</code></td>
+<th class="colSecond" scope="row"><span class="typeNameLabel">KllItemsSketch.</span><code><span class="memberNameLink"><a href="../../kll/KllItemsSketch.html#heapify(org.apache.datasketches.memory.Memory,java.util.Comparator,org.apache.datasketches.common.ArrayOfItemsSerDe)">heapify</a></span>&#8203;(org.apache.datasketches.memory.Memory&nbsp;srcMem,
+       <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Comparator.html?is-external=true" title="class or interface in java.util" class="externalLink">Comparator</a>&lt;? super T&gt;&nbsp;comparator,
+       <a href="../ArrayOfItemsSerDe.html" title="class in org.apache.datasketches.common">ArrayOfItemsSerDe</a>&lt;T&gt;&nbsp;serDe)</code></th>
+<td class="colLast">
+<div class="block">Factory heapify takes a compact sketch image in Memory and instantiates an on-heap sketch.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static &lt;T&gt;&nbsp;<a href="../../kll/KllItemsSketch.html" title="class in org.apache.datasketches.kll">KllItemsSketch</a>&lt;T&gt;</code></td>
+<th class="colSecond" scope="row"><span class="typeNameLabel">KllItemsSketch.</span><code><span class="memberNameLink"><a href="../../kll/KllItemsSketch.html#newHeapInstance(int,java.util.Comparator,org.apache.datasketches.common.ArrayOfItemsSerDe)">newHeapInstance</a></span>&#8203;(int&nbsp;k,
+               <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Comparator.html?is-external=true" title="class or interface in java.util" class="externalLink">Comparator</a>&lt;? super T&gt;&nbsp;comparator,
+               <a href="../ArrayOfItemsSerDe.html" title="class in org.apache.datasketches.common">ArrayOfItemsSerDe</a>&lt;T&gt;&nbsp;serDe)</code></th>
+<td class="colLast">
+<div class="block">Create a new heap instance of this sketch with a given parameter <em>k</em>.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static &lt;T&gt;&nbsp;<a href="../../kll/KllItemsSketch.html" title="class in org.apache.datasketches.kll">KllItemsSketch</a>&lt;T&gt;</code></td>
+<th class="colSecond" scope="row"><span class="typeNameLabel">KllItemsSketch.</span><code><span class="memberNameLink"><a href="../../kll/KllItemsSketch.html#newHeapInstance(java.util.Comparator,org.apache.datasketches.common.ArrayOfItemsSerDe)">newHeapInstance</a></span>&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Comparator.html?is-external=true" title="class or interface in java.util" class="externalLink">Comparator</a>&lt;? super T&gt;&nbsp;comparator,
+               <a href="../ArrayOfItemsSerDe.html" title="class in org.apache.datasketches.common">ArrayOfItemsSerDe</a>&lt;T&gt;&nbsp;serDe)</code></th>
+<td class="colLast">
+<div class="block">Create a new heap instance of this sketch with the default <em>k = 200</em>.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static &lt;T&gt;&nbsp;<a href="../../kll/KllItemsSketch.html" title="class in org.apache.datasketches.kll">KllItemsSketch</a>&lt;T&gt;</code></td>
+<th class="colSecond" scope="row"><span class="typeNameLabel">KllItemsSketch.</span><code><span class="memberNameLink"><a href="../../kll/KllItemsSketch.html#wrap(org.apache.datasketches.memory.Memory,java.util.Comparator,org.apache.datasketches.common.ArrayOfItemsSerDe)">wrap</a></span>&#8203;(org.apache.datasketches.memory.Memory&nbsp;srcMem,
+    <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Comparator.html?is-external=true" title="class or interface in java.util" class="externalLink">Comparator</a>&lt;? super T&gt;&nbsp;comparator,
+    <a href="../ArrayOfItemsSerDe.html" title="class in org.apache.datasketches.common">ArrayOfItemsSerDe</a>&lt;T&gt;&nbsp;serDe)</code></th>
+<td class="colLast">
+<div class="block">Constructs a thin wrapper on the heap around a Memory (or WritableMemory) already initialized with a
+ validated sketch image of a type T consistent with the given comparator and serDe.</div>
+</td>
+</tr>
+</tbody>
+</table>
+</section>
+</li>
+<li class="blockList">
 <section><a id="org.apache.datasketches.quantiles">
 <!--   -->
 </a>
diff --git a/docs/master/org/apache/datasketches/common/package-use.html b/docs/master/org/apache/datasketches/common/package-use.html
index 73848551..bdf4abbd 100644
--- a/docs/master/org/apache/datasketches/common/package-use.html
+++ b/docs/master/org/apache/datasketches/common/package-use.html
@@ -281,6 +281,12 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 </tr>
 <tbody>
 <tr class="altColor">
+<th class="colFirst" scope="row"><a href="class-use/ArrayOfItemsSerDe.html#org.apache.datasketches.kll">ArrayOfItemsSerDe</a></th>
+<td class="colLast">
+<div class="block">Base class for serializing and deserializing custom types.</div>
+</td>
+</tr>
+<tr class="rowColor">
 <th class="colFirst" scope="row"><a href="class-use/SuppressFBWarnings.html#org.apache.datasketches.kll">SuppressFBWarnings</a></th>
 <td class="colLast">
 <div class="block">Used to suppress SpotBug warnings.</div>
diff --git a/docs/master/org/apache/datasketches/kll/KllDoublesSketch.html b/docs/master/org/apache/datasketches/kll/KllDoublesSketch.html
index 2a5e07be..f10e9643 100644
--- a/docs/master/org/apache/datasketches/kll/KllDoublesSketch.html
+++ b/docs/master/org/apache/datasketches/kll/KllDoublesSketch.html
@@ -27,7 +27,7 @@
     catch(err) {
     }
 //-->
-var data = {"i0":10,"i1":10,"i2":9,"i3":10,"i4":10,"i5":10,"i6":10,"i7":10,"i8":10,"i9":10,"i10":10,"i11":10,"i12":10,"i13":10,"i14":10,"i15":9,"i16":10,"i17":9,"i18":9,"i19":9,"i20":9,"i21":10,"i22":10,"i23":10,"i24":9,"i25":9};
+var data = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10,"i7":10,"i8":10,"i9":10,"i10":10,"i11":10,"i12":9,"i13":10,"i14":10,"i15":9,"i16":9,"i17":9,"i18":9,"i19":10,"i20":10,"i21":10,"i22":9,"i23":9};
 var tabs = {65535:["t0","All Methods"],1:["t1","Static Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
 var altColor = "altColor";
 var rowColor = "rowColor";
@@ -167,7 +167,7 @@ implements <a href="../quantilescommon/QuantilesDoublesAPI.html" title="interfac
 <!--   -->
 </a>
 <h3>Nested classes/interfaces inherited from class&nbsp;org.apache.datasketches.kll.<a href="KllSketch.html" title="class in org.apache.datasketches.kll">KllSketch</a></h3>
-<code><a href="KllSketch.SketchType.html" title="enum in org.apache.datasketches.kll">KllSketch.SketchType</a></code></li>
+<code><a href="KllSketch.SketchStructure.html" title="enum in org.apache.datasketches.kll">KllSketch.SketchStructure</a>, <a href="KllSketch.SketchType.html" title="enum in org.apache.datasketches.kll">KllSketch.SketchType</a></code></li>
 </ul>
 <ul class="blockList">
 <li class="blockList"><a id="nested.classes.inherited.from.class.org.apache.datasketches.quantilescommon.QuantilesDoublesAPI">
@@ -193,6 +193,13 @@ implements <a href="../quantilescommon/QuantilesDoublesAPI.html" title="interfac
 <h3>Fields inherited from class&nbsp;org.apache.datasketches.kll.<a href="KllSketch.html" title="class in org.apache.datasketches.kll">KllSketch</a></h3>
 <code><a href="KllSketch.html#DEFAULT_K">DEFAULT_K</a>, <a href="KllSketch.html#MAX_K">MAX_K</a></code></li>
 </ul>
+<ul class="blockList">
+<li class="blockList"><a id="fields.inherited.from.class.org.apache.datasketches.quantilescommon.QuantilesAPI">
+<!--   -->
+</a>
+<h3>Fields inherited from interface&nbsp;org.apache.datasketches.quantilescommon.<a href="../quantilescommon/QuantilesAPI.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesAPI</a></h3>
+<code><a href="../quantilescommon/QuantilesAPI.html#EMPTY_MSG">EMPTY_MSG</a>, <a href="../quantilescommon/QuantilesAPI.html#MEM_REQ_SVR_NULL_MSG">MEM_REQ_SVR_NULL_MSG</a>, <a href="../quantilescommon/QuantilesAPI.html#NOT_SINGLE_ITEM_MSG">NOT_SINGLE_ITEM_MSG</a>, <a href="../quantilescommon/QuantilesAPI.html#TGT_IS_READ_ONLY_MSG">TGT_IS_READ_ONLY_MSG</a>, <a href="../quantilescommon/QuantilesAPI.html#UNSUPPORTED_MSG">UNSUPPORTED_MSG</a></code></li>
+</ul>
 </li>
 </ul>
 </section>
@@ -221,29 +228,6 @@ implements <a href="../quantilescommon/QuantilesDoublesAPI.html" title="interfac
 </td>
 </tr>
 <tr id="i1" class="rowColor">
-<td class="colFirst"><code>double</code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getMaxItem()">getMaxItem</a></span>()</code></th>
-<td class="colLast">
-<div class="block">Returns the maximum item of the stream.</div>
-</td>
-</tr>
-<tr id="i2" class="altColor">
-<td class="colFirst"><code>static int</code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getMaxSerializedSizeBytes(int,long,boolean)">getMaxSerializedSizeBytes</a></span>&#8203;(int&nbsp;k,
-                         long&nbsp;n,
-                         boolean&nbsp;updatableMemoryFormat)</code></th>
-<td class="colLast">
-<div class="block">Returns upper bound on the serialized size of a KllDoublesSketch given the following parameters.</div>
-</td>
-</tr>
-<tr id="i3" class="rowColor">
-<td class="colFirst"><code>double</code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getMinItem()">getMinItem</a></span>()</code></th>
-<td class="colLast">
-<div class="block">Returns the minimum item of the stream.</div>
-</td>
-</tr>
-<tr id="i4" class="altColor">
 <td class="colFirst"><code><a href="../quantilescommon/QuantilesDoublesAPI.DoublesPartitionBoundaries.html" title="class in org.apache.datasketches.quantilescommon">QuantilesDoublesAPI.DoublesPartitionBoundaries</a></code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getPartitionBoundaries(int,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">getPartitionBoundaries</a></span>&#8203;(int&nbsp;numEquallyWeighted,
                       <a href="../quantilescommon/QuantileSearchCriteria.html" title="enum in org.apache.datasketches.quantilescommon">QuantileSearchCriteria</a>&nbsp;searchCrit)</code></th>
@@ -252,7 +236,7 @@ implements <a href="../quantilescommon/QuantilesDoublesAPI.html" title="interfac
  sufficient information for the user to create the given number of equally weighted partitions.</div>
 </td>
 </tr>
-<tr id="i5" class="rowColor">
+<tr id="i2" class="altColor">
 <td class="colFirst"><code>double[]</code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getPMF(double%5B%5D,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">getPMF</a></span>&#8203;(double[]&nbsp;splitPoints,
       <a href="../quantilescommon/QuantileSearchCriteria.html" title="enum in org.apache.datasketches.quantilescommon">QuantileSearchCriteria</a>&nbsp;searchCrit)</code></th>
@@ -262,7 +246,7 @@ implements <a href="../quantilescommon/QuantilesDoublesAPI.html" title="interfac
  given a set of splitPoints.</div>
 </td>
 </tr>
-<tr id="i6" class="altColor">
+<tr id="i3" class="rowColor">
 <td class="colFirst"><code>double</code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getQuantile(double,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">getQuantile</a></span>&#8203;(double&nbsp;rank,
            <a href="../quantilescommon/QuantileSearchCriteria.html" title="enum in org.apache.datasketches.quantilescommon">QuantileSearchCriteria</a>&nbsp;searchCrit)</code></th>
@@ -270,7 +254,7 @@ implements <a href="../quantilescommon/QuantilesDoublesAPI.html" title="interfac
 <div class="block">Gets the approximate quantile of the given normalized rank and the given search criterion.</div>
 </td>
 </tr>
-<tr id="i7" class="rowColor">
+<tr id="i4" class="altColor">
 <td class="colFirst"><code>double</code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getQuantileLowerBound(double)">getQuantileLowerBound</a></span>&#8203;(double&nbsp;rank)</code></th>
 <td class="colLast">
@@ -278,7 +262,7 @@ implements <a href="../quantilescommon/QuantilesDoublesAPI.html" title="interfac
  given rank exists.</div>
 </td>
 </tr>
-<tr id="i8" class="altColor">
+<tr id="i5" class="rowColor">
 <td class="colFirst"><code>double[]</code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getQuantiles(double%5B%5D,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">getQuantiles</a></span>&#8203;(double[]&nbsp;ranks,
             <a href="../quantilescommon/QuantileSearchCriteria.html" title="enum in org.apache.datasketches.quantilescommon">QuantileSearchCriteria</a>&nbsp;searchCrit)</code></th>
@@ -286,7 +270,7 @@ implements <a href="../quantilescommon/QuantilesDoublesAPI.html" title="interfac
 <div class="block">Gets an array of quantiles from the given array of normalized ranks.</div>
 </td>
 </tr>
-<tr id="i9" class="rowColor">
+<tr id="i6" class="altColor">
 <td class="colFirst"><code>double</code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getQuantileUpperBound(double)">getQuantileUpperBound</a></span>&#8203;(double&nbsp;rank)</code></th>
 <td class="colLast">
@@ -294,7 +278,7 @@ implements <a href="../quantilescommon/QuantilesDoublesAPI.html" title="interfac
  given rank exists.</div>
 </td>
 </tr>
-<tr id="i10" class="altColor">
+<tr id="i7" class="rowColor">
 <td class="colFirst"><code>double</code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getRank(double,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">getRank</a></span>&#8203;(double&nbsp;quantile,
        <a href="../quantilescommon/QuantileSearchCriteria.html" title="enum in org.apache.datasketches.quantilescommon">QuantileSearchCriteria</a>&nbsp;searchCrit)</code></th>
@@ -302,7 +286,7 @@ implements <a href="../quantilescommon/QuantilesDoublesAPI.html" title="interfac
 <div class="block">Gets the normalized rank corresponding to the given a quantile.</div>
 </td>
 </tr>
-<tr id="i11" class="rowColor">
+<tr id="i8" class="altColor">
 <td class="colFirst"><code>double</code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getRankLowerBound(double)">getRankLowerBound</a></span>&#8203;(double&nbsp;rank)</code></th>
 <td class="colLast">
@@ -310,7 +294,7 @@ implements <a href="../quantilescommon/QuantilesDoublesAPI.html" title="interfac
  given rank exists.</div>
 </td>
 </tr>
-<tr id="i12" class="altColor">
+<tr id="i9" class="rowColor">
 <td class="colFirst"><code>double[]</code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getRanks(double%5B%5D,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">getRanks</a></span>&#8203;(double[]&nbsp;quantiles,
         <a href="../quantilescommon/QuantileSearchCriteria.html" title="enum in org.apache.datasketches.quantilescommon">QuantileSearchCriteria</a>&nbsp;searchCrit)</code></th>
@@ -319,7 +303,7 @@ implements <a href="../quantilescommon/QuantilesDoublesAPI.html" title="interfac
  search criterion.</div>
 </td>
 </tr>
-<tr id="i13" class="rowColor">
+<tr id="i10" class="altColor">
 <td class="colFirst"><code>double</code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getRankUpperBound(double)">getRankUpperBound</a></span>&#8203;(double&nbsp;rank)</code></th>
 <td class="colLast">
@@ -327,80 +311,87 @@ implements <a href="../quantilescommon/QuantilesDoublesAPI.html" title="interfac
  given rank exists.</div>
 </td>
 </tr>
-<tr id="i14" class="altColor">
+<tr id="i11" class="rowColor">
 <td class="colFirst"><code><a href="../quantilescommon/DoublesSortedView.html" title="interface in org.apache.datasketches.quantilescommon">DoublesSortedView</a></code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getSortedView()">getSortedView</a></span>()</code></th>
 <td class="colLast">
 <div class="block">Gets the sorted view of this sketch</div>
 </td>
 </tr>
-<tr id="i15" class="rowColor">
+<tr id="i12" class="altColor">
 <td class="colFirst"><code>static <a href="KllDoublesSketch.html" title="class in org.apache.datasketches.kll">KllDoublesSketch</a></code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#heapify(org.apache.datasketches.memory.Memory)">heapify</a></span>&#8203;(org.apache.datasketches.memory.Memory&nbsp;srcMem)</code></th>
 <td class="colLast">
 <div class="block">Factory heapify takes a compact sketch image in Memory and instantiates an on-heap sketch.</div>
 </td>
 </tr>
-<tr id="i16" class="altColor">
+<tr id="i13" class="rowColor">
 <td class="colFirst"><code><a href="../quantilescommon/QuantilesDoublesSketchIterator.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesDoublesSketchIterator</a></code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#iterator()">iterator</a></span>()</code></th>
 <td class="colLast">
 <div class="block">Gets the iterator for this sketch, which is not sorted.</div>
 </td>
 </tr>
-<tr id="i17" class="rowColor">
+<tr id="i14" class="altColor">
+<td class="colFirst"><code>void</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#merge(org.apache.datasketches.kll.KllSketch)">merge</a></span>&#8203;(<a href="KllSketch.html" title="class in org.apache.datasketches.kll">KllSketch</a>&nbsp;other)</code></th>
+<td class="colLast">
+<div class="block">Merges another sketch into this one.</div>
+</td>
+</tr>
+<tr id="i15" class="rowColor">
 <td class="colFirst"><code>static <a href="KllDoublesSketch.html" title="class in org.apache.datasketches.kll">KllDoublesSketch</a></code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#newDirectInstance(int,org.apache.datasketches.memory.WritableMemory,org.apache.datasketches.memory.MemoryRequestServer)">newDirectInstance</a></span>&#8203;(int&nbsp;k,
                  org.apache.datasketches.memory.WritableMemory&nbsp;dstMem,
                  org.apache.datasketches.memory.MemoryRequestServer&nbsp;memReqSvr)</code></th>
 <td class="colLast">
-<div class="block">Create a new direct instance of this sketch with a given <em>k</em>.</div>
+<div class="block">Create a new direct updatable instance of this sketch with a given <em>k</em>.</div>
 </td>
 </tr>
-<tr id="i18" class="altColor">
+<tr id="i16" class="altColor">
 <td class="colFirst"><code>static <a href="KllDoublesSketch.html" title="class in org.apache.datasketches.kll">KllDoublesSketch</a></code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#newDirectInstance(org.apache.datasketches.memory.WritableMemory,org.apache.datasketches.memory.MemoryRequestServer)">newDirectInstance</a></span>&#8203;(org.apache.datasketches.memory.WritableMemory&nbsp;dstMem,
                  org.apache.datasketches.memory.MemoryRequestServer&nbsp;memReqSvr)</code></th>
 <td class="colLast">
-<div class="block">Create a new direct instance of this sketch with the default <em>k</em>.</div>
+<div class="block">Create a new direct updatable instance of this sketch with the default <em>k</em>.</div>
 </td>
 </tr>
-<tr id="i19" class="rowColor">
+<tr id="i17" class="rowColor">
 <td class="colFirst"><code>static <a href="KllDoublesSketch.html" title="class in org.apache.datasketches.kll">KllDoublesSketch</a></code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#newHeapInstance()">newHeapInstance</a></span>()</code></th>
 <td class="colLast">
 <div class="block">Create a new heap instance of this sketch with the default <em>k = 200</em>.</div>
 </td>
 </tr>
-<tr id="i20" class="altColor">
+<tr id="i18" class="altColor">
 <td class="colFirst"><code>static <a href="KllDoublesSketch.html" title="class in org.apache.datasketches.kll">KllDoublesSketch</a></code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#newHeapInstance(int)">newHeapInstance</a></span>&#8203;(int&nbsp;k)</code></th>
 <td class="colLast">
 <div class="block">Create a new heap instance of this sketch with a given parameter <em>k</em>.</div>
 </td>
 </tr>
-<tr id="i21" class="rowColor">
+<tr id="i19" class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#reset()">reset</a></span>()</code></th>
 <td class="colLast">
 <div class="block">Resets this sketch to the empty state.</div>
 </td>
 </tr>
-<tr id="i22" class="altColor">
+<tr id="i20" class="altColor">
 <td class="colFirst"><code>byte[]</code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#toByteArray()">toByteArray</a></span>()</code></th>
 <td class="colLast">
 <div class="block">Returns a byte array representation of this sketch.</div>
 </td>
 </tr>
-<tr id="i23" class="rowColor">
+<tr id="i21" class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#update(double)">update</a></span>&#8203;(double&nbsp;item)</code></th>
 <td class="colLast">
 <div class="block">Updates this sketch with the given item.</div>
 </td>
 </tr>
-<tr id="i24" class="altColor">
+<tr id="i22" class="altColor">
 <td class="colFirst"><code>static <a href="KllDoublesSketch.html" title="class in org.apache.datasketches.kll">KllDoublesSketch</a></code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#wrap(org.apache.datasketches.memory.Memory)">wrap</a></span>&#8203;(org.apache.datasketches.memory.Memory&nbsp;srcMem)</code></th>
 <td class="colLast">
@@ -408,7 +399,7 @@ implements <a href="../quantilescommon/QuantilesDoublesAPI.html" title="interfac
  that originated from this sketch.</div>
 </td>
 </tr>
-<tr id="i25" class="rowColor">
+<tr id="i23" class="rowColor">
 <td class="colFirst"><code>static <a href="KllDoublesSketch.html" title="class in org.apache.datasketches.kll">KllDoublesSketch</a></code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#writableWrap(org.apache.datasketches.memory.WritableMemory,org.apache.datasketches.memory.MemoryRequestServer)">writableWrap</a></span>&#8203;(org.apache.datasketches.memory.WritableMemory&nbsp;srcMem,
             org.apache.datasketches.memory.MemoryRequestServer&nbsp;memReqSvr)</code></th>
@@ -423,7 +414,7 @@ implements <a href="../quantilescommon/QuantilesDoublesAPI.html" title="interfac
 <!--   -->
 </a>
 <h3>Methods inherited from class&nbsp;org.apache.datasketches.kll.<a href="KllSketch.html" title="class in org.apache.datasketches.kll">KllSketch</a></h3>
-<code><a href="KllSketch.html#getCurrentCompactSerializedSizeBytes()">getCurrentCompactSerializedSizeBytes</a>, <a href="KllSketch.html#getCurrentUpdatableSerializedSizeBytes()">getCurrentUpdatableSerializedSizeBytes</a>, <a href="KllSketch.html#getK()">getK</a>, <a href="KllSketch.html#getKFromEpsilon(double,boolean)">getKFromEpsilon</a>, <a href="KllSketch.html#getMaxSerializedSizeBytes(int,long,org.apache.datasketches.kll.KllSketch.SketchType,boolean)">getMaxSerializedSizeBytes</a>, < [...]
+<code><a href="KllSketch.html#getKFromEpsilon(double,boolean)">getKFromEpsilon</a>, <a href="KllSketch.html#getMaxSerializedSizeBytes(int,long,org.apache.datasketches.kll.KllSketch.SketchType,boolean)">getMaxSerializedSizeBytes</a>, <a href="KllSketch.html#getNormalizedRankError(boolean)">getNormalizedRankError</a>, <a href="KllSketch.html#getNormalizedRankError(int,boolean)">getNormalizedRankError</a>, <a href="KllSketch.html#getNumRetained()">getNumRetained</a>, <a href="KllSketch.html [...]
 </ul>
 <ul class="blockList">
 <li class="blockList"><a id="methods.inherited.from.class.java.lang.Object">
@@ -444,7 +435,7 @@ implements <a href="../quantilescommon/QuantilesDoublesAPI.html" title="interfac
 <!--   -->
 </a>
 <h3>Methods inherited from interface&nbsp;org.apache.datasketches.quantilescommon.<a href="../quantilescommon/QuantilesDoublesAPI.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesDoublesAPI</a></h3>
-<code><a href="../quantilescommon/QuantilesDoublesAPI.html#getCDF(double%5B%5D)">getCDF</a>, <a href="../quantilescommon/QuantilesDoublesAPI.html#getPartitionBoundaries(int)">getPartitionBoundaries</a>, <a href="../quantilescommon/QuantilesDoublesAPI.html#getPMF(double%5B%5D)">getPMF</a>, <a href="../quantilescommon/QuantilesDoublesAPI.html#getQuantile(double)">getQuantile</a>, <a href="../quantilescommon/QuantilesDoublesAPI.html#getQuantiles(double%5B%5D)">getQuantiles</a>, <a href="../ [...]
+<code><a href="../quantilescommon/QuantilesDoublesAPI.html#getCDF(double%5B%5D)">getCDF</a>, <a href="../quantilescommon/QuantilesDoublesAPI.html#getMaxItem()">getMaxItem</a>, <a href="../quantilescommon/QuantilesDoublesAPI.html#getMinItem()">getMinItem</a>, <a href="../quantilescommon/QuantilesDoublesAPI.html#getPartitionBoundaries(int)">getPartitionBoundaries</a>, <a href="../quantilescommon/QuantilesDoublesAPI.html#getPMF(double%5B%5D)">getPMF</a>, <a href="../quantilescommon/Quantile [...]
 </ul>
 </li>
 </ul>
@@ -462,21 +453,38 @@ implements <a href="../quantilescommon/QuantilesDoublesAPI.html" title="interfac
 <!--   -->
 </a>
 <h3>Method Detail</h3>
-<a id="heapify(org.apache.datasketches.memory.Memory)">
+<a id="newHeapInstance()">
 <!--   -->
 </a>
 <ul class="blockList">
 <li class="blockList">
-<h4>heapify</h4>
-<pre class="methodSignature">public static&nbsp;<a href="KllDoublesSketch.html" title="class in org.apache.datasketches.kll">KllDoublesSketch</a>&nbsp;heapify&#8203;(org.apache.datasketches.memory.Memory&nbsp;srcMem)</pre>
-<div class="block">Factory heapify takes a compact sketch image in Memory and instantiates an on-heap sketch.
- The resulting sketch will not retain any link to the source Memory.</div>
+<h4>newHeapInstance</h4>
+<pre class="methodSignature">public static&nbsp;<a href="KllDoublesSketch.html" title="class in org.apache.datasketches.kll">KllDoublesSketch</a>&nbsp;newHeapInstance()</pre>
+<div class="block">Create a new heap instance of this sketch with the default <em>k = 200</em>.
+ The default <em>k</em> = 200 results in a normalized rank error of about
+ 1.65%. Larger K will have smaller error but the sketch will be larger (and slower).</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>new KllDoublesSketch on the Java heap.</dd>
+</dl>
+</li>
+</ul>
+<a id="newHeapInstance(int)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>newHeapInstance</h4>
+<pre class="methodSignature">public static&nbsp;<a href="KllDoublesSketch.html" title="class in org.apache.datasketches.kll">KllDoublesSketch</a>&nbsp;newHeapInstance&#8203;(int&nbsp;k)</pre>
+<div class="block">Create a new heap instance of this sketch with a given parameter <em>k</em>.
+ <em>k</em> can be between 8, inclusive, and 65535, inclusive.
+ The default <em>k</em> = 200 results in a normalized rank error of about
+ 1.65%. Larger K will have smaller error but the sketch will be larger (and slower).</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>srcMem</code> - a compact Memory image of a sketch serialized by this sketch.
- <a href="../../../../resources/dictionary.html#mem">See Memory</a></dd>
+<dd><code>k</code> - parameter that controls size of the sketch and accuracy of estimates.</dd>
 <dt><span class="returnLabel">Returns:</span></dt>
-<dd>a heap-based sketch based on the given Memory.</dd>
+<dd>new KllDoublesSketch on the Java heap.</dd>
 </dl>
 </li>
 </ul>
@@ -488,7 +496,7 @@ implements <a href="../quantilescommon/QuantilesDoublesAPI.html" title="interfac
 <h4>newDirectInstance</h4>
 <pre class="methodSignature">public static&nbsp;<a href="KllDoublesSketch.html" title="class in org.apache.datasketches.kll">KllDoublesSketch</a>&nbsp;newDirectInstance&#8203;(org.apache.datasketches.memory.WritableMemory&nbsp;dstMem,
                                                  org.apache.datasketches.memory.MemoryRequestServer&nbsp;memReqSvr)</pre>
-<div class="block">Create a new direct instance of this sketch with the default <em>k</em>.
+<div class="block">Create a new direct updatable instance of this sketch with the default <em>k</em>.
  The default <em>k</em> = 200 results in a normalized rank error of about
  1.65%. Larger <em>k</em> will have smaller error but the sketch will be larger (and slower).</div>
 <dl>
@@ -509,7 +517,7 @@ implements <a href="../quantilescommon/QuantilesDoublesAPI.html" title="interfac
 <pre class="methodSignature">public static&nbsp;<a href="KllDoublesSketch.html" title="class in org.apache.datasketches.kll">KllDoublesSketch</a>&nbsp;newDirectInstance&#8203;(int&nbsp;k,
                                                  org.apache.datasketches.memory.WritableMemory&nbsp;dstMem,
                                                  org.apache.datasketches.memory.MemoryRequestServer&nbsp;memReqSvr)</pre>
-<div class="block">Create a new direct instance of this sketch with a given <em>k</em>.</div>
+<div class="block">Create a new direct updatable instance of this sketch with a given <em>k</em>.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
 <dd><code>k</code> - parameter that controls size of the sketch and accuracy of estimates.</dd>
@@ -520,38 +528,21 @@ implements <a href="../quantilescommon/QuantilesDoublesAPI.html" title="interfac
 </dl>
 </li>
 </ul>
-<a id="newHeapInstance()">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>newHeapInstance</h4>
-<pre class="methodSignature">public static&nbsp;<a href="KllDoublesSketch.html" title="class in org.apache.datasketches.kll">KllDoublesSketch</a>&nbsp;newHeapInstance()</pre>
-<div class="block">Create a new heap instance of this sketch with the default <em>k = 200</em>.
- The default <em>k</em> = 200 results in a normalized rank error of about
- 1.65%. Larger K will have smaller error but the sketch will be larger (and slower).</div>
-<dl>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>new KllDoublesSketch on the Java heap.</dd>
-</dl>
-</li>
-</ul>
-<a id="newHeapInstance(int)">
+<a id="heapify(org.apache.datasketches.memory.Memory)">
 <!--   -->
 </a>
 <ul class="blockList">
 <li class="blockList">
-<h4>newHeapInstance</h4>
-<pre class="methodSignature">public static&nbsp;<a href="KllDoublesSketch.html" title="class in org.apache.datasketches.kll">KllDoublesSketch</a>&nbsp;newHeapInstance&#8203;(int&nbsp;k)</pre>
-<div class="block">Create a new heap instance of this sketch with a given parameter <em>k</em>.
- <em>k</em> can be between 8, inclusive, and 65535, inclusive.
- The default <em>k</em> = 200 results in a normalized rank error of about
- 1.65%. Larger K will have smaller error but the sketch will be larger (and slower).</div>
+<h4>heapify</h4>
+<pre class="methodSignature">public static&nbsp;<a href="KllDoublesSketch.html" title="class in org.apache.datasketches.kll">KllDoublesSketch</a>&nbsp;heapify&#8203;(org.apache.datasketches.memory.Memory&nbsp;srcMem)</pre>
+<div class="block">Factory heapify takes a compact sketch image in Memory and instantiates an on-heap sketch.
+ The resulting sketch will not retain any link to the source Memory.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>k</code> - parameter that controls size of the sketch and accuracy of estimates.</dd>
+<dd><code>srcMem</code> - a compact Memory image of a sketch serialized by this sketch.
+ <a href="../../../../resources/dictionary.html#mem">See Memory</a></dd>
 <dt><span class="returnLabel">Returns:</span></dt>
-<dd>new KllDoublesSketch on the Java heap.</dd>
+<dd>a heap-based sketch based on the given Memory.</dd>
 </dl>
 </li>
 </ul>
@@ -591,26 +582,6 @@ implements <a href="../quantilescommon/QuantilesDoublesAPI.html" title="interfac
 </dl>
 </li>
 </ul>
-<a id="getMaxSerializedSizeBytes(int,long,boolean)">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>getMaxSerializedSizeBytes</h4>
-<pre class="methodSignature">public static&nbsp;int&nbsp;getMaxSerializedSizeBytes&#8203;(int&nbsp;k,
-                                            long&nbsp;n,
-                                            boolean&nbsp;updatableMemoryFormat)</pre>
-<div class="block">Returns upper bound on the serialized size of a KllDoublesSketch given the following parameters.</div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>k</code> - parameter that controls size of the sketch and accuracy of estimates</dd>
-<dd><code>n</code> - stream length</dd>
-<dd><code>updatableMemoryFormat</code> - true if updatable Memory format, otherwise the standard compact format.</dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>upper bound on the serialized size of a KllSketch.</dd>
-</dl>
-</li>
-</ul>
 <a id="getCDF(double[],org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">
 <!--   -->
 </a>
@@ -656,42 +627,6 @@ implements <a href="../quantilescommon/QuantilesDoublesAPI.html" title="interfac
 </dl>
 </li>
 </ul>
-<a id="getMaxItem()">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>getMaxItem</h4>
-<pre class="methodSignature">public&nbsp;double&nbsp;getMaxItem()</pre>
-<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../quantilescommon/QuantilesDoublesAPI.html#getMaxItem()">QuantilesDoublesAPI</a></code></span></div>
-<div class="block">Returns the maximum item of the stream. This is provided for convenience, but may be different from the largest
- item retained by the sketch algorithm.</div>
-<dl>
-<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
-<dd><code><a href="../quantilescommon/QuantilesDoublesAPI.html#getMaxItem()">getMaxItem</a></code>&nbsp;in interface&nbsp;<code><a href="../quantilescommon/QuantilesDoublesAPI.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesDoublesAPI</a></code></dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>the maximum item of the stream</dd>
-</dl>
-</li>
-</ul>
-<a id="getMinItem()">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>getMinItem</h4>
-<pre class="methodSignature">public&nbsp;double&nbsp;getMinItem()</pre>
-<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../quantilescommon/QuantilesDoublesAPI.html#getMinItem()">QuantilesDoublesAPI</a></code></span></div>
-<div class="block">Returns the minimum item of the stream. This is provided for convenience, but is distinct from the smallest
- item retained by the sketch algorithm.</div>
-<dl>
-<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
-<dd><code><a href="../quantilescommon/QuantilesDoublesAPI.html#getMinItem()">getMinItem</a></code>&nbsp;in interface&nbsp;<code><a href="../quantilescommon/QuantilesDoublesAPI.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesDoublesAPI</a></code></dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>the minimum item of the stream</dd>
-</dl>
-</li>
-</ul>
 <a id="getPartitionBoundaries(int,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">
 <!--   -->
 </a>
@@ -1006,6 +941,24 @@ implements <a href="../quantilescommon/QuantilesDoublesAPI.html" title="interfac
 </dl>
 </li>
 </ul>
+<a id="merge(org.apache.datasketches.kll.KllSketch)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>merge</h4>
+<pre class="methodSignature">public final&nbsp;void&nbsp;merge&#8203;(<a href="KllSketch.html" title="class in org.apache.datasketches.kll">KllSketch</a>&nbsp;other)</pre>
+<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="KllSketch.html#merge(org.apache.datasketches.kll.KllSketch)">KllSketch</a></code></span></div>
+<div class="block">Merges another sketch into this one.
+ Attempting to merge a sketch of the wrong type will throw an exception.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="KllSketch.html#merge(org.apache.datasketches.kll.KllSketch)">merge</a></code>&nbsp;in class&nbsp;<code><a href="KllSketch.html" title="class in org.apache.datasketches.kll">KllSketch</a></code></dd>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>other</code> - sketch to merge into this one</dd>
+</dl>
+</li>
+</ul>
 <a id="reset()">
 <!--   -->
 </a>
diff --git a/docs/master/org/apache/datasketches/kll/KllDoublesSketchIterator.html b/docs/master/org/apache/datasketches/kll/KllDoublesSketchIterator.html
index d9ccf1df..1479c0ea 100644
--- a/docs/master/org/apache/datasketches/kll/KllDoublesSketchIterator.html
+++ b/docs/master/org/apache/datasketches/kll/KllDoublesSketchIterator.html
@@ -136,7 +136,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <dd><code><a href="../quantilescommon/QuantilesDoublesSketchIterator.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesDoublesSketchIterator</a></code>, <code><a href="../quantilescommon/QuantilesSketchIterator.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesSketchIterator</a></code></dd>
 </dl>
 <hr>
-<pre>public class <span class="typeNameLabel">KllDoublesSketchIterator</span>
+<pre>public final class <span class="typeNameLabel">KllDoublesSketchIterator</span>
 extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a>
 implements <a href="../quantilescommon/QuantilesDoublesSketchIterator.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesDoublesSketchIterator</a></pre>
 <div class="block">Iterator over KllDoublesSketch. The order is not defined.</div>
diff --git a/docs/master/org/apache/datasketches/kll/KllDoublesSketchSortedView.html b/docs/master/org/apache/datasketches/kll/KllDoublesSketchSortedView.html
index 71146ac1..0a78eedf 100644
--- a/docs/master/org/apache/datasketches/kll/KllDoublesSketchSortedView.html
+++ b/docs/master/org/apache/datasketches/kll/KllDoublesSketchSortedView.html
@@ -286,6 +286,23 @@ implements <a href="../quantilescommon/DoublesSortedView.html" title="interface
 <!--   -->
 </a>
 <h3>Method Detail</h3>
+<a id="getCumulativeWeights()">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getCumulativeWeights</h4>
+<pre class="methodSignature">public&nbsp;long[]&nbsp;getCumulativeWeights()</pre>
+<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../quantilescommon/SortedView.html#getCumulativeWeights()">SortedView</a></code></span></div>
+<div class="block">Returns the array of cumulative weights</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="../quantilescommon/SortedView.html#getCumulativeWeights()">getCumulativeWeights</a></code>&nbsp;in interface&nbsp;<code><a href="../quantilescommon/SortedView.html" title="interface in org.apache.datasketches.quantilescommon">SortedView</a></code></dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the array of cumulative weights</dd>
+</dl>
+</li>
+</ul>
 <a id="getQuantile(double,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">
 <!--   -->
 </a>
@@ -312,6 +329,23 @@ implements <a href="../quantilescommon/DoublesSortedView.html" title="interface
 </dl>
 </li>
 </ul>
+<a id="getQuantiles()">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getQuantiles</h4>
+<pre class="methodSignature">public&nbsp;double[]&nbsp;getQuantiles()</pre>
+<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../quantilescommon/DoublesSortedView.html#getQuantiles()">DoublesSortedView</a></code></span></div>
+<div class="block">Returns the array of quantiles.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="../quantilescommon/DoublesSortedView.html#getQuantiles()">getQuantiles</a></code>&nbsp;in interface&nbsp;<code><a href="../quantilescommon/DoublesSortedView.html" title="interface in org.apache.datasketches.quantilescommon">DoublesSortedView</a></code></dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the array of quantiles.</dd>
+</dl>
+</li>
+</ul>
 <a id="getRank(double,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">
 <!--   -->
 </a>
@@ -335,40 +369,6 @@ implements <a href="../quantilescommon/DoublesSortedView.html" title="interface
 </dl>
 </li>
 </ul>
-<a id="getCumulativeWeights()">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>getCumulativeWeights</h4>
-<pre class="methodSignature">public&nbsp;long[]&nbsp;getCumulativeWeights()</pre>
-<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../quantilescommon/SortedView.html#getCumulativeWeights()">SortedView</a></code></span></div>
-<div class="block">Returns the array of cumulative weights</div>
-<dl>
-<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
-<dd><code><a href="../quantilescommon/SortedView.html#getCumulativeWeights()">getCumulativeWeights</a></code>&nbsp;in interface&nbsp;<code><a href="../quantilescommon/SortedView.html" title="interface in org.apache.datasketches.quantilescommon">SortedView</a></code></dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>the array of cumulative weights</dd>
-</dl>
-</li>
-</ul>
-<a id="getQuantiles()">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>getQuantiles</h4>
-<pre class="methodSignature">public&nbsp;double[]&nbsp;getQuantiles()</pre>
-<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../quantilescommon/DoublesSortedView.html#getQuantiles()">DoublesSortedView</a></code></span></div>
-<div class="block">Returns the array of quantiles.</div>
-<dl>
-<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
-<dd><code><a href="../quantilescommon/DoublesSortedView.html#getQuantiles()">getQuantiles</a></code>&nbsp;in interface&nbsp;<code><a href="../quantilescommon/DoublesSortedView.html" title="interface in org.apache.datasketches.quantilescommon">DoublesSortedView</a></code></dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>the array of quantiles.</dd>
-</dl>
-</li>
-</ul>
 <a id="isEmpty()">
 <!--   -->
 </a>
diff --git a/docs/master/org/apache/datasketches/kll/KllDoublesSketchSortedViewIterator.html b/docs/master/org/apache/datasketches/kll/KllDoublesSketchSortedViewIterator.html
index 21d2635c..45504277 100644
--- a/docs/master/org/apache/datasketches/kll/KllDoublesSketchSortedViewIterator.html
+++ b/docs/master/org/apache/datasketches/kll/KllDoublesSketchSortedViewIterator.html
@@ -136,7 +136,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <dd><code><a href="../quantilescommon/DoublesSortedViewIterator.html" title="interface in org.apache.datasketches.quantilescommon">DoublesSortedViewIterator</a></code>, <code><a href="../quantilescommon/SortedViewIterator.html" title="interface in org.apache.datasketches.quantilescommon">SortedViewIterator</a></code></dd>
 </dl>
 <hr>
-<pre>public class <span class="typeNameLabel">KllDoublesSketchSortedViewIterator</span>
+<pre>public final class <span class="typeNameLabel">KllDoublesSketchSortedViewIterator</span>
 extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a>
 implements <a href="../quantilescommon/DoublesSortedViewIterator.html" title="interface in org.apache.datasketches.quantilescommon">DoublesSortedViewIterator</a></pre>
 <div class="block">Iterator over KllDoublesSketchSortedView</div>
diff --git a/docs/master/org/apache/datasketches/kll/KllFloatsSketch.html b/docs/master/org/apache/datasketches/kll/KllFloatsSketch.html
index ca5716aa..46889569 100644
--- a/docs/master/org/apache/datasketches/kll/KllFloatsSketch.html
+++ b/docs/master/org/apache/datasketches/kll/KllFloatsSketch.html
@@ -27,7 +27,7 @@
     catch(err) {
     }
 //-->
-var data = {"i0":10,"i1":10,"i2":9,"i3":10,"i4":10,"i5":10,"i6":10,"i7":10,"i8":10,"i9":10,"i10":10,"i11":10,"i12":10,"i13":10,"i14":10,"i15":9,"i16":10,"i17":9,"i18":9,"i19":9,"i20":9,"i21":10,"i22":10,"i23":10,"i24":9,"i25":9};
+var data = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10,"i7":10,"i8":10,"i9":10,"i10":10,"i11":10,"i12":9,"i13":10,"i14":10,"i15":9,"i16":9,"i17":9,"i18":9,"i19":10,"i20":10,"i21":10,"i22":9,"i23":9};
 var tabs = {65535:["t0","All Methods"],1:["t1","Static Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
 var altColor = "altColor";
 var rowColor = "rowColor";
@@ -167,7 +167,7 @@ implements <a href="../quantilescommon/QuantilesFloatsAPI.html" title="interface
 <!--   -->
 </a>
 <h3>Nested classes/interfaces inherited from class&nbsp;org.apache.datasketches.kll.<a href="KllSketch.html" title="class in org.apache.datasketches.kll">KllSketch</a></h3>
-<code><a href="KllSketch.SketchType.html" title="enum in org.apache.datasketches.kll">KllSketch.SketchType</a></code></li>
+<code><a href="KllSketch.SketchStructure.html" title="enum in org.apache.datasketches.kll">KllSketch.SketchStructure</a>, <a href="KllSketch.SketchType.html" title="enum in org.apache.datasketches.kll">KllSketch.SketchType</a></code></li>
 </ul>
 <ul class="blockList">
 <li class="blockList"><a id="nested.classes.inherited.from.class.org.apache.datasketches.quantilescommon.QuantilesFloatsAPI">
@@ -193,6 +193,13 @@ implements <a href="../quantilescommon/QuantilesFloatsAPI.html" title="interface
 <h3>Fields inherited from class&nbsp;org.apache.datasketches.kll.<a href="KllSketch.html" title="class in org.apache.datasketches.kll">KllSketch</a></h3>
 <code><a href="KllSketch.html#DEFAULT_K">DEFAULT_K</a>, <a href="KllSketch.html#MAX_K">MAX_K</a></code></li>
 </ul>
+<ul class="blockList">
+<li class="blockList"><a id="fields.inherited.from.class.org.apache.datasketches.quantilescommon.QuantilesAPI">
+<!--   -->
+</a>
+<h3>Fields inherited from interface&nbsp;org.apache.datasketches.quantilescommon.<a href="../quantilescommon/QuantilesAPI.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesAPI</a></h3>
+<code><a href="../quantilescommon/QuantilesAPI.html#EMPTY_MSG">EMPTY_MSG</a>, <a href="../quantilescommon/QuantilesAPI.html#MEM_REQ_SVR_NULL_MSG">MEM_REQ_SVR_NULL_MSG</a>, <a href="../quantilescommon/QuantilesAPI.html#NOT_SINGLE_ITEM_MSG">NOT_SINGLE_ITEM_MSG</a>, <a href="../quantilescommon/QuantilesAPI.html#TGT_IS_READ_ONLY_MSG">TGT_IS_READ_ONLY_MSG</a>, <a href="../quantilescommon/QuantilesAPI.html#UNSUPPORTED_MSG">UNSUPPORTED_MSG</a></code></li>
+</ul>
 </li>
 </ul>
 </section>
@@ -221,29 +228,6 @@ implements <a href="../quantilescommon/QuantilesFloatsAPI.html" title="interface
 </td>
 </tr>
 <tr id="i1" class="rowColor">
-<td class="colFirst"><code>float</code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getMaxItem()">getMaxItem</a></span>()</code></th>
-<td class="colLast">
-<div class="block">Returns the maximum item of the stream.</div>
-</td>
-</tr>
-<tr id="i2" class="altColor">
-<td class="colFirst"><code>static int</code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getMaxSerializedSizeBytes(int,long,boolean)">getMaxSerializedSizeBytes</a></span>&#8203;(int&nbsp;k,
-                         long&nbsp;n,
-                         boolean&nbsp;updatableMemoryFormat)</code></th>
-<td class="colLast">
-<div class="block">Returns upper bound on the serialized size of a KllFloatsSketch given the following parameters.</div>
-</td>
-</tr>
-<tr id="i3" class="rowColor">
-<td class="colFirst"><code>float</code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getMinItem()">getMinItem</a></span>()</code></th>
-<td class="colLast">
-<div class="block">Returns the minimum item of the stream.</div>
-</td>
-</tr>
-<tr id="i4" class="altColor">
 <td class="colFirst"><code><a href="../quantilescommon/QuantilesFloatsAPI.FloatsPartitionBoundaries.html" title="class in org.apache.datasketches.quantilescommon">QuantilesFloatsAPI.FloatsPartitionBoundaries</a></code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getPartitionBoundaries(int,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">getPartitionBoundaries</a></span>&#8203;(int&nbsp;numEquallyWeighted,
                       <a href="../quantilescommon/QuantileSearchCriteria.html" title="enum in org.apache.datasketches.quantilescommon">QuantileSearchCriteria</a>&nbsp;searchCrit)</code></th>
@@ -252,7 +236,7 @@ implements <a href="../quantilescommon/QuantilesFloatsAPI.html" title="interface
  sufficient information for the user to create the given number of equally weighted partitions.</div>
 </td>
 </tr>
-<tr id="i5" class="rowColor">
+<tr id="i2" class="altColor">
 <td class="colFirst"><code>double[]</code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getPMF(float%5B%5D,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">getPMF</a></span>&#8203;(float[]&nbsp;splitPoints,
       <a href="../quantilescommon/QuantileSearchCriteria.html" title="enum in org.apache.datasketches.quantilescommon">QuantileSearchCriteria</a>&nbsp;searchCrit)</code></th>
@@ -262,7 +246,7 @@ implements <a href="../quantilescommon/QuantilesFloatsAPI.html" title="interface
  given a set of splitPoints.</div>
 </td>
 </tr>
-<tr id="i6" class="altColor">
+<tr id="i3" class="rowColor">
 <td class="colFirst"><code>float</code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getQuantile(double,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">getQuantile</a></span>&#8203;(double&nbsp;rank,
            <a href="../quantilescommon/QuantileSearchCriteria.html" title="enum in org.apache.datasketches.quantilescommon">QuantileSearchCriteria</a>&nbsp;searchCrit)</code></th>
@@ -270,7 +254,7 @@ implements <a href="../quantilescommon/QuantilesFloatsAPI.html" title="interface
 <div class="block">Gets the approximate quantile of the given normalized rank and the given search criterion.</div>
 </td>
 </tr>
-<tr id="i7" class="rowColor">
+<tr id="i4" class="altColor">
 <td class="colFirst"><code>float</code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getQuantileLowerBound(double)">getQuantileLowerBound</a></span>&#8203;(double&nbsp;rank)</code></th>
 <td class="colLast">
@@ -278,7 +262,7 @@ implements <a href="../quantilescommon/QuantilesFloatsAPI.html" title="interface
  given rank exists.</div>
 </td>
 </tr>
-<tr id="i8" class="altColor">
+<tr id="i5" class="rowColor">
 <td class="colFirst"><code>float[]</code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getQuantiles(double%5B%5D,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">getQuantiles</a></span>&#8203;(double[]&nbsp;ranks,
             <a href="../quantilescommon/QuantileSearchCriteria.html" title="enum in org.apache.datasketches.quantilescommon">QuantileSearchCriteria</a>&nbsp;searchCrit)</code></th>
@@ -286,7 +270,7 @@ implements <a href="../quantilescommon/QuantilesFloatsAPI.html" title="interface
 <div class="block">Gets an array of quantiles from the given array of normalized ranks.</div>
 </td>
 </tr>
-<tr id="i9" class="rowColor">
+<tr id="i6" class="altColor">
 <td class="colFirst"><code>float</code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getQuantileUpperBound(double)">getQuantileUpperBound</a></span>&#8203;(double&nbsp;rank)</code></th>
 <td class="colLast">
@@ -294,7 +278,7 @@ implements <a href="../quantilescommon/QuantilesFloatsAPI.html" title="interface
  given rank exists.</div>
 </td>
 </tr>
-<tr id="i10" class="altColor">
+<tr id="i7" class="rowColor">
 <td class="colFirst"><code>double</code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getRank(float,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">getRank</a></span>&#8203;(float&nbsp;quantile,
        <a href="../quantilescommon/QuantileSearchCriteria.html" title="enum in org.apache.datasketches.quantilescommon">QuantileSearchCriteria</a>&nbsp;searchCrit)</code></th>
@@ -302,7 +286,7 @@ implements <a href="../quantilescommon/QuantilesFloatsAPI.html" title="interface
 <div class="block">Gets the normalized rank corresponding to the given a quantile.</div>
 </td>
 </tr>
-<tr id="i11" class="rowColor">
+<tr id="i8" class="altColor">
 <td class="colFirst"><code>double</code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getRankLowerBound(double)">getRankLowerBound</a></span>&#8203;(double&nbsp;rank)</code></th>
 <td class="colLast">
@@ -310,7 +294,7 @@ implements <a href="../quantilescommon/QuantilesFloatsAPI.html" title="interface
  given rank exists.</div>
 </td>
 </tr>
-<tr id="i12" class="altColor">
+<tr id="i9" class="rowColor">
 <td class="colFirst"><code>double[]</code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getRanks(float%5B%5D,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">getRanks</a></span>&#8203;(float[]&nbsp;quantiles,
         <a href="../quantilescommon/QuantileSearchCriteria.html" title="enum in org.apache.datasketches.quantilescommon">QuantileSearchCriteria</a>&nbsp;searchCrit)</code></th>
@@ -319,7 +303,7 @@ implements <a href="../quantilescommon/QuantilesFloatsAPI.html" title="interface
  search criterion.</div>
 </td>
 </tr>
-<tr id="i13" class="rowColor">
+<tr id="i10" class="altColor">
 <td class="colFirst"><code>double</code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getRankUpperBound(double)">getRankUpperBound</a></span>&#8203;(double&nbsp;rank)</code></th>
 <td class="colLast">
@@ -327,80 +311,87 @@ implements <a href="../quantilescommon/QuantilesFloatsAPI.html" title="interface
  given rank exists.</div>
 </td>
 </tr>
-<tr id="i14" class="altColor">
+<tr id="i11" class="rowColor">
 <td class="colFirst"><code><a href="../quantilescommon/FloatsSortedView.html" title="interface in org.apache.datasketches.quantilescommon">FloatsSortedView</a></code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getSortedView()">getSortedView</a></span>()</code></th>
 <td class="colLast">
 <div class="block">Gets the sorted view of this sketch</div>
 </td>
 </tr>
-<tr id="i15" class="rowColor">
+<tr id="i12" class="altColor">
 <td class="colFirst"><code>static <a href="KllFloatsSketch.html" title="class in org.apache.datasketches.kll">KllFloatsSketch</a></code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#heapify(org.apache.datasketches.memory.Memory)">heapify</a></span>&#8203;(org.apache.datasketches.memory.Memory&nbsp;srcMem)</code></th>
 <td class="colLast">
 <div class="block">Factory heapify takes a compact sketch image in Memory and instantiates an on-heap sketch.</div>
 </td>
 </tr>
-<tr id="i16" class="altColor">
+<tr id="i13" class="rowColor">
 <td class="colFirst"><code><a href="../quantilescommon/QuantilesFloatsSketchIterator.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesFloatsSketchIterator</a></code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#iterator()">iterator</a></span>()</code></th>
 <td class="colLast">
 <div class="block">Gets the iterator for this sketch, which is not sorted.</div>
 </td>
 </tr>
-<tr id="i17" class="rowColor">
+<tr id="i14" class="altColor">
+<td class="colFirst"><code>void</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#merge(org.apache.datasketches.kll.KllSketch)">merge</a></span>&#8203;(<a href="KllSketch.html" title="class in org.apache.datasketches.kll">KllSketch</a>&nbsp;other)</code></th>
+<td class="colLast">
+<div class="block">Merges another sketch into this one.</div>
+</td>
+</tr>
+<tr id="i15" class="rowColor">
 <td class="colFirst"><code>static <a href="KllFloatsSketch.html" title="class in org.apache.datasketches.kll">KllFloatsSketch</a></code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#newDirectInstance(int,org.apache.datasketches.memory.WritableMemory,org.apache.datasketches.memory.MemoryRequestServer)">newDirectInstance</a></span>&#8203;(int&nbsp;k,
                  org.apache.datasketches.memory.WritableMemory&nbsp;dstMem,
                  org.apache.datasketches.memory.MemoryRequestServer&nbsp;memReqSvr)</code></th>
 <td class="colLast">
-<div class="block">Create a new direct instance of this sketch with a given <em>k</em>.</div>
+<div class="block">Create a new direct updatable instance of this sketch with a given <em>k</em>.</div>
 </td>
 </tr>
-<tr id="i18" class="altColor">
+<tr id="i16" class="altColor">
 <td class="colFirst"><code>static <a href="KllFloatsSketch.html" title="class in org.apache.datasketches.kll">KllFloatsSketch</a></code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#newDirectInstance(org.apache.datasketches.memory.WritableMemory,org.apache.datasketches.memory.MemoryRequestServer)">newDirectInstance</a></span>&#8203;(org.apache.datasketches.memory.WritableMemory&nbsp;dstMem,
                  org.apache.datasketches.memory.MemoryRequestServer&nbsp;memReqSvr)</code></th>
 <td class="colLast">
-<div class="block">Create a new direct instance of this sketch with the default <em>k</em>.</div>
+<div class="block">Create a new direct updatable instance of this sketch with the default <em>k</em>.</div>
 </td>
 </tr>
-<tr id="i19" class="rowColor">
+<tr id="i17" class="rowColor">
 <td class="colFirst"><code>static <a href="KllFloatsSketch.html" title="class in org.apache.datasketches.kll">KllFloatsSketch</a></code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#newHeapInstance()">newHeapInstance</a></span>()</code></th>
 <td class="colLast">
 <div class="block">Create a new heap instance of this sketch with the default <em>k = 200</em>.</div>
 </td>
 </tr>
-<tr id="i20" class="altColor">
+<tr id="i18" class="altColor">
 <td class="colFirst"><code>static <a href="KllFloatsSketch.html" title="class in org.apache.datasketches.kll">KllFloatsSketch</a></code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#newHeapInstance(int)">newHeapInstance</a></span>&#8203;(int&nbsp;k)</code></th>
 <td class="colLast">
 <div class="block">Create a new heap instance of this sketch with a given parameter <em>k</em>.</div>
 </td>
 </tr>
-<tr id="i21" class="rowColor">
+<tr id="i19" class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#reset()">reset</a></span>()</code></th>
 <td class="colLast">
 <div class="block">Resets this sketch to the empty state.</div>
 </td>
 </tr>
-<tr id="i22" class="altColor">
+<tr id="i20" class="altColor">
 <td class="colFirst"><code>byte[]</code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#toByteArray()">toByteArray</a></span>()</code></th>
 <td class="colLast">
 <div class="block">Returns a byte array representation of this sketch.</div>
 </td>
 </tr>
-<tr id="i23" class="rowColor">
+<tr id="i21" class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#update(float)">update</a></span>&#8203;(float&nbsp;item)</code></th>
 <td class="colLast">
 <div class="block">Updates this sketch with the given item.</div>
 </td>
 </tr>
-<tr id="i24" class="altColor">
+<tr id="i22" class="altColor">
 <td class="colFirst"><code>static <a href="KllFloatsSketch.html" title="class in org.apache.datasketches.kll">KllFloatsSketch</a></code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#wrap(org.apache.datasketches.memory.Memory)">wrap</a></span>&#8203;(org.apache.datasketches.memory.Memory&nbsp;srcMem)</code></th>
 <td class="colLast">
@@ -408,7 +399,7 @@ implements <a href="../quantilescommon/QuantilesFloatsAPI.html" title="interface
  that originated from this sketch.</div>
 </td>
 </tr>
-<tr id="i25" class="rowColor">
+<tr id="i23" class="rowColor">
 <td class="colFirst"><code>static <a href="KllFloatsSketch.html" title="class in org.apache.datasketches.kll">KllFloatsSketch</a></code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#writableWrap(org.apache.datasketches.memory.WritableMemory,org.apache.datasketches.memory.MemoryRequestServer)">writableWrap</a></span>&#8203;(org.apache.datasketches.memory.WritableMemory&nbsp;srcMem,
             org.apache.datasketches.memory.MemoryRequestServer&nbsp;memReqSvr)</code></th>
@@ -423,7 +414,7 @@ implements <a href="../quantilescommon/QuantilesFloatsAPI.html" title="interface
 <!--   -->
 </a>
 <h3>Methods inherited from class&nbsp;org.apache.datasketches.kll.<a href="KllSketch.html" title="class in org.apache.datasketches.kll">KllSketch</a></h3>
-<code><a href="KllSketch.html#getCurrentCompactSerializedSizeBytes()">getCurrentCompactSerializedSizeBytes</a>, <a href="KllSketch.html#getCurrentUpdatableSerializedSizeBytes()">getCurrentUpdatableSerializedSizeBytes</a>, <a href="KllSketch.html#getK()">getK</a>, <a href="KllSketch.html#getKFromEpsilon(double,boolean)">getKFromEpsilon</a>, <a href="KllSketch.html#getMaxSerializedSizeBytes(int,long,org.apache.datasketches.kll.KllSketch.SketchType,boolean)">getMaxSerializedSizeBytes</a>, < [...]
+<code><a href="KllSketch.html#getKFromEpsilon(double,boolean)">getKFromEpsilon</a>, <a href="KllSketch.html#getMaxSerializedSizeBytes(int,long,org.apache.datasketches.kll.KllSketch.SketchType,boolean)">getMaxSerializedSizeBytes</a>, <a href="KllSketch.html#getNormalizedRankError(boolean)">getNormalizedRankError</a>, <a href="KllSketch.html#getNormalizedRankError(int,boolean)">getNormalizedRankError</a>, <a href="KllSketch.html#getNumRetained()">getNumRetained</a>, <a href="KllSketch.html [...]
 </ul>
 <ul class="blockList">
 <li class="blockList"><a id="methods.inherited.from.class.java.lang.Object">
@@ -444,7 +435,7 @@ implements <a href="../quantilescommon/QuantilesFloatsAPI.html" title="interface
 <!--   -->
 </a>
 <h3>Methods inherited from interface&nbsp;org.apache.datasketches.quantilescommon.<a href="../quantilescommon/QuantilesFloatsAPI.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesFloatsAPI</a></h3>
-<code><a href="../quantilescommon/QuantilesFloatsAPI.html#getCDF(float%5B%5D)">getCDF</a>, <a href="../quantilescommon/QuantilesFloatsAPI.html#getPartitionBoundaries(int)">getPartitionBoundaries</a>, <a href="../quantilescommon/QuantilesFloatsAPI.html#getPMF(float%5B%5D)">getPMF</a>, <a href="../quantilescommon/QuantilesFloatsAPI.html#getQuantile(double)">getQuantile</a>, <a href="../quantilescommon/QuantilesFloatsAPI.html#getQuantiles(double%5B%5D)">getQuantiles</a>, <a href="../quantil [...]
+<code><a href="../quantilescommon/QuantilesFloatsAPI.html#getCDF(float%5B%5D)">getCDF</a>, <a href="../quantilescommon/QuantilesFloatsAPI.html#getMaxItem()">getMaxItem</a>, <a href="../quantilescommon/QuantilesFloatsAPI.html#getMinItem()">getMinItem</a>, <a href="../quantilescommon/QuantilesFloatsAPI.html#getPartitionBoundaries(int)">getPartitionBoundaries</a>, <a href="../quantilescommon/QuantilesFloatsAPI.html#getPMF(float%5B%5D)">getPMF</a>, <a href="../quantilescommon/QuantilesFloats [...]
 </ul>
 </li>
 </ul>
@@ -462,21 +453,38 @@ implements <a href="../quantilescommon/QuantilesFloatsAPI.html" title="interface
 <!--   -->
 </a>
 <h3>Method Detail</h3>
-<a id="heapify(org.apache.datasketches.memory.Memory)">
+<a id="newHeapInstance()">
 <!--   -->
 </a>
 <ul class="blockList">
 <li class="blockList">
-<h4>heapify</h4>
-<pre class="methodSignature">public static&nbsp;<a href="KllFloatsSketch.html" title="class in org.apache.datasketches.kll">KllFloatsSketch</a>&nbsp;heapify&#8203;(org.apache.datasketches.memory.Memory&nbsp;srcMem)</pre>
-<div class="block">Factory heapify takes a compact sketch image in Memory and instantiates an on-heap sketch.
- The resulting sketch will not retain any link to the source Memory.</div>
+<h4>newHeapInstance</h4>
+<pre class="methodSignature">public static&nbsp;<a href="KllFloatsSketch.html" title="class in org.apache.datasketches.kll">KllFloatsSketch</a>&nbsp;newHeapInstance()</pre>
+<div class="block">Create a new heap instance of this sketch with the default <em>k = 200</em>.
+ The default <em>k</em> = 200 results in a normalized rank error of about
+ 1.65%. Larger K will have smaller error but the sketch will be larger (and slower).</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>new KllFloatsSketch on the Java heap.</dd>
+</dl>
+</li>
+</ul>
+<a id="newHeapInstance(int)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>newHeapInstance</h4>
+<pre class="methodSignature">public static&nbsp;<a href="KllFloatsSketch.html" title="class in org.apache.datasketches.kll">KllFloatsSketch</a>&nbsp;newHeapInstance&#8203;(int&nbsp;k)</pre>
+<div class="block">Create a new heap instance of this sketch with a given parameter <em>k</em>.
+ <em>k</em> can be between 8, inclusive, and 65535, inclusive.
+ The default <em>k</em> = 200 results in a normalized rank error of about
+ 1.65%. Larger K will have smaller error but the sketch will be larger (and slower).</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>srcMem</code> - a compact Memory image of a sketch serialized by this sketch.
- <a href="../../../../resources/dictionary.html#mem">See Memory</a></dd>
+<dd><code>k</code> - parameter that controls size of the sketch and accuracy of estimates.</dd>
 <dt><span class="returnLabel">Returns:</span></dt>
-<dd>a heap-based sketch based on the given Memory.</dd>
+<dd>new KllFloatsSketch on the Java heap.</dd>
 </dl>
 </li>
 </ul>
@@ -488,7 +496,7 @@ implements <a href="../quantilescommon/QuantilesFloatsAPI.html" title="interface
 <h4>newDirectInstance</h4>
 <pre class="methodSignature">public static&nbsp;<a href="KllFloatsSketch.html" title="class in org.apache.datasketches.kll">KllFloatsSketch</a>&nbsp;newDirectInstance&#8203;(org.apache.datasketches.memory.WritableMemory&nbsp;dstMem,
                                                 org.apache.datasketches.memory.MemoryRequestServer&nbsp;memReqSvr)</pre>
-<div class="block">Create a new direct instance of this sketch with the default <em>k</em>.
+<div class="block">Create a new direct updatable instance of this sketch with the default <em>k</em>.
  The default <em>k</em> = 200 results in a normalized rank error of about
  1.65%. Larger <em>k</em> will have smaller error but the sketch will be larger (and slower).</div>
 <dl>
@@ -509,7 +517,7 @@ implements <a href="../quantilescommon/QuantilesFloatsAPI.html" title="interface
 <pre class="methodSignature">public static&nbsp;<a href="KllFloatsSketch.html" title="class in org.apache.datasketches.kll">KllFloatsSketch</a>&nbsp;newDirectInstance&#8203;(int&nbsp;k,
                                                 org.apache.datasketches.memory.WritableMemory&nbsp;dstMem,
                                                 org.apache.datasketches.memory.MemoryRequestServer&nbsp;memReqSvr)</pre>
-<div class="block">Create a new direct instance of this sketch with a given <em>k</em>.</div>
+<div class="block">Create a new direct updatable instance of this sketch with a given <em>k</em>.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
 <dd><code>k</code> - parameter that controls size of the sketch and accuracy of estimates.</dd>
@@ -520,38 +528,21 @@ implements <a href="../quantilescommon/QuantilesFloatsAPI.html" title="interface
 </dl>
 </li>
 </ul>
-<a id="newHeapInstance()">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>newHeapInstance</h4>
-<pre class="methodSignature">public static&nbsp;<a href="KllFloatsSketch.html" title="class in org.apache.datasketches.kll">KllFloatsSketch</a>&nbsp;newHeapInstance()</pre>
-<div class="block">Create a new heap instance of this sketch with the default <em>k = 200</em>.
- The default <em>k</em> = 200 results in a normalized rank error of about
- 1.65%. Larger K will have smaller error but the sketch will be larger (and slower).</div>
-<dl>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>new KllFloatsSketch on the Java heap.</dd>
-</dl>
-</li>
-</ul>
-<a id="newHeapInstance(int)">
+<a id="heapify(org.apache.datasketches.memory.Memory)">
 <!--   -->
 </a>
 <ul class="blockList">
 <li class="blockList">
-<h4>newHeapInstance</h4>
-<pre class="methodSignature">public static&nbsp;<a href="KllFloatsSketch.html" title="class in org.apache.datasketches.kll">KllFloatsSketch</a>&nbsp;newHeapInstance&#8203;(int&nbsp;k)</pre>
-<div class="block">Create a new heap instance of this sketch with a given parameter <em>k</em>.
- <em>k</em> can be between 8, inclusive, and 65535, inclusive.
- The default <em>k</em> = 200 results in a normalized rank error of about
- 1.65%. Larger K will have smaller error but the sketch will be larger (and slower).</div>
+<h4>heapify</h4>
+<pre class="methodSignature">public static&nbsp;<a href="KllFloatsSketch.html" title="class in org.apache.datasketches.kll">KllFloatsSketch</a>&nbsp;heapify&#8203;(org.apache.datasketches.memory.Memory&nbsp;srcMem)</pre>
+<div class="block">Factory heapify takes a compact sketch image in Memory and instantiates an on-heap sketch.
+ The resulting sketch will not retain any link to the source Memory.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>k</code> - parameter that controls size of the sketch and accuracy of estimates.</dd>
+<dd><code>srcMem</code> - a compact Memory image of a sketch serialized by this sketch.
+ <a href="../../../../resources/dictionary.html#mem">See Memory</a></dd>
 <dt><span class="returnLabel">Returns:</span></dt>
-<dd>new KllFloatsSketch on the Java heap.</dd>
+<dd>a heap-based sketch based on the given Memory.</dd>
 </dl>
 </li>
 </ul>
@@ -591,26 +582,6 @@ implements <a href="../quantilescommon/QuantilesFloatsAPI.html" title="interface
 </dl>
 </li>
 </ul>
-<a id="getMaxSerializedSizeBytes(int,long,boolean)">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>getMaxSerializedSizeBytes</h4>
-<pre class="methodSignature">public static&nbsp;int&nbsp;getMaxSerializedSizeBytes&#8203;(int&nbsp;k,
-                                            long&nbsp;n,
-                                            boolean&nbsp;updatableMemoryFormat)</pre>
-<div class="block">Returns upper bound on the serialized size of a KllFloatsSketch given the following parameters.</div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>k</code> - parameter that controls size of the sketch and accuracy of estimates</dd>
-<dd><code>n</code> - stream length</dd>
-<dd><code>updatableMemoryFormat</code> - true if updatable Memory format, otherwise the standard compact format.</dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>upper bound on the serialized size of a KllSketch.</dd>
-</dl>
-</li>
-</ul>
 <a id="getCDF(float[],org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">
 <!--   -->
 </a>
@@ -656,42 +627,6 @@ implements <a href="../quantilescommon/QuantilesFloatsAPI.html" title="interface
 </dl>
 </li>
 </ul>
-<a id="getMaxItem()">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>getMaxItem</h4>
-<pre class="methodSignature">public&nbsp;float&nbsp;getMaxItem()</pre>
-<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../quantilescommon/QuantilesFloatsAPI.html#getMaxItem()">QuantilesFloatsAPI</a></code></span></div>
-<div class="block">Returns the maximum item of the stream. This is provided for convenience, but may be different from the largest
- item retained by the sketch algorithm.</div>
-<dl>
-<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
-<dd><code><a href="../quantilescommon/QuantilesFloatsAPI.html#getMaxItem()">getMaxItem</a></code>&nbsp;in interface&nbsp;<code><a href="../quantilescommon/QuantilesFloatsAPI.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesFloatsAPI</a></code></dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>the maximum item of the stream</dd>
-</dl>
-</li>
-</ul>
-<a id="getMinItem()">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>getMinItem</h4>
-<pre class="methodSignature">public&nbsp;float&nbsp;getMinItem()</pre>
-<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../quantilescommon/QuantilesFloatsAPI.html#getMinItem()">QuantilesFloatsAPI</a></code></span></div>
-<div class="block">Returns the minimum item of the stream. This is provided for convenience, but is distinct from the smallest
- item retained by the sketch algorithm.</div>
-<dl>
-<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
-<dd><code><a href="../quantilescommon/QuantilesFloatsAPI.html#getMinItem()">getMinItem</a></code>&nbsp;in interface&nbsp;<code><a href="../quantilescommon/QuantilesFloatsAPI.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesFloatsAPI</a></code></dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>the minimum item of the stream</dd>
-</dl>
-</li>
-</ul>
 <a id="getPartitionBoundaries(int,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">
 <!--   -->
 </a>
@@ -1006,6 +941,24 @@ implements <a href="../quantilescommon/QuantilesFloatsAPI.html" title="interface
 </dl>
 </li>
 </ul>
+<a id="merge(org.apache.datasketches.kll.KllSketch)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>merge</h4>
+<pre class="methodSignature">public final&nbsp;void&nbsp;merge&#8203;(<a href="KllSketch.html" title="class in org.apache.datasketches.kll">KllSketch</a>&nbsp;other)</pre>
+<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="KllSketch.html#merge(org.apache.datasketches.kll.KllSketch)">KllSketch</a></code></span></div>
+<div class="block">Merges another sketch into this one.
+ Attempting to merge a sketch of the wrong type will throw an exception.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="KllSketch.html#merge(org.apache.datasketches.kll.KllSketch)">merge</a></code>&nbsp;in class&nbsp;<code><a href="KllSketch.html" title="class in org.apache.datasketches.kll">KllSketch</a></code></dd>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>other</code> - sketch to merge into this one</dd>
+</dl>
+</li>
+</ul>
 <a id="reset()">
 <!--   -->
 </a>
diff --git a/docs/master/org/apache/datasketches/kll/KllFloatsSketchIterator.html b/docs/master/org/apache/datasketches/kll/KllFloatsSketchIterator.html
index 30450b86..6efa6825 100644
--- a/docs/master/org/apache/datasketches/kll/KllFloatsSketchIterator.html
+++ b/docs/master/org/apache/datasketches/kll/KllFloatsSketchIterator.html
@@ -136,7 +136,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <dd><code><a href="../quantilescommon/QuantilesFloatsSketchIterator.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesFloatsSketchIterator</a></code>, <code><a href="../quantilescommon/QuantilesSketchIterator.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesSketchIterator</a></code></dd>
 </dl>
 <hr>
-<pre>public class <span class="typeNameLabel">KllFloatsSketchIterator</span>
+<pre>public final class <span class="typeNameLabel">KllFloatsSketchIterator</span>
 extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a>
 implements <a href="../quantilescommon/QuantilesFloatsSketchIterator.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesFloatsSketchIterator</a></pre>
 <div class="block">Iterator over KllFloatsSketch. The order is not defined.</div>
diff --git a/docs/master/org/apache/datasketches/kll/KllFloatsSketchSortedView.html b/docs/master/org/apache/datasketches/kll/KllFloatsSketchSortedView.html
index 0eb47554..33108159 100644
--- a/docs/master/org/apache/datasketches/kll/KllFloatsSketchSortedView.html
+++ b/docs/master/org/apache/datasketches/kll/KllFloatsSketchSortedView.html
@@ -286,6 +286,23 @@ implements <a href="../quantilescommon/FloatsSortedView.html" title="interface i
 <!--   -->
 </a>
 <h3>Method Detail</h3>
+<a id="getCumulativeWeights()">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getCumulativeWeights</h4>
+<pre class="methodSignature">public&nbsp;long[]&nbsp;getCumulativeWeights()</pre>
+<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../quantilescommon/SortedView.html#getCumulativeWeights()">SortedView</a></code></span></div>
+<div class="block">Returns the array of cumulative weights</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="../quantilescommon/SortedView.html#getCumulativeWeights()">getCumulativeWeights</a></code>&nbsp;in interface&nbsp;<code><a href="../quantilescommon/SortedView.html" title="interface in org.apache.datasketches.quantilescommon">SortedView</a></code></dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the array of cumulative weights</dd>
+</dl>
+</li>
+</ul>
 <a id="getQuantile(double,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">
 <!--   -->
 </a>
@@ -312,6 +329,23 @@ implements <a href="../quantilescommon/FloatsSortedView.html" title="interface i
 </dl>
 </li>
 </ul>
+<a id="getQuantiles()">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getQuantiles</h4>
+<pre class="methodSignature">public&nbsp;float[]&nbsp;getQuantiles()</pre>
+<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../quantilescommon/FloatsSortedView.html#getQuantiles()">FloatsSortedView</a></code></span></div>
+<div class="block">Returns the array of quantiles</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="../quantilescommon/FloatsSortedView.html#getQuantiles()">getQuantiles</a></code>&nbsp;in interface&nbsp;<code><a href="../quantilescommon/FloatsSortedView.html" title="interface in org.apache.datasketches.quantilescommon">FloatsSortedView</a></code></dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the array of quantiles</dd>
+</dl>
+</li>
+</ul>
 <a id="getRank(float,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">
 <!--   -->
 </a>
@@ -335,40 +369,6 @@ implements <a href="../quantilescommon/FloatsSortedView.html" title="interface i
 </dl>
 </li>
 </ul>
-<a id="getCumulativeWeights()">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>getCumulativeWeights</h4>
-<pre class="methodSignature">public&nbsp;long[]&nbsp;getCumulativeWeights()</pre>
-<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../quantilescommon/SortedView.html#getCumulativeWeights()">SortedView</a></code></span></div>
-<div class="block">Returns the array of cumulative weights</div>
-<dl>
-<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
-<dd><code><a href="../quantilescommon/SortedView.html#getCumulativeWeights()">getCumulativeWeights</a></code>&nbsp;in interface&nbsp;<code><a href="../quantilescommon/SortedView.html" title="interface in org.apache.datasketches.quantilescommon">SortedView</a></code></dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>the array of cumulative weights</dd>
-</dl>
-</li>
-</ul>
-<a id="getQuantiles()">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>getQuantiles</h4>
-<pre class="methodSignature">public&nbsp;float[]&nbsp;getQuantiles()</pre>
-<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../quantilescommon/FloatsSortedView.html#getQuantiles()">FloatsSortedView</a></code></span></div>
-<div class="block">Returns the array of quantiles</div>
-<dl>
-<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
-<dd><code><a href="../quantilescommon/FloatsSortedView.html#getQuantiles()">getQuantiles</a></code>&nbsp;in interface&nbsp;<code><a href="../quantilescommon/FloatsSortedView.html" title="interface in org.apache.datasketches.quantilescommon">FloatsSortedView</a></code></dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>the array of quantiles</dd>
-</dl>
-</li>
-</ul>
 <a id="isEmpty()">
 <!--   -->
 </a>
diff --git a/docs/master/org/apache/datasketches/kll/KllFloatsSketchSortedViewIterator.html b/docs/master/org/apache/datasketches/kll/KllFloatsSketchSortedViewIterator.html
index 60687126..5029c88e 100644
--- a/docs/master/org/apache/datasketches/kll/KllFloatsSketchSortedViewIterator.html
+++ b/docs/master/org/apache/datasketches/kll/KllFloatsSketchSortedViewIterator.html
@@ -136,7 +136,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <dd><code><a href="../quantilescommon/FloatsSortedViewIterator.html" title="interface in org.apache.datasketches.quantilescommon">FloatsSortedViewIterator</a></code>, <code><a href="../quantilescommon/SortedViewIterator.html" title="interface in org.apache.datasketches.quantilescommon">SortedViewIterator</a></code></dd>
 </dl>
 <hr>
-<pre>public class <span class="typeNameLabel">KllFloatsSketchSortedViewIterator</span>
+<pre>public final class <span class="typeNameLabel">KllFloatsSketchSortedViewIterator</span>
 extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a>
 implements <a href="../quantilescommon/FloatsSortedViewIterator.html" title="interface in org.apache.datasketches.quantilescommon">FloatsSortedViewIterator</a></pre>
 <div class="block">Iterator over KllFloatsSketchSortedView</div>
diff --git a/docs/master/org/apache/datasketches/kll/KllDoublesSketch.html b/docs/master/org/apache/datasketches/kll/KllItemsSketch.html
similarity index 62%
copy from docs/master/org/apache/datasketches/kll/KllDoublesSketch.html
copy to docs/master/org/apache/datasketches/kll/KllItemsSketch.html
index 2a5e07be..30c56e1b 100644
--- a/docs/master/org/apache/datasketches/kll/KllDoublesSketch.html
+++ b/docs/master/org/apache/datasketches/kll/KllItemsSketch.html
@@ -3,7 +3,7 @@
 <html lang="en">
 <head>
 <!-- Generated by javadoc -->
-<title>KllDoublesSketch (datasketches-java 4.2.0-SNAPSHOT API)</title>
+<title>KllItemsSketch (datasketches-java 4.2.0-SNAPSHOT API)</title>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
 <link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
 <link rel="stylesheet" type="text/css" href="../../../../jquery/jquery-ui.min.css" title="Style">
@@ -21,13 +21,13 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="KllDoublesSketch (datasketches-java 4.2.0-SNAPSHOT API)";
+            parent.document.title="KllItemsSketch (datasketches-java 4.2.0-SNAPSHOT API)";
         }
     }
     catch(err) {
     }
 //-->
-var data = {"i0":10,"i1":10,"i2":9,"i3":10,"i4":10,"i5":10,"i6":10,"i7":10,"i8":10,"i9":10,"i10":10,"i11":10,"i12":10,"i13":10,"i14":10,"i15":9,"i16":10,"i17":9,"i18":9,"i19":9,"i20":9,"i21":10,"i22":10,"i23":10,"i24":9,"i25":9};
+var data = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10,"i7":10,"i8":10,"i9":10,"i10":10,"i11":10,"i12":9,"i13":10,"i14":10,"i15":9,"i16":9,"i17":10,"i18":10,"i19":10,"i20":9};
 var tabs = {65535:["t0","All Methods"],1:["t1","Static Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
 var altColor = "altColor";
 var rowColor = "rowColor";
@@ -54,7 +54,7 @@ loadScripts(document, 'script');</script>
 <li><a href="../../../../index.html">Overview</a></li>
 <li><a href="package-summary.html">Package</a></li>
 <li class="navBarCell1Rev">Class</li>
-<li><a href="class-use/KllDoublesSketch.html">Use</a></li>
+<li><a href="class-use/KllItemsSketch.html">Use</a></li>
 <li><a href="package-tree.html">Tree</a></li>
 <li><a href="../../../../deprecated-list.html">Deprecated</a></li>
 <li><a href="../../../../index-all.html">Index</a></li>
@@ -117,7 +117,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <main role="main">
 <div class="header">
 <div class="subTitle"><span class="packageLabelInType">Package</span>&nbsp;<a href="package-summary.html">org.apache.datasketches.kll</a></div>
-<h2 title="Class KllDoublesSketch" class="title">Class KllDoublesSketch</h2>
+<h2 title="Class KllItemsSketch" class="title">Class KllItemsSketch&lt;T&gt;</h2>
 </div>
 <div class="contentContainer">
 <ul class="inheritance">
@@ -127,7 +127,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <li><a href="KllSketch.html" title="class in org.apache.datasketches.kll">org.apache.datasketches.kll.KllSketch</a></li>
 <li>
 <ul class="inheritance">
-<li>org.apache.datasketches.kll.KllDoublesSketch</li>
+<li>org.apache.datasketches.kll.KllItemsSketch&lt;T&gt;</li>
 </ul>
 </li>
 </ul>
@@ -137,14 +137,20 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <ul class="blockList">
 <li class="blockList">
 <dl>
+<dt><span class="paramLabel">Type Parameters:</span></dt>
+<dd><code>T</code> - The sketch data type.</dd>
+</dl>
+<dl>
 <dt>All Implemented Interfaces:</dt>
-<dd><code><a href="../quantilescommon/QuantilesAPI.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesAPI</a></code>, <code><a href="../quantilescommon/QuantilesDoublesAPI.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesDoublesAPI</a></code></dd>
+<dd><code><a href="../quantilescommon/QuantilesAPI.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesAPI</a></code>, <code><a href="../quantilescommon/QuantilesGenericAPI.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesGenericAPI</a>&lt;T&gt;</code></dd>
 </dl>
 <hr>
-<pre>public abstract class <span class="typeNameLabel">KllDoublesSketch</span>
+<pre>public abstract class <span class="typeNameLabel">KllItemsSketch&lt;T&gt;</span>
 extends <a href="KllSketch.html" title="class in org.apache.datasketches.kll">KllSketch</a>
-implements <a href="../quantilescommon/QuantilesDoublesAPI.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesDoublesAPI</a></pre>
-<div class="block">This variation of the KllSketch implements primitive doubles.</div>
+implements <a href="../quantilescommon/QuantilesGenericAPI.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesGenericAPI</a>&lt;T&gt;</pre>
+<div class="block">This variation of the KllSketch implements generic data types. The user must provide
+ a suitable implementation of the <i>java.lang.Comparator</i> as well as an implementation of
+ the serializer / deserializer, <i>org.apache.datasketches.common.ArrayOfItemsSerDe</i>.</div>
 <dl>
 <dt><span class="seeLabel">See Also:</span></dt>
 <dd><a href="KllSketch.html" title="class in org.apache.datasketches.kll"><code>KllSketch</code></a></dd>
@@ -167,14 +173,14 @@ implements <a href="../quantilescommon/QuantilesDoublesAPI.html" title="interfac
 <!--   -->
 </a>
 <h3>Nested classes/interfaces inherited from class&nbsp;org.apache.datasketches.kll.<a href="KllSketch.html" title="class in org.apache.datasketches.kll">KllSketch</a></h3>
-<code><a href="KllSketch.SketchType.html" title="enum in org.apache.datasketches.kll">KllSketch.SketchType</a></code></li>
+<code><a href="KllSketch.SketchStructure.html" title="enum in org.apache.datasketches.kll">KllSketch.SketchStructure</a>, <a href="KllSketch.SketchType.html" title="enum in org.apache.datasketches.kll">KllSketch.SketchType</a></code></li>
 </ul>
 <ul class="blockList">
-<li class="blockList"><a id="nested.classes.inherited.from.class.org.apache.datasketches.quantilescommon.QuantilesDoublesAPI">
+<li class="blockList"><a id="nested.classes.inherited.from.class.org.apache.datasketches.quantilescommon.QuantilesGenericAPI">
 <!--   -->
 </a>
-<h3>Nested classes/interfaces inherited from interface&nbsp;org.apache.datasketches.quantilescommon.<a href="../quantilescommon/QuantilesDoublesAPI.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesDoublesAPI</a></h3>
-<code><a href="../quantilescommon/QuantilesDoublesAPI.DoublesPartitionBoundaries.html" title="class in org.apache.datasketches.quantilescommon">QuantilesDoublesAPI.DoublesPartitionBoundaries</a></code></li>
+<h3>Nested classes/interfaces inherited from interface&nbsp;org.apache.datasketches.quantilescommon.<a href="../quantilescommon/QuantilesGenericAPI.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesGenericAPI</a></h3>
+<code><a href="../quantilescommon/QuantilesGenericAPI.GenericPartitionBoundaries.html" title="class in org.apache.datasketches.quantilescommon">QuantilesGenericAPI.GenericPartitionBoundaries</a>&lt;<a href="../quantilescommon/QuantilesGenericAPI.GenericPartitionBoundaries.html" title="type parameter in QuantilesGenericAPI.GenericPartitionBoundaries">T</a>&gt;</code></li>
 </ul>
 </li>
 </ul>
@@ -193,6 +199,13 @@ implements <a href="../quantilescommon/QuantilesDoublesAPI.html" title="interfac
 <h3>Fields inherited from class&nbsp;org.apache.datasketches.kll.<a href="KllSketch.html" title="class in org.apache.datasketches.kll">KllSketch</a></h3>
 <code><a href="KllSketch.html#DEFAULT_K">DEFAULT_K</a>, <a href="KllSketch.html#MAX_K">MAX_K</a></code></li>
 </ul>
+<ul class="blockList">
+<li class="blockList"><a id="fields.inherited.from.class.org.apache.datasketches.quantilescommon.QuantilesAPI">
+<!--   -->
+</a>
+<h3>Fields inherited from interface&nbsp;org.apache.datasketches.quantilescommon.<a href="../quantilescommon/QuantilesAPI.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesAPI</a></h3>
+<code><a href="../quantilescommon/QuantilesAPI.html#EMPTY_MSG">EMPTY_MSG</a>, <a href="../quantilescommon/QuantilesAPI.html#MEM_REQ_SVR_NULL_MSG">MEM_REQ_SVR_NULL_MSG</a>, <a href="../quantilescommon/QuantilesAPI.html#NOT_SINGLE_ITEM_MSG">NOT_SINGLE_ITEM_MSG</a>, <a href="../quantilescommon/QuantilesAPI.html#TGT_IS_READ_ONLY_MSG">TGT_IS_READ_ONLY_MSG</a>, <a href="../quantilescommon/QuantilesAPI.html#UNSUPPORTED_MSG">UNSUPPORTED_MSG</a></code></li>
+</ul>
 </li>
 </ul>
 </section>
@@ -212,7 +225,7 @@ implements <a href="../quantilescommon/QuantilesDoublesAPI.html" title="interfac
 </tr>
 <tr id="i0" class="altColor">
 <td class="colFirst"><code>double[]</code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getCDF(double%5B%5D,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">getCDF</a></span>&#8203;(double[]&nbsp;splitPoints,
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getCDF(T%5B%5D,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">getCDF</a></span>&#8203;(<a href="KllItemsSketch.html" title="type parameter in KllItemsSketch">T</a>[]&nbsp;splitPoints,
       <a href="../quantilescommon/QuantileSearchCriteria.html" title="enum in org.apache.datasketches.quantilescommon">QuantileSearchCriteria</a>&nbsp;searchCrit)</code></th>
 <td class="colLast">
 <div class="block">Returns an approximation to the Cumulative Distribution Function (CDF) of the input stream
@@ -221,40 +234,18 @@ implements <a href="../quantilescommon/QuantilesDoublesAPI.html" title="interfac
 </td>
 </tr>
 <tr id="i1" class="rowColor">
-<td class="colFirst"><code>double</code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getMaxItem()">getMaxItem</a></span>()</code></th>
-<td class="colLast">
-<div class="block">Returns the maximum item of the stream.</div>
-</td>
-</tr>
-<tr id="i2" class="altColor">
-<td class="colFirst"><code>static int</code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getMaxSerializedSizeBytes(int,long,boolean)">getMaxSerializedSizeBytes</a></span>&#8203;(int&nbsp;k,
-                         long&nbsp;n,
-                         boolean&nbsp;updatableMemoryFormat)</code></th>
-<td class="colLast">
-<div class="block">Returns upper bound on the serialized size of a KllDoublesSketch given the following parameters.</div>
-</td>
-</tr>
-<tr id="i3" class="rowColor">
-<td class="colFirst"><code>double</code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getMinItem()">getMinItem</a></span>()</code></th>
-<td class="colLast">
-<div class="block">Returns the minimum item of the stream.</div>
-</td>
-</tr>
-<tr id="i4" class="altColor">
-<td class="colFirst"><code><a href="../quantilescommon/QuantilesDoublesAPI.DoublesPartitionBoundaries.html" title="class in org.apache.datasketches.quantilescommon">QuantilesDoublesAPI.DoublesPartitionBoundaries</a></code></td>
+<td class="colFirst"><code><a href="../quantilescommon/QuantilesGenericAPI.GenericPartitionBoundaries.html" title="class in org.apache.datasketches.quantilescommon">QuantilesGenericAPI.GenericPartitionBoundaries</a>&lt;<a href="KllItemsSketch.html" title="type parameter in KllItemsSketch">T</a>&gt;</code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getPartitionBoundaries(int,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">getPartitionBoundaries</a></span>&#8203;(int&nbsp;numEquallyWeighted,
                       <a href="../quantilescommon/QuantileSearchCriteria.html" title="enum in org.apache.datasketches.quantilescommon">QuantileSearchCriteria</a>&nbsp;searchCrit)</code></th>
 <td class="colLast">
-<div class="block">This method returns an instance of <a href="../quantilescommon/QuantilesDoublesAPI.DoublesPartitionBoundaries.html" title="class in org.apache.datasketches.quantilescommon"><code>DoublesPartitionBoundaries</code></a> which provides
+<div class="block">This method returns an instance of
+ <a href="../quantilescommon/QuantilesGenericAPI.GenericPartitionBoundaries.html" title="class in org.apache.datasketches.quantilescommon"><code>GenericPartitionBoundaries</code></a> which provides
  sufficient information for the user to create the given number of equally weighted partitions.</div>
 </td>
 </tr>
-<tr id="i5" class="rowColor">
+<tr id="i2" class="altColor">
 <td class="colFirst"><code>double[]</code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getPMF(double%5B%5D,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">getPMF</a></span>&#8203;(double[]&nbsp;splitPoints,
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getPMF(T%5B%5D,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">getPMF</a></span>&#8203;(<a href="KllItemsSketch.html" title="type parameter in KllItemsSketch">T</a>[]&nbsp;splitPoints,
       <a href="../quantilescommon/QuantileSearchCriteria.html" title="enum in org.apache.datasketches.quantilescommon">QuantileSearchCriteria</a>&nbsp;searchCrit)</code></th>
 <td class="colLast">
 <div class="block">Returns an approximation to the Probability Mass Function (PMF) of the input stream
@@ -262,47 +253,47 @@ implements <a href="../quantilescommon/QuantilesDoublesAPI.html" title="interfac
  given a set of splitPoints.</div>
 </td>
 </tr>
-<tr id="i6" class="altColor">
-<td class="colFirst"><code>double</code></td>
+<tr id="i3" class="rowColor">
+<td class="colFirst"><code><a href="KllItemsSketch.html" title="type parameter in KllItemsSketch">T</a></code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getQuantile(double,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">getQuantile</a></span>&#8203;(double&nbsp;rank,
            <a href="../quantilescommon/QuantileSearchCriteria.html" title="enum in org.apache.datasketches.quantilescommon">QuantileSearchCriteria</a>&nbsp;searchCrit)</code></th>
 <td class="colLast">
 <div class="block">Gets the approximate quantile of the given normalized rank and the given search criterion.</div>
 </td>
 </tr>
-<tr id="i7" class="rowColor">
-<td class="colFirst"><code>double</code></td>
+<tr id="i4" class="altColor">
+<td class="colFirst"><code><a href="KllItemsSketch.html" title="type parameter in KllItemsSketch">T</a></code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getQuantileLowerBound(double)">getQuantileLowerBound</a></span>&#8203;(double&nbsp;rank)</code></th>
 <td class="colLast">
 <div class="block">Gets the lower bound of the quantile confidence interval in which the quantile of the
  given rank exists.</div>
 </td>
 </tr>
-<tr id="i8" class="altColor">
-<td class="colFirst"><code>double[]</code></td>
+<tr id="i5" class="rowColor">
+<td class="colFirst"><code><a href="KllItemsSketch.html" title="type parameter in KllItemsSketch">T</a>[]</code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getQuantiles(double%5B%5D,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">getQuantiles</a></span>&#8203;(double[]&nbsp;ranks,
             <a href="../quantilescommon/QuantileSearchCriteria.html" title="enum in org.apache.datasketches.quantilescommon">QuantileSearchCriteria</a>&nbsp;searchCrit)</code></th>
 <td class="colLast">
 <div class="block">Gets an array of quantiles from the given array of normalized ranks.</div>
 </td>
 </tr>
-<tr id="i9" class="rowColor">
-<td class="colFirst"><code>double</code></td>
+<tr id="i6" class="altColor">
+<td class="colFirst"><code><a href="KllItemsSketch.html" title="type parameter in KllItemsSketch">T</a></code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getQuantileUpperBound(double)">getQuantileUpperBound</a></span>&#8203;(double&nbsp;rank)</code></th>
 <td class="colLast">
 <div class="block">Gets the upper bound of the quantile confidence interval in which the true quantile of the
  given rank exists.</div>
 </td>
 </tr>
-<tr id="i10" class="altColor">
+<tr id="i7" class="rowColor">
 <td class="colFirst"><code>double</code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getRank(double,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">getRank</a></span>&#8203;(double&nbsp;quantile,
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getRank(T,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">getRank</a></span>&#8203;(<a href="KllItemsSketch.html" title="type parameter in KllItemsSketch">T</a>&nbsp;quantile,
        <a href="../quantilescommon/QuantileSearchCriteria.html" title="enum in org.apache.datasketches.quantilescommon">QuantileSearchCriteria</a>&nbsp;searchCrit)</code></th>
 <td class="colLast">
 <div class="block">Gets the normalized rank corresponding to the given a quantile.</div>
 </td>
 </tr>
-<tr id="i11" class="rowColor">
+<tr id="i8" class="altColor">
 <td class="colFirst"><code>double</code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getRankLowerBound(double)">getRankLowerBound</a></span>&#8203;(double&nbsp;rank)</code></th>
 <td class="colLast">
@@ -310,16 +301,16 @@ implements <a href="../quantilescommon/QuantilesDoublesAPI.html" title="interfac
  given rank exists.</div>
 </td>
 </tr>
-<tr id="i12" class="altColor">
+<tr id="i9" class="rowColor">
 <td class="colFirst"><code>double[]</code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getRanks(double%5B%5D,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">getRanks</a></span>&#8203;(double[]&nbsp;quantiles,
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getRanks(T%5B%5D,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">getRanks</a></span>&#8203;(<a href="KllItemsSketch.html" title="type parameter in KllItemsSketch">T</a>[]&nbsp;quantiles,
         <a href="../quantilescommon/QuantileSearchCriteria.html" title="enum in org.apache.datasketches.quantilescommon">QuantileSearchCriteria</a>&nbsp;searchCrit)</code></th>
 <td class="colLast">
 <div class="block">Gets an array of normalized ranks corresponding to the given array of quantiles and the given
  search criterion.</div>
 </td>
 </tr>
-<tr id="i13" class="rowColor">
+<tr id="i10" class="altColor">
 <td class="colFirst"><code>double</code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getRankUpperBound(double)">getRankUpperBound</a></span>&#8203;(double&nbsp;rank)</code></th>
 <td class="colLast">
@@ -327,94 +318,80 @@ implements <a href="../quantilescommon/QuantilesDoublesAPI.html" title="interfac
  given rank exists.</div>
 </td>
 </tr>
-<tr id="i14" class="altColor">
-<td class="colFirst"><code><a href="../quantilescommon/DoublesSortedView.html" title="interface in org.apache.datasketches.quantilescommon">DoublesSortedView</a></code></td>
+<tr id="i11" class="rowColor">
+<td class="colFirst"><code><a href="KllItemsSketchSortedView.html" title="class in org.apache.datasketches.kll">KllItemsSketchSortedView</a>&lt;<a href="KllItemsSketch.html" title="type parameter in KllItemsSketch">T</a>&gt;</code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getSortedView()">getSortedView</a></span>()</code></th>
 <td class="colLast">
 <div class="block">Gets the sorted view of this sketch</div>
 </td>
 </tr>
-<tr id="i15" class="rowColor">
-<td class="colFirst"><code>static <a href="KllDoublesSketch.html" title="class in org.apache.datasketches.kll">KllDoublesSketch</a></code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#heapify(org.apache.datasketches.memory.Memory)">heapify</a></span>&#8203;(org.apache.datasketches.memory.Memory&nbsp;srcMem)</code></th>
+<tr id="i12" class="altColor">
+<td class="colFirst"><code>static &lt;T&gt;&nbsp;<a href="KllItemsSketch.html" title="class in org.apache.datasketches.kll">KllItemsSketch</a>&lt;T&gt;</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#heapify(org.apache.datasketches.memory.Memory,java.util.Comparator,org.apache.datasketches.common.ArrayOfItemsSerDe)">heapify</a></span>&#8203;(org.apache.datasketches.memory.Memory&nbsp;srcMem,
+       <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Comparator.html?is-external=true" title="class or interface in java.util" class="externalLink">Comparator</a>&lt;? super T&gt;&nbsp;comparator,
+       <a href="../common/ArrayOfItemsSerDe.html" title="class in org.apache.datasketches.common">ArrayOfItemsSerDe</a>&lt;T&gt;&nbsp;serDe)</code></th>
 <td class="colLast">
 <div class="block">Factory heapify takes a compact sketch image in Memory and instantiates an on-heap sketch.</div>
 </td>
 </tr>
-<tr id="i16" class="altColor">
-<td class="colFirst"><code><a href="../quantilescommon/QuantilesDoublesSketchIterator.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesDoublesSketchIterator</a></code></td>
+<tr id="i13" class="rowColor">
+<td class="colFirst"><code><a href="../quantilescommon/QuantilesGenericSketchIterator.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesGenericSketchIterator</a>&lt;<a href="KllItemsSketch.html" title="type parameter in KllItemsSketch">T</a>&gt;</code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#iterator()">iterator</a></span>()</code></th>
 <td class="colLast">
 <div class="block">Gets the iterator for this sketch, which is not sorted.</div>
 </td>
 </tr>
-<tr id="i17" class="rowColor">
-<td class="colFirst"><code>static <a href="KllDoublesSketch.html" title="class in org.apache.datasketches.kll">KllDoublesSketch</a></code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#newDirectInstance(int,org.apache.datasketches.memory.WritableMemory,org.apache.datasketches.memory.MemoryRequestServer)">newDirectInstance</a></span>&#8203;(int&nbsp;k,
-                 org.apache.datasketches.memory.WritableMemory&nbsp;dstMem,
-                 org.apache.datasketches.memory.MemoryRequestServer&nbsp;memReqSvr)</code></th>
+<tr id="i14" class="altColor">
+<td class="colFirst"><code>void</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#merge(org.apache.datasketches.kll.KllSketch)">merge</a></span>&#8203;(<a href="KllSketch.html" title="class in org.apache.datasketches.kll">KllSketch</a>&nbsp;other)</code></th>
 <td class="colLast">
-<div class="block">Create a new direct instance of this sketch with a given <em>k</em>.</div>
+<div class="block">Merges another sketch into this one.</div>
 </td>
 </tr>
-<tr id="i18" class="altColor">
-<td class="colFirst"><code>static <a href="KllDoublesSketch.html" title="class in org.apache.datasketches.kll">KllDoublesSketch</a></code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#newDirectInstance(org.apache.datasketches.memory.WritableMemory,org.apache.datasketches.memory.MemoryRequestServer)">newDirectInstance</a></span>&#8203;(org.apache.datasketches.memory.WritableMemory&nbsp;dstMem,
-                 org.apache.datasketches.memory.MemoryRequestServer&nbsp;memReqSvr)</code></th>
+<tr id="i15" class="rowColor">
+<td class="colFirst"><code>static &lt;T&gt;&nbsp;<a href="KllItemsSketch.html" title="class in org.apache.datasketches.kll">KllItemsSketch</a>&lt;T&gt;</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#newHeapInstance(int,java.util.Comparator,org.apache.datasketches.common.ArrayOfItemsSerDe)">newHeapInstance</a></span>&#8203;(int&nbsp;k,
+               <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Comparator.html?is-external=true" title="class or interface in java.util" class="externalLink">Comparator</a>&lt;? super T&gt;&nbsp;comparator,
+               <a href="../common/ArrayOfItemsSerDe.html" title="class in org.apache.datasketches.common">ArrayOfItemsSerDe</a>&lt;T&gt;&nbsp;serDe)</code></th>
 <td class="colLast">
-<div class="block">Create a new direct instance of this sketch with the default <em>k</em>.</div>
+<div class="block">Create a new heap instance of this sketch with a given parameter <em>k</em>.</div>
 </td>
 </tr>
-<tr id="i19" class="rowColor">
-<td class="colFirst"><code>static <a href="KllDoublesSketch.html" title="class in org.apache.datasketches.kll">KllDoublesSketch</a></code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#newHeapInstance()">newHeapInstance</a></span>()</code></th>
+<tr id="i16" class="altColor">
+<td class="colFirst"><code>static &lt;T&gt;&nbsp;<a href="KllItemsSketch.html" title="class in org.apache.datasketches.kll">KllItemsSketch</a>&lt;T&gt;</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#newHeapInstance(java.util.Comparator,org.apache.datasketches.common.ArrayOfItemsSerDe)">newHeapInstance</a></span>&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Comparator.html?is-external=true" title="class or interface in java.util" class="externalLink">Comparator</a>&lt;? super T&gt;&nbsp;comparator,
+               <a href="../common/ArrayOfItemsSerDe.html" title="class in org.apache.datasketches.common">ArrayOfItemsSerDe</a>&lt;T&gt;&nbsp;serDe)</code></th>
 <td class="colLast">
 <div class="block">Create a new heap instance of this sketch with the default <em>k = 200</em>.</div>
 </td>
 </tr>
-<tr id="i20" class="altColor">
-<td class="colFirst"><code>static <a href="KllDoublesSketch.html" title="class in org.apache.datasketches.kll">KllDoublesSketch</a></code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#newHeapInstance(int)">newHeapInstance</a></span>&#8203;(int&nbsp;k)</code></th>
-<td class="colLast">
-<div class="block">Create a new heap instance of this sketch with a given parameter <em>k</em>.</div>
-</td>
-</tr>
-<tr id="i21" class="rowColor">
+<tr id="i17" class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#reset()">reset</a></span>()</code></th>
 <td class="colLast">
 <div class="block">Resets this sketch to the empty state.</div>
 </td>
 </tr>
-<tr id="i22" class="altColor">
+<tr id="i18" class="altColor">
 <td class="colFirst"><code>byte[]</code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#toByteArray()">toByteArray</a></span>()</code></th>
-<td class="colLast">
-<div class="block">Returns a byte array representation of this sketch.</div>
-</td>
+<td class="colLast">&nbsp;</td>
 </tr>
-<tr id="i23" class="rowColor">
+<tr id="i19" class="rowColor">
 <td class="colFirst"><code>void</code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#update(double)">update</a></span>&#8203;(double&nbsp;item)</code></th>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#update(T)">update</a></span>&#8203;(<a href="KllItemsSketch.html" title="type parameter in KllItemsSketch">T</a>&nbsp;item)</code></th>
 <td class="colLast">
 <div class="block">Updates this sketch with the given item.</div>
 </td>
 </tr>
-<tr id="i24" class="altColor">
-<td class="colFirst"><code>static <a href="KllDoublesSketch.html" title="class in org.apache.datasketches.kll">KllDoublesSketch</a></code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#wrap(org.apache.datasketches.memory.Memory)">wrap</a></span>&#8203;(org.apache.datasketches.memory.Memory&nbsp;srcMem)</code></th>
-<td class="colLast">
-<div class="block">Wrap a sketch around the given read only compact source Memory containing sketch data
- that originated from this sketch.</div>
-</td>
-</tr>
-<tr id="i25" class="rowColor">
-<td class="colFirst"><code>static <a href="KllDoublesSketch.html" title="class in org.apache.datasketches.kll">KllDoublesSketch</a></code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#writableWrap(org.apache.datasketches.memory.WritableMemory,org.apache.datasketches.memory.MemoryRequestServer)">writableWrap</a></span>&#8203;(org.apache.datasketches.memory.WritableMemory&nbsp;srcMem,
-            org.apache.datasketches.memory.MemoryRequestServer&nbsp;memReqSvr)</code></th>
+<tr id="i20" class="altColor">
+<td class="colFirst"><code>static &lt;T&gt;&nbsp;<a href="KllItemsSketch.html" title="class in org.apache.datasketches.kll">KllItemsSketch</a>&lt;T&gt;</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#wrap(org.apache.datasketches.memory.Memory,java.util.Comparator,org.apache.datasketches.common.ArrayOfItemsSerDe)">wrap</a></span>&#8203;(org.apache.datasketches.memory.Memory&nbsp;srcMem,
+    <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Comparator.html?is-external=true" title="class or interface in java.util" class="externalLink">Comparator</a>&lt;? super T&gt;&nbsp;comparator,
+    <a href="../common/ArrayOfItemsSerDe.html" title="class in org.apache.datasketches.common">ArrayOfItemsSerDe</a>&lt;T&gt;&nbsp;serDe)</code></th>
 <td class="colLast">
-<div class="block">Wrap a sketch around the given source Writable Memory containing sketch data
- that originated from this sketch.</div>
+<div class="block">Constructs a thin wrapper on the heap around a Memory (or WritableMemory) already initialized with a
+ validated sketch image of a type T consistent with the given comparator and serDe.</div>
 </td>
 </tr>
 </table>
@@ -423,7 +400,7 @@ implements <a href="../quantilescommon/QuantilesDoublesAPI.html" title="interfac
 <!--   -->
 </a>
 <h3>Methods inherited from class&nbsp;org.apache.datasketches.kll.<a href="KllSketch.html" title="class in org.apache.datasketches.kll">KllSketch</a></h3>
-<code><a href="KllSketch.html#getCurrentCompactSerializedSizeBytes()">getCurrentCompactSerializedSizeBytes</a>, <a href="KllSketch.html#getCurrentUpdatableSerializedSizeBytes()">getCurrentUpdatableSerializedSizeBytes</a>, <a href="KllSketch.html#getK()">getK</a>, <a href="KllSketch.html#getKFromEpsilon(double,boolean)">getKFromEpsilon</a>, <a href="KllSketch.html#getMaxSerializedSizeBytes(int,long,org.apache.datasketches.kll.KllSketch.SketchType,boolean)">getMaxSerializedSizeBytes</a>, < [...]
+<code><a href="KllSketch.html#getKFromEpsilon(double,boolean)">getKFromEpsilon</a>, <a href="KllSketch.html#getMaxSerializedSizeBytes(int,long,org.apache.datasketches.kll.KllSketch.SketchType,boolean)">getMaxSerializedSizeBytes</a>, <a href="KllSketch.html#getNormalizedRankError(boolean)">getNormalizedRankError</a>, <a href="KllSketch.html#getNormalizedRankError(int,boolean)">getNormalizedRankError</a>, <a href="KllSketch.html#getNumRetained()">getNumRetained</a>, <a href="KllSketch.html [...]
 </ul>
 <ul class="blockList">
 <li class="blockList"><a id="methods.inherited.from.class.java.lang.Object">
@@ -440,11 +417,11 @@ implements <a href="../quantilescommon/QuantilesDoublesAPI.html" title="interfac
 <code><a href="../quantilescommon/QuantilesAPI.html#getK()">getK</a>, <a href="../quantilescommon/QuantilesAPI.html#getN()">getN</a>, <a href="../quantilescommon/QuantilesAPI.html#getNumRetained()">getNumRetained</a>, <a href="../quantilescommon/QuantilesAPI.html#hasMemory()">hasMemory</a>, <a href="../quantilescommon/QuantilesAPI.html#isDirect()">isDirect</a>, <a href="../quantilescommon/QuantilesAPI.html#isEmpty()">isEmpty</a>, <a href="../quantilescommon/QuantilesAPI.html#isEstimation [...]
 </ul>
 <ul class="blockList">
-<li class="blockList"><a id="methods.inherited.from.class.org.apache.datasketches.quantilescommon.QuantilesDoublesAPI">
+<li class="blockList"><a id="methods.inherited.from.class.org.apache.datasketches.quantilescommon.QuantilesGenericAPI">
 <!--   -->
 </a>
-<h3>Methods inherited from interface&nbsp;org.apache.datasketches.quantilescommon.<a href="../quantilescommon/QuantilesDoublesAPI.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesDoublesAPI</a></h3>
-<code><a href="../quantilescommon/QuantilesDoublesAPI.html#getCDF(double%5B%5D)">getCDF</a>, <a href="../quantilescommon/QuantilesDoublesAPI.html#getPartitionBoundaries(int)">getPartitionBoundaries</a>, <a href="../quantilescommon/QuantilesDoublesAPI.html#getPMF(double%5B%5D)">getPMF</a>, <a href="../quantilescommon/QuantilesDoublesAPI.html#getQuantile(double)">getQuantile</a>, <a href="../quantilescommon/QuantilesDoublesAPI.html#getQuantiles(double%5B%5D)">getQuantiles</a>, <a href="../ [...]
+<h3>Methods inherited from interface&nbsp;org.apache.datasketches.quantilescommon.<a href="../quantilescommon/QuantilesGenericAPI.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesGenericAPI</a></h3>
+<code><a href="../quantilescommon/QuantilesGenericAPI.html#getCDF(T%5B%5D)">getCDF</a>, <a href="../quantilescommon/QuantilesGenericAPI.html#getMaxItem()">getMaxItem</a>, <a href="../quantilescommon/QuantilesGenericAPI.html#getMinItem()">getMinItem</a>, <a href="../quantilescommon/QuantilesGenericAPI.html#getPartitionBoundaries(int)">getPartitionBoundaries</a>, <a href="../quantilescommon/QuantilesGenericAPI.html#getPMF(T%5B%5D)">getPMF</a>, <a href="../quantilescommon/QuantilesGenericAP [...]
 </ul>
 </li>
 </ul>
@@ -462,164 +439,114 @@ implements <a href="../quantilescommon/QuantilesDoublesAPI.html" title="interfac
 <!--   -->
 </a>
 <h3>Method Detail</h3>
-<a id="heapify(org.apache.datasketches.memory.Memory)">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>heapify</h4>
-<pre class="methodSignature">public static&nbsp;<a href="KllDoublesSketch.html" title="class in org.apache.datasketches.kll">KllDoublesSketch</a>&nbsp;heapify&#8203;(org.apache.datasketches.memory.Memory&nbsp;srcMem)</pre>
-<div class="block">Factory heapify takes a compact sketch image in Memory and instantiates an on-heap sketch.
- The resulting sketch will not retain any link to the source Memory.</div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>srcMem</code> - a compact Memory image of a sketch serialized by this sketch.
- <a href="../../../../resources/dictionary.html#mem">See Memory</a></dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>a heap-based sketch based on the given Memory.</dd>
-</dl>
-</li>
-</ul>
-<a id="newDirectInstance(org.apache.datasketches.memory.WritableMemory,org.apache.datasketches.memory.MemoryRequestServer)">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>newDirectInstance</h4>
-<pre class="methodSignature">public static&nbsp;<a href="KllDoublesSketch.html" title="class in org.apache.datasketches.kll">KllDoublesSketch</a>&nbsp;newDirectInstance&#8203;(org.apache.datasketches.memory.WritableMemory&nbsp;dstMem,
-                                                 org.apache.datasketches.memory.MemoryRequestServer&nbsp;memReqSvr)</pre>
-<div class="block">Create a new direct instance of this sketch with the default <em>k</em>.
- The default <em>k</em> = 200 results in a normalized rank error of about
- 1.65%. Larger <em>k</em> will have smaller error but the sketch will be larger (and slower).</div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>dstMem</code> - the given destination WritableMemory object for use by the sketch</dd>
-<dd><code>memReqSvr</code> - the given MemoryRequestServer to request a larger WritableMemory</dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>a new direct instance of this sketch</dd>
-</dl>
-</li>
-</ul>
-<a id="newDirectInstance(int,org.apache.datasketches.memory.WritableMemory,org.apache.datasketches.memory.MemoryRequestServer)">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>newDirectInstance</h4>
-<pre class="methodSignature">public static&nbsp;<a href="KllDoublesSketch.html" title="class in org.apache.datasketches.kll">KllDoublesSketch</a>&nbsp;newDirectInstance&#8203;(int&nbsp;k,
-                                                 org.apache.datasketches.memory.WritableMemory&nbsp;dstMem,
-                                                 org.apache.datasketches.memory.MemoryRequestServer&nbsp;memReqSvr)</pre>
-<div class="block">Create a new direct instance of this sketch with a given <em>k</em>.</div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>k</code> - parameter that controls size of the sketch and accuracy of estimates.</dd>
-<dd><code>dstMem</code> - the given destination WritableMemory object for use by the sketch</dd>
-<dd><code>memReqSvr</code> - the given MemoryRequestServer to request a larger WritableMemory</dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>a new direct instance of this sketch</dd>
-</dl>
-</li>
-</ul>
-<a id="newHeapInstance()">
+<a id="newHeapInstance(java.util.Comparator,org.apache.datasketches.common.ArrayOfItemsSerDe)">
 <!--   -->
 </a>
 <ul class="blockList">
 <li class="blockList">
 <h4>newHeapInstance</h4>
-<pre class="methodSignature">public static&nbsp;<a href="KllDoublesSketch.html" title="class in org.apache.datasketches.kll">KllDoublesSketch</a>&nbsp;newHeapInstance()</pre>
+<pre class="methodSignature">public static&nbsp;&lt;T&gt;&nbsp;<a href="KllItemsSketch.html" title="class in org.apache.datasketches.kll">KllItemsSketch</a>&lt;T&gt;&nbsp;newHeapInstance&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Comparator.html?is-external=true" title="class or interface in java.util" class="externalLink">Comparator</a>&lt;? super T&gt;&nbsp;comparator,
+                                                    <a href="../common/ArrayOfItemsSerDe.html" title="class in org.apache.datasketches.common">ArrayOfItemsSerDe</a>&lt;T&gt;&nbsp;serDe)</pre>
 <div class="block">Create a new heap instance of this sketch with the default <em>k = 200</em>.
  The default <em>k</em> = 200 results in a normalized rank error of about
  1.65%. Larger K will have smaller error but the sketch will be larger (and slower).</div>
 <dl>
+<dt><span class="paramLabel">Type Parameters:</span></dt>
+<dd><code>T</code> - The sketch data type.</dd>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>comparator</code> - to compare items</dd>
+<dd><code>serDe</code> - Serializer / deserializer for an array of items, <i>T[]</i>.</dd>
 <dt><span class="returnLabel">Returns:</span></dt>
-<dd>new KllDoublesSketch on the Java heap.</dd>
+<dd>new KllItemsSketch on the Java heap.</dd>
 </dl>
 </li>
 </ul>
-<a id="newHeapInstance(int)">
+<a id="newHeapInstance(int,java.util.Comparator,org.apache.datasketches.common.ArrayOfItemsSerDe)">
 <!--   -->
 </a>
 <ul class="blockList">
 <li class="blockList">
 <h4>newHeapInstance</h4>
-<pre class="methodSignature">public static&nbsp;<a href="KllDoublesSketch.html" title="class in org.apache.datasketches.kll">KllDoublesSketch</a>&nbsp;newHeapInstance&#8203;(int&nbsp;k)</pre>
+<pre class="methodSignature">public static&nbsp;&lt;T&gt;&nbsp;<a href="KllItemsSketch.html" title="class in org.apache.datasketches.kll">KllItemsSketch</a>&lt;T&gt;&nbsp;newHeapInstance&#8203;(int&nbsp;k,
+                                                    <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Comparator.html?is-external=true" title="class or interface in java.util" class="externalLink">Comparator</a>&lt;? super T&gt;&nbsp;comparator,
+                                                    <a href="../common/ArrayOfItemsSerDe.html" title="class in org.apache.datasketches.common">ArrayOfItemsSerDe</a>&lt;T&gt;&nbsp;serDe)</pre>
 <div class="block">Create a new heap instance of this sketch with a given parameter <em>k</em>.
- <em>k</em> can be between 8, inclusive, and 65535, inclusive.
+ <em>k</em> can be between DEFAULT_M and 65535, inclusive.
  The default <em>k</em> = 200 results in a normalized rank error of about
  1.65%. Larger K will have smaller error but the sketch will be larger (and slower).</div>
 <dl>
+<dt><span class="paramLabel">Type Parameters:</span></dt>
+<dd><code>T</code> - The sketch data type</dd>
 <dt><span class="paramLabel">Parameters:</span></dt>
 <dd><code>k</code> - parameter that controls size of the sketch and accuracy of estimates.</dd>
+<dd><code>comparator</code> - to compare items</dd>
+<dd><code>serDe</code> - Serializer / deserializer for items of type <i>T</i> and <i>T[]</i>.</dd>
 <dt><span class="returnLabel">Returns:</span></dt>
-<dd>new KllDoublesSketch on the Java heap.</dd>
+<dd>new KllItemsSketch on the heap.</dd>
 </dl>
 </li>
 </ul>
-<a id="wrap(org.apache.datasketches.memory.Memory)">
+<a id="heapify(org.apache.datasketches.memory.Memory,java.util.Comparator,org.apache.datasketches.common.ArrayOfItemsSerDe)">
 <!--   -->
 </a>
 <ul class="blockList">
 <li class="blockList">
-<h4>wrap</h4>
-<pre class="methodSignature">public static&nbsp;<a href="KllDoublesSketch.html" title="class in org.apache.datasketches.kll">KllDoublesSketch</a>&nbsp;wrap&#8203;(org.apache.datasketches.memory.Memory&nbsp;srcMem)</pre>
-<div class="block">Wrap a sketch around the given read only compact source Memory containing sketch data
- that originated from this sketch.</div>
+<h4>heapify</h4>
+<pre class="methodSignature">public static&nbsp;&lt;T&gt;&nbsp;<a href="KllItemsSketch.html" title="class in org.apache.datasketches.kll">KllItemsSketch</a>&lt;T&gt;&nbsp;heapify&#8203;(org.apache.datasketches.memory.Memory&nbsp;srcMem,
+                                            <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Comparator.html?is-external=true" title="class or interface in java.util" class="externalLink">Comparator</a>&lt;? super T&gt;&nbsp;comparator,
+                                            <a href="../common/ArrayOfItemsSerDe.html" title="class in org.apache.datasketches.common">ArrayOfItemsSerDe</a>&lt;T&gt;&nbsp;serDe)</pre>
+<div class="block">Factory heapify takes a compact sketch image in Memory and instantiates an on-heap sketch.
+ The resulting sketch will not retain any link to the source Memory.</div>
 <dl>
+<dt><span class="paramLabel">Type Parameters:</span></dt>
+<dd><code>T</code> - The sketch data type</dd>
 <dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>srcMem</code> - the read only source Memory</dd>
+<dd><code>srcMem</code> - a compact Memory image of a sketch serialized by this sketch and of the same type of T.</dd>
+<dd><code>comparator</code> - to compare items</dd>
+<dd><code>serDe</code> - Serializer / deserializer for items of type <i>T</i> and <i>T[]</i>.</dd>
 <dt><span class="returnLabel">Returns:</span></dt>
-<dd>instance of this sketch</dd>
+<dd>a heap-based sketch based on the given Memory.</dd>
 </dl>
 </li>
 </ul>
-<a id="writableWrap(org.apache.datasketches.memory.WritableMemory,org.apache.datasketches.memory.MemoryRequestServer)">
+<a id="wrap(org.apache.datasketches.memory.Memory,java.util.Comparator,org.apache.datasketches.common.ArrayOfItemsSerDe)">
 <!--   -->
 </a>
 <ul class="blockList">
 <li class="blockList">
-<h4>writableWrap</h4>
-<pre class="methodSignature">public static&nbsp;<a href="KllDoublesSketch.html" title="class in org.apache.datasketches.kll">KllDoublesSketch</a>&nbsp;writableWrap&#8203;(org.apache.datasketches.memory.WritableMemory&nbsp;srcMem,
-                                            org.apache.datasketches.memory.MemoryRequestServer&nbsp;memReqSvr)</pre>
-<div class="block">Wrap a sketch around the given source Writable Memory containing sketch data
- that originated from this sketch.</div>
+<h4>wrap</h4>
+<pre class="methodSignature">public static&nbsp;&lt;T&gt;&nbsp;<a href="KllItemsSketch.html" title="class in org.apache.datasketches.kll">KllItemsSketch</a>&lt;T&gt;&nbsp;wrap&#8203;(org.apache.datasketches.memory.Memory&nbsp;srcMem,
+                                         <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Comparator.html?is-external=true" title="class or interface in java.util" class="externalLink">Comparator</a>&lt;? super T&gt;&nbsp;comparator,
+                                         <a href="../common/ArrayOfItemsSerDe.html" title="class in org.apache.datasketches.common">ArrayOfItemsSerDe</a>&lt;T&gt;&nbsp;serDe)</pre>
+<div class="block">Constructs a thin wrapper on the heap around a Memory (or WritableMemory) already initialized with a
+ validated sketch image of a type T consistent with the given comparator and serDe.
+ A reference to the Memory is kept in the sketch and must remain in scope consistent
+ with the temporal scope of this sketch. The amount of data kept on the heap is very small.
+ All of the item data originally collected by the given Memory sketch object remains in the
+ Memory object</div>
 <dl>
+<dt><span class="paramLabel">Type Parameters:</span></dt>
+<dd><code>T</code> - The sketch data type</dd>
 <dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>srcMem</code> - a WritableMemory that contains data.</dd>
-<dd><code>memReqSvr</code> - the given MemoryRequestServer to request a larger WritableMemory</dd>
+<dd><code>srcMem</code> - the Memory object that this sketch will wrap.</dd>
+<dd><code>comparator</code> - to compare items</dd>
+<dd><code>serDe</code> - Serializer / deserializer for items of type <i>T</i> and <i>T[]</i>.</dd>
 <dt><span class="returnLabel">Returns:</span></dt>
-<dd>instance of this sketch</dd>
+<dd>a heap-base sketch that is a thin wrapper around the given srcMem.</dd>
 </dl>
 </li>
 </ul>
-<a id="getMaxSerializedSizeBytes(int,long,boolean)">
+<a id="getCDF(java.lang.Object[],org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">
 <!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>getMaxSerializedSizeBytes</h4>
-<pre class="methodSignature">public static&nbsp;int&nbsp;getMaxSerializedSizeBytes&#8203;(int&nbsp;k,
-                                            long&nbsp;n,
-                                            boolean&nbsp;updatableMemoryFormat)</pre>
-<div class="block">Returns upper bound on the serialized size of a KllDoublesSketch given the following parameters.</div>
-<dl>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>k</code> - parameter that controls size of the sketch and accuracy of estimates</dd>
-<dd><code>n</code> - stream length</dd>
-<dd><code>updatableMemoryFormat</code> - true if updatable Memory format, otherwise the standard compact format.</dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>upper bound on the serialized size of a KllSketch.</dd>
-</dl>
-</li>
-</ul>
-<a id="getCDF(double[],org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">
+</a><a id="getCDF(T[],org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">
 <!--   -->
 </a>
 <ul class="blockList">
 <li class="blockList">
 <h4>getCDF</h4>
-<pre class="methodSignature">public&nbsp;double[]&nbsp;getCDF&#8203;(double[]&nbsp;splitPoints,
+<pre class="methodSignature">public&nbsp;double[]&nbsp;getCDF&#8203;(<a href="KllItemsSketch.html" title="type parameter in KllItemsSketch">T</a>[]&nbsp;splitPoints,
                        <a href="../quantilescommon/QuantileSearchCriteria.html" title="enum in org.apache.datasketches.quantilescommon">QuantileSearchCriteria</a>&nbsp;searchCrit)</pre>
-<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../quantilescommon/QuantilesDoublesAPI.html#getCDF(double%5B%5D,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">QuantilesDoublesAPI</a></code></span></div>
+<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../quantilescommon/QuantilesGenericAPI.html#getCDF(T%5B%5D,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">QuantilesGenericAPI</a></code></span></div>
 <div class="block">Returns an approximation to the Cumulative Distribution Function (CDF) of the input stream
  as a monotonically increasing array of double ranks (or cumulative probabilities) on the interval [0.0, 1.0],
  given a set of splitPoints.
@@ -628,7 +555,7 @@ implements <a href="../quantilescommon/QuantilesDoublesAPI.html" title="interfac
  getNormalizedRankError(false) function.</p></div>
 <dl>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
-<dd><code><a href="../quantilescommon/QuantilesDoublesAPI.html#getCDF(double%5B%5D,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">getCDF</a></code>&nbsp;in interface&nbsp;<code><a href="../quantilescommon/QuantilesDoublesAPI.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesDoublesAPI</a></code></dd>
+<dd><code><a href="../quantilescommon/QuantilesGenericAPI.html#getCDF(T%5B%5D,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">getCDF</a></code>&nbsp;in interface&nbsp;<code><a href="../quantilescommon/QuantilesGenericAPI.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesGenericAPI</a>&lt;<a href="KllItemsSketch.html" title="type parameter in KllItemsSketch">T</a>&gt;</code></dd>
 <dt><span class="paramLabel">Parameters:</span></dt>
 <dd><code>splitPoints</code> - an array of <i>m</i> unique, monotonically increasing items
  (of the same type as the input items)
@@ -656,59 +583,24 @@ implements <a href="../quantilescommon/QuantilesDoublesAPI.html" title="interfac
 </dl>
 </li>
 </ul>
-<a id="getMaxItem()">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>getMaxItem</h4>
-<pre class="methodSignature">public&nbsp;double&nbsp;getMaxItem()</pre>
-<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../quantilescommon/QuantilesDoublesAPI.html#getMaxItem()">QuantilesDoublesAPI</a></code></span></div>
-<div class="block">Returns the maximum item of the stream. This is provided for convenience, but may be different from the largest
- item retained by the sketch algorithm.</div>
-<dl>
-<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
-<dd><code><a href="../quantilescommon/QuantilesDoublesAPI.html#getMaxItem()">getMaxItem</a></code>&nbsp;in interface&nbsp;<code><a href="../quantilescommon/QuantilesDoublesAPI.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesDoublesAPI</a></code></dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>the maximum item of the stream</dd>
-</dl>
-</li>
-</ul>
-<a id="getMinItem()">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>getMinItem</h4>
-<pre class="methodSignature">public&nbsp;double&nbsp;getMinItem()</pre>
-<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../quantilescommon/QuantilesDoublesAPI.html#getMinItem()">QuantilesDoublesAPI</a></code></span></div>
-<div class="block">Returns the minimum item of the stream. This is provided for convenience, but is distinct from the smallest
- item retained by the sketch algorithm.</div>
-<dl>
-<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
-<dd><code><a href="../quantilescommon/QuantilesDoublesAPI.html#getMinItem()">getMinItem</a></code>&nbsp;in interface&nbsp;<code><a href="../quantilescommon/QuantilesDoublesAPI.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesDoublesAPI</a></code></dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>the minimum item of the stream</dd>
-</dl>
-</li>
-</ul>
 <a id="getPartitionBoundaries(int,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">
 <!--   -->
 </a>
 <ul class="blockList">
 <li class="blockList">
 <h4>getPartitionBoundaries</h4>
-<pre class="methodSignature">public&nbsp;<a href="../quantilescommon/QuantilesDoublesAPI.DoublesPartitionBoundaries.html" title="class in org.apache.datasketches.quantilescommon">QuantilesDoublesAPI.DoublesPartitionBoundaries</a>&nbsp;getPartitionBoundaries&#8203;(int&nbsp;numEquallyWeighted,
-                                                                             <a href="../quantilescommon/QuantileSearchCriteria.html" title="enum in org.apache.datasketches.quantilescommon">QuantileSearchCriteria</a>&nbsp;searchCrit)</pre>
-<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../quantilescommon/QuantilesDoublesAPI.html#getPartitionBoundaries(int,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">QuantilesDoublesAPI</a></code></span></div>
-<div class="block">This method returns an instance of <a href="../quantilescommon/QuantilesDoublesAPI.DoublesPartitionBoundaries.html" title="class in org.apache.datasketches.quantilescommon"><code>DoublesPartitionBoundaries</code></a> which provides
+<pre class="methodSignature">public&nbsp;<a href="../quantilescommon/QuantilesGenericAPI.GenericPartitionBoundaries.html" title="class in org.apache.datasketches.quantilescommon">QuantilesGenericAPI.GenericPartitionBoundaries</a>&lt;<a href="KllItemsSketch.html" title="type parameter in KllItemsSketch">T</a>&gt;&nbsp;getPartitionBoundaries&#8203;(int&nbsp;numEquallyWeighted,
+                                                                                <a href="../quantilescommon/QuantileSearchCriteria.html" title="enum in org.apache.datasketches.quantilescommon">QuantileSearchCriteria</a>&nbsp;searchCrit)</pre>
+<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../quantilescommon/QuantilesGenericAPI.html#getPartitionBoundaries(int,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">QuantilesGenericAPI</a></code></span></div>
+<div class="block">This method returns an instance of
+ <a href="../quantilescommon/QuantilesGenericAPI.GenericPartitionBoundaries.html" title="class in org.apache.datasketches.quantilescommon"><code>GenericPartitionBoundaries</code></a> which provides
  sufficient information for the user to create the given number of equally weighted partitions.</div>
 <dl>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
-<dd><code><a href="../quantilescommon/QuantilesDoublesAPI.html#getPartitionBoundaries(int,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">getPartitionBoundaries</a></code>&nbsp;in interface&nbsp;<code><a href="../quantilescommon/QuantilesDoublesAPI.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesDoublesAPI</a></code></dd>
+<dd><code><a href="../quantilescommon/QuantilesGenericAPI.html#getPartitionBoundaries(int,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">getPartitionBoundaries</a></code>&nbsp;in interface&nbsp;<code><a href="../quantilescommon/QuantilesGenericAPI.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesGenericAPI</a>&lt;<a href="KllItemsSketch.html" title="type parameter in KllItemsSketch">T</a>&gt;</code></dd>
 <dt><span class="paramLabel">Parameters:</span></dt>
 <dd><code>numEquallyWeighted</code> - an integer that specifies the number of equally weighted partitions between
- <a href="../quantilescommon/QuantilesDoublesAPI.html#getMinItem()"><code>getMinItem()</code></a> and <a href="../quantilescommon/QuantilesDoublesAPI.html#getMaxItem()"><code>getMaxItem()</code></a>.
+ <a href="../quantilescommon/QuantilesGenericAPI.html#getMinItem()"><code>getMinItem()</code></a> and <a href="../quantilescommon/QuantilesGenericAPI.html#getMaxItem()"><code>getMaxItem()</code></a>.
  This must be a positive integer greater than zero.
  <ul>
  <li>A 1 will return: minItem, maxItem.</li>
@@ -720,19 +612,21 @@ implements <a href="../quantilescommon/QuantilesDoublesAPI.html" title="interfac
  If EXCLUSIVE, all the returned quantiles are the lower boundaries of the equally weighted partitions
  with the exception of the highest returned quantile, which is the upper boundary of the highest ranked partition.</dd>
 <dt><span class="returnLabel">Returns:</span></dt>
-<dd>an instance of <a href="../quantilescommon/QuantilesDoublesAPI.DoublesPartitionBoundaries.html" title="class in org.apache.datasketches.quantilescommon"><code>DoublesPartitionBoundaries</code></a>.</dd>
+<dd>an instance of <a href="../quantilescommon/QuantilesGenericAPI.GenericPartitionBoundaries.html" title="class in org.apache.datasketches.quantilescommon"><code>GenericPartitionBoundaries</code></a>.</dd>
 </dl>
 </li>
 </ul>
-<a id="getPMF(double[],org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">
+<a id="getPMF(java.lang.Object[],org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">
+<!--   -->
+</a><a id="getPMF(T[],org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">
 <!--   -->
 </a>
 <ul class="blockList">
 <li class="blockList">
 <h4>getPMF</h4>
-<pre class="methodSignature">public&nbsp;double[]&nbsp;getPMF&#8203;(double[]&nbsp;splitPoints,
+<pre class="methodSignature">public&nbsp;double[]&nbsp;getPMF&#8203;(<a href="KllItemsSketch.html" title="type parameter in KllItemsSketch">T</a>[]&nbsp;splitPoints,
                        <a href="../quantilescommon/QuantileSearchCriteria.html" title="enum in org.apache.datasketches.quantilescommon">QuantileSearchCriteria</a>&nbsp;searchCrit)</pre>
-<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../quantilescommon/QuantilesDoublesAPI.html#getPMF(double%5B%5D,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">QuantilesDoublesAPI</a></code></span></div>
+<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../quantilescommon/QuantilesGenericAPI.html#getPMF(T%5B%5D,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">QuantilesGenericAPI</a></code></span></div>
 <div class="block">Returns an approximation to the Probability Mass Function (PMF) of the input stream
  as an array of probability masses as doubles on the interval [0.0, 1.0],
  given a set of splitPoints.
@@ -741,7 +635,7 @@ implements <a href="../quantilescommon/QuantilesDoublesAPI.html" title="interfac
  getNormalizedRankError(true) function.</p></div>
 <dl>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
-<dd><code><a href="../quantilescommon/QuantilesDoublesAPI.html#getPMF(double%5B%5D,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">getPMF</a></code>&nbsp;in interface&nbsp;<code><a href="../quantilescommon/QuantilesDoublesAPI.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesDoublesAPI</a></code></dd>
+<dd><code><a href="../quantilescommon/QuantilesGenericAPI.html#getPMF(T%5B%5D,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">getPMF</a></code>&nbsp;in interface&nbsp;<code><a href="../quantilescommon/QuantilesGenericAPI.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesGenericAPI</a>&lt;<a href="KllItemsSketch.html" title="type parameter in KllItemsSketch">T</a>&gt;</code></dd>
 <dt><span class="paramLabel">Parameters:</span></dt>
 <dd><code>splitPoints</code> - an array of <i>m</i> unique, monotonically increasing items
  (of the same type as the input items)
@@ -782,13 +676,13 @@ implements <a href="../quantilescommon/QuantilesDoublesAPI.html" title="interfac
 <ul class="blockList">
 <li class="blockList">
 <h4>getQuantile</h4>
-<pre class="methodSignature">public&nbsp;double&nbsp;getQuantile&#8203;(double&nbsp;rank,
-                          <a href="../quantilescommon/QuantileSearchCriteria.html" title="enum in org.apache.datasketches.quantilescommon">QuantileSearchCriteria</a>&nbsp;searchCrit)</pre>
-<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../quantilescommon/QuantilesDoublesAPI.html#getQuantile(double,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">QuantilesDoublesAPI</a></code></span></div>
+<pre class="methodSignature">public&nbsp;<a href="KllItemsSketch.html" title="type parameter in KllItemsSketch">T</a>&nbsp;getQuantile&#8203;(double&nbsp;rank,
+                     <a href="../quantilescommon/QuantileSearchCriteria.html" title="enum in org.apache.datasketches.quantilescommon">QuantileSearchCriteria</a>&nbsp;searchCrit)</pre>
+<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../quantilescommon/QuantilesGenericAPI.html#getQuantile(double,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">QuantilesGenericAPI</a></code></span></div>
 <div class="block">Gets the approximate quantile of the given normalized rank and the given search criterion.</div>
 <dl>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
-<dd><code><a href="../quantilescommon/QuantilesDoublesAPI.html#getQuantile(double,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">getQuantile</a></code>&nbsp;in interface&nbsp;<code><a href="../quantilescommon/QuantilesDoublesAPI.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesDoublesAPI</a></code></dd>
+<dd><code><a href="../quantilescommon/QuantilesGenericAPI.html#getQuantile(double,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">getQuantile</a></code>&nbsp;in interface&nbsp;<code><a href="../quantilescommon/QuantilesGenericAPI.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesGenericAPI</a>&lt;<a href="KllItemsSketch.html" title="type parameter in KllItemsSketch">T</a>&gt;</code></dd>
 <dt><span class="paramLabel">Parameters:</span></dt>
 <dd><code>rank</code> - the given normalized rank, a double in the range [0.0, 1.0].</dd>
 <dd><code>searchCrit</code> - If INCLUSIVE, the given rank includes all quantiles &le;
@@ -808,13 +702,13 @@ implements <a href="../quantilescommon/QuantilesDoublesAPI.html" title="interfac
 <ul class="blockList">
 <li class="blockList">
 <h4>getQuantiles</h4>
-<pre class="methodSignature">public&nbsp;double[]&nbsp;getQuantiles&#8203;(double[]&nbsp;ranks,
-                             <a href="../quantilescommon/QuantileSearchCriteria.html" title="enum in org.apache.datasketches.quantilescommon">QuantileSearchCriteria</a>&nbsp;searchCrit)</pre>
-<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../quantilescommon/QuantilesDoublesAPI.html#getQuantiles(double%5B%5D,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">QuantilesDoublesAPI</a></code></span></div>
+<pre class="methodSignature">public&nbsp;<a href="KllItemsSketch.html" title="type parameter in KllItemsSketch">T</a>[]&nbsp;getQuantiles&#8203;(double[]&nbsp;ranks,
+                        <a href="../quantilescommon/QuantileSearchCriteria.html" title="enum in org.apache.datasketches.quantilescommon">QuantileSearchCriteria</a>&nbsp;searchCrit)</pre>
+<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../quantilescommon/QuantilesGenericAPI.html#getQuantiles(double%5B%5D,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">QuantilesGenericAPI</a></code></span></div>
 <div class="block">Gets an array of quantiles from the given array of normalized ranks.</div>
 <dl>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
-<dd><code><a href="../quantilescommon/QuantilesDoublesAPI.html#getQuantiles(double%5B%5D,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">getQuantiles</a></code>&nbsp;in interface&nbsp;<code><a href="../quantilescommon/QuantilesDoublesAPI.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesDoublesAPI</a></code></dd>
+<dd><code><a href="../quantilescommon/QuantilesGenericAPI.html#getQuantiles(double%5B%5D,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">getQuantiles</a></code>&nbsp;in interface&nbsp;<code><a href="../quantilescommon/QuantilesGenericAPI.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesGenericAPI</a>&lt;<a href="KllItemsSketch.html" title="type parameter in KllItemsSketch">T</a>&gt;</code></dd>
 <dt><span class="paramLabel">Parameters:</span></dt>
 <dd><code>ranks</code> - the given array of normalized ranks, each of which must be
  in the interval [0.0,1.0].</dd>
@@ -833,19 +727,18 @@ implements <a href="../quantilescommon/QuantilesDoublesAPI.html" title="interfac
 <ul class="blockList">
 <li class="blockList">
 <h4>getQuantileLowerBound</h4>
-<pre class="methodSignature">public&nbsp;double&nbsp;getQuantileLowerBound&#8203;(double&nbsp;rank)</pre>
+<pre class="methodSignature">public&nbsp;<a href="KllItemsSketch.html" title="type parameter in KllItemsSketch">T</a>&nbsp;getQuantileLowerBound&#8203;(double&nbsp;rank)</pre>
+<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../quantilescommon/QuantilesGenericAPI.html#getQuantileLowerBound(double)">QuantilesGenericAPI</a></code></span></div>
 <div class="block">Gets the lower bound of the quantile confidence interval in which the quantile of the
  given rank exists.
 
  <p>Although it is possible to estimate the probability that the true quantile
  exists within the quantile confidence interval specified by the upper and lower quantile bounds,
  it is not possible to guarantee the width of the quantile confidence interval
- as an additive or multiplicative percent of the true quantile.</p>
- The approximate probability that the true quantile is within the confidence interval
- specified by the upper and lower quantile bounds for this sketch is 0.99.</div>
+ as an additive or multiplicative percent of the true quantile.</p></div>
 <dl>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
-<dd><code><a href="../quantilescommon/QuantilesDoublesAPI.html#getQuantileLowerBound(double)">getQuantileLowerBound</a></code>&nbsp;in interface&nbsp;<code><a href="../quantilescommon/QuantilesDoublesAPI.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesDoublesAPI</a></code></dd>
+<dd><code><a href="../quantilescommon/QuantilesGenericAPI.html#getQuantileLowerBound(double)">getQuantileLowerBound</a></code>&nbsp;in interface&nbsp;<code><a href="../quantilescommon/QuantilesGenericAPI.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesGenericAPI</a>&lt;<a href="KllItemsSketch.html" title="type parameter in KllItemsSketch">T</a>&gt;</code></dd>
 <dt><span class="paramLabel">Parameters:</span></dt>
 <dd><code>rank</code> - the given normalized rank</dd>
 <dt><span class="returnLabel">Returns:</span></dt>
@@ -860,19 +753,18 @@ implements <a href="../quantilescommon/QuantilesDoublesAPI.html" title="interfac
 <ul class="blockList">
 <li class="blockList">
 <h4>getQuantileUpperBound</h4>
-<pre class="methodSignature">public&nbsp;double&nbsp;getQuantileUpperBound&#8203;(double&nbsp;rank)</pre>
+<pre class="methodSignature">public&nbsp;<a href="KllItemsSketch.html" title="type parameter in KllItemsSketch">T</a>&nbsp;getQuantileUpperBound&#8203;(double&nbsp;rank)</pre>
+<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../quantilescommon/QuantilesGenericAPI.html#getQuantileUpperBound(double)">QuantilesGenericAPI</a></code></span></div>
 <div class="block">Gets the upper bound of the quantile confidence interval in which the true quantile of the
  given rank exists.
 
  <p>Although it is possible to estimate the probability that the true quantile
  exists within the quantile confidence interval specified by the upper and lower quantile bounds,
  it is not possible to guarantee the width of the quantile interval
- as an additive or multiplicative percent of the true quantile.</p>
- The approximate probability that the true quantile is within the confidence interval
- specified by the upper and lower quantile bounds for this sketch is 0.99.</div>
+ as an additive or multiplicative percent of the true quantile.</p></div>
 <dl>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
-<dd><code><a href="../quantilescommon/QuantilesDoublesAPI.html#getQuantileUpperBound(double)">getQuantileUpperBound</a></code>&nbsp;in interface&nbsp;<code><a href="../quantilescommon/QuantilesDoublesAPI.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesDoublesAPI</a></code></dd>
+<dd><code><a href="../quantilescommon/QuantilesGenericAPI.html#getQuantileUpperBound(double)">getQuantileUpperBound</a></code>&nbsp;in interface&nbsp;<code><a href="../quantilescommon/QuantilesGenericAPI.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesGenericAPI</a>&lt;<a href="KllItemsSketch.html" title="type parameter in KllItemsSketch">T</a>&gt;</code></dd>
 <dt><span class="paramLabel">Parameters:</span></dt>
 <dd><code>rank</code> - the given normalized rank</dd>
 <dt><span class="returnLabel">Returns:</span></dt>
@@ -881,24 +773,26 @@ implements <a href="../quantilescommon/QuantilesDoublesAPI.html" title="interfac
 </dl>
 </li>
 </ul>
-<a id="getRank(double,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">
+<a id="getRank(java.lang.Object,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">
+<!--   -->
+</a><a id="getRank(T,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">
 <!--   -->
 </a>
 <ul class="blockList">
 <li class="blockList">
 <h4>getRank</h4>
-<pre class="methodSignature">public&nbsp;double&nbsp;getRank&#8203;(double&nbsp;quantile,
+<pre class="methodSignature">public&nbsp;double&nbsp;getRank&#8203;(<a href="KllItemsSketch.html" title="type parameter in KllItemsSketch">T</a>&nbsp;quantile,
                       <a href="../quantilescommon/QuantileSearchCriteria.html" title="enum in org.apache.datasketches.quantilescommon">QuantileSearchCriteria</a>&nbsp;searchCrit)</pre>
-<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../quantilescommon/QuantilesDoublesAPI.html#getRank(double,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">QuantilesDoublesAPI</a></code></span></div>
+<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../quantilescommon/QuantilesGenericAPI.html#getRank(T,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">QuantilesGenericAPI</a></code></span></div>
 <div class="block">Gets the normalized rank corresponding to the given a quantile.</div>
 <dl>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
-<dd><code><a href="../quantilescommon/QuantilesDoublesAPI.html#getRank(double,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">getRank</a></code>&nbsp;in interface&nbsp;<code><a href="../quantilescommon/QuantilesDoublesAPI.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesDoublesAPI</a></code></dd>
+<dd><code><a href="../quantilescommon/QuantilesGenericAPI.html#getRank(T,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">getRank</a></code>&nbsp;in interface&nbsp;<code><a href="../quantilescommon/QuantilesGenericAPI.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesGenericAPI</a>&lt;<a href="KllItemsSketch.html" title="type parameter in KllItemsSketch">T</a>&gt;</code></dd>
 <dt><span class="paramLabel">Parameters:</span></dt>
 <dd><code>quantile</code> - the given quantile</dd>
 <dd><code>searchCrit</code> - if INCLUSIVE the given quantile is included into the rank.</dd>
 <dt><span class="returnLabel">Returns:</span></dt>
-<dd>the normalized rank corresponding to the given quantile</dd>
+<dd>the normalized rank corresponding to the given quantile.</dd>
 <dt><span class="seeLabel">See Also:</span></dt>
 <dd><a href="../quantilescommon/QuantileSearchCriteria.html" title="enum in org.apache.datasketches.quantilescommon"><code>QuantileSearchCriteria</code></a></dd>
 </dl>
@@ -948,20 +842,22 @@ implements <a href="../quantilescommon/QuantilesDoublesAPI.html" title="interfac
 </dl>
 </li>
 </ul>
-<a id="getRanks(double[],org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">
+<a id="getRanks(java.lang.Object[],org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">
+<!--   -->
+</a><a id="getRanks(T[],org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">
 <!--   -->
 </a>
 <ul class="blockList">
 <li class="blockList">
 <h4>getRanks</h4>
-<pre class="methodSignature">public&nbsp;double[]&nbsp;getRanks&#8203;(double[]&nbsp;quantiles,
+<pre class="methodSignature">public&nbsp;double[]&nbsp;getRanks&#8203;(<a href="KllItemsSketch.html" title="type parameter in KllItemsSketch">T</a>[]&nbsp;quantiles,
                          <a href="../quantilescommon/QuantileSearchCriteria.html" title="enum in org.apache.datasketches.quantilescommon">QuantileSearchCriteria</a>&nbsp;searchCrit)</pre>
-<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../quantilescommon/QuantilesDoublesAPI.html#getRanks(double%5B%5D,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">QuantilesDoublesAPI</a></code></span></div>
+<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../quantilescommon/QuantilesGenericAPI.html#getRanks(T%5B%5D,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">QuantilesGenericAPI</a></code></span></div>
 <div class="block">Gets an array of normalized ranks corresponding to the given array of quantiles and the given
  search criterion.</div>
 <dl>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
-<dd><code><a href="../quantilescommon/QuantilesDoublesAPI.html#getRanks(double%5B%5D,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">getRanks</a></code>&nbsp;in interface&nbsp;<code><a href="../quantilescommon/QuantilesDoublesAPI.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesDoublesAPI</a></code></dd>
+<dd><code><a href="../quantilescommon/QuantilesGenericAPI.html#getRanks(T%5B%5D,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">getRanks</a></code>&nbsp;in interface&nbsp;<code><a href="../quantilescommon/QuantilesGenericAPI.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesGenericAPI</a>&lt;<a href="KllItemsSketch.html" title="type parameter in KllItemsSketch">T</a>&gt;</code></dd>
 <dt><span class="paramLabel">Parameters:</span></dt>
 <dd><code>quantiles</code> - the given array of quantiles</dd>
 <dd><code>searchCrit</code> - if INCLUSIVE, the given quantiles include the rank directly corresponding to each quantile.</dd>
@@ -978,12 +874,12 @@ implements <a href="../quantilescommon/QuantilesDoublesAPI.html" title="interfac
 <ul class="blockList">
 <li class="blockList">
 <h4>getSortedView</h4>
-<pre class="methodSignature">public&nbsp;<a href="../quantilescommon/DoublesSortedView.html" title="interface in org.apache.datasketches.quantilescommon">DoublesSortedView</a>&nbsp;getSortedView()</pre>
-<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../quantilescommon/QuantilesDoublesAPI.html#getSortedView()">QuantilesDoublesAPI</a></code></span></div>
+<pre class="methodSignature">public&nbsp;<a href="KllItemsSketchSortedView.html" title="class in org.apache.datasketches.kll">KllItemsSketchSortedView</a>&lt;<a href="KllItemsSketch.html" title="type parameter in KllItemsSketch">T</a>&gt;&nbsp;getSortedView()</pre>
+<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../quantilescommon/QuantilesGenericAPI.html#getSortedView()">QuantilesGenericAPI</a></code></span></div>
 <div class="block">Gets the sorted view of this sketch</div>
 <dl>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
-<dd><code><a href="../quantilescommon/QuantilesDoublesAPI.html#getSortedView()">getSortedView</a></code>&nbsp;in interface&nbsp;<code><a href="../quantilescommon/QuantilesDoublesAPI.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesDoublesAPI</a></code></dd>
+<dd><code><a href="../quantilescommon/QuantilesGenericAPI.html#getSortedView()">getSortedView</a></code>&nbsp;in interface&nbsp;<code><a href="../quantilescommon/QuantilesGenericAPI.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesGenericAPI</a>&lt;<a href="KllItemsSketch.html" title="type parameter in KllItemsSketch">T</a>&gt;</code></dd>
 <dt><span class="returnLabel">Returns:</span></dt>
 <dd>the sorted view of this sketch</dd>
 </dl>
@@ -995,28 +891,46 @@ implements <a href="../quantilescommon/QuantilesDoublesAPI.html" title="interfac
 <ul class="blockList">
 <li class="blockList">
 <h4>iterator</h4>
-<pre class="methodSignature">public&nbsp;<a href="../quantilescommon/QuantilesDoublesSketchIterator.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesDoublesSketchIterator</a>&nbsp;iterator()</pre>
-<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../quantilescommon/QuantilesDoublesAPI.html#iterator()">QuantilesDoublesAPI</a></code></span></div>
+<pre class="methodSignature">public&nbsp;<a href="../quantilescommon/QuantilesGenericSketchIterator.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesGenericSketchIterator</a>&lt;<a href="KllItemsSketch.html" title="type parameter in KllItemsSketch">T</a>&gt;&nbsp;iterator()</pre>
+<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../quantilescommon/QuantilesGenericAPI.html#iterator()">QuantilesGenericAPI</a></code></span></div>
 <div class="block">Gets the iterator for this sketch, which is not sorted.</div>
 <dl>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
-<dd><code><a href="../quantilescommon/QuantilesDoublesAPI.html#iterator()">iterator</a></code>&nbsp;in interface&nbsp;<code><a href="../quantilescommon/QuantilesDoublesAPI.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesDoublesAPI</a></code></dd>
+<dd><code><a href="../quantilescommon/QuantilesGenericAPI.html#iterator()">iterator</a></code>&nbsp;in interface&nbsp;<code><a href="../quantilescommon/QuantilesGenericAPI.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesGenericAPI</a>&lt;<a href="KllItemsSketch.html" title="type parameter in KllItemsSketch">T</a>&gt;</code></dd>
 <dt><span class="returnLabel">Returns:</span></dt>
 <dd>the iterator for this sketch</dd>
 </dl>
 </li>
 </ul>
+<a id="merge(org.apache.datasketches.kll.KllSketch)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>merge</h4>
+<pre class="methodSignature">public final&nbsp;void&nbsp;merge&#8203;(<a href="KllSketch.html" title="class in org.apache.datasketches.kll">KllSketch</a>&nbsp;other)</pre>
+<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="KllSketch.html#merge(org.apache.datasketches.kll.KllSketch)">KllSketch</a></code></span></div>
+<div class="block">Merges another sketch into this one.
+ Attempting to merge a sketch of the wrong type will throw an exception.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="KllSketch.html#merge(org.apache.datasketches.kll.KllSketch)">merge</a></code>&nbsp;in class&nbsp;<code><a href="KllSketch.html" title="class in org.apache.datasketches.kll">KllSketch</a></code></dd>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>other</code> - sketch to merge into this one</dd>
+</dl>
+</li>
+</ul>
 <a id="reset()">
 <!--   -->
 </a>
 <ul class="blockList">
 <li class="blockList">
 <h4>reset</h4>
-<pre class="methodSignature">public final&nbsp;void&nbsp;reset()</pre>
+<pre class="methodSignature">public&nbsp;void&nbsp;reset()</pre>
+<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../quantilescommon/QuantilesAPI.html#reset()">QuantilesAPI</a></code></span></div>
 <div class="block">Resets this sketch to the empty state.
  If the sketch is <i>read only</i> this does nothing.
 
- <p>The parameter <i>k</i> will not change.</p>
  <p>The parameter <i>k</i> will not change.</p></div>
 <dl>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
@@ -1031,30 +945,24 @@ implements <a href="../quantilescommon/QuantilesDoublesAPI.html" title="interfac
 <li class="blockList">
 <h4>toByteArray</h4>
 <pre class="methodSignature">public&nbsp;byte[]&nbsp;toByteArray()</pre>
-<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../quantilescommon/QuantilesDoublesAPI.html#toByteArray()">QuantilesDoublesAPI</a></code></span></div>
-<div class="block">Returns a byte array representation of this sketch.</div>
-<dl>
-<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
-<dd><code><a href="../quantilescommon/QuantilesDoublesAPI.html#toByteArray()">toByteArray</a></code>&nbsp;in interface&nbsp;<code><a href="../quantilescommon/QuantilesDoublesAPI.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesDoublesAPI</a></code></dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>a byte array representation of this sketch.</dd>
-</dl>
 </li>
 </ul>
-<a id="update(double)">
+<a id="update(java.lang.Object)">
+<!--   -->
+</a><a id="update(T)">
 <!--   -->
 </a>
 <ul class="blockListLast">
 <li class="blockList">
 <h4>update</h4>
-<pre class="methodSignature">public&nbsp;void&nbsp;update&#8203;(double&nbsp;item)</pre>
-<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../quantilescommon/QuantilesDoublesAPI.html#update(double)">QuantilesDoublesAPI</a></code></span></div>
+<pre class="methodSignature">public&nbsp;void&nbsp;update&#8203;(<a href="KllItemsSketch.html" title="type parameter in KllItemsSketch">T</a>&nbsp;item)</pre>
+<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../quantilescommon/QuantilesGenericAPI.html#update(T)">QuantilesGenericAPI</a></code></span></div>
 <div class="block">Updates this sketch with the given item.</div>
 <dl>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
-<dd><code><a href="../quantilescommon/QuantilesDoublesAPI.html#update(double)">update</a></code>&nbsp;in interface&nbsp;<code><a href="../quantilescommon/QuantilesDoublesAPI.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesDoublesAPI</a></code></dd>
+<dd><code><a href="../quantilescommon/QuantilesGenericAPI.html#update(T)">update</a></code>&nbsp;in interface&nbsp;<code><a href="../quantilescommon/QuantilesGenericAPI.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesGenericAPI</a>&lt;<a href="KllItemsSketch.html" title="type parameter in KllItemsSketch">T</a>&gt;</code></dd>
 <dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>item</code> - from a stream of quantiles. NaNs are ignored.</dd>
+<dd><code>item</code> - from a stream of items. Nulls are ignored.</dd>
 </dl>
 </li>
 </ul>
@@ -1081,7 +989,7 @@ implements <a href="../quantilescommon/QuantilesDoublesAPI.html" title="interfac
 <li><a href="../../../../index.html">Overview</a></li>
 <li><a href="package-summary.html">Package</a></li>
 <li class="navBarCell1Rev">Class</li>
-<li><a href="class-use/KllDoublesSketch.html">Use</a></li>
+<li><a href="class-use/KllItemsSketch.html">Use</a></li>
 <li><a href="package-tree.html">Tree</a></li>
 <li><a href="../../../../deprecated-list.html">Deprecated</a></li>
 <li><a href="../../../../index-all.html">Index</a></li>
diff --git a/docs/master/org/apache/datasketches/quantiles/ItemsSketchIterator.html b/docs/master/org/apache/datasketches/kll/KllItemsSketchIterator.html
similarity index 92%
copy from docs/master/org/apache/datasketches/quantiles/ItemsSketchIterator.html
copy to docs/master/org/apache/datasketches/kll/KllItemsSketchIterator.html
index c61a2c60..5205c574 100644
--- a/docs/master/org/apache/datasketches/quantiles/ItemsSketchIterator.html
+++ b/docs/master/org/apache/datasketches/kll/KllItemsSketchIterator.html
@@ -3,7 +3,7 @@
 <html lang="en">
 <head>
 <!-- Generated by javadoc -->
-<title>ItemsSketchIterator (datasketches-java 4.2.0-SNAPSHOT API)</title>
+<title>KllItemsSketchIterator (datasketches-java 4.2.0-SNAPSHOT API)</title>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
 <link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
 <link rel="stylesheet" type="text/css" href="../../../../jquery/jquery-ui.min.css" title="Style">
@@ -21,7 +21,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="ItemsSketchIterator (datasketches-java 4.2.0-SNAPSHOT API)";
+            parent.document.title="KllItemsSketchIterator (datasketches-java 4.2.0-SNAPSHOT API)";
         }
     }
     catch(err) {
@@ -54,7 +54,7 @@ loadScripts(document, 'script');</script>
 <li><a href="../../../../index.html">Overview</a></li>
 <li><a href="package-summary.html">Package</a></li>
 <li class="navBarCell1Rev">Class</li>
-<li><a href="class-use/ItemsSketchIterator.html">Use</a></li>
+<li><a href="class-use/KllItemsSketchIterator.html">Use</a></li>
 <li><a href="package-tree.html">Tree</a></li>
 <li><a href="../../../../deprecated-list.html">Deprecated</a></li>
 <li><a href="../../../../index-all.html">Index</a></li>
@@ -116,15 +116,15 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <!-- ======== START OF CLASS DATA ======== -->
 <main role="main">
 <div class="header">
-<div class="subTitle"><span class="packageLabelInType">Package</span>&nbsp;<a href="package-summary.html">org.apache.datasketches.quantiles</a></div>
-<h2 title="Class ItemsSketchIterator" class="title">Class ItemsSketchIterator&lt;T&gt;</h2>
+<div class="subTitle"><span class="packageLabelInType">Package</span>&nbsp;<a href="package-summary.html">org.apache.datasketches.kll</a></div>
+<h2 title="Class KllItemsSketchIterator" class="title">Class KllItemsSketchIterator&lt;T&gt;</h2>
 </div>
 <div class="contentContainer">
 <ul class="inheritance">
 <li><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">java.lang.Object</a></li>
 <li>
 <ul class="inheritance">
-<li>org.apache.datasketches.quantiles.ItemsSketchIterator&lt;T&gt;</li>
+<li>org.apache.datasketches.kll.KllItemsSketchIterator&lt;T&gt;</li>
 </ul>
 </li>
 </ul>
@@ -132,18 +132,14 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <ul class="blockList">
 <li class="blockList">
 <dl>
-<dt><span class="paramLabel">Type Parameters:</span></dt>
-<dd><code>T</code> - type of item</dd>
-</dl>
-<dl>
 <dt>All Implemented Interfaces:</dt>
 <dd><code><a href="../quantilescommon/QuantilesGenericSketchIterator.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesGenericSketchIterator</a>&lt;T&gt;</code>, <code><a href="../quantilescommon/QuantilesSketchIterator.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesSketchIterator</a></code></dd>
 </dl>
 <hr>
-<pre>public class <span class="typeNameLabel">ItemsSketchIterator&lt;T&gt;</span>
+<pre>public final class <span class="typeNameLabel">KllItemsSketchIterator&lt;T&gt;</span>
 extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a>
 implements <a href="../quantilescommon/QuantilesGenericSketchIterator.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesGenericSketchIterator</a>&lt;T&gt;</pre>
-<div class="block">Iterator over ItemsSketch. The order is not defined.</div>
+<div class="block">Iterator over KllItemsSketch. The order is not defined.</div>
 </li>
 </ul>
 </div>
@@ -165,7 +161,7 @@ implements <a href="../quantilescommon/QuantilesGenericSketchIterator.html" titl
 <th class="colLast" scope="col">Description</th>
 </tr>
 <tr id="i0" class="altColor">
-<td class="colFirst"><code><a href="ItemsSketchIterator.html" title="type parameter in ItemsSketchIterator">T</a></code></td>
+<td class="colFirst"><code><a href="KllItemsSketchIterator.html" title="type parameter in KllItemsSketchIterator">T</a></code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getQuantile()">getQuantile</a></span>()</code></th>
 <td class="colLast">
 <div class="block">Gets the generic quantile at the current index.</div>
@@ -215,7 +211,7 @@ implements <a href="../quantilescommon/QuantilesGenericSketchIterator.html" titl
 <ul class="blockList">
 <li class="blockList">
 <h4>getQuantile</h4>
-<pre class="methodSignature">public&nbsp;<a href="ItemsSketchIterator.html" title="type parameter in ItemsSketchIterator">T</a>&nbsp;getQuantile()</pre>
+<pre class="methodSignature">public&nbsp;<a href="KllItemsSketchIterator.html" title="type parameter in KllItemsSketchIterator">T</a>&nbsp;getQuantile()</pre>
 <div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../quantilescommon/QuantilesGenericSketchIterator.html#getQuantile()">QuantilesGenericSketchIterator</a></code></span></div>
 <div class="block">Gets the generic quantile at the current index.
 
@@ -223,7 +219,7 @@ implements <a href="../quantilescommon/QuantilesGenericSketchIterator.html" titl
  or after getting false from next().</p></div>
 <dl>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
-<dd><code><a href="../quantilescommon/QuantilesGenericSketchIterator.html#getQuantile()">getQuantile</a></code>&nbsp;in interface&nbsp;<code><a href="../quantilescommon/QuantilesGenericSketchIterator.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesGenericSketchIterator</a>&lt;<a href="ItemsSketchIterator.html" title="type parameter in ItemsSketchIterator">T</a>&gt;</code></dd>
+<dd><code><a href="../quantilescommon/QuantilesGenericSketchIterator.html#getQuantile()">getQuantile</a></code>&nbsp;in interface&nbsp;<code><a href="../quantilescommon/QuantilesGenericSketchIterator.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesGenericSketchIterator</a>&lt;<a href="KllItemsSketchIterator.html" title="type parameter in KllItemsSketchIterator">T</a>&gt;</code></dd>
 <dt><span class="returnLabel">Returns:</span></dt>
 <dd>the generic quantile at the current index.</dd>
 </dl>
@@ -290,7 +286,7 @@ implements <a href="../quantilescommon/QuantilesGenericSketchIterator.html" titl
 <li><a href="../../../../index.html">Overview</a></li>
 <li><a href="package-summary.html">Package</a></li>
 <li class="navBarCell1Rev">Class</li>
-<li><a href="class-use/ItemsSketchIterator.html">Use</a></li>
+<li><a href="class-use/KllItemsSketchIterator.html">Use</a></li>
 <li><a href="package-tree.html">Tree</a></li>
 <li><a href="../../../../deprecated-list.html">Deprecated</a></li>
 <li><a href="../../../../index-all.html">Index</a></li>
diff --git a/docs/master/org/apache/datasketches/kll/KllFloatsSketchIterator.html b/docs/master/org/apache/datasketches/kll/KllItemsSketchSortedView.KllItemsSketchSortedViewIterator.html
similarity index 57%
copy from docs/master/org/apache/datasketches/kll/KllFloatsSketchIterator.html
copy to docs/master/org/apache/datasketches/kll/KllItemsSketchSortedView.KllItemsSketchSortedViewIterator.html
index 30450b86..30854509 100644
--- a/docs/master/org/apache/datasketches/kll/KllFloatsSketchIterator.html
+++ b/docs/master/org/apache/datasketches/kll/KllItemsSketchSortedView.KllItemsSketchSortedViewIterator.html
@@ -3,7 +3,7 @@
 <html lang="en">
 <head>
 <!-- Generated by javadoc -->
-<title>KllFloatsSketchIterator (datasketches-java 4.2.0-SNAPSHOT API)</title>
+<title>KllItemsSketchSortedView.KllItemsSketchSortedViewIterator (datasketches-java 4.2.0-SNAPSHOT API)</title>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
 <link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
 <link rel="stylesheet" type="text/css" href="../../../../jquery/jquery-ui.min.css" title="Style">
@@ -21,18 +21,12 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="KllFloatsSketchIterator (datasketches-java 4.2.0-SNAPSHOT API)";
+            parent.document.title="KllItemsSketchSortedView.KllItemsSketchSortedViewIterator (datasketches-java 4.2.0-SNAPSHOT API)";
         }
     }
     catch(err) {
     }
 //-->
-var data = {"i0":10,"i1":10,"i2":10};
-var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
-var altColor = "altColor";
-var rowColor = "rowColor";
-var tableTab = "tableTab";
-var activeTableTab = "activeTableTab";
 var pathtoroot = "../../../../";
 var useModuleDirectories = true;
 loadScripts(document, 'script');</script>
@@ -54,7 +48,7 @@ loadScripts(document, 'script');</script>
 <li><a href="../../../../index.html">Overview</a></li>
 <li><a href="package-summary.html">Package</a></li>
 <li class="navBarCell1Rev">Class</li>
-<li><a href="class-use/KllFloatsSketchIterator.html">Use</a></li>
+<li><a href="class-use/KllItemsSketchSortedView.KllItemsSketchSortedViewIterator.html">Use</a></li>
 <li><a href="package-tree.html">Tree</a></li>
 <li><a href="../../../../deprecated-list.html">Deprecated</a></li>
 <li><a href="../../../../index-all.html">Index</a></li>
@@ -98,7 +92,7 @@ loadScripts(document, 'script');</script>
 <li>Detail:&nbsp;</li>
 <li>Field&nbsp;|&nbsp;</li>
 <li>Constr&nbsp;|&nbsp;</li>
-<li><a href="#method.detail">Method</a></li>
+<li>Method</li>
 </ul>
 </div>
 <a id="skip.navbar.top">
@@ -117,14 +111,19 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <main role="main">
 <div class="header">
 <div class="subTitle"><span class="packageLabelInType">Package</span>&nbsp;<a href="package-summary.html">org.apache.datasketches.kll</a></div>
-<h2 title="Class KllFloatsSketchIterator" class="title">Class KllFloatsSketchIterator</h2>
+<h2 title="Class KllItemsSketchSortedView.KllItemsSketchSortedViewIterator" class="title">Class KllItemsSketchSortedView.KllItemsSketchSortedViewIterator&lt;T&gt;</h2>
 </div>
 <div class="contentContainer">
 <ul class="inheritance">
 <li><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">java.lang.Object</a></li>
 <li>
 <ul class="inheritance">
-<li>org.apache.datasketches.kll.KllFloatsSketchIterator</li>
+<li><a href="../quantilescommon/GenericSortedViewIterator.html" title="class in org.apache.datasketches.quantilescommon">org.apache.datasketches.quantilescommon.GenericSortedViewIterator</a>&lt;T&gt;</li>
+<li>
+<ul class="inheritance">
+<li>org.apache.datasketches.kll.KllItemsSketchSortedView.KllItemsSketchSortedViewIterator&lt;T&gt;</li>
+</ul>
+</li>
 </ul>
 </li>
 </ul>
@@ -132,14 +131,21 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <ul class="blockList">
 <li class="blockList">
 <dl>
+<dt><span class="paramLabel">Type Parameters:</span></dt>
+<dd><code>T</code> - type of quantile (item)</dd>
+</dl>
+<dl>
 <dt>All Implemented Interfaces:</dt>
-<dd><code><a href="../quantilescommon/QuantilesFloatsSketchIterator.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesFloatsSketchIterator</a></code>, <code><a href="../quantilescommon/QuantilesSketchIterator.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesSketchIterator</a></code></dd>
+<dd><code><a href="../quantilescommon/SortedViewIterator.html" title="interface in org.apache.datasketches.quantilescommon">SortedViewIterator</a></code></dd>
+</dl>
+<dl>
+<dt>Enclosing class:</dt>
+<dd><a href="KllItemsSketchSortedView.html" title="class in org.apache.datasketches.kll">KllItemsSketchSortedView</a>&lt;<a href="KllItemsSketchSortedView.html" title="type parameter in KllItemsSketchSortedView">T</a>&gt;</dd>
 </dl>
 <hr>
-<pre>public class <span class="typeNameLabel">KllFloatsSketchIterator</span>
-extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a>
-implements <a href="../quantilescommon/QuantilesFloatsSketchIterator.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesFloatsSketchIterator</a></pre>
-<div class="block">Iterator over KllFloatsSketch. The order is not defined.</div>
+<pre>public static final class <span class="typeNameLabel">KllItemsSketchSortedView.KllItemsSketchSortedViewIterator&lt;T&gt;</span>
+extends <a href="../quantilescommon/GenericSortedViewIterator.html" title="class in org.apache.datasketches.quantilescommon">GenericSortedViewIterator</a>&lt;T&gt;</pre>
+<div class="block">Iterator over KllItemsSketchSortedView.</div>
 </li>
 </ul>
 </div>
@@ -153,115 +159,19 @@ implements <a href="../quantilescommon/QuantilesFloatsSketchIterator.html" title
 <!--   -->
 </a>
 <h3>Method Summary</h3>
-<table class="memberSummary">
-<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
-<tr>
-<th class="colFirst" scope="col">Modifier and Type</th>
-<th class="colSecond" scope="col">Method</th>
-<th class="colLast" scope="col">Description</th>
-</tr>
-<tr id="i0" class="altColor">
-<td class="colFirst"><code>float</code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getQuantile()">getQuantile</a></span>()</code></th>
-<td class="colLast">
-<div class="block">Gets the float quantile at the current index.</div>
-</td>
-</tr>
-<tr id="i1" class="rowColor">
-<td class="colFirst"><code>long</code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getWeight()">getWeight</a></span>()</code></th>
-<td class="colLast">
-<div class="block">Gets the natural weight at the current index.</div>
-</td>
-</tr>
-<tr id="i2" class="altColor">
-<td class="colFirst"><code>boolean</code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#next()">next</a></span>()</code></th>
-<td class="colLast">
-<div class="block">Advances the index and checks if it is valid.</div>
-</td>
-</tr>
-</table>
 <ul class="blockList">
-<li class="blockList"><a id="methods.inherited.from.class.java.lang.Object">
+<li class="blockList"><a id="methods.inherited.from.class.org.apache.datasketches.quantilescommon.GenericSortedViewIterator">
 <!--   -->
 </a>
-<h3>Methods inherited from class&nbsp;java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a></h3>
-<code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#clone()" title="class or interface in java.lang" class="externalLink">clone</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#equals(java.lang.Object)" title="class or interface in java.lang" class="externalLink">equals</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#finalize()" title="class or interfac [...]
+<h3>Methods inherited from class&nbsp;org.apache.datasketches.quantilescommon.<a href="../quantilescommon/GenericSortedViewIterator.html" title="class in org.apache.datasketches.quantilescommon">GenericSortedViewIterator</a></h3>
+<code><a href="../quantilescommon/GenericSortedViewIterator.html#getCumulativeWeight(org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">getCumulativeWeight</a>, <a href="../quantilescommon/GenericSortedViewIterator.html#getN()">getN</a>, <a href="../quantilescommon/GenericSortedViewIterator.html#getNormalizedRank(org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">getNormalizedRank</a>, <a href="../quantilescommon/GenericSortedViewIterator.html#getQuantile()">g [...]
 </ul>
-</li>
-</ul>
-</section>
-</li>
-</ul>
-</div>
-<div class="details">
 <ul class="blockList">
-<li class="blockList">
-<!-- ============ METHOD DETAIL ========== -->
-<section>
-<ul class="blockList">
-<li class="blockList"><a id="method.detail">
-<!--   -->
-</a>
-<h3>Method Detail</h3>
-<a id="getQuantile()">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>getQuantile</h4>
-<pre class="methodSignature">public&nbsp;float&nbsp;getQuantile()</pre>
-<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../quantilescommon/QuantilesFloatsSketchIterator.html#getQuantile()">QuantilesFloatsSketchIterator</a></code></span></div>
-<div class="block">Gets the float quantile at the current index.
-
- <p>Don't call this before calling next() for the first time
- or after getting false from next().</p></div>
-<dl>
-<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
-<dd><code><a href="../quantilescommon/QuantilesFloatsSketchIterator.html#getQuantile()">getQuantile</a></code>&nbsp;in interface&nbsp;<code><a href="../quantilescommon/QuantilesFloatsSketchIterator.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesFloatsSketchIterator</a></code></dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>the float quantile at the current index.</dd>
-</dl>
-</li>
-</ul>
-<a id="getWeight()">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>getWeight</h4>
-<pre class="methodSignature">public&nbsp;long&nbsp;getWeight()</pre>
-<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../quantilescommon/QuantilesSketchIterator.html#getWeight()">QuantilesSketchIterator</a></code></span></div>
-<div class="block">Gets the natural weight at the current index.
-
- <p>Don't call this before calling next() for the first time
- or after getting false from next().</p></div>
-<dl>
-<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
-<dd><code><a href="../quantilescommon/QuantilesSketchIterator.html#getWeight()">getWeight</a></code>&nbsp;in interface&nbsp;<code><a href="../quantilescommon/QuantilesSketchIterator.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesSketchIterator</a></code></dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>the natural weight at the current index.</dd>
-</dl>
-</li>
-</ul>
-<a id="next()">
+<li class="blockList"><a id="methods.inherited.from.class.java.lang.Object">
 <!--   -->
 </a>
-<ul class="blockListLast">
-<li class="blockList">
-<h4>next</h4>
-<pre class="methodSignature">public&nbsp;boolean&nbsp;next()</pre>
-<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../quantilescommon/QuantilesSketchIterator.html#next()">QuantilesSketchIterator</a></code></span></div>
-<div class="block">Advances the index and checks if it is valid.
- The state of this iterator is undefined before the first call of this method.</div>
-<dl>
-<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
-<dd><code><a href="../quantilescommon/QuantilesSketchIterator.html#next()">next</a></code>&nbsp;in interface&nbsp;<code><a href="../quantilescommon/QuantilesSketchIterator.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesSketchIterator</a></code></dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>true if the next index is valid.</dd>
-</dl>
-</li>
+<h3>Methods inherited from class&nbsp;java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a></h3>
+<code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#clone()" title="class or interface in java.lang" class="externalLink">clone</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#equals(java.lang.Object)" title="class or interface in java.lang" class="externalLink">equals</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#finalize()" title="class or interfac [...]
 </ul>
 </li>
 </ul>
@@ -286,7 +196,7 @@ implements <a href="../quantilescommon/QuantilesFloatsSketchIterator.html" title
 <li><a href="../../../../index.html">Overview</a></li>
 <li><a href="package-summary.html">Package</a></li>
 <li class="navBarCell1Rev">Class</li>
-<li><a href="class-use/KllFloatsSketchIterator.html">Use</a></li>
+<li><a href="class-use/KllItemsSketchSortedView.KllItemsSketchSortedViewIterator.html">Use</a></li>
 <li><a href="package-tree.html">Tree</a></li>
 <li><a href="../../../../deprecated-list.html">Deprecated</a></li>
 <li><a href="../../../../index-all.html">Index</a></li>
@@ -324,7 +234,7 @@ implements <a href="../quantilescommon/QuantilesFloatsSketchIterator.html" title
 <li>Detail:&nbsp;</li>
 <li>Field&nbsp;|&nbsp;</li>
 <li>Constr&nbsp;|&nbsp;</li>
-<li><a href="#method.detail">Method</a></li>
+<li>Method</li>
 </ul>
 </div>
 <a id="skip.navbar.bottom">
diff --git a/docs/master/org/apache/datasketches/quantiles/ItemsSketchSortedView.html b/docs/master/org/apache/datasketches/kll/KllItemsSketchSortedView.html
similarity index 74%
copy from docs/master/org/apache/datasketches/quantiles/ItemsSketchSortedView.html
copy to docs/master/org/apache/datasketches/kll/KllItemsSketchSortedView.html
index 20223e43..9aaafc9b 100644
--- a/docs/master/org/apache/datasketches/quantiles/ItemsSketchSortedView.html
+++ b/docs/master/org/apache/datasketches/kll/KllItemsSketchSortedView.html
@@ -3,7 +3,7 @@
 <html lang="en">
 <head>
 <!-- Generated by javadoc -->
-<title>ItemsSketchSortedView (datasketches-java 4.2.0-SNAPSHOT API)</title>
+<title>KllItemsSketchSortedView (datasketches-java 4.2.0-SNAPSHOT API)</title>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
 <link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
 <link rel="stylesheet" type="text/css" href="../../../../jquery/jquery-ui.min.css" title="Style">
@@ -21,7 +21,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="ItemsSketchSortedView (datasketches-java 4.2.0-SNAPSHOT API)";
+            parent.document.title="KllItemsSketchSortedView (datasketches-java 4.2.0-SNAPSHOT API)";
         }
     }
     catch(err) {
@@ -54,7 +54,7 @@ loadScripts(document, 'script');</script>
 <li><a href="../../../../index.html">Overview</a></li>
 <li><a href="package-summary.html">Package</a></li>
 <li class="navBarCell1Rev">Class</li>
-<li><a href="class-use/ItemsSketchSortedView.html">Use</a></li>
+<li><a href="class-use/KllItemsSketchSortedView.html">Use</a></li>
 <li><a href="package-tree.html">Tree</a></li>
 <li><a href="../../../../deprecated-list.html">Deprecated</a></li>
 <li><a href="../../../../index-all.html">Index</a></li>
@@ -89,15 +89,15 @@ loadScripts(document, 'script');</script>
 <div>
 <ul class="subNavList">
 <li>Summary:&nbsp;</li>
-<li>Nested&nbsp;|&nbsp;</li>
+<li><a href="#nested.class.summary">Nested</a>&nbsp;|&nbsp;</li>
 <li>Field&nbsp;|&nbsp;</li>
-<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
 <li><a href="#method.summary">Method</a></li>
 </ul>
 <ul class="subNavList">
 <li>Detail:&nbsp;</li>
 <li>Field&nbsp;|&nbsp;</li>
-<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
 <li><a href="#method.detail">Method</a></li>
 </ul>
 </div>
@@ -116,15 +116,15 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <!-- ======== START OF CLASS DATA ======== -->
 <main role="main">
 <div class="header">
-<div class="subTitle"><span class="packageLabelInType">Package</span>&nbsp;<a href="package-summary.html">org.apache.datasketches.quantiles</a></div>
-<h2 title="Class ItemsSketchSortedView" class="title">Class ItemsSketchSortedView&lt;T&gt;</h2>
+<div class="subTitle"><span class="packageLabelInType">Package</span>&nbsp;<a href="package-summary.html">org.apache.datasketches.kll</a></div>
+<h2 title="Class KllItemsSketchSortedView" class="title">Class KllItemsSketchSortedView&lt;T&gt;</h2>
 </div>
 <div class="contentContainer">
 <ul class="inheritance">
 <li><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">java.lang.Object</a></li>
 <li>
 <ul class="inheritance">
-<li>org.apache.datasketches.quantiles.ItemsSketchSortedView&lt;T&gt;</li>
+<li>org.apache.datasketches.kll.KllItemsSketchSortedView&lt;T&gt;</li>
 </ul>
 </li>
 </ul>
@@ -140,13 +140,13 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <dd><code><a href="../quantilescommon/GenericSortedView.html" title="interface in org.apache.datasketches.quantilescommon">GenericSortedView</a>&lt;T&gt;</code>, <code><a href="../quantilescommon/SortedView.html" title="interface in org.apache.datasketches.quantilescommon">SortedView</a></code></dd>
 </dl>
 <hr>
-<pre>public final class <span class="typeNameLabel">ItemsSketchSortedView&lt;T&gt;</span>
+<pre>public class <span class="typeNameLabel">KllItemsSketchSortedView&lt;T&gt;</span>
 extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a>
 implements <a href="../quantilescommon/GenericSortedView.html" title="interface in org.apache.datasketches.quantilescommon">GenericSortedView</a>&lt;T&gt;</pre>
-<div class="block">The SortedView of the Classic Quantiles ItemsSketch.</div>
+<div class="block">The SortedView of the KllItemsSketch.</div>
 <dl>
 <dt><span class="simpleTagLabel">Author:</span></dt>
-<dd>Kevin Lang, Alexander Saydakov</dd>
+<dd>Alexander Saydakov, Lee Rhodes</dd>
 </dl>
 </li>
 </ul>
@@ -154,6 +154,64 @@ implements <a href="../quantilescommon/GenericSortedView.html" title="interface
 <div class="summary">
 <ul class="blockList">
 <li class="blockList">
+<!-- ======== NESTED CLASS SUMMARY ======== -->
+<section>
+<ul class="blockList">
+<li class="blockList"><a id="nested.class.summary">
+<!--   -->
+</a>
+<h3>Nested Class Summary</h3>
+<table class="memberSummary">
+<caption><span>Nested Classes</span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colSecond" scope="col">Class</th>
+<th class="colLast" scope="col">Description</th>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static class&nbsp;</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="KllItemsSketchSortedView.KllItemsSketchSortedViewIterator.html" title="class in org.apache.datasketches.kll">KllItemsSketchSortedView.KllItemsSketchSortedViewIterator</a>&lt;<a href="KllItemsSketchSortedView.KllItemsSketchSortedViewIterator.html" title="type parameter in KllItemsSketchSortedView.KllItemsSketchSortedViewIterator">T</a>&gt;</span></code></th>
+<td class="colLast">
+<div class="block">Iterator over KllItemsSketchSortedView.</div>
+</td>
+</tr>
+</table>
+</li>
+</ul>
+</section>
+<!-- ======== CONSTRUCTOR SUMMARY ======== -->
+<section>
+<ul class="blockList">
+<li class="blockList"><a id="constructor.summary">
+<!--   -->
+</a>
+<h3>Constructor Summary</h3>
+<table class="memberSummary">
+<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Constructor</th>
+<th class="colLast" scope="col">Description</th>
+</tr>
+<tr class="altColor">
+<th class="colConstructorName" scope="row"><code><span class="memberNameLink"><a href="#%3Cinit%3E(org.apache.datasketches.kll.KllItemsSketch)">KllItemsSketchSortedView</a></span>&#8203;(<a href="KllItemsSketch.html" title="class in org.apache.datasketches.kll">KllItemsSketch</a>&lt;<a href="KllItemsSketchSortedView.html" title="type parameter in KllItemsSketchSortedView">T</a>&gt;&nbsp;sk)</code></th>
+<td class="colLast">
+<div class="block">Constructs this Sorted View given the sketch</div>
+</td>
+</tr>
+<tr class="rowColor">
+<th class="colConstructorName" scope="row"><code><span class="memberNameLink"><a href="#%3Cinit%3E(T%5B%5D,long%5B%5D,long,T,java.util.Comparator)">KllItemsSketchSortedView</a></span>&#8203;(<a href="KllItemsSketchSortedView.html" title="type parameter in KllItemsSketchSortedView">T</a>[]&nbsp;quantiles,
+                        long[]&nbsp;cumWeights,
+                        long&nbsp;totalN,
+                        <a href="KllItemsSketchSortedView.html" title="type parameter in KllItemsSketchSortedView">T</a>&nbsp;minItem,
+                        <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Comparator.html?is-external=true" title="class or interface in java.util" class="externalLink">Comparator</a>&lt;? super <a href="KllItemsSketchSortedView.html" title="type parameter in KllItemsSketchSortedView">T</a>&gt;&nbsp;comparator)</code></th>
+<td class="colLast">
+<div class="block">Construct from elements for testing only.</div>
+</td>
+</tr>
+</table>
+</li>
+</ul>
+</section>
 <!-- ========== METHOD SUMMARY =========== -->
 <section>
 <ul class="blockList">
@@ -170,7 +228,7 @@ implements <a href="../quantilescommon/GenericSortedView.html" title="interface
 </tr>
 <tr id="i0" class="altColor">
 <td class="colFirst"><code>double[]</code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getCDF(T%5B%5D,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">getCDF</a></span>&#8203;(<a href="ItemsSketchSortedView.html" title="type parameter in ItemsSketchSortedView">T</a>[]&nbsp;splitPoints,
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getCDF(T%5B%5D,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">getCDF</a></span>&#8203;(<a href="KllItemsSketchSortedView.html" title="type parameter in KllItemsSketchSortedView">T</a>[]&nbsp;splitPoints,
       <a href="../quantilescommon/QuantileSearchCriteria.html" title="enum in org.apache.datasketches.quantilescommon">QuantileSearchCriteria</a>&nbsp;searchCrit)</code></th>
 <td class="colLast">
 <div class="block">Returns an approximation to the Cumulative Distribution Function (CDF) of the input stream
@@ -187,7 +245,7 @@ implements <a href="../quantilescommon/GenericSortedView.html" title="interface
 </tr>
 <tr id="i2" class="altColor">
 <td class="colFirst"><code>double[]</code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getPMF(T%5B%5D,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">getPMF</a></span>&#8203;(<a href="ItemsSketchSortedView.html" title="type parameter in ItemsSketchSortedView">T</a>[]&nbsp;splitPoints,
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getPMF(T%5B%5D,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">getPMF</a></span>&#8203;(<a href="KllItemsSketchSortedView.html" title="type parameter in KllItemsSketchSortedView">T</a>[]&nbsp;splitPoints,
       <a href="../quantilescommon/QuantileSearchCriteria.html" title="enum in org.apache.datasketches.quantilescommon">QuantileSearchCriteria</a>&nbsp;searchCrit)</code></th>
 <td class="colLast">
 <div class="block">Returns an approximation to the Probability Mass Function (PMF) of the input stream
@@ -196,7 +254,7 @@ implements <a href="../quantilescommon/GenericSortedView.html" title="interface
 </td>
 </tr>
 <tr id="i3" class="rowColor">
-<td class="colFirst"><code><a href="ItemsSketchSortedView.html" title="type parameter in ItemsSketchSortedView">T</a></code></td>
+<td class="colFirst"><code><a href="KllItemsSketchSortedView.html" title="type parameter in KllItemsSketchSortedView">T</a></code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getQuantile(double,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">getQuantile</a></span>&#8203;(double&nbsp;rank,
            <a href="../quantilescommon/QuantileSearchCriteria.html" title="enum in org.apache.datasketches.quantilescommon">QuantileSearchCriteria</a>&nbsp;searchCrit)</code></th>
 <td class="colLast">
@@ -204,7 +262,7 @@ implements <a href="../quantilescommon/GenericSortedView.html" title="interface
 </td>
 </tr>
 <tr id="i4" class="altColor">
-<td class="colFirst"><code><a href="ItemsSketchSortedView.html" title="type parameter in ItemsSketchSortedView">T</a>[]</code></td>
+<td class="colFirst"><code><a href="KllItemsSketchSortedView.html" title="type parameter in KllItemsSketchSortedView">T</a>[]</code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getQuantiles()">getQuantiles</a></span>()</code></th>
 <td class="colLast">
 <div class="block">Returns the array of quantiles.</div>
@@ -212,7 +270,7 @@ implements <a href="../quantilescommon/GenericSortedView.html" title="interface
 </tr>
 <tr id="i5" class="rowColor">
 <td class="colFirst"><code>double</code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getRank(T,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">getRank</a></span>&#8203;(<a href="ItemsSketchSortedView.html" title="type parameter in ItemsSketchSortedView">T</a>&nbsp;quantile,
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getRank(T,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">getRank</a></span>&#8203;(<a href="KllItemsSketchSortedView.html" title="type parameter in KllItemsSketchSortedView">T</a>&nbsp;quantile,
        <a href="../quantilescommon/QuantileSearchCriteria.html" title="enum in org.apache.datasketches.quantilescommon">QuantileSearchCriteria</a>&nbsp;searchCrit)</code></th>
 <td class="colLast">
 <div class="block">Gets the normalized rank corresponding to the given a quantile.</div>
@@ -226,7 +284,7 @@ implements <a href="../quantilescommon/GenericSortedView.html" title="interface
 </td>
 </tr>
 <tr id="i7" class="rowColor">
-<td class="colFirst"><code><a href="ItemsSketchSortedViewIterator.html" title="class in org.apache.datasketches.quantiles">ItemsSketchSortedViewIterator</a>&lt;<a href="ItemsSketchSortedView.html" title="type parameter in ItemsSketchSortedView">T</a>&gt;</code></td>
+<td class="colFirst"><code><a href="KllItemsSketchSortedView.KllItemsSketchSortedViewIterator.html" title="class in org.apache.datasketches.kll">KllItemsSketchSortedView.KllItemsSketchSortedViewIterator</a>&lt;<a href="KllItemsSketchSortedView.html" title="type parameter in KllItemsSketchSortedView">T</a>&gt;</code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#iterator()">iterator</a></span>()</code></th>
 <td class="colLast">
 <div class="block">Returns an iterator for this Sorted View.</div>
@@ -249,64 +307,61 @@ implements <a href="../quantilescommon/GenericSortedView.html" title="interface
 <div class="details">
 <ul class="blockList">
 <li class="blockList">
-<!-- ============ METHOD DETAIL ========== -->
+<!-- ========= CONSTRUCTOR DETAIL ======== -->
 <section>
 <ul class="blockList">
-<li class="blockList"><a id="method.detail">
+<li class="blockList"><a id="constructor.detail">
 <!--   -->
 </a>
-<h3>Method Detail</h3>
-<a id="getQuantile(double,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">
+<h3>Constructor Detail</h3>
+<a id="&lt;init&gt;(java.lang.Object[],long[],long,java.lang.Object,java.util.Comparator)">
+<!--   -->
+</a><a id="&lt;init&gt;(T[],long[],long,T,java.util.Comparator)">
 <!--   -->
 </a>
 <ul class="blockList">
 <li class="blockList">
-<h4>getQuantile</h4>
-<pre class="methodSignature">public&nbsp;<a href="ItemsSketchSortedView.html" title="type parameter in ItemsSketchSortedView">T</a>&nbsp;getQuantile&#8203;(double&nbsp;rank,
-                     <a href="../quantilescommon/QuantileSearchCriteria.html" title="enum in org.apache.datasketches.quantilescommon">QuantileSearchCriteria</a>&nbsp;searchCrit)</pre>
-<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../quantilescommon/GenericSortedView.html#getQuantile(double,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">GenericSortedView</a></code></span></div>
-<div class="block">Gets the approximate quantile of the given normalized rank and the given search criterion.</div>
+<h4>KllItemsSketchSortedView</h4>
+<pre>public&nbsp;KllItemsSketchSortedView&#8203;(<a href="KllItemsSketchSortedView.html" title="type parameter in KllItemsSketchSortedView">T</a>[]&nbsp;quantiles,
+                                long[]&nbsp;cumWeights,
+                                long&nbsp;totalN,
+                                <a href="KllItemsSketchSortedView.html" title="type parameter in KllItemsSketchSortedView">T</a>&nbsp;minItem,
+                                <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Comparator.html?is-external=true" title="class or interface in java.util" class="externalLink">Comparator</a>&lt;? super <a href="KllItemsSketchSortedView.html" title="type parameter in KllItemsSketchSortedView">T</a>&gt;&nbsp;comparator)</pre>
+<div class="block">Construct from elements for testing only.</div>
 <dl>
-<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
-<dd><code><a href="../quantilescommon/GenericSortedView.html#getQuantile(double,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">getQuantile</a></code>&nbsp;in interface&nbsp;<code><a href="../quantilescommon/GenericSortedView.html" title="interface in org.apache.datasketches.quantilescommon">GenericSortedView</a>&lt;<a href="ItemsSketchSortedView.html" title="type parameter in ItemsSketchSortedView">T</a>&gt;</code></dd>
 <dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>rank</code> - the given normalized rank, a double in the range [0.0, 1.0].</dd>
-<dd><code>searchCrit</code> - If INCLUSIVE, the given rank includes all quantiles &le;
- the quantile directly corresponding to the given rank.
- If EXCLUSIVE, he given rank includes all quantiles &lt;
- the quantile directly corresponding to the given rank.</dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>the approximate quantile given the normalized rank.</dd>
-<dt><span class="seeLabel">See Also:</span></dt>
-<dd><a href="../quantilescommon/QuantileSearchCriteria.html" title="enum in org.apache.datasketches.quantilescommon"><code>QuantileSearchCriteria</code></a></dd>
+<dd><code>quantiles</code> - sorted array of quantiles</dd>
+<dd><code>cumWeights</code> - sorted, monotonically increasing cumulative weights.</dd>
+<dd><code>totalN</code> - the total number of items presented to the sketch.</dd>
+<dd><code>minItem</code> - used to extract the type of T</dd>
+<dd><code>comparator</code> - the Comparator for type T</dd>
 </dl>
 </li>
 </ul>
-<a id="getRank(java.lang.Object,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">
-<!--   -->
-</a><a id="getRank(T,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">
+<a id="&lt;init&gt;(org.apache.datasketches.kll.KllItemsSketch)">
 <!--   -->
 </a>
-<ul class="blockList">
+<ul class="blockListLast">
 <li class="blockList">
-<h4>getRank</h4>
-<pre class="methodSignature">public&nbsp;double&nbsp;getRank&#8203;(<a href="ItemsSketchSortedView.html" title="type parameter in ItemsSketchSortedView">T</a>&nbsp;quantile,
-                      <a href="../quantilescommon/QuantileSearchCriteria.html" title="enum in org.apache.datasketches.quantilescommon">QuantileSearchCriteria</a>&nbsp;searchCrit)</pre>
-<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../quantilescommon/GenericSortedView.html#getRank(T,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">GenericSortedView</a></code></span></div>
-<div class="block">Gets the normalized rank corresponding to the given a quantile.</div>
+<h4>KllItemsSketchSortedView</h4>
+<pre>public&nbsp;KllItemsSketchSortedView&#8203;(<a href="KllItemsSketch.html" title="class in org.apache.datasketches.kll">KllItemsSketch</a>&lt;<a href="KllItemsSketchSortedView.html" title="type parameter in KllItemsSketchSortedView">T</a>&gt;&nbsp;sk)</pre>
+<div class="block">Constructs this Sorted View given the sketch</div>
 <dl>
-<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
-<dd><code><a href="../quantilescommon/GenericSortedView.html#getRank(T,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">getRank</a></code>&nbsp;in interface&nbsp;<code><a href="../quantilescommon/GenericSortedView.html" title="interface in org.apache.datasketches.quantilescommon">GenericSortedView</a>&lt;<a href="ItemsSketchSortedView.html" title="type parameter in ItemsSketchSortedView">T</a>&gt;</code></dd>
 <dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>quantile</code> - the given quantile</dd>
-<dd><code>searchCrit</code> - if INCLUSIVE the given quantile is included into the rank.</dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>the normalized rank corresponding to the given quantile.</dd>
-<dt><span class="seeLabel">See Also:</span></dt>
-<dd><a href="../quantilescommon/QuantileSearchCriteria.html" title="enum in org.apache.datasketches.quantilescommon"><code>QuantileSearchCriteria</code></a></dd>
+<dd><code>sk</code> - the given KllItemsSketch.</dd>
 </dl>
 </li>
 </ul>
+</li>
+</ul>
+</section>
+<!-- ============ METHOD DETAIL ========== -->
+<section>
+<ul class="blockList">
+<li class="blockList"><a id="method.detail">
+<!--   -->
+</a>
+<h3>Method Detail</h3>
 <a id="getCDF(java.lang.Object[],org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">
 <!--   -->
 </a><a id="getCDF(T[],org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">
@@ -315,7 +370,7 @@ implements <a href="../quantilescommon/GenericSortedView.html" title="interface
 <ul class="blockList">
 <li class="blockList">
 <h4>getCDF</h4>
-<pre class="methodSignature">public&nbsp;double[]&nbsp;getCDF&#8203;(<a href="ItemsSketchSortedView.html" title="type parameter in ItemsSketchSortedView">T</a>[]&nbsp;splitPoints,
+<pre class="methodSignature">public&nbsp;double[]&nbsp;getCDF&#8203;(<a href="KllItemsSketchSortedView.html" title="type parameter in KllItemsSketchSortedView">T</a>[]&nbsp;splitPoints,
                        <a href="../quantilescommon/QuantileSearchCriteria.html" title="enum in org.apache.datasketches.quantilescommon">QuantileSearchCriteria</a>&nbsp;searchCrit)</pre>
 <div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../quantilescommon/GenericSortedView.html#getCDF(T%5B%5D,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">GenericSortedView</a></code></span></div>
 <div class="block">Returns an approximation to the Cumulative Distribution Function (CDF) of the input stream
@@ -328,7 +383,7 @@ implements <a href="../quantilescommon/GenericSortedView.html" title="interface
  getNormalizedRankError(false) function.</p></div>
 <dl>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
-<dd><code><a href="../quantilescommon/GenericSortedView.html#getCDF(T%5B%5D,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">getCDF</a></code>&nbsp;in interface&nbsp;<code><a href="../quantilescommon/GenericSortedView.html" title="interface in org.apache.datasketches.quantilescommon">GenericSortedView</a>&lt;<a href="ItemsSketchSortedView.html" title="type parameter in ItemsSketchSortedView">T</a>&gt;</code></dd>
+<dd><code><a href="../quantilescommon/GenericSortedView.html#getCDF(T%5B%5D,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">getCDF</a></code>&nbsp;in interface&nbsp;<code><a href="../quantilescommon/GenericSortedView.html" title="interface in org.apache.datasketches.quantilescommon">GenericSortedView</a>&lt;<a href="KllItemsSketchSortedView.html" title="type parameter in KllItemsSketchSortedView">T</a>&gt;</code></dd>
 <dt><span class="paramLabel">Parameters:</span></dt>
 <dd><code>splitPoints</code> - an array of <i>m</i> unique, monotonically increasing items
  (of the same type as the input items)
@@ -356,6 +411,23 @@ implements <a href="../quantilescommon/GenericSortedView.html" title="interface
 </dl>
 </li>
 </ul>
+<a id="getCumulativeWeights()">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getCumulativeWeights</h4>
+<pre class="methodSignature">public&nbsp;long[]&nbsp;getCumulativeWeights()</pre>
+<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../quantilescommon/SortedView.html#getCumulativeWeights()">SortedView</a></code></span></div>
+<div class="block">Returns the array of cumulative weights</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="../quantilescommon/SortedView.html#getCumulativeWeights()">getCumulativeWeights</a></code>&nbsp;in interface&nbsp;<code><a href="../quantilescommon/SortedView.html" title="interface in org.apache.datasketches.quantilescommon">SortedView</a></code></dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the array of cumulative weights</dd>
+</dl>
+</li>
+</ul>
 <a id="getPMF(java.lang.Object[],org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">
 <!--   -->
 </a><a id="getPMF(T[],org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">
@@ -364,7 +436,7 @@ implements <a href="../quantilescommon/GenericSortedView.html" title="interface
 <ul class="blockList">
 <li class="blockList">
 <h4>getPMF</h4>
-<pre class="methodSignature">public&nbsp;double[]&nbsp;getPMF&#8203;(<a href="ItemsSketchSortedView.html" title="type parameter in ItemsSketchSortedView">T</a>[]&nbsp;splitPoints,
+<pre class="methodSignature">public&nbsp;double[]&nbsp;getPMF&#8203;(<a href="KllItemsSketchSortedView.html" title="type parameter in KllItemsSketchSortedView">T</a>[]&nbsp;splitPoints,
                        <a href="../quantilescommon/QuantileSearchCriteria.html" title="enum in org.apache.datasketches.quantilescommon">QuantileSearchCriteria</a>&nbsp;searchCrit)</pre>
 <div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../quantilescommon/GenericSortedView.html#getPMF(T%5B%5D,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">GenericSortedView</a></code></span></div>
 <div class="block">Returns an approximation to the Probability Mass Function (PMF) of the input stream
@@ -375,7 +447,7 @@ implements <a href="../quantilescommon/GenericSortedView.html" title="interface
  getNormalizedRankError(true) function.</p></div>
 <dl>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
-<dd><code><a href="../quantilescommon/GenericSortedView.html#getPMF(T%5B%5D,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">getPMF</a></code>&nbsp;in interface&nbsp;<code><a href="../quantilescommon/GenericSortedView.html" title="interface in org.apache.datasketches.quantilescommon">GenericSortedView</a>&lt;<a href="ItemsSketchSortedView.html" title="type parameter in ItemsSketchSortedView">T</a>&gt;</code></dd>
+<dd><code><a href="../quantilescommon/GenericSortedView.html#getPMF(T%5B%5D,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">getPMF</a></code>&nbsp;in interface&nbsp;<code><a href="../quantilescommon/GenericSortedView.html" title="interface in org.apache.datasketches.quantilescommon">GenericSortedView</a>&lt;<a href="KllItemsSketchSortedView.html" title="type parameter in KllItemsSketchSortedView">T</a>&gt;</code></dd>
 <dt><span class="paramLabel">Parameters:</span></dt>
 <dd><code>splitPoints</code> - an array of <i>m</i> unique, monotonically increasing items
  (of the same type as the input items)
@@ -410,20 +482,29 @@ implements <a href="../quantilescommon/GenericSortedView.html" title="interface
 </dl>
 </li>
 </ul>
-<a id="getCumulativeWeights()">
+<a id="getQuantile(double,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">
 <!--   -->
 </a>
 <ul class="blockList">
 <li class="blockList">
-<h4>getCumulativeWeights</h4>
-<pre class="methodSignature">public&nbsp;long[]&nbsp;getCumulativeWeights()</pre>
-<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../quantilescommon/SortedView.html#getCumulativeWeights()">SortedView</a></code></span></div>
-<div class="block">Returns the array of cumulative weights</div>
+<h4>getQuantile</h4>
+<pre class="methodSignature">public&nbsp;<a href="KllItemsSketchSortedView.html" title="type parameter in KllItemsSketchSortedView">T</a>&nbsp;getQuantile&#8203;(double&nbsp;rank,
+                     <a href="../quantilescommon/QuantileSearchCriteria.html" title="enum in org.apache.datasketches.quantilescommon">QuantileSearchCriteria</a>&nbsp;searchCrit)</pre>
+<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../quantilescommon/GenericSortedView.html#getQuantile(double,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">GenericSortedView</a></code></span></div>
+<div class="block">Gets the approximate quantile of the given normalized rank and the given search criterion.</div>
 <dl>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
-<dd><code><a href="../quantilescommon/SortedView.html#getCumulativeWeights()">getCumulativeWeights</a></code>&nbsp;in interface&nbsp;<code><a href="../quantilescommon/SortedView.html" title="interface in org.apache.datasketches.quantilescommon">SortedView</a></code></dd>
+<dd><code><a href="../quantilescommon/GenericSortedView.html#getQuantile(double,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">getQuantile</a></code>&nbsp;in interface&nbsp;<code><a href="../quantilescommon/GenericSortedView.html" title="interface in org.apache.datasketches.quantilescommon">GenericSortedView</a>&lt;<a href="KllItemsSketchSortedView.html" title="type parameter in KllItemsSketchSortedView">T</a>&gt;</code></dd>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>rank</code> - the given normalized rank, a double in the range [0.0, 1.0].</dd>
+<dd><code>searchCrit</code> - If INCLUSIVE, the given rank includes all quantiles &le;
+ the quantile directly corresponding to the given rank.
+ If EXCLUSIVE, he given rank includes all quantiles &lt;
+ the quantile directly corresponding to the given rank.</dd>
 <dt><span class="returnLabel">Returns:</span></dt>
-<dd>the array of cumulative weights</dd>
+<dd>the approximate quantile given the normalized rank.</dd>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../quantilescommon/QuantileSearchCriteria.html" title="enum in org.apache.datasketches.quantilescommon"><code>QuantileSearchCriteria</code></a></dd>
 </dl>
 </li>
 </ul>
@@ -433,17 +514,42 @@ implements <a href="../quantilescommon/GenericSortedView.html" title="interface
 <ul class="blockList">
 <li class="blockList">
 <h4>getQuantiles</h4>
-<pre class="methodSignature">public&nbsp;<a href="ItemsSketchSortedView.html" title="type parameter in ItemsSketchSortedView">T</a>[]&nbsp;getQuantiles()</pre>
+<pre class="methodSignature">public&nbsp;<a href="KllItemsSketchSortedView.html" title="type parameter in KllItemsSketchSortedView">T</a>[]&nbsp;getQuantiles()</pre>
 <div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../quantilescommon/GenericSortedView.html#getQuantiles()">GenericSortedView</a></code></span></div>
 <div class="block">Returns the array of quantiles.</div>
 <dl>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
-<dd><code><a href="../quantilescommon/GenericSortedView.html#getQuantiles()">getQuantiles</a></code>&nbsp;in interface&nbsp;<code><a href="../quantilescommon/GenericSortedView.html" title="interface in org.apache.datasketches.quantilescommon">GenericSortedView</a>&lt;<a href="ItemsSketchSortedView.html" title="type parameter in ItemsSketchSortedView">T</a>&gt;</code></dd>
+<dd><code><a href="../quantilescommon/GenericSortedView.html#getQuantiles()">getQuantiles</a></code>&nbsp;in interface&nbsp;<code><a href="../quantilescommon/GenericSortedView.html" title="interface in org.apache.datasketches.quantilescommon">GenericSortedView</a>&lt;<a href="KllItemsSketchSortedView.html" title="type parameter in KllItemsSketchSortedView">T</a>&gt;</code></dd>
 <dt><span class="returnLabel">Returns:</span></dt>
 <dd>the array of quantiles.</dd>
 </dl>
 </li>
 </ul>
+<a id="getRank(java.lang.Object,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">
+<!--   -->
+</a><a id="getRank(T,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getRank</h4>
+<pre class="methodSignature">public&nbsp;double&nbsp;getRank&#8203;(<a href="KllItemsSketchSortedView.html" title="type parameter in KllItemsSketchSortedView">T</a>&nbsp;quantile,
+                      <a href="../quantilescommon/QuantileSearchCriteria.html" title="enum in org.apache.datasketches.quantilescommon">QuantileSearchCriteria</a>&nbsp;searchCrit)</pre>
+<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../quantilescommon/GenericSortedView.html#getRank(T,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">GenericSortedView</a></code></span></div>
+<div class="block">Gets the normalized rank corresponding to the given a quantile.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="../quantilescommon/GenericSortedView.html#getRank(T,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">getRank</a></code>&nbsp;in interface&nbsp;<code><a href="../quantilescommon/GenericSortedView.html" title="interface in org.apache.datasketches.quantilescommon">GenericSortedView</a>&lt;<a href="KllItemsSketchSortedView.html" title="type parameter in KllItemsSketchSortedView">T</a>&gt;</code></dd>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>quantile</code> - the given quantile</dd>
+<dd><code>searchCrit</code> - if INCLUSIVE the given quantile is included into the rank.</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the normalized rank corresponding to the given quantile.</dd>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../quantilescommon/QuantileSearchCriteria.html" title="enum in org.apache.datasketches.quantilescommon"><code>QuantileSearchCriteria</code></a></dd>
+</dl>
+</li>
+</ul>
 <a id="isEmpty()">
 <!--   -->
 </a>
@@ -467,12 +573,12 @@ implements <a href="../quantilescommon/GenericSortedView.html" title="interface
 <ul class="blockListLast">
 <li class="blockList">
 <h4>iterator</h4>
-<pre class="methodSignature">public&nbsp;<a href="ItemsSketchSortedViewIterator.html" title="class in org.apache.datasketches.quantiles">ItemsSketchSortedViewIterator</a>&lt;<a href="ItemsSketchSortedView.html" title="type parameter in ItemsSketchSortedView">T</a>&gt;&nbsp;iterator()</pre>
+<pre class="methodSignature">public&nbsp;<a href="KllItemsSketchSortedView.KllItemsSketchSortedViewIterator.html" title="class in org.apache.datasketches.kll">KllItemsSketchSortedView.KllItemsSketchSortedViewIterator</a>&lt;<a href="KllItemsSketchSortedView.html" title="type parameter in KllItemsSketchSortedView">T</a>&gt;&nbsp;iterator()</pre>
 <div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../quantilescommon/SortedView.html#iterator()">SortedView</a></code></span></div>
 <div class="block">Returns an iterator for this Sorted View.</div>
 <dl>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
-<dd><code><a href="../quantilescommon/GenericSortedView.html#iterator()">iterator</a></code>&nbsp;in interface&nbsp;<code><a href="../quantilescommon/GenericSortedView.html" title="interface in org.apache.datasketches.quantilescommon">GenericSortedView</a>&lt;<a href="ItemsSketchSortedView.html" title="type parameter in ItemsSketchSortedView">T</a>&gt;</code></dd>
+<dd><code><a href="../quantilescommon/GenericSortedView.html#iterator()">iterator</a></code>&nbsp;in interface&nbsp;<code><a href="../quantilescommon/GenericSortedView.html" title="interface in org.apache.datasketches.quantilescommon">GenericSortedView</a>&lt;<a href="KllItemsSketchSortedView.html" title="type parameter in KllItemsSketchSortedView">T</a>&gt;</code></dd>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
 <dd><code><a href="../quantilescommon/SortedView.html#iterator()">iterator</a></code>&nbsp;in interface&nbsp;<code><a href="../quantilescommon/SortedView.html" title="interface in org.apache.datasketches.quantilescommon">SortedView</a></code></dd>
 <dt><span class="returnLabel">Returns:</span></dt>
@@ -503,7 +609,7 @@ implements <a href="../quantilescommon/GenericSortedView.html" title="interface
 <li><a href="../../../../index.html">Overview</a></li>
 <li><a href="package-summary.html">Package</a></li>
 <li class="navBarCell1Rev">Class</li>
-<li><a href="class-use/ItemsSketchSortedView.html">Use</a></li>
+<li><a href="class-use/KllItemsSketchSortedView.html">Use</a></li>
 <li><a href="package-tree.html">Tree</a></li>
 <li><a href="../../../../deprecated-list.html">Deprecated</a></li>
 <li><a href="../../../../index-all.html">Index</a></li>
@@ -532,15 +638,15 @@ implements <a href="../quantilescommon/GenericSortedView.html" title="interface
 <div>
 <ul class="subNavList">
 <li>Summary:&nbsp;</li>
-<li>Nested&nbsp;|&nbsp;</li>
+<li><a href="#nested.class.summary">Nested</a>&nbsp;|&nbsp;</li>
 <li>Field&nbsp;|&nbsp;</li>
-<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
 <li><a href="#method.summary">Method</a></li>
 </ul>
 <ul class="subNavList">
 <li>Detail:&nbsp;</li>
 <li>Field&nbsp;|&nbsp;</li>
-<li>Constr&nbsp;|&nbsp;</li>
+<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
 <li><a href="#method.detail">Method</a></li>
 </ul>
 </div>
diff --git a/docs/master/org/apache/datasketches/kll/KllSketch.SketchType.html b/docs/master/org/apache/datasketches/kll/KllSketch.SketchStructure.html
similarity index 74%
copy from docs/master/org/apache/datasketches/kll/KllSketch.SketchType.html
copy to docs/master/org/apache/datasketches/kll/KllSketch.SketchStructure.html
index cd522db4..aedd8632 100644
--- a/docs/master/org/apache/datasketches/kll/KllSketch.SketchType.html
+++ b/docs/master/org/apache/datasketches/kll/KllSketch.SketchStructure.html
@@ -3,7 +3,7 @@
 <html lang="en">
 <head>
 <!-- Generated by javadoc -->
-<title>KllSketch.SketchType (datasketches-java 4.2.0-SNAPSHOT API)</title>
+<title>KllSketch.SketchStructure (datasketches-java 4.2.0-SNAPSHOT API)</title>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
 <link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
 <link rel="stylesheet" type="text/css" href="../../../../jquery/jquery-ui.min.css" title="Style">
@@ -21,14 +21,14 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="KllSketch.SketchType (datasketches-java 4.2.0-SNAPSHOT API)";
+            parent.document.title="KllSketch.SketchStructure (datasketches-java 4.2.0-SNAPSHOT API)";
         }
     }
     catch(err) {
     }
 //-->
-var data = {"i0":9,"i1":9};
-var tabs = {65535:["t0","All Methods"],1:["t1","Static Methods"],8:["t4","Concrete Methods"]};
+var data = {"i0":10,"i1":10,"i2":9,"i3":9,"i4":9};
+var tabs = {65535:["t0","All Methods"],1:["t1","Static Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
 var altColor = "altColor";
 var rowColor = "rowColor";
 var tableTab = "tableTab";
@@ -54,7 +54,7 @@ loadScripts(document, 'script');</script>
 <li><a href="../../../../index.html">Overview</a></li>
 <li><a href="package-summary.html">Package</a></li>
 <li class="navBarCell1Rev">Class</li>
-<li><a href="class-use/KllSketch.SketchType.html">Use</a></li>
+<li><a href="class-use/KllSketch.SketchStructure.html">Use</a></li>
 <li><a href="package-tree.html">Tree</a></li>
 <li><a href="../../../../deprecated-list.html">Deprecated</a></li>
 <li><a href="../../../../index-all.html">Index</a></li>
@@ -117,17 +117,17 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <main role="main">
 <div class="header">
 <div class="subTitle"><span class="packageLabelInType">Package</span>&nbsp;<a href="package-summary.html">org.apache.datasketches.kll</a></div>
-<h2 title="Enum KllSketch.SketchType" class="title">Enum KllSketch.SketchType</h2>
+<h2 title="Enum KllSketch.SketchStructure" class="title">Enum KllSketch.SketchStructure</h2>
 </div>
 <div class="contentContainer">
 <ul class="inheritance">
 <li><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">java.lang.Object</a></li>
 <li>
 <ul class="inheritance">
-<li><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang" class="externalLink">java.lang.Enum</a>&lt;<a href="KllSketch.SketchType.html" title="enum in org.apache.datasketches.kll">KllSketch.SketchType</a>&gt;</li>
+<li><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang" class="externalLink">java.lang.Enum</a>&lt;<a href="KllSketch.SketchStructure.html" title="enum in org.apache.datasketches.kll">KllSketch.SketchStructure</a>&gt;</li>
 <li>
 <ul class="inheritance">
-<li>org.apache.datasketches.kll.KllSketch.SketchType</li>
+<li>org.apache.datasketches.kll.KllSketch.SketchStructure</li>
 </ul>
 </li>
 </ul>
@@ -138,16 +138,16 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <li class="blockList">
 <dl>
 <dt>All Implemented Interfaces:</dt>
-<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io" class="externalLink">Serializable</a></code>, <code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Comparable.html?is-external=true" title="class or interface in java.lang" class="externalLink">Comparable</a>&lt;<a href="KllSketch.SketchType.html" title="enum in org.apache.datasketches.kll">KllSketch.SketchType</a>&gt;</code></dd>
+<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io" class="externalLink">Serializable</a></code>, <code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Comparable.html?is-external=true" title="class or interface in java.lang" class="externalLink">Comparable</a>&lt;<a href="KllSketch.SketchStructure.html" title="enum in org.apache.datasketches.kll">KllSketch.SketchStructure</a>&gt;</code></dd>
 </dl>
 <dl>
 <dt>Enclosing class:</dt>
 <dd><a href="KllSketch.html" title="class in org.apache.datasketches.kll">KllSketch</a></dd>
 </dl>
 <hr>
-<pre>public static enum <span class="typeNameLabel">KllSketch.SketchType</span>
-extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang" class="externalLink">Enum</a>&lt;<a href="KllSketch.SketchType.html" title="enum in org.apache.datasketches.kll">KllSketch.SketchType</a>&gt;</pre>
-<div class="block">Used to define the variable type of the current instance of this class.</div>
+<pre>public static enum <span class="typeNameLabel">KllSketch.SketchStructure</span>
+extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang" class="externalLink">Enum</a>&lt;<a href="KllSketch.SketchStructure.html" title="enum in org.apache.datasketches.kll">KllSketch.SketchStructure</a>&gt;</pre>
+<div class="block">Used primarily to define the structure of the serialized sketch. Also used by the Heap Sketch.</div>
 </li>
 </ul>
 </div>
@@ -168,11 +168,19 @@ extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Enum.html?i
 <th class="colLast" scope="col">Description</th>
 </tr>
 <tr class="altColor">
-<th class="colFirst" scope="row"><code><span class="memberNameLink"><a href="#DOUBLES_SKETCH">DOUBLES_SKETCH</a></span></code></th>
+<th class="colFirst" scope="row"><code><span class="memberNameLink"><a href="#COMPACT_EMPTY">COMPACT_EMPTY</a></span></code></th>
 <td class="colLast">&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<th class="colFirst" scope="row"><code><span class="memberNameLink"><a href="#FLOATS_SKETCH">FLOATS_SKETCH</a></span></code></th>
+<th class="colFirst" scope="row"><code><span class="memberNameLink"><a href="#COMPACT_FULL">COMPACT_FULL</a></span></code></th>
+<td class="colLast">&nbsp;</td>
+</tr>
+<tr class="altColor">
+<th class="colFirst" scope="row"><code><span class="memberNameLink"><a href="#COMPACT_SINGLE">COMPACT_SINGLE</a></span></code></th>
+<td class="colLast">&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<th class="colFirst" scope="row"><code><span class="memberNameLink"><a href="#UPDATABLE">UPDATABLE</a></span></code></th>
 <td class="colLast">&nbsp;</td>
 </tr>
 </table>
@@ -187,21 +195,37 @@ extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Enum.html?i
 </a>
 <h3>Method Summary</h3>
 <table class="memberSummary">
-<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t1" class="tableTab"><span><a href="javascript:show(1);">Static Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
+<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t1" class="tableTab"><span><a href="javascript:show(1);">Static Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd [...]
 <tr>
 <th class="colFirst" scope="col">Modifier and Type</th>
 <th class="colSecond" scope="col">Method</th>
 <th class="colLast" scope="col">Description</th>
 </tr>
 <tr id="i0" class="altColor">
-<td class="colFirst"><code>static <a href="KllSketch.SketchType.html" title="enum in org.apache.datasketches.kll">KllSketch.SketchType</a></code></td>
+<td class="colFirst"><code>int</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getPreInts()">getPreInts</a></span>()</code></th>
+<td class="colLast">&nbsp;</td>
+</tr>
+<tr id="i1" class="rowColor">
+<td class="colFirst"><code>int</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getSerVer()">getSerVer</a></span>()</code></th>
+<td class="colLast">&nbsp;</td>
+</tr>
+<tr id="i2" class="altColor">
+<td class="colFirst"><code>static <a href="KllSketch.SketchStructure.html" title="enum in org.apache.datasketches.kll">KllSketch.SketchStructure</a></code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getSketchStructure(int,int)">getSketchStructure</a></span>&#8203;(int&nbsp;preInts,
+                  int&nbsp;serVer)</code></th>
+<td class="colLast">&nbsp;</td>
+</tr>
+<tr id="i3" class="rowColor">
+<td class="colFirst"><code>static <a href="KllSketch.SketchStructure.html" title="enum in org.apache.datasketches.kll">KllSketch.SketchStructure</a></code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#valueOf(java.lang.String)">valueOf</a></span>&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;name)</code></th>
 <td class="colLast">
 <div class="block">Returns the enum constant of this type with the specified name.</div>
 </td>
 </tr>
-<tr id="i1" class="rowColor">
-<td class="colFirst"><code>static <a href="KllSketch.SketchType.html" title="enum in org.apache.datasketches.kll">KllSketch.SketchType</a>[]</code></td>
+<tr id="i4" class="altColor">
+<td class="colFirst"><code>static <a href="KllSketch.SketchStructure.html" title="enum in org.apache.datasketches.kll">KllSketch.SketchStructure</a>[]</code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#values()">values</a></span>()</code></th>
 <td class="colLast">
 <div class="block">Returns an array containing the constants of this enum type, in
@@ -239,22 +263,40 @@ the order they are declared.</div>
 <!--   -->
 </a>
 <h3>Enum Constant Detail</h3>
-<a id="FLOATS_SKETCH">
+<a id="COMPACT_EMPTY">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>COMPACT_EMPTY</h4>
+<pre>public static final&nbsp;<a href="KllSketch.SketchStructure.html" title="enum in org.apache.datasketches.kll">KllSketch.SketchStructure</a> COMPACT_EMPTY</pre>
+</li>
+</ul>
+<a id="COMPACT_SINGLE">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>COMPACT_SINGLE</h4>
+<pre>public static final&nbsp;<a href="KllSketch.SketchStructure.html" title="enum in org.apache.datasketches.kll">KllSketch.SketchStructure</a> COMPACT_SINGLE</pre>
+</li>
+</ul>
+<a id="COMPACT_FULL">
 <!--   -->
 </a>
 <ul class="blockList">
 <li class="blockList">
-<h4>FLOATS_SKETCH</h4>
-<pre>public static final&nbsp;<a href="KllSketch.SketchType.html" title="enum in org.apache.datasketches.kll">KllSketch.SketchType</a> FLOATS_SKETCH</pre>
+<h4>COMPACT_FULL</h4>
+<pre>public static final&nbsp;<a href="KllSketch.SketchStructure.html" title="enum in org.apache.datasketches.kll">KllSketch.SketchStructure</a> COMPACT_FULL</pre>
 </li>
 </ul>
-<a id="DOUBLES_SKETCH">
+<a id="UPDATABLE">
 <!--   -->
 </a>
 <ul class="blockListLast">
 <li class="blockList">
-<h4>DOUBLES_SKETCH</h4>
-<pre>public static final&nbsp;<a href="KllSketch.SketchType.html" title="enum in org.apache.datasketches.kll">KllSketch.SketchType</a> DOUBLES_SKETCH</pre>
+<h4>UPDATABLE</h4>
+<pre>public static final&nbsp;<a href="KllSketch.SketchStructure.html" title="enum in org.apache.datasketches.kll">KllSketch.SketchStructure</a> UPDATABLE</pre>
 </li>
 </ul>
 </li>
@@ -273,12 +315,12 @@ the order they are declared.</div>
 <ul class="blockList">
 <li class="blockList">
 <h4>values</h4>
-<pre class="methodSignature">public static&nbsp;<a href="KllSketch.SketchType.html" title="enum in org.apache.datasketches.kll">KllSketch.SketchType</a>[]&nbsp;values()</pre>
+<pre class="methodSignature">public static&nbsp;<a href="KllSketch.SketchStructure.html" title="enum in org.apache.datasketches.kll">KllSketch.SketchStructure</a>[]&nbsp;values()</pre>
 <div class="block">Returns an array containing the constants of this enum type, in
 the order they are declared. This method may be used to iterate
 over the constants as follows:
 <pre>
-for (KllSketch.SketchType c : KllSketch.SketchType.values())
+for (KllSketch.SketchStructure c : KllSketch.SketchStructure.values())
 &nbsp;   System.out.println(c);
 </pre></div>
 <dl>
@@ -290,10 +332,10 @@ for (KllSketch.SketchType c : KllSketch.SketchType.values())
 <a id="valueOf(java.lang.String)">
 <!--   -->
 </a>
-<ul class="blockListLast">
+<ul class="blockList">
 <li class="blockList">
 <h4>valueOf</h4>
-<pre class="methodSignature">public static&nbsp;<a href="KllSketch.SketchType.html" title="enum in org.apache.datasketches.kll">KllSketch.SketchType</a>&nbsp;valueOf&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;name)</pre>
+<pre class="methodSignature">public static&nbsp;<a href="KllSketch.SketchStructure.html" title="enum in org.apache.datasketches.kll">KllSketch.SketchStructure</a>&nbsp;valueOf&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;name)</pre>
 <div class="block">Returns the enum constant of this type with the specified name.
 The string must match <i>exactly</i> an identifier used to declare an
 enum constant in this type.  (Extraneous whitespace characters are 
@@ -309,6 +351,34 @@ not permitted.)</div>
 </dl>
 </li>
 </ul>
+<a id="getPreInts()">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getPreInts</h4>
+<pre class="methodSignature">public&nbsp;int&nbsp;getPreInts()</pre>
+</li>
+</ul>
+<a id="getSerVer()">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getSerVer</h4>
+<pre class="methodSignature">public&nbsp;int&nbsp;getSerVer()</pre>
+</li>
+</ul>
+<a id="getSketchStructure(int,int)">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>getSketchStructure</h4>
+<pre class="methodSignature">public static&nbsp;<a href="KllSketch.SketchStructure.html" title="enum in org.apache.datasketches.kll">KllSketch.SketchStructure</a>&nbsp;getSketchStructure&#8203;(int&nbsp;preInts,
+                                                           int&nbsp;serVer)</pre>
+</li>
+</ul>
 </li>
 </ul>
 </section>
@@ -332,7 +402,7 @@ not permitted.)</div>
 <li><a href="../../../../index.html">Overview</a></li>
 <li><a href="package-summary.html">Package</a></li>
 <li class="navBarCell1Rev">Class</li>
-<li><a href="class-use/KllSketch.SketchType.html">Use</a></li>
+<li><a href="class-use/KllSketch.SketchStructure.html">Use</a></li>
 <li><a href="package-tree.html">Tree</a></li>
 <li><a href="../../../../deprecated-list.html">Deprecated</a></li>
 <li><a href="../../../../index-all.html">Index</a></li>
diff --git a/docs/master/org/apache/datasketches/kll/KllSketch.SketchType.html b/docs/master/org/apache/datasketches/kll/KllSketch.SketchType.html
index cd522db4..11566a9d 100644
--- a/docs/master/org/apache/datasketches/kll/KllSketch.SketchType.html
+++ b/docs/master/org/apache/datasketches/kll/KllSketch.SketchType.html
@@ -27,8 +27,8 @@
     catch(err) {
     }
 //-->
-var data = {"i0":9,"i1":9};
-var tabs = {65535:["t0","All Methods"],1:["t1","Static Methods"],8:["t4","Concrete Methods"]};
+var data = {"i0":10,"i1":10,"i2":9,"i3":9};
+var tabs = {65535:["t0","All Methods"],1:["t1","Static Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
 var altColor = "altColor";
 var rowColor = "rowColor";
 var tableTab = "tableTab";
@@ -175,6 +175,10 @@ extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Enum.html?i
 <th class="colFirst" scope="row"><code><span class="memberNameLink"><a href="#FLOATS_SKETCH">FLOATS_SKETCH</a></span></code></th>
 <td class="colLast">&nbsp;</td>
 </tr>
+<tr class="altColor">
+<th class="colFirst" scope="row"><code><span class="memberNameLink"><a href="#ITEMS_SKETCH">ITEMS_SKETCH</a></span></code></th>
+<td class="colLast">&nbsp;</td>
+</tr>
 </table>
 </li>
 </ul>
@@ -187,20 +191,30 @@ extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Enum.html?i
 </a>
 <h3>Method Summary</h3>
 <table class="memberSummary">
-<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t1" class="tableTab"><span><a href="javascript:show(1);">Static Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
+<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t1" class="tableTab"><span><a href="javascript:show(1);">Static Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd [...]
 <tr>
 <th class="colFirst" scope="col">Modifier and Type</th>
 <th class="colSecond" scope="col">Method</th>
 <th class="colLast" scope="col">Description</th>
 </tr>
 <tr id="i0" class="altColor">
+<td class="colFirst"><code>int</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getBytes()">getBytes</a></span>()</code></th>
+<td class="colLast">&nbsp;</td>
+</tr>
+<tr id="i1" class="rowColor">
+<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a></code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getName()">getName</a></span>()</code></th>
+<td class="colLast">&nbsp;</td>
+</tr>
+<tr id="i2" class="altColor">
 <td class="colFirst"><code>static <a href="KllSketch.SketchType.html" title="enum in org.apache.datasketches.kll">KllSketch.SketchType</a></code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#valueOf(java.lang.String)">valueOf</a></span>&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;name)</code></th>
 <td class="colLast">
 <div class="block">Returns the enum constant of this type with the specified name.</div>
 </td>
 </tr>
-<tr id="i1" class="rowColor">
+<tr id="i3" class="rowColor">
 <td class="colFirst"><code>static <a href="KllSketch.SketchType.html" title="enum in org.apache.datasketches.kll">KllSketch.SketchType</a>[]</code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#values()">values</a></span>()</code></th>
 <td class="colLast">
@@ -239,6 +253,15 @@ the order they are declared.</div>
 <!--   -->
 </a>
 <h3>Enum Constant Detail</h3>
+<a id="DOUBLES_SKETCH">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>DOUBLES_SKETCH</h4>
+<pre>public static final&nbsp;<a href="KllSketch.SketchType.html" title="enum in org.apache.datasketches.kll">KllSketch.SketchType</a> DOUBLES_SKETCH</pre>
+</li>
+</ul>
 <a id="FLOATS_SKETCH">
 <!--   -->
 </a>
@@ -248,13 +271,13 @@ the order they are declared.</div>
 <pre>public static final&nbsp;<a href="KllSketch.SketchType.html" title="enum in org.apache.datasketches.kll">KllSketch.SketchType</a> FLOATS_SKETCH</pre>
 </li>
 </ul>
-<a id="DOUBLES_SKETCH">
+<a id="ITEMS_SKETCH">
 <!--   -->
 </a>
 <ul class="blockListLast">
 <li class="blockList">
-<h4>DOUBLES_SKETCH</h4>
-<pre>public static final&nbsp;<a href="KllSketch.SketchType.html" title="enum in org.apache.datasketches.kll">KllSketch.SketchType</a> DOUBLES_SKETCH</pre>
+<h4>ITEMS_SKETCH</h4>
+<pre>public static final&nbsp;<a href="KllSketch.SketchType.html" title="enum in org.apache.datasketches.kll">KllSketch.SketchType</a> ITEMS_SKETCH</pre>
 </li>
 </ul>
 </li>
@@ -290,7 +313,7 @@ for (KllSketch.SketchType c : KllSketch.SketchType.values())
 <a id="valueOf(java.lang.String)">
 <!--   -->
 </a>
-<ul class="blockListLast">
+<ul class="blockList">
 <li class="blockList">
 <h4>valueOf</h4>
 <pre class="methodSignature">public static&nbsp;<a href="KllSketch.SketchType.html" title="enum in org.apache.datasketches.kll">KllSketch.SketchType</a>&nbsp;valueOf&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;name)</pre>
@@ -309,6 +332,24 @@ not permitted.)</div>
 </dl>
 </li>
 </ul>
+<a id="getBytes()">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getBytes</h4>
+<pre class="methodSignature">public&nbsp;int&nbsp;getBytes()</pre>
+</li>
+</ul>
+<a id="getName()">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>getName</h4>
+<pre class="methodSignature">public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;getName()</pre>
+</li>
+</ul>
 </li>
 </ul>
 </section>
diff --git a/docs/master/org/apache/datasketches/kll/KllSketch.html b/docs/master/org/apache/datasketches/kll/KllSketch.html
index 6720aef8..900d4627 100644
--- a/docs/master/org/apache/datasketches/kll/KllSketch.html
+++ b/docs/master/org/apache/datasketches/kll/KllSketch.html
@@ -27,8 +27,8 @@
     catch(err) {
     }
 //-->
-var data = {"i0":42,"i1":42,"i2":6,"i3":9,"i4":9,"i5":6,"i6":10,"i7":9,"i8":10,"i9":10,"i10":10,"i11":10,"i12":10,"i13":10,"i14":10,"i15":10,"i16":10,"i17":10,"i18":10,"i19":10};
-var tabs = {65535:["t0","All Methods"],1:["t1","Static Methods"],2:["t2","Instance Methods"],4:["t3","Abstract Methods"],8:["t4","Concrete Methods"],32:["t6","Deprecated Methods"]};
+var data = {"i0":9,"i1":9,"i2":10,"i3":9,"i4":10,"i5":10,"i6":10,"i7":10,"i8":10,"i9":10,"i10":10,"i11":10,"i12":10,"i13":10,"i14":6,"i15":10,"i16":10};
+var tabs = {65535:["t0","All Methods"],1:["t1","Static Methods"],2:["t2","Instance Methods"],4:["t3","Abstract Methods"],8:["t4","Concrete Methods"]};
 var altColor = "altColor";
 var rowColor = "rowColor";
 var tableTab = "tableTab";
@@ -137,15 +137,15 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 </dl>
 <dl>
 <dt>Direct Known Subclasses:</dt>
-<dd><code><a href="KllDoublesSketch.html" title="class in org.apache.datasketches.kll">KllDoublesSketch</a></code>, <code><a href="KllFloatsSketch.html" title="class in org.apache.datasketches.kll">KllFloatsSketch</a></code></dd>
+<dd><code><a href="KllDoublesSketch.html" title="class in org.apache.datasketches.kll">KllDoublesSketch</a></code>, <code><a href="KllFloatsSketch.html" title="class in org.apache.datasketches.kll">KllFloatsSketch</a></code>, <code><a href="KllItemsSketch.html" title="class in org.apache.datasketches.kll">KllItemsSketch</a></code></dd>
 </dl>
 <hr>
 <pre>public abstract class <span class="typeNameLabel">KllSketch</span>
 extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a>
 implements <a href="../quantilescommon/QuantilesAPI.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesAPI</a></pre>
 <div class="block">This class is the root of the KLL sketch class hierarchy. It includes the public API that is independent
- of either sketch type (float or double) and independent of whether the sketch is targeted for use on the
- heap or Direct (off-heap).
+ of either sketch type (e.g., float, double or generic item) and independent of whether the sketch is targeted
+ for use on the Java heap or off-heap.
 
  <p>KLL is an implementation of a very compact quantiles sketch with lazy compaction scheme
  and nearly optimal accuracy per retained quantile.</p>
@@ -183,6 +183,13 @@ implements <a href="../quantilescommon/QuantilesAPI.html" title="interface in or
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>static class&nbsp;</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="KllSketch.SketchStructure.html" title="enum in org.apache.datasketches.kll">KllSketch.SketchStructure</a></span></code></th>
+<td class="colLast">
+<div class="block">Used primarily to define the structure of the serialized sketch.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>static class&nbsp;</code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="KllSketch.SketchType.html" title="enum in org.apache.datasketches.kll">KllSketch.SketchType</a></span></code></th>
 <td class="colLast">
 <div class="block">Used to define the variable type of the current instance of this class.</div>
@@ -221,6 +228,13 @@ implements <a href="../quantilescommon/QuantilesAPI.html" title="interface in or
 </td>
 </tr>
 </table>
+<ul class="blockList">
+<li class="blockList"><a id="fields.inherited.from.class.org.apache.datasketches.quantilescommon.QuantilesAPI">
+<!--   -->
+</a>
+<h3>Fields inherited from interface&nbsp;org.apache.datasketches.quantilescommon.<a href="../quantilescommon/QuantilesAPI.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesAPI</a></h3>
+<code><a href="../quantilescommon/QuantilesAPI.html#EMPTY_MSG">EMPTY_MSG</a>, <a href="../quantilescommon/QuantilesAPI.html#MEM_REQ_SVR_NULL_MSG">MEM_REQ_SVR_NULL_MSG</a>, <a href="../quantilescommon/QuantilesAPI.html#NOT_SINGLE_ITEM_MSG">NOT_SINGLE_ITEM_MSG</a>, <a href="../quantilescommon/QuantilesAPI.html#TGT_IS_READ_ONLY_MSG">TGT_IS_READ_ONLY_MSG</a>, <a href="../quantilescommon/QuantilesAPI.html#UNSUPPORTED_MSG">UNSUPPORTED_MSG</a></code></li>
+</ul>
 </li>
 </ul>
 </section>
@@ -232,39 +246,13 @@ implements <a href="../quantilescommon/QuantilesAPI.html" title="interface in or
 </a>
 <h3>Method Summary</h3>
 <table class="memberSummary">
-<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t1" class="tableTab"><span><a href="javascript:show(1);">Static Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t3" class="tableTab"><span><a href="javascript:show(4);">Abstract Methods</a></span><span class="tabEnd [...]
+<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t1" class="tableTab"><span><a href="javascript:show(1);">Static Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t3" class="tableTab"><span><a href="javascript:show(4);">Abstract Methods</a></span><span class="tabEnd [...]
 <tr>
 <th class="colFirst" scope="col">Modifier and Type</th>
 <th class="colSecond" scope="col">Method</th>
 <th class="colLast" scope="col">Description</th>
 </tr>
 <tr id="i0" class="altColor">
-<td class="colFirst"><code>int</code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getCurrentCompactSerializedSizeBytes()">getCurrentCompactSerializedSizeBytes</a></span>()</code></th>
-<td class="colLast">
-<div class="block"><span class="deprecatedLabel">Deprecated.</span>
-<div class="deprecationComment">version 4.0.0 use <a href="#getSerializedSizeBytes()"><code>getSerializedSizeBytes()</code></a>.</div>
-</div>
-</td>
-</tr>
-<tr id="i1" class="rowColor">
-<td class="colFirst"><code>int</code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getCurrentUpdatableSerializedSizeBytes()">getCurrentUpdatableSerializedSizeBytes</a></span>()</code></th>
-<td class="colLast">
-<div class="block"><span class="deprecatedLabel">Deprecated.</span>
-<div class="deprecationComment">version 4.0.0 use <a href="#getSerializedSizeBytes()"><code>getSerializedSizeBytes()</code></a>.</div>
-</div>
-</td>
-</tr>
-<tr id="i2" class="altColor">
-<td class="colFirst"><code>abstract int</code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getK()">getK</a></span>()</code></th>
-<td class="colLast">
-<div class="block">Gets the user configured parameter k, which controls the accuracy of the sketch
- and its memory space usage.</div>
-</td>
-</tr>
-<tr id="i3" class="rowColor">
 <td class="colFirst"><code>static int</code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getKFromEpsilon(double,boolean)">getKFromEpsilon</a></span>&#8203;(double&nbsp;epsilon,
                boolean&nbsp;pmf)</code></th>
@@ -272,7 +260,7 @@ implements <a href="../quantilescommon/QuantilesAPI.html" title="interface in or
 <div class="block">Gets the approximate <em>k</em> to use given epsilon, the normalized rank error.</div>
 </td>
 </tr>
-<tr id="i4" class="altColor">
+<tr id="i1" class="rowColor">
 <td class="colFirst"><code>static int</code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getMaxSerializedSizeBytes(int,long,org.apache.datasketches.kll.KllSketch.SketchType,boolean)">getMaxSerializedSizeBytes</a></span>&#8203;(int&nbsp;k,
                          long&nbsp;n,
@@ -282,21 +270,14 @@ implements <a href="../quantilescommon/QuantilesAPI.html" title="interface in or
 <div class="block">Returns upper bound on the serialized size of a KllSketch given the following parameters.</div>
 </td>
 </tr>
-<tr id="i5" class="rowColor">
-<td class="colFirst"><code>abstract long</code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getN()">getN</a></span>()</code></th>
-<td class="colLast">
-<div class="block">Gets the length of the input stream.</div>
-</td>
-</tr>
-<tr id="i6" class="altColor">
+<tr id="i2" class="altColor">
 <td class="colFirst"><code>double</code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getNormalizedRankError(boolean)">getNormalizedRankError</a></span>&#8203;(boolean&nbsp;pmf)</code></th>
 <td class="colLast">
 <div class="block">Gets the approximate rank error of this sketch normalized as a fraction between zero and one.</div>
 </td>
 </tr>
-<tr id="i7" class="rowColor">
+<tr id="i3" class="rowColor">
 <td class="colFirst"><code>static double</code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getNormalizedRankError(int,boolean)">getNormalizedRankError</a></span>&#8203;(int&nbsp;k,
                       boolean&nbsp;pmf)</code></th>
@@ -304,63 +285,68 @@ implements <a href="../quantilescommon/QuantilesAPI.html" title="interface in or
 <div class="block">Gets the normalized rank error given k and pmf.</div>
 </td>
 </tr>
-<tr id="i8" class="altColor">
+<tr id="i4" class="altColor">
 <td class="colFirst"><code>int</code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getNumRetained()">getNumRetained</a></span>()</code></th>
 <td class="colLast">
 <div class="block">Gets the number of quantiles retained by the sketch.</div>
 </td>
 </tr>
-<tr id="i9" class="rowColor">
+<tr id="i5" class="rowColor">
 <td class="colFirst"><code>int</code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getSerializedSizeBytes()">getSerializedSizeBytes</a></span>()</code></th>
 <td class="colLast">
-<div class="block">Returns the current number of bytes this Sketch would require if serialized.</div>
+<div class="block">Returns the current number of bytes this Sketch would require if serialized in compact form.</div>
 </td>
 </tr>
-<tr id="i10" class="altColor">
+<tr id="i6" class="altColor">
 <td class="colFirst"><code>boolean</code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#hasMemory()">hasMemory</a></span>()</code></th>
 <td class="colLast">
 <div class="block">Returns true if this sketch's data structure is backed by Memory or WritableMemory.</div>
 </td>
 </tr>
-<tr id="i11" class="rowColor">
+<tr id="i7" class="rowColor">
+<td class="colFirst"><code>boolean</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#isCompactMemoryFormat()">isCompactMemoryFormat</a></span>()</code></th>
+<td class="colLast">&nbsp;</td>
+</tr>
+<tr id="i8" class="altColor">
 <td class="colFirst"><code>boolean</code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#isDirect()">isDirect</a></span>()</code></th>
 <td class="colLast">
 <div class="block">Returns true if this sketch's data structure is off-heap (a.k.a., Direct or Native memory).</div>
 </td>
 </tr>
-<tr id="i12" class="altColor">
+<tr id="i9" class="rowColor">
 <td class="colFirst"><code>boolean</code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#isEmpty()">isEmpty</a></span>()</code></th>
 <td class="colLast">
 <div class="block">Returns true if this sketch is empty.</div>
 </td>
 </tr>
-<tr id="i13" class="rowColor">
+<tr id="i10" class="altColor">
 <td class="colFirst"><code>boolean</code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#isEstimationMode()">isEstimationMode</a></span>()</code></th>
 <td class="colLast">
 <div class="block">Returns true if this sketch is in estimation mode.</div>
 </td>
 </tr>
-<tr id="i14" class="altColor">
+<tr id="i11" class="rowColor">
 <td class="colFirst"><code>boolean</code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#isMemoryUpdatableFormat()">isMemoryUpdatableFormat</a></span>()</code></th>
 <td class="colLast">
 <div class="block">Returns true if the backing WritableMemory is in updatable format.</div>
 </td>
 </tr>
-<tr id="i15" class="rowColor">
+<tr id="i12" class="altColor">
 <td class="colFirst"><code>boolean</code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#isReadOnly()">isReadOnly</a></span>()</code></th>
 <td class="colLast">
 <div class="block">Returns true if this sketch is read only.</div>
 </td>
 </tr>
-<tr id="i16" class="altColor">
+<tr id="i13" class="rowColor">
 <td class="colFirst"><code>boolean</code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#isSameResource(org.apache.datasketches.memory.Memory)">isSameResource</a></span>&#8203;(org.apache.datasketches.memory.Memory&nbsp;that)</code></th>
 <td class="colLast">
@@ -368,21 +354,21 @@ implements <a href="../quantilescommon/QuantilesAPI.html" title="interface in or
  of <i>that</i>.</div>
 </td>
 </tr>
-<tr id="i17" class="rowColor">
-<td class="colFirst"><code>void</code></td>
+<tr id="i14" class="altColor">
+<td class="colFirst"><code>abstract void</code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#merge(org.apache.datasketches.kll.KllSketch)">merge</a></span>&#8203;(<a href="KllSketch.html" title="class in org.apache.datasketches.kll">KllSketch</a>&nbsp;other)</code></th>
 <td class="colLast">
 <div class="block">Merges another sketch into this one.</div>
 </td>
 </tr>
-<tr id="i18" class="altColor">
+<tr id="i15" class="rowColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a></code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#toString()">toString</a></span>()</code></th>
 <td class="colLast">
 <div class="block">Returns a summary of the key parameters of the sketch.</div>
 </td>
 </tr>
-<tr id="i19" class="rowColor">
+<tr id="i16" class="altColor">
 <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a></code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#toString(boolean,boolean)">toString</a></span>&#8203;(boolean&nbsp;withLevels,
         boolean&nbsp;withData)</code></th>
@@ -403,7 +389,7 @@ implements <a href="../quantilescommon/QuantilesAPI.html" title="interface in or
 <!--   -->
 </a>
 <h3>Methods inherited from interface&nbsp;org.apache.datasketches.quantilescommon.<a href="../quantilescommon/QuantilesAPI.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesAPI</a></h3>
-<code><a href="../quantilescommon/QuantilesAPI.html#getRankLowerBound(double)">getRankLowerBound</a>, <a href="../quantilescommon/QuantilesAPI.html#getRankUpperBound(double)">getRankUpperBound</a>, <a href="../quantilescommon/QuantilesAPI.html#reset()">reset</a></code></li>
+<code><a href="../quantilescommon/QuantilesAPI.html#getK()">getK</a>, <a href="../quantilescommon/QuantilesAPI.html#getN()">getN</a>, <a href="../quantilescommon/QuantilesAPI.html#getRankLowerBound(double)">getRankLowerBound</a>, <a href="../quantilescommon/QuantilesAPI.html#getRankUpperBound(double)">getRankUpperBound</a>, <a href="../quantilescommon/QuantilesAPI.html#reset()">reset</a></code></li>
 </ul>
 </li>
 </ul>
@@ -495,7 +481,7 @@ implements <a href="../quantilescommon/QuantilesAPI.html" title="interface in or
 <dt><span class="paramLabel">Parameters:</span></dt>
 <dd><code>k</code> - parameter that controls size of the sketch and accuracy of estimates</dd>
 <dd><code>n</code> - stream length</dd>
-<dd><code>sketchType</code> - either DOUBLES_SKETCH or FLOATS_SKETCH</dd>
+<dd><code>sketchType</code> - Only DOUBLES_SKETCH and FLOATS_SKETCH is supported for this operation.</dd>
 <dd><code>updatableMemFormat</code> - true if updatable Memory format, otherwise the standard compact format.</dd>
 <dt><span class="returnLabel">Returns:</span></dt>
 <dd>upper bound on the serialized size of a KllSketch.</dd>
@@ -525,78 +511,6 @@ implements <a href="../quantilescommon/QuantilesAPI.html" title="interface in or
 </dl>
 </li>
 </ul>
-<a id="getCurrentCompactSerializedSizeBytes()">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>getCurrentCompactSerializedSizeBytes</h4>
-<pre class="methodSignature"><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Deprecated.html?is-external=true" title="class or interface in java.lang" class="externalLink">@Deprecated</a>
-public final&nbsp;int&nbsp;getCurrentCompactSerializedSizeBytes()</pre>
-<div class="deprecationBlock"><span class="deprecatedLabel">Deprecated.</span>
-<div class="deprecationComment">version 4.0.0 use <a href="#getSerializedSizeBytes()"><code>getSerializedSizeBytes()</code></a>.</div>
-</div>
-<div class="block">Returns the current number of bytes this sketch would require to store in the compact Memory Format.</div>
-<dl>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>the current number of bytes this sketch would require to store in the compact Memory Format.</dd>
-</dl>
-</li>
-</ul>
-<a id="getCurrentUpdatableSerializedSizeBytes()">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>getCurrentUpdatableSerializedSizeBytes</h4>
-<pre class="methodSignature"><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Deprecated.html?is-external=true" title="class or interface in java.lang" class="externalLink">@Deprecated</a>
-public final&nbsp;int&nbsp;getCurrentUpdatableSerializedSizeBytes()</pre>
-<div class="deprecationBlock"><span class="deprecatedLabel">Deprecated.</span>
-<div class="deprecationComment">version 4.0.0 use <a href="#getSerializedSizeBytes()"><code>getSerializedSizeBytes()</code></a>.</div>
-</div>
-<div class="block">Returns the current number of bytes this sketch would require to store in the updatable Memory Format.</div>
-<dl>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>the current number of bytes this sketch would require to store in the updatable Memory Format.</dd>
-</dl>
-</li>
-</ul>
-<a id="getK()">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>getK</h4>
-<pre class="methodSignature">public abstract&nbsp;int&nbsp;getK()</pre>
-<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../quantilescommon/QuantilesAPI.html#getK()">QuantilesAPI</a></code></span></div>
-<div class="block">Gets the user configured parameter k, which controls the accuracy of the sketch
- and its memory space usage.</div>
-<dl>
-<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
-<dd><code><a href="../quantilescommon/QuantilesAPI.html#getK()">getK</a></code>&nbsp;in interface&nbsp;<code><a href="../quantilescommon/QuantilesAPI.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesAPI</a></code></dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>the user configured parameter k, which controls the accuracy of the sketch
- and its memory space usage.</dd>
-</dl>
-</li>
-</ul>
-<a id="getN()">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>getN</h4>
-<pre class="methodSignature">public abstract&nbsp;long&nbsp;getN()</pre>
-<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../quantilescommon/QuantilesAPI.html#getN()">QuantilesAPI</a></code></span></div>
-<div class="block">Gets the length of the input stream.</div>
-<dl>
-<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
-<dd><code><a href="../quantilescommon/QuantilesAPI.html#getN()">getN</a></code>&nbsp;in interface&nbsp;<code><a href="../quantilescommon/QuantilesAPI.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesAPI</a></code></dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>the length of the input stream.</dd>
-</dl>
-</li>
-</ul>
 <a id="getNormalizedRankError(boolean)">
 <!--   -->
 </a>
@@ -641,7 +555,7 @@ public final&nbsp;int&nbsp;getCurrentUpdatableSerializedSizeBytes()</pre>
 <li class="blockList">
 <h4>getSerializedSizeBytes</h4>
 <pre class="methodSignature">public&nbsp;int&nbsp;getSerializedSizeBytes()</pre>
-<div class="block">Returns the current number of bytes this Sketch would require if serialized.</div>
+<div class="block">Returns the current number of bytes this Sketch would require if serialized in compact form.</div>
 <dl>
 <dt><span class="returnLabel">Returns:</span></dt>
 <dd>the number of bytes this sketch would require if serialized.</dd>
@@ -665,6 +579,15 @@ public final&nbsp;int&nbsp;getCurrentUpdatableSerializedSizeBytes()</pre>
 </dl>
 </li>
 </ul>
+<a id="isCompactMemoryFormat()">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>isCompactMemoryFormat</h4>
+<pre class="methodSignature">public&nbsp;boolean&nbsp;isCompactMemoryFormat()</pre>
+</li>
+</ul>
 <a id="isDirect()">
 <!--   -->
 </a>
@@ -772,10 +695,9 @@ public final&nbsp;int&nbsp;getCurrentUpdatableSerializedSizeBytes()</pre>
 <ul class="blockList">
 <li class="blockList">
 <h4>merge</h4>
-<pre class="methodSignature">public final&nbsp;void&nbsp;merge&#8203;(<a href="KllSketch.html" title="class in org.apache.datasketches.kll">KllSketch</a>&nbsp;other)</pre>
+<pre class="methodSignature">public abstract&nbsp;void&nbsp;merge&#8203;(<a href="KllSketch.html" title="class in org.apache.datasketches.kll">KllSketch</a>&nbsp;other)</pre>
 <div class="block">Merges another sketch into this one.
- Attempting to merge a KllDoublesSketch with a KllFloatsSketch will
- throw an exception.</div>
+ Attempting to merge a sketch of the wrong type will throw an exception.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
 <dd><code>other</code> - sketch to merge into this one</dd>
diff --git a/docs/master/org/apache/datasketches/kll/class-use/KllDoublesSketch.html b/docs/master/org/apache/datasketches/kll/class-use/KllDoublesSketch.html
index 8cc8f281..b4c44636 100644
--- a/docs/master/org/apache/datasketches/kll/class-use/KllDoublesSketch.html
+++ b/docs/master/org/apache/datasketches/kll/class-use/KllDoublesSketch.html
@@ -144,7 +144,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
                  org.apache.datasketches.memory.WritableMemory&nbsp;dstMem,
                  org.apache.datasketches.memory.MemoryRequestServer&nbsp;memReqSvr)</code></th>
 <td class="colLast">
-<div class="block">Create a new direct instance of this sketch with a given <em>k</em>.</div>
+<div class="block">Create a new direct updatable instance of this sketch with a given <em>k</em>.</div>
 </td>
 </tr>
 <tr class="altColor">
@@ -152,7 +152,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <th class="colSecond" scope="row"><span class="typeNameLabel">KllDoublesSketch.</span><code><span class="memberNameLink"><a href="../KllDoublesSketch.html#newDirectInstance(org.apache.datasketches.memory.WritableMemory,org.apache.datasketches.memory.MemoryRequestServer)">newDirectInstance</a></span>&#8203;(org.apache.datasketches.memory.WritableMemory&nbsp;dstMem,
                  org.apache.datasketches.memory.MemoryRequestServer&nbsp;memReqSvr)</code></th>
 <td class="colLast">
-<div class="block">Create a new direct instance of this sketch with the default <em>k</em>.</div>
+<div class="block">Create a new direct updatable instance of this sketch with the default <em>k</em>.</div>
 </td>
 </tr>
 <tr class="rowColor">
diff --git a/docs/master/org/apache/datasketches/kll/class-use/KllFloatsSketch.html b/docs/master/org/apache/datasketches/kll/class-use/KllFloatsSketch.html
index 7077e569..015e3161 100644
--- a/docs/master/org/apache/datasketches/kll/class-use/KllFloatsSketch.html
+++ b/docs/master/org/apache/datasketches/kll/class-use/KllFloatsSketch.html
@@ -144,7 +144,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
                  org.apache.datasketches.memory.WritableMemory&nbsp;dstMem,
                  org.apache.datasketches.memory.MemoryRequestServer&nbsp;memReqSvr)</code></th>
 <td class="colLast">
-<div class="block">Create a new direct instance of this sketch with a given <em>k</em>.</div>
+<div class="block">Create a new direct updatable instance of this sketch with a given <em>k</em>.</div>
 </td>
 </tr>
 <tr class="altColor">
@@ -152,7 +152,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <th class="colSecond" scope="row"><span class="typeNameLabel">KllFloatsSketch.</span><code><span class="memberNameLink"><a href="../KllFloatsSketch.html#newDirectInstance(org.apache.datasketches.memory.WritableMemory,org.apache.datasketches.memory.MemoryRequestServer)">newDirectInstance</a></span>&#8203;(org.apache.datasketches.memory.WritableMemory&nbsp;dstMem,
                  org.apache.datasketches.memory.MemoryRequestServer&nbsp;memReqSvr)</code></th>
 <td class="colLast">
-<div class="block">Create a new direct instance of this sketch with the default <em>k</em>.</div>
+<div class="block">Create a new direct updatable instance of this sketch with the default <em>k</em>.</div>
 </td>
 </tr>
 <tr class="rowColor">
diff --git a/docs/master/org/apache/datasketches/kll/class-use/KllFloatsSketch.html b/docs/master/org/apache/datasketches/kll/class-use/KllItemsSketch.html
similarity index 57%
copy from docs/master/org/apache/datasketches/kll/class-use/KllFloatsSketch.html
copy to docs/master/org/apache/datasketches/kll/class-use/KllItemsSketch.html
index 7077e569..696ca10e 100644
--- a/docs/master/org/apache/datasketches/kll/class-use/KllFloatsSketch.html
+++ b/docs/master/org/apache/datasketches/kll/class-use/KllItemsSketch.html
@@ -3,7 +3,7 @@
 <html lang="en">
 <head>
 <!-- Generated by javadoc -->
-<title>Uses of Class org.apache.datasketches.kll.KllFloatsSketch (datasketches-java 4.2.0-SNAPSHOT API)</title>
+<title>Uses of Class org.apache.datasketches.kll.KllItemsSketch (datasketches-java 4.2.0-SNAPSHOT API)</title>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
 <link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
 <link rel="stylesheet" type="text/css" href="../../../../../jquery/jquery-ui.min.css" title="Style">
@@ -21,7 +21,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Class org.apache.datasketches.kll.KllFloatsSketch (datasketches-java 4.2.0-SNAPSHOT API)";
+            parent.document.title="Uses of Class org.apache.datasketches.kll.KllItemsSketch (datasketches-java 4.2.0-SNAPSHOT API)";
         }
     }
     catch(err) {
@@ -47,7 +47,7 @@ loadScripts(document, 'script');</script>
 <ul class="navList" title="Navigation">
 <li><a href="../../../../../index.html">Overview</a></li>
 <li><a href="../package-summary.html">Package</a></li>
-<li><a href="../KllFloatsSketch.html" title="class in org.apache.datasketches.kll">Class</a></li>
+<li><a href="../KllItemsSketch.html" title="class in org.apache.datasketches.kll">Class</a></li>
 <li class="navBarCell1Rev">Use</li>
 <li><a href="../package-tree.html">Tree</a></li>
 <li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
@@ -94,13 +94,13 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 </header>
 <main role="main">
 <div class="header">
-<h2 title="Uses of Class org.apache.datasketches.kll.KllFloatsSketch" class="title">Uses of Class<br>org.apache.datasketches.kll.KllFloatsSketch</h2>
+<h2 title="Uses of Class org.apache.datasketches.kll.KllItemsSketch" class="title">Uses of Class<br>org.apache.datasketches.kll.KllItemsSketch</h2>
 </div>
 <div class="classUseContainer">
 <ul class="blockList">
 <li class="blockList">
 <table class="useSummary">
-<caption><span>Packages that use <a href="../KllFloatsSketch.html" title="class in org.apache.datasketches.kll">KllFloatsSketch</a></span><span class="tabEnd">&nbsp;</span></caption>
+<caption><span>Packages that use <a href="../KllItemsSketch.html" title="class in org.apache.datasketches.kll">KllItemsSketch</a></span><span class="tabEnd">&nbsp;</span></caption>
 <tr>
 <th class="colFirst" scope="col">Package</th>
 <th class="colLast" scope="col">Description</th>
@@ -122,9 +122,9 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <section><a id="org.apache.datasketches.kll">
 <!--   -->
 </a>
-<h3>Uses of <a href="../KllFloatsSketch.html" title="class in org.apache.datasketches.kll">KllFloatsSketch</a> in <a href="../package-summary.html">org.apache.datasketches.kll</a></h3>
+<h3>Uses of <a href="../KllItemsSketch.html" title="class in org.apache.datasketches.kll">KllItemsSketch</a> in <a href="../package-summary.html">org.apache.datasketches.kll</a></h3>
 <table class="useSummary">
-<caption><span>Methods in <a href="../package-summary.html">org.apache.datasketches.kll</a> that return <a href="../KllFloatsSketch.html" title="class in org.apache.datasketches.kll">KllFloatsSketch</a></span><span class="tabEnd">&nbsp;</span></caption>
+<caption><span>Methods in <a href="../package-summary.html">org.apache.datasketches.kll</a> that return <a href="../KllItemsSketch.html" title="class in org.apache.datasketches.kll">KllItemsSketch</a></span><span class="tabEnd">&nbsp;</span></caption>
 <tr>
 <th class="colFirst" scope="col">Modifier and Type</th>
 <th class="colSecond" scope="col">Method</th>
@@ -132,71 +132,52 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code>static <a href="../KllFloatsSketch.html" title="class in org.apache.datasketches.kll">KllFloatsSketch</a></code></td>
-<th class="colSecond" scope="row"><span class="typeNameLabel">KllFloatsSketch.</span><code><span class="memberNameLink"><a href="../KllFloatsSketch.html#heapify(org.apache.datasketches.memory.Memory)">heapify</a></span>&#8203;(org.apache.datasketches.memory.Memory&nbsp;srcMem)</code></th>
+<td class="colFirst"><code>static &lt;T&gt;&nbsp;<a href="../KllItemsSketch.html" title="class in org.apache.datasketches.kll">KllItemsSketch</a>&lt;T&gt;</code></td>
+<th class="colSecond" scope="row"><span class="typeNameLabel">KllItemsSketch.</span><code><span class="memberNameLink"><a href="../KllItemsSketch.html#heapify(org.apache.datasketches.memory.Memory,java.util.Comparator,org.apache.datasketches.common.ArrayOfItemsSerDe)">heapify</a></span>&#8203;(org.apache.datasketches.memory.Memory&nbsp;srcMem,
+       <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Comparator.html?is-external=true" title="class or interface in java.util" class="externalLink">Comparator</a>&lt;? super T&gt;&nbsp;comparator,
+       <a href="../../common/ArrayOfItemsSerDe.html" title="class in org.apache.datasketches.common">ArrayOfItemsSerDe</a>&lt;T&gt;&nbsp;serDe)</code></th>
 <td class="colLast">
 <div class="block">Factory heapify takes a compact sketch image in Memory and instantiates an on-heap sketch.</div>
 </td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>static <a href="../KllFloatsSketch.html" title="class in org.apache.datasketches.kll">KllFloatsSketch</a></code></td>
-<th class="colSecond" scope="row"><span class="typeNameLabel">KllFloatsSketch.</span><code><span class="memberNameLink"><a href="../KllFloatsSketch.html#newDirectInstance(int,org.apache.datasketches.memory.WritableMemory,org.apache.datasketches.memory.MemoryRequestServer)">newDirectInstance</a></span>&#8203;(int&nbsp;k,
-                 org.apache.datasketches.memory.WritableMemory&nbsp;dstMem,
-                 org.apache.datasketches.memory.MemoryRequestServer&nbsp;memReqSvr)</code></th>
+<td class="colFirst"><code>static &lt;T&gt;&nbsp;<a href="../KllItemsSketch.html" title="class in org.apache.datasketches.kll">KllItemsSketch</a>&lt;T&gt;</code></td>
+<th class="colSecond" scope="row"><span class="typeNameLabel">KllItemsSketch.</span><code><span class="memberNameLink"><a href="../KllItemsSketch.html#newHeapInstance(int,java.util.Comparator,org.apache.datasketches.common.ArrayOfItemsSerDe)">newHeapInstance</a></span>&#8203;(int&nbsp;k,
+               <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Comparator.html?is-external=true" title="class or interface in java.util" class="externalLink">Comparator</a>&lt;? super T&gt;&nbsp;comparator,
+               <a href="../../common/ArrayOfItemsSerDe.html" title="class in org.apache.datasketches.common">ArrayOfItemsSerDe</a>&lt;T&gt;&nbsp;serDe)</code></th>
 <td class="colLast">
-<div class="block">Create a new direct instance of this sketch with a given <em>k</em>.</div>
+<div class="block">Create a new heap instance of this sketch with a given parameter <em>k</em>.</div>
 </td>
 </tr>
 <tr class="altColor">
-<td class="colFirst"><code>static <a href="../KllFloatsSketch.html" title="class in org.apache.datasketches.kll">KllFloatsSketch</a></code></td>
-<th class="colSecond" scope="row"><span class="typeNameLabel">KllFloatsSketch.</span><code><span class="memberNameLink"><a href="../KllFloatsSketch.html#newDirectInstance(org.apache.datasketches.memory.WritableMemory,org.apache.datasketches.memory.MemoryRequestServer)">newDirectInstance</a></span>&#8203;(org.apache.datasketches.memory.WritableMemory&nbsp;dstMem,
-                 org.apache.datasketches.memory.MemoryRequestServer&nbsp;memReqSvr)</code></th>
-<td class="colLast">
-<div class="block">Create a new direct instance of this sketch with the default <em>k</em>.</div>
-</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code>static <a href="../KllFloatsSketch.html" title="class in org.apache.datasketches.kll">KllFloatsSketch</a></code></td>
-<th class="colSecond" scope="row"><span class="typeNameLabel">KllFloatsSketch.</span><code><span class="memberNameLink"><a href="../KllFloatsSketch.html#newHeapInstance()">newHeapInstance</a></span>()</code></th>
+<td class="colFirst"><code>static &lt;T&gt;&nbsp;<a href="../KllItemsSketch.html" title="class in org.apache.datasketches.kll">KllItemsSketch</a>&lt;T&gt;</code></td>
+<th class="colSecond" scope="row"><span class="typeNameLabel">KllItemsSketch.</span><code><span class="memberNameLink"><a href="../KllItemsSketch.html#newHeapInstance(java.util.Comparator,org.apache.datasketches.common.ArrayOfItemsSerDe)">newHeapInstance</a></span>&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Comparator.html?is-external=true" title="class or interface in java.util" class="externalLink">Comparator</a>&lt;? super T&gt;&nbsp;comparator,
+               <a href="../../common/ArrayOfItemsSerDe.html" title="class in org.apache.datasketches.common">ArrayOfItemsSerDe</a>&lt;T&gt;&nbsp;serDe)</code></th>
 <td class="colLast">
 <div class="block">Create a new heap instance of this sketch with the default <em>k = 200</em>.</div>
 </td>
 </tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../KllFloatsSketch.html" title="class in org.apache.datasketches.kll">KllFloatsSketch</a></code></td>
-<th class="colSecond" scope="row"><span class="typeNameLabel">KllFloatsSketch.</span><code><span class="memberNameLink"><a href="../KllFloatsSketch.html#newHeapInstance(int)">newHeapInstance</a></span>&#8203;(int&nbsp;k)</code></th>
-<td class="colLast">
-<div class="block">Create a new heap instance of this sketch with a given parameter <em>k</em>.</div>
-</td>
-</tr>
 <tr class="rowColor">
-<td class="colFirst"><code>static <a href="../KllFloatsSketch.html" title="class in org.apache.datasketches.kll">KllFloatsSketch</a></code></td>
-<th class="colSecond" scope="row"><span class="typeNameLabel">KllFloatsSketch.</span><code><span class="memberNameLink"><a href="../KllFloatsSketch.html#wrap(org.apache.datasketches.memory.Memory)">wrap</a></span>&#8203;(org.apache.datasketches.memory.Memory&nbsp;srcMem)</code></th>
-<td class="colLast">
-<div class="block">Wrap a sketch around the given read only compact source Memory containing sketch data
- that originated from this sketch.</div>
-</td>
-</tr>
-<tr class="altColor">
-<td class="colFirst"><code>static <a href="../KllFloatsSketch.html" title="class in org.apache.datasketches.kll">KllFloatsSketch</a></code></td>
-<th class="colSecond" scope="row"><span class="typeNameLabel">KllFloatsSketch.</span><code><span class="memberNameLink"><a href="../KllFloatsSketch.html#writableWrap(org.apache.datasketches.memory.WritableMemory,org.apache.datasketches.memory.MemoryRequestServer)">writableWrap</a></span>&#8203;(org.apache.datasketches.memory.WritableMemory&nbsp;srcMem,
-            org.apache.datasketches.memory.MemoryRequestServer&nbsp;memReqSvr)</code></th>
+<td class="colFirst"><code>static &lt;T&gt;&nbsp;<a href="../KllItemsSketch.html" title="class in org.apache.datasketches.kll">KllItemsSketch</a>&lt;T&gt;</code></td>
+<th class="colSecond" scope="row"><span class="typeNameLabel">KllItemsSketch.</span><code><span class="memberNameLink"><a href="../KllItemsSketch.html#wrap(org.apache.datasketches.memory.Memory,java.util.Comparator,org.apache.datasketches.common.ArrayOfItemsSerDe)">wrap</a></span>&#8203;(org.apache.datasketches.memory.Memory&nbsp;srcMem,
+    <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Comparator.html?is-external=true" title="class or interface in java.util" class="externalLink">Comparator</a>&lt;? super T&gt;&nbsp;comparator,
+    <a href="../../common/ArrayOfItemsSerDe.html" title="class in org.apache.datasketches.common">ArrayOfItemsSerDe</a>&lt;T&gt;&nbsp;serDe)</code></th>
 <td class="colLast">
-<div class="block">Wrap a sketch around the given source Writable Memory containing sketch data
- that originated from this sketch.</div>
+<div class="block">Constructs a thin wrapper on the heap around a Memory (or WritableMemory) already initialized with a
+ validated sketch image of a type T consistent with the given comparator and serDe.</div>
 </td>
 </tr>
 </tbody>
 </table>
 <table class="useSummary">
-<caption><span>Constructors in <a href="../package-summary.html">org.apache.datasketches.kll</a> with parameters of type <a href="../KllFloatsSketch.html" title="class in org.apache.datasketches.kll">KllFloatsSketch</a></span><span class="tabEnd">&nbsp;</span></caption>
+<caption><span>Constructors in <a href="../package-summary.html">org.apache.datasketches.kll</a> with parameters of type <a href="../KllItemsSketch.html" title="class in org.apache.datasketches.kll">KllItemsSketch</a></span><span class="tabEnd">&nbsp;</span></caption>
 <tr>
 <th class="colFirst" scope="col">Constructor</th>
 <th class="colLast" scope="col">Description</th>
 </tr>
 <tbody>
 <tr class="altColor">
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../KllFloatsSketchSortedView.html#%3Cinit%3E(org.apache.datasketches.kll.KllFloatsSketch)">KllFloatsSketchSortedView</a></span>&#8203;(<a href="../KllFloatsSketch.html" title="class in org.apache.datasketches.kll">KllFloatsSketch</a>&nbsp;sk)</code></th>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../KllItemsSketchSortedView.html#%3Cinit%3E(org.apache.datasketches.kll.KllItemsSketch)">KllItemsSketchSortedView</a></span>&#8203;(<a href="../KllItemsSketch.html" title="class in org.apache.datasketches.kll">KllItemsSketch</a>&lt;<a href="../KllItemsSketchSortedView.html" title="type parameter in KllItemsSketchSortedView">T</a>&gt;&nbsp;sk)</code></th>
 <td class="colLast">
 <div class="block">Constructs this Sorted View given the sketch</div>
 </td>
@@ -223,7 +204,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <ul class="navList" title="Navigation">
 <li><a href="../../../../../index.html">Overview</a></li>
 <li><a href="../package-summary.html">Package</a></li>
-<li><a href="../KllFloatsSketch.html" title="class in org.apache.datasketches.kll">Class</a></li>
+<li><a href="../KllItemsSketch.html" title="class in org.apache.datasketches.kll">Class</a></li>
 <li class="navBarCell1Rev">Use</li>
 <li><a href="../package-tree.html">Tree</a></li>
 <li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
diff --git a/docs/master/org/apache/datasketches/quantiles/class-use/ItemsSketchSortedViewIterator.html b/docs/master/org/apache/datasketches/kll/class-use/KllItemsSketchIterator.html
similarity index 62%
copy from docs/master/org/apache/datasketches/quantiles/class-use/ItemsSketchSortedViewIterator.html
copy to docs/master/org/apache/datasketches/kll/class-use/KllItemsSketchIterator.html
index 7068603e..cf31e675 100644
--- a/docs/master/org/apache/datasketches/quantiles/class-use/ItemsSketchSortedViewIterator.html
+++ b/docs/master/org/apache/datasketches/kll/class-use/KllItemsSketchIterator.html
@@ -3,7 +3,7 @@
 <html lang="en">
 <head>
 <!-- Generated by javadoc -->
-<title>Uses of Class org.apache.datasketches.quantiles.ItemsSketchSortedViewIterator (datasketches-java 4.2.0-SNAPSHOT API)</title>
+<title>Uses of Class org.apache.datasketches.kll.KllItemsSketchIterator (datasketches-java 4.2.0-SNAPSHOT API)</title>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
 <link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
 <link rel="stylesheet" type="text/css" href="../../../../../jquery/jquery-ui.min.css" title="Style">
@@ -21,7 +21,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Class org.apache.datasketches.quantiles.ItemsSketchSortedViewIterator (datasketches-java 4.2.0-SNAPSHOT API)";
+            parent.document.title="Uses of Class org.apache.datasketches.kll.KllItemsSketchIterator (datasketches-java 4.2.0-SNAPSHOT API)";
         }
     }
     catch(err) {
@@ -47,7 +47,7 @@ loadScripts(document, 'script');</script>
 <ul class="navList" title="Navigation">
 <li><a href="../../../../../index.html">Overview</a></li>
 <li><a href="../package-summary.html">Package</a></li>
-<li><a href="../ItemsSketchSortedViewIterator.html" title="class in org.apache.datasketches.quantiles">Class</a></li>
+<li><a href="../KllItemsSketchIterator.html" title="class in org.apache.datasketches.kll">Class</a></li>
 <li class="navBarCell1Rev">Use</li>
 <li><a href="../package-tree.html">Tree</a></li>
 <li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
@@ -94,56 +94,9 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 </header>
 <main role="main">
 <div class="header">
-<h2 title="Uses of Class org.apache.datasketches.quantiles.ItemsSketchSortedViewIterator" class="title">Uses of Class<br>org.apache.datasketches.quantiles.ItemsSketchSortedViewIterator</h2>
-</div>
-<div class="classUseContainer">
-<ul class="blockList">
-<li class="blockList">
-<table class="useSummary">
-<caption><span>Packages that use <a href="../ItemsSketchSortedViewIterator.html" title="class in org.apache.datasketches.quantiles">ItemsSketchSortedViewIterator</a></span><span class="tabEnd">&nbsp;</span></caption>
-<tr>
-<th class="colFirst" scope="col">Package</th>
-<th class="colLast" scope="col">Description</th>
-</tr>
-<tbody>
-<tr class="altColor">
-<th class="colFirst" scope="row"><a href="#org.apache.datasketches.quantiles">org.apache.datasketches.quantiles</a></th>
-<td class="colLast">
-<div class="block">The quantiles package contains stochastic streaming algorithms that enable single-pass
- analysis of the distribution of a stream of quantiles.</div>
-</td>
-</tr>
-</tbody>
-</table>
-</li>
-<li class="blockList">
-<ul class="blockList">
-<li class="blockList">
-<section><a id="org.apache.datasketches.quantiles">
-<!--   -->
-</a>
-<h3>Uses of <a href="../ItemsSketchSortedViewIterator.html" title="class in org.apache.datasketches.quantiles">ItemsSketchSortedViewIterator</a> in <a href="../package-summary.html">org.apache.datasketches.quantiles</a></h3>
-<table class="useSummary">
-<caption><span>Methods in <a href="../package-summary.html">org.apache.datasketches.quantiles</a> that return <a href="../ItemsSketchSortedViewIterator.html" title="class in org.apache.datasketches.quantiles">ItemsSketchSortedViewIterator</a></span><span class="tabEnd">&nbsp;</span></caption>
-<tr>
-<th class="colFirst" scope="col">Modifier and Type</th>
-<th class="colSecond" scope="col">Method</th>
-<th class="colLast" scope="col">Description</th>
-</tr>
-<tbody>
-<tr class="altColor">
-<td class="colFirst"><code><a href="../ItemsSketchSortedViewIterator.html" title="class in org.apache.datasketches.quantiles">ItemsSketchSortedViewIterator</a>&lt;<a href="../ItemsSketchSortedView.html" title="type parameter in ItemsSketchSortedView">T</a>&gt;</code></td>
-<th class="colSecond" scope="row"><span class="typeNameLabel">ItemsSketchSortedView.</span><code><span class="memberNameLink"><a href="../ItemsSketchSortedView.html#iterator()">iterator</a></span>()</code></th>
-<td class="colLast">&nbsp;</td>
-</tr>
-</tbody>
-</table>
-</section>
-</li>
-</ul>
-</li>
-</ul>
+<h2 title="Uses of Class org.apache.datasketches.kll.KllItemsSketchIterator" class="title">Uses of Class<br>org.apache.datasketches.kll.KllItemsSketchIterator</h2>
 </div>
+<div class="classUseContainer">No usage of org.apache.datasketches.kll.KllItemsSketchIterator</div>
 </main>
 <footer role="contentinfo">
 <nav role="navigation">
@@ -158,7 +111,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <ul class="navList" title="Navigation">
 <li><a href="../../../../../index.html">Overview</a></li>
 <li><a href="../package-summary.html">Package</a></li>
-<li><a href="../ItemsSketchSortedViewIterator.html" title="class in org.apache.datasketches.quantiles">Class</a></li>
+<li><a href="../KllItemsSketchIterator.html" title="class in org.apache.datasketches.kll">Class</a></li>
 <li class="navBarCell1Rev">Use</li>
 <li><a href="../package-tree.html">Tree</a></li>
 <li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
diff --git a/docs/master/org/apache/datasketches/quantiles/class-use/ItemsSketchSortedViewIterator.html b/docs/master/org/apache/datasketches/kll/class-use/KllItemsSketchSortedView.KllItemsSketchSortedViewIterator.html
similarity index 69%
copy from docs/master/org/apache/datasketches/quantiles/class-use/ItemsSketchSortedViewIterator.html
copy to docs/master/org/apache/datasketches/kll/class-use/KllItemsSketchSortedView.KllItemsSketchSortedViewIterator.html
index 7068603e..855ce120 100644
--- a/docs/master/org/apache/datasketches/quantiles/class-use/ItemsSketchSortedViewIterator.html
+++ b/docs/master/org/apache/datasketches/kll/class-use/KllItemsSketchSortedView.KllItemsSketchSortedViewIterator.html
@@ -3,7 +3,7 @@
 <html lang="en">
 <head>
 <!-- Generated by javadoc -->
-<title>Uses of Class org.apache.datasketches.quantiles.ItemsSketchSortedViewIterator (datasketches-java 4.2.0-SNAPSHOT API)</title>
+<title>Uses of Class org.apache.datasketches.kll.KllItemsSketchSortedView.KllItemsSketchSortedViewIterator (datasketches-java 4.2.0-SNAPSHOT API)</title>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
 <link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
 <link rel="stylesheet" type="text/css" href="../../../../../jquery/jquery-ui.min.css" title="Style">
@@ -21,7 +21,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Class org.apache.datasketches.quantiles.ItemsSketchSortedViewIterator (datasketches-java 4.2.0-SNAPSHOT API)";
+            parent.document.title="Uses of Class org.apache.datasketches.kll.KllItemsSketchSortedView.KllItemsSketchSortedViewIterator (datasketches-java 4.2.0-SNAPSHOT API)";
         }
     }
     catch(err) {
@@ -47,7 +47,7 @@ loadScripts(document, 'script');</script>
 <ul class="navList" title="Navigation">
 <li><a href="../../../../../index.html">Overview</a></li>
 <li><a href="../package-summary.html">Package</a></li>
-<li><a href="../ItemsSketchSortedViewIterator.html" title="class in org.apache.datasketches.quantiles">Class</a></li>
+<li><a href="../KllItemsSketchSortedView.KllItemsSketchSortedViewIterator.html" title="class in org.apache.datasketches.kll">Class</a></li>
 <li class="navBarCell1Rev">Use</li>
 <li><a href="../package-tree.html">Tree</a></li>
 <li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
@@ -94,23 +94,23 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 </header>
 <main role="main">
 <div class="header">
-<h2 title="Uses of Class org.apache.datasketches.quantiles.ItemsSketchSortedViewIterator" class="title">Uses of Class<br>org.apache.datasketches.quantiles.ItemsSketchSortedViewIterator</h2>
+<h2 title="Uses of Class org.apache.datasketches.kll.KllItemsSketchSortedView.KllItemsSketchSortedViewIterator" class="title">Uses of Class<br>org.apache.datasketches.kll.KllItemsSketchSortedView.KllItemsSketchSortedViewIterator</h2>
 </div>
 <div class="classUseContainer">
 <ul class="blockList">
 <li class="blockList">
 <table class="useSummary">
-<caption><span>Packages that use <a href="../ItemsSketchSortedViewIterator.html" title="class in org.apache.datasketches.quantiles">ItemsSketchSortedViewIterator</a></span><span class="tabEnd">&nbsp;</span></caption>
+<caption><span>Packages that use <a href="../KllItemsSketchSortedView.KllItemsSketchSortedViewIterator.html" title="class in org.apache.datasketches.kll">KllItemsSketchSortedView.KllItemsSketchSortedViewIterator</a></span><span class="tabEnd">&nbsp;</span></caption>
 <tr>
 <th class="colFirst" scope="col">Package</th>
 <th class="colLast" scope="col">Description</th>
 </tr>
 <tbody>
 <tr class="altColor">
-<th class="colFirst" scope="row"><a href="#org.apache.datasketches.quantiles">org.apache.datasketches.quantiles</a></th>
+<th class="colFirst" scope="row"><a href="#org.apache.datasketches.kll">org.apache.datasketches.kll</a></th>
 <td class="colLast">
-<div class="block">The quantiles package contains stochastic streaming algorithms that enable single-pass
- analysis of the distribution of a stream of quantiles.</div>
+<div class="block">This package is for the implementations of the sketch algorithm developed by Zohar Karnin, Kevin Lang,
+ and Edo Liberty that is commonly referred to as the "KLL" sketch after the authors' last names.</div>
 </td>
 </tr>
 </tbody>
@@ -119,12 +119,12 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <li class="blockList">
 <ul class="blockList">
 <li class="blockList">
-<section><a id="org.apache.datasketches.quantiles">
+<section><a id="org.apache.datasketches.kll">
 <!--   -->
 </a>
-<h3>Uses of <a href="../ItemsSketchSortedViewIterator.html" title="class in org.apache.datasketches.quantiles">ItemsSketchSortedViewIterator</a> in <a href="../package-summary.html">org.apache.datasketches.quantiles</a></h3>
+<h3>Uses of <a href="../KllItemsSketchSortedView.KllItemsSketchSortedViewIterator.html" title="class in org.apache.datasketches.kll">KllItemsSketchSortedView.KllItemsSketchSortedViewIterator</a> in <a href="../package-summary.html">org.apache.datasketches.kll</a></h3>
 <table class="useSummary">
-<caption><span>Methods in <a href="../package-summary.html">org.apache.datasketches.quantiles</a> that return <a href="../ItemsSketchSortedViewIterator.html" title="class in org.apache.datasketches.quantiles">ItemsSketchSortedViewIterator</a></span><span class="tabEnd">&nbsp;</span></caption>
+<caption><span>Methods in <a href="../package-summary.html">org.apache.datasketches.kll</a> that return <a href="../KllItemsSketchSortedView.KllItemsSketchSortedViewIterator.html" title="class in org.apache.datasketches.kll">KllItemsSketchSortedView.KllItemsSketchSortedViewIterator</a></span><span class="tabEnd">&nbsp;</span></caption>
 <tr>
 <th class="colFirst" scope="col">Modifier and Type</th>
 <th class="colSecond" scope="col">Method</th>
@@ -132,8 +132,8 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code><a href="../ItemsSketchSortedViewIterator.html" title="class in org.apache.datasketches.quantiles">ItemsSketchSortedViewIterator</a>&lt;<a href="../ItemsSketchSortedView.html" title="type parameter in ItemsSketchSortedView">T</a>&gt;</code></td>
-<th class="colSecond" scope="row"><span class="typeNameLabel">ItemsSketchSortedView.</span><code><span class="memberNameLink"><a href="../ItemsSketchSortedView.html#iterator()">iterator</a></span>()</code></th>
+<td class="colFirst"><code><a href="../KllItemsSketchSortedView.KllItemsSketchSortedViewIterator.html" title="class in org.apache.datasketches.kll">KllItemsSketchSortedView.KllItemsSketchSortedViewIterator</a>&lt;<a href="../KllItemsSketchSortedView.html" title="type parameter in KllItemsSketchSortedView">T</a>&gt;</code></td>
+<th class="colSecond" scope="row"><span class="typeNameLabel">KllItemsSketchSortedView.</span><code><span class="memberNameLink"><a href="../KllItemsSketchSortedView.html#iterator()">iterator</a></span>()</code></th>
 <td class="colLast">&nbsp;</td>
 </tr>
 </tbody>
@@ -158,7 +158,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <ul class="navList" title="Navigation">
 <li><a href="../../../../../index.html">Overview</a></li>
 <li><a href="../package-summary.html">Package</a></li>
-<li><a href="../ItemsSketchSortedViewIterator.html" title="class in org.apache.datasketches.quantiles">Class</a></li>
+<li><a href="../KllItemsSketchSortedView.KllItemsSketchSortedViewIterator.html" title="class in org.apache.datasketches.kll">Class</a></li>
 <li class="navBarCell1Rev">Use</li>
 <li><a href="../package-tree.html">Tree</a></li>
 <li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
diff --git a/docs/master/org/apache/datasketches/quantiles/class-use/ItemsSketchSortedViewIterator.html b/docs/master/org/apache/datasketches/kll/class-use/KllItemsSketchSortedView.html
similarity index 72%
copy from docs/master/org/apache/datasketches/quantiles/class-use/ItemsSketchSortedViewIterator.html
copy to docs/master/org/apache/datasketches/kll/class-use/KllItemsSketchSortedView.html
index 7068603e..724836e1 100644
--- a/docs/master/org/apache/datasketches/quantiles/class-use/ItemsSketchSortedViewIterator.html
+++ b/docs/master/org/apache/datasketches/kll/class-use/KllItemsSketchSortedView.html
@@ -3,7 +3,7 @@
 <html lang="en">
 <head>
 <!-- Generated by javadoc -->
-<title>Uses of Class org.apache.datasketches.quantiles.ItemsSketchSortedViewIterator (datasketches-java 4.2.0-SNAPSHOT API)</title>
+<title>Uses of Class org.apache.datasketches.kll.KllItemsSketchSortedView (datasketches-java 4.2.0-SNAPSHOT API)</title>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
 <link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
 <link rel="stylesheet" type="text/css" href="../../../../../jquery/jquery-ui.min.css" title="Style">
@@ -21,7 +21,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Class org.apache.datasketches.quantiles.ItemsSketchSortedViewIterator (datasketches-java 4.2.0-SNAPSHOT API)";
+            parent.document.title="Uses of Class org.apache.datasketches.kll.KllItemsSketchSortedView (datasketches-java 4.2.0-SNAPSHOT API)";
         }
     }
     catch(err) {
@@ -47,7 +47,7 @@ loadScripts(document, 'script');</script>
 <ul class="navList" title="Navigation">
 <li><a href="../../../../../index.html">Overview</a></li>
 <li><a href="../package-summary.html">Package</a></li>
-<li><a href="../ItemsSketchSortedViewIterator.html" title="class in org.apache.datasketches.quantiles">Class</a></li>
+<li><a href="../KllItemsSketchSortedView.html" title="class in org.apache.datasketches.kll">Class</a></li>
 <li class="navBarCell1Rev">Use</li>
 <li><a href="../package-tree.html">Tree</a></li>
 <li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
@@ -94,23 +94,23 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 </header>
 <main role="main">
 <div class="header">
-<h2 title="Uses of Class org.apache.datasketches.quantiles.ItemsSketchSortedViewIterator" class="title">Uses of Class<br>org.apache.datasketches.quantiles.ItemsSketchSortedViewIterator</h2>
+<h2 title="Uses of Class org.apache.datasketches.kll.KllItemsSketchSortedView" class="title">Uses of Class<br>org.apache.datasketches.kll.KllItemsSketchSortedView</h2>
 </div>
 <div class="classUseContainer">
 <ul class="blockList">
 <li class="blockList">
 <table class="useSummary">
-<caption><span>Packages that use <a href="../ItemsSketchSortedViewIterator.html" title="class in org.apache.datasketches.quantiles">ItemsSketchSortedViewIterator</a></span><span class="tabEnd">&nbsp;</span></caption>
+<caption><span>Packages that use <a href="../KllItemsSketchSortedView.html" title="class in org.apache.datasketches.kll">KllItemsSketchSortedView</a></span><span class="tabEnd">&nbsp;</span></caption>
 <tr>
 <th class="colFirst" scope="col">Package</th>
 <th class="colLast" scope="col">Description</th>
 </tr>
 <tbody>
 <tr class="altColor">
-<th class="colFirst" scope="row"><a href="#org.apache.datasketches.quantiles">org.apache.datasketches.quantiles</a></th>
+<th class="colFirst" scope="row"><a href="#org.apache.datasketches.kll">org.apache.datasketches.kll</a></th>
 <td class="colLast">
-<div class="block">The quantiles package contains stochastic streaming algorithms that enable single-pass
- analysis of the distribution of a stream of quantiles.</div>
+<div class="block">This package is for the implementations of the sketch algorithm developed by Zohar Karnin, Kevin Lang,
+ and Edo Liberty that is commonly referred to as the "KLL" sketch after the authors' last names.</div>
 </td>
 </tr>
 </tbody>
@@ -119,12 +119,12 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <li class="blockList">
 <ul class="blockList">
 <li class="blockList">
-<section><a id="org.apache.datasketches.quantiles">
+<section><a id="org.apache.datasketches.kll">
 <!--   -->
 </a>
-<h3>Uses of <a href="../ItemsSketchSortedViewIterator.html" title="class in org.apache.datasketches.quantiles">ItemsSketchSortedViewIterator</a> in <a href="../package-summary.html">org.apache.datasketches.quantiles</a></h3>
+<h3>Uses of <a href="../KllItemsSketchSortedView.html" title="class in org.apache.datasketches.kll">KllItemsSketchSortedView</a> in <a href="../package-summary.html">org.apache.datasketches.kll</a></h3>
 <table class="useSummary">
-<caption><span>Methods in <a href="../package-summary.html">org.apache.datasketches.quantiles</a> that return <a href="../ItemsSketchSortedViewIterator.html" title="class in org.apache.datasketches.quantiles">ItemsSketchSortedViewIterator</a></span><span class="tabEnd">&nbsp;</span></caption>
+<caption><span>Methods in <a href="../package-summary.html">org.apache.datasketches.kll</a> that return <a href="../KllItemsSketchSortedView.html" title="class in org.apache.datasketches.kll">KllItemsSketchSortedView</a></span><span class="tabEnd">&nbsp;</span></caption>
 <tr>
 <th class="colFirst" scope="col">Modifier and Type</th>
 <th class="colSecond" scope="col">Method</th>
@@ -132,8 +132,8 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code><a href="../ItemsSketchSortedViewIterator.html" title="class in org.apache.datasketches.quantiles">ItemsSketchSortedViewIterator</a>&lt;<a href="../ItemsSketchSortedView.html" title="type parameter in ItemsSketchSortedView">T</a>&gt;</code></td>
-<th class="colSecond" scope="row"><span class="typeNameLabel">ItemsSketchSortedView.</span><code><span class="memberNameLink"><a href="../ItemsSketchSortedView.html#iterator()">iterator</a></span>()</code></th>
+<td class="colFirst"><code><a href="../KllItemsSketchSortedView.html" title="class in org.apache.datasketches.kll">KllItemsSketchSortedView</a>&lt;<a href="../KllItemsSketch.html" title="type parameter in KllItemsSketch">T</a>&gt;</code></td>
+<th class="colSecond" scope="row"><span class="typeNameLabel">KllItemsSketch.</span><code><span class="memberNameLink"><a href="../KllItemsSketch.html#getSortedView()">getSortedView</a></span>()</code></th>
 <td class="colLast">&nbsp;</td>
 </tr>
 </tbody>
@@ -158,7 +158,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <ul class="navList" title="Navigation">
 <li><a href="../../../../../index.html">Overview</a></li>
 <li><a href="../package-summary.html">Package</a></li>
-<li><a href="../ItemsSketchSortedViewIterator.html" title="class in org.apache.datasketches.quantiles">Class</a></li>
+<li><a href="../KllItemsSketchSortedView.html" title="class in org.apache.datasketches.kll">Class</a></li>
 <li class="navBarCell1Rev">Use</li>
 <li><a href="../package-tree.html">Tree</a></li>
 <li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
diff --git a/docs/master/org/apache/datasketches/kll/class-use/KllSketch.html b/docs/master/org/apache/datasketches/kll/class-use/KllSketch.SketchStructure.html
similarity index 68%
copy from docs/master/org/apache/datasketches/kll/class-use/KllSketch.html
copy to docs/master/org/apache/datasketches/kll/class-use/KllSketch.SketchStructure.html
index 6be67075..0cdd0c5b 100644
--- a/docs/master/org/apache/datasketches/kll/class-use/KllSketch.html
+++ b/docs/master/org/apache/datasketches/kll/class-use/KllSketch.SketchStructure.html
@@ -3,7 +3,7 @@
 <html lang="en">
 <head>
 <!-- Generated by javadoc -->
-<title>Uses of Class org.apache.datasketches.kll.KllSketch (datasketches-java 4.2.0-SNAPSHOT API)</title>
+<title>Uses of Class org.apache.datasketches.kll.KllSketch.SketchStructure (datasketches-java 4.2.0-SNAPSHOT API)</title>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
 <link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
 <link rel="stylesheet" type="text/css" href="../../../../../jquery/jquery-ui.min.css" title="Style">
@@ -21,7 +21,7 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="Uses of Class org.apache.datasketches.kll.KllSketch (datasketches-java 4.2.0-SNAPSHOT API)";
+            parent.document.title="Uses of Class org.apache.datasketches.kll.KllSketch.SketchStructure (datasketches-java 4.2.0-SNAPSHOT API)";
         }
     }
     catch(err) {
@@ -47,7 +47,7 @@ loadScripts(document, 'script');</script>
 <ul class="navList" title="Navigation">
 <li><a href="../../../../../index.html">Overview</a></li>
 <li><a href="../package-summary.html">Package</a></li>
-<li><a href="../KllSketch.html" title="class in org.apache.datasketches.kll">Class</a></li>
+<li><a href="../KllSketch.SketchStructure.html" title="enum in org.apache.datasketches.kll">Class</a></li>
 <li class="navBarCell1Rev">Use</li>
 <li><a href="../package-tree.html">Tree</a></li>
 <li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
@@ -94,13 +94,13 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 </header>
 <main role="main">
 <div class="header">
-<h2 title="Uses of Class org.apache.datasketches.kll.KllSketch" class="title">Uses of Class<br>org.apache.datasketches.kll.KllSketch</h2>
+<h2 title="Uses of Class org.apache.datasketches.kll.KllSketch.SketchStructure" class="title">Uses of Class<br>org.apache.datasketches.kll.KllSketch.SketchStructure</h2>
 </div>
 <div class="classUseContainer">
 <ul class="blockList">
 <li class="blockList">
 <table class="useSummary">
-<caption><span>Packages that use <a href="../KllSketch.html" title="class in org.apache.datasketches.kll">KllSketch</a></span><span class="tabEnd">&nbsp;</span></caption>
+<caption><span>Packages that use <a href="../KllSketch.SketchStructure.html" title="enum in org.apache.datasketches.kll">KllSketch.SketchStructure</a></span><span class="tabEnd">&nbsp;</span></caption>
 <tr>
 <th class="colFirst" scope="col">Package</th>
 <th class="colLast" scope="col">Description</th>
@@ -122,44 +122,34 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <section><a id="org.apache.datasketches.kll">
 <!--   -->
 </a>
-<h3>Uses of <a href="../KllSketch.html" title="class in org.apache.datasketches.kll">KllSketch</a> in <a href="../package-summary.html">org.apache.datasketches.kll</a></h3>
+<h3>Uses of <a href="../KllSketch.SketchStructure.html" title="enum in org.apache.datasketches.kll">KllSketch.SketchStructure</a> in <a href="../package-summary.html">org.apache.datasketches.kll</a></h3>
 <table class="useSummary">
-<caption><span>Subclasses of <a href="../KllSketch.html" title="class in org.apache.datasketches.kll">KllSketch</a> in <a href="../package-summary.html">org.apache.datasketches.kll</a></span><span class="tabEnd">&nbsp;</span></caption>
+<caption><span>Methods in <a href="../package-summary.html">org.apache.datasketches.kll</a> that return <a href="../KllSketch.SketchStructure.html" title="enum in org.apache.datasketches.kll">KllSketch.SketchStructure</a></span><span class="tabEnd">&nbsp;</span></caption>
 <tr>
 <th class="colFirst" scope="col">Modifier and Type</th>
-<th class="colSecond" scope="col">Class</th>
+<th class="colSecond" scope="col">Method</th>
 <th class="colLast" scope="col">Description</th>
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code>class&nbsp;</code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../KllDoublesSketch.html" title="class in org.apache.datasketches.kll">KllDoublesSketch</a></span></code></th>
-<td class="colLast">
-<div class="block">This variation of the KllSketch implements primitive doubles.</div>
-</td>
+<td class="colFirst"><code>static <a href="../KllSketch.SketchStructure.html" title="enum in org.apache.datasketches.kll">KllSketch.SketchStructure</a></code></td>
+<th class="colSecond" scope="row"><span class="typeNameLabel">KllSketch.SketchStructure.</span><code><span class="memberNameLink"><a href="../KllSketch.SketchStructure.html#getSketchStructure(int,int)">getSketchStructure</a></span>&#8203;(int&nbsp;preInts,
+                  int&nbsp;serVer)</code></th>
+<td class="colLast">&nbsp;</td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code>class&nbsp;</code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../KllFloatsSketch.html" title="class in org.apache.datasketches.kll">KllFloatsSketch</a></span></code></th>
+<td class="colFirst"><code>static <a href="../KllSketch.SketchStructure.html" title="enum in org.apache.datasketches.kll">KllSketch.SketchStructure</a></code></td>
+<th class="colSecond" scope="row"><span class="typeNameLabel">KllSketch.SketchStructure.</span><code><span class="memberNameLink"><a href="../KllSketch.SketchStructure.html#valueOf(java.lang.String)">valueOf</a></span>&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;name)</code></th>
 <td class="colLast">
-<div class="block">This variation of the KllSketch implements primitive floats.</div>
+<div class="block">Returns the enum constant of this type with the specified name.</div>
 </td>
 </tr>
-</tbody>
-</table>
-<table class="useSummary">
-<caption><span>Methods in <a href="../package-summary.html">org.apache.datasketches.kll</a> with parameters of type <a href="../KllSketch.html" title="class in org.apache.datasketches.kll">KllSketch</a></span><span class="tabEnd">&nbsp;</span></caption>
-<tr>
-<th class="colFirst" scope="col">Modifier and Type</th>
-<th class="colSecond" scope="col">Method</th>
-<th class="colLast" scope="col">Description</th>
-</tr>
-<tbody>
 <tr class="altColor">
-<td class="colFirst"><code>void</code></td>
-<th class="colSecond" scope="row"><span class="typeNameLabel">KllSketch.</span><code><span class="memberNameLink"><a href="../KllSketch.html#merge(org.apache.datasketches.kll.KllSketch)">merge</a></span>&#8203;(<a href="../KllSketch.html" title="class in org.apache.datasketches.kll">KllSketch</a>&nbsp;other)</code></th>
+<td class="colFirst"><code>static <a href="../KllSketch.SketchStructure.html" title="enum in org.apache.datasketches.kll">KllSketch.SketchStructure</a>[]</code></td>
+<th class="colSecond" scope="row"><span class="typeNameLabel">KllSketch.SketchStructure.</span><code><span class="memberNameLink"><a href="../KllSketch.SketchStructure.html#values()">values</a></span>()</code></th>
 <td class="colLast">
-<div class="block">Merges another sketch into this one.</div>
+<div class="block">Returns an array containing the constants of this enum type, in
+the order they are declared.</div>
 </td>
 </tr>
 </tbody>
@@ -184,7 +174,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <ul class="navList" title="Navigation">
 <li><a href="../../../../../index.html">Overview</a></li>
 <li><a href="../package-summary.html">Package</a></li>
-<li><a href="../KllSketch.html" title="class in org.apache.datasketches.kll">Class</a></li>
+<li><a href="../KllSketch.SketchStructure.html" title="enum in org.apache.datasketches.kll">Class</a></li>
 <li class="navBarCell1Rev">Use</li>
 <li><a href="../package-tree.html">Tree</a></li>
 <li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
diff --git a/docs/master/org/apache/datasketches/kll/class-use/KllSketch.html b/docs/master/org/apache/datasketches/kll/class-use/KllSketch.html
index 6be67075..1ee89214 100644
--- a/docs/master/org/apache/datasketches/kll/class-use/KllSketch.html
+++ b/docs/master/org/apache/datasketches/kll/class-use/KllSketch.html
@@ -145,6 +145,13 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <div class="block">This variation of the KllSketch implements primitive floats.</div>
 </td>
 </tr>
+<tr class="altColor">
+<td class="colFirst"><code>class&nbsp;</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../KllItemsSketch.html" title="class in org.apache.datasketches.kll">KllItemsSketch</a>&lt;T&gt;</span></code></th>
+<td class="colLast">
+<div class="block">This variation of the KllSketch implements generic data types.</div>
+</td>
+</tr>
 </tbody>
 </table>
 <table class="useSummary">
@@ -157,6 +164,21 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
+<th class="colSecond" scope="row"><span class="typeNameLabel">KllDoublesSketch.</span><code><span class="memberNameLink"><a href="../KllDoublesSketch.html#merge(org.apache.datasketches.kll.KllSketch)">merge</a></span>&#8203;(<a href="../KllSketch.html" title="class in org.apache.datasketches.kll">KllSketch</a>&nbsp;other)</code></th>
+<td class="colLast">&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<th class="colSecond" scope="row"><span class="typeNameLabel">KllFloatsSketch.</span><code><span class="memberNameLink"><a href="../KllFloatsSketch.html#merge(org.apache.datasketches.kll.KllSketch)">merge</a></span>&#8203;(<a href="../KllSketch.html" title="class in org.apache.datasketches.kll">KllSketch</a>&nbsp;other)</code></th>
+<td class="colLast">&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>void</code></td>
+<th class="colSecond" scope="row"><span class="typeNameLabel">KllItemsSketch.</span><code><span class="memberNameLink"><a href="../KllItemsSketch.html#merge(org.apache.datasketches.kll.KllSketch)">merge</a></span>&#8203;(<a href="../KllSketch.html" title="class in org.apache.datasketches.kll">KllSketch</a>&nbsp;other)</code></th>
+<td class="colLast">&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>abstract void</code></td>
 <th class="colSecond" scope="row"><span class="typeNameLabel">KllSketch.</span><code><span class="memberNameLink"><a href="../KllSketch.html#merge(org.apache.datasketches.kll.KllSketch)">merge</a></span>&#8203;(<a href="../KllSketch.html" title="class in org.apache.datasketches.kll">KllSketch</a>&nbsp;other)</code></th>
 <td class="colLast">
 <div class="block">Merges another sketch into this one.</div>
diff --git a/docs/master/org/apache/datasketches/kll/package-summary.html b/docs/master/org/apache/datasketches/kll/package-summary.html
index a2442036..6ae3cf74 100644
--- a/docs/master/org/apache/datasketches/kll/package-summary.html
+++ b/docs/master/org/apache/datasketches/kll/package-summary.html
@@ -161,6 +161,30 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 </td>
 </tr>
 <tr class="altColor">
+<th class="colFirst" scope="row"><a href="KllItemsSketch.html" title="class in org.apache.datasketches.kll">KllItemsSketch</a>&lt;T&gt;</th>
+<td class="colLast">
+<div class="block">This variation of the KllSketch implements generic data types.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<th class="colFirst" scope="row"><a href="KllItemsSketchIterator.html" title="class in org.apache.datasketches.kll">KllItemsSketchIterator</a>&lt;T&gt;</th>
+<td class="colLast">
+<div class="block">Iterator over KllItemsSketch.</div>
+</td>
+</tr>
+<tr class="altColor">
+<th class="colFirst" scope="row"><a href="KllItemsSketchSortedView.html" title="class in org.apache.datasketches.kll">KllItemsSketchSortedView</a>&lt;T&gt;</th>
+<td class="colLast">
+<div class="block">The SortedView of the KllItemsSketch.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<th class="colFirst" scope="row"><a href="KllItemsSketchSortedView.KllItemsSketchSortedViewIterator.html" title="class in org.apache.datasketches.kll">KllItemsSketchSortedView.KllItemsSketchSortedViewIterator</a>&lt;T&gt;</th>
+<td class="colLast">
+<div class="block">Iterator over KllItemsSketchSortedView.</div>
+</td>
+</tr>
+<tr class="altColor">
 <th class="colFirst" scope="row"><a href="KllSketch.html" title="class in org.apache.datasketches.kll">KllSketch</a></th>
 <td class="colLast">
 <div class="block">This class is the root of the KLL sketch class hierarchy.</div>
@@ -178,6 +202,12 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 </tr>
 <tbody>
 <tr class="altColor">
+<th class="colFirst" scope="row"><a href="KllSketch.SketchStructure.html" title="enum in org.apache.datasketches.kll">KllSketch.SketchStructure</a></th>
+<td class="colLast">
+<div class="block">Used primarily to define the structure of the serialized sketch.</div>
+</td>
+</tr>
+<tr class="rowColor">
 <th class="colFirst" scope="row"><a href="KllSketch.SketchType.html" title="enum in org.apache.datasketches.kll">KllSketch.SketchType</a></th>
 <td class="colLast">
 <div class="block">Used to define the variable type of the current instance of this class.</div>
diff --git a/docs/master/org/apache/datasketches/kll/package-tree.html b/docs/master/org/apache/datasketches/kll/package-tree.html
index 87a6146e..7afb7a5d 100644
--- a/docs/master/org/apache/datasketches/kll/package-tree.html
+++ b/docs/master/org/apache/datasketches/kll/package-tree.html
@@ -106,16 +106,24 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <ul>
 <li class="circle">java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink"><span class="typeNameLink">Object</span></a>
 <ul>
+<li class="circle">org.apache.datasketches.quantilescommon.<a href="../quantilescommon/GenericSortedViewIterator.html" title="class in org.apache.datasketches.quantilescommon"><span class="typeNameLink">GenericSortedViewIterator</span></a>&lt;T&gt; (implements org.apache.datasketches.quantilescommon.<a href="../quantilescommon/SortedViewIterator.html" title="interface in org.apache.datasketches.quantilescommon">SortedViewIterator</a>)
+<ul>
+<li class="circle">org.apache.datasketches.kll.<a href="KllItemsSketchSortedView.KllItemsSketchSortedViewIterator.html" title="class in org.apache.datasketches.kll"><span class="typeNameLink">KllItemsSketchSortedView.KllItemsSketchSortedViewIterator</span></a>&lt;T&gt;</li>
+</ul>
+</li>
 <li class="circle">org.apache.datasketches.kll.<a href="KllDoublesSketchIterator.html" title="class in org.apache.datasketches.kll"><span class="typeNameLink">KllDoublesSketchIterator</span></a> (implements org.apache.datasketches.quantilescommon.<a href="../quantilescommon/QuantilesDoublesSketchIterator.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesDoublesSketchIterator</a>)</li>
 <li class="circle">org.apache.datasketches.kll.<a href="KllDoublesSketchSortedView.html" title="class in org.apache.datasketches.kll"><span class="typeNameLink">KllDoublesSketchSortedView</span></a> (implements org.apache.datasketches.quantilescommon.<a href="../quantilescommon/DoublesSortedView.html" title="interface in org.apache.datasketches.quantilescommon">DoublesSortedView</a>)</li>
 <li class="circle">org.apache.datasketches.kll.<a href="KllDoublesSketchSortedViewIterator.html" title="class in org.apache.datasketches.kll"><span class="typeNameLink">KllDoublesSketchSortedViewIterator</span></a> (implements org.apache.datasketches.quantilescommon.<a href="../quantilescommon/DoublesSortedViewIterator.html" title="interface in org.apache.datasketches.quantilescommon">DoublesSortedViewIterator</a>)</li>
 <li class="circle">org.apache.datasketches.kll.<a href="KllFloatsSketchIterator.html" title="class in org.apache.datasketches.kll"><span class="typeNameLink">KllFloatsSketchIterator</span></a> (implements org.apache.datasketches.quantilescommon.<a href="../quantilescommon/QuantilesFloatsSketchIterator.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesFloatsSketchIterator</a>)</li>
 <li class="circle">org.apache.datasketches.kll.<a href="KllFloatsSketchSortedView.html" title="class in org.apache.datasketches.kll"><span class="typeNameLink">KllFloatsSketchSortedView</span></a> (implements org.apache.datasketches.quantilescommon.<a href="../quantilescommon/FloatsSortedView.html" title="interface in org.apache.datasketches.quantilescommon">FloatsSortedView</a>)</li>
 <li class="circle">org.apache.datasketches.kll.<a href="KllFloatsSketchSortedViewIterator.html" title="class in org.apache.datasketches.kll"><span class="typeNameLink">KllFloatsSketchSortedViewIterator</span></a> (implements org.apache.datasketches.quantilescommon.<a href="../quantilescommon/FloatsSortedViewIterator.html" title="interface in org.apache.datasketches.quantilescommon">FloatsSortedViewIterator</a>)</li>
+<li class="circle">org.apache.datasketches.kll.<a href="KllItemsSketchIterator.html" title="class in org.apache.datasketches.kll"><span class="typeNameLink">KllItemsSketchIterator</span></a>&lt;T&gt; (implements org.apache.datasketches.quantilescommon.<a href="../quantilescommon/QuantilesGenericSketchIterator.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesGenericSketchIterator</a>&lt;T&gt;)</li>
+<li class="circle">org.apache.datasketches.kll.<a href="KllItemsSketchSortedView.html" title="class in org.apache.datasketches.kll"><span class="typeNameLink">KllItemsSketchSortedView</span></a>&lt;T&gt; (implements org.apache.datasketches.quantilescommon.<a href="../quantilescommon/GenericSortedView.html" title="interface in org.apache.datasketches.quantilescommon">GenericSortedView</a>&lt;T&gt;)</li>
 <li class="circle">org.apache.datasketches.kll.<a href="KllSketch.html" title="class in org.apache.datasketches.kll"><span class="typeNameLink">KllSketch</span></a> (implements org.apache.datasketches.quantilescommon.<a href="../quantilescommon/QuantilesAPI.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesAPI</a>)
 <ul>
 <li class="circle">org.apache.datasketches.kll.<a href="KllDoublesSketch.html" title="class in org.apache.datasketches.kll"><span class="typeNameLink">KllDoublesSketch</span></a> (implements org.apache.datasketches.quantilescommon.<a href="../quantilescommon/QuantilesDoublesAPI.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesDoublesAPI</a>)</li>
 <li class="circle">org.apache.datasketches.kll.<a href="KllFloatsSketch.html" title="class in org.apache.datasketches.kll"><span class="typeNameLink">KllFloatsSketch</span></a> (implements org.apache.datasketches.quantilescommon.<a href="../quantilescommon/QuantilesFloatsAPI.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesFloatsAPI</a>)</li>
+<li class="circle">org.apache.datasketches.kll.<a href="KllItemsSketch.html" title="class in org.apache.datasketches.kll"><span class="typeNameLink">KllItemsSketch</span></a>&lt;T&gt; (implements org.apache.datasketches.quantilescommon.<a href="../quantilescommon/QuantilesGenericAPI.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesGenericAPI</a>&lt;T&gt;)</li>
 </ul>
 </li>
 </ul>
@@ -129,6 +137,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <ul>
 <li class="circle">java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Enum.html?is-external=true" title="class or interface in java.lang" class="externalLink"><span class="typeNameLink">Enum</span></a>&lt;E&gt; (implements java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Comparable.html?is-external=true" title="class or interface in java.lang" class="externalLink">Comparable</a>&lt;T&gt;, java.io.<a href="https://docs.oracle.com/javase/8/docs/api [...]
 <ul>
+<li class="circle">org.apache.datasketches.kll.<a href="KllSketch.SketchStructure.html" title="enum in org.apache.datasketches.kll"><span class="typeNameLink">KllSketch.SketchStructure</span></a></li>
 <li class="circle">org.apache.datasketches.kll.<a href="KllSketch.SketchType.html" title="enum in org.apache.datasketches.kll"><span class="typeNameLink">KllSketch.SketchType</span></a></li>
 </ul>
 </li>
diff --git a/docs/master/org/apache/datasketches/kll/package-use.html b/docs/master/org/apache/datasketches/kll/package-use.html
index 6640346b..7ea6d57c 100644
--- a/docs/master/org/apache/datasketches/kll/package-use.html
+++ b/docs/master/org/apache/datasketches/kll/package-use.html
@@ -151,11 +151,35 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 </td>
 </tr>
 <tr class="altColor">
+<th class="colFirst" scope="row"><a href="class-use/KllItemsSketch.html#org.apache.datasketches.kll">KllItemsSketch</a></th>
+<td class="colLast">
+<div class="block">This variation of the KllSketch implements generic data types.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<th class="colFirst" scope="row"><a href="class-use/KllItemsSketchSortedView.html#org.apache.datasketches.kll">KllItemsSketchSortedView</a></th>
+<td class="colLast">
+<div class="block">The SortedView of the KllItemsSketch.</div>
+</td>
+</tr>
+<tr class="altColor">
+<th class="colFirst" scope="row"><a href="class-use/KllItemsSketchSortedView.KllItemsSketchSortedViewIterator.html#org.apache.datasketches.kll">KllItemsSketchSortedView.KllItemsSketchSortedViewIterator</a></th>
+<td class="colLast">
+<div class="block">Iterator over KllItemsSketchSortedView.</div>
+</td>
+</tr>
+<tr class="rowColor">
 <th class="colFirst" scope="row"><a href="class-use/KllSketch.html#org.apache.datasketches.kll">KllSketch</a></th>
 <td class="colLast">
 <div class="block">This class is the root of the KLL sketch class hierarchy.</div>
 </td>
 </tr>
+<tr class="altColor">
+<th class="colFirst" scope="row"><a href="class-use/KllSketch.SketchStructure.html#org.apache.datasketches.kll">KllSketch.SketchStructure</a></th>
+<td class="colLast">
+<div class="block">Used primarily to define the structure of the serialized sketch.</div>
+</td>
+</tr>
 <tr class="rowColor">
 <th class="colFirst" scope="row"><a href="class-use/KllSketch.SketchType.html#org.apache.datasketches.kll">KllSketch.SketchType</a></th>
 <td class="colLast">
diff --git a/docs/master/org/apache/datasketches/quantiles/CompactDoublesSketch.html b/docs/master/org/apache/datasketches/quantiles/CompactDoublesSketch.html
index 9441b78a..5fdd7316 100644
--- a/docs/master/org/apache/datasketches/quantiles/CompactDoublesSketch.html
+++ b/docs/master/org/apache/datasketches/quantiles/CompactDoublesSketch.html
@@ -90,7 +90,7 @@ loadScripts(document, 'script');</script>
 <ul class="subNavList">
 <li>Summary:&nbsp;</li>
 <li><a href="#nested.class.summary">Nested</a>&nbsp;|&nbsp;</li>
-<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
 <li>Constr&nbsp;|&nbsp;</li>
 <li><a href="#method.summary">Method</a></li>
 </ul>
@@ -171,6 +171,23 @@ extends <a href="DoublesSketch.html" title="class in org.apache.datasketches.qua
 </li>
 </ul>
 </section>
+<!-- =========== FIELD SUMMARY =========== -->
+<section>
+<ul class="blockList">
+<li class="blockList"><a id="field.summary">
+<!--   -->
+</a>
+<h3>Field Summary</h3>
+<ul class="blockList">
+<li class="blockList"><a id="fields.inherited.from.class.org.apache.datasketches.quantilescommon.QuantilesAPI">
+<!--   -->
+</a>
+<h3>Fields inherited from interface&nbsp;org.apache.datasketches.quantilescommon.<a href="../quantilescommon/QuantilesAPI.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesAPI</a></h3>
+<code><a href="../quantilescommon/QuantilesAPI.html#EMPTY_MSG">EMPTY_MSG</a>, <a href="../quantilescommon/QuantilesAPI.html#MEM_REQ_SVR_NULL_MSG">MEM_REQ_SVR_NULL_MSG</a>, <a href="../quantilescommon/QuantilesAPI.html#NOT_SINGLE_ITEM_MSG">NOT_SINGLE_ITEM_MSG</a>, <a href="../quantilescommon/QuantilesAPI.html#TGT_IS_READ_ONLY_MSG">TGT_IS_READ_ONLY_MSG</a>, <a href="../quantilescommon/QuantilesAPI.html#UNSUPPORTED_MSG">UNSUPPORTED_MSG</a></code></li>
+</ul>
+</li>
+</ul>
+</section>
 <!-- ========== METHOD SUMMARY =========== -->
 <section>
 <ul class="blockList">
@@ -366,7 +383,7 @@ extends <a href="DoublesSketch.html" title="class in org.apache.datasketches.qua
 <ul class="subNavList">
 <li>Summary:&nbsp;</li>
 <li><a href="#nested.class.summary">Nested</a>&nbsp;|&nbsp;</li>
-<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
 <li>Constr&nbsp;|&nbsp;</li>
 <li><a href="#method.summary">Method</a></li>
 </ul>
diff --git a/docs/master/org/apache/datasketches/quantiles/DoublesSketch.html b/docs/master/org/apache/datasketches/quantiles/DoublesSketch.html
index a24ad517..035d88b4 100644
--- a/docs/master/org/apache/datasketches/quantiles/DoublesSketch.html
+++ b/docs/master/org/apache/datasketches/quantiles/DoublesSketch.html
@@ -90,7 +90,7 @@ loadScripts(document, 'script');</script>
 <ul class="subNavList">
 <li>Summary:&nbsp;</li>
 <li><a href="#nested.class.summary">Nested</a>&nbsp;|&nbsp;</li>
-<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
 <li>Constr&nbsp;|&nbsp;</li>
 <li><a href="#method.summary">Method</a></li>
 </ul>
@@ -221,6 +221,23 @@ Table Guide for DoublesSketch Size in Bytes and Approximate Error:
 </li>
 </ul>
 </section>
+<!-- =========== FIELD SUMMARY =========== -->
+<section>
+<ul class="blockList">
+<li class="blockList"><a id="field.summary">
+<!--   -->
+</a>
+<h3>Field Summary</h3>
+<ul class="blockList">
+<li class="blockList"><a id="fields.inherited.from.class.org.apache.datasketches.quantilescommon.QuantilesAPI">
+<!--   -->
+</a>
+<h3>Fields inherited from interface&nbsp;org.apache.datasketches.quantilescommon.<a href="../quantilescommon/QuantilesAPI.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesAPI</a></h3>
+<code><a href="../quantilescommon/QuantilesAPI.html#EMPTY_MSG">EMPTY_MSG</a>, <a href="../quantilescommon/QuantilesAPI.html#MEM_REQ_SVR_NULL_MSG">MEM_REQ_SVR_NULL_MSG</a>, <a href="../quantilescommon/QuantilesAPI.html#NOT_SINGLE_ITEM_MSG">NOT_SINGLE_ITEM_MSG</a>, <a href="../quantilescommon/QuantilesAPI.html#TGT_IS_READ_ONLY_MSG">TGT_IS_READ_ONLY_MSG</a>, <a href="../quantilescommon/QuantilesAPI.html#UNSUPPORTED_MSG">UNSUPPORTED_MSG</a></code></li>
+</ul>
+</li>
+</ul>
+</section>
 <!-- ========== METHOD SUMMARY =========== -->
 <section>
 <ul class="blockList">
@@ -1592,7 +1609,7 @@ Table Guide for DoublesSketch Size in Bytes and Approximate Error:
 <ul class="subNavList">
 <li>Summary:&nbsp;</li>
 <li><a href="#nested.class.summary">Nested</a>&nbsp;|&nbsp;</li>
-<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
 <li>Constr&nbsp;|&nbsp;</li>
 <li><a href="#method.summary">Method</a></li>
 </ul>
diff --git a/docs/master/org/apache/datasketches/quantiles/DoublesSketchIterator.html b/docs/master/org/apache/datasketches/quantiles/DoublesSketchIterator.html
index 71103832..1e894643 100644
--- a/docs/master/org/apache/datasketches/quantiles/DoublesSketchIterator.html
+++ b/docs/master/org/apache/datasketches/quantiles/DoublesSketchIterator.html
@@ -136,7 +136,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <dd><code><a href="../quantilescommon/QuantilesDoublesSketchIterator.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesDoublesSketchIterator</a></code>, <code><a href="../quantilescommon/QuantilesSketchIterator.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesSketchIterator</a></code></dd>
 </dl>
 <hr>
-<pre>public class <span class="typeNameLabel">DoublesSketchIterator</span>
+<pre>public final class <span class="typeNameLabel">DoublesSketchIterator</span>
 extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a>
 implements <a href="../quantilescommon/QuantilesDoublesSketchIterator.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesDoublesSketchIterator</a></pre>
 <div class="block">Iterator over DoublesSketch. The order is not defined.</div>
diff --git a/docs/master/org/apache/datasketches/quantiles/DoublesSketchSortedViewIterator.html b/docs/master/org/apache/datasketches/quantiles/DoublesSketchSortedViewIterator.html
index dfb0f227..e1a5b618 100644
--- a/docs/master/org/apache/datasketches/quantiles/DoublesSketchSortedViewIterator.html
+++ b/docs/master/org/apache/datasketches/quantiles/DoublesSketchSortedViewIterator.html
@@ -136,7 +136,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <dd><code><a href="../quantilescommon/DoublesSortedViewIterator.html" title="interface in org.apache.datasketches.quantilescommon">DoublesSortedViewIterator</a></code>, <code><a href="../quantilescommon/SortedViewIterator.html" title="interface in org.apache.datasketches.quantilescommon">SortedViewIterator</a></code></dd>
 </dl>
 <hr>
-<pre>public class <span class="typeNameLabel">DoublesSketchSortedViewIterator</span>
+<pre>public final class <span class="typeNameLabel">DoublesSketchSortedViewIterator</span>
 extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a>
 implements <a href="../quantilescommon/DoublesSortedViewIterator.html" title="interface in org.apache.datasketches.quantilescommon">DoublesSortedViewIterator</a></pre>
 <div class="block">Iterator over DoublesSketchSortedView.</div>
diff --git a/docs/master/org/apache/datasketches/quantiles/ItemsSketch.html b/docs/master/org/apache/datasketches/quantiles/ItemsSketch.html
index 922ef187..7d80d31f 100644
--- a/docs/master/org/apache/datasketches/quantiles/ItemsSketch.html
+++ b/docs/master/org/apache/datasketches/quantiles/ItemsSketch.html
@@ -206,6 +206,13 @@ implements <a href="../quantilescommon/QuantilesGenericAPI.html" title="interfac
 </td>
 </tr>
 </table>
+<ul class="blockList">
+<li class="blockList"><a id="fields.inherited.from.class.org.apache.datasketches.quantilescommon.QuantilesAPI">
+<!--   -->
+</a>
+<h3>Fields inherited from interface&nbsp;org.apache.datasketches.quantilescommon.<a href="../quantilescommon/QuantilesAPI.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesAPI</a></h3>
+<code><a href="../quantilescommon/QuantilesAPI.html#EMPTY_MSG">EMPTY_MSG</a>, <a href="../quantilescommon/QuantilesAPI.html#MEM_REQ_SVR_NULL_MSG">MEM_REQ_SVR_NULL_MSG</a>, <a href="../quantilescommon/QuantilesAPI.html#NOT_SINGLE_ITEM_MSG">NOT_SINGLE_ITEM_MSG</a>, <a href="../quantilescommon/QuantilesAPI.html#TGT_IS_READ_ONLY_MSG">TGT_IS_READ_ONLY_MSG</a>, <a href="../quantilescommon/QuantilesAPI.html#UNSUPPORTED_MSG">UNSUPPORTED_MSG</a></code></li>
+</ul>
 </li>
 </ul>
 </section>
@@ -642,7 +649,7 @@ implements <a href="../quantilescommon/QuantilesGenericAPI.html" title="interfac
 <dd><code>clazz</code> - the given class of T</dd>
 <dd><code>comparator</code> - to compare items</dd>
 <dt><span class="returnLabel">Returns:</span></dt>
-<dd>a GenericQuantileSketch</dd>
+<dd>an ItemSketch&lt;T&gt;.</dd>
 </dl>
 </li>
 </ul>
@@ -665,7 +672,7 @@ implements <a href="../quantilescommon/QuantilesGenericAPI.html" title="interfac
  Must be greater than 2 and less than 65536 and a power of 2.</dd>
 <dd><code>comparator</code> - to compare items</dd>
 <dt><span class="returnLabel">Returns:</span></dt>
-<dd>a GenericQuantileSketch</dd>
+<dd>an ItemSketch&lt;T&gt;.</dd>
 </dl>
 </li>
 </ul>
@@ -690,7 +697,7 @@ implements <a href="../quantilescommon/QuantilesGenericAPI.html" title="interfac
 <dd><code>comparator</code> - to compare items</dd>
 <dd><code>serDe</code> - an instance of ArrayOfItemsSerDe</dd>
 <dt><span class="returnLabel">Returns:</span></dt>
-<dd>a ItemsSketch on the Java heap.</dd>
+<dd>a ItemSketch&lt;T&gt; on the Java heap.</dd>
 </dl>
 </li>
 </ul>
diff --git a/docs/master/org/apache/datasketches/quantiles/ItemsSketchIterator.html b/docs/master/org/apache/datasketches/quantiles/ItemsSketchIterator.html
index c61a2c60..0da4fd0b 100644
--- a/docs/master/org/apache/datasketches/quantiles/ItemsSketchIterator.html
+++ b/docs/master/org/apache/datasketches/quantiles/ItemsSketchIterator.html
@@ -140,7 +140,7 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <dd><code><a href="../quantilescommon/QuantilesGenericSketchIterator.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesGenericSketchIterator</a>&lt;T&gt;</code>, <code><a href="../quantilescommon/QuantilesSketchIterator.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesSketchIterator</a></code></dd>
 </dl>
 <hr>
-<pre>public class <span class="typeNameLabel">ItemsSketchIterator&lt;T&gt;</span>
+<pre>public final class <span class="typeNameLabel">ItemsSketchIterator&lt;T&gt;</span>
 extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a>
 implements <a href="../quantilescommon/QuantilesGenericSketchIterator.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesGenericSketchIterator</a>&lt;T&gt;</pre>
 <div class="block">Iterator over ItemsSketch. The order is not defined.</div>
diff --git a/docs/master/org/apache/datasketches/quantiles/DoublesSketchIterator.html b/docs/master/org/apache/datasketches/quantiles/ItemsSketchSortedView.ItemsSketchSortedViewIterator.html
similarity index 57%
copy from docs/master/org/apache/datasketches/quantiles/DoublesSketchIterator.html
copy to docs/master/org/apache/datasketches/quantiles/ItemsSketchSortedView.ItemsSketchSortedViewIterator.html
index 71103832..42a31c92 100644
--- a/docs/master/org/apache/datasketches/quantiles/DoublesSketchIterator.html
+++ b/docs/master/org/apache/datasketches/quantiles/ItemsSketchSortedView.ItemsSketchSortedViewIterator.html
@@ -3,7 +3,7 @@
 <html lang="en">
 <head>
 <!-- Generated by javadoc -->
-<title>DoublesSketchIterator (datasketches-java 4.2.0-SNAPSHOT API)</title>
+<title>ItemsSketchSortedView.ItemsSketchSortedViewIterator (datasketches-java 4.2.0-SNAPSHOT API)</title>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
 <link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
 <link rel="stylesheet" type="text/css" href="../../../../jquery/jquery-ui.min.css" title="Style">
@@ -21,18 +21,12 @@
 <script type="text/javascript"><!--
     try {
         if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="DoublesSketchIterator (datasketches-java 4.2.0-SNAPSHOT API)";
+            parent.document.title="ItemsSketchSortedView.ItemsSketchSortedViewIterator (datasketches-java 4.2.0-SNAPSHOT API)";
         }
     }
     catch(err) {
     }
 //-->
-var data = {"i0":10,"i1":10,"i2":10};
-var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
-var altColor = "altColor";
-var rowColor = "rowColor";
-var tableTab = "tableTab";
-var activeTableTab = "activeTableTab";
 var pathtoroot = "../../../../";
 var useModuleDirectories = true;
 loadScripts(document, 'script');</script>
@@ -54,7 +48,7 @@ loadScripts(document, 'script');</script>
 <li><a href="../../../../index.html">Overview</a></li>
 <li><a href="package-summary.html">Package</a></li>
 <li class="navBarCell1Rev">Class</li>
-<li><a href="class-use/DoublesSketchIterator.html">Use</a></li>
+<li><a href="class-use/ItemsSketchSortedView.ItemsSketchSortedViewIterator.html">Use</a></li>
 <li><a href="package-tree.html">Tree</a></li>
 <li><a href="../../../../deprecated-list.html">Deprecated</a></li>
 <li><a href="../../../../index-all.html">Index</a></li>
@@ -98,7 +92,7 @@ loadScripts(document, 'script');</script>
 <li>Detail:&nbsp;</li>
 <li>Field&nbsp;|&nbsp;</li>
 <li>Constr&nbsp;|&nbsp;</li>
-<li><a href="#method.detail">Method</a></li>
+<li>Method</li>
 </ul>
 </div>
 <a id="skip.navbar.top">
@@ -117,14 +111,19 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <main role="main">
 <div class="header">
 <div class="subTitle"><span class="packageLabelInType">Package</span>&nbsp;<a href="package-summary.html">org.apache.datasketches.quantiles</a></div>
-<h2 title="Class DoublesSketchIterator" class="title">Class DoublesSketchIterator</h2>
+<h2 title="Class ItemsSketchSortedView.ItemsSketchSortedViewIterator" class="title">Class ItemsSketchSortedView.ItemsSketchSortedViewIterator&lt;T&gt;</h2>
 </div>
 <div class="contentContainer">
 <ul class="inheritance">
 <li><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">java.lang.Object</a></li>
 <li>
 <ul class="inheritance">
-<li>org.apache.datasketches.quantiles.DoublesSketchIterator</li>
+<li><a href="../quantilescommon/GenericSortedViewIterator.html" title="class in org.apache.datasketches.quantilescommon">org.apache.datasketches.quantilescommon.GenericSortedViewIterator</a>&lt;T&gt;</li>
+<li>
+<ul class="inheritance">
+<li>org.apache.datasketches.quantiles.ItemsSketchSortedView.ItemsSketchSortedViewIterator&lt;T&gt;</li>
+</ul>
+</li>
 </ul>
 </li>
 </ul>
@@ -132,14 +131,21 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
 <ul class="blockList">
 <li class="blockList">
 <dl>
+<dt><span class="paramLabel">Type Parameters:</span></dt>
+<dd><code>T</code> - type of quantile (item)</dd>
+</dl>
+<dl>
 <dt>All Implemented Interfaces:</dt>
-<dd><code><a href="../quantilescommon/QuantilesDoublesSketchIterator.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesDoublesSketchIterator</a></code>, <code><a href="../quantilescommon/QuantilesSketchIterator.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesSketchIterator</a></code></dd>
+<dd><code><a href="../quantilescommon/SortedViewIterator.html" title="interface in org.apache.datasketches.quantilescommon">SortedViewIterator</a></code></dd>
+</dl>
+<dl>
+<dt>Enclosing class:</dt>
+<dd><a href="ItemsSketchSortedView.html" title="class in org.apache.datasketches.quantiles">ItemsSketchSortedView</a>&lt;<a href="ItemsSketchSortedView.html" title="type parameter in ItemsSketchSortedView">T</a>&gt;</dd>
 </dl>
 <hr>
-<pre>public class <span class="typeNameLabel">DoublesSketchIterator</span>
-extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a>
-implements <a href="../quantilescommon/QuantilesDoublesSketchIterator.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesDoublesSketchIterator</a></pre>
-<div class="block">Iterator over DoublesSketch. The order is not defined.</div>
+<pre>public static final class <span class="typeNameLabel">ItemsSketchSortedView.ItemsSketchSortedViewIterator&lt;T&gt;</span>
+extends <a href="../quantilescommon/GenericSortedViewIterator.html" title="class in org.apache.datasketches.quantilescommon">GenericSortedViewIterator</a>&lt;T&gt;</pre>
+<div class="block">Iterator over ItemsSketchSortedView.</div>
 </li>
 </ul>
 </div>
@@ -153,115 +159,19 @@ implements <a href="../quantilescommon/QuantilesDoublesSketchIterator.html" titl
 <!--   -->
 </a>
 <h3>Method Summary</h3>
-<table class="memberSummary">
-<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
-<tr>
-<th class="colFirst" scope="col">Modifier and Type</th>
-<th class="colSecond" scope="col">Method</th>
-<th class="colLast" scope="col">Description</th>
-</tr>
-<tr id="i0" class="altColor">
-<td class="colFirst"><code>double</code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getQuantile()">getQuantile</a></span>()</code></th>
-<td class="colLast">
-<div class="block">Gets the double quantile at the current index.</div>
-</td>
-</tr>
-<tr id="i1" class="rowColor">
-<td class="colFirst"><code>long</code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getWeight()">getWeight</a></span>()</code></th>
-<td class="colLast">
-<div class="block">Gets the natural weight at the current index.</div>
-</td>
-</tr>
-<tr id="i2" class="altColor">
-<td class="colFirst"><code>boolean</code></td>
-<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#next()">next</a></span>()</code></th>
-<td class="colLast">
-<div class="block">Advances the index and checks if it is valid.</div>
-</td>
-</tr>
-</table>
 <ul class="blockList">
-<li class="blockList"><a id="methods.inherited.from.class.java.lang.Object">
+<li class="blockList"><a id="methods.inherited.from.class.org.apache.datasketches.quantilescommon.GenericSortedViewIterator">
 <!--   -->
 </a>
-<h3>Methods inherited from class&nbsp;java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a></h3>
-<code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#clone()" title="class or interface in java.lang" class="externalLink">clone</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#equals(java.lang.Object)" title="class or interface in java.lang" class="externalLink">equals</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#finalize()" title="class or interfac [...]
+<h3>Methods inherited from class&nbsp;org.apache.datasketches.quantilescommon.<a href="../quantilescommon/GenericSortedViewIterator.html" title="class in org.apache.datasketches.quantilescommon">GenericSortedViewIterator</a></h3>
+<code><a href="../quantilescommon/GenericSortedViewIterator.html#getCumulativeWeight(org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">getCumulativeWeight</a>, <a href="../quantilescommon/GenericSortedViewIterator.html#getN()">getN</a>, <a href="../quantilescommon/GenericSortedViewIterator.html#getNormalizedRank(org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">getNormalizedRank</a>, <a href="../quantilescommon/GenericSortedViewIterator.html#getQuantile()">g [...]
 </ul>
-</li>
-</ul>
-</section>
-</li>
-</ul>
-</div>
-<div class="details">
 <ul class="blockList">
-<li class="blockList">
-<!-- ============ METHOD DETAIL ========== -->
-<section>
-<ul class="blockList">
-<li class="blockList"><a id="method.detail">
-<!--   -->
-</a>
-<h3>Method Detail</h3>
-<a id="getQuantile()">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>getQuantile</h4>
-<pre class="methodSignature">public&nbsp;double&nbsp;getQuantile()</pre>
-<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../quantilescommon/QuantilesDoublesSketchIterator.html#getQuantile()">QuantilesDoublesSketchIterator</a></code></span></div>
-<div class="block">Gets the double quantile at the current index.
-
- <p>Don't call this before calling next() for the first time
- or after getting false from next().</p></div>
-<dl>
-<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
-<dd><code><a href="../quantilescommon/QuantilesDoublesSketchIterator.html#getQuantile()">getQuantile</a></code>&nbsp;in interface&nbsp;<code><a href="../quantilescommon/QuantilesDoublesSketchIterator.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesDoublesSketchIterator</a></code></dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>the double quantile at the current index.</dd>
-</dl>
-</li>
-</ul>
-<a id="getWeight()">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>getWeight</h4>
-<pre class="methodSignature">public&nbsp;long&nbsp;getWeight()</pre>
-<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../quantilescommon/QuantilesSketchIterator.html#getWeight()">QuantilesSketchIterator</a></code></span></div>
-<div class="block">Gets the natural weight at the current index.
-
- <p>Don't call this before calling next() for the first time
- or after getting false from next().</p></div>
-<dl>
-<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
-<dd><code><a href="../quantilescommon/QuantilesSketchIterator.html#getWeight()">getWeight</a></code>&nbsp;in interface&nbsp;<code><a href="../quantilescommon/QuantilesSketchIterator.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesSketchIterator</a></code></dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>the natural weight at the current index.</dd>
-</dl>
-</li>
-</ul>
-<a id="next()">
+<li class="blockList"><a id="methods.inherited.from.class.java.lang.Object">
 <!--   -->
 </a>
-<ul class="blockListLast">
-<li class="blockList">
-<h4>next</h4>
-<pre class="methodSignature">public&nbsp;boolean&nbsp;next()</pre>
-<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../quantilescommon/QuantilesSketchIterator.html#next()">QuantilesSketchIterator</a></code></span></div>
-<div class="block">Advances the index and checks if it is valid.
- The state of this iterator is undefined before the first call of this method.</div>
-<dl>
-<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
-<dd><code><a href="../quantilescommon/QuantilesSketchIterator.html#next()">next</a></code>&nbsp;in interface&nbsp;<code><a href="../quantilescommon/QuantilesSketchIterator.html" title="interface in org.apache.datasketches.quantilescommon">QuantilesSketchIterator</a></code></dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>true if the next index is valid.</dd>
-</dl>
-</li>
+<h3>Methods inherited from class&nbsp;java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a></h3>
+<code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#clone()" title="class or interface in java.lang" class="externalLink">clone</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#equals(java.lang.Object)" title="class or interface in java.lang" class="externalLink">equals</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#finalize()" title="class or interfac [...]
 </ul>
 </li>
 </ul>
@@ -286,7 +196,7 @@ implements <a href="../quantilescommon/QuantilesDoublesSketchIterator.html" titl
 <li><a href="../../../../index.html">Overview</a></li>
 <li><a href="package-summary.html">Package</a></li>
 <li class="navBarCell1Rev">Class</li>
-<li><a href="class-use/DoublesSketchIterator.html">Use</a></li>
+<li><a href="class-use/ItemsSketchSortedView.ItemsSketchSortedViewIterator.html">Use</a></li>
 <li><a href="package-tree.html">Tree</a></li>
 <li><a href="../../../../deprecated-list.html">Deprecated</a></li>
 <li><a href="../../../../index-all.html">Index</a></li>
@@ -324,7 +234,7 @@ implements <a href="../quantilescommon/QuantilesDoublesSketchIterator.html" titl
 <li>Detail:&nbsp;</li>
 <li>Field&nbsp;|&nbsp;</li>
 <li>Constr&nbsp;|&nbsp;</li>
-<li><a href="#method.detail">Method</a></li>
+<li>Method</li>
 </ul>
 </div>
 <a id="skip.navbar.bottom">
diff --git a/docs/master/org/apache/datasketches/quantiles/ItemsSketchSortedView.html b/docs/master/org/apache/datasketches/quantiles/ItemsSketchSortedView.html
index 20223e43..faacb3c8 100644
--- a/docs/master/org/apache/datasketches/quantiles/ItemsSketchSortedView.html
+++ b/docs/master/org/apache/datasketches/quantiles/ItemsSketchSortedView.html
@@ -89,7 +89,7 @@ loadScripts(document, 'script');</script>
 <div>
 <ul class="subNavList">
 <li>Summary:&nbsp;</li>
-<li>Nested&nbsp;|&nbsp;</li>
+<li><a href="#nested.class.summary">Nested</a>&nbsp;|&nbsp;</li>
 <li>Field&nbsp;|&nbsp;</li>
 <li>Constr&nbsp;|&nbsp;</li>
 <li><a href="#method.summary">Method</a></li>
@@ -154,6 +154,31 @@ implements <a href="../quantilescommon/GenericSortedView.html" title="interface
 <div class="summary">
 <ul class="blockList">
 <li class="blockList">
+<!-- ======== NESTED CLASS SUMMARY ======== -->
+<section>
+<ul class="blockList">
+<li class="blockList"><a id="nested.class.summary">
+<!--   -->
+</a>
+<h3>Nested Class Summary</h3>
+<table class="memberSummary">
+<caption><span>Nested Classes</span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colSecond" scope="col">Class</th>
+<th class="colLast" scope="col">Description</th>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static class&nbsp;</code></td>
+<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="ItemsSketchSortedView.ItemsSketchSortedViewIterator.html" title="class in org.apache.datasketches.quantiles">ItemsSketchSortedView.ItemsSketchSortedViewIterator</a>&lt;<a href="ItemsSketchSortedView.ItemsSketchSortedViewIterator.html" title="type parameter in ItemsSketchSortedView.ItemsSketchSortedViewIterator">T</a>&gt;</span></code></th>
+<td class="colLast">
+<div class="block">Iterator over ItemsSketchSortedView.</div>
+</td>
+</tr>
+</table>
+</li>
+</ul>
+</section>
 <!-- ========== METHOD SUMMARY =========== -->
 <section>
 <ul class="blockList">
@@ -226,7 +251,7 @@ implements <a href="../quantilescommon/GenericSortedView.html" title="interface
 </td>
 </tr>
 <tr id="i7" class="rowColor">
-<td class="colFirst"><code><a href="ItemsSketchSortedViewIterator.html" title="class in org.apache.datasketches.quantiles">ItemsSketchSortedViewIterator</a>&lt;<a href="ItemsSketchSortedView.html" title="type parameter in ItemsSketchSortedView">T</a>&gt;</code></td>
+<td class="colFirst"><code><a href="ItemsSketchSortedView.ItemsSketchSortedViewIterator.html" title="class in org.apache.datasketches.quantiles">ItemsSketchSortedView.ItemsSketchSortedViewIterator</a>&lt;<a href="ItemsSketchSortedView.html" title="type parameter in ItemsSketchSortedView">T</a>&gt;</code></td>
 <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#iterator()">iterator</a></span>()</code></th>
 <td class="colLast">
 <div class="block">Returns an iterator for this Sorted View.</div>
@@ -256,57 +281,6 @@ implements <a href="../quantilescommon/GenericSortedView.html" title="interface
 <!--   -->
 </a>
 <h3>Method Detail</h3>
-<a id="getQuantile(double,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>getQuantile</h4>
-<pre class="methodSignature">public&nbsp;<a href="ItemsSketchSortedView.html" title="type parameter in ItemsSketchSortedView">T</a>&nbsp;getQuantile&#8203;(double&nbsp;rank,
-                     <a href="../quantilescommon/QuantileSearchCriteria.html" title="enum in org.apache.datasketches.quantilescommon">QuantileSearchCriteria</a>&nbsp;searchCrit)</pre>
-<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../quantilescommon/GenericSortedView.html#getQuantile(double,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">GenericSortedView</a></code></span></div>
-<div class="block">Gets the approximate quantile of the given normalized rank and the given search criterion.</div>
-<dl>
-<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
-<dd><code><a href="../quantilescommon/GenericSortedView.html#getQuantile(double,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">getQuantile</a></code>&nbsp;in interface&nbsp;<code><a href="../quantilescommon/GenericSortedView.html" title="interface in org.apache.datasketches.quantilescommon">GenericSortedView</a>&lt;<a href="ItemsSketchSortedView.html" title="type parameter in ItemsSketchSortedView">T</a>&gt;</code></dd>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>rank</code> - the given normalized rank, a double in the range [0.0, 1.0].</dd>
-<dd><code>searchCrit</code> - If INCLUSIVE, the given rank includes all quantiles &le;
- the quantile directly corresponding to the given rank.
- If EXCLUSIVE, he given rank includes all quantiles &lt;
- the quantile directly corresponding to the given rank.</dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>the approximate quantile given the normalized rank.</dd>
-<dt><span class="seeLabel">See Also:</span></dt>
-<dd><a href="../quantilescommon/QuantileSearchCriteria.html" title="enum in org.apache.datasketches.quantilescommon"><code>QuantileSearchCriteria</code></a></dd>
-</dl>
-</li>
-</ul>
-<a id="getRank(java.lang.Object,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">
-<!--   -->
-</a><a id="getRank(T,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">
-<!--   -->
-</a>
-<ul class="blockList">
-<li class="blockList">
-<h4>getRank</h4>
-<pre class="methodSignature">public&nbsp;double&nbsp;getRank&#8203;(<a href="ItemsSketchSortedView.html" title="type parameter in ItemsSketchSortedView">T</a>&nbsp;quantile,
-                      <a href="../quantilescommon/QuantileSearchCriteria.html" title="enum in org.apache.datasketches.quantilescommon">QuantileSearchCriteria</a>&nbsp;searchCrit)</pre>
-<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../quantilescommon/GenericSortedView.html#getRank(T,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">GenericSortedView</a></code></span></div>
-<div class="block">Gets the normalized rank corresponding to the given a quantile.</div>
-<dl>
-<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
-<dd><code><a href="../quantilescommon/GenericSortedView.html#getRank(T,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">getRank</a></code>&nbsp;in interface&nbsp;<code><a href="../quantilescommon/GenericSortedView.html" title="interface in org.apache.datasketches.quantilescommon">GenericSortedView</a>&lt;<a href="ItemsSketchSortedView.html" title="type parameter in ItemsSketchSortedView">T</a>&gt;</code></dd>
-<dt><span class="paramLabel">Parameters:</span></dt>
-<dd><code>quantile</code> - the given quantile</dd>
-<dd><code>searchCrit</code> - if INCLUSIVE the given quantile is included into the rank.</dd>
-<dt><span class="returnLabel">Returns:</span></dt>
-<dd>the normalized rank corresponding to the given quantile.</dd>
-<dt><span class="seeLabel">See Also:</span></dt>
-<dd><a href="../quantilescommon/QuantileSearchCriteria.html" title="enum in org.apache.datasketches.quantilescommon"><code>QuantileSearchCriteria</code></a></dd>
-</dl>
-</li>
-</ul>
 <a id="getCDF(java.lang.Object[],org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">
 <!--   -->
 </a><a id="getCDF(T[],org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">
@@ -356,6 +330,23 @@ implements <a href="../quantilescommon/GenericSortedView.html" title="interface
 </dl>
 </li>
 </ul>
+<a id="getCumulativeWeights()">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getCumulativeWeights</h4>
+<pre class="methodSignature">public&nbsp;long[]&nbsp;getCumulativeWeights()</pre>
+<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../quantilescommon/SortedView.html#getCumulativeWeights()">SortedView</a></code></span></div>
+<div class="block">Returns the array of cumulative weights</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="../quantilescommon/SortedView.html#getCumulativeWeights()">getCumulativeWeights</a></code>&nbsp;in interface&nbsp;<code><a href="../quantilescommon/SortedView.html" title="interface in org.apache.datasketches.quantilescommon">SortedView</a></code></dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the array of cumulative weights</dd>
+</dl>
+</li>
+</ul>
 <a id="getPMF(java.lang.Object[],org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">
 <!--   -->
 </a><a id="getPMF(T[],org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">
@@ -410,20 +401,29 @@ implements <a href="../quantilescommon/GenericSortedView.html" title="interface
 </dl>
 </li>
 </ul>
-<a id="getCumulativeWeights()">
+<a id="getQuantile(double,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">
 <!--   -->
 </a>
 <ul class="blockList">
 <li class="blockList">
-<h4>getCumulativeWeights</h4>
-<pre class="methodSignature">public&nbsp;long[]&nbsp;getCumulativeWeights()</pre>
-<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../quantilescommon/SortedView.html#getCumulativeWeights()">SortedView</a></code></span></div>
-<div class="block">Returns the array of cumulative weights</div>
+<h4>getQuantile</h4>
+<pre class="methodSignature">public&nbsp;<a href="ItemsSketchSortedView.html" title="type parameter in ItemsSketchSortedView">T</a>&nbsp;getQuantile&#8203;(double&nbsp;rank,
+                     <a href="../quantilescommon/QuantileSearchCriteria.html" title="enum in org.apache.datasketches.quantilescommon">QuantileSearchCriteria</a>&nbsp;searchCrit)</pre>
+<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../quantilescommon/GenericSortedView.html#getQuantile(double,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">GenericSortedView</a></code></span></div>
+<div class="block">Gets the approximate quantile of the given normalized rank and the given search criterion.</div>
 <dl>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
-<dd><code><a href="../quantilescommon/SortedView.html#getCumulativeWeights()">getCumulativeWeights</a></code>&nbsp;in interface&nbsp;<code><a href="../quantilescommon/SortedView.html" title="interface in org.apache.datasketches.quantilescommon">SortedView</a></code></dd>
+<dd><code><a href="../quantilescommon/GenericSortedView.html#getQuantile(double,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">getQuantile</a></code>&nbsp;in interface&nbsp;<code><a href="../quantilescommon/GenericSortedView.html" title="interface in org.apache.datasketches.quantilescommon">GenericSortedView</a>&lt;<a href="ItemsSketchSortedView.html" title="type parameter in ItemsSketchSortedView">T</a>&gt;</code></dd>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>rank</code> - the given normalized rank, a double in the range [0.0, 1.0].</dd>
+<dd><code>searchCrit</code> - If INCLUSIVE, the given rank includes all quantiles &le;
+ the quantile directly corresponding to the given rank.
+ If EXCLUSIVE, he given rank includes all quantiles &lt;
+ the quantile directly corresponding to the given rank.</dd>
 <dt><span class="returnLabel">Returns:</span></dt>
-<dd>the array of cumulative weights</dd>
+<dd>the approximate quantile given the normalized rank.</dd>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../quantilescommon/QuantileSearchCriteria.html" title="enum in org.apache.datasketches.quantilescommon"><code>QuantileSearchCriteria</code></a></dd>
 </dl>
 </li>
 </ul>
@@ -444,6 +444,31 @@ implements <a href="../quantilescommon/GenericSortedView.html" title="interface
 </dl>
 </li>
 </ul>
+<a id="getRank(java.lang.Object,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">
+<!--   -->
+</a><a id="getRank(T,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getRank</h4>
+<pre class="methodSignature">public&nbsp;double&nbsp;getRank&#8203;(<a href="ItemsSketchSortedView.html" title="type parameter in ItemsSketchSortedView">T</a>&nbsp;quantile,
+                      <a href="../quantilescommon/QuantileSearchCriteria.html" title="enum in org.apache.datasketches.quantilescommon">QuantileSearchCriteria</a>&nbsp;searchCrit)</pre>
+<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../quantilescommon/GenericSortedView.html#getRank(T,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">GenericSortedView</a></code></span></div>
+<div class="block">Gets the normalized rank corresponding to the given a quantile.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="../quantilescommon/GenericSortedView.html#getRank(T,org.apache.datasketches.quantilescommon.QuantileSearchCriteria)">getRank</a></code>&nbsp;in interface&nbsp;<code><a href="../quantilescommon/GenericSortedView.html" title="interface in org.apache.datasketches.quantilescommon">GenericSortedView</a>&lt;<a href="ItemsSketchSortedView.html" title="type parameter in ItemsSketchSortedView">T</a>&gt;</code></dd>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>quantile</code> - the given quantile</dd>
+<dd><code>searchCrit</code> - if INCLUSIVE the given quantile is included into the rank.</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the normalized rank corresponding to the given quantile.</dd>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../quantilescommon/QuantileSearchCriteria.html" title="enum in org.apache.datasketches.quantilescommon"><code>QuantileSearchCriteria</code></a></dd>
+</dl>
+</li>
+</ul>
 <a id="isEmpty()">
 <!--   -->
 </a>
@@ -467,7 +492,7 @@ implements <a href="../quantilescommon/GenericSortedView.html" title="interface
 <ul class="blockListLast">
 <li class="blockList">
 <h4>iterator</h4>
-<pre class="methodSignature">public&nbsp;<a href="ItemsSketchSortedViewIterator.html" title="class in org.apache.datasketches.quantiles">ItemsSketchSortedViewIterator</a>&lt;<a href="ItemsSketchSortedView.html" title="type parameter in ItemsSketchSortedView">T</a>&gt;&nbsp;iterator()</pre>
+<pre class="methodSignature">public&nbsp;<a href="ItemsSketchSortedView.ItemsSketchSortedViewIterator.html" title="class in org.apache.datasketches.quantiles">ItemsSketchSortedView.ItemsSketchSortedViewIterator</a>&lt;<a href="ItemsSketchSortedView.html" title="type parameter in ItemsSketchSortedView">T</a>&gt;&nbsp;iterator()</pre>
 <div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../quantilescommon/SortedView.html#iterator()">SortedView</a></code></span></div>
 <div class="block">Returns an iterator for this Sorted View.</div>
 <dl>
@@ -532,7 +557,7 @@ implements <a href="../quantilescommon/GenericSortedView.html" title="interface
 <div>
 <ul class="subNavList">
 <li>Summary:&nbsp;</li>
-<li>Nested&nbsp;|&nbsp;</li>
+<li><a href="#nested.class.summary">Nested</a>&nbsp;|&nbsp;</li>
 <li>Field&nbsp;|&nbsp;</li>
 <li>Constr&nbsp;|&nbsp;</li>
 <li><a href="#method.summary">Method</a></li>
diff --git a/docs/master/org/apache/datasketches/quantiles/ItemsSketchSortedViewIterator.html b/docs/master/org/apache/datasketches/quantiles/ItemsSketchSortedViewIterator.html
deleted file mode 100644
index d0c75b2a..00000000
--- a/docs/master/org/apache/datasketches/quantiles/ItemsSketchSortedViewIterator.html
+++ /dev/null
@@ -1,430 +0,0 @@
-<!DOCTYPE HTML>
-<!-- NewPage -->
-<html lang="en">
-<head>
-<!-- Generated by javadoc -->
-<title>ItemsSketchSortedViewIterator (datasketches-java 4.2.0-SNAPSHOT API)</title>
-<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
-<link rel="stylesheet" type="text/css" href="../../../../jquery/jquery-ui.min.css" title="Style">
-<link rel="stylesheet" type="text/css" href="../../../../jquery-ui.overrides.css" title="Style">
-<script type="text/javascript" src="../../../../script.js"></script>
-<script type="text/javascript" src="../../../../jquery/jszip/dist/jszip.min.js"></script>
-<script type="text/javascript" src="../../../../jquery/jszip-utils/dist/jszip-utils.min.js"></script>
-<!--[if IE]>
-<script type="text/javascript" src="../../../../jquery/jszip-utils/dist/jszip-utils-ie.min.js"></script>
-<![endif]-->
-<script type="text/javascript" src="../../../../jquery/jquery-3.6.1.min.js"></script>
-<script type="text/javascript" src="../../../../jquery/jquery-ui.min.js"></script>
-</head>
-<body>
-<script type="text/javascript"><!--
-    try {
-        if (location.href.indexOf('is-external=true') == -1) {
-            parent.document.title="ItemsSketchSortedViewIterator (datasketches-java 4.2.0-SNAPSHOT API)";
-        }
-    }
-    catch(err) {
-    }
-//-->
-var data = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10};
-var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
-var altColor = "altColor";
-var rowColor = "rowColor";
-var tableTab = "tableTab";
-var activeTableTab = "activeTableTab";
-var pathtoroot = "../../../../";
-var useModuleDirectories = true;
-loadScripts(document, 'script');</script>
-<noscript>
-<div>JavaScript is disabled on your browser.</div>
-</noscript>
-<header role="banner">
-<nav role="navigation">
-<div class="fixedNav">
-<!-- ========= START OF TOP NAVBAR ======= -->
-<div class="topNav"><a id="navbar.top">
-<!--   -->
-</a>
-<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
-<a id="navbar.top.firstrow">
-<!--   -->
-</a>
-<ul class="navList" title="Navigation">
-<li><a href="../../../../index.html">Overview</a></li>
-<li><a href="package-summary.html">Package</a></li>
-<li class="navBarCell1Rev">Class</li>
-<li><a href="class-use/ItemsSketchSortedViewIterator.html">Use</a></li>
-<li><a href="package-tree.html">Tree</a></li>
-<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
-<li><a href="../../../../index-all.html">Index</a></li>
-<li><a href="../../../../help-doc.html">Help</a></li>
-</ul>
-</div>
-<div class="subNav">
-<ul class="navList" id="allclasses_navbar_top">
-<li><a href="../../../../allclasses.html">All&nbsp;Classes</a></li>
-</ul>
-<ul class="navListSearch">
-<li><label for="search">SEARCH:</label>
-<input type="text" id="search" value="search" disabled="disabled">
-<input type="reset" id="reset" value="reset" disabled="disabled">
-</li>
-</ul>
-<div>
-<script type="text/javascript"><!--
-  allClassesLink = document.getElementById("allclasses_navbar_top");
-  if(window==top) {
-    allClassesLink.style.display = "block";
-  }
-  else {
-    allClassesLink.style.display = "none";
-  }
-  //-->
-</script>
-<noscript>
-<div>JavaScript is disabled on your browser.</div>
-</noscript>
-</div>
-<div>
-<ul class="subNavList">
-<li>Summary:&nbsp;</li>
-<li>Nested&nbsp;|&nbsp;</li>
-<li>Field&nbsp;|&nbsp;</li>
-<li>Constr&nbsp;|&nbsp;</li>
-<li><a href="#method.summary">Method</a></li>
-</ul>
-<ul class="subNavList">
-<li>Detail:&nbsp;</li>
-<li>Field&nbsp;|&nbsp;</li>
-<li>Constr&nbsp;|&nbsp;</li>
-<li><a href="#method.detail">Method</a></li>
-</ul>
-</div>
-<a id="skip.navbar.top">
-<!--   -->
-</a></div>
-<!-- ========= END OF TOP NAVBAR ========= -->
-</div>
-<div class="navPadding">&nbsp;</div>
-<script type="text/javascript"><!--
-$('.navPadding').css('padding-top', $('.fixedNav').css("height"));
-//-->
-</script>
-</nav>
-</header>
-<!-- ======== START OF CLASS DATA ======== -->
-<main role="main">
-<div class="header">
-<div class="subTitle"><span class="packageLabelInType">Package</span>&nbsp;<a href="package-summary.html">org.apache.datasketches.quantiles</a></div>
-<h2 title="Class ItemsSketchSortedViewIterator" class="title">Class ItemsSketchSortedViewIterator&lt;T&gt;</h2>
-</div>
-<div class="contentContainer">
-<ul class="inheritance">
-<li><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">java.lang.Object</a></li>
-<li>
-<ul class="inheritance">
-<li>org.apache.datasketches.quantiles.ItemsSketchSortedViewIterator&lt;T&gt;</li>
-</ul>
-</li>
-</ul>
-<div class="description">
-<ul class="blockList">
-<li class="blockList">
-<dl>
-<dt><span class="paramLabel">Type Parameters:</span></dt>
-<dd><code>T</code> - type of item</dd>
-</dl>
-<dl>
-<dt>All Implemented Interfaces:</dt>
-<dd><code><a href="../quantilescommon/GenericSortedViewIterator.html" title="interface in org.apache.datasketches.quantilescommon">GenericSortedViewIterator</a>&lt;T&gt;</code>, <code><a href="../quantilescommon/SortedViewIterator.html" title="interface in org.apache.datasketches.quantilescommon">SortedViewIterator</a></code></dd>
-</dl>
-<hr>
-<pre>public class <span class="typeNameLabel">ItemsSketchSortedViewIterator&lt;T&gt;</span>
-extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a>
-implements <a href="../quantilescommon/GenericSortedViewIterator.html" title="interface in org.apache.datasketches.quantilescommon">GenericSortedViewIterator</a>&lt;T&gt;</pre>
-<div class="block">Iterator over ItemsSketchSortedView.</div>
-</li>
-</ul>
-</div>
-<div class="summary">
-<ul class="blockList">
-<li class="blockList">
-<!-- ========== METHOD SUMMARY =========== -->
-<section>
-<ul class="blockList">
-<li class="blockList"><a id="method.summary">
-<!--   -->
-</a>
... 2867 lines suppressed ...


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@datasketches.apache.org
For additional commands, e-mail: commits-help@datasketches.apache.org