implement the whitelist