diff options
| -rwxr-xr-x | challenge-166/colin-crain/perl/ch-1.pl | 61 | ||||
| -rwxr-xr-x | challenge-166/colin-crain/perl/ch-2.pl | 147 | ||||
| -rw-r--r-- | stats/pwc-current.json | 349 | ||||
| -rw-r--r-- | stats/pwc-language-breakdown-summary.json | 60 | ||||
| -rw-r--r-- | stats/pwc-language-breakdown.json | 1162 | ||||
| -rw-r--r-- | stats/pwc-leaders.json | 708 | ||||
| -rw-r--r-- | stats/pwc-summary-1-30.json | 100 | ||||
| -rw-r--r-- | stats/pwc-summary-121-150.json | 102 | ||||
| -rw-r--r-- | stats/pwc-summary-151-180.json | 58 | ||||
| -rw-r--r-- | stats/pwc-summary-181-210.json | 100 | ||||
| -rw-r--r-- | stats/pwc-summary-211-240.json | 116 | ||||
| -rw-r--r-- | stats/pwc-summary-241-270.json | 78 | ||||
| -rw-r--r-- | stats/pwc-summary-31-60.json | 110 | ||||
| -rw-r--r-- | stats/pwc-summary-61-90.json | 96 | ||||
| -rw-r--r-- | stats/pwc-summary-91-120.json | 46 | ||||
| -rw-r--r-- | stats/pwc-summary.json | 578 |
16 files changed, 2047 insertions, 1824 deletions
diff --git a/challenge-166/colin-crain/perl/ch-1.pl b/challenge-166/colin-crain/perl/ch-1.pl new file mode 100755 index 0000000000..de342e1eb6 --- /dev/null +++ b/challenge-166/colin-crain/perl/ch-1.pl @@ -0,0 +1,61 @@ +#!/Users/colincrain/perl5/perlbrew/perls/perl-5.32.0/bin/perl
+#
+# hey-hexy-whatcha-doin.pl
+#
+# Hexadecimal Words
+# Submitted by: Ryan J Thompson
+# As an old systems programmer, whenever I needed to come up with a
+# 32-bit number, I would reach for the tired old examples like
+# 0xDeadBeef and 0xC0dedBad. I want more!
+#
+# Write a program that will read from a dictionary and find 2- to
+# 8-letter words that can be “spelled” in hexadecimal, with the
+# addition of the following letter substitutions:
+#
+# o ⟶ 0 (e.g., 0xf00d = “food”)
+# l ⟶ 1
+# i ⟶ 1
+# s ⟶ 5
+# t ⟶ 7
+#
+# You can use your own dictionary or you can simply open
+# ../../../data/dictionary.txt (relative to your script’s location
+# in our GitHub repository) to access the dictionary of common
+# words from Week #161.
+#
+# Optional Extras (for an 0xAddedFee, of course!) Limit the number
+# of “special” letter substitutions in any one result to keep that
+# result at least somewhat comprehensible. (0x51105010 is an actual
+# example from my sample solution you may wish to avoid!)
+#
+# Find phrases of words that total 8 characters in length (e.g.,
+# 0xFee1Face), rather than just individual words.
+
+# © 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( sum0 );
+
+my $dict = './dict.txt';
+open my $fh, '<', $dict or die "can't open dict $dict: $!\n";
+my @dict = grep { /^[a-folist]{2,8}$/ }
+ map { chomp; $_ } <$fh>;
+
+my %dlen;
+push $dlen{ length $_ }->@*, $_ for @dict;
+
+for my $len (reverse(2..8)) {
+ say "$len characters:";
+ say (sprintf "%10s => %-10s", $_, tr/olist/01157/r) for $dlen{$len}->@*;
+ say '';
+}
+
+
diff --git a/challenge-166/colin-crain/perl/ch-2.pl b/challenge-166/colin-crain/perl/ch-2.pl new file mode 100755 index 0000000000..141b827163 --- /dev/null +++ b/challenge-166/colin-crain/perl/ch-2.pl @@ -0,0 +1,147 @@ +#!/Users/colincrain/perl5/perlbrew/perls/perl-5.32.0/bin/perl
+#
+# different-directions.pl
+#
+# K-Directory Diff
+# Submitted by: Ryan J Thompson
+# Given a few (three or more) directories (non-recursively),
+# display a side-by-side difference of files that are missing from
+# at least one of the directories. Do not display files that exist
+# in every directory.
+#
+# Since the task is non-recursive, if you encounter a subdirectory,
+# append a /, but otherwise treat it the same as a regular file.
+#
+# Example
+# Given the following directory structure:
+#
+# dir_a:
+# Arial.ttf Comic_Sans.ttf Georgia.ttf Helvetica.ttf
+# Impact.otf Verdana.ttf Old_Fonts/
+#
+# dir_b:
+# Arial.ttf Comic_Sans.ttf Courier_New.ttf Helvetica.ttf
+# Impact.otf Tahoma.ttf Verdana.ttf
+#
+# dir_c:
+# Arial.ttf Courier_New.ttf Helvetica.ttf Impact.otf
+# Monaco.ttf Verdana.ttf
+#
+# expected output:
+# The output should look similar to the following:
+#
+# dir_a | dir_b | dir_c
+# -------------- | --------------- | ---------------
+# Comic_Sans.ttf | Comic_Sans.ttf |
+# | Courier_New.ttf | Courier_New.ttf
+# Georgia.ttf | |
+# | | Monaco.ttf
+# Old_Fonts/ | |
+# | Tahoma.ttf |
+#
+# method:
+
+# ok, quick and dirty. Suck the directories in as lists instead
+# of performing a proper `open` an `reddir`, Give each
+# "directory" a name. Then iterate through the directories and
+# populate a common hash of filenames pointing to an array of
+# directory names in fixed indexes
+#
+# Then reading through the indices of the array associated with
+# each filename, we can map them to a specific column for
+# output.
+#
+# We need to fiddle a bit to make sure every assoicated file
+# array has positions for each directory whether it's found in
+# that directory or not, so when we join them up we get
+# vertical bars for the columns. Purely cosemetic but it looks
+# nice
+#
+# Basically works by flipping the data on its side using a
+# clever data structure and just reading it out again. At least
+# that's the way I think of it.
+#
+# Assumes we don't want dotfiles and directories don't come
+# with a trailing slash
+#
+# © 2022 colin crain
+## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ##
+
+
+
+use warnings;
+use strict;
+use utf8;
+use feature ":5.26";
+use feature qw(signatures);
+no warnings 'experimental::signatures';
+
+## INPUT DIRECTORY DATA
+## We should take in list of directories at the command line,
+## open them and read their contents into an array of filenames,
+## which are themselves stored in a hash keyed on the directory names
+
+my %dirs;
+
+## we should do this (not tested):
+
+# for my $dir (@ARGV) {
+# opendir(my $DIR, $dir) or die "Can't open directory $dir: $!";
+# my @files = map { -d $_ ? "$_/" : $_ } ## trailing slash on directories
+# grep { ! /^\./ } ## remove dotfiles
+# readdir($DIR);
+# closedir $DIR;
+#
+# $dirs{$dir} = \@files;
+# undef @files;
+# }
+
+## but for ease of testing we do this:
+
+$dirs{dir_a} = [ qw(
+ Arial.ttf Comic_Sans.ttf Georgia.ttf Helvetica.ttf
+ Impact.otf Verdana.ttf Old_Fonts/) ];
+
+$dirs{dir_b} = [ qw(
+ Arial.ttf Comic_Sans.ttf Courier_New.ttf Helvetica.ttf
+ Impact.otf Tahoma.ttf Verdana.ttf) ];
+
+$dirs{dir_c} = [ qw(
+ Arial.ttf Courier_New.ttf Helvetica.ttf Impact.otf
+ Monaco.ttf Verdana.ttf) ];
+
+my %file_locations;
+
+## fill the data structure
+my $i = 0;
+for my $dir (sort keys %dirs) {
+ for my $file ($dirs{$dir}->@*) {
+ $file_locations{$file}->[$i] = $file;
+ }
+ $i++;
+}
+
+## read the data structure and write the report
+$i = 0;
+my $cols = keys %dirs;
+my $w = 20; ## arbitrary and fixed column width
+my $fmt = " %-${w}s ";
+
+my $header = join '|', map { sprintf $fmt, $_ } sort keys %dirs;
+my $break = join '|', map { sprintf $fmt, $_ } ('-' x $w) x keys %dirs;
+
+say $header;
+say $break;
+
+for my $file ( sort keys %file_locations) {
+ my $fcount = scalar grep { $_ } $file_locations{$file}->@*;
+ my $dcount = scalar keys %dirs;
+ next if $fcount == $dcount;
+
+ ## fiddle the arrays to make sure we have one element for each
+ ## directory to improve output look
+ my @out = map { $file_locations{$file}->[$_] // '' }(0..$dcount-1);
+ say join '|', map { sprintf $fmt, (defined $_ ? $_ : '') } @out;
+}
+
+
diff --git a/stats/pwc-current.json b/stats/pwc-current.json index a9fe7453fe..9c2a9e6cfc 100644 --- a/stats/pwc-current.json +++ b/stats/pwc-current.json @@ -1,142 +1,30 @@ { - "title" : { - "text" : "The Weekly Challenge - 166" - }, - "legend" : { - "enabled" : 0 - }, - "series" : [ - { - "data" : [ - { - "name" : "Arne Sommer", - "drilldown" : "Arne Sommer", - "y" : 3 - }, - { - "name" : "Athanasius", - "drilldown" : "Athanasius", - "y" : 4 - }, - { - "y" : 2, - "drilldown" : "Cheok-Yin Fung", - "name" : "Cheok-Yin Fung" - }, - { - "drilldown" : "Dave Jacoby", - "y" : 3, - "name" : "Dave Jacoby" - }, - { - "drilldown" : "E. Choroba", - "y" : 2, - "name" : "E. Choroba" - }, - { - "name" : "Flavio Poletti", - "drilldown" : "Flavio Poletti", - "y" : 7 - }, - { - "name" : "James Smith", - "y" : 3, - "drilldown" : "James Smith" - }, - { - "drilldown" : "Jan Krnavek", - "y" : 2, - "name" : "Jan Krnavek" - }, - { - "name" : "Jorg Sommrey", - "drilldown" : "Jorg Sommrey", - "y" : 2 - }, - { - "y" : 8, - "drilldown" : "Luca Ferrari", - "name" : "Luca Ferrari" - }, - { - "name" : "Mark Anderson", - "y" : 2, - "drilldown" : "Mark Anderson" - }, - { - "drilldown" : "Matthew Neleigh", - "y" : 2, - "name" : "Matthew Neleigh" - }, - { - "name" : "Niels van Dijke", - "y" : 2, - "drilldown" : "Niels van Dijke" - }, - { - "drilldown" : "Peter Campbell Smith", - "y" : 3, - "name" : "Peter Campbell Smith" - }, - { - "y" : 2, - "drilldown" : "Robert DiCicco", - "name" : "Robert DiCicco" - }, - { - "y" : 2, - "drilldown" : "Robert Ransbottom", - "name" : "Robert Ransbottom" - }, - { - "name" : "Roger Bell_West", - "y" : 5, - "drilldown" : "Roger Bell_West" - }, - { - "y" : 4, - "drilldown" : "Ryan Thompson", - "name" : "Ryan Thompson" - }, - { - "y" : 2, - "drilldown" : "Ulrich Rieke", - "name" : "Ulrich Rieke" - }, - { - "drilldown" : "W. Luis Mochan", - "y" : 3, - "name" : "W. Luis Mochan" - } - ], - "name" : "The Weekly Challenge - 166", - "colorByPoint" : 1 - } - ], - "xAxis" : { - "type" : "category" - }, "plotOptions" : { "series" : { "borderWidth" : 0, "dataLabels" : { - "format" : "{point.y}", - "enabled" : 1 + "enabled" : 1, + "format" : "{point.y}" } } }, - "yAxis" : { - "title" : { - "text" : "Total Solutions" - } + "legend" : { + "enabled" : 0 }, - "subtitle" : { - "text" : "[Champions: 20] Last updated at 2022-05-29 17:49:23 GMT" + "chart" : { + "type" : "column" + }, + "tooltip" : { + "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/>" + }, + "xAxis" : { + "type" : "category" }, "drilldown" : { "series" : [ { - "id" : "Arne Sommer", "name" : "Arne Sommer", "data" : [ [ @@ -147,7 +35,8 @@ "Blog", 1 ] - ] + ], + "id" : "Arne Sommer" }, { "data" : [ @@ -164,17 +53,26 @@ "id" : "Athanasius" }, { + "id" : "Cheok-Yin Fung", + "name" : "Cheok-Yin Fung", + "data" : [ + [ + "Perl", + 2 + ] + ] + }, + { + "name" : "Colin Crain", "data" : [ [ "Perl", 2 ] ], - "id" : "Cheok-Yin Fung", - "name" : "Cheok-Yin Fung" + "id" : "Colin Crain" }, { - "name" : "Dave Jacoby", "id" : "Dave Jacoby", "data" : [ [ @@ -185,19 +83,22 @@ "Blog", 1 ] - ] + ], + "name" : "Dave Jacoby" }, { + "name" : "E. Choroba", "data" : [ [ "Perl", 2 ] ], - "id" : "E. Choroba", - "name" : "E. Choroba" + "id" : "E. Choroba" }, { + "id" : "Flavio Poletti", + "name" : "Flavio Poletti", "data" : [ [ "Perl", @@ -211,9 +112,7 @@ "Blog", 3 ] - ], - "id" : "Flavio Poletti", - "name" : "Flavio Poletti" + ] }, { "id" : "James Smith", @@ -231,25 +130,26 @@ }, { "id" : "Jan Krnavek", - "name" : "Jan Krnavek", "data" : [ [ "Raku", 2 ] - ] + ], + "name" : "Jan Krnavek" }, { - "id" : "Jorg Sommrey", "name" : "Jorg Sommrey", "data" : [ [ "Perl", 2 ] - ] + ], + "id" : "Jorg Sommrey" }, { + "name" : "Luca Ferrari", "data" : [ [ "Raku", @@ -260,7 +160,6 @@ 6 ] ], - "name" : "Luca Ferrari", "id" : "Luca Ferrari" }, { @@ -274,8 +173,8 @@ "id" : "Mark Anderson" }, { - "name" : "Matthew Neleigh", "id" : "Matthew Neleigh", + "name" : "Matthew Neleigh", "data" : [ [ "Perl", @@ -284,16 +183,18 @@ ] }, { - "id" : "Niels van Dijke", - "name" : "Niels van Dijke", "data" : [ [ "Perl", 2 ] - ] + ], + "name" : "Niels van Dijke", + "id" : "Niels van Dijke" }, { + "id" : "Peter Campbell Smith", + "name" : "Peter Campbell Smith", "data" : [ [ "Perl", @@ -303,13 +204,10 @@ "Blog", 1 ] - ], - "name" : "Peter Campbell Smith", - "id" : "Peter Campbell Smith" + ] }, { "name" : "Robert DiCicco", - "id" : "Robert DiCicco", "data" : [ [ "Perl", @@ -319,21 +217,21 @@ "Raku", 1 ] - ] + ], + "id" : "Robert DiCicco" }, { "name" : "Robert Ransbottom", - "id" : "Robert Ransbottom", "data" : [ [ "Raku", 2 ] - ] + ], + "id" : "Robert Ransbottom" }, { "name" : "Roger Bell_West", - "id" : "Roger Bell_West", "data" : [ [ "Perl", @@ -347,9 +245,11 @@ "Blog", 1 ] - ] + ], + "id" : "Roger Bell_West" }, { + "name" : "Ryan Thompson", "data" : [ [ "Perl", @@ -360,10 +260,11 @@ 2 ] ], - "name" : "Ryan Thompson", "id" : "Ryan Thompson" }, { + "id" : "Ulrich Rieke", + "name" : "Ulrich Rieke", "data" : [ [ "Perl", @@ -373,13 +274,9 @@ "Raku", 1 ] - ], - "name" : "Ulrich Rieke", - "id" : "Ulrich Rieke" + ] }, { - "name" : "W. Luis Mochan", - "id" : "W. Luis Mochan", "data" : [ [ "Perl", @@ -389,16 +286,134 @@ "Blog", 1 ] - ] + ], + "name" : "W. Luis Mochan", + "id" : "W. Luis Mochan" } ] }, - "tooltip" : { - "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/>", - "followPointer" : 1 + "series" : [ + { + "colorByPoint" : 1, + "name" : "The Weekly Challenge - 166", + "data" : [ + { + "drilldown" : "Arne Sommer", + "name" : "Arne Sommer", + "y" : 3 + }, + { + "drilldown" : "Athanasius", + "y" : 4, + "name" : "Athanasius" + }, + { + "drilldown" : "Cheok-Yin Fung", + "y" : 2, + "name" : "Cheok-Yin Fung" + }, + { + "y" : 2, + "name" : "Colin Crain", + "drilldown" : "Colin Crain" + }, + { + "drilldown" : "Dave Jacoby", + "y" : 3, + "name" : "Dave Jacoby" + }, + { + "name" : "E. Choroba", + "y" : 2, + "drilldown" : "E. Choroba" + }, + { + "y" : 7, + "name" : "Flavio Poletti", + "drilldown" : "Flavio Poletti" + }, + { + "name" : "James Smith", + "y" : 3, + "drilldown" : "James Smith" + }, + { + "name" : "Jan Krnavek", + "y" : 2, + "drilldown" : "Jan Krnavek" + }, + { + "drilldown" : "Jorg Sommrey", + "y" : 2, + "name" : "Jorg Sommrey" + }, + { + "name" : "Luca Ferrari", + "y" : 8, + "drilldown" : "Luca Ferrari" + }, + { + "drilldown" : "Mark Anderson", + "name" : "Mark Anderson", + "y" : 2 + }, + { + "drilldown" : "Matthew Neleigh", + "y" : 2, + "name" : "Matthew Neleigh" + }, + { + "drilldown" : "Niels van Dijke", + "name" : "Niels van Dijke", + "y" : 2 + }, + { + "name" : "Peter Campbell Smith", + "y" : 3, + "drilldown" : "Peter Campbell Smith" + }, + { + "y" : 2, + "name" : "Robert DiCicco", + "drilldown" : "Robert DiCicco" + }, + { + "drilldown" : "Robert Ransbottom", + "y" : 2, + "name" : "Robert Ransbottom" + }, + { + "drilldown" : "Roger Bell_West", + "name" : "Roger Bell_West", + "y" : 5 + }, + { + "drilldown" : "Ryan Thompson", + "y" : 4, + "name" : "Ryan Thompson" + }, + { + "name" : "Ulrich Rieke", + "y" : 2, + "drilldown" : "Ulrich Rieke" + }, + { + "drilldown" : "W. Luis Mochan", + "y" : 3, + "name" : "W. Luis Mochan" + } + ] + } + ], + "subtitle" : { + "text" : "[Champions: 21] Last updated at 2022-05-29 18:07:20 GMT" }, - "chart" : { - "type" : "column" + "yAxis" : { + "title" : { + "text" : "Total Solutions" + } + }, + "title" : { + "text" : "The Weekly Challenge - 166" } } diff --git a/stats/pwc-language-breakdown-summary.json b/stats/pwc-language-breakdown-summary.json index 2e6400658a..fb3ec254f6 100644 --- a/stats/pwc-language-breakdown-summary.json +++ b/stats/pwc-language-breakdown-summary.json @@ -1,27 +1,7 @@ { - "yAxis" : { - "min" : 0, - "title" : { - "text" : null - } - }, - "subtitle" : { - "text" : "Last updated at 2022-05-29 17:49:23 GMT" - }, - "tooltip" : { - "pointFormat" : "<b>{point.y:.0f}</b>" - }, - "chart" : { - "type" : "column" - }, - "title" : { - "text" : "The Weekly Challenge Contributions [2019 - 2022]" - }, - "legend" : { - "enabled" : "false" - }, "series" : [ { + "name" : "Contributions", "data" : [ [ "Blog", @@ -29,35 +9,55 @@ ], [ "Perl", - 8110 + 8112 ], [ "Raku", 4803 ] ], - "name" : "Contributions", "dataLabels" : { - "enabled" : "true", "align" : "right", - "y" : 10, - "color" : "#FFFFFF", "rotation" : -90, - "format" : "{point.y:.0f}", + "color" : "#FFFFFF", + "enabled" : "true", "style" : { "fontSize" : "13px", "fontFamily" : "Verdana, sans-serif" - } + }, + "format" : "{point.y:.0f}", + "y" : 10 } } ], + "subtitle" : { + "text" : "Last updated at 2022-05-29 18:07:20 GMT" + }, "xAxis" : { + "type" : "category", "labels" : { "style" : { "fontSize" : "13px", "fontFamily" : "Verdana, sans-serif" } - }, - "type" : "category" + } + }, + "tooltip" : { + "pointFormat" : "<b>{point.y:.0f}</b>" + }, + "legend" : { + "enabled" : "false" + }, + "chart" : { + "type" : "column" + }, + "title" : { + "text" : "The Weekly Challenge Contributions [2019 - 2022]" + }, + "yAxis" : { + "min" : 0, + "title" : { + "text" : null + } } } diff --git a/stats/pwc-language-breakdown.json b/stats/pwc-language-breakdown.json index d7cc767eb0..3feb4b626b 100644 --- a/stats/pwc-language-breakdown.json +++ b/stats/pwc-language-breakdown.json @@ -1,30 +1,29 @@ { + "chart" : { + "type" : "column" + }, + "legend" : { + "enabled" : "false" + }, "plotOptions" : { "series" : { "borderWidth" : 0, "dataLabels" : { - "enabled" : 1, - "format" : "{point.y}" + "format" : "{point.y}", + "enabled" : 1 } } }, - "xAxis" : { - "type" : "category" - }, - "title" : { - "text" : "The Weekly Challenge Language" - }, - "legend" : { - "enabled" : "false" + "subtitle" : { + "text" : "Click the columns to drilldown the language breakdown. Last updated at 2022-05-29 18:07:20 GMT" }, "series" : [ { - "colorByPoint" : "true", "data" : [ { + "y" : 161, "name" : "#001", - "drilldown" : "001", - "y" : 161 + "drilldown" : "001" }, { "drilldown" : "002", @@ -33,18 +32,18 @@ }, { "y" : 83, - "drilldown" : "003", - "name" : "#003" + "name" : "#003", + "drilldown" : "003" }, { - "y" : 99, "drilldown" : "004", - "name" : "#004" + "name" : "#004", + "y" : 99 }, { + "y" : 78, "name" : "#005", - "drilldown" : "005", - "y" : 78 + "drilldown" : "005" }, { "name" : "#006", @@ -52,144 +51,144 @@ "drilldown" : "006" }, { - "name" : "#007", "drilldown" : "007", + "name" : "#007", "y" : 64 }, { - "name" : "#008", "drilldown" : "008", + "name" : "#008", "y" : 78 }, { "drilldown" : "009", - "y" : 76, - "name" : "#009" + "name" : "#009", + "y" : 76 }, { - "name" : "#010", "y" : 65, + "name" : "#010", "drilldown" : "010" }, { - "y" : 85, "drilldown" : "011", - "name" : "#011" + "name" : "#011", + "y" : 85 }, { - "y" : 89, "drilldown" : "012", + "y" : 89, "name" : "#012" }, { - "y" : 85, "drilldown" : "013", - "name" : "#013" + "name" : "#013", + "y" : 85 }, { + "y" : 101, "name" : "#014", - "drilldown" : "014", - "y" : 101 + "drilldown" : "014" }, { - "drilldown" : "015", "y" : 99, - "name" : "#015" + "name" : "#015", + "drilldown" : "015" }, { - "name" : "#016", + "drilldown" : "016", "y" : 71, - "drilldown" : "016" + "name" : "#016" }, { "y" : 84, - "drilldown" : "017", - "name" : "#017" + "name" : "#017", + "drilldown" : "017" }, { - "y" : 81, "drilldown" : "018", - "name" : "#018" + "name" : "#018", + "y" : 81 }, { - "name" : "#019", + "drilldown" : "019", "y" : 103, - "drilldown" : "019" + "name" : "#019" }, { + "name" : "#020", "y" : 101, - "drilldown" : "020", - "name" : "#020" + "drilldown" : "020" }, { + "y" : 72, "name" : "#021", - "drilldown" : "021", - "y" : 72 + "drilldown" : "021" }, { "name" : "#022", - "drilldown" : "022", - "y" : 68 + "y" : 68, + "drilldown" : "022" }, { - "name" : "#023", "drilldown" : "023", + "name" : "#023", "y" : 97 }, { - "name" : "#024", "y" : 75, + "name" : "#024", "drilldown" : "024" }, { "drilldown" : "025", - "y" : 59, - "name" : "#025" + "name" : "#025", + "y" : 59 }, { - "name" : "#026", "drilldown" : "026", - "y" : 74 + "y" : 74, + "name" : "#026" }, { + "name" : "#027", "y" : 62, - "drilldown" : "027", - "name" : "#027" + "drilldown" |
