updated concurrency model