category filter: variable type 1 completed(untested)