From b7282d1ea44b6251e397269c01c7689779edc05b Mon Sep 17 00:00:00 2001 From: Mohammad S Anwar Date: Tue, 9 Jan 2024 20:41:16 +0000 Subject: - Added solutions by Robbie Hatley. - Added solutions by Ulrich Rieke. --- challenge-251/ulrich-rieke/cpp/ch-1.cpp | 39 + challenge-251/ulrich-rieke/cpp/ch-2.cpp | 61 + challenge-251/ulrich-rieke/haskell/ch-1.hs | 19 + challenge-251/ulrich-rieke/haskell/ch-2.hs | 32 + challenge-251/ulrich-rieke/perl/ch-1.pl | 24 + challenge-251/ulrich-rieke/perl/ch-2.pl | 45 + challenge-251/ulrich-rieke/raku/ch-1.raku | 19 + challenge-251/ulrich-rieke/raku/ch-2.raku | 36 + challenge-251/ulrich-rieke/rust/ch-1.rs | 37 + challenge-251/ulrich-rieke/rust/ch-2.rs | 58 + stats/pwc-current.json | 234 ++-- stats/pwc-language-breakdown-summary.json | 80 +- stats/pwc-language-breakdown.json | 1748 ++++++++++++++-------------- stats/pwc-leaders.json | 398 +++---- stats/pwc-summary-1-30.json | 112 +- stats/pwc-summary-121-150.json | 104 +- stats/pwc-summary-151-180.json | 98 +- stats/pwc-summary-181-210.json | 36 +- stats/pwc-summary-211-240.json | 104 +- stats/pwc-summary-241-270.json | 122 +- stats/pwc-summary-271-300.json | 114 +- stats/pwc-summary-301-330.json | 36 +- stats/pwc-summary-31-60.json | 30 +- stats/pwc-summary-61-90.json | 110 +- stats/pwc-summary-91-120.json | 92 +- stats/pwc-summary.json | 670 +++++------ 26 files changed, 2433 insertions(+), 2025 deletions(-) create mode 100755 challenge-251/ulrich-rieke/cpp/ch-1.cpp create mode 100755 challenge-251/ulrich-rieke/cpp/ch-2.cpp create mode 100755 challenge-251/ulrich-rieke/haskell/ch-1.hs create mode 100755 challenge-251/ulrich-rieke/haskell/ch-2.hs create mode 100755 challenge-251/ulrich-rieke/perl/ch-1.pl create mode 100755 challenge-251/ulrich-rieke/perl/ch-2.pl create mode 100755 challenge-251/ulrich-rieke/raku/ch-1.raku create mode 100755 challenge-251/ulrich-rieke/raku/ch-2.raku create mode 100755 challenge-251/ulrich-rieke/rust/ch-1.rs create mode 100755 challenge-251/ulrich-rieke/rust/ch-2.rs diff --git a/challenge-251/ulrich-rieke/cpp/ch-1.cpp b/challenge-251/ulrich-rieke/cpp/ch-1.cpp new file mode 100755 index 0000000000..75c7efe2e4 --- /dev/null +++ b/challenge-251/ulrich-rieke/cpp/ch-1.cpp @@ -0,0 +1,39 @@ +#include +#include +#include + +std::list split( const std::string & startline , + const std::string & sep ) { + std::list separated ; + std::string::size_type start { 0 } ; + std::string::size_type pos ; + do { + pos = startline.find_first_of( sep , start ) ; + separated.push_back( startline.substr(start , pos - start )) ; + start = pos + 1 ; + } while ( pos != std::string::npos ) ; + return separated ; +} + +int main( ) { + std::cout << "Enter some integers, separated by blanks!\n" ; + std::string line ; + std::getline( std::cin , line ) ; + std::list numberlist { split( line , " " ) } ; + int sum = 0 ; + while ( numberlist.size( ) > 0 ) { + if ( numberlist.size( ) > 1 ) { + std::string concatenated { numberlist.front( ).append( + numberlist.back( )) } ; + sum += std::stoi( concatenated ) ; + numberlist.pop_front( ) ; + numberlist.pop_back( ) ; + } + else { + sum += std::stoi( numberlist.front( ) ) ; + numberlist.pop_front( ) ; + } + } + std::cout << sum << '\n' ; + return 0 ; +} diff --git a/challenge-251/ulrich-rieke/cpp/ch-2.cpp b/challenge-251/ulrich-rieke/cpp/ch-2.cpp new file mode 100755 index 0000000000..26da0e4d44 --- /dev/null +++ b/challenge-251/ulrich-rieke/cpp/ch-2.cpp @@ -0,0 +1,61 @@ +#include +#include +#include +#include +#include +#include + +std::vector split( const std::string & startline , + const std::string & sep ) { + std::vector separated ; + std::string::size_type start { 0 } ; + std::string::size_type pos ; + do { + pos = startline.find_first_of( sep , start ) ; + separated.push_back( startline.substr(start , pos - start )) ; + start = pos + 1 ; + } while ( pos != std::string::npos ) ; + return separated ; +} + +int main( ) { + std::cout << "Please enter m lines of n integers, separated by blanks!\n" ; + std::cout << "Enter to end!\n" ; + std::vector> matrix ; + int lucky = -1 ; + std::string line ; + std::getline( std::cin , line ) ; + std::vector> columns ; + while ( line.length( ) > 0 ) { + std::vector numberline ; + std::vector numberstrings( split ( line, " " ) ) ; + for ( auto s : numberstrings ) + numberline.push_back( std::stoi( s ) ) ; + matrix.push_back( numberline ) ; + std::getline( std::cin , line ) ; + } + int colnumber = matrix[0].size( ) ; + for ( int c = 0 ; c < colnumber ; c++ ) { + std::vector column ; + for ( int r = 0 ; r < matrix.size( ) ; r++ ) { + column.push_back( matrix[r][c] ) ; + } + columns.push_back( column ) ; + } + std::set rowminima ; + for ( auto it = matrix.begin( ) ; it != matrix.end( ) ; ++it ) { + rowminima.insert( *std::min_element( it->begin( ) , it->end( ) ) ) ; + } + std::set colmaxima ; + for ( auto it = columns.begin( ) ; it != columns.end( ) ; ++it ) { + colmaxima.insert( *std::max_element( it->begin( ) , it->end( ) ) ) ; + } + std::vector intersect ; + std::set_intersection( rowminima.begin( ) , + rowminima.end( ) , colmaxima.begin( ) , colmaxima.end( ) , + std::inserter( intersect , intersect.begin( ) )) ; + if ( intersect.size( ) > 0 ) + lucky = *intersect.begin( ) ; + std::cout << lucky << '\n' ; + return 0 ; +} diff --git a/challenge-251/ulrich-rieke/haskell/ch-1.hs b/challenge-251/ulrich-rieke/haskell/ch-1.hs new file mode 100755 index 0000000000..d957d173ed --- /dev/null +++ b/challenge-251/ulrich-rieke/haskell/ch-1.hs @@ -0,0 +1,19 @@ +module Challenge251 + where + +solution :: String -> Int +solution line = snd $ until ( null . fst ) step ( words line , 0 ) + where + step :: ([String] , Int) -> ([String] , Int ) + step ( wordlist , sum ) = ( if condition wordlist then init $ tail + wordlist else [] , if condition wordlist then sum + ( read ( head + wordlist ++ last wordlist ) ) else sum + ( read $ head wordlist ) ) + where + condition :: [String] -> Bool + condition someList = length someList > 1 + +main :: IO ( ) +main = do + putStrLn "Enter some integers, separated by blanks!" + numberline <- getLine + print $ solution numberline diff --git a/challenge-251/ulrich-rieke/haskell/ch-2.hs b/challenge-251/ulrich-rieke/haskell/ch-2.hs new file mode 100755 index 0000000000..6fdada86a4 --- /dev/null +++ b/challenge-251/ulrich-rieke/haskell/ch-2.hs @@ -0,0 +1,32 @@ +module Challenge251_2 + where +import Data.List ( transpose , intersect ) + +solution :: [[Int]] -> Int +solution matrix = if null intersection then -1 else head intersection + where + minima :: [Int] + minima = map minimum matrix + maxima :: [Int] + maxima = map maximum $ transpose matrix + intersection :: [Int] + intersection = intersect minima maxima + +getMultipleLines :: Int -> IO [String] +getMultipleLines n + |n <= 0 = return [] + |otherwise = do + x <- getLine + xs <- getMultipleLines ( n - 1 ) + let ret = (x:xs) + return ret + +main :: IO ( ) +main = do + putStrLn "Enter m lines of n integers separated by blanks!" + putStrLn "How many lines do you want to enter?" ; + number <- getLine + numberstrings <- getMultipleLines $ read number + let matrix = map (\s -> map read $ words s ) numberstrings + print $ solution matrix + diff --git a/challenge-251/ulrich-rieke/perl/ch-1.pl b/challenge-251/ulrich-rieke/perl/ch-1.pl new file mode 100755 index 0000000000..f7346f0572 --- /dev/null +++ b/challenge-251/ulrich-rieke/perl/ch-1.pl @@ -0,0 +1,24 @@ +#!/usr/bin/perl ; +use strict ; +use warnings ; +use feature 'say' ; + +say "Enter some integers, separated by blanks!" ; +my $line = ; +chomp $line ; +my @numbers = split( /\s/ , $line ) ; +my $sum = 0 ; +while ( @numbers ) { + if ( scalar( @numbers ) > 1 ) { + my $concat = ($numbers[0] . $numbers[-1]) + 0 ; + $sum += $concat ; + shift @numbers ; + pop @numbers ; + } + else { + $sum += $numbers[0] ; + shift @numbers ; + } +} +say $sum ; + diff --git a/challenge-251/ulrich-rieke/perl/ch-2.pl b/challenge-251/ulrich-rieke/perl/ch-2.pl new file mode 100755 index 0000000000..ee1e380eb4 --- /dev/null +++ b/challenge-251/ulrich-rieke/perl/ch-2.pl @@ -0,0 +1,45 @@ +#!/usr/bin/perl ; +use strict ; +use warnings ; +use feature 'say' ; +use List::Util qw ( min max ) ; + +say "Enter m integers on n lines, separated by blanks!" ; +say "Enter to end!" ; +my $lucky = -1 ; +my @matrix ; +my @columns ; +my $line = ; +chomp $line ; +while ( $line ) { + my @numbers = split( /\s/ , $line ) ; + push( @matrix , \@numbers ) ; + $line = ; + chomp $line ; +} +my $colnumbers = scalar( @{$matrix[0]} ) ; +for my $c (0..$colnumbers - 1 ) { + my @column ; + for my $row ( @matrix ) { + push @column , $row->[ $c ] ; + } + push @columns , \@column ; +} +my %rowminima ; +for my $row ( @matrix ) { + my $mini = min( @$row ) ; + $rowminima{ $mini }++ ; +} +my %colmaxima ; +for my $col ( @columns ) { + my $maxi = max( @$col ) ; + $colmaxima{ $maxi }++ ; +} +my @intersection = grep { exists( $colmaxima{ $_ } ) } keys %rowminima ; +if ( @intersection ) { + $lucky = $intersection[ 0 ] ; +} +say $lucky ; + + + diff --git a/challenge-251/ulrich-rieke/raku/ch-1.raku b/challenge-251/ulrich-rieke/raku/ch-1.raku new file mode 100755 index 0000000000..f10fb1f7b1 --- /dev/null +++ b/challenge-251/ulrich-rieke/raku/ch-1.raku @@ -0,0 +1,19 @@ +use v6 ; + +say "Enter some integers, separated by blanks!" ; +my $line = $*IN.get ; +my @numbers = $line.words ; +my $sum = 0 ; +while ( @numbers.elems > 0 ) { + if ( @numbers.elems > 1 ) { + my $concatenated = (@numbers[0] ~ @numbers[*-1]).Int ; + $sum += $concatenated ; + @numbers.shift ; + @numbers.pop ; + } + else { + my $first = @numbers.pop.Int ; + $sum += $first ; + } +} +say $sum ; diff --git a/challenge-251/ulrich-rieke/raku/ch-2.raku b/challenge-251/ulrich-rieke/raku/ch-2.raku new file mode 100755 index 0000000000..179cb0f466 --- /dev/null +++ b/challenge-251/ulrich-rieke/raku/ch-2.raku @@ -0,0 +1,36 @@ +use v6 ; + +say "Enter m lines of n integers, separated by blanks on every line!" ; +say "Enter to end!" ; +my @matrix ; +my $lucky = -1 ; +my $line = $*IN.get ; +while ( $line ) { + my @numbers = $line.words.map( {.Int} ) ; + @matrix.push( @numbers ) ; + $line = $*IN.get ; +} +my @rowminima ; +my @colmaxima ; +my @columns ; +my $rownumber = @matrix.elems ; +my $colnumber = @matrix[0].elems ; +for (0..$colnumber - 1 ) -> $c { + my @column ; + for (0..$rownumber - 1 ) -> $r { + @column.push( @matrix[$r][$c] ) ; + } + @columns.push( @column ) ; +} +for @matrix -> @row { + @rowminima.push( @row.min ) ; +} +for @columns -> @column { + @colmaxima.push( @column.max ) ; +} +my $common = @rowminima.Set (&) @colmaxima.Set ; +if $common.elems > 0 { + $lucky = $common.keys ; +} +say $lucky ; + diff --git a/challenge-251/ulrich-rieke/rust/ch-1.rs b/challenge-251/ulrich-rieke/rust/ch-1.rs new file mode 100755 index 0000000000..cea6494fa2 --- /dev/null +++ b/challenge-251/ulrich-rieke/rust/ch-1.rs @@ -0,0 +1,37 @@ +use std::io ; +use std::collections::VecDeque ; + +fn concatenate_nums( numbers : &VecDeque<&str> ) -> i32 { + let mut concatenated : String = String::new( ) ; + concatenated.push_str( numbers[ 0 ] ) ; + let len = numbers.len( ) ; + concatenated.push_str( numbers[ len - 1 ] ) ; + let transformed = concatenated.as_str( ) ; + transformed.parse::( ).unwrap( ) +} + +fn main() { + println!("Enter some integers, separated by blanks!"); + let mut inline : String = String::new( ) ; + io::stdin( ).read_line( &mut inline ).unwrap( ) ; + let entered_line : &str = &*inline ; + let mut numberstrings : VecDeque<&str> = entered_line + .split_whitespace( ).map( + | s | s.trim( ) ).collect( ) ; + let mut sum : i32 = 0 ; + while numberstrings.len( ) > 0 { + if numberstrings.len( ) > 1 { + sum += concatenate_nums( &numberstrings ) ; + numberstrings.pop_front( ).unwrap( ) ; + numberstrings.pop_back( ).unwrap( ) ; + } + else { + let first : i32 = match numberstrings.pop_front( ) { + Some(string) => string.parse::( ).unwrap( ) , + None => 0 + } ; + sum += first ; + } + } + println!("{}" , sum ) ; +} diff --git a/challenge-251/ulrich-rieke/rust/ch-2.rs b/challenge-251/ulrich-rieke/rust/ch-2.rs new file mode 100755 index 0000000000..3b24288312 --- /dev/null +++ b/challenge-251/ulrich-rieke/rust/ch-2.rs @@ -0,0 +1,58 @@ +use std::io ; +use std::io::BufRead ; +use std::collections::HashSet ; + +fn main() -> io::Result<()> { + println!("Enter a matrix of m x n integers, to end!"); + let mut lines = io::stdin( ).lock( ).lines( ) ; + let mut all_input : String = String::new( ) ; + while let Some( line ) = lines.next( ) { + let last_input = line.unwrap( ) ; + if last_input.len( ) == 0 { + break ; + } + else { + all_input.push_str( "\n" ) ; + } + all_input.push_str( &last_input ) ; + } + let rows : Vec<&str> = all_input.split("\n").collect( ) ; + let mut matrix : Vec> = Vec::new( ) ; + for r in &rows { + if r.len( ) > 0 { + let rownumbers : Vec = r.split_whitespace( ).map( | s | + s.trim( ).parse::( ).unwrap( ) ).collect( ) ; + matrix.push( rownumbers ) ; + } + } + let colnumber : usize = matrix[1].len( ) ; + let mut all_columns : Vec> = Vec::new( ) ; + for c in 0..colnumber { + let mut column : Vec = Vec::new( ) ; + for r in &matrix { + column.push( r[ c ] ) ; + } + all_columns.push( column ) ; + } + let mut rowminima : HashSet = HashSet::new( ) ; + for r in &matrix { + let rowmin : i32 = *r.iter( ).min( ).unwrap( ) ; + rowminima.insert( rowmin ) ; + } + let mut colmaxima : HashSet = HashSet::new( ) ; + for col in &all_columns { + let colmax : i32 = *col.iter( ).max( ).unwrap( ) ; + colmaxima.insert( colmax ) ; + } + let mut intersection : HashSet<_> = rowminima.intersection( &colmaxima ). + collect( ) ; + if intersection.is_empty( ) { + println!("-1") ; + } + else { + for i in intersection.drain( ) { + println!("{}" , i ) ; + } + } + Ok(()) +} diff --git a/stats/pwc-current.json b/stats/pwc-current.json index 4a35b7d705..215a28ae19 100644 --- a/stats/pwc-current.json +++ b/stats/pwc-current.json @@ -1,78 +1,32 @@ { - "subtitle" : { - "text" : "[Champions: 11] Last updated at 2024-01-08 19:11:43 GMT" + "xAxis" : { + "type" : "category" }, "tooltip" : { - "headerFormat" : "{series.name}
", "pointFormat" : "{point.name}: {point.y:f}
", + "headerFormat" : "{series.name}
", "followPointer" : 1 }, - "series" : [ - { - "name" : "The Weekly Challenge - 251", - "data" : [ - { - "drilldown" : "Dave Jacoby", - "name" : "Dave Jacoby", - "y" : 3 - }, - { - "y" : 2, - "name" : "David Ferrone", - "drilldown" : "David Ferrone" - }, - { - "name" : "Laurent Rosenfeld", - "y" : 3, - "drilldown" : "Laurent Rosenfeld" - }, - { - "drilldown" : "Luca Ferrari", - "name" : "Luca Ferrari", - "y" : 10 - }, - { - "y" : 2, - "name" : "Mark Anderson", - "drilldown" : "Mark Anderson" - }, - { - "y" : 2, - "name" : "Niels van Dijke", - "drilldown" : "Niels van Dijke" - }, - { - "drilldown" : "Peter Campbell Smith", - "name" : "Peter Campbell Smith", - "y" : 3 - }, - { - "drilldown" : "Peter Meszaros", - "name" : "Peter Meszaros", - "y" : 2 - }, - { - "y" : 2, - "name" : "Simon Proctor", - "drilldown" : "Simon Proctor" - }, - { - "drilldown" : "Thomas Kohler", - "y" : 4, - "name" : "Thomas Kohler" - }, - { - "name" : "W. Luis Mochan", - "y" : 3, - "drilldown" : "W. Luis Mochan" - } - ], - "colorByPoint" : 1 + "legend" : { + "enabled" : 0 + }, + "plotOptions" : { + "series" : { + "dataLabels" : { + "enabled" : 1, + "format" : "{point.y}" + }, + "borderWidth" : 0 } - ], + }, + "subtitle" : { + "text" : "[Champions: 13] Last updated at 2024-01-09 20:37:41 GMT" + }, "drilldown" : { "series" : [ { + "id" : "Dave Jacoby", + "name" : "Dave Jacoby", "data" : [ [ "Perl", @@ -82,23 +36,20 @@ "Blog", 1 ] - ], - "name" : "Dave Jacoby", - "id" : "Dave Jacoby" + ] }, { + "name" : "David Ferrone", "data" : [ [ "Perl", 2 ] ], - "name" : "David Ferrone", "id" : "David Ferrone" }, { "id" : "Laurent Rosenfeld", - "name" : "Laurent Rosenfeld", "data" : [ [ "Perl", @@ -112,11 +63,10 @@ "Blog", 1 ] - ] + ], + "name" : "Laurent Rosenfeld" }, { - "id" : "Luca Ferrari", - "name" : "Luca Ferrari", "data" : [ [ "Raku", @@ -126,17 +76,19 @@ "Blog", 8 ] - ] + ], + "name" : "Luca Ferrari", + "id" : "Luca Ferrari" }, { + "id" : "Mark Anderson", + "name" : "Mark Anderson", "data" : [ [ "Raku", 2 ] - ], - "id" : "Mark Anderson", - "name" : "Mark Anderson" + ] }, { "data" : [ @@ -163,14 +115,28 @@ ] }, { - "id" : "Peter Meszaros", + "data" : [ + [ + "Perl", + 2 + ] + ], "name" : "Peter Meszaros", + "id" : "Peter Meszaros" + }, + { "data" : [ [ "Perl", 2 + ], + [ + "Blog", + 1 ] - ] + ], + "name" : "Robbie Hatley", + "id" : "Robbie Hatley" }, { "id" : "Simon Proctor", @@ -183,6 +149,7 @@ ] }, { + "name" : "Thomas Kohler", "data" : [ [ "Perl", @@ -193,12 +160,25 @@ 2 ] ], - "name" : "Thomas Kohler", "id" : "Thomas Kohler" }, { - "name" : "W. Luis Mochan", + "data" : [ + [ + "Perl", + 2 + ], + [ + "Raku", + 2 + ] + ], + "name" : "Ulrich Rieke", + "id" : "Ulrich Rieke" + }, + { "id" : "W. Luis Mochan", + "name" : "W. Luis Mochan", "data" : [ [ "Perl", @@ -212,9 +192,82 @@ } ] }, - "legend" : { - "enabled" : 0 + "chart" : { + "type" : "column" }, + "series" : [ + { + "name" : "The Weekly Challenge - 251", + "data" : [ + { + "name" : "Dave Jacoby", + "drilldown" : "Dave Jacoby", + "y" : 3 + }, + { + "y" : 2, + "drilldown" : "David Ferrone", + "name" : "David Ferrone" + }, + { + "drilldown" : "Laurent Rosenfeld", + "name" : "Laurent Rosenfeld", + "y" : 3 + }, + { + "y" : 10, + "name" : "Luca Ferrari", + "drilldown" : "Luca Ferrari" + }, + { + "y" : 2, + "drilldown" : "Mark Anderson", + "name" : "Mark Anderson" + }, + { + "y" : 2, + "drilldown" : "Niels van Dijke", + "name" : "Niels van Dijke" + }, + { + "y" : 3, + "drilldown" : "Peter Campbell Smith", + "name" : "Peter Campbell Smith" + }, + { + "name" : "Peter Meszaros", + "drilldown" : "Peter Meszaros", + "y" : 2 + }, + { + "y" : 3, + "drilldown" : "Robbie Hatley", + "name" : "Robbie Hatley" + }, + { + "y" : 2, + "name" : "Simon Proctor", + "drilldown" : "Simon Proctor" + }, + { + "y" : 4, + "drilldown" : "Thomas Kohler", + "name" : "Thomas Kohler" + }, + { + "name" : "Ulrich Rieke", + "drilldown" : "Ulrich Rieke", + "y" : 4 + }, + { + "y" : 3, + "name" : "W. Luis Mochan", + "drilldown" : "W. Luis Mochan" + } + ], + "colorByPoint" : 1 + } + ], "title" : { "text" : "The Weekly Challenge - 251" }, @@ -222,20 +275,5 @@ "title" : { "text" : "Total Solutions" } - }, - "plotOptions" : { - "series" : { - "borderWidth" : 0, - "dataLabels" : { - "format" : "{point.y}", - "enabled" : 1 - } - } - }, - "chart" : { - "type" : "column" - }, - "xAxis" : { - "type" : "category" } } diff --git a/stats/pwc-language-breakdown-summary.json b/stats/pwc-language-breakdown-summary.json index cedaf23ce7..8d04b92337 100644 --- a/stats/pwc-language-breakdown-summary.json +++ b/stats/pwc-language-breakdown-summary.json @@ -1,63 +1,63 @@ { + "subtitle" : { + "text" : "Last updated at 2024-01-09 20:37:41 GMT" + }, "legend" : { "enabled" : "false" }, + "tooltip" : { + "pointFormat" : "{point.y:.0f}" + }, + "xAxis" : { + "type" : "category", + "labels" : { + "style" : { + "fontFamily" : "Verdana, sans-serif", + "fontSize" : "13px" + } + } + }, + "yAxis" : { + "title" : { + "text" : null + }, + "min" : 0 + }, + "title" : { + "text" : "The Weekly Challenge Contributions [2019 - 2024]" + }, "series" : [ { - "name" : "Contributions", + "dataLabels" : { + "y" : 10, + "format" : "{point.y:.0f}", + "enabled" : "true", + "style" : { + "fontSize" : "13px", + "fontFamily" : "Verdana, sans-serif" + }, + "align" : "right", + "color" : "#FFFFFF", + "rotation" : -90 + }, "data" : [ [ "Blog", - 4395 + 4396 ], [ "Perl", - 12924 + 12928 ], [ "Raku", - 7453 + 7455 ] ], - "dataLabels" : { - "style" : { - "fontFamily" : "Verdana, sans-serif", - "fontSize" : "13px" - }, - "rotation" : -90, - "align" : "right", - "enabled" : "true", - "color" : "#FFFFFF", - "y" : 10, - "format" : "{point.y:.0f}" - } + "name" : "Contributions" } ], - "tooltip" : { - "pointFormat" : "{point.y:.0f}" - }, - "subtitle" : { - "text" : "Last updated at 2024-01-08 19:11:43 GMT" - }, - "xAxis" : { - "labels" : { - "style" : { - "fontFamily" : "Verdana, sans-serif", - "fontSize" : "13px" - } - }, - "type" : "category" - }, "chart" : { "type" : "column" - }, - "title" : { - "text" : "The Weekly Challenge Contributions [2019 - 2024]" - }, - "yAxis" : { - "title" : { - "text" : null - }, - "min" : 0 } } diff --git a/stats/pwc-language-breakdown.json b/stats/pwc-language-breakdown.json index 2ed179f24d..8d56a43139 100644 --- a/stats/pwc-language-breakdown.json +++ b/stats/pwc-language-breakdown.json @@ -1,16 +1,7 @@ { - "tooltip" : { - "headerFormat" : "", - "pointFormat" : "Challenge {point.name}: {point.y:f}
", - "followPointer" : "true" - }, - "subtitle" : { - "text" : "Click the columns to drilldown the language breakdown. Last updated at 2024-01-08 19:11:43 GMT" - }, "drilldown" : { "series" : [ { - "id" : "001", "name" : "001", "data" : [ [ @@ -25,10 +16,10 @@ "Blog", 12 ] - ] + ], + "id" : "001" }, { - "id" : "002", "name" : "002", "data" : [ [ @@ -43,7 +34,8 @@ "Blog", 10 ] - ] + ], + "id" : "002" }, { "data" : [ @@ -60,10 +52,11 @@ 9 ] ], - "id" : "003", - "name" : "003" + "name" : "003", + "id" : "003" }, { + "name" : "004", "data" : [ [ "Perl", @@ -78,10 +71,11 @@ 10 ] ], - "id" : "004", - "name" : "004" + "id" : "004" }, { + "id" : "005", + "name" : "005", "data" : [ [ "Perl", @@ -95,11 +89,10 @@ "Blog", 12 ] - ], - "id" : "005", - "name" : "005" + ] }, { + "id" : "006", "data" : [ [ "Perl", @@ -114,10 +107,10 @@ 7 ] ], - "id" : "006", "name" : "006" }, { + "id" : "007", "data" : [ [ "Perl", @@ -132,10 +125,10 @@ 10 ] ], - "name" : "007", - "id" : "007" + "name" : "007" }, { + "id" : "008", "data" : [ [ "Perl", @@ -150,11 +143,9 @@ 12 ] ], - "id" : "008", "name" : "008" }, { - "id" : "009", "name" : "009", "data" : [ [ @@ -169,9 +160,12 @@ "Blog", 13 ] - ] + ], + "id" : "009" }, { + "id" : "010", + "name" : "010", "data" : [ [ "Perl", @@ -185,11 +179,10 @@ "Blog", 11 ] - ], - "id" : "010", - "name" : "010" + ] }, { + "name" : "011", "data" : [ [ "Perl", @@ -204,7 +197,6 @@ 10 ] ], - "name" : "011", "id" : "011" }, { @@ -226,8 +218,6 @@ ] }, { - "id" : "013", - "name" : "013", "data" : [ [ "Perl", @@ -241,9 +231,12 @@ "Blog", 13 ] - ] + ], + "name" : "013", + "id" : "013" }, { + "name" : "014", "data" : [ [ "Perl", @@ -258,12 +251,11 @@ 15 ] ], - "id" : "014", - "name" : "014" + "id" : "014" }, { - "name" : "015", "id" : "015", + "name" : "015", "data" : [ [ "Perl", @@ -280,8 +272,6 @@ ] }, { - "id" : "016", - "name" : "016", "data" : [ [ "Perl", @@ -295,9 +285,12 @@ "Blog", 13 ] - ] + ], + "name" : "016", + "id" : "016" }, { + "name" : "017", "data" : [ [ "Perl", @@ -312,8 +305,7 @@ 12 ] ], - "id" : "017", - "name" : "017" + "id" : "017" }, { "data" : [ @@ -330,10 +322,11 @@ 14 ] ], - "id" : "018", - "name" : "018" + "name" : "018", + "id" : "018" }, { + "id" : "019", "data" : [ [ "Perl", @@ -348,12 +341,10 @@ 13 ] ], - "name" : "019", - "id" : "019" + "name" : "019" }, { "name" : "020", - "id" : "020", "data" : [ [ "Perl", @@ -367,10 +358,10 @@ "Blog", 13 ] - ] + ], + "id" : "020" }, { - "id" : "021", "name" : "021", "data" : [ [ @@ -385,9 +376,11 @@ "Blog", 10 ] - ] + ], + "id" : "021" }, { + "name" : "022", "data" : [ [ "Perl", @@ -402,11 +395,9 @@ 10 ] ], - "name" : "022", "id" : "022" }, { - "name" : "023", "id" : "023", "data" : [ [ @@ -421,11 +412,10 @@ "Blog", 12 ] - ] + ], + "name" : "023" }, { - "name" : "024", - "id" : "024", "data" : [ [ "Perl", @@ -439,7 +429,9 @@ "Blog", 11 ] - ] + ], + "name" : "024", + "id" : "024" }, { "data" : [ @@ -456,10 +448,11 @@ 12 ] ], - "id" : "025", - "name" : "025" + "name" : "025", + "id" : "025" }, { + "id" : "026", "data" : [ [ "Perl", @@ -474,12 +467,11 @@ 10 ] ], - "name" : "026", - "id" : "026" + "name" : "026" }, { - "name" : "027", "id" : "027", + "name" : "027", "data" : [ [ "Perl", @@ -496,6 +488,7 @@ ] }, { + "id" : "028", "data" : [ [ "Perl", @@ -510,12 +503,10 @@ 9 ] ], - "id" : "028", "name" : "028" }, { "name" : "029", - "id" : "029", "data" : [ [ "Perl", @@ -529,7 +520,8 @@ "Blog", 12 ] - ] + ], + "id" : "029" }, { "data" : [ @@ -546,12 +538,12 @@ 10 ] ], - "id" : "030", - "name" : "030" + "name" : "030", + "id" : "030" }, { - "name" : "031", "id" : "031", + "name" : "031", "data" : [ [ "Perl", @@ -568,6 +560,7 @@ ] }, { + "id" : "032", "data" : [ [ "Perl", @@ -582,10 +575,11 @@ 10 ] ], - "name" : "032", - "id" : "032" + "name" : "032" }, { + "id" : "033", + "name" : "033", "data" : [ [ "Perl", @@ -599,11 +593,10 @@ "Blog", 10 ] - ], - "name" : "033", - "id" : "033" + ] }, { + "id" : "034", "data" : [ [ "Perl", @@ -618,11 +611,9 @@ 11 ] ], - "name" : "034", - "id" : "034" + "name" : "034" }, { - "id" : "035", "name" : "035", "data" : [ [ @@ -637,7 +628,8 @@ "Blog", 9 ] - ] + ], + "id" : "035" }, { "id" : "036", @@ -659,7 +651,6 @@ }, { "id" : "037", - "name" : "037", "data" : [ [ "Perl", @@ -673,9 +664,11 @@ "Blog", 9 ] - ] + ], + "name" : "037" }, { + "id" : "038", "data" : [ [ "Perl", @@ -690,10 +683,10 @@ 12 ] ], - "name" : "038", - "id" : "038" + "name" : "038" }, { + "name" : "039", "data" : [ [ "Perl", @@ -708,8 +701,7 @@ 12 ] ], - "id" : "039", - "name" : "039" + "id" : "039" }, { "id" : "040", @@ -730,6 +722,7 @@ ] }, { + "id" : "041", "data" : [ [ "Perl", @@ -744,10 +737,10 @@ 9 ] ], - "name" : "041", - "id" : "041" + "name" : "041" }, { + "id" : "042", "data" : [ [ "Perl", @@ -762,10 +755,11 @@ 11 ] ], - "id" : "042", "name" : "042" }, { + "id" : "043", + "name" : "043", "data" : [ [ "Perl", @@ -779,11 +773,10 @@ "Blog", 11 ] - ], - "name" : "043", - "id" : "043" + ] }, { + "id" : "044", "data" : [ [ "Perl", @@ -798,8 +791,7 @@ 11 ] ], - "name" : "044", - "id" : "044" + "name" : "044" }, { "data" : [ @@ -820,7 +812,6 @@ "id" : "045" }, { - "name" : "046", "id" : "046", "data" : [ [ @@ -835,11 +826,10 @@ "Blog", 10 ] - ] + ], + "name" : "046" }, { - "id" : "047", - "name" : "047", "data" : [ [ "Perl", @@ -853,7 +843,9 @@ "Blog", 10 ] - ] + ], + "name" : "047", + "id" : "047" }, { "data" : [ @@ -870,12 +862,11 @@ 12 ] ], - "id" : "048", - "name" : "048" + "name" : "048", + "id" : "048" }, { "name" : "049", - "id" : "049", "data" : [ [ "Perl", @@ -889,11 +880,11 @@ "Blog", 12 ] - ] + ], + "id" : "049" }, { "id" : "050", - "name" : "050", "data" : [ [ "Perl", @@ -907,11 +898,12 @@ "Blog", 12 ] - ] + ], + "name" : "050" }, { - "name" : "051", "id" : "051", + "name" : "051", "data" : [ [ "Perl", @@ -964,6 +956,7 @@ ] }, { + "name" : "054", "data" : [ [ "Perl", @@ -978,10 +971,10 @@ 18 ] ], - "name" : "054", "id" : "054" }, { + "name" : "055", "data" : [ [ "Perl", @@ -996,7 +989,6 @@ 14 ] ], - "name" : "055", "id" : "055" }, { @@ -1018,6 +1010,7 @@ ] }, { + "id" : "057", "data" : [ [ "Perl", @@ -1032,12 +1025,10 @@ 15 ] ], - "id" : "057", "name" : "057" }, { "name" : "058", - "id" : "058", "data" : [ [ "Perl", @@ -1051,10 +1042,10 @@ "Blog", 13 ] - ] + ], + "id" : "058" }, { - "name" : "059", "id" : "059", "data" : [ [ @@ -1069,7 +1060,8 @@ "Blog", 16 ] - ] + ], + "name" : "059" }, { "id" : "060", @@ -1090,7 +1082,6 @@ ] }, { - "id" : "061", "name" : "061", "data" : [ [ @@ -1105,9 +1096,11 @@ "Blog", 14 ] - ] + ], + "id" : "061" }, { + "id" : "062", "data" : [ [ "Perl", @@ -1122,10 +1115,10 @@ 11 ] ], - "id" : "062", "name" : "062" }, { + "name" : "063", "data" : [ [ "Perl", @@ -1140,10 +1133,11 @@ 13 ] ], - "name" : "063", "id" : "063" }, { + "id" : "064", + "name" : "064", "data" : [ [ "Perl", @@ -1157,11 +1151,10 @@ "Blog", 16 ] - ], - "id" : "064", - "name" : "064" + ] }, { + "name" : "065", "data" : [ [ "Perl", @@ -1176,12 +1169,11 @@ 15 ] ], - "id" : "065", - "name" : "065" + "id" : "065" }, { - "name" : "066", "id" : "066", + "name" : "066", "data" : [ [ "Perl", @@ -1216,6 +1208,8 @@ "id" : "067" }, { + "id" : "068", + "name" : "068", "data" : [ [ "Perl", @@ -1229,11 +1223,10 @@ "Blog", 13 ] - ], - "id" : "068", - "name" : "068" + ] }, { + "name" : "069", "data" : [ [ "Perl", @@ -1248,12 +1241,10 @@ 16 ] ], - "name" : "069", "id" : "069" }, { "id" : "070", - "name" : "070", "data" : [ [ "Perl", @@ -1267,7 +1258,8 @@ "Blog", 17 ] - ] + ], + "name" : "070" }, { "data" : [ @@ -1284,8 +1276,8 @@ 15 ] ], - "id" : "071", - "name" : "071" + "name" : "071", + "id" : "071" }, { "data" : [ @@ -1302,10 +1294,12 @@ 19 ] ], - "id" : "072", - "name" : "072" + "name" : "072", + "id" : "072" }, { + "id" : "073", + "name" : "073", "data" : [ [ "Perl", @@ -1319,11 +1313,11 @@ "Blog", 17 ] - ], - "id" : "073", - "name" : "073" + ] }, { + "id" : "074", + "name" : "074", "data" : [ [ "Perl", @@ -1337,12 +1331,9 @@ "Blog", 20 ] - ], - "name" : "074", - "id" : "074" + ] }, { - "id" : "075", "name" : "075", "data" : [ [ @@ -1357,11 +1348,11 @@ "Blog", 20 ] - ] + ], + "id" : "075" }, { "name" : "076", - "id" : "076", "data" : [ [ "Perl", @@ -1375,9 +1366,11 @@ "Blog", 16 ] - ] + ], + "id" : "076" }, { + "id" : "077", "data" : [ [ "Perl", @@ -1392,7 +1385,6 @@ 14 ] ], - "id" : "077", "name" : "077" }, { @@ -1415,7 +1407,6 @@ }, { "name" : "079", - "id" : "079", "data" : [ [ "Perl", @@ -1429,11 +1420,11 @@ "Blog", 17 ] - ] + ], + "id" : "079" }, { "id" : "080", - "name" : "080", "data" : [ [ "Perl", @@ -1447,9 +1438,11 @@ "Blog", 16 ] - ] + ], + "name" : "080" }, { + "name" : "081", "data" : [ [ "Perl", @@ -1464,10 +1457,10 @@ 15 ] ], - "name" : "081", "id" : "081" }, { + "id" : "082", "data" : [ [ "Perl", @@ -1482,12 +1475,9 @@ 17 ] ], - "id" : "082", "name" : "082" }, { - "name" : "083", - "id" : "083", "data" : [ [ "Perl", @@ -1501,10 +1491,11 @@ "Blog", 16 ] - ] + ], + "name" : "083", + "id" : "083" }, { - "id" : "084", "name" : "084", "data" : [ [ @@ -1519,7 +1510,8 @@ "Blog", 12 ] - ] + ], + "id" : "084" }, { "id" : "085", @@ -1540,7 +1532,6 @@ ] }, { - "id" : "086", "name" : "086", "data" : [ [ @@ -1555,11 +1546,10 @@ "Blog", 15 ] - ] + ], + "id" : "086" }, { - "name" : "087", - "id" : "087", "data" : [ [ "Perl", @@ -1573,10 +1563,11 @@ "Blog", 14 ] - ] + ], + "name" : "087", + "id" : "087" }, { - "name" : "088", "id" : "088", "data" : [ [ @@ -1591,11 +1582,11 @@ "Blog", 20 ] - ] + ], + "name" : "088" }, { "id" : "089", - "name" : "089", "data" : [ [ "Perl", @@ -1609,9 +1600,11 @@ "Blog", 20 ] - ] + ], + "name" : "089" }, { + "id" : "090", "data" : [ [ "Perl", @@ -1626,10 +1619,11 @@ 17 ] ], - "name" : "090", - "id" : "090" + "name" : "090" }, { + "id" : "091", + "name" : "091", "data" : [ [ "Perl", @@ -1643,13 +1637,9 @@ "Blog", 16 ] - ], - "id" : "091", - "name" : "091" + ] }, { - "name" : "092", - "id" : "092", "data" : [ [ "Perl", @@ -1663,9 +1653,13 @@ "Blog", 16 ] - ] + ], + "name" : "092", + "id" : "092" }, { + "id" : "093", + "name" : "093", "data" : [ [ "Perl", @@ -1679,11 +1673,10 @@ "Blog", 16 ] - ], - "name" : "093", - "id" : "093" + ] }, { + "id" : "094", "data" : [ [ "Perl", @@ -1698,12 +1691,11 @@ 17 ] ], - "id" : "094", "name" : "094" }, { - "name" : "095", "id" : "095", + "name" : "095", "data" : [ [ "Perl", @@ -1734,10 +1726,12 @@ 19 ] ], - "id" : "096", - "name" : "096" + "name" : "096", + "id" : "096" }, { + "id" : "097", + "name" : "097", "data" : [ [ "Perl", @@ -1751,11 +1745,10 @@ "Blog", 19 ] - ], - "id" : "097", - "name" : "097" + ] }, { + "id" : "098", "data" : [ [ "Perl", @@ -1770,10 +1763,10 @@ 17 ] ], - "name" : "098", - "id" : "098" + "name" : "098" }, { + "name" : "099", "data" : [ [ "Perl", @@ -1788,12 +1781,11 @@ 14 ] ], - "name" : "099", "id" : "099" }, { - "name" : "100", "id" : "100", + "name" : "100", "data" : [ [ "Perl", @@ -1810,6 +1802,7 @@ ] }, { + "id" : "101", "data" : [ [ "Perl", @@ -1824,8 +1817,7 @@ 13 ] ], - "name" : "101", - "id" : "101" + "name" : "101" }, { "data" : [ @@ -1846,7 +1838,6 @@ "id" : "102" }, { - "id" : "103", "name" : "103", "data" : [ [ @@ -1861,7 +1852,8 @@ "Blog", 15 ] - ] + ], + "id" : "103" }, { "id" : "104", @@ -1900,6 +1892,7 @@ "id" : "105" }, { + "id" : "106", "data" : [ [ "Perl", @@ -1914,7 +1907,6 @@ 17 ] ], - "id" : "106", "name" : "106" }, { @@ -1936,6 +1928,7 @@ ] }, { + "id" : "108", "data" : [ [ "Perl", @@ -1950,12 +1943,9 @@ 20 ] ], - "name" : "108", - "id" : "108" + "name" : "108" }, { - "name" : "109", - "id" : "109", "data" : [ [ "Perl", @@ -1969,7 +1959,9 @@ "Blog", 22 ] - ] + ], + "name" : "109", + "id" : "109" }, { "data" : [ @@ -1990,8 +1982,6 @@ "id" : "110" }, { - "id" : "111", - "name" : "111", "data" : [ [ "Perl", @@ -2005,7 +1995,9 @@ "Blog", 17 ] - ] + ], + "name" : "111", + "id" : "111" }, { "data" : [ @@ -2026,6 +2018,8 @@ "id" : "112" }, { + "id" : "113", + "name" : "113", "data" : [ [ "Perl", @@ -2039,13 +2033,10 @@ "Blog", 19 ] - ], - "id" : "113", - "name" : "113" + ] }, { "id" : "114", - "name" : "114", "data" : [ [ "Perl", @@ -2059,9 +2050,11 @@ "Blog", 21 ] - ] + ], + "name" : "114" }, { + "name" : "115", "data" : [ [ "Perl", @@ -2076,10 +2069,11 @@ 20 ] ], - "id" : "115", - "name" : "115" + "id" : "115" }, { + "id" : "116", + "name" : "116", "data" : [ [ "Perl", @@ -2093,13 +2087,11 @@ "Blog", 17 ] - ], - "id" : "116", - "name" : "116" + ] }, { - "name" : "117", "id" : "117", + "name" : "117", "data" : [ [ "Perl", @@ -2134,8 +2126,8 @@ ] }, { - "name" : "119", "id" : "119", + "name" : "119", "data" : [ [ "Perl", @@ -2152,6 +2144,8 @@ ] }, { + "id" : "120", + "name" : "120", "data" : [ [ "Perl", @@ -2165,13 +2159,9 @@ "Blog", 21 ] - ], - "id" : "120", - "name" : "120" + ] }, { - "id" : "121", - "name" : "121", "data" : [ [ "Perl", @@ -2185,9 +2175,13 @@ "Blog", 17 ] - ] + ], + "name" : "121", + "id" : "121" }, { + "id" : "122", + "name" : "122", "data" : [ [ "Perl", @@ -2201,11 +2195,10 @@ "Blog", 20 ] - ], - "name" : "122", - "id" : "122" + ] }, { + "id" : "123", "data" : [ [ "Perl", @@ -2220,11 +2213,9 @@ 18 ] ], - "name" : "123", - "id" : "123" + "name" : "123" }, { - "id" : "124", "name" : "124", "data" : [ [ @@ -2239,9 +2230,12 @@ "Blog", 16 ] - ] + ], + "id" : "124" }, { + "id" : "125", + "name" : "125", "data" : [ [ "Perl", @@ -2255,13 +2249,9 @@ "Blog", 11 ] - ], - "name" : "125", - "id" : "125" + ] }, { - "id" : "126", - "name" : "126", "data" : [ [ "Perl", @@ -2275,9 +2265,13 @@ "Blog", 19 ] - ] + ], + "name" : "126", + "id" : "126" }, { + "id" : "127", + "name" : "127", "data" : [ [ "Perl", @@ -2291,13 +2285,10 @@ "Blog", 19 ] - ], - "name" : "127", - "id" : "127" + ] }, { "name" : "128", - "id" : "128", "data" : [ [ "Perl", @@ -2311,9 +2302,12 @@ "Blog", 15 ] - ] + ], + "id" : "128" }, { + "id" : "129", + "name" : "129", "data" : [ [ "Perl", @@ -2327,13 +2321,11 @@ "Blog", 14 ] - ], - "id" : "129", - "name" : "129" + ] }, { - "name" : "130", "id" : "130", + "name" : "130", "data" : [ [ "Perl", @@ -2368,6 +2360,7 @@ "id" : "131" }, { + "name" : "132", "data" : [ [ "Perl", @@ -2382,10 +2375,10 @@ 13 ] ], - "name" : "132", "id" : "132" }, { + "name" : "133", "data" : [ [ "Perl", @@ -2400,11 +2393,9 @@ 18 ] ], - "name" : "133", "id" : "133" }, { - "name" : "134", "id" : "134", "data" : [ [ @@ -2419,11 +2410,10 @@ "Blog", 15 ] - ] + ], + "name" : "134" }, { - "name" : "135", - "id" : "135", "data" : [ [ "Perl", @@ -2437,11 +2427,11 @@ "Blog", 17 ] - ] + ], + "name" : "135", + "id" : "135" }, { - "id" : "136", - "name" : "136", "data" : [ [ "Perl", @@ -2455,9 +2445,13 @@ "Blog", 19 ] - ] + ], + "name" : "136", + "id" : "136" }, { + "id" : "137", + "name" : "137", "data" : [ [ "Perl", @@ -2471,9 +2465,7 @@ "Blog", 17 ] - ], - "name" : "137", - "id" : "137" + ] }, { "id" : "138", @@ -2494,8 +2486,8 @@ ] }, { - "name" : "139", "id" : "139", + "name" : "139", "data" : [ [ "Perl", @@ -2512,6 +2504,8 @@ ] }, { + "id" : "140", + "name" : "140", "data" : [ [ "Perl", @@ -2525,11 +2519,10 @@ "Blog", 20 ] - ], - "id" : "140", - "name" : "140" + ] }, { + "id" : "141", "data" : [ [ "Perl", @@ -2544,10 +2537,10 @@ 20 ] ], - "name" : "141", - "id" : "141" + "name" : "141" }, { + "name" : "142", "data" : [ [ "Perl", @@ -2562,10 +2555,11 @@ 18 ] ], - "id" : "142", - "name" : "142" + "id" : "142" }, { + "id" : "143", + "name" : "143", "data" : [ [ "Perl", @@ -2579,13 +2573,10 @@ "Blog", 18 ] - ], - "name" : "143", - "id" : "143" + ] }, { "id" : "144", - "name" : "144", "data" : [ [ "Perl", @@ -2599,9 +2590,11 @@ "Blog", 17 ] - ] + ], + "name" : "144" }, { + "name" : "145", "data" : [ [ "Perl", @@ -2616,8 +2609,7 @@ 20 ] ], - "id" : "145", - "name" : "145" + "id" : "145" }, { "data" : [ @@ -2638,8 +2630,6 @@ "id" : "146" }, { - "id" : "147", - "name" : "147", "data" : [ [ "Perl", @@ -2653,9 +2643,13 @@ "Blog", 25 ] - ] + ], + "name" : "147", + "id" : "147" }, { + "id" : "148", + "name" : "148", "data" : [ [ "Perl", @@ -2669,9 +2663,7 @@ "Blog", 21 ] - ], - "name" : "148", - "id" : "148" + ] }, { "id" : "149", @@ -2692,8 +2684,8 @@ ] }, { - "name" : "150", "id" : "150", + "name" : "150", "data" : [ [ "Perl", @@ -2710,6 +2702,7 @@ ] }, { + "id" : "151", "data" : [ [ "Perl", @@ -2724,11 +2717,9 @@ 13 ] ], - "id" : "151", "name" : "151" }, { - "name" : "152", "id" : "152", "data" : [ [ @@ -2743,7 +2734,8 @@ "Blog", 17 ] - ] + ], + "name" : "152" }, { "data" : [ @@ -2760,11 +2752,10 @@ 17 ] ], -