added task constructor