added parallel aggregation