adding buffering to MemreadEngineV