def before_task_service(pid, user, tid) -> (code_list.CodeWithMessage, Project, User): c, project = before_project_service(pid, user) if c is not None: return c, None, None task = Task.get_task_by_id(tid) if task is None: return code_list.TaskNoExists, None, None if not project.has_task(task): return code_list.TaskNoExists, None, None return None, project, task