added Eratosthenes' sieve