removed rediculously verbose std::accumulate