impletement dynamic filter