docs: def generate(self, project):
  		"""
  		Package name construction is based on provider, not on prefix.
  		Prefix does not have to equal provider_prefix.
  		"""
  		for assignment in self.s2n_mapping:
  			if assignment["ipprefix"] == project:
  				self._name = assignment["package"]
  				return self
  
  		#
  		# github.com -> github
  		# code.google.com/p/ -> googlecode
  		# golang.org/x/ -> golangorg
  		# gopkg.in/check.v1 -> gopkg-check
  		# camlistore.org
  		#
  
  		name = project
  		if name.startswith("github.com"):
  			name = re.sub(r"^github\.com", "github", name)
  
  		if name.startswith("gopkg.in"):
  			name = re.sub(r"gopkg\.in", "gopkg", name)
  			# any version marks?
  			name = re.sub(r"\.v\d", "", name)
  			name = re.sub(r"/v\d/", "/", name)
  
  		if name.startswith("code.google.com/p"):
  			name = re.sub(r"^code\.google\.com/p", "googlecode", name)
  
  		if name.startswith("golang.org/x"):
  			name = re.sub(r"^golang\.org/x", "golangorg", name)
  
  		if name.startswith("google.golang.org"):
  			name = re.sub(r"^google\.golang\.org", "googlegolangorg", name)
  
  		if name.startswith("bitbucket.org"):
  			name = re.sub(r"^bitbucket\.org", "bitbucket", name)
  
  		if name.startswith("k8s.io"):
  			name = re.sub(r"^k8s\.io", "k8s", name)
  
  		if name.endswith(".org"):
  			name = re.sub(r"\.org$", "", name)
  
  		name = name.replace("/", "-")
  
  		self._name = "golang-%s" % name
  
  		return self