table = _.reduce(_.groupBy(spans, 'guard'), (table, spans, guard) => {
const minutes = table[guard] = table[guard] || []
for (let span of spans) {
for (let i = span.sleep; i < span.wake; i++) {
minutes[i] = (minutes[i] || 0) + 1
}
}
return table
}, {})