add dependency task function