Tested multi-threaded and seems to be good