implements BufferMap