From 528f0ed9aab97db991aa22f1ba0440eadf500266 Mon Sep 17 00:00:00 2001 From: Julien Fiegehenn Date: Sat, 28 May 2022 22:16:35 +0100 Subject: challenge 166, task 1 in typescript I created all of this code with Github Copilot. I only wrote the comments as shown in the code. This is creepy, but also really cool. --- challenge-166/julien-fiegehenn/typescript/ch-1.ts | 110 +++++++++++++++++++++ .../julien-fiegehenn/typescript/package-lock.json | 46 +++++++++ .../julien-fiegehenn/typescript/package.json | 8 ++ .../julien-fiegehenn/typescript/tsconfig.json | 7 ++ 4 files changed, 171 insertions(+) create mode 100644 challenge-166/julien-fiegehenn/typescript/ch-1.ts create mode 100644 challenge-166/julien-fiegehenn/typescript/package-lock.json create mode 100644 challenge-166/julien-fiegehenn/typescript/package.json create mode 100644 challenge-166/julien-fiegehenn/typescript/tsconfig.json diff --git a/challenge-166/julien-fiegehenn/typescript/ch-1.ts b/challenge-166/julien-fiegehenn/typescript/ch-1.ts new file mode 100644 index 0000000000..f8bf35c30e --- /dev/null +++ b/challenge-166/julien-fiegehenn/typescript/ch-1.ts @@ -0,0 +1,110 @@ +// 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. + +// read the dictionary and return an array of words +function readDictionary(fileName: string): string[] { + const fs = require("fs"); + const dictionary = fs.readFileSync(fileName, "utf8").split("\n"); + return dictionary; +} + +// 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: +function findWords(dictionary: string[], wordLength: number): string[] { + const hexWords = []; + const hexLetters = { + o: "0", + l: "1", + i: "1", + s: "5", + t: "7", + }; + const hexLettersRegex = new RegExp(Object.keys(hexLetters).join("|"), "g"); + for (let i = 0; i < dictionary.length; i++) { + if (dictionary[i].length === wordLength) { + let hexWord = dictionary[i].toLowerCase(); + hexWord = hexWord.replace( + hexLettersRegex, + (letter) => hexLetters[letter] + ); + hexWord = hexWord.replace(/[^0-9a-f]/g, ""); + if (hexWord.length === wordLength) { + // I changed this line, it wanted to compare to wordLength * 2 + hexWords.push(hexWord); + } + } + } + return hexWords; +} + +// use readDictionary, iterate 2 to 8 and findWords +function findWordsInHex(dictionary: string[], wordLength: number): string[] { + const hexWords = []; + for (let i = 2; i <= wordLength; i++) { + hexWords.push(...findWords(dictionary, i)); + } + return hexWords; +} + +console.log(findWordsInHex(readDictionary("../../../data/dictionary.txt"), 8)); + +const allHexWords: string[] = findWordsInHex( + readDictionary("../../../data/dictionary.txt"), + 8 +); +// output the last 10 hex words +console.log(allHexWords.slice(-10)); + +// find combinations of words from allHexWords that do not exceed 8 characters and combine them in camelCase +function findCamelCaseWords(allHexWords: string[]): string[] { + const camelCaseWords = []; + for (let i = 0; i < allHexWords.length; i++) { + for (let j = 0; j < allHexWords.length; j++) { + if (allHexWords[i].length + allHexWords[j].length <= 8) { + camelCaseWords.push( + allHexWords[i] + + allHexWords[j].charAt(0).toUpperCase() + + allHexWords[j].slice(1) + ); + } + } + } + return camelCaseWords; +} + +// print 5 random camelcase words +console.log( + findCamelCaseWords(allHexWords) + .sort(() => 0.5 - Math.random()) + .slice(0, 5) +); + +// ignore words from allHexWords that have consecutive 1s +function ignoreConsecutiveOnes(allHexWords: string[]): string[] { + const camelCaseWords = []; + for (let i = 0; i < allHexWords.length; i++) { + if (!/1{2,}/.test(allHexWords[i])) { + camelCaseWords.push(allHexWords[i]); + } + } + return camelCaseWords; +} + +// print 5 random strings from allhexwords that ignore consecutive 1s +console.log( + ignoreConsecutiveOnes(allHexWords) + .sort(() => 0.5 - Math.random()) + .slice(0, 5) +); + diff --git a/challenge-166/julien-fiegehenn/typescript/package-lock.json b/challenge-166/julien-fiegehenn/typescript/package-lock.json new file mode 100644 index 0000000000..a490c9abb1 --- /dev/null +++ b/challenge-166/julien-fiegehenn/typescript/package-lock.json @@ -0,0 +1,46 @@ +{ + "name": "typescript", + "lockfileVersion": 2, + "requires": true, + "packages": { + "": { + "dependencies": { + "typescript": "^4.7.2" + }, + "devDependencies": { + "@types/node": "^17.0.36" + } + }, + "node_modules/@types/node": { + "version": "17.0.36", + "resolved": "https://registry.npmjs.org/@types/node/-/node-17.0.36.tgz", + "integrity": "sha512-V3orv+ggDsWVHP99K3JlwtH20R7J4IhI1Kksgc+64q5VxgfRkQG8Ws3MFm/FZOKDYGy9feGFlZ70/HpCNe9QaA==", + "dev": true + }, + "node_modules/typescript": { + "version": "4.7.2", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.7.2.tgz", + "integrity": "sha512-Mamb1iX2FDUpcTRzltPxgWMKy3fhg0TN378ylbktPGPK/99KbDtMQ4W1hwgsbPAsG3a0xKa1vmw4VKZQbkvz5A==", + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=4.2.0" + } + } + }, + "dependencies": { + "@types/node": { + "version": "17.0.36", + "resolved": "https://registry.npmjs.org/@types/node/-/node-17.0.36.tgz", + "integrity": "sha512-V3orv+ggDsWVHP99K3JlwtH20R7J4IhI1Kksgc+64q5VxgfRkQG8Ws3MFm/FZOKDYGy9feGFlZ70/HpCNe9QaA==", + "dev": true + }, + "typescript": { + "version": "4.7.2", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.7.2.tgz", + "integrity": "sha512-Mamb1iX2FDUpcTRzltPxgWMKy3fhg0TN378ylbktPGPK/99KbDtMQ4W1hwgsbPAsG3a0xKa1vmw4VKZQbkvz5A==" + } + } +} diff --git a/challenge-166/julien-fiegehenn/typescript/package.json b/challenge-166/julien-fiegehenn/typescript/package.json new file mode 100644 index 0000000000..06c72efaa1 --- /dev/null +++ b/challenge-166/julien-fiegehenn/typescript/package.json @@ -0,0 +1,8 @@ +{ + "dependencies": { + "typescript": "^4.7.2" + }, + "devDependencies": { + "@types/node": "^17.0.36" + } +} diff --git a/challenge-166/julien-fiegehenn/typescript/tsconfig.json b/challenge-166/julien-fiegehenn/typescript/tsconfig.json new file mode 100644 index 0000000000..3e3ab9fae8 --- /dev/null +++ b/challenge-166/julien-fiegehenn/typescript/tsconfig.json @@ -0,0 +1,7 @@ +{ + "compilerOptions": { + "target": "ES6", + "module": "CommonJS", + "lib": ["ES6", "DOM"] + } +} \ No newline at end of file -- cgit From af25eaa47101aee0e03f6d271dd42611b023cd36 Mon Sep 17 00:00:00 2001 From: James Smith Date: Sat, 28 May 2022 22:35:09 +0100 Subject: Update README.md --- challenge-166/james-smith/README.md | 24 +++++++++++++++--------- 1 file changed, 15 insertions(+), 9 deletions(-) diff --git a/challenge-166/james-smith/README.md b/challenge-166/james-smith/README.md index 82352a1088..2c0c2c9927 100644 --- a/challenge-166/james-smith/README.md +++ b/challenge-166/james-smith/README.md @@ -329,21 +329,22 @@ discussions with Eliza on the Perl Programmers Facebook group and things slowly got smaller. A few bytes at a time to the 272 byte: ```perl -sub x{my($l,$F,%d,%u,@p)=0;/\//,$u{$'.'/'x-d}{$d{$`}=$`}++for<*/*>;$lkeys%{$u{$l}}?sprintf$b, -map{$u{$l}{$_}?$l:''}@p:()}sort@_),$a} +123456789-123456789-123456789-123456789-123456789-123456789-123456789-123456789- +sub z{my($l,$F,%d,%u,@p)=0;/\//,$u{$'.'/'x-d}{$d{$`}=$`}++for<*/*>;$l;$l; +$lkeys%{$u{$l}}?sprintf$b,map{$u{$l}{$_}?$l:''}@p:()}sort@_ -),$a} +',@p),$a,map({//;@p-%{$u{$'}}?sprintf$b,map{$' x$u{$'}{$_}}@p:()}sort@_),$a} ``` **Notes** @@ -355,7 +356,12 @@ length:1for(@p=sort keys%d),@_=keys%u;print$a=join('-'x$l,('+--')x@p,'+ `1 for @array` as `1for@array`. - we don't need to do `sort blob '*/*'` or `sort <*/*>` as for all "current" versions of Perl we can assume that perl does this for us. - + - Rather than using `split /\//`, we use the match operator `/\//` in one place + and `//` in another to split - the first half goes in `$`` and the second half + in `$'`. + - When using `//` this just copies `$_` into `$'`. + - if you subtract a hash in scalar context then it subtracts the numbers of keys. + Sp we can compute the number ot times a file is missing by doing `@p-%u`. ## Coda - taking the brakes off... For ultimate compactness we can remove the function overhead off, turn off both -- cgit From 2f74a086037783c1cd1dea857af45d9c8f7e4fe3 Mon Sep 17 00:00:00 2001 From: arnesom Date: Sun, 29 May 2022 00:41:35 +0200 Subject: Arne Sommer --- challenge-166/arne-sommer/blog.txt | 1 + challenge-166/arne-sommer/raku/ch-1.raku | 13 ++++++++ challenge-166/arne-sommer/raku/ch-2.raku | 41 +++++++++++++++++++++++++ challenge-166/arne-sommer/raku/hexawords | 13 ++++++++ challenge-166/arne-sommer/raku/hexawords-olist | 7 +++++ challenge-166/arne-sommer/raku/k-dir-diff | 27 ++++++++++++++++ challenge-166/arne-sommer/raku/k-dir-diff-multi | 41 +++++++++++++++++++++++++ challenge-166/arne-sommer/setup.sh | 11 +++++++ challenge-166/arne-sommer/setup2.sh | 8 +++++ 9 files changed, 162 insertions(+) create mode 100644 challenge-166/arne-sommer/blog.txt create mode 100755 challenge-166/arne-sommer/raku/ch-1.raku create mode 100755 challenge-166/arne-sommer/raku/ch-2.raku create mode 100755 challenge-166/arne-sommer/raku/hexawords create mode 100755 challenge-166/arne-sommer/raku/hexawords-olist create mode 100755 challenge-166/arne-sommer/raku/k-dir-diff create mode 100755 challenge-166/arne-sommer/raku/k-dir-diff-multi create mode 100755 challenge-166/arne-sommer/setup.sh create mode 100755 challenge-166/arne-sommer/setup2.sh diff --git a/challenge-166/arne-sommer/blog.txt b/challenge-166/arne-sommer/blog.txt new file mode 100644 index 0000000000..e9728fa0b4 --- /dev/null +++ b/challenge-166/arne-sommer/blog.txt @@ -0,0 +1 @@ +https://raku-musings.com/hexa-diff.html diff --git a/challenge-166/arne-sommer/raku/ch-1.raku b/challenge-166/arne-sommer/raku/ch-1.raku new file mode 100755 index 0000000000..c0f45e36ee --- /dev/null +++ b/challenge-166/arne-sommer/raku/ch-1.raku @@ -0,0 +1,13 @@ +#! /usr/bin/env raku + +unit sub MAIN +( + :d(:$dictionary) where $dictionary.IO.r = 'dictionary.txt', + :p(:$pure), +); + +my @dict = $pure + ?? $dictionary.IO.lines.grep( 1 < *.chars <= 8 ).grep( * ~~ /^<[abcdeflo]>+$/) + !! $dictionary.IO.lines.grep( 1 < *.chars <= 8 ).grep( * ~~ /^<[abcdefilost]>+$/); + +@dict.map({ say "0x" ~ TR/olist/01157/ }); diff --git a/challenge-166/arne-sommer/raku/ch-2.raku b/challenge-166/arne-sommer/raku/ch-2.raku new file mode 100755 index 0000000000..959b066aad --- /dev/null +++ b/challenge-166/arne-sommer/raku/ch-2.raku @@ -0,0 +1,41 @@ +#! /usr/bin/env raku + +unit sub MAIN (*@dirs where @dirs.elems >= 3 && all(@dirs) ~~ .IO.d && all(@dirs) ~~ .IO.r); + +my $dir-count = @dirs.elems; + +my %dir; + +for @dirs -> $dir +{ + %dir{$dir} = $dir.IO.dir.map({ .d ?? .basename ~ '/' !! .basename }).Set; +} + +my %all = %dir.values>>.List.flat.Bag; + +my $max-length = (%all.keys>>.chars.max, @dirs>>.chars.max).max; + +my @head; + +for @dirs -> $dir +{ + @head.push: $dir.fmt("%-{$max-length}s"); +} + +say @head.join(" | "); + +say "-" x (3 + $max-length) * $dir-count; + +for sort keys %all -> $file +{ + next if %all{$file} == $dir-count; + + my @row; + + for @dirs -> $dir + { + @row.push: "{ (%dir{$dir}{$file} ?? $file !! '').fmt("%-{$max-length}s") }"; + } + + say @row.join(" | "); +} diff --git a/challenge-166/arne-sommer/raku/hexawords b/challenge-166/arne-sommer/raku/hexawords new file mode 100755 index 0000000000..c0f45e36ee --- /dev/null +++ b/challenge-166/arne-sommer/raku/hexawords @@ -0,0 +1,13 @@ +#! /usr/bin/env raku + +unit sub MAIN +( + :d(:$dictionary) where $dictionary.IO.r = 'dictionary.txt', + :p(:$pure), +); + +my @dict = $pure + ?? $dictionary.IO.lines.grep( 1 < *.chars <= 8 ).grep( * ~~ /^<[abcdeflo]>+$/) + !! $dictionary.IO.lines.grep( 1 < *.chars <= 8 ).grep( * ~~ /^<[abcdefilost]>+$/); + +@dict.map({ say "0x" ~ TR/olist/01157/ }); diff --git a/challenge-166/arne-sommer/raku/hexawords-olist b/challenge-166/arne-sommer/raku/hexawords-olist new file mode 100755 index 0000000000..cf4c1d8d62 --- /dev/null +++ b/challenge-166/arne-sommer/raku/hexawords-olist @@ -0,0 +1,7 @@ +#! /usr/bin/env raku + +unit sub MAIN (:d(:$dictionary) where $dictionary.IO.r = 'dictionary.txt'); + +my @dict = $dictionary.IO.lines.grep( 1 < *.chars <= 8 ).grep( * ~~ /^<[abcdefolist]>+$/); + +@dict.map({ say "0x" ~ TR/olist/01157/ }); diff --git a/challenge-166/arne-sommer/raku/k-dir-diff b/challenge-166/arne-sommer/raku/k-dir-diff new file mode 100755 index 0000000000..97a068c61f --- /dev/null +++ b/challenge-166/arne-sommer/raku/k-dir-diff @@ -0,0 +1,27 @@ +#! /usr/bin/env raku + +unit sub MAIN ($dir1 where $dir1.IO.d && $dir1.IO.r = 'dir_a', + $dir2 where $dir2.IO.d && $dir2.IO.r = 'dir_b', + $dir3 where $dir3.IO.d && $dir3.IO.r = 'dir_c', +); + +my %dir1 = $dir1.IO.dir.map({ .d ?? .basename ~ '/' !! .basename }).Set; +my %dir2 = $dir2.IO.dir.map({ .d ?? .basename ~ '/' !! .basename }).Set; +my %dir3 = $dir3.IO.dir.map({ .d ?? .basename ~ '/' !! .basename }).Set; + +my %all = %dir1 (|) %dir2 (|) %dir3; + +my $max-length = (%all.keys>>.chars.max, $dir1.chars, $dir2.chars, $dir3.chars).max; + +say "{ $dir1.fmt("%-{$max-length}s") } | { $dir2.fmt("%-{$max-length}s") } | { $dir3.fmt("%-{$max-length}s") }"; + +say "-" x $max-length * 3 + 6; + +for sort keys %all -> $file +{ + next if %dir1{$file} && %dir2{$file} && %dir3{$file}; + + say "{ (%dir1{$file} ?? $file !! '').fmt("%-{$max-length}s") } | " + ~ "{ (%dir2{$file} ?? $file !! '').fmt("%-{$max-length}s") } | " + ~ "{ (%dir3{$file} ?? $file !! '').fmt("%-{$max-length}s") }"; +} diff --git a/challenge-166/arne-sommer/raku/k-dir-diff-multi b/challenge-166/arne-sommer/raku/k-dir-diff-multi new file mode 100755 index 0000000000..959b066aad --- /dev/null +++ b/challenge-166/arne-sommer/raku/k-dir-diff-multi @@ -0,0 +1,41 @@ +#! /usr/bin/env raku + +unit sub MAIN (*@dirs where @dirs.elems >= 3 && all(@dirs) ~~ .IO.d && all(@dirs) ~~ .IO.r); + +my $dir-count = @dirs.elems; + +my %dir; + +for @dirs -> $dir +{ + %dir{$dir} = $dir.IO.dir.map({ .d ?? .basename ~ '/' !! .basename }).Set; +} + +my %all = %dir.values>>.List.flat.Bag; + +my $max-length = (%all.keys>>.chars.max, @dirs>>.chars.max).max; + +my @head; + +for @dirs -> $dir +{ + @head.push: $dir.fmt("%-{$max-length}s"); +} + +say @head.join(" | "); + +say "-" x (3 + $max-length) * $dir-count; + +for sort keys %all -> $file +{ + next if %all{$file} == $dir-count; + + my @row; + + for @dirs -> $dir + { + @row.push: "{ (%dir{$dir}{$file} ?? $file !! '').fmt("%-{$max-length}s") }"; + } + + say @row.join(" | "); +} diff --git a/challenge-166/arne-sommer/setup.sh b/challenge-166/arne-sommer/setup.sh new file mode 100755 index 0000000000..fd117208a7 --- /dev/null +++ b/challenge-166/arne-sommer/setup.sh @@ -0,0 +1,11 @@ +#! /bin/sh + +mkdir dir_a dir_a/Old_Fonts/ dir_b dir_c +cd dir_a +touch Arial.ttf Comic_Sans.ttf Georgia.ttf Helvetica.ttf Impact.otf Verdana.ttf + +cd ../dir_b +touch Arial.ttf Comic_Sans.ttf Courier_New.ttf Helvetica.ttf Impact.otf Tahoma.ttf Verdana.ttf + +cd ../dir_c +touch Arial.ttf Courier_New.ttf Helvetica.ttf Impact.otf Monaco.ttf Verdana.ttf diff --git a/challenge-166/arne-sommer/setup2.sh b/challenge-166/arne-sommer/setup2.sh new file mode 100755 index 0000000000..5b33df3537 --- /dev/null +++ b/challenge-166/arne-sommer/setup2.sh @@ -0,0 +1,8 @@ +#! /bin/sh + +mkdir dir_d dir_e +cd dir_d +touch Arial.ttf FrutigerBold.ttf + +cd ../dir_e +touch Arial.ttf Impact.otf HelveticaModern.ttf -- cgit From c87454dbedc94cc532103c89c49f47bad94551e2 Mon Sep 17 00:00:00 2001 From: Mohammad S Anwar Date: Sun, 29 May 2022 02:00:55 +0100 Subject: - Added solutions by Niels van Dijke. --- stats/pwc-current.json | 253 +++---- stats/pwc-language-breakdown-summary.json | 76 +- stats/pwc-language-breakdown.json | 1102 ++++++++++++++--------------- stats/pwc-leaders.json | 350 ++++----- stats/pwc-summary-1-30.json | 102 +-- stats/pwc-summary-121-150.json | 98 +-- stats/pwc-summary-151-180.json | 110 +-- stats/pwc-summary-181-210.json | 112 +-- stats/pwc-summary-211-240.json | 50 +- stats/pwc-summary-241-270.json | 52 +- stats/pwc-summary-31-60.json | 104 +-- stats/pwc-summary-61-90.json | 100 +-- stats/pwc-summary-91-120.json | 100 +-- stats/pwc-summary.json | 552 +++++++-------- 14 files changed, 1588 insertions(+), 1573 deletions(-) diff --git a/stats/pwc-current.json b/stats/pwc-current.json index b5172878ef..75b3d29bc0 100644 --- a/stats/pwc-current.json +++ b/stats/pwc-current.json @@ -1,18 +1,121 @@ { + "series" : [ + { + "name" : "The Weekly Challenge - 166", + "data" : [ + { + "drilldown" : "Cheok-Yin Fung", + "name" : "Cheok-Yin Fung", + "y" : 2 + }, + { + "y" : 3, + "drilldown" : "Dave Jacoby", + "name" : "Dave Jacoby" + }, + { + "drilldown" : "E. Choroba", + "name" : "E. Choroba", + "y" : 2 + }, + { + "drilldown" : "James Smith", + "name" : "James Smith", + "y" : 3 + }, + { + "drilldown" : "Jan Krnavek", + "name" : "Jan Krnavek", + "y" : 1 + }, + { + "y" : 2, + "drilldown" : "Jorg Sommrey", + "name" : "Jorg Sommrey" + }, + { + "y" : 8, + "drilldown" : "Luca Ferrari", + "name" : "Luca Ferrari" + }, + { + "name" : "Mark Anderson", + "drilldown" : "Mark Anderson", + "y" : 2 + }, + { + "drilldown" : "Niels van Dijke", + "name" : "Niels van Dijke", + "y" : 2 + }, + { + "name" : "Peter Campbell Smith", + "drilldown" : "Peter Campbell Smith", + "y" : 3 + }, + { + "name" : "Robert DiCicco", + "drilldown" : "Robert DiCicco", + "y" : 2 + }, + { + "name" : "Roger Bell_West", + "drilldown" : "Roger Bell_West", + "y" : 5 + }, + { + "name" : "Ulrich Rieke", + "drilldown" : "Ulrich Rieke", + "y" : 2 + }, + { + "y" : 3, + "drilldown" : "W. Luis Mochan", + "name" : "W. Luis Mochan" + } + ], + "colorByPoint" : 1 + } + ], + "xAxis" : { + "type" : "category" + }, + "yAxis" : { + "title" : { + "text" : "Total Solutions" + } + }, + "title" : { + "text" : "The Weekly Challenge - 166" + }, + "legend" : { + "enabled" : 0 + }, + "chart" : { + "type" : "column" + }, + "plotOptions" : { + "series" : { + "dataLabels" : { + "enabled" : 1, + "format" : "{point.y}" + }, + "borderWidth" : 0 + } + }, "drilldown" : { "series" : [ { - "name" : "Cheok-Yin Fung", + "id" : "Cheok-Yin Fung", "data" : [ [ "Perl", 2 ] ], - "id" : "Cheok-Yin Fung" + "name" : "Cheok-Yin Fung" }, { - "name" : "Dave Jacoby", "id" : "Dave Jacoby", "data" : [ [ @@ -23,20 +126,20 @@ "Blog", 1 ] - ] + ], + "name" : "Dave Jacoby" }, { + "name" : "E. Choroba", "data" : [ [ "Perl", 2 ] ], - "id" : "E. Choroba", - "name" : "E. Choroba" + "id" : "E. Choroba" }, { - "id" : "James Smith", "data" : [ [ "Perl", @@ -47,6 +150,7 @@ 1 ] ], + "id" : "James Smith", "name" : "James Smith" }, { @@ -60,16 +164,17 @@ "name" : "Jan Krnavek" }, { - "id" : "Jorg Sommrey", "data" : [ [ "Perl", 2 ] ], + "id" : "Jorg Sommrey", "name" : "Jorg Sommrey" }, { + "name" : "Luca Ferrari", "id" : "Luca Ferrari", "data" : [ [ @@ -80,8 +185,7 @@ "Blog", 6 ] - ], - "name" : "Luca Ferrari" + ] }, { "name" : "Mark Anderson", @@ -93,6 +197,16 @@ ], "id" : "Mark Anderson" }, + { + "data" : [ + [ + "Perl", + 2 + ] + ], + "id" : "Niels van Dijke", + "name" : "Niels van Dijke" + }, { "data" : [ [ @@ -108,6 +222,7 @@ "name" : "Peter Campbell Smith" }, { + "name" : "Robert DiCicco", "data" : [ [ "Perl", @@ -118,11 +233,9 @@ 1 ] ], - "id" : "Robert DiCicco", - "name" : "Robert DiCicco" + "id" : "Robert DiCicco" }, { - "name" : "Roger Bell_West", "id" : "Roger Bell_West", "data" : [ [ @@ -137,11 +250,10 @@ "Blog", 1 ] - ] + ], + "name" : "Roger Bell_West" }, { - "name" : "Ulrich Rieke", - "id" : "Ulrich Rieke", "data" : [ [ "Perl", @@ -151,7 +263,9 @@ "Raku", 1 ] - ] + ], + "id" : "Ulrich Rieke", + "name" : "Ulrich Rieke" }, { "name" : "W. Luis Mochan", @@ -169,111 +283,12 @@ } ] }, - "subtitle" : { - "text" : "[Champions: 13] Last updated at 2022-05-28 23:31:11 GMT" - }, - "title" : { - "text" : "The Weekly Challenge - 166" - }, - "xAxis" : { - "type" : "category" - }, - "legend" : { - "enabled" : 0 - }, - "series" : [ - { - "colorByPoint" : 1, - "data" : [ - { - "drilldown" : "Cheok-Yin Fung", - "y" : 2, - "name" : "Cheok-Yin Fung" - }, - { - "name" : "Dave Jacoby", - "y" : 3, - "drilldown" : "Dave Jacoby" - }, - { - "name" : "E. Choroba", - "drilldown" : "E. Choroba", - "y" : 2 - }, - { - "y" : 3, - "drilldown" : "James Smith", - "name" : "James Smith" - }, - { - "name" : "Jan Krnavek", - "y" : 1, - "drilldown" : "Jan Krnavek" - }, - { - "name" : "Jorg Sommrey", - "y" : 2, - "drilldown" : "Jorg Sommrey" - }, - { - "drilldown" : "Luca Ferrari", - "y" : 8, - "name" : "Luca Ferrari" - }, - { - "name" : "Mark Anderson", - "drilldown" : "Mark Anderson", - "y" : 2 - }, - { - "drilldown" : "Peter Campbell Smith", - "y" : 3, - "name" : "Peter Campbell Smith" - }, - { - "y" : 2, - "drilldown" : "Robert DiCicco", - "name" : "Robert DiCicco" - }, - { - "y" : 5, - "drilldown" : "Roger Bell_West", - "name" : "Roger Bell_West" - }, - { - "name" : "Ulrich Rieke", - "y" : 2, - "drilldown" : "Ulrich Rieke" - }, - { - "name" : "W. Luis Mochan", - "drilldown" : "W. Luis Mochan", - "y" : 3 - } - ], - "name" : "The Weekly Challenge - 166" - } - ], - "chart" : { - "type" : "column" - }, "tooltip" : { - "pointFormat" : "{point.name}: {point.y:f}
", "headerFormat" : "{series.name}
", + "pointFormat" : "{point.name}: {point.y:f}
", "followPointer" : 1 }, - "plotOptions" : { - "series" : { - "borderWidth" : 0, - "dataLabels" : { - "format" : "{point.y}", - "enabled" : 1 - } - } - }, - "yAxis" : { - "title" : { - "text" : "Total Solutions" - } + "subtitle" : { + "text" : "[Champions: 14] Last updated at 2022-05-29 00:59:05 GMT" } } diff --git a/stats/pwc-language-breakdown-summary.json b/stats/pwc-language-breakdown-summary.json index 69eb4bccef..8301572728 100644 --- a/stats/pwc-language-breakdown-summary.json +++ b/stats/pwc-language-breakdown-summary.json @@ -1,42 +1,6 @@ { - "xAxis" : { - "type" : "category", - "labels" : { - "style" : { - "fontSize" : "13px", - "fontFamily" : "Verdana, sans-serif" - } - } - }, - "legend" : { - "enabled" : "false" - }, - "subtitle" : { - "text" : "Last updated at 2022-05-28 23:31:11 GMT" - }, - "title" : { - "text" : "The Weekly Challenge Contributions [2019 - 2022]" - }, - "yAxis" : { - "min" : 0, - "title" : { - "text" : null - } - }, "series" : [ { - "dataLabels" : { - "color" : "#FFFFFF", - "enabled" : "true", - "rotation" : -90, - "style" : { - "fontSize" : "13px", - "fontFamily" : "Verdana, sans-serif" - }, - "align" : "right", - "format" : "{point.y:.0f}", - "y" : 10 - }, "name" : "Contributions", "data" : [ [ @@ -45,19 +9,55 @@ ], [ "Perl", - 8098 + 8100 ], [ "Raku", 4794 ] - ] + ], + "dataLabels" : { + "format" : "{point.y:.0f}", + "y" : 10, + "color" : "#FFFFFF", + "style" : { + "fontSize" : "13px", + "fontFamily" : "Verdana, sans-serif" + }, + "align" : "right", + "enabled" : "true", + "rotation" : -90 + } } ], + "xAxis" : { + "type" : "category", + "labels" : { + "style" : { + "fontFamily" : "Verdana, sans-serif", + "fontSize" : "13px" + } + } + }, + "yAxis" : { + "min" : 0, + "title" : { + "text" : null + } + }, + "title" : { + "text" : "The Weekly Challenge Contributions [2019 - 2022]" + }, + "legend" : { + "enabled" : "false" + }, "chart" : { "type" : "column" }, "tooltip" : { "pointFormat" : "{point.y:.0f}" + }, + "subtitle" : { + "text" : "Last updated at 2022-05-29 00:59:05 GMT" } } diff --git a/stats/pwc-language-breakdown.json b/stats/pwc-language-breakdown.json index 2bbf4ed776..a847f8e337 100644 --- a/stats/pwc-language-breakdown.json +++ b/stats/pwc-language-breakdown.json @@ -1,8 +1,24 @@ { + "tooltip" : { + "followPointer" : "true", + "pointFormat" : "Challenge {point.name}: {point.y:f}
", + "headerFormat" : "" + }, + "subtitle" : { + "text" : "Click the columns to drilldown the language breakdown. Last updated at 2022-05-29 00:59:05 GMT" + }, + "plotOptions" : { + "series" : { + "borderWidth" : 0, + "dataLabels" : { + "enabled" : 1, + "format" : "{point.y}" + } + } + }, "drilldown" : { "series" : [ { - "id" : "001", "data" : [ [ "Perl", @@ -17,10 +33,10 @@ 11 ] ], + "id" : "001", "name" : "001" }, { - "name" : "002", "data" : [ [ "Perl", @@ -35,10 +51,12 @@ 10 ] ], - "id" : "002" + "id" : "002", + "name" : "002" }, { "name" : "003", + "id" : "003", "data" : [ [ "Perl", @@ -52,12 +70,9 @@ "Blog", 9 ] - ], - "id" : "003" + ] }, { - "name" : "004", - "id" : "004", "data" : [ [ "Perl", @@ -71,9 +86,12 @@ "Blog", 10 ] - ] + ], + "id" : "004", + "name" : "004" }, { + "name" : "005", "id" : "005", "data" : [ [ @@ -88,10 +106,11 @@ "Blog", 12 ] - ], - "name" : "005" + ] }, { + "name" : "006", + "id" : "006", "data" : [ [ "Perl", @@ -105,11 +124,11 @@ "Blog", 7 ] - ], - "id" : "006", - "name" : "006" + ] }, { + "name" : "007", + "id" : "007", "data" : [ [ "Perl", @@ -123,9 +142,7 @@ "Blog", 10 ] - ], - "id" : "007", - "name" : "007" + ] }, { "name" : "008", @@ -146,7 +163,6 @@ ] }, { - "name" : "009", "data" : [ [ "Perl", @@ -161,11 +177,11 @@ 13 ] ], - "id" : "009" + "id" : "009", + "name" : "009" }, { "name" : "010", - "id" : "010", "data" : [ [ "Perl", @@ -179,11 +195,10 @@ "Blog", 11 ] - ] + ], + "id" : "010" }, { - "name" : "011", - "id" : "011", "data" : [ [ "Perl", @@ -197,10 +212,12 @@ "Blog", 10 ] - ] + ], + "id" : "011", + "name" : "011" }, { - "name" : "012", + "id" : "012", "data" : [ [ "Perl", @@ -215,9 +232,10 @@ 11 ] ], - "id" : "012" + "name" : "012" }, { + "name" : "013", "data" : [ [ "Perl", @@ -232,12 +250,10 @@ 13 ] ], - "id" : "013", - "name" : "013" + "id" : "013" }, { "name" : "014", - "id" : "014", "data" : [ [ "Perl", @@ -251,10 +267,10 @@ "Blog", 15 ] - ] + ], + "id" : "014" }, { - "name" : "015", "data" : [ [ "Perl", @@ -269,10 +285,10 @@ 15 ] ], - "id" : "015" + "id" : "015", + "name" : "015" }, { - "id" : "016", "data" : [ [ "Perl", @@ -287,11 +303,10 @@ 12 ] ], + "id" : "016", "name" : "016" }, { - "name" : "017", - "id" : "017", "data" : [ [ "Perl", @@ -305,11 +320,11 @@ "Blog", 12 ] - ] + ], + "id" : "017", + "name" : "017" }, { - "name" : "018", - "id" : "018", "data" : [ [ "Perl", @@ -323,7 +338,9 @@ "Blog", 14 ] - ] + ], + "id" : "018", + "name" : "018" }, { "id" : "019", @@ -344,6 +361,8 @@ "name" : "019" }, { + "name" : "020", + "id" : "020", "data" : [ [ "Perl", @@ -357,13 +376,9 @@ "Blog", 13 ] - ], - "id" : "020", - "name" : "020" + ] }, { - "name" : "021", - "id" : "021", "data" : [ [ "Perl", @@ -377,10 +392,11 @@ "Blog", 10 ] - ] + ], + "id" : "021", + "name" : "021" }, { - "name" : "022", "data" : [ [ "Perl", @@ -395,9 +411,11 @@ 10 ] ], - "id" : "022" + "id" : "022", + "name" : "022" }, { + "id" : "023", "data" : [ [ "Perl", @@ -412,11 +430,10 @@ 12 ] ], - "id" : "023", "name" : "023" }, { - "id" : "024", + "name" : "024", "data" : [ [ "Perl", @@ -431,7 +448,7 @@ 11 ] ], - "name" : "024" + "id" : "024" }, { "name" : "025", @@ -452,7 +469,6 @@ "id" : "025" }, { - "id" : "026", "data" : [ [ "Perl", @@ -467,10 +483,10 @@ 10 ] ], + "id" : "026", "name" : "026" }, { - "name" : "027", "data" : [ [ "Perl", @@ -485,9 +501,11 @@ 9 ] ], - "id" : "027" + "id" : "027", + "name" : "027" }, { + "name" : "028", "id" : "028", "data" : [ [ @@ -502,11 +520,10 @@ "Blog", 9 ] - ], - "name" : "028" + ] }, { - "id" : "029", + "name" : "029", "data" : [ [ "Perl", @@ -521,10 +538,9 @@ 12 ] ], - "name" : "029" + "id" : "029" }, { - "name" : "030", "id" : "030", "data" : [ [ @@ -539,10 +555,10 @@ "Blog", 10 ] - ] + ], + "name" : "030" }, { - "name" : "031", "data" : [ [ "Perl", @@ -557,10 +573,11 @@ 9 ] ], - "id" : "031" + "id" : "031", + "name" : "031" }, { - "id" : "032", + "name" : "032", "data" : [ [ "Perl", @@ -575,9 +592,10 @@ 10 ] ], - "name" : "032" + "id" : "032" }, { + "name" : "033", "data" : [ [ "Perl", @@ -592,10 +610,11 @@ 10 ] ], - "id" : "033", - "name" : "033" + "id" : "033" }, { + "name" : "034", + "id" : "034", "data" : [ [ "Perl", @@ -609,9 +628,7 @@ "Blog", 11 ] - ], - "id" : "034", - "name" : "034" + ] }, { "name" : "035", @@ -632,6 +649,8 @@ "id" : "035" }, { + "name" : "036", + "id" : "036", "data" : [ [ "Perl", @@ -645,12 +664,9 @@ "Blog", 11 ] - ], - "id" : "036", - "name" : "036" + ] }, { - "name" : "037", "data" : [ [ "Perl", @@ -665,7 +681,8 @@ 9 ] ], - "id" : "037" + "id" : "037", + "name" : "037" }, { "name" : "038", @@ -705,7 +722,6 @@ }, { "name" : "040", - "id" : "040", "data" : [ [ "Perl", @@ -719,10 +735,10 @@ "Blog", 10 ] - ] + ], + "id" : "040" }, { - "name" : "041", "data" : [ [ "Perl", @@ -737,9 +753,11 @@ 9 ] ], - "id" : "041" + "id" : "041", + "name" : "041" }, { + "id" : "042", "data" : [ [ "Perl", @@ -754,10 +772,10 @@ 11 ] ], - "id" : "042", "name" : "042" }, { + "id" : "043", "data" : [ [ "Perl", @@ -772,12 +790,10 @@ 11 ] ], - "id" : "043", "name" : "043" }, { "name" : "044", - "id" : "044", "data" : [ [ "Perl", @@ -791,7 +807,8 @@ "Blog", 11 ] - ] + ], + "id" : "044" }, { "id" : "045", @@ -812,7 +829,7 @@ "name" : "045" }, { - "name" : "046", + "id" : "046", "data" : [ [ "Perl", @@ -827,7 +844,7 @@ 10 ] ], - "id" : "046" + "name" : "046" }, { "id" : "047", @@ -849,7 +866,6 @@ }, { "name" : "048", - "id" : "048", "data" : [ [ "Perl", @@ -863,7 +879,8 @@ "Blog", 12 ] - ] + ], + "id" : "048" }, { "id" : "049", @@ -885,7 +902,6 @@ }, { "name" : "050", - "id" : "050", "data" : [ [ "Perl", @@ -899,10 +915,11 @@ "Blog", 12 ] - ] + ], + "id" : "050" }, { - "name" : "051", + "id" : "051", "data" : [ [ "Perl", @@ -917,7 +934,7 @@ 11 ] ], - "id" : "051" + "name" : "051" }, { "id" : "052", @@ -938,7 +955,6 @@ "name" : "052" }, { - "name" : "053", "data" : [ [ "Perl", @@ -953,9 +969,11 @@ 15 ] ], - "id" : "053" + "id" : "053", + "name" : "053" }, { + "id" : "054", "data" : [ [ "Perl", @@ -970,10 +988,11 @@ 18 ] ], - "id" : "054", "name" : "054" }, { + "name" : "055", + "id" : "055", "data" : [ [ "Perl", @@ -987,13 +1006,9 @@ "Blog", 14 ] - ], - "id" : "055", - "name" : "055" + ] }, { - "name" : "056", - "id" : "056", "data" : [ [ "Perl", @@ -1007,7 +1022,9 @@ "Blog", 16 ] - ] + ], + "id" : "056", + "name" : "056" }, { "id" : "057", @@ -1046,7 +1063,6 @@ "name" : "058" }, { - "id" : "059", "data" : [ [ "Perl", @@ -1061,10 +1077,12 @@ 16 ] ], + "id" : "059", "name" : "059" }, { "name" : "060", + "id" : "060", "data" : [ [ "Perl", @@ -1078,11 +1096,10 @@ "Blog", 16 ] - ], - "id" : "060" + ] }, { - "name" : "061", + "id" : "061", "data" : [ [ "Perl", @@ -1097,9 +1114,11 @@ 14 ] ], - "id" : "061" + "name" : "061" }, { + "name" : "062", + "id" : "062", "data" : [ [ "Perl", @@ -1113,9 +1132,7 @@ "Blog", 11 ] - ], - "id" : "062", - "name" : "062" + ] }, { "id" : "063", @@ -1136,6 +1153,7 @@ "name" : "063" }, { + "name" : "064", "id" : "064", "data" : [ [ @@ -1150,8 +1168,7 @@ "Blog", 16 ] - ], - "name" : "064" + ] }, { "id" : "065", @@ -1190,7 +1207,6 @@ "name" : "066" }, { - "id" : "067", "data" : [ [ "Perl", @@ -1205,10 +1221,10 @@ 18 ] ], + "id" : "067", "name" : "067" }, { - "id" : "068", "data" : [ [ "Perl", @@ -1223,10 +1239,11 @@ 13 ] ], + "id" : "068", "name" : "068" }, { - "name" : "069", + "id" : "069", "data" : [ [ "Perl", @@ -1241,10 +1258,10 @@ 16 ] ], - "id" : "069" + "name" : "069" }, { - "name" : "070", + "id" : "070", "data" : [ [ "Perl", @@ -1259,10 +1276,10 @@ 17 ] ], - "id" : "070" + "name" : "070" }, { - "id" : "071", + "name" : "071", "data" : [ [ "Perl", @@ -1277,7 +1294,7 @@ 15 ] ], - "name" : "071" + "id" : "071" }, { "name" : "072", @@ -1298,7 +1315,6 @@ "id" : "072" }, { - "name" : "073", "id" : "073", "data" : [ [ @@ -1313,11 +1329,11 @@ "Blog", 17 ] - ] + ], + "name" : "073" }, { "name" : "074", - "id" : "074", "data" : [ [ "Perl", @@ -1331,10 +1347,12 @@ "Blog", 20 ] - ] + ], + "id" : "074" }, { "name" : "075", + "id" : "075", "data" : [ [ "Perl", @@ -1348,8 +1366,7 @@ "Blog", 20 ] - ], - "id" : "075" + ] }, { "name" : "076", @@ -1388,7 +1405,7 @@ "name" : "077" }, { - "name" : "078", + "id" : "078", "data" : [ [ "Perl", @@ -1403,7 +1420,7 @@ 18 ] ], - "id" : "078" + "name" : "078" }, { "name" : "079", @@ -1424,6 +1441,7 @@ "id" : "079" }, { + "name" : "080", "id" : "080", "data" : [ [ @@ -1438,8 +1456,7 @@ "Blog", 16 ] - ], - "name" : "080" + ] }, { "id" : "081", @@ -1461,7 +1478,6 @@ }, { "name" : "082", - "id" : "082", "data" : [ [ "Perl", @@ -1475,10 +1491,11 @@ "Blog", 17 ] - ] + ], + "id" : "082" }, { - "name" : "083", + "id" : "083", "data" : [ [ "Perl", @@ -1493,9 +1510,10 @@ 16 ] ], - "id" : "083" + "name" : "083" }, { + "id" : "084", "data" : [ [ "Perl", @@ -1510,11 +1528,11 @@ 12 ] ], - "id" : "084", "name" : "084" }, { "name" : "085", + "id" : "085", "data" : [ [ "Perl", @@ -1528,11 +1546,9 @@ "Blog", 18 ] - ], - "id" : "085" + ] }, { - "name" : "086", "data" : [ [ "Perl", @@ -1547,10 +1563,11 @@ 15 ] ], - "id" : "086" + "id" : "086", + "name" : "086" }, { - "id" : "087", + "name" : "087", "data" : [ [ "Perl", @@ -1565,7 +1582,7 @@ 14 ] ], - "name" : "087" + "id" : "087" }, { "data" : [ @@ -1586,8 +1603,6 @@ "name" : "088" }, { - "name" : "089", - "id" : "089", "data" : [ [ "Perl", @@ -1601,7 +1616,9 @@ "Blog", 20 ] - ] + ], + "id" : "089", + "name" : "089" }, { "name" : "090", @@ -1622,7 +1639,7 @@ "id" : "090" }, { - "name" : "091", + "id" : "091", "data" : [ [ "Perl", @@ -1637,10 +1654,10 @@ 16 ] ], - "id" : "091" + "name" : "091" }, { - "id" : "092", + "name" : "092", "data" : [ [ "Perl", @@ -1655,9 +1672,11 @@ 16 ] ], - "name" : "092" + "id" : "092" }, { + "name" : "093", + "id" : "093", "data" : [ [ "Perl", @@ -1671,9 +1690,7 @@ "Blog", 16 ] - ], - "id" : "093", - "name" : "093" + ] }, { "name" : "094", @@ -1694,7 +1711,7 @@ "id" : "094" }, { - "id" : "095", + "name" : "095", "data" : [ [ "Perl", @@ -1709,10 +1726,9 @@ 19 ] ], - "name" : "095" + "id" : "095" }, { - "name" : "096", "id" : "096", "data" : [ [ @@ -1727,9 +1743,11 @@ "Blog", 19 ] - ] + ], + "name" : "096" }, { + "id" : "097", "data" : [ [ "Perl", @@ -1744,11 +1762,11 @@ 19 ] ], - "id" : "097", "name" : "097" }, { "name" : "098", + "id" : "098", "data" : [ [ "Perl", @@ -1762,11 +1780,9 @@ "Blog", 17 ] - ], - "id" : "098" + ] }, { - "name" : "099", "id" : "099", "data" : [ [ @@ -1781,11 +1797,10 @@ "Blog", 14 ] - ] + ], + "name" : "099" }, { - "name" : "100", - "id" : "100", "data" : [ [ "Perl", @@ -1799,10 +1814,13 @@ "Blog", 21 ] - ] + ], + "id" : "100", + "name" : "100" }, { "name" : "101", + "id" : "101", "data" : [ [ "Perl", @@ -1816,8 +1834,7 @@ "Blog", 13 ] - ], - "id" : "101" + ] }, { "name" : "102", @@ -1838,6 +1855,7 @@ "id" : "102" }, { + "name" : "103", "data" : [ [ "Perl", @@ -1852,8 +1870,7 @@ 15 ] ], - "id" : "103", - "name" : "103" + "id" : "103" }, { "name" : "104", @@ -1892,6 +1909,8 @@ "name" : "105" }, { + "name" : "106", + "id" : "106", "data" : [ [ "Perl", @@ -1905,11 +1924,11 @@ "Blog", 17 ] - ], - "id" : "106", - "name" : "106" + ] }, { + "name" : "107", + "id" : "107", "data" : [ [ "Perl", @@ -1923,11 +1942,10 @@ "Blog", 19 ] - ], - "id" : "107", - "name" : "107" + ] }, { + "id" : "108", "data" : [ [ "Perl", @@ -1942,11 +1960,10 @@ 20 ] ], - "id" : "108", "name" : "108" }, { - "name" : "109", + "id" : "109", "data" : [ [ "Perl", @@ -1961,7 +1978,7 @@ 22 ] ], - "id" : "109" + "name" : "109" }, { "data" : [ @@ -2000,8 +2017,6 @@ "name" : "111" }, { - "name" : "112", - "id" : "112", "data" : [ [ "Perl", @@ -2015,10 +2030,12 @@ "Blog", 19 ] - ] + ], + "id" : "112", + "name" : "112" }, { - "id" : "113", + "name" : "113", "data" : [ [ "Perl", @@ -2033,11 +2050,9 @@ 19 ] ], - "name" : "113" + "id" : "113" }, { - "name" : "114", - "id" : "114", "data" : [ [ "Perl", @@ -2051,10 +2066,12 @@ "Blog", 21 ] - ] + ], + "id" : "114", + "name" : "114" }, { - "id" : "115", + "name" : "115", "data" : [ [ "Perl", @@ -2069,7 +2086,7 @@ 20 ] ], - "name" : "115" + "id" : "115" }, { "name" : "116", @@ -2090,6 +2107,7 @@ "id" : "116" }, { + "name" : "117", "data" : [ [ "Perl", @@ -2104,12 +2122,9 @@ 19 ] ], - "id" : "117", - "name" : "117" + "id" : "117" }, { - "name" : "118", - "id" : "118", "data" : [ [ "Perl", @@ -2123,7 +2138,9 @@ "Blog", 17 ] - ] + ], + "id" : "118", + "name" : "118" }, { "id" : "119", @@ -2144,7 +2161,7 @@ "name" : "119" }, { - "id" : "120", + "name" : "120", "data" : [ [ "Perl", @@ -2159,10 +2176,9 @@ 21 ] ], - "name" : "120" + "id" : "120" }, { - "name" : "121", "data" : [ [ "Perl", @@ -2177,7 +2193,8 @@ 17 ] ], - "id" : "121" + "id" : "121", + "name" : "121" }, { "name" : "122", @@ -2216,8 +2233,6 @@ "id" : "123" }, { - "name" : "124", - "id" : "124", "data" : [ [ "Perl", @@ -2231,10 +2246,11 @@ "Blog", 16 ] - ] + ], + "id" : "124", + "name" : "124" }, { - "name" : "125", "data" : [ [ "Perl", @@ -2249,10 +2265,12 @@ 11 ] ], - "id" : "125" + "id" : "125", + "name" : "125" }, { "name" : "126", + "id" : "126", "data" : [ [ "Perl", @@ -2266,12 +2284,10 @@ "Blog", 19 ] - ], - "id" : "126" + ] }, { "name" : "127", - "id" : "127", "data" : [ [ "Perl", @@ -2285,10 +2301,11 @@ "Blog", 18 ] - ] + ], + "id" : "127" }, { - "id" : "128", + "name" : "128", "data" : [ [ "Perl", @@ -2303,7 +2320,7 @@ 15 ] ], - "name" : "128" + "id" : "128" }, { "data" : [ @@ -2324,6 +2341,7 @@ "name" : "129" }, { + "id" : "130", "data" : [ [ "Perl", @@ -2338,11 +2356,10 @@ 13 ] ], - "id" : "130", "name" : "130" }, { - "id" : "131", + "name" : "131", "data" : [ [ "Perl", @@ -2357,9 +2374,10 @@ 17 ] ], - "name" : "131" + "id" : "131" }, { + "name" : "132", "id" : "132", "data" : [ [ @@ -2374,10 +2392,10 @@ "Blog", 13 ] - ], - "name" : "132" + ] }, { + "name" : "133", "data" : [ [ "Perl", @@ -2392,12 +2410,10 @@ 18 ] ], - "id" : "133", - "name" : "133" + "id" : "133" }, { "name" : "134", - "id" : "134", "data" : [ [ "Perl", @@ -2411,10 +2427,11 @@ "Blog", 15 ] - ] + ], + "id" : "134" }, { - "id" : "135", + "name" : "135", "data" : [ [ "Perl", @@ -2429,11 +2446,9 @@ 17 ] ], - "name" : "135" + "id" : "135" }, { - "name" : "136", - "id" : "136", "data" : [ [ "Perl", @@ -2447,7 +2462,9 @@ "Blog", 19 ] - ] + ], + "id" : "136", + "name" : "136" }, { "name" : "137", @@ -2468,7 +2485,7 @@ ] }, { - "id" : "138", + "name" : "138", "data" : [ [ "Perl", @@ -2483,10 +2500,9 @@ 20 ] ], - "name" : "138" + "id" : "138" }, { - "name" : "139", "id" : "139", "data" : [ [ @@ -2501,10 +2517,10 @@ "Blog", 19 ] - ] + ], + "name" : "139" }, { - "name" : "140", "data" : [ [ "Perl", @@ -2519,9 +2535,12 @@ 20 ] ], - "id" : "140" + "id" : "140", + "name" : "140" }, { + "name" : "141", + "id" : "141", "data" : [ [ "Perl", @@ -2535,12 +2554,10 @@ "Blog", 20 ] -