aggregation() implemented - barely tested