#9 and #17 applied a smart filter function to help unify filtering