whitelist implementation done