refactoring
add filters