fix whitelist
add more tests