added TODO: more intelligent aggregate construction