added different context per thread