added generic types into FutureWorkerTask type