From da96f382ee18109d6e94de35a30f66233be49457 Mon Sep 17 00:00:00 2001 From: Mohammad S Anwar Date: Thu, 24 Dec 2020 17:50:45 +0000 Subject: - Added solutions to week 91 by Colin Crain. --- challenge-091/colin-crain/perl/ch-1.pl | 121 ++++++ challenge-091/colin-crain/perl/ch-2.pl | 130 ++++++ challenge-091/colin-crain/raku/ch-1.raku | 24 ++ challenge-091/colin-crain/raku/ch-2.raku | 30 ++ stats/pwc-challenge-091.json | 578 ++++++++++++++------------- stats/pwc-current.json | 310 +++++++-------- stats/pwc-language-breakdown-summary.json | 52 +-- stats/pwc-language-breakdown.json | 636 +++++++++++++++--------------- stats/pwc-leaders.json | 388 +++++++++--------- stats/pwc-summary-1-30.json | 108 ++--- stats/pwc-summary-121-150.json | 102 ++--- stats/pwc-summary-151-180.json | 116 +++--- stats/pwc-summary-181-210.json | 114 +++--- stats/pwc-summary-211-240.json | 58 +-- stats/pwc-summary-31-60.json | 54 +-- stats/pwc-summary-61-90.json | 42 +- stats/pwc-summary-91-120.json | 108 ++--- stats/pwc-summary.json | 48 +-- 18 files changed, 1666 insertions(+), 1353 deletions(-) create mode 100644 challenge-091/colin-crain/perl/ch-1.pl create mode 100644 challenge-091/colin-crain/perl/ch-2.pl create mode 100644 challenge-091/colin-crain/raku/ch-1.raku create mode 100644 challenge-091/colin-crain/raku/ch-2.raku diff --git a/challenge-091/colin-crain/perl/ch-1.pl b/challenge-091/colin-crain/perl/ch-1.pl new file mode 100644 index 0000000000..bcaa8fbc37 --- /dev/null +++ b/challenge-091/colin-crain/perl/ch-1.pl @@ -0,0 +1,121 @@ +#! /opt/local/bin/perl5.26 +# +# number-speak.pl +# +# TASK #1 › Count Number +# Submitted by: Mohammad S Anwar +# You are given a positive number $N. +# +# Write a script to count number and display as you read it. +# +# Example 1: +# Input: $N = 1122234 +# Output: 21321314 +# (as we read "two 1 three 2 one 3 one 4") +# +# Example 2: +# Input: $N = 2333445 +# Output: 12332415 +# +# (as we read "one 2 three 3 two 4 one 5") +# +# Example 3: +# Input: $N = 12345 +# Output: 1112131415 +# +# (as we read "one 1 one 2 one 3 one 4 one 5") +# +# method: +# the puzzle here is to count the instances of a given +# digit as we read the number. The count starts at 1, and +# if the next number is the same as the previous, the +# count is incremented. +# +# 2020 colin crain +## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## + + + +use warnings; +use strict; +use feature ":5.26"; + +## ## ## ## ## MAIN: + + +my $num = shift @ARGV // '12227786622222222222222222222222222222'; + +## mention our input +say "input: ",$num; + +## split and count... +say "numerically ", speak_number( $num ); + +## ...using regex... +say "now using a regex: ", + join '', map { length($_), substr($_,0,1) } $num =~ m/1+|2+|3+|4+|5+|6+|7+|8+|9+|0+/g; + +## ...and spoken +say "now as she is spoke: ", speak_english( $num ); + + +## ## ## ## ## SUBS: + +sub speak_number { + my ($current, @digits) = split //, shift; + my $count = 1; + my $output = ''; + + for (@digits) { + ($count++, next) if ($_ == $current); + $output .= $count . $current; + ($current, $count) = ($_, 1); + } + + return $output . $count . $current; + +} + +sub speak_english { + use Lingua::EN::Inflexion; + my ($current, @digits) = split //, shift; + my $count = 1; + my @output; + my $mult = 0; + my %cardinal = ( 1 => 'ones', + 2 => 'twos', + 3 => 'threes', + 4 => 'fours', + 5 => 'fives', + 6 => 'sixes', + 7 => 'sevens', + 8 => 'eights', + 9 => 'nines', + 0 => 'zeros' ); + + for (@digits) { + ($count++, next) if ($_ == $current); + my $exp = inflect("<#nfw300:$count> "); + push @output, $exp; + ($current, $count) = ($_, 1); + $mult = 1; + } + + my $str = (join ', ', @output) . ($mult? " and " : ""); + return q(") . "\u$str" . inflect("<#nw300:$count> ") . q(."); + +} + + + +# say "\n-----------------------------------\n"; +# +# use Test::More; +# +# is speak_number(1122234), 21321314, 'Ex 1'; +# is speak_number(2333445), 12332415, 'Ex 2'; +# is speak_number(12345), 1112131415, 'Ex 3'; +# is speak_number(99968882222), 39163842, 'Ex I just made up '; +# +# +# done_testing(); diff --git a/challenge-091/colin-crain/perl/ch-2.pl b/challenge-091/colin-crain/perl/ch-2.pl new file mode 100644 index 0000000000..85bd99a2aa --- /dev/null +++ b/challenge-091/colin-crain/perl/ch-2.pl @@ -0,0 +1,130 @@ +#! /opt/local/bin/perl +# +# jump_street.pl +# +# TASK #2 › Jump Game +# Submitted by: Mohammad S Anwar +# You are given an array of positive numbers @N, where +# value at each index determines how far you are allowed +# to jump further. + +# Write a script to decide if you can jump to the last +# index. Print 1 if you are able to reach the last index +# otherwise 0. +# +# Example 1: +# Input: @N = (1, 2, 1, 2) +# Output: 1 +# +# as we jump one place from index 0 and then twoe places +# from index 1 to reach the last index. +# +# Example 2: +# Input: @N = (2,1,1,0,2) +# Output: 0 +# +# it is impossible to reach the last index. as we jump two +# places from index 0 to reach index 2, followed by one +# place jump from index 2 to reach the index 3. once you +# reached the index 3, you can't go any further because +# you can only jump 0 position further. +# +# method: +# +# a silly little game, but we'll need to establish some +# groundrules. First, do we need to land exactly on the +# last element or can we overshoot? Should we wait and see +# if Mohammad goes back and clarifies this before solving? +# I think from the language it implies we should be +# jumping _to_ the last index _exactly_. So if we +# overshoot, then there's no way to get back and we fail. +# +# If that's the case then there are two ways to fail: to +# either land on a zero and be unable to continue, or to +# overshoot the mark. +# +# I would also point out that 0 is not positive, but is +# used in an example. Thus we will rephrase the input as +# an "array of non-negative numbers" which will include +# the number 0. +# +# So we keep tabs on an index value, advancing it by the +# value of the array at that index. If that value is +# either 0 or undef, then we fail. +# +# If the index is the end of the array we win and stop +# there. +# +# Continue until we win or lose. +# +# I like the idea of allowing negative values to move +# backwards. In this case the failure modes would be the +# same, with the addition of a third: if we ever visited +# an element twice it would indicate we have entered a +# loop, and will repeat without reaching the end. A little +# more complicated in the possible pathways but still will +# always resolve sooner or later. +# +# 2020 colin crain +## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## + + + +use warnings; +use strict; +use feature ":5.26"; + + +## ## ## ## ## SUBS: + +sub jump_forward { +## minimal version as described. +## Array -> 1|0 +## returns 1 on success, 0 on failure + my $idx = 0; + while ( my $jump = $_[$idx] ) { + $idx += $jump; + return 1 if $idx == @_ - 1; + } + return 0; +} + +sub jump_around { +## a more robust game allowing negative values. +## fails on +## exceeding array bounds, +## landing on 0 (cannot jump further) +## landing on position twice (signifying a closed loop) +## wins +## by landing on last element +## returns on determination + my @array = @_; + my $idx = 0; + my $last = scalar @array - 1; + my %visited; + while (1) { + my $next = $idx + $array[$idx]; + return 1 if $next == $last; ## win + return 0 if $next == $idx; ## stuck + return 0 if $next < 0 or $next > $last; ## out of bounds + return 0 if exists $visited{$next}; ## looping + $idx = $next; + $visited{$idx} = 1; + } +} + +use Test::More; + +is jump_forward(1, 2, 1, 2), 1, 'forward ex 1: success!'; +is jump_forward(2,1,1,0,2), 0, 'forward ex 2: stuck on 0'; +is jump_forward(2,1,1,1,0), 1, 'forward: ok, last ele 0'; + +is jump_around(1, 2, 1, 2), 1, 'around ex 1: success!'; +is jump_around(2,1,1,0,2), 0, 'around ex 2: stuck on 0'; +is jump_around(2,1,1,1,0), 1, 'around: ok, last ele 0'; +is jump_around(2,3,1,-2,5), 1, 'around: ok: back and forth and home'; +is jump_around(2,3,1,-12,5), 0, 'around: fail: back too far'; +is jump_around(2,13,1,-2,5), 0, 'around: fail: forward too far'; + + +done_testing(); diff --git a/challenge-091/colin-crain/raku/ch-1.raku b/challenge-091/colin-crain/raku/ch-1.raku new file mode 100644 index 0000000000..16350d2b8c --- /dev/null +++ b/challenge-091/colin-crain/raku/ch-1.raku @@ -0,0 +1,24 @@ +#!/usr/bin/env perl6 +# +# +# .raku +# +# +# +# 2020 colin crain +## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## + + + +unit sub MAIN (Int $num = 2244444431111111) ; + +say $num; + +my $regex = /1+|2+|3+|4+|5+|6+|7+|8+|9+|0+/; + +($num ~~ m:g/$regex/) + .map({|($_.chars, substr($_,0,1))}) ## need slip to slip in + .join + .say; + + diff --git a/challenge-091/colin-crain/raku/ch-2.raku b/challenge-091/colin-crain/raku/ch-2.raku new file mode 100644 index 0000000000..d212d22eee --- /dev/null +++ b/challenge-091/colin-crain/raku/ch-2.raku @@ -0,0 +1,30 @@ +#!/usr/bin/env perl6 +# +# +# .raku +# +# +# +# 2020 colin crain +## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## + + +unit sub MAIN (*@array) ; + +@array.elems == 0 and @array = 1,2,15,2; +@array.elems == 1 and do { say 1; exit }; + +my $idx = 0; +while my $jump = @array[$idx] { + $idx += $jump; + $idx == @array.end and do { say 1; exit }; +} +say 0; + + + + + + + + diff --git a/stats/pwc-challenge-091.json b/stats/pwc-challenge-091.json index 8ed473acd1..640090129a 100644 --- a/stats/pwc-challenge-091.json +++ b/stats/pwc-challenge-091.json @@ -2,201 +2,8 @@ "legend" : { "enabled" : 0 }, - "series" : [ - { - "colorByPoint" : 1, - "data" : [ - { - "drilldown" : "Aaron Smith", - "y" : 3, - "name" : "Aaron Smith" - }, - { - "name" : "Abigail", - "drilldown" : "Abigail", - "y" : 4 - }, - { - "name" : "Alexander Karelas", - "y" : 2, - "drilldown" : "Alexander Karelas" - }, - { - "drilldown" : "Alexander Pankoff", - "y" : 2, - "name" : "Alexander Pankoff" - }, - { - "y" : 3, - "drilldown" : "Andrew Shitov", - "name" : "Andrew Shitov" - }, - { - "name" : "Arne Sommer", - "y" : 5, - "drilldown" : "Arne Sommer" - }, - { - "drilldown" : "Athanasius", - "y" : 4, - "name" : "Athanasius" - }, - { - "name" : "Cheok-Yin Fung", - "y" : 2, - "drilldown" : "Cheok-Yin Fung" - }, - { - "name" : "Colin Crain", - "drilldown" : "Colin Crain", - "y" : 1 - }, - { - "name" : "Cristina Heredia", - "drilldown" : "Cristina Heredia", - "y" : 2 - }, - { - "y" : 3, - "drilldown" : "Dave Jacoby", - "name" : "Dave Jacoby" - }, - { - "y" : 2, - "drilldown" : "Duncan C. White", - "name" : "Duncan C. White" - }, - { - "y" : 2, - "drilldown" : "E. Choroba", - "name" : "E. Choroba" - }, - { - "y" : 4, - "drilldown" : "Flavio Poletti", - "name" : "Flavio Poletti" - }, - { - "drilldown" : "Jaldhar H. Vyas", - "y" : 5, - "name" : "Jaldhar H. Vyas" - }, - { - "name" : "James Smith", - "drilldown" : "James Smith", - "y" : 2 - }, - { - "y" : 2, - "drilldown" : "Jan Krnavek", - "name" : "Jan Krnavek" - }, - { - "drilldown" : "Joel Crosswhite", - "y" : 2, - "name" : "Joel Crosswhite" - }, - { - "name" : "Jorg Sommrey", - "y" : 2, - "drilldown" : "Jorg Sommrey" - }, - { - "y" : 4, - "drilldown" : "Julio de Castro", - "name" : "Julio de Castro" - }, - { - "name" : "Kang-min Liu", - "y" : 4, - "drilldown" : "Kang-min Liu" - }, - { - "name" : "Laurent Rosenfeld", - "y" : 5, - "drilldown" : "Laurent Rosenfeld" - }, - { - "name" : "Lubos Kolouch", - "drilldown" : "Lubos Kolouch", - "y" : 2 - }, - { - "name" : "Mark Anderson", - "y" : 2, - "drilldown" : "Mark Anderson" - }, - { - "name" : "Mimosinnet", - "y" : 2, - "drilldown" : "Mimosinnet" - }, - { - "y" : 2, - "drilldown" : "Niels van Dijke", - "name" : "Niels van Dijke" - }, - { - "name" : "Nuno Vieira", - "drilldown" : "Nuno Vieira", - "y" : 2 - }, - { - "name" : "Paulo Custodio", - "drilldown" : "Paulo Custodio", - "y" : 2 - }, - { - "y" : 2, - "drilldown" : "Pete Houston", - "name" : "Pete Houston" - }, - { - "drilldown" : "Philip Hood", - "y" : 2, - "name" : "Philip Hood" - }, - { - "drilldown" : "Roger Bell_West", - "y" : 5, - "name" : "Roger Bell_West" - }, - { - "name" : "Simon Green", - "drilldown" : "Simon Green", - "y" : 3 - }, - { - "drilldown" : "Simon Proctor", - "y" : 2, - "name" : "Simon Proctor" - }, - { - "name" : "Stuart Little", - "drilldown" : "Stuart Little", - "y" : 2 - }, - { - "y" : 4, - "drilldown" : "Ulrich Rieke", - "name" : "Ulrich Rieke" - }, - { - "drilldown" : "W. Luis Mochan", - "y" : 3, - "name" : "W. Luis Mochan" - }, - { - "name" : "Wanderdoc", - "y" : 2, - "drilldown" : "Wanderdoc" - } - ], - "name" : "Perl Weekly Challenge - 091" - } - ], - "chart" : { - "type" : "column" + "title" : { + "text" : "Perl Weekly Challenge - 091" }, "drilldown" : { "series" : [ @@ -215,6 +22,8 @@ "id" : "Aaron Smith" }, { + "name" : "Abigail", + "id" : "Abigail", "data" : [ [ "Perl", @@ -224,9 +33,7 @@ "Blog", 2 ] - ], - "id" : "Abigail", - "name" : "Abigail" + ] }, { "data" : [ @@ -239,18 +46,16 @@ "id" : "Alexander Karelas" }, { + "name" : "Alexander Pankoff", + "id" : "Alexander Pankoff", "data" : [ [ "Perl", 2 ] - ], - "name" : "Alexander Pankoff", - "id" : "Alexander Pankoff" + ] }, { - "id" : "Andrew Shitov", - "name" : "Andrew Shitov", "data" : [ [ "Raku", @@ -260,11 +65,11 @@ "Blog", 1 ] - ] + ], + "name" : "Andrew Shitov", + "id" : "Andrew Shitov" }, { - "name" : "Arne Sommer", - "id" : "Arne Sommer", "data" : [ [ "Perl", @@ -278,7 +83,9 @@ "Blog", 1 ] - ] + ], + "id" : "Arne Sommer", + "name" : "Arne Sommer" }, { "id" : "Athanasius", @@ -301,13 +108,21 @@ 2 ] ], - "id" : "Cheok-Yin Fung", - "name" : "Cheok-Yin Fung" + "name" : "Cheok-Yin Fung", + "id" : "Cheok-Yin Fung" }, { - "id" : "Colin Crain", "name" : "Colin Crain", + "id" : "Colin Crain", "data" : [ + [ + "Perl", + 2 + ], + [ + "Raku", + 2 + ], [ "Blog", 1 @@ -315,16 +130,18 @@ ] }, { + "name" : "Cristina Heredia", + "id" : "Cristina Heredia", "data" : [ [ "Perl", 2 ] - ], - "name" : "Cristina Heredia", - "id" : "Cristina Heredia" + ] }, { + "id" : "Dave Jacoby", + "name" : "Dave Jacoby", "data" : [ [ "Perl", @@ -334,19 +151,17 @@ "Blog", 1 ] - ], - "name" : "Dave Jacoby", - "id" : "Dave Jacoby" + ] }, { + "id" : "Duncan C. White", + "name" : "Duncan C. White", "data" : [ [ "Perl", 2 ] - ], - "name" : "Duncan C. White", - "id" : "Duncan C. White" + ] }, { "data" : [ @@ -355,10 +170,12 @@ 2 ] ], - "id" : "E. Choroba", - "name" : "E. Choroba" + "name" : "E. Choroba", + "id" : "E. Choroba" }, { + "id" : "Flavio Poletti", + "name" : "Flavio Poletti", "data" : [ [ "Perl", @@ -368,13 +185,9 @@ "Blog", 2 ] - ], - "id" : "Flavio Poletti", - "name" : "Flavio Poletti" + ] }, { - "name" : "Jaldhar H. Vyas", - "id" : "Jaldhar H. Vyas", "data" : [ [ "Perl", @@ -388,17 +201,19 @@ "Blog", 1 ] - ] + ], + "name" : "Jaldhar H. Vyas", + "id" : "Jaldhar H. Vyas" }, { + "name" : "James Smith", + "id" : "James Smith", "data" : [ [ "Perl", 2 ] - ], - "id" : "James Smith", - "name" : "James Smith" + ] }, { "id" : "Jan Krnavek", @@ -411,8 +226,8 @@ ] }, { - "id" : "Joel Crosswhite", "name" : "Joel Crosswhite", + "id" : "Joel Crosswhite", "data" : [ [ "Perl", @@ -421,18 +236,16 @@ ] }, { - "name" : "Jorg Sommrey", - "id" : "Jorg Sommrey", "data" : [ [ "Perl", 2 ] - ] + ], + "name" : "Jorg Sommrey", + "id" : "Jorg Sommrey" }, { - "name" : "Julio de Castro", - "id" : "Julio de Castro", "data" : [ [ "Perl", @@ -442,9 +255,13 @@ "Raku", 2 ] - ] + ], + "id" : "Julio de Castro", + "name" : "Julio de Castro" }, { + "id" : "Kang-min Liu", + "name" : "Kang-min Liu", "data" : [ [ "Raku", @@ -454,9 +271,7 @@ "Blog", 2 ] - ], - "name" : "Kang-min Liu", - "id" : "Kang-min Liu" + ] }, { "data" : [ @@ -473,8 +288,8 @@ 1 ] ], - "id" : "Laurent Rosenfeld", - "name" : "Laurent Rosenfeld" + "name" : "Laurent Rosenfeld", + "id" : "Laurent Rosenfeld" }, { "data" : [ @@ -497,24 +312,24 @@ ] }, { - "name" : "Mimosinnet", - "id" : "Mimosinnet", "data" : [ [ "Raku", 2 ] - ] + ], + "name" : "Mimosinnet", + "id" : "Mimosinnet" }, { + "id" : "Niels van Dijke", + "name" : "Niels van Dijke", "data" : [ [ "Perl", 2 ] - ], - "id" : "Niels van Dijke", - "name" : "Niels van Dijke" + ] }, { "data" : [ @@ -537,18 +352,18 @@ ] }, { + "id" : "Pete Houston", + "name" : "Pete Houston", "data" : [ [ "Perl", 2 ] - ], - "id" : "Pete Houston", - "name" : "Pete Houston" + ] }, { - "id" : "Philip Hood", "name" : "Philip Hood", + "id" : "Philip Hood", "data" : [ [ "Raku", @@ -557,8 +372,6 @@ ] }, { - "name" : "Roger Bell_West", - "id" : "Roger Bell_West", "data" : [ [ "Perl", @@ -572,11 +385,13 @@ "Blog", 1 ] - ] + ], + "name" : "Roger Bell_West", + "id" : "Roger Bell_West" }, { - "id" : "Simon Green", "name" : "Simon Green", + "id" : "Simon Green", "data" : [ [ "Perl", @@ -589,28 +404,26 @@ ] }, { - "name" : "Simon Proctor", - "id" : "Simon Proctor", "data" : [ [ "Raku", 2 ] - ] + ], + "name" : "Simon Proctor", + "id" : "Simon Proctor" }, { + "name" : "Stuart Little", + "id" : "Stuart Little", "data" : [ [ "Raku", 2 ] - ], - "id" : "Stuart Little", - "name" : "Stuart Little" + ] }, { - "name" : "Ulrich Rieke", - "id" : "Ulrich Rieke", "data" : [ [ "Perl", @@ -620,7 +433,9 @@ "Raku", 2 ] - ] + ], + "id" : "Ulrich Rieke", + "name" : "Ulrich Rieke" }, { "data" : [ @@ -633,39 +448,27 @@ 1 ] ], - "name" : "W. Luis Mochan", - "id" : "W. Luis Mochan" + "id" : "W. Luis Mochan", + "name" : "W. Luis Mochan" }, { - "id" : "Wanderdoc", - "name" : "Wanderdoc", "data" : [ [ "Perl", 2 ] - ] + ], + "name" : "Wanderdoc", + "id" : "Wanderdoc" } ] }, - "plotOptions" : { - "series" : { - "dataLabels" : { - "enabled" : 1, - "format" : "{point.y}" - }, - "borderWidth" : 0 - } - }, - "title" : { - "text" : "Perl Weekly Challenge - 091" - }, - "subtitle" : { - "text" : "[Champions: 37] Last updated at 2020-12-22 06:37:16 GMT" - }, "xAxis" : { "type" : "category" }, + "chart" : { + "type" : "column" + }, "tooltip" : { "headerFormat" : "{series.name}
", "followPointer" : 1, @@ -675,5 +478,210 @@ "title" : { "text" : "Total Solutions" } + }, + "subtitle" : { + "text" : "[Champions: 37] Last updated at 2020-12-24 17:49:55 GMT" + }, + "series" : [ + { + "colorByPoint" : 1, + "name" : "Perl Weekly Challenge - 091", + "data" : [ + { + "name" : "Aaron Smith", + "drilldown" : "Aaron Smith", + "y" : 3 + }, + { + "drilldown" : "Abigail", + "y" : 4, + "name" : "Abigail" + }, + { + "y" : 2, + "drilldown" : "Alexander Karelas", + "name" : "Alexander Karelas" + }, + { + "name" : "Alexander Pankoff", + "drilldown" : "Alexander Pankoff", + "y" : 2 + }, + { + "y" : 3, + "drilldown" : "Andrew Shitov", + "name" : "Andrew Shitov" + }, + { + "y" : 5, + "drilldown" : "Arne Sommer", + "name" : "Arne Sommer" + }, + { + "name" : "Athanasius", + "drilldown" : "Athanasius", + "y" : 4 + }, + { + "name" : "Cheok-Yin Fung", + "y" : 2, + "drilldown" : "Cheok-Yin Fung" + }, + { + "name" : "Colin Crain", + "drilldown" : "Colin Crain", + "y" : 5 + }, + { + "y" : 2, + "drilldown" : "Cristina Heredia", + "name" : "Cristina Heredia" + }, + { + "y" : 3, + "drilldown" : "Dave Jacoby", + "name" : "Dave Jacoby" + }, + { + "name" : "Duncan C. White", + "drilldown" : "Duncan C. White", + "y" : 2 + }, + { + "drilldown" : "E. Choroba", + "y" : 2, + "name" : "E. Choroba" + }, + { + "y" : 4, + "drilldown" : "Flavio Poletti", + "name" : "Flavio Poletti" + }, + { + "name" : "Jaldhar H. Vyas", + "y" : 5, + "drilldown" : "Jaldhar H. Vyas" + }, + { + "drilldown" : "James Smith", + "y" : 2, + "name" : "James Smith" + }, + { + "name" : "Jan Krnavek", + "drilldown" : "Jan Krnavek", + "y" : 2 + }, + { + "name" : "Joel Crosswhite", + "y" : 2, + "drilldown" : "Joel Crosswhite" + }, + { + "name" : "Jorg Sommrey", + "y" : 2, + "drilldown" : "Jorg Sommrey" + }, + { + "y" : 4, + "drilldown" : "Julio de Castro", + "name" : "Julio de Castro" + }, + { + "name" : "Kang-min Liu", + "drilldown" : "Kang-min Liu", + "y" : 4 + }, + { + "name" : "Laurent Rosenfeld", + "y" : 5, + "drilldown" : "Laurent Rosenfeld" + }, + { + "name" : "Lubos Kolouch", + "y" : 2, + "drilldown" : "Lubos Kolouch" + }, + { + "name" : "Mark Anderson", + "drilldown" : "Mark Anderson", + "y" : 2 + }, + { + "drilldown" : "Mimosinnet", + "y" : 2, + "name" : "Mimosinnet" + }, + { + "y" : 2, + "drilldown" : "Niels van Dijke", + "name" : "Niels van Dijke" + }, + { + "drilldown" : "Nuno Vieira", + "y" : 2, + "name" : "Nuno Vieira" + }, + { + "name" : "Paulo Custodio", + "drilldown" : "Paulo Custodio", + "y" : 2 + }, + { + "drilldown" : "Pete Houston", + "y" : 2, + "name" : "Pete Houston" + }, + { + "y" : 2, + "drilldown" : "Philip Hood", + "name" : "Philip Hood" + }, + { + "drilldown" : "Roger Bell_West", + "y" : 5, + "name" : "Roger Bell_West" + }, + { + "y" : 3, + "drilldown" : "Simon Green", + "name" : "Simon Green" + }, + { + "drilldown" : "Simon Proctor", + "y" : 2, + "name" : "Simon Proctor" + }, + { + "name" : "Stuart Little", + "drilldown" : "Stuart Little", + "y" : 2 + }, + { + "name" : "Ulrich Rieke", + "drilldown" : "Ulrich Rieke", + "y" : 4 + }, + { + "drilldown" : "W. Luis Mochan", + "y" : 3, + "name" : "W. Luis Mochan" + }, + { + "name" : "Wanderdoc", + "drilldown" : "Wanderdoc", + "y" : 2 + } + ] + } + ], + "plotOptions" : { + "series" : { + "dataLabels" : { + "format" : "{point.y}", + "enabled" : 1 + }, + "borderWidth" : 0 + } } } diff --git a/stats/pwc-current.json b/stats/pwc-current.json index 5fab5eef82..27488b0101 100644 --- a/stats/pwc-current.json +++ b/stats/pwc-current.json @@ -1,131 +1,4 @@ { - "legend" : { - "enabled" : 0 - }, - "title" : { - "text" : "Perl Weekly Challenge - 092" - }, - "plotOptions" : { - "series" : { - "dataLabels" : { - "format" : "{point.y}", - "enabled" : 1 - }, - "borderWidth" : 0 - } - }, - "yAxis" : { - "title" : { - "text" : "Total Solutions" - } - }, - "subtitle" : { - "text" : "[Champions: 17] Last updated at 2020-12-24 01:50:22 GMT" - }, - "series" : [ - { - "colorByPoint" : 1, - "name" : "Perl Weekly Challenge - 092", - "data" : [ - { - "y" : 2, - "drilldown" : "Alexander Pankoff", - "name" : "Alexander Pankoff" - }, - { - "y" : 2, - "name" : "Andrew Shitov", - "drilldown" : "Andrew Shitov" - }, - { - "drilldown" : "Dave Jacoby", - "name" : "Dave Jacoby", - "y" : 2 - }, - { - "y" : 2, - "name" : "E. Choroba", - "drilldown" : "E. Choroba" - }, - { - "name" : "Flavio Poletti", - "drilldown" : "Flavio Poletti", - "y" : 4 - }, - { - "y" : 3, - "name" : "James Smith", - "drilldown" : "James Smith" - }, - { - "name" : "Jorg Sommrey", - "drilldown" : "Jorg Sommrey", - "y" : 2 - }, - { - "name" : "Mark Anderson", - "drilldown" : "Mark Anderson", - "y" : 2 - }, - { - "name" : "Niels van Dijke", - "drilldown" : "Niels van Dijke", - "y" : 2 - }, - { - "y" : 2, - "drilldown" : "Nuno Vieira", - "name" : "Nuno Vieira" - }, - { - "y" : 2, - "drilldown" : "Paulo Custodio", - "name" : "Paulo Custodio" - }, - { - "y" : 2, - "drilldown" : "Pete Houston", - "name" : "Pete Houston" - }, - { - "y" : 2, - "drilldown" : "Philip Hood", - "name" : "Philip Hood" - }, - { - "drilldown" : "Roger Bell_West", - "name" : "Roger Bell_West", - "y" : 4 - }, - { - "name" : "Simon Green", - "drilldown" : "Simon Green", - "y" : 3 - }, - { - "drilldown" : "Stuart Little", - "name" : "Stuart Little", - "y" : 2 - }, - { - "name" : "W. Luis Mochan", - "drilldown" : "W. Luis Mochan", - "y" : 3 - } - ] - } - ], - "tooltip" : { - "followPointer" : 1, - "pointFormat" : "{point.name}: {point.y:f}
", - "headerFormat" : "{series.name}
" - }, - "chart" : { - "type" : "column" - }, - "xAxis" : { - "type" : "category" - }, "drilldown" : { "series" : [ { @@ -139,7 +12,6 @@ "id" : "Alexander Pankoff" }, { - "name" : "Andrew Shitov", "id" : "Andrew Shitov", "data" : [ [ @@ -150,29 +22,31 @@ "Blog", 1 ] - ] + ], + "name" : "Andrew Shitov" }, { + "name" : "Dave Jacoby", "data" : [ [ "Perl", 2 ] ], - "id" : "Dave Jacoby", - "name" : "Dave Jacoby" + "id" : "Dave Jacoby" }, { - "name" : "E. Choroba", + "id" : "E. Choroba", "data" : [ [ "Perl", 2 ] ], - "id" : "E. Choroba" + "name" : "E. Choroba" }, { + "name" : "Flavio Poletti", "data" : [ [ "Perl", @@ -183,8 +57,7 @@ 2 ] ], - "id" : "Flavio Poletti", - "name" : "Flavio Poletti" + "id" : "Flavio Poletti" }, { "id" : "James Smith", @@ -202,17 +75,17 @@ }, { "name" : "Jorg Sommrey", - "id" : "Jorg Sommrey", "data" : [ [ "Perl", 2 ] - ] + ], + "id" : "Jorg Sommrey" }, { - "name" : "Mark Anderson", "id" : "Mark Anderson", + "name" : "Mark Anderson", "data" : [ [ "Raku", @@ -221,44 +94,44 @@ ] }, { + "id" : "Niels van Dijke", "name" : "Niels van Dijke", "data" : [ [ "Perl", 2 ] - ], - "id" : "Niels van Dijke" + ] }, { - "id" : "Nuno Vieira", "data" : [ [ "Perl", 2 ] ], - "name" : "Nuno Vieira" + "name" : "Nuno Vieira", + "id" : "Nuno Vieira" }, { - "name" : "Paulo Custodio", + "id" : "Paulo Custodio", "data" : [ [ "Perl", 2 ] ], - "id" : "Paulo Custodio" + "name" : "Paulo Custodio" }, { - "name" : "Pete Houston", + "id" : "Pete Houston", "data" : [ [ "Perl", 2 ] ], - "id" : "Pete Houston" + "name" : "Pete Houston" }, { "id" : "Philip Hood", @@ -281,11 +154,10 @@ 2 ] ], - "id" : "Roger Bell_West", - "name" : "Roger Bell_West" + "name" : "Roger Bell_West", + "id" : "Roger Bell_West" }, { - "id" : "Simon Green", "data" : [ [ "Perl", @@ -296,7 +168,8 @@ 1 ] ], - "name" : "Simon Green" + "name" : "Simon Green", + "id" : "Simon Green" }, { "data" : [ @@ -305,11 +178,11 @@ 2 ] ], - "id" : "Stuart Little", - "name" : "Stuart Little" + "name" : "Stuart Little", + "id" : "Stuart Little" }, { - "name" : "W. Luis Mochan", + "id" : "W. Luis Mochan", "data" : [ [ "Perl", @@ -320,8 +193,135 @@ 1 ] ], - "id" : "W. Luis Mochan" + "name" : "W. Luis Mochan" } ] - } + }, + "chart" : { + "type" : "column" + }, + "legend" : { + "enabled" : 0 + }, + "tooltip" : { + "pointFormat" : "{point.name}: {point.y:f}
", + "followPointer" : 1, + "headerFormat" : "{series.name}
" + }, + "plotOptions" : { + "series" : { + "dataLabels" : { + "enabled" : 1, + "format" : "{point.y}" + }, + "borderWidth" : 0 + } + }, + "yAxis" : { + "title" : { + "text" : "Total Solutions" + } + }, + "subtitle" : { + "text" : "[Champions: 17] Last updated at 2020-12-24 17:50:20 GMT" + }, + "xAxis" : { + "type" : "category" + }, + "title" : { + "text" : "Perl Weekly Challenge - 092" + }, + "series" : [ + { + "colorByPoint" : 1, + "name" : "Perl Weekly Challenge - 092", + "data" : [ + { + "y" : 2, + "drilldown" : "Alexander Pankoff", + "name" : "Alexander Pankoff" + }, + { + "drilldown" : "Andrew Shitov", + "y" : 2, + "name" : "Andrew Shitov" + }, + { + "drilldown" : "Dave Jacoby", + "y" : 2, + "name" : "Dave Jacoby" + }, + { + "drilldown" : "E. Choroba", + "y" : 2, + "name" : "E. Choroba" + }, + { + "drilldown" : "Flavio Poletti", + "y" : 4, + "name" : "Flavio Poletti" + }, + { + "name" : "James Smith", + "drilldown" : "James Smith", + "y" : 3 + }, + { + "name" : "Jorg Sommrey", + "drilldown" : "Jorg Sommrey", + "y" : 2 + }, + { + "name" : "Mark Anderson", + "y" : 2, + "drilldown" : "Mark Anderson" + }, + { + "drilldown" : "Niels van Dijke", + "y" : 2, + "name" : "Niels van Dijke" + }, + { + "name" : "Nuno Vieira", + "y" : 2, + "drilldown" : "Nuno Vieira" + }, + { + "y" : 2, + "drilldown" : "Paulo Custodio", + "name" : "Paulo Custodio" + }, + { + "drilldown" : "Pete Houston", + "y" : 2, + "name" : "Pete Houston" + }, + { + "name" : "Philip Hood", + "y" : 2, + "drilldown" : "Philip Hood" + }, + { + "y" : 4, + "drilldown" : "Roger Bell_West", + "name" : "Roger Bell_West" + }, + { + "name" : "Simon Green", + "drilldown" : "Simon Green", + "y" : 3 + }, + { + "name" : "Stuart Little", + "y" : 2, + "drilldown" : "Stuart Little" + }, + { + "name" : "W. Luis Mochan", + "drilldown" : "W. Luis Mochan", + "y" : 3 + } + ] + } + ] } diff --git a/stats/pwc-language-breakdown-summary.json b/stats/pwc-language-breakdown-summary.json index 9fa174cf68..11da29fb8b 100644 --- a/stats/pwc-language-breakdown-summary.json +++ b/stats/pwc-language-breakdown-summary.json @@ -1,10 +1,22 @@ { - "title" : { - "text" : "Perl Weekly Challenge Contributions [2019 - 2020]" - }, "legend" : { "enabled" : "false" }, + "chart" : { + "type" : "column" + }, + "tooltip" : { + "pointFormat" : "{point.y:.0f}" + }, + "subtitle" : { + "text" : "Last updated at 2020-12-24 17:50:20 GMT" + }, + "yAxis" : { + "title" : { + "text" : null + }, + "min" : 0 + }, "xAxis" : { "type" : "category", "labels" : { @@ -14,6 +26,9 @@ } } }, + "title" : { + "text" : "Perl Weekly Challenge Contributions [2019 - 2020]" + }, "series" : [ { "data" : [ @@ -23,41 +38,26 @@ ], [ "Perl", - 4172 + 4174 ], [ "Raku", - 2769 + 2771 ] ], "name" : "Contributions", "dataLabels" : { - "format" : "{point.y:.0f}", + "y" : 10, + "color" : "#FFFFFF", + "rotation" : -90, "style" : { "fontSize" : "13px", "fontFamily" : "Verdana, sans-serif" }, + "align" : "right", "enabled" : "true", - "color" : "#FFFFFF", - "rotation" : -90, - "y" : 10, - "align" : "right" + "format" : "{point.y:.0f}" } } - ], - "subtitle" : { - "text" : "Last updated at 2020-12-24 01:50:22 GMT" - }, - "tooltip" : { - "pointFormat" : "{point.y:.0f}" - }, - "chart" : { - "type" : "column" - }, - "yAxis" : { - "min" : 0, - "title" : { - "text" : null - } - } + ] } diff --git a/stats/pwc-language-breakdown.json b/stats/pwc-language-breakdown.json index b3dd72c19c..c5772ea1fb 100644 --- a/stats/pwc-language-breakdown.json +++ b/stats/pwc-language-breakdown.json @@ -1,35 +1,4 @@ { - "legend" : { - "enabled" : "false" - }, - "title" : { - "text" : "Perl Weekly Challenge Language" - }, - "plotOptions" : { - "series" : { - "borderWidth" : 0, - "dataLabels" : { - "format" : "{point.y}", - "enabled" : 1 - } - } - }, - "yAxis" : { - "title" : { - "text" : "Total Solutions" - } - }, - "chart" : { - "type" : "column" - }, - "tooltip" : { - "pointFormat" : "Challenge {point.name}: {point.y:f}
", - "headerFormat" : "", - "followPointer" : "true" - }, - "subtitle" : { - "text" : "Click the columns to drilldown the language breakdown. Last updated at 2020-12-24 01:50:22 GMT" - }, "series" : [ { "data" : [ @@ -39,129 +8,129 @@ "name" : "#001" }, { - "y" : 116, "name" : "#002", + "y" : 116, "drilldown" : "002" }, { + "drilldown" : "003", "y" : 73, - "name" : "#003", - "drilldown" : "003" + "name" : "#003" }, { - "y" : 93, "name" : "#004", + "y" : 93, "drilldown" : "004" }, { - "y" : 74, "drilldown" : "005", + "y" : 74, "name" : "#005" }, { - "y" : 54, "drilldown" : "006", + "y" : 54, "name" : "#006" }, { - "y" : 61, "name" : "#007", - "drilldown" : "007" + "drilldown" : "007", + "y" : 61 }, { - "name" : "#008", "drilldown" : "008", - "y" : 74 + "y" : 74, + "name" : "#008" }, { - "y" : 72, "name" : "#009", + "y" : 72, "drilldown" : "009" }, { - "drilldown" : "010", "name" : "#010", + "drilldown" : "010", "y" : 62 }, { + "drilldown" : "011", "y" : 81, - "name" : "#011", - "drilldown" : "011" + "name" : "#011" }, { "y" : 85, - "name" : "#012", - "drilldown" : "012" + "drilldown" : "012", + "name" : "#012" }, { - "y" : 80, + "name" : "#013", "drilldown" : "013", - "name" : "#013" + "y" : 80 }, { + "y" : 98, "drilldown" : "014", - "name" : "#014", - "y" : 98 + "name" : "#014" }, { - "y" : 95, "drilldown" : "015", + "y" : 95, "name" : "#015" }, { - "y" : 68, "name" : "#016", + "y" : 68, "drilldown" : "016" }, { - "name" : "#017", + "y" : 81, "drilldown" : "017", - "y" : 81 + "name" : "#017" }, { - "y" : 78, + "name" : "#018", "drilldown" : "018", - "name" : "#018" + "y" : 78 }, { "name" : "#019", - "drilldown" : "019", - "y" : 99 + "y" : 99, + "drilldown" : "019" }, { - "drilldown" : "020", "name" : "#020", + "drilldown" : "020", "y" : 97 }, { "drilldown" : "021", - "name" : "#021", - "y" : 69 + "y" : 69, + "name" : "#021" }, { "y" : 65, - "name" : "#022", - "drilldown" : "022" + "drilldown" : "022", + "name" : "#022" }, { - "name" : "#023", "drilldown" : "023", - "y" : 93 + "y" : 93, + "name" : "#023" }, { - "y" : 72, "name" : "#024", - "drilldown" : "024" + "drilldown" : "024", + "y" : 72 }, { - "y" : 55, "name" : "#025", - "drilldown" : "025" + "drilldown" : "025", + "y" : 55 }, { + "y" : 72, "drilldown" : "026", - "name" : "#026", - "y" : 72 + "name" : "#026" }, { "name" : "#027", @@ -170,8 +139,8 @@ }, { "name" : "#028", - "drilldown" : "028", - "y" : 80 + "y" : 80, + "drilldown" : "028" }, { "name" : "#029", @@ -179,34 +148,34 @@ "y" : 79 }, { - "y" : 117, "drilldown" : "030", + "y" : 117, "name" : "#030" }, { "name" : "#031", - "drilldown" : "031", - "y" : 89 + "y" : 89, + "drilldown" : "031" }, { "y" : 94, - "name" : "#032", - "drilldown" : "032" + "drilldown" : "032", + "name" : "#032" }, { - "drilldown" : "033", "name" : "#033", + "drilldown" : "033", "y" : 110 }, { "y" : 64, - "name" : "#034", - "drilldown" : "034" + "drilldown" : "034", + "name" : "#034" }, { - "name" : "#035", + "y" : 62, "drilldown" : "035", - "y" : 62 + "name" : "#035" }, { "name" : "#036", @@ -214,24 +183,24 @@ "y" : 68 }, { - "drilldown" : "037", "name" : "#037", + "drilldown" : "037", "y" : 67 }, { - "y" : 67, + "name" : "#038", "drilldown" : "038", - "name" : "#038" + "y" : 67 }, { "name" : "#039", - "drilldown" : "039", - "y" : 62 + "y" : 62, + "drilldown" : "039" }, { - "name" : "#040", + "y" : 73, "drilldown" : "040", - "y" : 73 + "name" : "#040" }, { "name" : "#041", @@ -239,14 +208,14 @@ "y" : 76 }, { - "drilldown" : "042", "name" : "#042", + "drilldown" : "042", "y" : 90 }, { - "name" : "#043", + "y" : 68, "drilldown" : "043", - "y" : 68 + "name" : "#043" }, { "name" : "#044", @@ -254,149 +223,149 @@ "y" : 84 }, { + "name" : "#045", "y" : 96, - "drilldown" : "045", - "name" : "#045" + "drilldown" : "045" }, { - "drilldown" : "046", "name" : "#046", - "y" : 87 + "y" : 87, + "drilldown" : "046" }, { + "y" : 84, "drilldown" : "047", - "name" : "#047", - "y" : 84 + "name" : "#047" }, { "name" : "#048", - "drilldown" : "048", - "y" : 108 + "y" : 108, + "drilldown" : "048" }, { "y" : 87, - "name" : "#049", - "drilldown" : "049" + "drilldown" : "049", + "name" : "#049" }, { + "name" : "#050", "y" : 98, - "drilldown" : "050", - "name" : "#050" + "drilldown" : "050" }, { - "name" : "#051", + "y" : 89, "drilldown" : "051", - "y" : 89 + "name" : "#051" }, { - "drilldown" : "052", "name" : "#052", - "y" : 91 + "y" : 91, + "drilldown" : "052" }, { "drilldown" : "053", - "name" : "#053", - "y" : 101 + "y" : 101, + "name" : "#053" }, { + "drilldown" : "054", "y" : 103, - "name" : "#054", - "drilldown" : "054" + "name" : "#054" }, { "y" : 88, - "name" : "#055", - "drilldown" : "055" + "drilldown" : "055", + "name" : "#055" }, { - "name" : "#056", + "y" : 95, "drilldown" : "056", - "y" : 95 + "name" : "#056" }, { "y" : 80, - "name" : "#057", - "drilldown" : "057" + "drilldown" : "057", + "name" : "#057" }, { + "name" : "#058", "y" : 69, - "drilldown" : "058", - "name" : "#058" + "drilldown" : "058" }, { "name" : "#059", - "drilldown" : "059", - "y" : 89 + "y" : 89, + "drilldown" : "059" }, { - "name" : "#060", "drilldown" : "060", - "y" : 85 + "y" : 85, + "name" : "#060" }, { "y" : 81, - "name" : "#061", - "drilldown" : "061" + "drilldown" : "061", + "name" : "#061" }, { - "y" : 54, "drilldown" : "062", + "y" : 54, "name" : "#062" }, { - "y" : 89, "name" : "#063", + "y" : 89, "drilldown" : "063" }, { - "y" : 80, "name" : "#064", + "y" : 80, "drilldown" : "064" }, { "drilldown" : "065", - "name" : "#065", - "y" : 73 + "y" : 73, + "name" : "#065" }, { - "name" : "#066", + "y" : 84, "drilldown" : "066", - "y" : 84 + "name" : "#066" }, { "name" : "#067", - "drilldown" : "067", - "y" : 90 + "y" : 90, + "drilldown" : "067" }, { - "y" : 75, "name" : "#068", + "y" : 75, "drilldown" : "068" }, { "drilldown" : "069", - "name" : "#069", - "y" : 83 + "y" : 83, + "name" : "#069" }, { "drilldown" : "070", - "name" : "#070", - "y" : 93 + "y" : 93, + "name" : "#070" }, { - "name" : "#071", "drilldown" : "071", - "y" : 78 + "y" : 78, + "name" : "#071" }, { - "y" : 112, "name" : "#072", + "y" : 112, "drilldown" : "072" }, { + "drilldown" : "073", "y" : 110, - "name" : "#073", - "drilldown" : "073" + "name" : "#073" }, { "y" : 115, @@ -405,18 +374,18 @@ }, { "y" : 113, - "name" : "#075", - "drilldown" : "075" + "drilldown" : "075", + "name" : "#075" }, { - "y" : 95, "name" : "#076", - "drilldown" : "076" + "drilldown" : "076", + "y" : 95 }, { - "drilldown" : "077", "name" : "#077", - "y" : 96 + "y" : 96, + "drilldown" : "077" }, { "y" : 125, @@ -424,9 +393,9 @@ "name" : "#078" }, { - "drilldown" : "079", "name" : "#079", - "y" : 120 + "y" : 120, + "drilldown" : "079" }, { "name" : "#080", @@ -435,8 +404,8 @@ }, { "name" : "#081", - "drilldown" : "081", - "y" : 112 + "y" : 112, + "drilldown" : "081" }, { "y" : 114, @@ -444,9 +413,9 @@ "name" : "#082" }, { - "y" : 127, "name" : "#083", - "drilldown" : "083" + "drilldown" : "083", + "y" : 127 }, { "y" : 119, @@ -459,51 +428,80 @@ "name" : "#085" }, { - "name" : "#086", "drilldown" : "086", - "y" : 104 + "y" : 104, + "name" : "#086" }, { - "y" : 101, "name" : "#087", + "y" : 101, "drilldown" : "087" }, { + "drilldown" : "088", "y" : 121, - "name" : "#088", - "drilldown" : "088" + "name" : "#088" }, { "y" : 113, - "name" : "#089", - "drilldown" : "089" + "drilldown" : "089", + "name" : "#089" }, { - "y" : 112, + "name" : "#090", "drilldown" : "090", - "name" : "#090" + "y" : 112 }, { "name" : "#091", - "drilldown" : "091", - "y" : 102 + "y" : 106, + "drilldown" : "091" }, { "y" : 41, - "name" : "#092", - "drilldown" : "092" + "drilldown" : "092", + "name" : "#092" } ], "name" : "Perl Weekly Challenge Languages", "colorByPoint" : "true" } ], + "title" : { + "text" : "Perl Weekly Challenge Language" + }, + "subtitle" : { + "text" : "Click the columns to drilldown the language breakdown. Last updated at 2020-12-24 17:50:20 GMT" + }, + "yAxis" : { + "title" : { + "text" : "Total Solutions" + } + }, "xAxis" : { "type" : "category" }, + "tooltip" : { + "pointFormat" : "Challenge {point.name}: {point.y:f}
", + "headerFormat" : "", + "followPointer" : "true" + }, + "plotOptions" : { + "series" : { + "dataLabels" : { + "enabled" : 1, + "format" : "{point.y}" + }, + "borderWidth" : 0 + } + }, + "chart" : { + "type" : "column" + }, "drilldown" : { "series" : [ { + "id" : "001", "data" : [ [ "Perl", @@ -518,12 +516,9 @@ 11 ] ], - "id" : "001", "name" : "001" }, { - "name" : "002", - "id" : "002", "data" : [ [ "Perl", @@ -537,10 +532,11 @@ "Blog", 10 ] - ] + ], + "name" : "002", + "id" : "002" }, { - "name" : "003", "data" : [ [ "Perl", @@ -555,10 +551,12 @@