Just use + not += in the reduce
Try out extracting a collaborating class