diff options
| -rwxr-xr-x | challenge-164/colin-crain/perl/ch-1.pl | 37 | ||||
| -rwxr-xr-x | challenge-164/colin-crain/perl/ch-2.pl | 190 | ||||
| -rwxr-xr-x | challenge-164/colin-crain/raku/ch-1.raku | 17 | ||||
| -rwxr-xr-x | challenge-164/colin-crain/raku/ch-2.raku | 25 | ||||
| -rw-r--r-- | stats/pwc-current.json | 610 | ||||
| -rw-r--r-- | stats/pwc-language-breakdown-summary.json | 70 | ||||
| -rw-r--r-- | stats/pwc-language-breakdown.json | 1070 | ||||
| -rw-r--r-- | stats/pwc-leaders.json | 754 | ||||
| -rw-r--r-- | stats/pwc-summary-1-30.json | 98 | ||||
| -rw-r--r-- | stats/pwc-summary-121-150.json | 94 | ||||
| -rw-r--r-- | stats/pwc-summary-151-180.json | 48 | ||||
| -rw-r--r-- | stats/pwc-summary-181-210.json | 108 | ||||
| -rw-r--r-- | stats/pwc-summary-211-240.json | 116 | ||||
| -rw-r--r-- | stats/pwc-summary-241-270.json | 74 | ||||
| -rw-r--r-- | stats/pwc-summary-31-60.json | 40 | ||||
| -rw-r--r-- | stats/pwc-summary-61-90.json | 52 | ||||
| -rw-r--r-- | stats/pwc-summary-91-120.json | 116 | ||||
| -rw-r--r-- | stats/pwc-summary.json | 60 |
18 files changed, 1928 insertions, 1651 deletions
diff --git a/challenge-164/colin-crain/perl/ch-1.pl b/challenge-164/colin-crain/perl/ch-1.pl new file mode 100755 index 0000000000..26fe99849f --- /dev/null +++ b/challenge-164/colin-crain/perl/ch-1.pl @@ -0,0 +1,37 @@ +#!/Users/colincrain/perl5/perlbrew/perls/perl-5.32.0/bin/perl
+#
+# palaprime_party.pl
+#
+#
+#
+# © 2022 colin crain
+## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ##
+
+
+
+use warnings;
+use strict;
+use utf8;
+use feature ":5.26";
+use feature qw(signatures);
+no warnings 'experimental::signatures';
+
+
+my $input = shift @ARGV // 1000;
+
+sub sieve ($limit) {
+ my @s = (1) x $limit;
+ @s[0,1] = (0,0);
+ for my $f (2..sqrt($limit)) {
+ $s[$f * $_] = 0 for $f..$limit/$f;
+ }
+ return grep { $s[$_] } (0..$limit);
+}
+
+say $_ for grep { /^(.*).?(??{reverse($1)})$/ } sieve($input);
+
+
+
+
+
+
diff --git a/challenge-164/colin-crain/perl/ch-2.pl b/challenge-164/colin-crain/perl/ch-2.pl new file mode 100755 index 0000000000..cd3a6a46fb --- /dev/null +++ b/challenge-164/colin-crain/perl/ch-2.pl @@ -0,0 +1,190 @@ +#!/Users/colincrain/perl5/perlbrew/perls/perl-5.32.0/bin/perl
+#
+# happy-happy-joy-joy.pl
+#
+# Happy Numbers
+# Submitted by: Robert DiCicco
+# Write a script to find the first 8 Happy Numbers in base 10. For
+# more information, please check out Wikipedia.
+#
+# Starting with any positive integer, replace the number by the sum
+# of the squares of its digits, and repeat the process until the
+# number equals 1 (where it will stay), or it loops endlessly in a
+# cycle which does not include 1.
+#
+# Those numbers for which this process end in 1 are happy numbers,
+# while those numbers that do not end in 1 are unhappy numbers.
+#
+# Example:
+#
+# 19 is Happy Number in base 10, as shown:
+#
+# 19 => 1^2 + 9^2
+# => 1 + 81
+# => 82 => 8^2 + 2^2
+# => 64 + 4
+# => 68 => 6^2 + 8^2
+# => 36 + 64
+# => 100 => 1^2 + 0^2 + 0^2
+# => 1 + 0 + 0
+# => 1
+#
+# commentary:
+
+# What makes a number happy? According to one theory, whose
+# origins are lost to history, it's the presence of a numeric
+# imperative; of a timeline; of eventual closure to its
+# existence.
+#
+# In short, as we travel through life, we end up repeating
+# similar actions again and again. The particulars my change,
+# but the framework is what we know and how we know, and that
+# remains consistent. If that resolves then we get closure and
+# ultimately from this a sense of purpose, but if we find
+# ourselves in the same situation again and again, so much that
+# we know the outcome before we start, than we are unhappy,
+# stuck in a loop, going nowhere, without meaning for the
+# future and by extension the past.
+#
+# This is a pretty heady philosophical position for a number,
+# unexpected as we generally consider the mathematical realm
+# removed from the internal conflicts the physical plane.
+#
+# I personally have always considered the numbers to be above
+# such emotional tethers, otherwise engaged in cosmic
+# connections that we on Earth are only just beginning to
+# comprehend.
+#
+# This in turn leads to questions of anthromophication of these
+# entities, and whether the idea itself of happiness transcends
+# the human condition, somehow wrapped in a larger concept of
+# unity and truth to a broader nature: that we experience what
+# we call happiness because we are somehow engaging in some
+# larger process without conflict. This brings to mind
+# questions abouut the apparent singular directionality of
+# time, and with that movement direction, of action combined
+# with data.
+#
+# This last idea is modeled in container theory, providing
+# another bridge between the worlds, so the fundamental premise
+# seems somewhat less far-fetched.
+#
+# As stated before, the source of this philosophical premise
+# about happy, and by extension unhappy, numbers is itself
+# unknown, which is somehow consistent and ultimately fitting.
+# The nunbers themselves are notoriously tight-lipped on the
+# subject.
+
+# background:
+#
+
+# At the intersection of dynamical systems and number theory
+# lies the field of arithmetic dynamics, examining the evolving
+# state of parameters in an transformation equation repeatedly
+# applied to the same mutating data. This process of
+# re-applying a mapping to a field of data points is known as
+# an iterated function. In arithmetic dynamics these methods
+# are used on number-theoretical functions, looking for
+# underlying structures behind these equation classes.
+#
+# The transformation of squaring and summing the coefficients
+# of a polynomial expansion of a representational number,
+# repeatedly applied until the result stabilizes into either a
+# set result of a known cyclic pattern is one such system, and
+# the determiniation of a number's happiness an analysis of
+# that system.
+#
+# The most familiar application of dynamical systems analysis
+# if the preparation of the Mandelbrot set, which is constucted
+# from points on the complex plane repeatedly iterated through
+# the transformation
+#
+# *z* = *z*² + *c*
+#
+# The set, visualized for a given constant *c*, is those points
+# where the reperated application of the iterated function is
+# determined to converge, versus those where the result is
+# unbounded, with emphasis placed on the properties of the edge
+# between the two possible outcomes and its particular fractal
+# nature.
+#
+# In general, the actual parameter ranges observed in a
+# dynamical system are known as the state space, and the
+# meta-analytical analysis and mapping of the possible
+# parameter states for a given equation is known as the phase
+# space. Constrained
+#
+# self-referential feedback systems metastable
+
+
+
+
+# method:
+
+# To actually accompish the task we will revisit a technique we
+# developed back in PWC106, where we had to recognize a
+# repeating cycle of digits in a decimal representation of a
+# fraction. In identifying a reptend, we modeled long division,
+# and recognized that should a given remainder repeat once we
+# were carrying down 0s, then that cycle would continue
+# indefinitely. In a similar way, if one of our arthimetic
+# transformations produces a previously seen result then we
+# know that some repeating cycle will bring us around to that
+# point again, with no variance is allowed in the process.
+#
+# Thus we establish a "seen" hash of all results caluculated,
+# and after a transormation compare the result to the keys in
+# this hash; if the key is present we are trapped in a
+# repeating cycle an cannot escape.
+#
+# Alternately, if our reduction reaches 1 then we have won and
+# can stop the transformation loop.
+#
+#
+#
+# © 2022 colin crain
+## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ##
+
+
+
+use warnings;
+use strict;
+use utf8;
+use feature ":5.26";
+use feature qw(signatures);
+no warnings 'experimental::signatures';
+
+use List::Util qw( sum );
+
+my $q = shift // 8;
+my @out;
+
+while ( @out < $q and ++$_ ){
+ push @out, $_ if happy($_);
+}
+
+{
+ local $" = ', ';
+ $_ = "@out";
+ say;
+}
+
+sub happy ($num) {
+ my %seen = ( $num => 1 );
+
+ while ( $num != 1 ) {
+ $num = sum map { $_ ** 2 } split //, $num;
+ return 0 if $seen{$num};
+ $seen{$num} = 1;
+ }
+ return $num;
+}
+
+
+
+
+__END__
+
+the 10-happy number sequence up to 100:
+1, 7, 10, 13, 19, 23, 28, 31, 32, 44, 49, 68, 70, 79, 82, 86, 91, 94, 97, 100
+
diff --git a/challenge-164/colin-crain/raku/ch-1.raku b/challenge-164/colin-crain/raku/ch-1.raku new file mode 100755 index 0000000000..f2284b2dea --- /dev/null +++ b/challenge-164/colin-crain/raku/ch-1.raku @@ -0,0 +1,17 @@ +#!/usr/bin/env perl6 +# +# +# palaprime-party.raku +# +# +# +# © 2022 colin crain +## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## + + + +unit sub MAIN () ; + +.say for (1..1000).grep({ $_.is-prime + and $_ ~~ m:ex/^ (.*) {} .? "{$0.flip}" $/}); + diff --git a/challenge-164/colin-crain/raku/ch-2.raku b/challenge-164/colin-crain/raku/ch-2.raku new file mode 100755 index 0000000000..b49e3d7ee8 --- /dev/null +++ b/challenge-164/colin-crain/raku/ch-2.raku @@ -0,0 +1,25 @@ +#!/usr/bin/env perl6 +# +# +# happy-happy-joy-joy.raku +# +# +# +# © 2022 colin crain +## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## + + + +unit sub MAIN ( $q = 8 ) ; + + +put ((1..*).grep({ happy($_) }))[0..7] ; + +sub happy ($num is copy) { + my %seen = $num, 1; + while ( $num != 1 ) { + $num = $num.comb.map(*²).sum and %seen{$num} ?? return 0 + !! %seen{$num}++; + } + return 1; +} diff --git a/stats/pwc-current.json b/stats/pwc-current.json index 70d38733fb..d9b421401b 100644 --- a/stats/pwc-current.json +++ b/stats/pwc-current.json @@ -1,227 +1,7 @@ { - "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/>" - }, - "subtitle" : { - "text" : "[Champions: 40] Last updated at 2022-05-16 01:33:14 GMT" - }, - "series" : [ - { - "colorByPoint" : 1, - "data" : [ - { - "y" : 4, - "name" : "Adam Russell", - "drilldown" : "Adam Russell" - }, - { - "y" : 2, - "drilldown" : "Alexander Pankoff", - "name" : "Alexander Pankoff" - }, - { - "name" : "Ali Moradi", - "drilldown" : "Ali Moradi", - "y" : 2 - }, - { - "y" : 5, - "name" : "Arne Sommer", - "drilldown" : "Arne Sommer" - }, - { - "drilldown" : "Athanasius", - "name" : "Athanasius", - "y" : 4 - }, - { - "name" : "Bruce Gray", - "drilldown" : "Bruce Gray", - "y" : 2 - }, - { - "y" : 2, - "drilldown" : "Cheok-Yin Fung", - "name" : "Cheok-Yin Fung" - }, - { - "y" : 1, - "drilldown" : "Colin Crain", - "name" : "Colin Crain" - }, - { - "name" : "Dave Jacoby", - "drilldown" : "Dave Jacoby", - "y" : 3 - }, - { - "name" : "Duncan C. White", - "drilldown" : "Duncan C. White", - "y" : 2 - }, - { - "drilldown" : "E. Choroba", - "name" : "E. Choroba", - "y" : 2 - }, - { - "name" : "Flavio Poletti", - "drilldown" : "Flavio Poletti", - "y" : 6 - }, - { - "y" : 2, - "name" : "Humberto Massa", - "drilldown" : "Humberto Massa" - }, - { - "drilldown" : "Jaldhar H. Vyas", - "name" : "Jaldhar H. Vyas", - "y" : 5 - }, - { - "name" : "James Marquis", - "drilldown" : "James Marquis", - "y" : 1 - }, - { - "y" : 3, - "name" : "James Smith", - "drilldown" : "James Smith" - }, - { - "y" : 2, - "name" : "Jan Krnavek", - "drilldown" : "Jan Krnavek" - }, - { - "name" : "Jorg Sommrey", - "drilldown" : "Jorg Sommrey", - "y" : 2 - }, - { - "name" : "Julien Fiegehenn", - "drilldown" : "Julien Fiegehenn", - "y" : 2 - }, - { - "drilldown" : "Kjetil Skotheim", - "name" : "Kjetil Skotheim", - "y" : 2 - }, - { - "name" : "Laurent Rosenfeld", - "drilldown" : "Laurent Rosenfeld", - "y" : 5 - }, - { - "name" : "Lubos Kolouch", - "drilldown" : "Lubos Kolouch", - "y" : 2 - }, - { - "y" : 8, - "name" : "Luca Ferrari", - "drilldown" : "Luca Ferrari" - }, - { - "drilldown" : "Luiz Felipe", - "name" : "Luiz Felipe", - "y" : 2 - }, - { - "name" : "Mark Anderson", - "drilldown" : "Mark Anderson", - "y" : 2 - }, - { - "drilldown" : "Mark Senn", - "name" : "Mark Senn", - "y" : 4 - }, - { - "name" : "Marton Polgar", - "drilldown" : "Marton Polgar", - "y" : 2 - }, - { - "y" : 2, - "name" : "Matthew Neleigh", - "drilldown" : "Matthew Neleigh" - }, - { - "name" : "Mohammad S Anwar", - "drilldown" : "Mohammad S Anwar", - "y" : 1 - }, - { - "y" : 2, - "drilldown" : "Niels van Dijke", - "name" : "Niels van Dijke" - }, - { - "drilldown" : "Pete Houston", - "name" : "Pete Houston", - "y" : 2 - }, - { - "drilldown" : "Peter Campbell Smith", - "name" : "Peter Campbell Smith", - "y" : 3 - }, - { - "y" : 2, - "name" : "PokGoPun", - "drilldown" : "PokGoPun" - }, - { - "y" : 2, - "name" : "Rick Bychowski", - "drilldown" : "Rick Bychowski" - }, - { - "y" : 3, - "name" : "Robert DiCicco", - "drilldown" : "Robert DiCicco" - }, - { - "y" : 2, - "drilldown" : "Robert Ransbottom", - "name" : "Robert Ransbottom" - }, - { - "y" : 5, - "drilldown" : "Roger Bell_West", - "name" : "Roger Bell_West" - }, - { - "y" : 4, - "drilldown" : "Ryan Thompson", - "name" : "Ryan Thompson" - }, - { - "y" : 4, - "name" : "Ulrich Rieke", - "drilldown" : "Ulrich Rieke" - }, - { - "name" : "W. Luis Mochan", - "drilldown" : "W. Luis Mochan", - "y" : 3 - } - ], - "name" : "The Weekly Challenge - 164" - } - ], - "legend" : { - "enabled" : 0 - }, "drilldown" : { "series" : [ { - "id" : "Adam Russell", "name" : "Adam Russell", "data" : [ [ @@ -232,7 +12,8 @@ "Blog", 2 ] - ] + ], + "id" : "Adam Russell" }, { "id" : "Alexander Pankoff", @@ -246,13 +27,13 @@ }, { "id" : "Ali Moradi", - "name" : "Ali Moradi", "data" : [ [ "Perl", 2 ] - ] + ], + "name" : "Ali Moradi" }, { "id" : "Arne Sommer", @@ -273,6 +54,7 @@ "name" : "Arne Sommer" }, { + "id" : "Athanasius", "data" : [ [ "Perl", @@ -283,12 +65,11 @@ 2 ] ], - "name" : "Athanasius", - "id" : "Athanasius" + "name" : "Athanasius" }, { - "id" : "Bruce Gray", "name" : "Bruce Gray", + "id" : "Bruce Gray", "data" : [ [ "Raku", @@ -297,26 +78,35 @@ ] }, { + "id" : "Cheok-Yin Fung", "data" : [ [ "Perl", 2 ] ], - "name" : "Cheok-Yin Fung", - "id" : "Cheok-Yin Fung" + "name" : "Cheok-Yin Fung" }, { - "name" : "Colin Crain", + "id" : "Colin Crain", "data" : [ [ + "Perl", + 2 + ], + [ + "Raku", + 2 + ], + [ "Blog", 1 ] ], - "id" : "Colin Crain" + "name" : "Colin Crain" }, { + "id" : "Dave Jacoby", "data" : [ [ "Perl", @@ -327,8 +117,7 @@ 1 ] ], - "name" : "Dave Jacoby", - "id" : "Dave Jacoby" + "name" : "Dave Jacoby" }, { "data" : [ @@ -337,21 +126,21 @@ 2 ] ], - "name" : "Duncan C. White", - "id" : "Duncan C. White" + "id" : "Duncan C. White", + "name" : "Duncan C. White" }, { - "id" : "E. Choroba", - "name" : "E. Choroba", "data" : [ [ "Perl", 2 ] - ] + ], + "id" : "E. Choroba", + "name" : "E. Choroba" }, { - "id" : "Flavio Poletti", + "name" : "Flavio Poletti", "data" : [ [ "Perl", @@ -366,20 +155,19 @@ 2 ] ], - "name" : "Flavio Poletti" + "id" : "Flavio Poletti" }, { - "name" : "Humberto Massa", "data" : [ [ "Raku", 2 ] ], - "id" : "Humberto Massa" + "id" : "Humberto Massa", + "name" : "Humberto Massa" }, { - "id" : "Jaldhar H. Vyas", "name" : "Jaldhar H. Vyas", "data" : [ [ @@ -394,7 +182,8 @@ "Blog", 1 ] - ] + ], + "id" : "Jaldhar H. Vyas" }, { "name" : "James Marquis", @@ -408,7 +197,6 @@ }, { "id" : "James Smith", - "name" : "James Smith", "data" : [ [ "Perl", @@ -418,50 +206,52 @@ "Blog", 1 ] - ] + ], + "name" : "James Smith" }, { - "id" : "Jan Krnavek", - "name" : "Jan Krnavek", "data" : [ [ "Raku", 2 ] - ] + ], + "id" : "Jan Krnavek", + "name" : "Jan Krnavek" }, { + "name" : "Jorg Sommrey", "id" : "Jorg Sommrey", "data" : [ [ "Perl", 2 ] - ], - "name" : "Jorg Sommrey" + ] }, { - "id" : "Julien Fiegehenn", "data" : [ [ "Perl", 2 ] ], + "id" : "Julien Fiegehenn", "name" : "Julien Fiegehenn" }, { "id" : "Kjetil Skotheim", - "name" : "Kjetil Skotheim", "data" : [ [ "Perl", 2 ] - ] + ], + "name" : "Kjetil Skotheim" }, { "name" : "Laurent Rosenfeld", + "id" : "Laurent Rosenfeld", "data" : [ [ "Perl", @@ -475,21 +265,20 @@ "Blog", 1 ] - ], - "id" : "Laurent Rosenfeld" + ] }, { + "name" : "Lubos Kolouch", "id" : "Lubos Kolouch", "data" : [ [ "Perl", 2 ] - ], - "name" : "Lubos Kolouch" + ] }, { - "id" : "Luca Ferrari", + "name" : "Luca Ferrari", "data" : [ [ "Raku", @@ -500,30 +289,29 @@ 6 ] ], - "name" : "Luca Ferrari" + "id" : "Luca Ferrari" }, { + "id" : "Luiz Felipe", "data" : [ [ "Perl", 2 ] ], - "name" : "Luiz Felipe", - "id" : "Luiz Felipe" + "name" : "Luiz Felipe" }, { "id" : "Mark Anderson", - "name" : "Mark Anderson", "data" : [ [ "Raku", 2 ] - ] + ], + "name" : "Mark Anderson" }, { - "name" : "Mark Senn", "data" : [ [ "Raku", @@ -534,37 +322,38 @@ 2 ] ], - "id" : "Mark Senn" + "id" : "Mark Senn", + "name" : "Mark Senn" }, { - "name" : "Marton Polgar", "data" : [ [ "Raku", 2 ] ], - "id" : "Marton Polgar" + "id" : "Marton Polgar", + "name" : "Marton Polgar" }, { - "name" : "Matthew Neleigh", "data" : [ [ "Perl", 2 ] ], - "id" : "Matthew Neleigh" + "id" : "Matthew Neleigh", + "name" : "Matthew Neleigh" }, { - "id" : "Mohammad S Anwar", - "name" : "Mohammad S Anwar", "data" : [ [ "Perl", 1 ] - ] + ], + "id" : "Mohammad S Anwar", + "name" : "Mohammad S Anwar" }, { "data" : [ @@ -573,22 +362,20 @@ 2 ] ], - "name" : "Niels van Dijke", - "id" : "Niels van Dijke" + "id" : "Niels van Dijke", + "name" : "Niels van Dijke" }, { + "name" : "Pete Houston", "data" : [ [ "Perl", 2 ] ], - "name" : "Pete Houston", "id" : "Pete Houston" }, { - "id" : "Peter Campbell Smith", - "name" : "Peter Campbell Smith", "data" : [ [ "Perl", @@ -598,21 +385,23 @@ "Blog", 1 ] - ] + ], + "id" : "Peter Campbell Smith", + "name" : "Peter Campbell Smith" }, { - "id" : "PokGoPun", - "name" : "PokGoPun", "data" : [ [ "Perl", 2 ] - ] + ], + "id" : "PokGoPun", + "name" : "PokGoPun" }, { - "id" : "Rick Bychowski", "name" : "Rick Bychowski", + "id" : "Rick Bychowski", "data" : [ [ "Raku", @@ -621,6 +410,7 @@ ] }, { + "id" : "Robert DiCicco", "data" : [ [ "Perl", @@ -631,18 +421,17 @@ 2 ] ], - "name" : "Robert DiCicco", - "id" : "Robert DiCicco" + "name" : "Robert DiCicco" }, { + "name" : "Robert Ransbottom", + "id" : "Robert Ransbottom", "data" : [ [ "Raku", 2 ] - ], - "name" : "Robert Ransbottom", - "id" : "Robert Ransbottom" + ] }, { "id" : "Roger Bell_West", @@ -663,6 +452,7 @@ "name" : "Roger Bell_West" }, { + "name" : "Ryan Thompson", "id" : "Ryan Thompson", "data" : [ [ @@ -673,8 +463,7 @@ "Blog", 2 ] - ], - "name" : "Ryan Thompson" + ] }, { "id" : "Ulrich Rieke", @@ -691,6 +480,8 @@ "name" : "Ulrich Rieke" }, { + "name" : "W. Luis Mochan", + "id" : "W. Luis Mochan", "data" : [ [ "Perl", @@ -700,33 +491,250 @@ "Blog", 1 ] - ], - "name" : "W. Luis Mochan", - "id" : "W. Luis Mochan" + ] } ] }, + "title" : { + "text" : "The Weekly Challenge - 164" + }, "xAxis" : { "type" : "category" }, - "yAxis" : { - "title" : { - "text" : "Total Solutions" + "series" : [ + { + "name" : "The Weekly Challenge - 164", + "colorByPoint" : 1, + "data" : [ + { + "y" : 4, + "drilldown" : "Adam Russell", + "name" : "Adam Russell" + }, + { + "drilldown" : "Alexander Pankoff", + "name" : "Alexander Pankoff", + "y" : 2 + }, + { + "drilldown" : "Ali Moradi", + "name" : "Ali Moradi", + "y" : 2 + }, + { + "y" : 5, + "name" : "Arne Sommer", + "drilldown" : "Arne Sommer" + }, + { + "drilldown" : "Athanasius", + "name" : "Athanasius", + "y" : 4 + }, + { + "y" : 2, + "name" : "Bruce Gray", + "drilldown" : "Bruce Gray" + }, + { + "y" : 2, + "name" : "Cheok-Yin Fung", + "drilldown" : "Cheok-Yin Fung" + }, + { + "y" : 5, + "name" : "Colin Crain", + "drilldown" : "Colin |
