add filter interfaces
impl filter astream