<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def promote(self, cls, update=False, preserve=True):
 		"""Transform this record into an instance of a more specialized subclass."""

		
		if not issubclass(cls, self.__class__):
			raise TypeError("Must promote to a subclass of " + self.__class__.__name__)
		
		return self._as(cls, update, preserve)