minor optimization: each_value instead of values.each