From 176c70486532af145b53a45bcbd28c1db0702597 Mon Sep 17 00:00:00 2001 From: Mohammad S Anwar Date: Sat, 3 Sep 2022 22:39:09 +0100 Subject: - Added solutions by Colin Crain. --- challenge-180/colin-crain/blog.txt | 1 + challenge-180/colin-crain/perl/ch-1.pl | 139 + challenge-180/colin-crain/perl/ch-2.pl | 58 + stats/pwc-current.json | 287 +- stats/pwc-language-breakdown-summary.json | 68 +- stats/pwc-language-breakdown.json | 7050 ++++++++++++++--------------- stats/pwc-leaders.json | 754 +-- stats/pwc-summary-1-30.json | 104 +- stats/pwc-summary-121-150.json | 46 +- stats/pwc-summary-151-180.json | 120 +- stats/pwc-summary-181-210.json | 116 +- stats/pwc-summary-211-240.json | 48 +- stats/pwc-summary-241-270.json | 116 +- stats/pwc-summary-31-60.json | 128 +- stats/pwc-summary-61-90.json | 30 +- stats/pwc-summary-91-120.json | 112 +- stats/pwc-summary.json | 1664 +++---- 17 files changed, 5529 insertions(+), 5312 deletions(-) create mode 100644 challenge-180/colin-crain/blog.txt create mode 100755 challenge-180/colin-crain/perl/ch-1.pl create mode 100755 challenge-180/colin-crain/perl/ch-2.pl diff --git a/challenge-180/colin-crain/blog.txt b/challenge-180/colin-crain/blog.txt new file mode 100644 index 0000000000..f8c954f048 --- /dev/null +++ b/challenge-180/colin-crain/blog.txt @@ -0,0 +1 @@ +https://colincrain.com/2022/09/03/second-to-none diff --git a/challenge-180/colin-crain/perl/ch-1.pl b/challenge-180/colin-crain/perl/ch-1.pl new file mode 100755 index 0000000000..e8ea7856cd --- /dev/null +++ b/challenge-180/colin-crain/perl/ch-1.pl @@ -0,0 +1,139 @@ +#!/Users/colincrain/perl5/perlbrew/perls/perl-5.32.0/bin/perl +# +# second-to-none.pl +# +# First Unique Character +# Submitted by: Mohammad S Anwar +# You are given a string, $s. +# +# Write a script to find out the first unique character in the +# given string and print its index (0-based). +# +# Example 1 +# Input: $s = "Perl Weekly Challenge" +# Output: 0 as 'P' is the first unique character +# +# Example 2 +# Input: $s = "Long Live Perl" +# Output: 1 as 'o' is the first unique character +# +# +# analysis: +# +# Another combination-of-actions styled task to start us off this +# week. I find these hybrid operations interestig, as the focus +# ultimately falls on the synthesis between the parts, rather than +# any one bold insight. +# +# In this case we need a list of unique characters and a lookup to +# find where the first instance of each character lies. We can then +# use these pieces in onformation together to find the first unique +# instance of a character. +# +# Neither of the two requirements is particularly difficult to +# implement. It would be straightforward to iterate across the +# characters in the string and hash the number of instances of each +# character, and when we get to the end those characters with a +# frequency of 1 will be unique. We could then look at each +# candidate and log its first position. THe closest one to the +# front wins. +# +# That's however would be tedious, and require multiple passes +# across the string to come to a conclusion. In every case to +# satisfy the uniqueness quality we will need to pass over every +# character in the string at least once. Can we make the call in a +# single pass, though? +# +# Sure. We just need to record the right data when we make it. +# +# There are only so many characters available. Twenty-six letters +# in the English alphabvet, 127 in ASCII, 256 if we extend the +# range into 1-byte characters. How many Unicode characters are +# there now? 15,000? Anyways a lot, but not that many in the great +# scheme of things. We're counting character varieites not protons. +# +# +# method: +# +# We'll use substr to examine each character in turn. We could +# store everything in a single data structure, but as we've noted +# even a hash with every character as a key would not be +# extraoridinarily large. And hash lookups are effectively constnat +# with no regard to scaling anyway. Big, little — the hashes don't +# care. +# +# So for clarity we build two hashes. In one, we store the first +# instance of a value. In the second, we identify whether the +# character is unique. +# +# On selecting a candidate character, we first look to find a key +# in the second, `%common` hash. If it's there we immediately +# discard the candidate and move on. We don't care a whit *how* +# unique a character is, only whether it its or it isn't. +# +# If it is not found in the `%common` lookup, then two things +# happen: we make two new hash entires, one in the aforementioned +# hash to note it has been already seen, and in the other we record +# the character and its position. We'll call this hash `%first`. +# +# If it is not found in the `%common` lookup, then we turn to the +# second hash. We'll call this hash `%position`, for position. If the +# character already exists as a key here, then it's not unique, and +# if fact it's common. We make a new key in the `%common` hash, +# delete the entry in the `%position` hash and move on. On the other +# hand if we don't already find it there then the character is, at +# that moment, still considered unique. We add its position to the +# `%position` hash under a new key. +# +# When we reach the end of the line we've gathered everythign we +# need to know. The `%position` hash contains unique keys mapped to +# unique positions, as of course no two characters can hold the +# smae index in a string. To find the smallest value, instead of +# laboriously sorting the hash by value we can instead reverse the +# hash. After all, we know the values are unique, so they will make +# unique keys. +# +# Sorting the keys of this reversed hash yields the smallest +# numeric position, which can then be looked up to find the +# character found at that spot. +# +# +# +# © 2022 colin crain +## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## + + + +use warnings; +use strict; +use utf8; +use feature ":5.26"; +use feature qw(signatures); +no warnings 'experimental::signatures'; + + + +my $str = shift // 'abcdeabcdf'; ##'prophylaxis'; + +my %common; +my %position; +my $pos = 0; + +## pass over string and record data +while ($pos < length $str) { + my $char = substr $str, $pos++, 1; + next if $common{$char}; + if ($position{$char}) { + $common{$char} = 1; + delete $position{$char}; + next; + } + $position{$char} = $pos; +} +my ($result) = sort { $position{$a} <=> $position{$b} } keys %position; +say $result; + +%position = reverse %position; ## magic + +## output value from smallest position, now a key +say $position{ (sort {$a<=>$b} keys %position )[0] }; diff --git a/challenge-180/colin-crain/perl/ch-2.pl b/challenge-180/colin-crain/perl/ch-2.pl new file mode 100755 index 0000000000..773d7f2bf6 --- /dev/null +++ b/challenge-180/colin-crain/perl/ch-2.pl @@ -0,0 +1,58 @@ +#!/Users/colincrain/perl5/perlbrew/perls/perl-5.32.0/bin/perl +# +# a-little-off-the-bottom-please.pl +# +# Trim List +# Submitted by: Mohammad S Anwar +# You are given list of numbers, @n and an integer $i. +# +# Write a script to trim the given list where element is less than +# or equal to the given integer. +# +# Example 1 +# Input: @n = (1,4,2,3,5) and $i = 3 +# Output: (4,3,5) +# +# Example 2 +# Input: @n = (9,0,6,2,3,8,5) and $i = 4 +# Output: (9,6,8,5) +# +# +# method: +# am I missing something? This is what `grep` does. +# +# But for that to be true, then example 1 is wrong, and should not +# include 3. The fact that the number of elements in both examples +# is equal to the input $i must be a red herring, and conincidence. +# +# Right? +# +# He says, with audible doubt in his voice. +# +# I'm leaning on the first example being wrong. That has to be it, +# but it seems too easy. I think I may have trust issues. +# +# +# © 2022 colin crain +## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## + + + +use warnings; +use strict; +use utf8; +use feature ":5.26"; +use feature qw(signatures); +no warnings 'experimental::signatures'; + + + +sub trim_low ( $val, $arr ) { + return grep { $_ > $val } $arr->@*; +} + + + +## some tests +say '( ', (join ', ', trim_low( 3, [1,4,2,3,5] )), ' )'; +say '( ', (join ', ', trim_low( 4, [9,0,6,2,3,8,5] )), ' )'; diff --git a/stats/pwc-current.json b/stats/pwc-current.json index 4468ef99c3..dacedc70d3 100644 --- a/stats/pwc-current.json +++ b/stats/pwc-current.json @@ -1,7 +1,37 @@ { + "tooltip" : { + "headerFormat" : "{series.name}
", + "followPointer" : 1, + "pointFormat" : "{point.name}: {point.y:f}
" + }, + "xAxis" : { + "type" : "category" + }, + "subtitle" : { + "text" : "[Champions: 32] Last updated at 2022-09-03 21:37:24 GMT" + }, + "yAxis" : { + "title" : { + "text" : "Total Solutions" + } + }, + "legend" : { + "enabled" : 0 + }, + "plotOptions" : { + "series" : { + "dataLabels" : { + "format" : "{point.y}", + "enabled" : 1 + }, + "borderWidth" : 0 + } + }, "drilldown" : { "series" : [ { + "name" : "Ali Moradi", + "id" : "Ali Moradi", "data" : [ [ "Perl", @@ -11,11 +41,11 @@ "Raku", 2 ] - ], - "id" : "Ali Moradi", - "name" : "Ali Moradi" + ] }, { + "id" : "Arne Sommer", + "name" : "Arne Sommer", "data" : [ [ "Perl", @@ -29,29 +59,27 @@ "Blog", 1 ] - ], - "id" : "Arne Sommer", - "name" : "Arne Sommer" + ] }, { - "name" : "Aut0exec", "data" : [ [ "Perl", 2 ] ], + "name" : "Aut0exec", "id" : "Aut0exec" }, { + "id" : "Bejoy Mathews", + "name" : "Bejoy Mathews", "data" : [ [ "Perl", 2 ] - ], - "id" : "Bejoy Mathews", - "name" : "Bejoy Mathews" + ] }, { "name" : "Ben Davies", @@ -77,6 +105,20 @@ "id" : "Cheok-Yin Fung", "name" : "Cheok-Yin Fung" }, + { + "data" : [ + [ + "Perl", + 2 + ], + [ + "Blog", + 1 + ] + ], + "name" : "Colin Crain", + "id" : "Colin Crain" + }, { "name" : "Dario Mazzeo", "id" : "Dario Mazzeo", @@ -89,26 +131,25 @@ }, { "id" : "Dave Jacoby", + "name" : "Dave Jacoby", "data" : [ [ "Perl", 2 ] - ], - "name" : "Dave Jacoby" + ] }, { - "name" : "E. Choroba", - "id" : "E. Choroba", "data" : [ [ "Perl", 2 ] - ] + ], + "name" : "E. Choroba", + "id" : "E. Choroba" }, { - "name" : "Flavio Poletti", "data" : [ [ "Perl", @@ -123,11 +164,12 @@ 2 ] ], - "id" : "Flavio Poletti" + "id" : "Flavio Poletti", + "name" : "Flavio Poletti" }, { - "name" : "Humberto Massa", "id" : "Humberto Massa", + "name" : "Humberto Massa", "data" : [ [ "Raku", @@ -136,7 +178,6 @@ ] }, { - "name" : "James Smith", "data" : [ [ "Perl", @@ -147,37 +188,38 @@ 1 ] ], + "name" : "James Smith", "id" : "James Smith" }, { + "name" : "Jan Krnavek", + "id" : "Jan Krnavek", "data" : [ [ "Raku", 2 ] - ], - "id" : "Jan Krnavek", - "name" : "Jan Krnavek" + ] }, { - "id" : "Jorg Sommrey", "data" : [ [ "Perl", 2 ] ], + "id" : "Jorg Sommrey", "name" : "Jorg Sommrey" }, { + "name" : "Julien Fiegehenn", + "id" : "Julien Fiegehenn", "data" : [ [ "Perl", 1 ] - ], - "id" : "Julien Fiegehenn", - "name" : "Julien Fiegehenn" + ] }, { "name" : "Kueppo Wesley", @@ -190,6 +232,7 @@ ] }, { + "id" : "Laurent Rosenfeld", "name" : "Laurent Rosenfeld", "data" : [ [ @@ -204,12 +247,11 @@ "Blog", 1 ] - ], - "id" : "Laurent Rosenfeld" + ] }, { - "name" : "Lubos Kolouch", "id" : "Lubos Kolouch", + "name" : "Lubos Kolouch", "data" : [ [ "Perl", @@ -218,37 +260,36 @@ ] }, { - "name" : "Mark Anderson", "data" : [ [ "Raku", 2 ] ], - "id" : "Mark Anderson" + "id" : "Mark Anderson", + "name" : "Mark Anderson" }, { "id" : "Marton Polgar", + "name" : "Marton Polgar", "data" : [ [ "Raku", 2 ] - ], - "name" : "Marton Polgar" + ] }, { - "id" : "Matthew Neleigh", "data" : [ [ "Perl", 2 ] ], + "id" : "Matthew Neleigh", "name" : "Matthew Neleigh" }, { - "id" : "Mohammad S Anwar", "data" : [ [ "Perl", @@ -259,7 +300,8 @@ 2 ] ], - "name" : "Mohammad S Anwar" + "name" : "Mohammad S Anwar", + "id" : "Mohammad S Anwar" }, { "data" : [ @@ -268,11 +310,10 @@ 2 ] ], - "id" : "Niels van Dijke", - "name" : "Niels van Dijke" + "name" : "Niels van Dijke", + "id" : "Niels van Dijke" }, { - "name" : "Robert DiCicco", "data" : [ [ "Perl", @@ -283,21 +324,20 @@ 2 ] ], + "name" : "Robert DiCicco", "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", @@ -311,30 +351,31 @@ "Blog", 1 ] - ] + ], + "name" : "Roger Bell_West", + "id" : "Roger Bell_West" }, { - "id" : "Simon Proctor", "data" : [ [ "Raku", 2 ] ], - "name" : "Simon Proctor" + "name" : "Simon Proctor", + "id" : "Simon Proctor" }, { - "name" : "Solathian", - "id" : "Solathian", "data" : [ [ "Perl", 2 ] - ] + ], + "id" : "Solathian", + "name" : "Solathian" }, { - "name" : "Stephen G Lynn", "data" : [ [ "Perl", @@ -349,10 +390,12 @@ 1 ] ], + "name" : "Stephen G Lynn", "id" : "Stephen G Lynn" }, { "name" : "Ulrich Rieke", + "id" : "Ulrich Rieke", "data" : [ [ "Perl", @@ -362,10 +405,10 @@ "Raku", 2 ] - ], - "id" : "Ulrich Rieke" + ] }, { + "id" : "W. Luis Mochan", "name" : "W. Luis Mochan", "data" : [ [ @@ -376,49 +419,20 @@ "Blog", 1 ] - ], - "id" : "W. Luis Mochan" + ] } ] }, - "xAxis" : { - "type" : "category" - }, - "legend" : { - "enabled" : 0 - }, - "subtitle" : { - "text" : "[Champions: 31] Last updated at 2022-09-03 21:28:23 GMT" - }, - "yAxis" : { - "title" : { - "text" : "Total Solutions" - } - }, - "tooltip" : { - "followPointer" : 1, - "pointFormat" : "{point.name}: {point.y:f}
", - "headerFormat" : "{series.name}
" - }, - "plotOptions" : { - "series" : { - "borderWidth" : 0, - "dataLabels" : { - "enabled" : 1, - "format" : "{point.y}" - } - } - }, - "chart" : { - "type" : "column" + "title" : { + "text" : "The Weekly Challenge - 180" }, "series" : [ { "data" : [ { - "drilldown" : "Ali Moradi", + "name" : "Ali Moradi", "y" : 4, - "name" : "Ali Moradi" + "drilldown" : "Ali Moradi" }, { "drilldown" : "Arne Sommer", @@ -426,9 +440,9 @@ "y" : 5 }, { + "drilldown" : "Aut0exec", "y" : 2, - "name" : "Aut0exec", - "drilldown" : "Aut0exec" + "name" : "Aut0exec" }, { "y" : 2, @@ -437,28 +451,33 @@ }, { "drilldown" : "Ben Davies", - "y" : 2, - "name" : "Ben Davies" + "name" : "Ben Davies", + "y" : 2 }, { - "name" : "Cheok-Yin Fung", "y" : 3, + "name" : "Cheok-Yin Fung", "drilldown" : "Cheok-Yin Fung" }, { - "drilldown" : "Dario Mazzeo", + "y" : 3, + "name" : "Colin Crain", + "drilldown" : "Colin Crain" + }, + { + "y" : 2, "name" : "Dario Mazzeo", - "y" : 2 + "drilldown" : "Dario Mazzeo" }, { - "drilldown" : "Dave Jacoby", + "name" : "Dave Jacoby", "y" : 2, - "name" : "Dave Jacoby" + "drilldown" : "Dave Jacoby" }, { - "drilldown" : "E. Choroba", + "y" : 2, "name" : "E. Choroba", - "y" : 2 + "drilldown" : "E. Choroba" }, { "y" : 6, @@ -466,14 +485,14 @@ "drilldown" : "Flavio Poletti" }, { - "drilldown" : "Humberto Massa", "y" : 2, - "name" : "Humberto Massa" + "name" : "Humberto Massa", + "drilldown" : "Humberto Massa" }, { - "drilldown" : "James Smith", "name" : "James Smith", - "y" : 3 + "y" : 3, + "drilldown" : "James Smith" }, { "y" : 2, @@ -481,49 +500,49 @@ "drilldown" : "Jan Krnavek" }, { - "name" : "Jorg Sommrey", + "drilldown" : "Jorg Sommrey", "y" : 2, - "drilldown" : "Jorg Sommrey" + "name" : "Jorg Sommrey" }, { - "drilldown" : "Julien Fiegehenn", + "name" : "Julien Fiegehenn", "y" : 1, - "name" : "Julien Fiegehenn" + "drilldown" : "Julien Fiegehenn" }, { - "name" : "Kueppo Wesley", + "drilldown" : "Kueppo Wesley", "y" : 2, - "drilldown" : "Kueppo Wesley" + "name" : "Kueppo Wesley" }, { - "name" : "Laurent Rosenfeld", "y" : 5, + "name" : "Laurent Rosenfeld", "drilldown" : "Laurent Rosenfeld" }, { - "drilldown" : "Lubos Kolouch", + "name" : "Lubos Kolouch", "y" : 2, - "name" : "Lubos Kolouch" + "drilldown" : "Lubos Kolouch" }, { - "drilldown" : "Mark Anderson", "name" : "Mark Anderson", - "y" : 2 + "y" : 2, + "drilldown" : "Mark Anderson" }, { - "y" : 2, + "drilldown" : "Marton Polgar", "name" : "Marton Polgar", - "drilldown" : "Marton Polgar" + "y" : 2 }, { - "drilldown" : "Matthew Neleigh", + "y" : 2, "name" : "Matthew Neleigh", - "y" : 2 + "drilldown" : "Matthew Neleigh" }, { + "drilldown" : "Mohammad S Anwar", "name" : "Mohammad S Anwar", - "y" : 4, - "drilldown" : "Mohammad S Anwar" + "y" : 4 }, { "drilldown" : "Niels van Dijke", @@ -532,13 +551,13 @@ }, { "drilldown" : "Robert DiCicco", - "y" : 4, - "name" : "Robert DiCicco" + "name" : "Robert DiCicco", + "y" : 4 }, { - "name" : "Robert Ransbottom", + "drilldown" : "Robert Ransbottom", "y" : 2, - "drilldown" : "Robert Ransbottom" + "name" : "Robert Ransbottom" }, { "name" : "Roger Bell_West", @@ -547,8 +566,8 @@ }, { "drilldown" : "Simon Proctor", - "y" : 2, - "name" : "Simon Proctor" + "name" : "Simon Proctor", + "y" : 2 }, { "y" : 2, @@ -556,26 +575,26 @@ "drilldown" : "Solathian" }, { + "drilldown" : "Stephen G Lynn", "name" : "Stephen G Lynn", - "y" : 5, - "drilldown" : "Stephen G Lynn" + "y" : 5 }, { - "drilldown" : "Ulrich Rieke", "y" : 4, - "name" : "Ulrich Rieke" + "name" : "Ulrich Rieke", + "drilldown" : "Ulrich Rieke" }, { + "drilldown" : "W. Luis Mochan", "name" : "W. Luis Mochan", - "y" : 3, - "drilldown" : "W. Luis Mochan" + "y" : 3 } ], - "colorByPoint" : 1, - "name" : "The Weekly Challenge - 180" + "name" : "The Weekly Challenge - 180", + "colorByPoint" : 1 } ], - "title" : { - "text" : "The Weekly Challenge - 180" + "chart" : { + "type" : "column" } } diff --git a/stats/pwc-language-breakdown-summary.json b/stats/pwc-language-breakdown-summary.json index 6262ac8b24..ba5c35e5bf 100644 --- a/stats/pwc-language-breakdown-summary.json +++ b/stats/pwc-language-breakdown-summary.json @@ -1,48 +1,30 @@ { - "subtitle" : { - "text" : "Last updated at 2022-09-03 21:28:23 GMT" - }, - "yAxis" : { - "min" : 0, - "title" : { - "text" : null - } - }, - "xAxis" : { - "labels" : { - "style" : { - "fontSize" : "13px", - "fontFamily" : "Verdana, sans-serif" - } - }, - "type" : "category" - }, - "legend" : { - "enabled" : "false" + "chart" : { + "type" : "column" }, "series" : [ { + "name" : "Contributions", "dataLabels" : { - "format" : "{point.y:.0f}", - "color" : "#FFFFFF", - "enabled" : "true", - "y" : 10, + "style" : { + "fontSize" : "13px", + "fontFamily" : "Verdana, sans-serif" + }, "align" : "right", + "y" : 10, "rotation" : -90, - "style" : { - "fontFamily" : "Verdana, sans-serif", - "fontSize" : "13px" - } + "format" : "{point.y:.0f}", + "enabled" : "true", + "color" : "#FFFFFF" }, - "name" : "Contributions", "data" : [ [ "Blog", - 2829 + 2830 ], [ "Perl", - 8753 + 8755 ], [ "Raku", @@ -51,12 +33,30 @@ ] } ], - "chart" : { - "type" : "column" - }, "title" : { "text" : "The Weekly Challenge Contributions [2019 - 2022]" }, + "legend" : { + "enabled" : "false" + }, + "subtitle" : { + "text" : "Last updated at 2022-09-03 21:37:24 GMT" + }, + "xAxis" : { + "type" : "category", + "labels" : { + "style" : { + "fontFamily" : "Verdana, sans-serif", + "fontSize" : "13px" + } + } + }, + "yAxis" : { + "min" : 0, + "title" : { + "text" : null + } + }, "tooltip" : { "pointFormat" : "{point.y:.0f}" } diff --git a/stats/pwc-language-breakdown.json b/stats/pwc-language-breakdown.json index 765fdef3ed..4cfd437386 100644 --- a/stats/pwc-language-breakdown.json +++ b/stats/pwc-language-breakdown.json @@ -1,3295 +1,19 @@ { - "drilldown" : { - "series" : [ - { - "name" : "001", - "id" : "001", - "data" : [ - [ - "Perl", - 103 - ], - [ - "Raku", - 47 - ], - [ - "Blog", - 11 - ] - ] - }, - { - "data" : [ - [ - "Perl", - 79 - ], - [ - "Raku", - 36 - ], - [ - "Blog", - 10 - ] - ], - "id" : "002", - "name" : "002" - }, - { - "name" : "003", - "id" : "003", - "data" : [ - [ - "Perl", - 44 - ], - [ - "Raku", - 30 - ], - [ - "Blog", - 9 - ] - ] - }, - { - "data" : [ - [ - "Perl", - 56 - ], - [ - "Raku", - 33 - ], - [ - "Blog", - 10 - ] - ], - "id" : "004", - "name" : "004" - }, - { - "data" : [ - [ - "Perl", - 40 - ], - [ - "Raku", - 26 - ], - [ - "Blog", - 12 - ] - ], - "id" : "005", - "name" : "005" - }, - { - "data" : [ - [ - "Perl", - 33 - ], - [ - "Raku", - 18 - ], - [ - "Blog", - 7 - ] - ], - "id" : "006", - "name" : "006" - }, - { - "id" : "007", - "data" : [ - [ - "Perl", - 32 - ], - [ - "Raku", - 23 - ], - [ - "Blog", - 10 - ] - ], - "name" : "007" - }, - { - "id" : "008", - "data" : [ - [ - "Perl", - 44 - ], - [ - "Raku", - 22 - ], - [ - "Blog", - 12 - ] - ], - "name" : "008" - }, - { - "id" : "009", - "data" : [ - [ - "Perl", - 42 - ], - [ - "Raku", - 21 - ], - [ - "Blog", - 13 - ] - ], - "name" : "009" - }, - { - "name" : "010", - "id" : "010", - "data" : [ - [ - "Perl", - 35 - ], - [ - "Raku", - 19 - ], - [ - "Blog", - 11 - ] - ] - }, - { - "data" : [ - [ - "Perl", - 47 - ], - [ - "Raku", - 28 - ], - [ - "Blog", - 10 - ] - ], - "id" : "011", - "name" : "011" - }, - { - "data" : [ - [ - "Perl", - 48 - ], - [ - "Raku", - 30 - ], - [ - "Blog", - 11 - ] - ], - "id" : "012", - "name" : "012" - }, - { - "name" : "013", - "id" : "013", - "data" : [ - [ - "Perl", - 47 - ], - [ - "Raku", - 25 - ], - [ - "Blog", - 13 - ] - ] - }, - { - "data" : [ - [ - "Perl", - 55 - ], - [ - "Raku", - 31 - ], - [ - "Blog", - 15 - ] - ], - "id" : "014", - "name" : "014" - }, - { - "name" : "015", - "data" : [ - [ - "Perl", - 56 - ], - [ - "Raku", - 28 - ], - [ - "Blog", - 15 - ] - ], - "id" : "015" - }, - { - "name" : "016", - "data" : [ - [ - "Perl", - 36 - ], - [ - "Raku", - 23 - ], - [ - "Blog", - 12 - ] - ], - "id" : "016" - }, - { - "name" : "017", - "id" : "017", - "data" : [ - [ - "Perl", - 45 - ], - [ - "Raku", - 27 - ], - [ - "Blog", - 12 - ] - ] - }, - { - "name" : "018", - "data" : [ - [ - "Perl", - 36 - ], - [ - "Raku", - 31 - ], - [ - "Blog", - 14 - ] - ], - "id" : "018" - }, - { - "name" : "019", - "id" : "019", - "data" : [ - [ - "Perl", - 56 - ], - [ - "Raku", - 34 - ], - [ - "Blog", - 13 - ] - ] - }, - { - "name" : "020", - "data" : [ - [ - "Perl", - 51 - ], - [ - "Raku", - 37 - ], - [ - "Blog", - 13 - ] - ], - "id" : "020" - }, - { - "id" : "021", - "data" : [ - [ - "Perl", - 38 - ], - [ - "Raku", - 24 - ], - [ - "Blog", - 10 - ] - ], - "name" : "021" - }, - { - "id" : "022", - "data" : [ - [ - "Perl", - 35 - ], - [ - "Raku", - 23 - ], - [ - "Blog", - 10 - ] - ], - "name" : "022" - }, - { - "id" : "023", - "data" : [ - [ - "Perl", - 53 - ], - [ - "Raku", - 32 - ], - [ - "Blog", - 12 - ] - ], - "name" : "023" - }, - { - "data" : [ - [ - "Perl", - 38 - ], - [ - "Raku", - 26 - ], - [ - "Blog", - 11 - ] - ], - "id" : "024", - "name" : "024" - }, - { - "name" : "025", - "id" : "025", - "data" : [ - [ - "Perl", - 28 - ], - [ - "Raku", - 19 - ], - [ - "Blog", - 12 - ] - ] - }, - { - "id" : "026", - "data" : [ - [ - "Perl", - 35 - ], - [ - "Raku", - 29 - ], - [ - "Blog", - 10 - ] - ], - "name" : "026" - }, - { - "id" : "027", - "data" : [ - [ - "Perl", - 31 - ], - [ - "Raku", - 22 - ], - [ - "Blog", - 9 - ] - ], - "name" : "027" - }, - { - "id" : "028", - "data" : [ - [ - "Perl", - 47 - ], - [ - "Raku", - 26 - ], - [ - "Blog", - 9 - ] - ], - "name" : "028" - }, - { - "name" : "029", - "id" : "029", - "data" : [ - [ - "Perl", - 42 - ], - [ - "Raku", - 27 - ], - [ - "Blog", - 12 - ] - ] - }, - { - "id" : "030", - "data" : [ - [ - "Perl", - 76 - ], - [ - "Raku", - 33 - ], - [ - "Blog", - 10 - ] - ], - "name" : "030" - }, - { - "name" : "031", - "id" : "031", - "data" : [ - [ - "Perl", - 52 - ], - [ - "Raku", - 30 - ], - [ - "Blog", - 9 - ] - ] - }, - { - "name" : "032", - "data" : [ - [ - "Perl", - 59 - ], - [ - "Raku", - 27 - ], - [ - "Blog", - 10 - ] - ], - "id" : "032" - }, - { - "data" : [ - [ - "Perl", - 64 - ], - [ - "Raku", - 38 - ], - [ - "Blog", - 10 - ] - ], - "id" : "033", - "name" : "033" - }, - { - "id" : "034", - "data" : [ - [ - "Perl", - 32 - ], - [ - "Raku", - 23 - ], - [ - "Blog", - 11 - ] - ], - "name" : "034" - }, - { - "data" : [ - [ - "Perl", - 35 - ], - [ - "Raku", - 22 - ], - [ - "Blog", - 9 - ] - ], - "id" : "035", - "name" : "035" - }, - { - "data" : [ - [ - "Perl", - 37 - ], - [ - "Raku", - 22 - ], - [ - "Blog", - 11 - ] - ], - "id" : "036", - "name" : "036" - }, - { - "id" : "037", - "data" : [ - [ - "Perl", - 36 - ], - [ - "Raku", - 24 - ], - [ - "Blog", - 9 - ] - ], - "name" : "037" - }, - { - "data" : [ - [ - "Perl", - 34 - ], - [ - "Raku", - 24 - ], - [ - "Blog", - 12 - ] - ], - "id" : "038", - "name" : "038" - }, - { - "id" : "039", - "data" : [ - [ - "Perl", - 31 - ], - [ - "Raku", - 21 - ], - [ - "Blog", - 12 - ] - ], - "name" : "039" - }, - { - "name" : "040", - "data" : [ - [ - "Perl", - 41 - ], - [ - "Raku", - 24 - ], - [ - "Blog", - 10 - ] - ], - "id" : "040" - }, - { - "data" : [ - [ - "Perl", - 39 - ], - [ - "Raku", - 30 - ], - [ - "Blog", - 9 - ] - ], - "id" : "041", - "name" : "041" - }, - { - "id" : "042", - "data" : [ - [ - "Perl", - 49 - ], - [ - "Raku", - 34 - ], - [ - "Blog", - 11 - ] - ], - "name" : "042" - }, - { - "name" : "043", - "id" : "043", - "data" : [ - [ - "Perl", - 35 - ], - [ - "Raku", - 24 - ], - [ - "Blog", - 11 - ] - ] - }, - { - "name" : "044", - "id" : "044", - "data" : [ - [ - "Perl", - 43 - ], - [ - "Raku", - 33 - ], - [ - "Blog", - 11 - ] - ] - }, - { - "name" : "045", - "data" : [ - [ - "Perl", - 52 - ], - [ - "Raku", - 35 - ], - [ - "Blog", - 11 - ] - ], - "id" : "045" - }, - { - "data" : [ - [ - "Perl", - 46 - ], - [ - "Raku", - 33 - ], - [ - "Blog", - 10 - ] - ], - "id" : "046", - "name" : "046" - }, - { - "name" : "047", - "id" : "047", - "data" : [ - [ - "Perl", - 45 - ], - [ - "Raku", - 31 - ], - [ - "Blog", - 10 - ] - ] - }, - { - "data" : [ - [ - "Perl", - 61 - ], - [ - "Raku", - 37 - ], - [ - "Blog", - 12 - ] - ], - "id" : "048", - "name" : "048" - }, - { - "name" : "049", - "data" : [ - [ - "Perl", - 52 - ], - [ - "Raku", - 27 - ], - [ - "Blog", - 12 - ] - ], - "id" : "049" - }, - { - "data" : [ - [ - "Perl", - 52 - ], - [ - "Raku", - 36 - ], - [ - "Blog", - 12 - ] - ], - "id" : "050", - "name" : "050" - }, - { - "id" : "051", - "data" : [ - [ - "Perl", - 48 - ], - [ - "Raku", - 32 - ], - [ - "Blog", - 11 - ] - ], - "name" : "051" - }, - { - "name" : "052", - "id" : "052", - "data" : [ - [ - "Perl", - 47 - ], - [ - "Raku", - 32 - ], - [ - "Blog", - 14 - ] - ] - }, - { - "name" : "053", - "data" : [ - [ - "Perl", - 47 - ], - [ - "Raku", - 41 - ], - [ - "Blog", - 15 - ] - ], - "id" : "053" - }, - { - "name" : "054", - "id" : "054", - "data" : [ - [ - "Perl", - 47 - ], - [ - "Raku", - 40 - ], - [ - "Blog", - 18 - ] - ] - }, - { - "data" : [ - [ - "Perl", - 43 - ], - [ - "Raku", - 33 - ], - [ - "Blog", - 14 - ] - ], - "id" : "055", - "name" : "055" - }, - { - "data" : [ - [ - "Perl", - 49 - ], - [ - "Raku", - 32 - ], - [ - "Blog", - 16 - ] - ], - "id" : "056", - "name" : "056" - }, - { - "id" : "057", - "data" : [ - [ - "Perl", - 41 - ], - [ - "Raku", - 26 - ], - [ - "Blog", - 15 - ] - ], - "name" : "057" - }, - { - "id" : "058", - "data" : [ - [ - "Perl", - 35 - ], - [ - "Raku", - 23 - ], - [ - "Blog", - 13 - ] - ], - "name" : "058" - }, - { - "name" : "059", - "id" : "059", - "data" : [ - [ - "Perl", - 41 - ], - [ - "Raku", - 34 - ], - [ - "Blog", - 16 - ] - ] - }, - { - "name" : "060", - "id" : "060", - "data" : [ - [ - "Perl", - 41 - ], - [ - "Raku", - 30 - ], - [ - "Blog", - 16 - ] - ] - }, - { - "name" : "061", - "data" : [ - [ - "Perl", - 39 - ], - [ - "Raku", - 30 - ], - [ - "Blog", - 14 - ] - ], - "id" : "061" - }, - { - "name" : "062", - "data" : [ - [ - "Perl", - 30 - ], - [ - "Raku", - 19 - ], - [ - "Blog", - 11 - ] - ], - "id" : "062" - }, - { - "name" : "063", - "data" : [ - [ - "Perl", - 44 - ], - [ - "Raku", - 34 - ], - [ - "Blog", - 13 - ] - ], - "id" : "063" - }, - { - "data" : [ - [ - "Perl", - 37 - ], - [ - "Raku", - 29 - ], - [ - "Blog", - 16 - ] - ], - "id" : "064", - "name" : "064" - }, - { - "name" : "065", - "id" : "065", - "data" : [ - [ - "Perl", - 34 - ], - [ - "Raku", - 26 - ], - [ - "Blog", - 15 - ] - ] - }, - { - "name" : "066", - "id" : "066", - "data" : [ - [ - "Perl", - 41 - ], - [ - "Raku", - 31 - ], - [ - "Blog", - 14 - ] - ] - }, - { - "data" : [ - [ - "Perl", - 40 - ], - [ - "Raku", - 34 - ], - [ - "Blog", - 18 - ] - ], - "id" : "067", - "name" : "067" - }, - { - "name" : "068", - "data" : [ - [ - "Perl", - 35 - ], - [ - "Raku", - 29 - ], - [ - "Blog", - 13 - ] - ], - "id" : "068" - }, - { - "name" : "069", - "data" : [ - [ - "Perl", - 41 - ], - [ - "Raku", - 28 - ], - [ - "Blog", - 16 - ] - ], - "id" : "069" - }, - { - "name" : "070", - "id" : "070", - "data" : [ - [ - "Perl", - 44 - ], - [ - "Raku", - 34 - ], - [ - "Blog", - 17 - ] - ] - }, - { - "data" : [ - [ - "Perl", - 33 - ], - [ - "Raku", - 32 - ], - [ - "Blog", - 15 - ] - ], - "id" : "071", - "name" : "071" - }, - { - "data" : [ - [ - "Perl", - 53 - ], - [ - "Raku", - 42 - ], - [ - "Blog", - 19 - ] - ], - "id" : "072", - "name" : "072" - }, - { - "id" : "073", - "data" : [ - [ - "Perl", - 55 - ], - [ - "Raku", - 40 - ], - [ - "Blog", - 17 - ] - ], - "name" : "073" - }, - { - "name" : "074", - "data" : [ - [ - "Perl", - 58 - ], - [ - "Raku", - 39 - ], - [ - "Blog", - 20 - ] - ], - "id" : "074" - }, - { - "id" : "075", - "data" : [ - [ - "Perl", - 59 - ], - [ - "Raku", - 38 - ], - [ - "Blog", - 20 - ] - ], - "name" : "075" - }, - { - "name" : "076", - "id" : "076", - "data" : [ - [ - "Perl", - 53 - ], - [ - "Raku", - 32 - ], - [ - "Blog", - 16 - ] - ] - }, - { - "id" : "077", - "data" : [ - [ - "Perl", - 52 - ], - [ - "Raku", - 34 - ], - [ - "Blog", - 14 - ] - ], - "name" : "077" - }, - { - "data" : [ - [ - "Perl", - 68 - ], - [ - "Raku", - 41 - ], - [ - "Blog", - 18 - ] - ], - "id" : "078", - "name" : "078" - }, - { - "id" : "079", - "data" : [ - [ - "Perl", - 68 - ], - [ - "Raku", - 37 - ], - [ - "Blog", - 17 - ] - ], - "name" : "079" - }, - { - "id" : "080", - "data" : [ - [ - "Perl", - 75 - ], - [ - "Raku", - 36 - ], - [ - "Blog", - 16 - ] - ], - "name" : "080" - }, - { - "data" : [ - [ - "Perl", - 65 - ], - [ - "Raku", - 34 - ], - [ - "Blog", - 15 - ] - ], - "id" : "081", - "name" : "081" - }, - { - "id" : "082", - "data" : [ - [ - "Perl", - 62 - ], - [ - "Raku", - 35 - ], - [ - "Blog", - 17 - ] - ], - "name" : "082" - }, - { - "name" : "083", - "id" : "083", - "data" : [ - [ - "Perl", - 73 - ], - [ - "Raku", - 38 - ], - [ - "Blog", - 16 - ] - ] - }, - { - "data" : [ - [ - "Perl", - 71 - ], - [ - "Raku", - 36 - ], - [ - "Blog", - 12 - ] - ], - "id" : "084", - "name" : "084" - }, - { - "id" : "085", - "data" : [ - [ - "Perl", - 64 - ], - [ - "Raku", - 32 - ], - [ - "Blog", - 18 - ] - ], - "name" : "085" - }, - { - "data" : [ - [ - "Perl", - 58 - ], - [ - "Raku", - 31 - ], - [ - "Blog", - 15 - ] - ], - "id" : "086", - "name" : "086" - }, - { - "id" : "087", - "data" : [ - [ - "Perl", - 56 - ], - [ - "Raku", - 31 - ], - [ - "Blog", - 14 - ] - ], - "name" : "087" - }, - { - "name" : "088", - "id" : "088", - "data" : [ - [ - "Perl", - 65 - ], - [ - "Raku", - 36 - ], - [ - "Blog", - 20 - ] - ] - }, - { - "name" : "089", - "id" : "089", - "data" : [ - [ - "Perl", - 59 - ], - [ - "Raku", - 34 - ], - [ - "Blog", - 20 - ] - ] - }, - { - "name" : "090", - "data" : [ - [ - "Perl", - 57 - ], - [ - "Raku", - 39 - ], - [ - "Blog", - 17 - ] - ], - "id" : "090" - }, - { - "name" : "091", - "data" : [ - [ - "Perl", - 56 - ], - [ - "Raku", - 36 - ], - [ - "Blog", - 16 - ] - ], - "id" : "091" - }, - { - "name" : "092", - "id" : "092", - "data" : [ - [ - "Perl", - 52 - ], - [ - "Raku", - 30 - ], - [ - "Blog", - 16 - ] - ] - }, - { - "id" : "093", - "data" : [ - [ - "Perl", - 46 - ], - [ - "Raku", - 25 - ], - [ - "Blog", - 16 - ] - ], - "name" : "093" - }, - { - "name" : "094", - "data" : [ - [ - "Perl", - 44 - ], - [ - "Raku", - 26 - ], - [ - "Blog", - 17 - ] - ], - "id" : "094" - }, - { - "name" : "095", - "data" : [ - [ - "Perl", - 56 - ], - [ - "Raku", - 33 - ], - [ - "Blog", - 19 - ] - ], - "id" : "095" - }, - { - "data" : [ - [ - "Perl", - 52 - ], - [ - "Raku", -