speed up using incremental seive