code: func (c *C2) Evicted() []byte {
  	if c.totalWritten <= c.blocksize {
  		return nil
  	}
  
  	bufferToRead := c.a
  	if c.b.head < c.a.head {
  		bufferToRead = c.b
  	}
  
  	bufferStart := bufferToRead.head + c.blocksize
  	readLength := c.lastWritten
  
  	// if the buffer wasn't full, we don't read the full length
  	if c.totalWritten-c.lastWritten < c.blocksize {
  		readLength -= c.lastWritten - c.totalWritten + c.blocksize
  	}
  
  	return bufferToRead.buffer[bufferStart-readLength : bufferStart]
  }
docs: // get the data that was evicted by the last write