added append-map and filter-map