remove CWorker class and add return callback function