code: func (idx *UniqueIndex) Add(value []byte, targetID []byte) error {
  	if value == nil || len(value) == 0 {
  		return ErrNilParam
  	}
  	if targetID == nil || len(targetID) == 0 {
  		return ErrNilParam
  	}
  
  	exists := idx.IndexBucket.Get(value)
  	if exists != nil {
  		if bytes.Equal(exists, targetID) {
  			return nil
  		}
  		return ErrAlreadyExists
  	}
  
  	return idx.IndexBucket.Put(value, targetID)
  }
docs: // Add a value to the unique index