add support for bulk operations