first running multithreaded version