implemented Aggregate.