add task handling