add threading to utils