aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMohammad Sajid Anwar <mohammad.anwar@yahoo.com>2025-02-08 19:44:19 +0000
committerMohammad Sajid Anwar <mohammad.anwar@yahoo.com>2025-02-08 19:44:19 +0000
commitc4ea1783e14fc6b09cd2164da21e0fc3725f4379 (patch)
tree67abf61a555a1d671991ced34791a0ff7e6a5a93
parentb6374a8eee26d0c140969430a751c01e0c177b82 (diff)
downloadperlweeklychallenge-club-c4ea1783e14fc6b09cd2164da21e0fc3725f4379.tar.gz
perlweeklychallenge-club-c4ea1783e14fc6b09cd2164da21e0fc3725f4379.tar.bz2
perlweeklychallenge-club-c4ea1783e14fc6b09cd2164da21e0fc3725f4379.zip
- Added solutions by Wanderdoc.
-rwxr-xr-xchallenge-307/wanderdoc/perl/ch-1.pl53
-rwxr-xr-xchallenge-307/wanderdoc/perl/ch-2.pl45
-rw-r--r--stats/pwc-current.json313
-rw-r--r--stats/pwc-language-breakdown-2019.json326
-rw-r--r--stats/pwc-language-breakdown-2020.json748
-rw-r--r--stats/pwc-language-breakdown-2021.json396
-rw-r--r--stats/pwc-language-breakdown-2022.json794
-rw-r--r--stats/pwc-language-breakdown-2023.json748
-rw-r--r--stats/pwc-language-breakdown-2024.json402
-rw-r--r--stats/pwc-language-breakdown-2025.json140
-rw-r--r--stats/pwc-language-breakdown-summary.json52
-rw-r--r--stats/pwc-leaders.json744
-rw-r--r--stats/pwc-summary-1-30.json100
-rw-r--r--stats/pwc-summary-121-150.json112
-rw-r--r--stats/pwc-summary-151-180.json44
-rw-r--r--stats/pwc-summary-181-210.json50
-rw-r--r--stats/pwc-summary-211-240.json118
-rw-r--r--stats/pwc-summary-241-270.json46
-rw-r--r--stats/pwc-summary-271-300.json110
-rw-r--r--stats/pwc-summary-301-330.json36
-rw-r--r--stats/pwc-summary-31-60.json44
-rw-r--r--stats/pwc-summary-61-90.json42
-rw-r--r--stats/pwc-summary-91-120.json118
-rw-r--r--stats/pwc-summary.json42
-rw-r--r--stats/pwc-yearly-language-summary.json90
25 files changed, 2913 insertions, 2800 deletions
diff --git a/challenge-307/wanderdoc/perl/ch-1.pl b/challenge-307/wanderdoc/perl/ch-1.pl
new file mode 100755
index 0000000000..ad6ac8a41b
--- /dev/null
+++ b/challenge-307/wanderdoc/perl/ch-1.pl
@@ -0,0 +1,53 @@
+#!perl
+use strict;
+use warnings FATAL => qw(all);
+
+=prompt
+You are given an array of integers, @ints.
+
+Write a script to re-arrange the given array in an increasing order and return the indices where it differs from the original array.
+Example 1
+
+Input: @ints = (5, 2, 4, 3, 1)
+Output: (0, 2, 3, 4)
+
+Before: (5, 2, 4, 3, 1)
+After : (1, 2, 3, 4, 5)
+
+Difference at indices: (0, 2, 3, 4)
+
+Example 2
+
+Input: @ints = (1, 2, 1, 1, 3)
+Output: (1, 3)
+
+Before: (1, 2, 1, 1, 3)
+After : (1, 1, 1, 2, 3)
+
+Difference at indices: (1, 3)
+
+Example 3
+
+Input: @ints = (3, 1, 3, 2, 3)
+Output: (0, 1, 3)
+
+Before: (3, 1, 3, 2, 3)
+After : (1, 2, 3, 3, 3)
+
+Difference at indices: (0, 1, 3)
+
+=cut
+
+use Test2::V0 -no_srand => 1;
+
+is(check_order(5, 2, 4, 3, 1), [0, 2, 3, 4], 'Example 1');
+is(check_order(1, 2, 1, 1, 3), [1, 3], 'Example 2');
+is(check_order(3, 1, 3, 2, 3), [0, 1, 3], 'Example 3');
+done_testing();
+
+sub check_order
+{
+ my @arr = @_;
+ my @sorted = sort {$a <=> $b} @arr;
+ return [grep { $arr[$_] != $sorted[$_] } 0 .. $#arr];
+} \ No newline at end of file
diff --git a/challenge-307/wanderdoc/perl/ch-2.pl b/challenge-307/wanderdoc/perl/ch-2.pl
new file mode 100755
index 0000000000..03decbff21
--- /dev/null
+++ b/challenge-307/wanderdoc/perl/ch-2.pl
@@ -0,0 +1,45 @@
+#!perl
+use strict;
+use warnings FATAL => qw(all);
+
+=prompt
+You are given a list of words, @words.
+
+Write a script to find any two consecutive words and if they are anagrams, drop the first word and keep the second. You continue this until there is no more anagrams in the given list and return the count of final list.
+Example 1
+
+Input: @words = ("acca", "dog", "god", "perl", "repl")
+Output: 3
+
+Step 1: "dog" and "god" are anagrams, so dropping "dog" and keeping "god" => ("acca", "god", "perl", "repl")
+Step 2: "perl" and "repl" are anagrams, so dropping "perl" and keeping "repl" => ("acca", "god", "repl")
+
+Example 2
+
+Input: @words = ("abba", "baba", "aabb", "ab", "ab")
+Output: 2
+
+Step 1: "abba" and "baba" are anagrams, so dropping "abba" and keeping "baba" => ("baba", "aabb", "ab", "ab")
+Step 2: "baba" and "aabb" are anagrams, so dropping "baba" and keeping "aabb" => ("aabb", "ab", "ab")
+Step 3: "ab" and "ab" are anagrams, so dropping "ab" and keeping "ab" => ("aabb", "ab")
+
+=cut
+
+use List::Util qw(uniq);
+use Test2::V0 -no_srand => 1;
+
+is(reduce_anagrams("acca", "dog", "god", "perl", "repl"), 3, 'Example 1');
+is(reduce_anagrams("abba", "baba", "aabb", "ab", "ab"), 2, 'Example 2');
+done_testing();
+
+sub reduce_anagrams
+{
+ my @arr = uniq(map { make_standard($_) } @_);
+ return scalar @arr;
+}
+
+sub make_standard
+{
+ my $str = $_[0];
+ return join('', sort { $a cmp $b } split(//, lc $str));
+} \ No newline at end of file
diff --git a/stats/pwc-current.json b/stats/pwc-current.json
index a9725ebfd4..6eb6fd4e7c 100644
--- a/stats/pwc-current.json
+++ b/stats/pwc-current.json
@@ -1,10 +1,131 @@
{
+ "series" : [
+ {
+ "name" : "The Weekly Challenge - 307",
+ "data" : [
+ {
+ "drilldown" : "Ali Moradi",
+ "name" : "Ali Moradi",
+ "y" : 3
+ },
+ {
+ "drilldown" : "Andreas Mahnke",
+ "name" : "Andreas Mahnke",
+ "y" : 2
+ },
+ {
+ "name" : "Athanasius",
+ "y" : 4,
+ "drilldown" : "Athanasius"
+ },
+ {
+ "drilldown" : "Bob Lied",
+ "name" : "Bob Lied",
+ "y" : 2
+ },
+ {
+ "drilldown" : "Dave Jacoby",
+ "y" : 2,
+ "name" : "Dave Jacoby"
+ },
+ {
+ "y" : 2,
+ "name" : "David Ferrone",
+ "drilldown" : "David Ferrone"
+ },
+ {
+ "y" : 2,
+ "name" : "E. Choroba",
+ "drilldown" : "E. Choroba"
+ },
+ {
+ "y" : 3,
+ "name" : "Jorg Sommrey",
+ "drilldown" : "Jorg Sommrey"
+ },
+ {
+ "drilldown" : "Lubos Kolouch",
+ "y" : 2,
+ "name" : "Lubos Kolouch"
+ },
+ {
+ "y" : 2,
+ "name" : "Mark Anderson",
+ "drilldown" : "Mark Anderson"
+ },
+ {
+ "name" : "Peter Campbell Smith",
+ "y" : 3,
+ "drilldown" : "Peter Campbell Smith"
+ },
+ {
+ "drilldown" : "Peter Meszaros",
+ "name" : "Peter Meszaros",
+ "y" : 2
+ },
+ {
+ "name" : "Roger Bell_West",
+ "y" : 4,
+ "drilldown" : "Roger Bell_West"
+ },
+ {
+ "name" : "Steven Wilson",
+ "y" : 2,
+ "drilldown" : "Steven Wilson"
+ },
+ {
+ "drilldown" : "Thomas Kohler",
+ "y" : 4,
+ "name" : "Thomas Kohler"
+ },
+ {
+ "name" : "Ulrich Rieke",
+ "y" : 4,
+ "drilldown" : "Ulrich Rieke"
+ },
+ {
+ "drilldown" : "W. Luis Mochan",
+ "y" : 3,
+ "name" : "W. Luis Mochan"
+ },
+ {
+ "name" : "Wanderdoc",
+ "y" : 2,
+ "drilldown" : "Wanderdoc"
+ }
+ ],
+ "colorByPoint" : 1
+ }
+ ],
+ "subtitle" : {
+ "text" : "[Champions: 18] Last updated at 2025-02-08 19:44:09 GMT"
+ },
+ "title" : {
+ "text" : "The Weekly Challenge - 307"
+ },
+ "legend" : {
+ "enabled" : 0
+ },
+ "tooltip" : {
+ "headerFormat" : "<span style='font-size:11px'>{series.name}</span><br/>",
+ "followPointer" : 1,
+ "pointFormat" : "<span style='color:{point.color}'>{point.name}</span>: <b>{point.y:f}</b><br/>"
+ },
+ "chart" : {
+ "type" : "column"
+ },
+ "yAxis" : {
+ "title" : {
+ "text" : "Total Solutions"
+ }
+ },
"xAxis" : {
"type" : "category"
},
"drilldown" : {
"series" : [
{
+ "name" : "Ali Moradi",
"id" : "Ali Moradi",
"data" : [
[
@@ -15,8 +136,7 @@
"Blog",
1
]
- ],
- "name" : "Ali Moradi"
+ ]
},
{
"data" : [
@@ -29,8 +149,6 @@
"name" : "Andreas Mahnke"
},
{
- "name" : "Athanasius",
- "id" : "Athanasius",
"data" : [
[
"Perl",
@@ -40,7 +158,9 @@
"Raku",
2
]
- ]
+ ],
+ "name" : "Athanasius",
+ "id" : "Athanasius"
},
{
"data" : [
@@ -49,18 +169,18 @@
2
]
],
- "id" : "Bob Lied",
- "name" : "Bob Lied"
+ "name" : "Bob Lied",
+ "id" : "Bob Lied"
},
{
- "id" : "Dave Jacoby",
"data" : [
[
"Perl",
2
]
],
- "name" : "Dave Jacoby"
+ "name" : "Dave Jacoby",
+ "id" : "Dave Jacoby"
},
{
"name" : "David Ferrone",
@@ -73,18 +193,16 @@
]
},
{
+ "name" : "E. Choroba",
+ "id" : "E. Choroba",
"data" : [
[
"Perl",
2
]
- ],
- "id" : "E. Choroba",
- "name" : "E. Choroba"
+ ]
},
{
- "name" : "Jorg Sommrey",
- "id" : "Jorg Sommrey",
"data" : [
[
"Perl",
@@ -94,11 +212,13 @@
"Blog",
1
]
- ]
+ ],
+ "name" : "Jorg Sommrey",
+ "id" : "Jorg Sommrey"
},
{
- "name" : "Lubos Kolouch",
"id" : "Lubos Kolouch",
+ "name" : "Lubos Kolouch",
"data" : [
[
"Perl",
@@ -107,18 +227,16 @@
]
},
{
+ "id" : "Mark Anderson",
"name" : "Mark Anderson",
"data" : [
[
"Raku",
2
]
- ],
- "id" : "Mark Anderson"
+ ]
},
{
- "name" : "Peter Campbell Smith",
- "id" : "Peter Campbell Smith",
"data" : [
[
"Perl",
@@ -128,7 +246,9 @@
"Blog",
1
]
- ]
+ ],
+ "name" : "Peter Campbell Smith",
+ "id" : "Peter Campbell Smith"
},
{
"data" : [
@@ -137,10 +257,12 @@
2
]
],
- "id" : "Peter Meszaros",
- "name" : "Peter Meszaros"
+ "name" : "Peter Meszaros",
+ "id" : "Peter Meszaros"
},
{
+ "name" : "Roger Bell_West",
+ "id" : "Roger Bell_West",
"data" : [
[
"Perl",
@@ -150,13 +272,11 @@
"Raku",
2
]
- ],
- "id" : "Roger Bell_West",
- "name" : "Roger Bell_West"
+ ]
},
{
- "name" : "Steven Wilson",
"id" : "Steven Wilson",
+ "name" : "Steven Wilson",
"data" : [
[
"Perl",
@@ -165,8 +285,6 @@
]
},
{
- "name" : "Thomas Kohler",
- "id" : "Thomas Kohler",
"data" : [
[
"Perl",
@@ -176,11 +294,11 @@
"Blog",
2
]
- ]
+ ],
+ "id" : "Thomas Kohler",
+ "name" : "Thomas Kohler"
},
{
- "name" : "Ulrich Rieke",
- "id" : "Ulrich Rieke",
"data" : [
[
"Perl",
@@ -190,11 +308,13 @@
"Raku",
2
]
- ]
+ ],
+ "name" : "Ulrich Rieke",
+ "id" : "Ulrich Rieke"
},
{
- "name" : "W. Luis Mochan",
"id" : "W. Luis Mochan",
+ "name" : "W. Luis Mochan",
"data" : [
[
"Perl",
@@ -205,12 +325,19 @@
1
]
]
+ },
+ {
+ "name" : "Wanderdoc",
+ "id" : "Wanderdoc",
+ "data" : [
+ [
+ "Perl",
+ 2
+ ]
+ ]
}
]
},
- "title" : {
- "text" : "The Weekly Challenge - 307"
- },
"plotOptions" : {
"series" : {
"dataLabels" : {
@@ -219,117 +346,5 @@
},
"borderWidth" : 0
}
- },
- "series" : [
- {
- "data" : [
- {
- "name" : "Ali Moradi",
- "drilldown" : "Ali Moradi",
- "y" : 3
- },
- {
- "name" : "Andreas Mahnke",
- "drilldown" : "Andreas Mahnke",
- "y" : 2
- },
- {
- "name" : "Athanasius",
- "drilldown" : "Athanasius",
- "y" : 4
- },
- {
- "y" : 2,
- "drilldown" : "Bob Lied",
- "name" : "Bob Lied"
- },
- {
- "name" : "Dave Jacoby",
- "drilldown" : "Dave Jacoby",
- "y" : 2
- },
- {
- "name" : "David Ferrone",
- "drilldown" : "David Ferrone",
- "y" : 2
- },
- {
- "drilldown" : "E. Choroba",
- "y" : 2,
- "name" : "E. Choroba"
- },
- {
- "name" : "Jorg Sommrey",
- "y" : 3,
- "drilldown" : "Jorg Sommrey"
- },
- {
- "drilldown" : "Lubos Kolouch",
- "y" : 2,
- "name" : "Lubos Kolouch"
- },
- {
- "name" : "Mark Anderson",
- "y" : 2,
- "drilldown" : "Mark Anderson"
- },
- {
- "drilldown" : "Peter Campbell Smith",
- "y" : 3,
- "name" : "Peter Campbell Smith"
- },
- {
- "y" : 2,
- "drilldown" : "Peter Meszaros",
- "name" : "Peter Meszaros"
- },
- {
- "name" : "Roger Bell_West",
- "drilldown" : "Roger Bell_West",
- "y" : 4
- },
- {
- "y" : 2,
- "drilldown" : "Steven Wilson",
- "name" : "Steven Wilson"
- },
- {
- "y" : 4,
- "drilldown" : "Thomas Kohler",
- "name" : "Thomas Kohler"
- },
- {
- "name" : "Ulrich Rieke",
- "y" : 4,
- "drilldown" : "Ulrich Rieke"
- },
- {
- "name" : "W. Luis Mochan",
- "drilldown" : "W. Luis Mochan",
- "y" : 3
- }
- ],
- "colorByPoint" : 1,
- "name" : "The Weekly Challenge - 307"
- }
- ],
- "yAxis" : {
- "title" : {
- "text" : "Total Solutions"
- }
- },
- "legend" : {
- "enabled" : 0
- },
- "subtitle" : {
- "text" : "[Champions: 17] Last updated at 2025-02-08 19:39:13 GMT"
- },
- "tooltip" : {
- "followPointer" : 1,
- "pointFormat" : "<span style='color:{point.color}'>{point.name}</span>: <b>{point.y:f}</b><br/>",
- "headerFormat" : "<span style='font-size:11px'>{series.name}</span><br/>"
- },
- "chart" : {
- "type" : "column"
}
}
diff --git a/stats/pwc-language-breakdown-2019.json b/stats/pwc-language-breakdown-2019.json
index a85e65564a..fc905cf866 100644
--- a/stats/pwc-language-breakdown-2019.json
+++ b/stats/pwc-language-breakdown-2019.json
@@ -1,45 +1,30 @@
{
- "chart" : {
- "type" : "column"
- },
- "tooltip" : {
- "headerFormat" : "<span style=\"font-size:11px\"></span>",
- "pointFormat" : "<span style=\"color:{point.color}\">Challenge {point.name}</span>: <b>{point.y:f}</b><br/>",
- "followPointer" : "true"
- },
"subtitle" : {
- "text" : "Click the columns to drilldown the language breakdown. Last updated at 2025-02-08 19:39:13 GMT"
- },
- "legend" : {
- "enabled" : "false"
- },
- "yAxis" : {
- "title" : {
- "text" : "Total Solutions"
- }
+ "text" : "Click the columns to drilldown the language breakdown. Last updated at 2025-02-08 19:44:09 GMT"
},
"series" : [
{
+ "colorByPoint" : "true",
"data" : [
{
- "drilldown" : "041",
"y" : 80,
- "name" : "041"
+ "name" : "041",
+ "drilldown" : "041"
},
{
- "name" : "040",
"drilldown" : "040",
+ "name" : "040",
"y" : 77
},
{
- "name" : "039",
"drilldown" : "039",
+ "name" : "039",
"y" : 68
},
{
- "y" : 74,
"drilldown" : "038",
- "name" : "038"
+ "name" : "038",
+ "y" : 74
},
{
"name" : "037",
@@ -47,114 +32,114 @@
"drilldown" : "037"
},
{
- "y" : 70,
"drilldown" : "036",
+ "y" : 70,
"name" : "036"
},
{
- "drilldown" : "035",
"y" : 68,
- "name" : "035"
+ "name" : "035",
+ "drilldown" : "035"
},
{
"name" : "034",
- "drilldown" : "034",
- "y" : 70
+ "y" : 70,
+ "drilldown" : "034"
},
{
- "drilldown" : "033",
"y" : 113,
- "name" : "033"
+ "name" : "033",
+ "drilldown" : "033"
},
{
- "name" : "032",
"drilldown" : "032",
- "y" : 97
+ "y" : 97,
+ "name" : "032"
},
{
- "y" : 93,
"drilldown" : "031",
+ "y" : 93,
"name" : "031"
},
{
"y" : 120,
- "drilldown" : "030",
- "name" : "030"
+ "name" : "030",
+ "drilldown" : "030"
},
{
+ "name" : "029",
"y" : 83,
- "drilldown" : "029",
- "name" : "029"
+ "drilldown" : "029"
},
{
"name" : "028",
- "drilldown" : "028",
- "y" : 82
+ "y" : 82,
+ "drilldown" : "028"
},
{
"y" : 64,
- "drilldown" : "027",
- "name" : "027"
+ "name" : "027",
+ "drilldown" : "027"
},
{
- "drilldown" : "026",
"y" : 75,
- "name" : "026"
+ "name" : "026",
+ "drilldown" : "026"
},
{
- "name" : "025",
"y" : 62,
+ "name" : "025",
"drilldown" : "025"
},
{
"name" : "024",
- "drilldown" : "024",
- "y" : 77
+ "y" : 77,
+ "drilldown" : "024"
},
{
"name" : "023",
- "drilldown" : "023",
- "y" : 88
+ "y" : 88,
+ "drilldown" : "023"
},
{
- "name" : "022",
"y" : 72,
+ "name" : "022",
"drilldown" : "022"
},
{
"name" : "021",
- "drilldown" : "021",
- "y" : 72
+ "y" : 72,
+ "drilldown" : "021"
},
{
- "drilldown" : "020",
"y" : 100,
- "name" : "020"
+ "name" : "020",
+ "drilldown" : "020"
},
{
- "y" : 101,
"drilldown" : "019",
- "name" : "019"
+ "name" : "019",
+ "y" : 101
},
{
"y" : 82,
- "drilldown" : "018",
- "name" : "018"
+ "name" : "018",
+ "drilldown" : "018"
},
{
"name" : "017",
- "drilldown" : "017",
- "y" : 83
+ "y" : 83,
+ "drilldown" : "017"
},
{
"y" : 75,
- "drilldown" : "016",
- "name" : "016"
+ "name" : "016",
+ "drilldown" : "016"
},
{
- "drilldown" : "015",
"y" : 95,
- "name" : "015"
+ "name" : "015",
+ "drilldown" : "015"
},
{
"drilldown" : "014",
@@ -162,38 +147,38 @@
"name" : "014"
},
{
- "drilldown" : "013",
"y" : 85,
- "name" : "013"
+ "name" : "013",
+ "drilldown" : "013"
},
{
- "name" : "012",
"y" : 90,
+ "name" : "012",
"drilldown" : "012"
},
{
- "name" : "011",
"drilldown" : "011",
- "y" : 86
+ "y" : 86,
+ "name" : "011"
},
{
- "y" : 69,
"drilldown" : "010",
- "name" : "010"
+ "name" : "010",
+ "y" : 69
},
{
- "drilldown" : "009",
+ "name" : "009",
"y" : 79,
- "name" : "009"
+ "drilldown" : "009"
},
{
- "name" : "008",
"y" : 82,
+ "name" : "008",
"drilldown" : "008"
},
{
- "name" : "007",
"drilldown" : "007",
+ "name" : "007",
"y" : 71
},
{
@@ -202,35 +187,56 @@
"name" : "006"
},
{
+ "y" : 82,
"name" : "005",
- "drilldown" : "005",
- "y" : 82
+ "drilldown" : "005"
},
{
+ "y" : 106,
"name" : "004",
- "drilldown" : "004",
- "y" : 106
+ "drilldown" : "004"
},
{
"drilldown" : "003",
- "y" : 91,
- "name" : "003"
+ "name" : "003",
+ "y" : 91
},
{
- "name" : "002",
+ "drilldown" : "002",
"y" : 133,
- "drilldown" : "002"
+ "name" : "002"
},
{
- "name" : "001",
+ "drilldown" : "001",
"y" : 165,
- "drilldown" : "001"
+ "name" : "001"
}
],
- "colorByPoint" : "true",
"name" : "The Weekly Challenge Languages"
}
],
+ "title" : {
+ "text" : "The Weekly Challenge Language"
+ },
+ "xAxis" : {
+ "type" : "category"
+ },
+ "chart" : {
+ "type" : "column"
+ },
+ "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/>"
+ },
+ "legend" : {
+ "enabled" : "false"
+ },
+ "yAxis" : {
+ "title" : {
+ "text" : "Total Solutions"
+ }
+ },
"plotOptions" : {
"series" : {
"borderWidth" : 0,
@@ -240,12 +246,10 @@
}
}
},
- "title" : {
- "text" : "The Weekly Challenge Language"
- },
"drilldown" : {
"series" : [
{
+ "id" : "041",
"name" : "041",
"data" : [
[
@@ -260,11 +264,9 @@
"Blog",
9
]
- ],
- "id" : "041"
+ ]
},
{
- "name" : "040",
"data" : [
[
"Perl",
@@ -279,10 +281,10 @@
10
]
],
- "id" : "040"
+ "id" : "040",
+ "name" : "040"
},
{
- "name" : "039",
"data" : [
[
"Perl",
@@ -297,10 +299,10 @@
12
]
],
- "id" : "039"
+ "id" : "039",
+ "name" : "039"
},
{
- "id" : "038",
"data" : [
[
"Perl",
@@ -315,10 +317,12 @@
12
]
],
- "name" : "038"
+ "name" : "038",
+ "id" : "038"
},
{
"name" : "037",
+ "id" : "037",
"data" : [
[
"Perl",
@@ -332,1