aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMohammad S Anwar <mohammad.anwar@yahoo.com>2020-01-02 09:23:20 +0000
committerMohammad S Anwar <mohammad.anwar@yahoo.com>2020-01-02 09:23:20 +0000
commit4d1104892152e61e047d63d3a2d48ccfb3e88872 (patch)
tree96af288b82f0be0c6ce68a1b75f3da6ba756cf8c
parent660b42cc0eded4160ef6e389730c8d93243f6c15 (diff)
downloadperlweeklychallenge-club-4d1104892152e61e047d63d3a2d48ccfb3e88872.tar.gz
perlweeklychallenge-club-4d1104892152e61e047d63d3a2d48ccfb3e88872.tar.bz2
perlweeklychallenge-club-4d1104892152e61e047d63d3a2d48ccfb3e88872.zip
- Added solutions by Laurent Rosenfeld.
-rw-r--r--challenge-041/laurent-rosenfeld/blog.txt1
-rw-r--r--challenge-041/laurent-rosenfeld/perl5/ch-1.pl24
-rw-r--r--challenge-041/laurent-rosenfeld/perl5/ch-2.pl9
-rw-r--r--challenge-041/laurent-rosenfeld/perl5/ch-2a.pl12
-rw-r--r--challenge-041/laurent-rosenfeld/perl6/ch-1.p619
-rw-r--r--challenge-041/laurent-rosenfeld/perl6/ch-1a.p66
-rw-r--r--challenge-041/laurent-rosenfeld/perl6/ch-2.p65
-rw-r--r--challenge-041/laurent-rosenfeld/perl6/ch-2a.p610
-rw-r--r--stats/pwc-current.json119
-rw-r--r--stats/pwc-language-breakdown-summary.json74
-rw-r--r--stats/pwc-language-breakdown.json648
-rw-r--r--stats/pwc-leaders.json956
-rw-r--r--stats/pwc-summary-1-30.json20
-rw-r--r--stats/pwc-summary-121-150.json84
-rw-r--r--stats/pwc-summary-31-60.json108
-rw-r--r--stats/pwc-summary-61-90.json42
-rw-r--r--stats/pwc-summary-91-120.json126
-rw-r--r--stats/pwc-summary.json322
18 files changed, 1347 insertions, 1238 deletions
diff --git a/challenge-041/laurent-rosenfeld/blog.txt b/challenge-041/laurent-rosenfeld/blog.txt
new file mode 100644
index 0000000000..8669584433
--- /dev/null
+++ b/challenge-041/laurent-rosenfeld/blog.txt
@@ -0,0 +1 @@
+http://blogs.perl.org/users/laurent_r/2020/01/perl-weekly-challenge-41-attractive-numbers-and-leonardo-numbers.html
diff --git a/challenge-041/laurent-rosenfeld/perl5/ch-1.pl b/challenge-041/laurent-rosenfeld/perl5/ch-1.pl
new file mode 100644
index 0000000000..302cf8b042
--- /dev/null
+++ b/challenge-041/laurent-rosenfeld/perl5/ch-1.pl
@@ -0,0 +1,24 @@
+#!/usr/bin/perl
+use strict;
+use warnings;
+use feature qw/say/;
+use constant PRIMES => (2, 3, 5, 7);
+
+sub prime_factors {
+ my $num = shift;
+ my $origin_num = $num;
+ my @factors;
+ for my $div (PRIMES) {
+ while ($num % $div == 0) {
+ push @factors, $div;
+ $num /= $div;
+ }
+ return @factors if $num == 1;
+ }
+ push @factors, $num unless $num == $origin_num;
+ return @factors;
+}
+
+my %primes = map { $_ => 1 } PRIMES;
+say "$_: ", join " ", prime_factors($_) for
+ grep exists $primes{scalar prime_factors($_)}, 1..50;
diff --git a/challenge-041/laurent-rosenfeld/perl5/ch-2.pl b/challenge-041/laurent-rosenfeld/perl5/ch-2.pl
new file mode 100644
index 0000000000..8890227130
--- /dev/null
+++ b/challenge-041/laurent-rosenfeld/perl5/ch-2.pl
@@ -0,0 +1,9 @@
+use strict;
+use warnings;
+use feature qw /say/;
+
+my @leonardo = (1, 1);
+for my $i (1..18) {
+ push @leonardo, $leonardo[-1] + $leonardo[-2] + 1;
+}
+say "@leonardo";
diff --git a/challenge-041/laurent-rosenfeld/perl5/ch-2a.pl b/challenge-041/laurent-rosenfeld/perl5/ch-2a.pl
new file mode 100644
index 0000000000..54af1fb9c7
--- /dev/null
+++ b/challenge-041/laurent-rosenfeld/perl5/ch-2a.pl
@@ -0,0 +1,12 @@
+use strict;
+use warnings;
+use feature qw /say/;
+
+my @leonardo = (1, 1);
+sub leonardo {
+ my $in = shift;
+ return $leonardo[$in] if defined $leonardo[$in];
+ $leonardo[$in] = 1 + leonardo($in - 1) + leonardo($in -2);
+}
+my $target = leonardo(shift);
+say "@leonardo";
diff --git a/challenge-041/laurent-rosenfeld/perl6/ch-1.p6 b/challenge-041/laurent-rosenfeld/perl6/ch-1.p6
new file mode 100644
index 0000000000..572939fcae
--- /dev/null
+++ b/challenge-041/laurent-rosenfeld/perl6/ch-1.p6
@@ -0,0 +1,19 @@
+use v6;
+
+my @primes = grep {.is-prime}, 1..*;
+
+sub prime-factors (UInt $num-in) {
+ my @factors;
+ my $num = $num-in;
+ for @primes -> $div {
+ while ($num %% $div) {
+ push @factors, $div;
+ $num div= $div;
+ }
+ return @factors if $num == 1;
+ }
+ push @factors, $num unless $num == $num-in;
+ return @factors;
+}
+say "$_: ", prime-factors($_).join(" ") for
+ grep {prime-factors($_).elems.is-prime}, 1..50;
diff --git a/challenge-041/laurent-rosenfeld/perl6/ch-1a.p6 b/challenge-041/laurent-rosenfeld/perl6/ch-1a.p6
new file mode 100644
index 0000000000..6d7f468540
--- /dev/null
+++ b/challenge-041/laurent-rosenfeld/perl6/ch-1a.p6
@@ -0,0 +1,6 @@
+use v6;
+
+my @primes = grep {.is-prime}, 1..25;
+my $set = (grep {$_ <= 50}, map {[*] $_}, (@primes xx 3).flat.combinations: 2..3)
+ ∪ (grep {$_ <= 50}, map {[*] $_}, (@primes[0..4] xx 5).flat.combinations: 5);
+say $set.keys.sort
diff --git a/challenge-041/laurent-rosenfeld/perl6/ch-2.p6 b/challenge-041/laurent-rosenfeld/perl6/ch-2.p6
new file mode 100644
index 0000000000..009ec353d3
--- /dev/null
+++ b/challenge-041/laurent-rosenfeld/perl6/ch-2.p6
@@ -0,0 +1,5 @@
+use v6
+
+my @leo = 1, 1;
+push @leo, @leo[*-1] + @leo[*-2] + 1 for 1..18;
+say @leo;
diff --git a/challenge-041/laurent-rosenfeld/perl6/ch-2a.p6 b/challenge-041/laurent-rosenfeld/perl6/ch-2a.p6
new file mode 100644
index 0000000000..b653cb3f9c
--- /dev/null
+++ b/challenge-041/laurent-rosenfeld/perl6/ch-2a.p6
@@ -0,0 +1,10 @@
+use v6;
+my @leo = 1, 1;
+sub leonardo (Int $in) {
+ return @leo[$in] if defined @leo[$in];
+ @leo[$in] = [+] 1, leonardo($in - 1), leonardo($in -2);
+}
+sub MAIN (Int $input = 19) {
+ leonardo $input;
+ say @leo;
+}
diff --git a/stats/pwc-current.json b/stats/pwc-current.json
index bf71825d79..3d16bd1ee0 100644
--- a/stats/pwc-current.json
+++ b/stats/pwc-current.json
@@ -1,27 +1,31 @@
{
+ "xAxis" : {
+ "type" : "category"
+ },
"series" : [
{
"name" : "Perl Weekly Challenge - 041",
+ "colorByPoint" : 1,
"data" : [
{
- "drilldown" : "Andrezgz",
"name" : "Andrezgz",
+ "drilldown" : "Andrezgz",
"y" : 2
},
{
"y" : 3,
- "name" : "Arne Sommer",
- "drilldown" : "Arne Sommer"
+ "drilldown" : "Arne Sommer",
+ "name" : "Arne Sommer"
},
{
- "y" : 2,
"name" : "E. Choroba",
- "drilldown" : "E. Choroba"
+ "drilldown" : "E. Choroba",
+ "y" : 2
},
{
+ "y" : 5,
"name" : "Javier Luque",
- "drilldown" : "Javier Luque",
- "y" : 5
+ "drilldown" : "Javier Luque"
},
{
"name" : "Jo Christian Oterhals",
@@ -29,64 +33,72 @@
"y" : 2
},
{
+ "y" : 2,
"name" : "Kivanc Yazan",
- "drilldown" : "Kivanc Yazan",
- "y" : 2
+ "drilldown" : "Kivanc Yazan"
+ },
+ {
+ "y" : 5,
+ "name" : "Laurent Rosenfeld",
+ "drilldown" : "Laurent Rosenfeld"
},
{
- "drilldown" : "Roger Bell West",
"name" : "Roger Bell West",
+ "drilldown" : "Roger Bell West",
"y" : 4
},
{
+ "y" : 2,
"name" : "Simon Proctor",
- "drilldown" : "Simon Proctor",
- "y" : 2
+ "drilldown" : "Simon Proctor"
},
{
+ "y" : 4,
"name" : "Ulrich Rieke",
- "drilldown" : "Ulrich Rieke",
- "y" : 4
+ "drilldown" : "Ulrich Rieke"
},
{
- "y" : 2,
"drilldown" : "Walt Mankowski",
- "name" : "Walt Mankowski"
+ "name" : "Walt Mankowski",
+ "y" : 2
},
{
- "y" : 2,
+ "name" : "Wanderdoc",
"drilldown" : "Wanderdoc",
- "name" : "Wanderdoc"
+ "y" : 2
}
- ],
- "colorByPoint" : 1
+ ]
}
],
+ "chart" : {
+ "type" : "column"
+ },
"yAxis" : {
"title" : {
"text" : "Total Solutions"
}
},
"subtitle" : {
- "text" : "[Champions: 11] Last updated at 2020-01-01 00:26:18 GMT"
+ "text" : "[Champions: 12] Last updated at 2020-01-02 09:22:52 GMT"
},
- "xAxis" : {
- "type" : "category"
+ "title" : {
+ "text" : "Perl Weekly Challenge - 041"
},
"drilldown" : {
"series" : [
{
+ "name" : "Andrezgz",
+ "id" : "Andrezgz",
"data" : [
[
"Perl 5",
2
]
- ],
- "name" : "Andrezgz",
- "id" : "Andrezgz"
+ ]
},
{
"name" : "Arne Sommer",
+ "id" : "Arne Sommer",
"data" : [
[
"Perl 6",
@@ -96,17 +108,16 @@
"Blog",
1
]
- ],
- "id" : "Arne Sommer"
+ ]
},
{
- "name" : "E. Choroba",
"data" : [
[
"Perl 5",
2
]
],
+ "name" : "E. Choroba",
"id" : "E. Choroba"
},
{
@@ -128,27 +139,46 @@
"id" : "Javier Luque"
},
{
+ "name" : "Jo Christian Oterhals",
"id" : "Jo Christian Oterhals",
"data" : [
[
"Perl 6",
2
]
- ],
- "name" : "Jo Christian Oterhals"
+ ]
},
{
+ "name" : "Kivanc Yazan",
+ "id" : "Kivanc Yazan",
"data" : [
[
"Perl 5",
2
]
- ],
- "name" : "Kivanc Yazan",
- "id" : "Kivanc Yazan"
+ ]
+ },
+ {
+ "name" : "Laurent Rosenfeld",
+ "id" : "Laurent Rosenfeld",
+ "data" : [
+ [
+ "Perl 5",
+ 2
+ ],
+ [
+ "Perl 6",
+ 2
+ ],
+ [
+ "Blog",
+ 1
+ ]
+ ]
},
{
"id" : "Roger Bell West",
+ "name" : "Roger Bell West",
"data" : [
[
"Perl 5",
@@ -158,8 +188,7 @@
"Perl 6",
2
]
- ],
- "name" : "Roger Bell West"
+ ]
},
{
"data" : [
@@ -168,8 +197,8 @@
2
]
],
- "name" : "Simon Proctor",
- "id" : "Simon Proctor"
+ "id" : "Simon Proctor",
+ "name" : "Simon Proctor"
},
{
"id" : "Ulrich Rieke",
@@ -196,17 +225,20 @@
]
},
{
- "name" : "Wanderdoc",
"data" : [
[
"Perl 5",
2
]
],
+ "name" : "Wanderdoc",
"id" : "Wanderdoc"
}
]
},
+ "legend" : {
+ "enabled" : 0
+ },
"plotOptions" : {
"series" : {
"borderWidth" : 0,
@@ -220,14 +252,5 @@
"pointFormat" : "<span style='color:{point.color}'>{point.name}</span>: <b>{point.y:f}</b><br/>",
"followPointer" : 1,
"headerFormat" : "<span style='font-size:11px'>{series.name}</span><br/>"
- },
- "chart" : {
- "type" : "column"
- },
- "legend" : {
- "enabled" : 0
- },
- "title" : {
- "text" : "Perl Weekly Challenge - 041"
}
}
diff --git a/stats/pwc-language-breakdown-summary.json b/stats/pwc-language-breakdown-summary.json
index 9e60e108ba..4f3d722306 100644
--- a/stats/pwc-language-breakdown-summary.json
+++ b/stats/pwc-language-breakdown-summary.json
@@ -1,63 +1,63 @@
{
- "legend" : {
- "enabled" : "false"
- },
"xAxis" : {
+ "type" : "category",
"labels" : {
"style" : {
"fontFamily" : "Verdana, sans-serif",
"fontSize" : "13px"
}
- },
- "type" : "category"
+ }
+ },
+ "tooltip" : {
+ "pointFormat" : "<b>{point.y:.0f}</b>"
+ },
+ "yAxis" : {
+ "min" : 0,
+ "title" : {
+ "text" : null
+ }
+ },
+ "subtitle" : {
+ "text" : "Last updated at 2020-01-02 09:23:15 GMT"
+ },
+ "chart" : {
+ "type" : "column"
+ },
+ "title" : {
+ "text" : "Perl Weekly Challenge Contributions - 2019"
},
"series" : [
{
+ "dataLabels" : {
+ "style" : {
+ "fontFamily" : "Verdana, sans-serif",
+ "fontSize" : "13px"
+ },
+ "enabled" : "true",
+ "align" : "right",
+ "format" : "{point.y:.0f}",
+ "color" : "#FFFFFF",
+ "rotation" : -90,
+ "y" : 10
+ },
"data" : [
[
"Blog",
- 438
+ 439
],
[
"Perl 5",
- 1670
+ 1672
],
[
"Perl 6",
- 1004
+ 1006
]
],
- "dataLabels" : {
- "color" : "#FFFFFF",
- "y" : 10,
- "align" : "right",
- "style" : {
- "fontFamily" : "Verdana, sans-serif",
- "fontSize" : "13px"
- },
- "format" : "{point.y:.0f}",
- "rotation" : -90,
- "enabled" : "true"
- },
"name" : "Contributions"
}
],
- "yAxis" : {
- "min" : 0,
- "title" : {
- "text" : null
- }
- },
- "title" : {
- "text" : "Perl Weekly Challenge Contributions - 2019"
- },
- "tooltip" : {
- "pointFormat" : "<b>{point.y:.0f}</b>"
- },
- "chart" : {
- "type" : "column"
- },
- "subtitle" : {
- "text" : "Last updated at 2020-01-01 00:27:02 GMT"
+ "legend" : {
+ "enabled" : "false"
}
}
diff --git a/stats/pwc-language-breakdown.json b/stats/pwc-language-breakdown.json
index f873acf3ba..7269944867 100644
--- a/stats/pwc-language-breakdown.json
+++ b/stats/pwc-language-breakdown.json
@@ -1,256 +1,10 @@
{
- "xAxis" : {
- "type" : "category"
- },
- "plotOptions" : {
- "series" : {
- "borderWidth" : 0,
- "dataLabels" : {
- "format" : "{point.y}",
- "enabled" : 1
- }
- }
- },
- "legend" : {
- "enabled" : "false"
- },
- "tooltip" : {
- "followPointer" : "true",
- "headerFormat" : "<span style=\"font-size:11px\"></span>",
- "pointFormat" : "<span style=\"color:{point.color}\">Challenge {point.name}</span>: <b>{point.y:f}</b><br/>"
- },
"chart" : {
"type" : "column"
},
- "subtitle" : {
- "text" : "Click the columns to drilldown the language breakdown. Last updated at 2020-01-01 00:27:02 GMT"
- },
- "yAxis" : {
- "title" : {
- "text" : "Total Solutions"
- }
- },
- "series" : [
- {
- "name" : "Perl Weekly Challenge Languages",
- "data" : [
- {
- "y" : 140,
- "drilldown" : "001",
- "name" : "#001"
- },
- {
- "drilldown" : "002",
- "y" : 108,
- "name" : "#002"
- },
- {
- "y" : 71,
- "drilldown" : "003",
- "name" : "#003"
- },
- {
- "drilldown" : "004",
- "y" : 91,
- "name" : "#004"
- },
- {
- "name" : "#005",
- "y" : 71,
- "drilldown" : "005"
- },
- {
- "name" : "#006",
- "y" : 48,
- "drilldown" : "006"
- },
- {
- "name" : "#007",
- "y" : 56,
- "drilldown" : "007"
- },
- {
- "y" : 70,
- "drilldown" : "008",
- "name" : "#008"
- },
- {
- "name" : "#009",
- "drilldown" : "009",
- "y" : 68
- },
- {
- "y" : 60,
- "drilldown" : "010",
- "name" : "#010"
- },
- {
- "y" : 79,
- "drilldown" : "011",
- "name" : "#011"
- },
- {
- "y" : 83,
- "drilldown" : "012",
- "name" : "#012"
- },
- {
- "drilldown" : "013",
- "y" : 76,
- "name" : "#013"
- },
- {
- "y" : 96,
- "drilldown" : "014",
- "name" : "#014"
- },
- {
- "drilldown" : "015",
- "y" : 93,
- "name" : "#015"
- },
- {
- "drilldown" : "016",
- "y" : 66,
- "name" : "#016"
- },
- {
- "name" : "#017",
- "drilldown" : "017",
- "y" : 79
- },
- {
- "name" : "#018",
- "y" : 76,
- "drilldown" : "018"
- },
- {
- "name" : "#019",
- "y" : 95,
- "drilldown" : "019"
- },
- {
- "y" : 95,
- "drilldown" : "020",
- "name" : "#020"
- },
- {
- "drilldown" : "021",
- "y" : 67,
- "name" : "#021"
- },
- {
- "name" : "#022",
- "y" : 63,
- "drilldown" : "022"
- },
- {
- "name" : "#023",
- "y" : 91,
- "drilldown" : "023"
- },
- {
- "drilldown" : "024",
- "y" : 70,
- "name" : "#024"
- },
- {
- "name" : "#025",
- "drilldown" : "025",
- "y" : 55
- },
- {
- "y" : 70,
- "drilldown" : "026",
- "name" : "#026"
- },
- {
- "name" : "#027",
- "y" : 58,
- "drilldown" : "027"
- },
- {
- "name" : "#028",
- "y" : 78,
- "drilldown" : "028"
- },
- {
- "name" : "#029",
- "y" : 77,
- "drilldown" : "029"
- },
- {
- "y" : 115,
- "drilldown" : "030",
- "name" : "#030"
- },
- {
- "name" : "#031",
- "y" : 87,
- "drilldown" : "031"
- },
- {
- "drilldown" : "032",
- "y" : 92,
- "name" : "#032"
- },
- {
- "name" : "#033",
- "drilldown" : "033",
- "y" : 108
- },
- {
- "name" : "#034",
- "y" : 60,
- "drilldown" : "034"
- },
- {
- "y" : 60,
- "drilldown" : "035",
- "name" : "#035"
- },
- {
- "drilldown" : "036",
- "y" : 61,
- "name" : "#036"
- },
- {
- "name" : "#037",
- "y" : 63,
- "drilldown" : "037"
- },
- {
- "name" : "#038",
- "drilldown" : "038",
- "y" : 61
- },
- {
- "name" : "#039",
- "y" : 60,
- "drilldown" : "039"
- },
- {
- "y" : 65,
- "drilldown" : "040",
- "name" : "#040"
- },
- {
- "y" : 30,
- "drilldown" : "041",
- "name" : "#041"
- }
- ],
- "colorByPoint" : "true"
- }
- ],
- "title" : {
- "text" : "Perl Weekly Challenge Language"
- },
"drilldown" : {
"series" : [
{
- "name" : "001",
- "id" : "001",
"data" : [
[
"Perl 5",
@@ -264,11 +18,13 @@
"Blog",
11
]
- ]
+ ],
+ "name" : "001",
+ "id" : "001"
},
{
- "name" : "002",
"id" : "002",
+ "name" : "002",
"data" : [
[
"Perl 5",
@@ -299,12 +55,11 @@
9
]
],
- "id" : "003",
- "name" : "003"
+ "name" : "003",
+ "id" : "003"
},
{
"name" : "004",
- "id" : "004",
"data" : [
[
"Perl 5",
@@ -318,7 +73,8 @@
"Blog",
10
]
- ]
+ ],
+ "id" : "004"
},
{
"data" : [
@@ -339,8 +95,6 @@
"id" : "005"
},
{
- "id" : "006",
- "name" : "006",
"data" : [
[
"Perl 5",
@@ -354,11 +108,12 @@
"Blog",
7
]
- ]
+ ],
+ "name" : "006",
+ "id" : "006"
},
{
"name" : "007",
- "id" : "007",
"data" : [
[
"Perl 5",
@@ -372,10 +127,10 @@
"Blog",
10
]
- ]
+ ],
+ "id" : "007"
},
{
- "name" : "008",
"id" : "008",
"data" : [
[
@@ -390,10 +145,10 @@
"Blog",
12
]
- ]
+ ],
+ "name" : "008"
},
{
- "id" : "009",
"name" : "009",
"data" : [
[
@@ -408,7 +163,8 @@
"Blog",
13
]
- ]
+ ],
+ "id" : "009"
},
{
"id" : "010",
@@ -429,8 +185,6 @@
]
},
{
- "id" : "011",
- "name" : "011",
"data" : [
[
"Perl 5",
@@ -444,11 +198,12 @@
"Blog",
10
]
- ]
+ ],
+ "name" : "011",
+ "id" : "011"
},
{
"name" : "012",
- "id" : "012",
"data" : [
[
"Perl 5",
@@ -462,9 +217,12 @@
"Blog",
11
]
- ]
+ ],
+ "id" : "012"
},
{
+ "id" : "013",
+ "name" : "013",
"data" : [
[
"Perl 5",
@@ -478,11 +236,10 @@
"Blog",
13
]
- ],
- "name" : "013",
- "id" : "013"
+ ]
},
{
+ "name" : "014",
"data" : [
[
"Perl 5",
@@ -497,12 +254,9 @@
15
]
],
- "name" : "014",
"id" : "014"
},
{
- "id" : "015",
- "name" : "015",
"data" : [
[
"Perl 5",
@@ -516,11 +270,12 @@
"Blog",
15
]
- ]
+ ],
+ "name" : "015",
+ "id" : "015"
},
{
"id" : "016",
- "name" : "016",
"data" : [
[
"Perl 5",
@@ -534,11 +289,12 @@
"Blog",
12
]
- ]
+ ],
+ "name" : "016"
},
{
- "name" : "017",
"id" : "017",
+ "name" : "017",
"data" : [
[
"Perl 5",
@@ -556,7 +312,6 @@
},
{
"name" : "018",
- "id" : "018",
"data" : [
[
"Perl 5",
@@ -570,7 +325,8 @@
"Blog",
14
]
- ]
+ ],
+ "id" : "018"
},
{
"id" : "019",
@@ -591,8 +347,6 @@
]
},
{
- "id" : "020",
- "name" : "020",
"data" : [
[
"Perl 5",
@@ -606,9 +360,12 @@
"Blog",
13
]
- ]
+ ],
+ "name" : "020",
+ "id" : "020"
},
{
+ "id" : "021",
"data" : [
[
"Perl 5",
@@ -623,10 +380,11 @@
10
]
],
- "id" : "021",
"name" : "021"
},
{
+ "id" : "022",
+ "name" : "022",
"data" : [
[
"Perl 5",
@@ -640,13 +398,10 @@
"Blog",
10
]
- ],
- "id" : "022",
- "name" : "022"
+ ]
},
{
"name" : "023",
- "id" : "023",
"data" : [
[
"Perl 5",
@@ -660,7 +415,8 @@
"Blog",
12
]
- ]
+ ],
+ "id" : "023"
},
{
"data" : [
@@ -677,10 +433,11 @@
11
]
],
- "id" : "024",
- "name" : "024"
+ "name" : "024",
+ "id" : "024"
},
{
+ "name" : "025",
"data" : [
[
"Perl 5",
@@ -695,12 +452,10 @@
12
]
],
- "name" : "025",
"id" : "025"</