work queue prototype