protected function filterThroughWhitelist($address)
    {
        $whitelist   = Arr::path($this->config, 'whitelist.list');
        $trapAddress = Arr::path($this->config, 'whitelist.trap');

        if (! is_array($whitelist)) {
            return $address;
        }

        list($name, $domain) = explode('@', $address);

        $addressWhitelisted = in_array($address, $whitelist);
        $domainWhitelisted  = in_array($domain, $whitelist);

        $whitelisted = ($addressWhitelisted or $domainWhitelisted);

        return $whitelisted ? $address : $this->injectIntoTrapAddress($address);
    }