refactored worker to container