filter.c updated