There's no way this actually works for `filters` with more than one element. Change the loop to read: `for(Iterator<Filter> it = filters.iterator(); it.hasNext(); )`