def insert(self, name, part, before=None, index=None):
		assert before is not None or index is not None, (
			"Must specify a value for 'before' or 'index'")
		assert before is None or index is None, (
			"Cannot specify both 'before' and 'index' arguments when inserting")
		self._validate_name(name)
		if before is not None:
			if isinstance(before, str):
				before = getattr(self, before)
			index = self._parts.index(before)
		if hasattr(self, name):
			old_part = getattr(self, name)
			self._parts.remove(old_part)
		self._parts.insert(index, part)
		super(Parts, self).__setattr__(name, part)
		if hasattr(part, 'set_world'):
			part.set_world(self._world)
Parameters:
dataset/ETHPy150Open caseman/grease/grease/world.py/Parts.insert--crossover with--dataset/ETHPy150Open cloudera/impyla/impala/_thrift_gen/ImpalaService/ImpalaHiveServer2Service.py/Client.GetRuntimeProfile