<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def teleport(self, location=None, rotation=None):
 """Teleports the agent to a specific location, with a specific rotation. Args: location (np.ndarray, optional):
 An array with three elements specifying the target world coordinate in meters. If None, keeps the current location. Defaults to None. rotation (np.ndarray, optional):
 An array with three elements specifying the target rotation of the agent. If None, keeps the current rotation. Defaults to None. Returns: None """

        val = 0
        if location is not None:
            val += 1
            np.copyto(self._teleport_buffer, location)
        if rotation is not None:
            np.copyto(self._rotation_buffer, rotation)
            val += 2
        self._teleport_bool_buffer[0] = val