created a concurrent version of the sieve