switched from threading to multiprocessing