Just curious ... doesn't duplicate copy the buffer?  It's an unmodifiable buffer, so my thinking was that  slice would be sufficient since each slice will get its own reader index.