protected function _parseFilters(array $filters) {
        $out = array();
        foreach ($filters as $key => $value) {
            // The deprecated way
            if (is_string($key) && is_array($value)) {
                $out[$key] = new Garp_Browsebox_Filter_Where($key, $value);
            } elseif ($value instanceof Garp_Browsebox_Filter_Abstract) {
                $out[$value->getId()] = $value;
            } else {
                throw new Garp_Browsebox_Exception('Invalid filter configuration encountered. Please use instances of Garp_Browsebox_Filter_Abstract to add filters.');
            }
        }
        return $out;
    }