prototype augmentation method added; array reduce funciton added