adding sieve code