moving workin into acquire()