add Filter and Walk method