#3 - Implement the new filtering API