added AggregateReader class