added thread local storage define