use white listing instead of black listing...
add miller rabin prime number test