- reimplement untested whitelist