added interface for worker