def Clone(self,network_id,name=None,cpu=None,memory=None,group_id=None,alias=None,password=None,ip_address=None,
	          storage_type=None,type=None,primary_dns=None,secondary_dns=None,
			  custom_fields=None,ttl=None,managed_os=False,description=None,
			  source_server_password=None,cpu_autoscale_policy_id=None,anti_affinity_policy_id=None,
			  packages=[],count=1):
		if not name:  name = re.search("%s(.+)\d{2}$" % self.alias,self.name).group(1)
		if not cpu:  cpu = self.cpu
		if not memory:  memory = self.memory
		if not group_id:  group_id = self.group_id
		if not alias:  alias = self.alias
		if not source_server_password: source_server_password = self.Credentials()['password']
		if not password: password = source_server_password
		if not storage_type:  storage_type = self.storage_type
		if not type:  type = self.type
		if not storage_type:  storage_type = self.storage_type
		if not custom_fields and len(self.custom_fields): custom_fields = self.custom_fields
		if not description:  description = self.description
		requests_lst = []
		for i in range(0,count):
			requests_lst.append(Server.Create( \
			            name=name,cpu=cpu,memory=memory,group_id=group_id,network_id=network_id,alias=self.alias,
						password=password,ip_address=ip_address,storage_type=storage_type,type=type,
						primary_dns=primary_dns,secondary_dns=secondary_dns,
						custom_fields=custom_fields,ttl=ttl,managed_os=managed_os,description=description,
                        source_server_password=source_server_password,cpu_autoscale_policy_id=cpu_autoscale_policy_id,
						anti_affinity_policy_id=anti_affinity_policy_id,packages=packages,
						template=self.id,session=self.session))
		return(sum(requests_lst))