Not really. `requirements.values.map(&:values)` creates an array of arrays of requirements. `flatten!` makes everything in one array. Then we get the size of the final array.