<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def set_selection(self, taskfile):
 """Set the selection to the given taskfile :param taskfile: the taskfile to set the selection to :type taskfile: :class:`djadapter.models.TaskFile` :returns: None :rtype: None :raises: None """

        self.set_project(taskfile.task.project)
        self.set_releasetype(taskfile.releasetype)
        if taskfile.task.department.assetflag:
            browser = self.assetbrws
            verbrowser = self.assetverbrws
            tabi = 0
            rootobj = taskfile.task.element.atype
        else:
            browser = self.shotbrws
            verbrowser = self.shotverbrws
            tabi = 1
            rootobj = taskfile.task.element.sequence

        self.set_level(browser, 0, rootobj)
        self.set_level(browser, 1, taskfile.task.element)
        self.set_level(browser, 2, taskfile.task)
        self.set_level(browser, 3, [taskfile.descriptor])
        self.set_level(verbrowser, 0, taskfile)

        self.selection_tabw.setCurrentIndex(tabi)