code: func (s *Stack) AddAddressWithOptions(id tcpip.NICID, protocol tcpip.NetworkProtocolNumber, addr tcpip.Address, peb PrimaryEndpointBehavior) *tcpip.Error {
  	s.mu.RLock()
  	defer s.mu.RUnlock()
  
  	nic := s.nics[id]
  	if nic == nil {
  		return tcpip.ErrUnknownNICID
  	}
  
  	return nic.AddAddressWithOptions(protocol, addr, peb)
  }
docs: // AddAddressWithOptions is the same as AddAddress, but allows you to specify
  // whether the new endpoint can be primary or not.