the thing is finally working ... concurrency