Dynamic multi buffering + buffer segment + better errors