starting to rewrite the filter system