aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMohammad S Anwar <mohammad.anwar@yahoo.com>2020-09-15 19:14:38 +0100
committerMohammad S Anwar <mohammad.anwar@yahoo.com>2020-09-15 19:14:38 +0100
commit45ec20a8ba5c6ff2038366ad8775467e36466dd3 (patch)
tree7eb7c959c92f3a5125a7c770d75c14c3db5a7b4a
parent804abfb2b07e0681984127746d9a28adb8ca0435 (diff)
downloadperlweeklychallenge-club-45ec20a8ba5c6ff2038366ad8775467e36466dd3.tar.gz
perlweeklychallenge-club-45ec20a8ba5c6ff2038366ad8775467e36466dd3.tar.bz2
perlweeklychallenge-club-45ec20a8ba5c6ff2038366ad8775467e36466dd3.zip
- Added Abigail solutions to week #77.
-rw-r--r--challenge-077/abigail/node/ch-1.js97
-rw-r--r--challenge-077/abigail/node/ch-2.js60
-rw-r--r--challenge-077/abigail/perl/ch-1.pl63
-rw-r--r--challenge-077/abigail/perl/ch-2.pl56
-rw-r--r--stats/pwc-challenge-077.json529
-rw-r--r--stats/pwc-current.json184
-rw-r--r--stats/pwc-language-breakdown-summary.json52
-rw-r--r--stats/pwc-language-breakdown.json1110
-rw-r--r--stats/pwc-leaders.json382
-rw-r--r--stats/pwc-summary-1-30.json100
-rw-r--r--stats/pwc-summary-121-150.json16
-rw-r--r--stats/pwc-summary-151-180.json120
-rw-r--r--stats/pwc-summary-181-210.json70
-rw-r--r--stats/pwc-summary-31-60.json54
-rw-r--r--stats/pwc-summary-61-90.json42
-rw-r--r--stats/pwc-summary-91-120.json22
-rw-r--r--stats/pwc-summary.json416
17 files changed, 1832 insertions, 1541 deletions
diff --git a/challenge-077/abigail/node/ch-1.js b/challenge-077/abigail/node/ch-1.js
new file mode 100644
index 0000000000..f2d7173403
--- /dev/null
+++ b/challenge-077/abigail/node/ch-1.js
@@ -0,0 +1,97 @@
+//
+// Exercise:
+// You are given a positive integer $N.
+// Write a script to find out all possible combination of Fibonacci
+// Numbers required to get $N on addition.
+//
+// You are NOT allowed to repeat a number. Print 0 if none found.
+//
+
+//
+// Note:
+// The "Print 0 if none found." is irrelevant. There is always at
+// least one way to write any positive integer as a sum of distinct
+// Fibonacci Numbers. (Zeckendorf's theorem states: "very positive
+// integer can be represented uniquely as the sum of one or more
+// distinct Fibonacci numbers in such a way that the sum does not
+// include any two consecutive Fibonacci numbers")
+//
+
+//
+// Read the input number from STDIN
+//
+let fs = require ("fs");
+let N = +fs . readFileSync (0) . toString () . trim ();
+
+//
+// Generate a list of Fibonacci numbers, starting with (1, 2),
+// up to the target number. Store this in FIB.
+//
+let FIB = [1, 2];
+while (FIB [FIB . length - 1] + FIB [FIB . length - 2] <= N) {
+ FIB . push (FIB [FIB . length - 1] + FIB [FIB . length - 2]);
+}
+
+//
+// Recursive function to find the sums. First argument is the target
+// number, second argument is the index of smallest number which can
+// be used.
+//
+function solutions (target, index = 0) {
+ let output = [];
+ //
+ // Iterate over the list of Fibonacci numbers, looking for
+ // candidates. We're starting with the given index.
+ //
+ for (let i = index; i < FIB . length; i ++) {
+ let fib = FIB [i];
+ if (fib > target) {
+ //
+ // If the candidate is larger than the target number,
+ // we can stop looking, as each subsequent number will
+ // be larger.
+ //
+ break;
+ }
+ if (fib == target) {
+ //
+ // If the candidate is equal to the target number,
+ // then it's a trivial solution (a sum of 1 number).
+ // Add it to the list of possibilities, and stop
+ // searching.
+ //
+ output . push ([fib]);
+ break;
+ }
+ else {
+ //
+ // Find solutions for the difference between the
+ // candidate and the target number, with the restriction
+ // that each number in that sum is larger than the numbers
+ // used so far.
+ //
+ let rec_solutions = solutions (target - fib, i + 1);
+
+ //
+ // For each solution found in recursion, we have a solution
+ // for this call, by adding the candidate to it.
+ //
+ for (let j = 0; j < rec_solutions . length; j ++) {
+ output . push ([fib] . concat (rec_solutions [j]));
+ }
+ }
+ }
+ return output;
+}
+
+//
+// Find the solutions
+//
+let sols = solutions (N);
+
+//
+// And print the results
+//
+for (let i = 0; i < sols . length; i ++) {
+ console . log (sols [i] . join (" + ") + " = " + N);
+}
diff --git a/challenge-077/abigail/node/ch-2.js b/challenge-077/abigail/node/ch-2.js
new file mode 100644
index 0000000000..ee04d5c605
--- /dev/null
+++ b/challenge-077/abigail/node/ch-2.js
@@ -0,0 +1,60 @@
+//
+// Exercise:
+// You are given m x n character matrix consists of O and X only.
+// Write a script to count the total number of X surrounded by O only.
+// Print 0 if none found.
+//
+
+//
+// Read in the board:
+// - Read STDIN
+// - Split by newlines
+// - Split each line on spaces
+// - Map an 'X' to a 1, 'O' to a 0.
+// - Add a 0 to the beginning and end of each line.
+//
+let fs = require ("fs");
+let board = fs . readFileSync (0) . toString () . trim () . split ("\n") .
+ map (line => (line . split (" ")) . map (c => c == "X" ? 1 : 0)) .
+ map (line => ([0] . concat (line) . concat ([0])));
+
+//
+// Add top and bottom with 0s
+//
+board . push (board [0] . map (x => 0));
+board . unshift (board [0] . map (x => 0));
+
+let count = 0;
+
+//
+// Iterate over the cells of the board board, skipping cells on the edge
+// (as we added them). For each 1, check the 8 cells surrounding the cell
+// (this will never be outside of the board). If one of the neighbouring
+// cells is a 1, move on the next cell. If no neighbouring cell is 1,
+// we add 1 to the count.
+//
+for (let x = 1; x < board . length - 1; x ++) {
+ ELEMENT:
+ for (let y = 1; y < board [x] . length - 1; y ++) {
+ if (!board [x] [y]) {
+ continue;
+ }
+ for (let dx = -1; dx <= 1; dx ++) {
+ for (let dy = -1; dy <= 1; dy ++) {
+ if (dx == 0 && dy == 0) {
+ continue;
+ }
+ if (board [x + dx] [y + dy]) {
+ continue ELEMENT;
+ }
+ }
+ }
+ count ++;
+ }
+}
+
+
+//
+// Print the results.
+//
+console . log (count);
diff --git a/challenge-077/abigail/perl/ch-1.pl b/challenge-077/abigail/perl/ch-1.pl
new file mode 100644
index 0000000000..b39028c5b9
--- /dev/null
+++ b/challenge-077/abigail/perl/ch-1.pl
@@ -0,0 +1,63 @@
+#!/opt/perl/bin/perl
+
+#
+# Exercise:
+# You are given a positive integer $N.
+# Write a script to find out all possible combination of Fibonacci
+# Numbers required to get $N on addition.
+#
+# You are NOT allowed to repeat a number. Print 0 if none found.
+#
+
+#
+# Note:
+# The "Print 0 if none found." is irrelevant. There is always at
+# least one way to write any positive integer as a sum of distinct
+# Fibonacci Numbers. (Zeckendorf's theorem states: "very positive
+# integer can be represented uniquely as the sum of one or more
+# distinct Fibonacci numbers in such a way that the sum does not
+# include any two consecutive Fibonacci numbers")
+#
+
+use 5.032;
+
+use strict;
+use warnings;
+no warnings 'syntax';
+
+use experimental 'signatures';
+use experimental 'lexical_subs';
+
+chomp (my $N = <>);
+
+#
+# Create a list of Fibonacci Numbers up to $N. We will start with (1, 2),
+# skipping the first two numbers 0 and 1. 0 doesn't add anything, and
+# we cannot duplicate numbers, so we just need one 1.
+#
+my @FIB = (1, 2);
+while ($FIB [-1] + $FIB [-2] <= $N) {
+ push @FIB => $FIB [-1] + $FIB [-2];
+}
+
+sub solutions;
+
+#
+# Create all solutions for number $target, with all Fibonnaci numbers
+# having index $index or above.
+#
+sub solutions ($target, $index = 0) {
+ map {
+ my $fib = $FIB [$_];
+ $target < $fib ? ()
+ : $target == $fib ? [$target]
+ : map {[$fib, @$_]} solutions ($target - $fib, $_ + 1)
+ } $index .. @FIB - 1;
+}
+
+my @all = solutions $N;
+
+local $" = " + ";
+say "@$_ = $N" for @all;
+
+__END__
diff --git a/challenge-077/abigail/perl/ch-2.pl b/challenge-077/abigail/perl/ch-2.pl
new file mode 100644
index 0000000000..784f4cd662
--- /dev/null
+++ b/challenge-077/abigail/perl/ch-2.pl
@@ -0,0 +1,56 @@
+#!/opt/perl/bin/perl
+
+#
+# Exercise:
+# You are given m x n character matrix consists of O and X only.
+# Write a script to count the total number of X surrounded by O only.
+# Print 0 if none found.
+#
+
+use 5.032;
+
+use strict;
+use warnings;
+no warnings 'syntax';
+
+use experimental 'signatures';
+use experimental 'lexical_subs';
+
+#
+# Read in the board. Use 1 for an X, and 0 for an 0. Add a band
+# of 0's around the board.
+#
+
+my @board = map {[0, map ({/O/ ? 0 : 1} /[OX]/g), 0]} <>;
+push @board => [(0) x @{$board [0]}];
+unshift @board => [(0) x @{$board [0]}];
+
+my $count = 0;
+
+#
+# Iterate over the cells of the board board, skipping cells on the edge
+# (as we added them). For each 1, check the 8 cells surrounding the cell
+# (this will never be outside of the board). If one of the neighbouring
+# cells is a 1, move on the next cell. If no neighbouring cell is 1,
+# we add 1 to the count.
+#
+for (my $x = 1; $x < @board - 1; $x ++) {
+ ELEMENT:
+ for (my $y = 1; $y < @{$board [$x]} - 1; $y ++) {
+ next unless $board [$x] [$y];
+ foreach my $dx (-1 .. 1) {
+ foreach my $dy (-1 .. 1) {
+ next unless $dx || $dy;
+ next ELEMENT if $board [$x + $dx] [$y + $dy];
+ }
+ }
+ $count ++;
+ }
+}
+
+#
+# Print solution.
+#
+say $count;
+
+__END__
diff --git a/stats/pwc-challenge-077.json b/stats/pwc-challenge-077.json
index 4a4f0da69d..4264dc3524 100644
--- a/stats/pwc-challenge-077.json
+++ b/stats/pwc-challenge-077.json
@@ -1,13 +1,222 @@
{
- "subtitle" : {
- "text" : "[Champions: 34] Last updated at 2020-09-14 08:43:07 GMT"
+ "yAxis" : {
+ "title" : {
+ "text" : "Total Solutions"
+ }
},
- "chart" : {
- "type" : "column"
+ "tooltip" : {
+ "headerFormat" : "<span style='font-size:11px'>{series.name}</span><br/>",
+ "pointFormat" : "<span style='color:{point.color}'>{point.name}</span>: <b>{point.y:f}</b><br/>",
+ "followPointer" : 1
+ },
+ "xAxis" : {
+ "type" : "category"
+ },
+ "series" : [
+ {
+ "name" : "Perl Weekly Challenge - 077",
+ "data" : [
+ {
+ "drilldown" : "Abigail",
+ "name" : "Abigail",
+ "y" : 2
+ },
+ {
+ "y" : 3,
+ "name" : "Adam Russell",
+ "drilldown" : "Adam Russell"
+ },
+ {
+ "y" : 2,
+ "name" : "Alexander Pankoff",
+ "drilldown" : "Alexander Pankoff"
+ },
+ {
+ "drilldown" : "Andinus",
+ "name" : "Andinus",
+ "y" : 2
+ },
+ {
+ "y" : 5,
+ "drilldown" : "Andrew Shitov",
+ "name" : "Andrew Shitov"
+ },
+ {
+ "y" : 3,
+ "name" : "Arne Sommer",
+ "drilldown" : "Arne Sommer"
+ },
+ {
+ "y" : 4,
+ "drilldown" : "Athanasius",
+ "name" : "Athanasius"
+ },
+ {
+ "drilldown" : "Bob Lied",
+ "name" : "Bob Lied",
+ "y" : 2
+ },
+ {
+ "name" : "Cheok-Yin Fung",
+ "drilldown" : "Cheok-Yin Fung",
+ "y" : 3
+ },
+ {
+ "y" : 5,
+ "drilldown" : "Colin Crain",
+ "name" : "Colin Crain"
+ },
+ {
+ "drilldown" : "Dave Jacoby",
+ "name" : "Dave Jacoby",
+ "y" : 2
+ },
+ {
+ "name" : "Duncan C. White",
+ "drilldown" : "Duncan C. White",
+ "y" : 2
+ },
+ {
+ "y" : 2,
+ "drilldown" : "E. Choroba",
+ "name" : "E. Choroba"
+ },
+ {
+ "name" : "Feng Chang",
+ "drilldown" : "Feng Chang",
+ "y" : 2
+ },
+ {
+ "drilldown" : "Flavio Poletti",
+ "name" : "Flavio Poletti",
+ "y" : 2
+ },
+ {
+ "y" : 1,
+ "name" : "Jan Krnavek",
+ "drilldown" : "Jan Krnavek"
+ },
+ {
+ "y" : 2,
+ "drilldown" : "Jason Messer",
+ "name" : "Jason Messer"
+ },
+ {
+ "drilldown" : "Jorg Sommrey",
+ "name" : "Jorg Sommrey",
+ "y" : 2
+ },
+ {
+ "y" : 5,
+ "drilldown" : "Laurent Rosenfeld",
+ "name" : "Laurent Rosenfeld"
+ },
+ {
+ "y" : 2,
+ "drilldown" : "Lubos Kolouch",
+ "name" : "Lubos Kolouch"
+ },
+ {
+ "name" : "Mark Anderson",
+ "drilldown" : "Mark Anderson",
+ "y" : 2
+ },
+ {
+ "name" : "Markus Holzer",
+ "drilldown" : "Markus Holzer",
+ "y" : 2
+ },
+ {
+ "y" : 6,
+ "name" : "Mohammad S Anwar",
+ "drilldown" : "Mohammad S Anwar"
+ },
+ {
+ "y" : 4,
+ "drilldown" : "Myoungjin Jeon",
+ "name" : "Myoungjin Jeon"
+ },
+ {
+ "y" : 2,
+ "name" : "Niels van Dijke",
+ "drilldown" : "Niels van Dijke"
+ },
+ {
+ "drilldown" : "Nuno Vieira",
+ "name" : "Nuno Vieira",
+ "y" : 2
+ },
+ {
+ "y" : 2,
+ "drilldown" : "P6steve",
+ "name" : "P6steve"
+ },
+ {
+ "y" : 2,
+ "name" : "Pete Houston",
+ "drilldown" : "Pete Houston"
+ },
+ {
+ "y" : 5,
+ "drilldown" : "Roger Bell_West",
+ "name" : "Roger Bell_West"
+ },
+ {
+ "name" : "Shahed Nooshmand",
+ "drilldown" : "Shahed Nooshmand",
+ "y" : 3
+ },
+ {
+ "name" : "Simon Green",
+ "drilldown" : "Simon Green",
+ "y" : 3
+ },
+ {
+ "drilldown" : "Simon Proctor",
+ "name" : "Simon Proctor",
+ "y" : 2
+ },
+ {
+ "y" : 2,
+ "drilldown" : "Ulrich Rieke",
+ "name" : "Ulrich Rieke"
+ },
+ {
+ "name" : "Walt Mankowski",
+ "drilldown" : "Walt Mankowski",
+ "y" : 3
+ },
+ {
+ "name" : "Wanderdoc",
+ "drilldown" : "Wanderdoc",
+ "y" : 1
+ }
+ ],
+ "colorByPoint" : 1
+ }
+ ],
+ "plotOptions" : {
+ "series" : {
+ "borderWidth" : 0,
+ "dataLabels" : {
+ "format" : "{point.y}",
+ "enabled" : 1
+ }
+ }
},
"drilldown" : {
"series" : [
{
+ "name" : "Abigail",
+ "data" : [
+ [
+ "Perl",
+ 2
+ ]
+ ],
+ "id" : "Abigail"
+ },
+ {
"data" : [
[
"Perl",
@@ -18,20 +227,21 @@
1
]
],
- "name" : "Adam Russell",
- "id" : "Adam Russell"
+ "id" : "Adam Russell",
+ "name" : "Adam Russell"
},
{
+ "name" : "Alexander Pankoff",
"data" : [
[
"Perl",
2
]
],
- "name" : "Alexander Pankoff",
"id" : "Alexander Pankoff"
},
{
+ "name" : "Andinus",
"data" : [
[
"Perl",
@@ -42,10 +252,10 @@
1
]
],
- "id" : "Andinus",
- "name" : "Andinus"
+ "id" : "Andinus"
},
{
+ "id" : "Andrew Shitov",
"data" : [
[
"Perl",
@@ -60,10 +270,10 @@
2
]
],
- "name" : "Andrew Shitov",
- "id" : "Andrew Shitov"
+ "name" : "Andrew Shitov"
},
{
+ "id" : "Arne Sommer",
"data" : [
[
"Raku",
@@ -74,11 +284,9 @@
1
]
],
- "id" : "Arne Sommer",
"name" : "Arne Sommer"
},
{
- "name" : "Athanasius",
"data" : [
[
"Perl",
@@ -89,20 +297,20 @@
2
]
],
- "id" : "Athanasius"
+ "id" : "Athanasius",
+ "name" : "Athanasius"
},
{
+ "id" : "Bob Lied",
"data" : [
[
"Perl",
2
]
],
- "id" : "Bob Lied",
"name" : "Bob Lied"
},
{
- "id" : "Cheok-Yin Fung",
"data" : [
[
"Perl",
@@ -113,10 +321,11 @@
1
]
],
+ "id" : "Cheok-Yin Fung",
"name" : "Cheok-Yin Fung"
},
{
- "id" : "Colin Crain",
+ "name" : "Colin Crain",
"data" : [
[
"Perl",
@@ -131,47 +340,47 @@
1
]
],
- "name" : "Colin Crain"
+ "id" : "Colin Crain"
},
{
- "name" : "Dave Jacoby",
+ "id" : "Dave Jacoby",
"data" : [
[
"Perl",
2
]
],
- "id" : "Dave Jacoby"
+ "name" : "Dave Jacoby"
},
{
+ "id" : "Duncan C. White",
"data" : [
[
"Perl",
2
]
],
- "id" : "Duncan C. White",
"name" : "Duncan C. White"
},
{
+ "id" : "E. Choroba",
"data" : [
[
"Perl",
2
]
],
- "name" : "E. Choroba",
- "id" : "E. Choroba"
+ "name" : "E. Choroba"
},
{
"name" : "Feng Chang",
+ "id" : "Feng Chang",
"data" : [
[
"Raku",
2
]
- ],
- "id" : "Feng Chang"
+ ]
},
{
"data" : [
@@ -180,40 +389,41 @@
2
]
],
- "name" : "Flavio Poletti",
- "id" : "Flavio Poletti"
+ "id" : "Flavio Poletti",
+ "name" : "Flavio Poletti"
},
{
- "name" : "Jan Krnavek",
+ "id" : "Jan Krnavek",
"data" : [
[
"Raku",
1
]
],
- "id" : "Jan Krnavek"
+ "name" : "Jan Krnavek"
},
{
"name" : "Jason Messer",
+ "id" : "Jason Messer",
"data" : [
[
"Raku",
2
]
- ],
- "id" : "Jason Messer"
+ ]
},
{
- "name" : "Jorg Sommrey",
+ "id" : "Jorg Sommrey",
"data" : [
[
"Perl",
2
]
],
- "id" : "Jorg Sommrey"
+ "name" : "Jorg Sommrey"
},
{
+ "name" : "Laurent Rosenfeld",
"data" : [
[
"Perl",
@@ -228,40 +438,40 @@
1
]
],
- "name" : "Laurent Rosenfeld",
"id" : "Laurent Rosenfeld"
},
{
- "id" : "Lubos Kolouch",
"data" : [
[
"Perl",
2
]
],
+ "id" : "Lubos Kolouch",
"name" : "Lubos Kolouch"
},
{
+ "id" : "Mark Anderson",
"data" : [
[
"Raku",
2
]
],
- "name" : "Mark Anderson",
- "id" : "Mark Anderson"
+ "name" : "Mark Anderson"
},
{
+ "name" : "Markus Holzer",
"data" : [
[
"Raku",
2
]
],
- "name" : "Markus Holzer",
"id" : "Markus Holzer"
},
{
+ "name" : "Mohammad S Anwar",
"id" : "Mohammad S Anwar",
"data" : [
[
@@ -276,11 +486,10 @@
"Blog",
2
]
- ],
- "name" : "Mohammad S Anwar"
+ ]
},
{
- "name" : "Myoungjin Jeon",
+ "id" : "Myoungjin Jeon",
"data" : [
[
"Perl",
@@ -291,49 +500,50 @@
2
]
],
- "id" : "Myoungjin Jeon"
+ "name" : "Myoungjin Jeon"
},
{
- "id" : "Niels van Dijke",
+ "name" : "Niels van Dijke",
"data" : [
[
"Perl",
2
]
],
- "name" : "Niels van Dijke"
+ "id" : "Niels van Dijke"
},
{
+ "id" : "Nuno Vieira",
"data" : [
[
"Perl",
2
]
],
- "name" : "Nuno Vieira",
- "id" : "Nuno Vieira"
+ "name" : "Nuno Vieira"
},
{
- "id" : "P6steve",
"data" : [
[
"Raku",
2
]
],
+ "id" : "P6steve",
"name" : "P6steve"
},
{
- "name" : "Pete Houston",
"data" : [
[
"Perl",
2
]
],
- "id" : "Pete Houston"
+ "id" : "Pete Houston",
+ "name" : "Pete Houston"
},
{
+ "name" : "Roger Bell_West",
"data" : [
[
"Perl",
@@ -348,10 +558,10 @@
1
]
],
- "id" : "Roger Bell_West",
- "name" : "Roger Bell_West"
+ "id" : "Roger Bell_West"
},
{
+ "id" : "Shahed Nooshmand",
"data" : [
[
"Raku",
@@ -362,11 +572,10 @@
1
]
],
- "id" : "Shahed Nooshmand",
"name" : "Shahed Nooshmand"
},
{
- "name" : "Simon Green",
+ "id" : "Simon Green",
"data" : [
[
"Perl",
@@ -377,7 +586,7 @@
1
]
],
- "id" : "Simon Green"
+ "name" : "Simon Green"
},
{
"name" : "Simon Proctor",
@@ -390,7 +599,6 @@
"id" : "Simon Proctor"
},
{
- "id" : "Ulrich Rieke",
"data" : [
[
"Perl",
@@ -401,9 +609,11 @@
1
]
],
+ "id" : "Ulrich Rieke",
"name" : "Ulrich Rieke"
},
{
+ "name" : "Walt Mankowski",
"data" : [
[
"Perl",
@@ -414,7 +624,6 @@
1
]
],
- "name" : "Walt Mankowski",
"id" : "Walt Mankowski"
},
{
@@ -424,215 +633,21 @@
1
]
],
- "name" : "Wanderdoc",
- "id" : "Wanderdoc"
+ "id" : "Wanderdoc",
+ "name" : "Wanderdoc"
}
]
},
- "tooltip" : {
- "headerFormat" : "<span style='font-size:11px'>{series.name}</span><br/>",
- "pointFormat" : "<span style='color:{point.color}'>{point.name}</span>: <b>{point.y:f}</b><br/>",
- "followPointer" : 1
+ "subtitle" : {
+ "text" : "[Champions: 35] Last updated at 2020-09-15 18:13:33 GMT"
},
"legend" : {
"enabled" : 0
},
- "series" : [
- {
- "data" : [
- {
- "name" : "Adam Russell",
- "drilldown" : "Adam Russell",
- "y" : 3
- },
- {
- "name" : "Alexander Pankoff",
- "drilldown" : "Alexander Pankoff",
- "y" : 2
- },
- {
- "y" : 2,
- "drilldown" : "Andinus",
- "name" : "Andinus"
- },
- {
- "name" : "Andrew Shitov",
- "drilldown" : "Andrew Shitov",
- "y" : 5
- },
- {
- "y" : 3,
- "drilldown" : "Arne Sommer",
- "name" : "Arne Sommer"
- },
- {
- "name" : "Athanasius",
- "drilldown" : "Athanasius",
- "y" : 4
- },
- {
- "drilldown" : "Bob Lied",
- "y" : 2,
- "name" : "Bob Lied"
- },
- {
- "name" : "Cheok-Yin Fung",
- "drilldown" : "Cheok-Yin Fung",
- "y" : 3
- },
- {
- "name" : "Colin Crain",
- "y" : 5,
- "drilldown" : "Colin Crain"
- },
- {
- "y" : 2,
- "drilldown" : "Dave Jacoby",
- "name" : "Dave Jacoby"
- },
- {
- "name" : "Duncan C. White",
- "y" : 2,
- "drilldown" : "Duncan C. White"
- },
- {
- "name" : "E. Choroba",
- "drilldown" : "E. Choroba",
- "y" : 2
- },
- {
- "drilldown" : "Feng Chang",
- "y" : 2,
- "name" : "Feng Chang"
- },
- {
- "drilldown" : "Flavio Poletti",
- "y" : 2,
- "name" : "Flavio Poletti"
- },
- {
- "name" : "Jan Krnavek",
- "y" : 1,
- "drilldown" : "Jan Krnavek"
- },
- {
- "drilldown" : "Jason Messer",
- "y" : 2,
- "name" : "Jason Messer"
- },
- {
- "name" : "Jorg Sommrey",
- "drilldown" : "Jorg Sommrey",
- "y" : 2
- },
- {
- "drilldown" : "Laurent Rosenfeld",
- "y" : 5,
- "name" : "Laurent Rosenfeld"
- },
- {
- "name" : "Lubos Kolouch",
- "drilldown" : "Lubos Kolouch",
- "y" : 2
- },
- {
- "y" : 2,
- "drilldown" : "Mark Anderson",
- "name" : "Mark Anderson"
- },
- {
- "name" : "Markus Holzer",
- "drilldown" : "Markus Holze