Multithreading
Multithreading refactored