added aggregate methods