public void decodeInts(int valCount, long outputAddr) {
        long dataAddr = dataAddr();
        long dictEntriesAddr = dictEntriesAddr();
        for (int i = 0; i < valCount; i++) {
            int vid = getInt(dataAddr + (i << 2));
            int v = getInt(dictEntriesAddr + (vid << 2));
            setInt(outputAddr + (i << 2), v);
        }
    }
A class help explain the structure of dict encoding.
<pre>
| entryCount |   dict   |  dataSize |  data(encoded ids) |
     4         dictSize       4           dataSize
</pre>
indexr-common/src/main/java/io/indexr/data/DictStruct.java