change _first(), _take(), _collect() as private API