aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMohammad S Anwar <mohammad.anwar@yahoo.com>2020-02-28 11:30:27 +0000
committerMohammad S Anwar <mohammad.anwar@yahoo.com>2020-02-28 11:30:27 +0000
commit4a0e7a230f9da4ca47237cf6323ff3fb07757889 (patch)
tree11b28103eb4c8237f602b8ff1443db5814992e93
parentfe605e08c124df72a5c90e37c2f661e3f65eef7c (diff)
downloadperlweeklychallenge-club-4a0e7a230f9da4ca47237cf6323ff3fb07757889.tar.gz
perlweeklychallenge-club-4a0e7a230f9da4ca47237cf6323ff3fb07757889.tar.bz2
perlweeklychallenge-club-4a0e7a230f9da4ca47237cf6323ff3fb07757889.zip
- Added solutions by Javier Luque.
-rw-r--r--challenge-049/javier-luque/blog.txt1
-rw-r--r--challenge-049/javier-luque/perl/ch-1.pl20
-rw-r--r--challenge-049/javier-luque/perl/ch-2.pl197
-rw-r--r--challenge-049/javier-luque/raku/ch-1.p613
-rw-r--r--challenge-049/javier-luque/raku/ch-2.p6116
-rw-r--r--stats/pwc-current.json163
-rw-r--r--stats/pwc-language-breakdown-summary.json74
-rw-r--r--stats/pwc-language-breakdown.json364
-rw-r--r--stats/pwc-leaders.json378
-rw-r--r--stats/pwc-summary-1-30.json110
-rw-r--r--stats/pwc-summary-121-150.json50
-rw-r--r--stats/pwc-summary-151-180.json52
-rw-r--r--stats/pwc-summary-31-60.json118
-rw-r--r--stats/pwc-summary-61-90.json50
-rw-r--r--stats/pwc-summary-91-120.json98
-rw-r--r--stats/pwc-summary.json356
16 files changed, 1265 insertions, 895 deletions
diff --git a/challenge-049/javier-luque/blog.txt b/challenge-049/javier-luque/blog.txt
new file mode 100644
index 0000000000..5715fb6b7b
--- /dev/null
+++ b/challenge-049/javier-luque/blog.txt
@@ -0,0 +1 @@
+https://perlchallenges.wordpress.com/2020/02/28/perl-weekly-challenge-049/
diff --git a/challenge-049/javier-luque/perl/ch-1.pl b/challenge-049/javier-luque/perl/ch-1.pl
new file mode 100644
index 0000000000..4f98ad3ec4
--- /dev/null
+++ b/challenge-049/javier-luque/perl/ch-1.pl
@@ -0,0 +1,20 @@
+#!/usr/bin/perl
+# Test: ./ch-1.pl 55
+use strict;
+use warnings;
+use feature qw /say/;
+
+my $number = join '', @ARGV;
+
+unless ($number =~ /^\d*$/) {
+ say "Argument: $number needs to be a number";
+ exit;
+}
+
+my $i = 1;
+my $new_number = $number;
+while (!($new_number =~ /^[01]+$/)) {
+ $new_number = $number * $i++;
+}
+
+say "Smallest multiple of $number is $new_number";
diff --git a/challenge-049/javier-luque/perl/ch-2.pl b/challenge-049/javier-luque/perl/ch-2.pl
new file mode 100644
index 0000000000..ffb1c7ede1
--- /dev/null
+++ b/challenge-049/javier-luque/perl/ch-2.pl
@@ -0,0 +1,197 @@
+#!/usr/bin/perl
+# Test: ./ch-2.pl 3
+package LL::Node; # Linked list
+
+use Mouse;
+
+has 'key' => (
+ is => 'rw',
+ isa => 'Int',
+ default => sub {
+ return undef;
+ }
+);
+
+has 'value' => (
+ is => 'rw',
+ isa => 'Str',
+ default => sub {
+ return undef;
+ }
+);
+
+has 'next' => (
+ is => 'rw',
+ isa => 'Maybe[LL::Node]',
+ default => sub {
+ return undef
+ }
+);
+
+has 'prev' => (
+ is => 'rw',
+ isa => 'Maybe[LL::Node]',
+ default => sub {
+ return undef
+ }
+);
+
+
+__PACKAGE__->meta->make_immutable();
+
+package Cache::LRU; # LRU Cache
+
+use Mouse;
+use feature qw /say/;
+use LL::Node;
+
+has 'max_capacity' => (
+ is => 'rw',
+ isa => 'Int',
+ default => sub {
+ return 3;
+ }
+);
+
+has 'capacity' => (
+ is => 'rw',
+ isa => 'Int',
+ default => sub {
+ return 0;
+ }
+);
+
+has 'positions' => (
+ is => 'rw',
+ isa => 'HashRef',
+ default => sub {
+ return {}
+ }
+);
+
+has 'last' => (
+ is => 'rw',
+ isa => 'Ref',
+);
+
+
+has 'first' => (
+ is => 'rw',
+ isa => 'Ref',
+);
+
+
+
+sub set {
+ my ($self, $key, $value) = @_;
+
+ # New node
+ my $new_node = LL::Node->new(
+ key => $key, value => $value
+ );
+
+ # Push out 1 if at capacity
+ if ($self->capacity >= $self->max_capacity) {
+ my $node_to_kill = $self->first;
+ $self->first($self->first->next);
+ delete $self->positions->{$node_to_kill->key};
+ $self->capacity($self->capacity - 1);
+ }
+
+ # Set the first and last reference to the new node
+ if ( $self->first ) {
+ $self->last->next($new_node);
+ $new_node->prev($self->last);
+ } else {
+ $self->first($new_node);
+ }
+
+ # Last node
+ $self->last($new_node);
+
+ # Store the position
+ $self->positions->{$key} = $new_node;
+
+ # Increment capacity
+ $self->capacity($self->capacity + 1);
+
+ say "Setting: ($key, $value)" . $self->show_nodes;
+}
+
+
+sub get {
+ my ($self, $key) = @_;
+
+ my $node = $self->positions->{$key};
+
+ # Cache miss
+ unless ($node) {
+ say "Getting: ($key) - cache miss" .
+ $self->show_nodes;
+
+ # Return the cache miss -1
+ return -1;
+ }
+
+ # This might be the first node
+ if ($node->prev) {
+ $node->prev->next($node->next)
+ } else {
+ $self->first($node->next);
+ }
+
+ # Change this node previous to last
+ $node->prev($self->last);
+
+ # Set the last's next to this node
+ $self->last->next($node);
+
+ # clear the node's next as it will be last
+ $node->next(undef);
+
+ # Set to LRU last pointer to this
+ $self->last($node);
+
+ # Get the value
+ my $value = $node->value;
+
+ say "Getting: ($key) Value: $value)" . $self->show_nodes;
+ return $node->value;
+}
+
+
+
+sub show_nodes {
+ my $self = shift;
+ my @keys;
+
+ my $node = $self->first;
+
+ while ($node) {
+ push @keys, $node->key;
+ $node = $node->next;
+ }
+
+ return " [LRU] - " . (join ',', @keys) . " - [MRU]";
+}
+
+
+__PACKAGE__->meta->make_immutable();
+
+package main;
+
+use strict;
+use warnings;
+use Cache::LRU;
+
+my $max_capacity = my $number = join '', @ARGV;
+my $cache = Cache::LRU->new(max_capacity => $max_capacity || 3);
+
+$cache->set(1, 3);
+$cache->set(2, 5);
+$cache->set(3, 7);
+$cache->get(2); # returns 5
+$cache->get(1); # returns 3
+$cache->get(4); # returns -1
+$cache->set(4, 9);
+$cache->get(3); # returns -1
diff --git a/challenge-049/javier-luque/raku/ch-1.p6 b/challenge-049/javier-luque/raku/ch-1.p6
new file mode 100644
index 0000000000..8c16f51e26
--- /dev/null
+++ b/challenge-049/javier-luque/raku/ch-1.p6
@@ -0,0 +1,13 @@
+# Test: perl6 ch-1.p6 55
+
+sub MAIN(Int $number) {
+ my $i = 1;
+
+ my $new_number = $number;
+ while (!($new_number ~~ /^^<[01]>+$$/)) {
+ $new_number = $number * $i++;
+ }
+
+ say "Smallest multiple of $number is $new_number";
+
+}
diff --git a/challenge-049/javier-luque/raku/ch-2.p6 b/challenge-049/javier-luque/raku/ch-2.p6
new file mode 100644
index 0000000000..55ebdc183f
--- /dev/null
+++ b/challenge-049/javier-luque/raku/ch-2.p6
@@ -0,0 +1,116 @@
+# Test: perl6 ch-2.p6 3
+use v6.d;
+
+class Node {
+ has Int $.key is rw;
+ has Int $.value is rw;
+ has Node $.next is rw;
+ has Node $.prev is rw;
+}
+
+class LRU {
+ has Node $.first is rw;
+ has Node $.last is rw;
+ has %.positions is rw;
+ has Int $.max_capacity is rw;
+ has Int $.capacity is rw = 0;
+
+ method set(Int $key, Int $value) {
+ my $new_node = Node.new(
+ key => $key,
+ value => $value,
+ next => Nil,
+ prev => Nil
+ );
+
+ # Push out 1 if at capacity
+ if (self.capacity >= self.max_capacity) {
+ my $node-to-kill = self.first;
+ self.first = self.first.next;
+ self.positions.{$node-to-kill.key}:delete;
+ self.capacity = self.capacity - 1;
+ }
+
+ # Set the first and last reference to the new node
+ if ( self.first ) {
+ self.last.next = $new_node;
+ $new_node.prev = self.last;
+ } else {
+ self.first = $new_node;
+ }
+
+ # Last node
+ self.last = $new_node;
+
+ # Store the position
+ self.positions.{$key} = $new_node;
+
+ # Increment capacity
+ self.capacity = self.capacity + 1;
+
+ say "Setting: ($key, $value)" ~ self.show_nodes;
+ }
+
+ method get(Int $key) {
+ my $node = self.positions.{$key};
+
+ # Cache miss
+ unless ($node) {
+ say "Getting: ($key) - cache miss" ~
+ self.show_nodes;
+
+ # Return the cache miss -1
+ return -1;
+ }
+
+ # This might be the first node
+ if ($node.prev) {
+ $node.prev.next = $node.next;
+ } else {
+ self.first = $node.next;
+ }
+
+ # Change this node previous to last
+ $node.prev = self.last;
+
+ # Set the last's next to this node
+ self.last.next = $node;
+
+ # clear the node's next as it will be last
+ $node.next = Nil;
+
+ # Set to LRU last pointer to this
+ self.last = $node;
+
+ # Get the value
+ my $value = $node.value;
+
+ say "Getting: ($key) Value: $value)" ~
+ self.show_nodes;
+ return $node.value;
+ }
+
+ method show_nodes() {
+ my @keys;
+ my $node = self.first;
+
+ while ($node) {
+ push @keys, $node.key;
+ $node = $node.next;
+ }
+
+ return " [LRU] - " ~ @keys.join(',') ~ " - [MRU]";
+ }
+}
+
+sub MAIN (Int $max_capacity) {
+ my $cache = LRU.new( max_capacity => $max_capacity );
+ $cache.set(1, 3);
+ $cache.set(2, 5);
+ $cache.set(3, 7);
+ $cache.get(2); # returns 5
+ $cache.get(1); # returns 3
+ $cache.get(4); # returns -1
+ $cache.set(4, 9);
+ $cache.get(3); # returns -1
+}
diff --git a/stats/pwc-current.json b/stats/pwc-current.json
index 05e5d15d9c..89c87fcbde 100644
--- a/stats/pwc-current.json
+++ b/stats/pwc-current.json
@@ -1,11 +1,33 @@
{
- "subtitle" : {
- "text" : "[Champions: 14] Last updated at 2020-02-28 10:59:35 GMT"
+ "yAxis" : {
+ "title" : {
+ "text" : "Total Solutions"
+ }
+ },
+ "chart" : {
+ "type" : "column"
+ },
+ "tooltip" : {
+ "followPointer" : 1,
+ "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/>"
+ },
+ "plotOptions" : {
+ "series" : {
+ "borderWidth" : 0,
+ "dataLabels" : {
+ "format" : "{point.y}",
+ "enabled" : 1
+ }
+ }
+ },
+ "legend" : {
+ "enabled" : 0
},
"series" : [
{
- "name" : "Perl Weekly Challenge - 049",
"colorByPoint" : 1,
+ "name" : "Perl Weekly Challenge - 049",
"data" : [
{
"drilldown" : "Dave Jacoby",
@@ -13,39 +35,44 @@
"y" : 1
},
{
- "name" : "Duane Powell",
"y" : 2,
+ "name" : "Duane Powell",
"drilldown" : "Duane Powell"
},
{
- "drilldown" : "E. Choroba",
"y" : 2,
- "name" : "E. Choroba"
+ "name" : "E. Choroba",
+ "drilldown" : "E. Choroba"
+ },
+ {
+ "name" : "Javier Luque",
+ "drilldown" : "Javier Luque",
+ "y" : 5
},
{
+ "y" : 1,
"drilldown" : "Jonas Berlin",
- "name" : "Jonas Berlin",
- "y" : 1
+ "name" : "Jonas Berlin"
},
{
- "drilldown" : "Luca Ferrari",
"name" : "Luca Ferrari",
+ "drilldown" : "Luca Ferrari",
"y" : 4
},
{
"drilldown" : "Mark Anderson",
- "y" : 2,
- "name" : "Mark Anderson"
+ "name" : "Mark Anderson",
+ "y" : 2
},
{
+ "name" : "Markus Holzer",
"drilldown" : "Markus Holzer",
- "y" : 1,
- "name" : "Markus Holzer"
+ "y" : 1
},
{
- "name" : "Mohammad S Anwar",
"y" : 4,
- "drilldown" : "Mohammad S Anwar"
+ "drilldown" : "Mohammad S Anwar",
+ "name" : "Mohammad S Anwar"
},
{
"y" : 1,
@@ -54,18 +81,18 @@
},
{
"drilldown" : "Roger Bell West",
- "y" : 4,
- "name" : "Roger Bell West"
+ "name" : "Roger Bell West",
+ "y" : 4
},
{
- "drilldown" : "Saif Ahmed",
+ "y" : 2,
"name" : "Saif Ahmed",
- "y" : 2
+ "drilldown" : "Saif Ahmed"
},
{
+ "y" : 3,
"drilldown" : "Simon Proctor",
- "name" : "Simon Proctor",
- "y" : 3
+ "name" : "Simon Proctor"
},
{
"y" : 2,
@@ -73,67 +100,75 @@
"drilldown" : "Wanderdoc"
},
{
- "name" : "Yet Ebreo",
"y" : 2,
- "drilldown" : "Yet Ebreo"
+ "drilldown" : "Yet Ebreo",
+ "name" : "Yet Ebreo"
}
]
}
],
- "chart" : {
- "type" : "column"
- },
- "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
- },
- "yAxis" : {
- "title" : {
- "text" : "Total Solutions"
- }
+ "title" : {
+ "text" : "Perl Weekly Challenge - 049"
},
"drilldown" : {
"series" : [
{
- "name" : "Dave Jacoby",
- "id" : "Dave Jacoby",
"data" : [
[
"Perl",
1
]
- ]
+ ],
+ "id" : "Dave Jacoby",
+ "name" : "Dave Jacoby"
},
{
- "name" : "Duane Powell",
- "id" : "Duane Powell",
"data" : [
[
"Perl",
2
]
- ]
+ ],
+ "id" : "Duane Powell",
+ "name" : "Duane Powell"
},
{
- "name" : "E. Choroba",
"data" : [
[
"Perl",
2
]
],
- "id" : "E. Choroba"
+ "id" : "E. Choroba",
+ "name" : "E. Choroba"
},
{
"data" : [
[
+ "Perl",
+ 2
+ ],
+ [
"Raku",
+ 2
+ ],
+ [
+ "Blog",
1
]
],
+ "id" : "Javier Luque",
+ "name" : "Javier Luque"
+ },
+ {
+ "name" : "Jonas Berlin",
"id" : "Jonas Berlin",
- "name" : "Jonas Berlin"
+ "data" : [
+ [
+ "Raku",
+ 1
+ ]
+ ]
},
{
"name" : "Luca Ferrari",
@@ -151,23 +186,23 @@
},
{
"name" : "Mark Anderson",
- "id" : "Mark Anderson",
"data" : [
[
"Raku",
2
]
- ]
+ ],
+ "id" : "Mark Anderson"
},
{
- "name" : "Markus Holzer",
"id" : "Markus Holzer",
"data" : [
[
"Raku",
1
]
- ]
+ ],
+ "name" : "Markus Holzer"
},
{
"data" : [
@@ -188,14 +223,14 @@
"name" : "Mohammad S Anwar"
},
{
- "id" : "Peter Scott",
+ "name" : "Peter Scott",
"data" : [
[
"Perl",
1
]
],
- "name" : "Peter Scott"
+ "id" : "Peter Scott"
},
{
"id" : "Roger Bell West",
@@ -212,13 +247,13 @@
"name" : "Roger Bell West"
},
{
+ "id" : "Saif Ahmed",
"data" : [
[
"Perl",
2
]
],
- "id" : "Saif Ahmed",
"name" : "Saif Ahmed"
},
{
@@ -236,43 +271,31 @@
]
},
{
- "name" : "Wanderdoc",
- "id" : "Wanderdoc",
"data" : [
[
"Perl",
2
]
- ]
+ ],
+ "id" : "Wanderdoc",
+ "name" : "Wanderdoc"
},
{
- "name" : "Yet Ebreo",
"data" : [
[
"Perl",
2
]
],
- "id" : "Yet Ebreo"
+ "id" : "Yet Ebreo",
+ "name" : "Yet Ebreo"
}
]
},
- "legend" : {
- "enabled" : 0
- },
- "title" : {
- "text" : "Perl Weekly Challenge - 049"
- },
"xAxis" : {
"type" : "category"
},
- "plotOptions" : {
- "series" : {
- "dataLabels" : {
- "format" : "{point.y}",
- "enabled" : 1
- },
- "borderWidth" : 0
- }
+ "subtitle" : {
+ "text" : "[Champions: 15] Last updated at 2020-02-28 11:30:03 GMT"
}
}
diff --git a/stats/pwc-language-breakdown-summary.json b/stats/pwc-language-breakdown-summary.json
index 0030e9958a..e2ed72106a 100644
--- a/stats/pwc-language-breakdown-summary.json
+++ b/stats/pwc-language-breakdown-summary.json
@@ -1,63 +1,63 @@
{
+ "legend" : {
+ "enabled" : "false"
+ },
+ "tooltip" : {
+ "pointFormat" : "<b>{point.y:.0f}</b>"
+ },
"chart" : {
"type" : "column"
},
+ "yAxis" : {
+ "min" : 0,
+ "title" : {
+ "text" : null
+ }
+ },
+ "xAxis" : {
+ "type" : "category",
+ "labels" : {
+ "style" : {
+ "fontSize" : "13px",
+ "fontFamily" : "Verdana, sans-serif"
+ }
+ }
+ },
+ "subtitle" : {
+ "text" : "Last updated at 2020-02-28 11:30:03 GMT"
+ },
+ "title" : {
+ "text" : "Perl Weekly Challenge Contributions [2019 - 2020]"
+ },
"series" : [
{
"data" : [
[
"Blog",
- 522
+ 523
],
[
"Perl",
- 2025
+ 2027
],
[
"Raku",
- 1236
+ 1238
]
],
+ "name" : "Contributions",
"dataLabels" : {
- "rotation" : -90,
- "enabled" : "true",
+ "y" : 10,
"align" : "right",
+ "format" : "{point.y:.0f}",
+ "color" : "#FFFFFF",
"style" : {
"fontSize" : "13px",
"fontFamily" : "Verdana, sans-serif"
},
- "format" : "{point.y:.0f}",
- "color" : "#FFFFFF",
- "y" : 10
- },
- "name" : "Contributions"
- }
- ],
- "subtitle" : {
- "text" : "Last updated at 2020-02-28 10:59:35 GMT"
- },
- "tooltip" : {
- "pointFormat" : "<b>{point.y:.0f}</b>"
- },
- "yAxis" : {
- "title" : {
- "text" : null
- },
- "min" : 0
- },
- "title" : {
- "text" : "Perl Weekly Challenge Contributions [2019 - 2020]"
- },
- "xAxis" : {
- "type" : "category",
- "labels" : {
- "style" : {
- "fontSize" : "13px",
- "fontFamily" : "Verdana, sans-serif"
+ "rotation" : -90,
+ "enabled" : "true"
}
}
- },
- "legend" : {
- "enabled" : "false"
- }
+ ]
}
diff --git a/stats/pwc-language-breakdown.json b/stats/pwc-language-breakdown.json
index 933925c3d2..f68764c727 100644
--- a/stats/pwc-language-breakdown.json
+++ b/stats/pwc-language-breakdown.json
@@ -1,6 +1,8 @@
{
"series" : [
{
+ "name" : "Perl Weekly Challenge Languages",
+ "colorByPoint" : "true",
"data" : [
{
"y" : 140,
@@ -8,49 +10,49 @@
"drilldown" : "001"
},
{
- "y" : 109,
"name" : "#002",
- "drilldown" : "002"
+ "drilldown" : "002",
+ "y" : 109
},
{
- "drilldown" : "003",
"y" : 71,
- "name" : "#003"
+ "name" : "#003",
+ "drilldown" : "003"
},
{
"drilldown" : "004",
- "y" : 91,
- "name" : "#004"
+ "name" : "#004",
+ "y" : 91
},
{
+ "name" : "#005",
"drilldown" : "005",
- "y" : 71,
- "name" : "#005"
+ "y" : 71
},
{
- "y" : 48,
"name" : "#006",
- "drilldown" : "006"
+ "drilldown" : "006",
+ "y" : 48
},
{
+ "name" : "#007",
"drilldown" : "007",
- "y" : 56,
- "name" : "#007"
+ "y" : 56
},
{
- "name" : "#008",
"y" : 70,
- "drilldown" : "008"
+ "drilldown" : "008",
+ "name" : "#008"
},
{
"drilldown" : "009",
- "y" : 68,
- "name" : "#009"
+ "name" : "#009",
+ "y" : 68
},
{
- "drilldown" : "010",
"y" : 60,
- "name" : "#010"
+ "name" : "#010",
+ "drilldown" : "010"
},
{
"y" : 79,
@@ -58,44 +60,44 @@
"drilldown" : "011"
},
{
- "y" : 83,
+ "drilldown" : "012",
"name" : "#012",
- "drilldown" : "012"
+ "y" : 83
},
{
"y" : 76,
- "name" : "#013",
- "drilldown" : "013"
+ "drilldown" : "013",
+ "name" : "#013"
},
{
+ "drilldown" : "014",
"name" : "#014",
- "y" : 96,
- "drilldown" : "014"
+ "y" : 96
},
{
- "drilldown" : "015",
+ "y" : 93,
"name" : "#015",
- "y" : 93
+ "drilldown" : "015"
},
{
- "drilldown" : "016",
"y" : 66,
+ "drilldown" : "016",
"name" : "#016"
},
{
"y" : 79,
- "name" : "#017",
- "drilldown" : "017"
+ "drilldown" : "017",
+ "name" : "#017"
},
{
+ "drilldown" : "018",
"name" : "#018",
- "y" : 76,
- "drilldown" : "018"
+ "y" : 76
},
{
+ "drilldown" : "019",
"name" : "#019",
- "y" : 95,
- "drilldown" : "019"
+ "y" : 95
},
{
"y" : 95,
@@ -104,13 +106,13 @@
},
{
"drilldown" : "021",
- "y" : 67,
- "name" : "#021"
+ "name" : "#021",
+ "y" : 67
},
{
"name" : "#022",
- "y" : 63,
- "drilldown" : "022"
+ "drilldown" : "022",
+ "y" : 63
},
{
"drilldown" : "023",
@@ -119,83 +121,83 @@
},
{
"name" : "#024",
- "y" : 70,
- "drilldown" : "024"
+ "drilldown" : "024",
+ "y" : 70
},
{
- "y" : 55,
+ "drilldown" : "025",
"name" : "#025",
- "drilldown" : "025"
+ "y" : 55
},
{
"drilldown" : "026",
- "y" : 70,
- "name" : "#026"
+ "name" : "#026",
+ "y" : 70
},
{
- "y" : 58,
+ "drilldown" : "027",
"name" : "#027",
- "drilldown" : "027"
+ "y" : 58
},
{
- "y" : 78,
+ "drilldown" : "028",
"name" : "#028",
- "drilldown" : "028"
+ "y" : 78
},
{
+ "name" : "#029",
"drilldown" : "029",
- "y" : 77,
- "name" : "#029"
+ "y" : 77
},
{
- "drilldown" : "030",
"name" : "#030",
+ "drilldown" : "030",
"y" : 115
},
{
- "drilldown" : "031",
+ "y" : 87,
"name" : "#031",
- "y" : 87
+ "drilldown" : "031"
},
{
- "drilldown" : "032",
"y" : 92,
+ "drilldown" : "032",
"name" : "#032"
},
{
+ "drilldown" : "033",
"name" : "#033",
- "y" : 108,
- "drilldown" : "033"
+ "y" : 108
},
{
"y" : 62,
- "name" : "#034",
- "drilldown" : "034"
+ "drilldown" : "034",
+ "name" : "#034"
},
{
"name" : "#035",
- "y" : 62,
- "drilldown" : "035"
+ "drilldown" : "035",
+ "y" : 62
},
{
- "drilldown" : "036",
"y" : 63,
- "name" : "#036"
+ "name" : "#036",
+ "drilldown" : "036"
},
{
"drilldown" : "037",
- "y" : 63,
- "name" : "#037"
+ "name" : "#037",
+ "y" : 63
},
{
+ "y" : 60,
"drilldown" : "038",
- "name" : "#038",
- "y" : 60
+ "name" : "#038"
},
{
+ "drilldown" : "039",
"name" : "#039",
- "y" : 60,
- "drilldown" : "039"
+ "y" : 60
},
{
"drilldown" : "040",
@@ -203,70 +205,66 @@
"y" : 66