With Araq's exponential growth idea keeping the lists very short (like 16..48 at most, at 8 bytes an entry or maybe 1..2 cache lines typically and no more than 6 cache lines), I should perhaps have said that, it might be faster to even do a linear search up to 8..16 entries instead of `lowerBound`. I mean, `[]` as done in code like mine above/maybe with that spruce up, is honestly probably not that much slower than a hash lookup in an integer keyed table. Not a `[](seq)`, but also not so bad. So, you could look at my version as an optimization of the unrolled linked list to "just fully unrolled" which should be fine with the very short lists in this situation. Providing a slow `[]` just seems not a long-term wise plan which is why I couched my suggestion in terms of following up on Araq's own point 4.