added more threading