restructure: put filters into different files