implement events filter