added concurrency check