reuse buffers if possible.