code: func (f *fragment) bulkImportStandard(rowIDs, columnIDs []uint64, options *ImportOptions) (err error) {
  	// rowSet maintains the set of rowIDs present in this import. It allows the
  	// cache to be updated once per row, instead of once per bit. TODO: consider
  	// sorting by rowID/columnID first and avoiding the map allocation here. (we
  	// could reuse rowIDs to store the list of unique row IDs)
  	rowSet := make(map[uint64]struct{})
  	lastRowID := uint64(1 << 63)
  
  	// replace columnIDs with calculated positions to avoid allocation.
  	for i := 0; i < len(columnIDs); i++ {
  		rowID, columnID := rowIDs[i], columnIDs[i]
  		pos, err := f.pos(rowID, columnID)
  		if err != nil {
  			return err
  		}
  		columnIDs[i] = pos
  
  		// Add row to rowSet.
  		if rowID != lastRowID {
  			lastRowID = rowID
  			rowSet[rowID] = struct{}{}
  		}
  	}
  	positions := columnIDs
  	f.mu.Lock()
  	defer f.mu.Unlock()
  	if options.Clear {
  		err = f.importPositions(nil, positions, rowSet)
  	} else {
  		err = f.importPositions(positions, nil, rowSet)
  	}
  	return errors.Wrap(err, "bulkImportStandard")
  }
docs: // bulkImportStandard performs a bulk import on a standard fragment. May mutate
  // its rowIDs and columnIDs arguments.