need to include the thread safety parameters