trackler 2.2.1.50 → 2.2.1.51

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (106) hide show
  1. checksums.yaml +4 -4
  2. data/lib/trackler/version.rb +1 -1
  3. data/tracks/c/README.md +10 -0
  4. data/tracks/c/exercises/raindrops/src/example.c +16 -18
  5. data/tracks/c/exercises/raindrops/src/example.h +1 -1
  6. data/tracks/c/exercises/raindrops/test/test_raindrops.c +25 -54
  7. data/tracks/clojure/config.json +256 -382
  8. data/tracks/clojure/config/maintainers.json +19 -19
  9. data/tracks/coq/docs/SNIPPET.txt +12 -0
  10. data/tracks/csharp/config.json +677 -678
  11. data/tracks/csharp/config/maintainers.json +27 -27
  12. data/tracks/csharp/docs/GENERATORS.md +2 -0
  13. data/tracks/csharp/exercises/bowling/BowlingTest.cs +163 -87
  14. data/tracks/csharp/exercises/bowling/Example.cs +47 -8
  15. data/tracks/csharp/generators/Exercises/Bowling.cs +116 -0
  16. data/tracks/elisp/config.json +84 -126
  17. data/tracks/elisp/config/maintainers.json +7 -7
  18. data/tracks/elixir/config.json +397 -513
  19. data/tracks/elixir/config/maintainers.json +15 -15
  20. data/tracks/erlang/.gitmodules +3 -0
  21. data/tracks/erlang/.travis.yml +1 -0
  22. data/tracks/erlang/exercises/hello-world/test/hello_world_tests.erl +1 -1
  23. data/tracks/erlang/testgen/.gitignore +19 -0
  24. data/tracks/erlang/testgen/LICENSE +21 -0
  25. data/tracks/erlang/testgen/README.md +14 -0
  26. data/tracks/erlang/testgen/include/tgen.hrl +6 -0
  27. data/tracks/erlang/testgen/rebar.config +15 -0
  28. data/tracks/erlang/testgen/src/testgen.app.src +15 -0
  29. data/tracks/erlang/testgen/src/testgen.erl +41 -0
  30. data/tracks/erlang/testgen/src/tg_file_tools.erl +14 -0
  31. data/tracks/erlang/testgen/src/tg_git_tools.erl +20 -0
  32. data/tracks/erlang/testgen/src/tgen.erl +126 -0
  33. data/tracks/erlang/testgen/src/tgen_hello-world.erl +35 -0
  34. data/tracks/fsharp/config.json +643 -643
  35. data/tracks/fsharp/config/maintainers.json +15 -15
  36. data/tracks/groovy/config.json +97 -101
  37. data/tracks/groovy/config/maintainers.json +7 -7
  38. data/tracks/haxe/docs/INSTALLATION.md +2 -0
  39. data/tracks/haxe/docs/SNIPPET.txt +7 -0
  40. data/tracks/haxe/docs/TESTS.md +24 -0
  41. data/tracks/idris/config.json +35 -37
  42. data/tracks/idris/config/maintainers.json +7 -7
  43. data/tracks/java/config.json +122 -122
  44. data/tracks/javascript/exercises/palindrome-products/README.md +6 -6
  45. data/tracks/kotlin/config.json +264 -383
  46. data/tracks/kotlin/config/maintainers.json +15 -15
  47. data/tracks/lfe/config.json +126 -188
  48. data/tracks/lfe/config/maintainers.json +7 -7
  49. data/tracks/lua/exercises/etl/README.md +1 -1
  50. data/tracks/lua/exercises/ocr-numbers/README.md +1 -1
  51. data/tracks/lua/exercises/pascals-triangle/README.md +1 -1
  52. data/tracks/lua/exercises/pov/README.md +1 -1
  53. data/tracks/lua/exercises/react/react_spec.lua +1 -1
  54. data/tracks/lua/exercises/rna-transcription/README.md +1 -1
  55. data/tracks/objective-c/config.json +8 -8
  56. data/tracks/objective-c/config/maintainers.json +15 -15
  57. data/tracks/perl6/docs/EXERCISE_README_INSERT.md +9 -5
  58. data/tracks/perl6/exercises/accumulate/README.md +9 -5
  59. data/tracks/perl6/exercises/all-your-base/README.md +9 -5
  60. data/tracks/perl6/exercises/allergies/README.md +9 -5
  61. data/tracks/perl6/exercises/anagram/README.md +9 -5
  62. data/tracks/perl6/exercises/atbash-cipher/README.md +9 -5
  63. data/tracks/perl6/exercises/binary/README.md +9 -5
  64. data/tracks/perl6/exercises/bob/README.md +9 -5
  65. data/tracks/perl6/exercises/clock/README.md +9 -5
  66. data/tracks/perl6/exercises/flatten-array/README.md +9 -5
  67. data/tracks/perl6/exercises/grade-school/README.md +9 -5
  68. data/tracks/perl6/exercises/grains/README.md +9 -5
  69. data/tracks/perl6/exercises/hello-world/README.md +9 -5
  70. data/tracks/perl6/exercises/leap/README.md +9 -5
  71. data/tracks/perl6/exercises/linked-list/README.md +9 -5
  72. data/tracks/perl6/exercises/luhn/README.md +9 -5
  73. data/tracks/perl6/exercises/phone-number/README.md +9 -5
  74. data/tracks/perl6/exercises/raindrops/README.md +9 -5
  75. data/tracks/perl6/exercises/rna-transcription/README.md +10 -6
  76. data/tracks/perl6/exercises/robot-name/README.md +9 -5
  77. data/tracks/perl6/exercises/scrabble-score/README.md +9 -5
  78. data/tracks/perl6/exercises/space-age/README.md +10 -7
  79. data/tracks/perl6/exercises/trinary/README.md +9 -5
  80. data/tracks/perl6/exercises/word-count/README.md +9 -5
  81. data/tracks/perl6/exercises/wordy/README.md +9 -5
  82. data/tracks/r/config.json +136 -138
  83. data/tracks/r/config/maintainers.json +15 -15
  84. data/tracks/racket/config.json +105 -151
  85. data/tracks/racket/config/maintainers.json +15 -15
  86. data/tracks/rust/.travis.yml +1 -0
  87. data/tracks/rust/_test/count-ignores.sh +16 -0
  88. data/tracks/rust/exercises/all-your-base/tests/all-your-base.rs +36 -36
  89. data/tracks/rust/exercises/alphametics/tests/alphametics.rs +2 -2
  90. data/tracks/rust/exercises/bowling/tests/bowling.rs +14 -14
  91. data/tracks/rust/exercises/circular-buffer/tests/circular-buffer.rs +16 -16
  92. data/tracks/rust/exercises/hamming/tests/hamming.rs +5 -5
  93. data/tracks/rust/exercises/largest-series-product/tests/largest-series-product.rs +12 -12
  94. data/tracks/rust/exercises/nucleotide-count/tests/nucleotide-count.rs +4 -4
  95. data/tracks/rust/exercises/ocr-numbers/tests/ocr-numbers.rs +15 -15
  96. data/tracks/rust/exercises/pascals-triangle/tests/pascals-triangle.rs +1 -1
  97. data/tracks/rust/exercises/protein-translation/tests/proteins.rs +6 -6
  98. data/tracks/rust/exercises/react/tests/react.rs +11 -11
  99. data/tracks/rust/exercises/variable-length-quantity/tests/variable-length-quantity.rs +13 -15
  100. data/tracks/rust/exercises/wordy/tests/wordy.rs +14 -14
  101. data/tracks/swift/config.json +447 -449
  102. data/tracks/swift/config/maintainers.json +15 -15
  103. data/tracks/typescript/config.json +294 -295
  104. data/tracks/typescript/config/maintainers.json +11 -11
  105. data/tracks/vbnet/docs/SNIPPET.txt +5 -0
  106. metadata +21 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 285cce57fb4909cbdee24c58fec5b08c9e5bc97d
4
- data.tar.gz: bdccff307e03fe678cc131690d77d3377a50d1bd
3
+ metadata.gz: 35de96c4a4f0db40f012783c937595383b5bbad3
4
+ data.tar.gz: 2f81a8e534f46a08afa33a223cb119d6c82636a5
5
5
  SHA512:
6
- metadata.gz: c9585df79288c5f961127a49a4d02ebec3b7b2996662b4f0758ae9dc192fa1fb9c427e1781c660a75ab4a5ea32498f64eb9bbc2d1037458fcd26d9446ac3c4fd
7
- data.tar.gz: e0ad10f90bcc849b5434c183a495557906a75e5d6b5163ec1ed21e5c78350e8605fc511d9c905a0f81ae3adf2931e014810903bdb24768d7b00d5f5b49856ce9
6
+ metadata.gz: cd00323b3a0cf0762566ec4724808157f1840137c150d00dc18d07656163dbcc08a563163e85c55b9eb6db325e32d74237908f5dc15ed04fe7814f6bd901916c
7
+ data.tar.gz: 16599ba449114a7c11af9622e7cff12f42fcd32f2f56a5635757dff089198ec0f6938dd3f036fdebf67d34aff402d937486010e40c1498f4a1a41b081b37df32
@@ -1,3 +1,3 @@
1
1
  module Trackler
2
- VERSION = "2.2.1.50"
2
+ VERSION = "2.2.1.51"
3
3
  end
@@ -2,6 +2,16 @@
2
2
 
3
3
  Exercism problems in C
4
4
 
5
+ ## Hacktoberfest
6
+
7
+ If you would like to contribute to this repository as part of [hacktoberfest](https://github.com/blog/2452-get-started-with-hacktoberfest), please read the rest of this (short) readme, then jump in!
8
+
9
+ This C language track of exercism is nearly ready to graduate from "upcoming" to "available".
10
+ To that aim the repository has several issues marked with labels such as 'help wanted', 'good first patch' or 'hacktoberfest'.
11
+ Issues marked with these labels are a good place to start contributing - you are welcome to contribute to any of these, any other issue, or even submit your own issues or pull requests.
12
+
13
+ To get an idea of the general status in relation to the launch of the track, check out [issue #8](https://github.com/exercism/c/issues/8)
14
+
5
15
  ## Contributing Guide
6
16
 
7
17
  Please see the [Exercism contributing guide](https://github.com/exercism/docs/blob/master/contributing-to-language-tracks/README.md) for general contribution tips.
@@ -1,25 +1,23 @@
1
1
  #include "raindrops.h"
2
2
  #include "stdio.h"
3
3
  #include "string.h"
4
+ #include <stdlib.h>
4
5
 
5
- #define PLING_FACTOR 3
6
- #define PLANG_FACTOR 5
7
- #define PLONG_FACTOR 7
8
-
9
- char *convert(char *buffer, int buffer_length, int drops)
6
+ char *convert(char result[], int drops)
10
7
  {
11
- memset(buffer, '\0', sizeof(char) * buffer_length);
12
- if ((drops % PLING_FACTOR != 0) &&
13
- (drops % PLANG_FACTOR != 0) && (drops % PLONG_FACTOR != 0)) {
14
- snprintf(buffer, buffer_length, "%d", drops);
15
- } else {
16
- snprintf
17
- (buffer,
18
- buffer_length,
19
- "%s%s%s",
20
- drops % PLING_FACTOR == 0 ? "Pling" : "",
21
- drops % PLANG_FACTOR == 0 ? "Plang" : "",
22
- drops % PLONG_FACTOR == 0 ? "Plong" : "");
8
+ if (drops % 3 == 0) {
9
+ strcat(result, "Pling");
10
+ }
11
+ if (drops % 5 == 0) {
12
+ strcat(result, "Plang");
13
+ }
14
+ if (drops % 7 == 0) {
15
+ strcat(result, "Plong");
16
+ }
17
+ if (strlen(result) == 0) {
18
+ char drops_string[12] = "";
19
+ sprintf(drops_string, "%d", drops);
20
+ strcat(result, drops_string);
23
21
  }
24
- return buffer;
22
+ return result;
25
23
  }
@@ -1,6 +1,6 @@
1
1
  #ifndef RAINDROPS_H
2
2
  #define RAINDROPS_H
3
3
 
4
- char *convert(char *buffer, int buffer_length, int drops);
4
+ char *convert(char result[], int drops);
5
5
 
6
6
  #endif
@@ -1,7 +1,8 @@
1
1
  #include "vendor/unity.h"
2
2
  #include "../src/raindrops.h"
3
+ #include <stdlib.h>
3
4
 
4
- #define BUFFER_LENGTH 100
5
+ #define BUFFER_LENGTH 16
5
6
 
6
7
  void setUp(void)
7
8
  {
@@ -11,134 +12,106 @@ void tearDown(void)
11
12
  {
12
13
  }
13
14
 
15
+ void convert_drops(int drops, char *expected)
16
+ {
17
+ char result[BUFFER_LENGTH] = { 0 };
18
+ convert(result, drops);
19
+ TEST_ASSERT_EQUAL_STRING(expected, result);
20
+ }
21
+
14
22
  void test_one_yields_itself(void)
15
23
  {
16
- char buffer[BUFFER_LENGTH];
17
- TEST_ASSERT_EQUAL_STRING("1", convert(buffer, sizeof(buffer), 1));
24
+ convert_drops(1, "1");
18
25
  }
19
26
 
20
27
  void test_three_yields_pling(void)
21
28
  {
22
29
  TEST_IGNORE(); // delete this line to run test
23
- char buffer[BUFFER_LENGTH];
24
- TEST_ASSERT_EQUAL_STRING("Pling", convert(buffer, sizeof(buffer), 3));
30
+ convert_drops(3, "Pling");
25
31
  }
26
32
 
27
33
  void test_five_yields_plang(void)
28
34
  {
29
35
  TEST_IGNORE();
30
- char buffer[BUFFER_LENGTH];
31
- TEST_ASSERT_EQUAL_STRING("Plang", convert(buffer, sizeof(buffer), 5));
36
+ convert_drops(5, "Plang");
32
37
  }
33
38
 
34
39
  void test_seven_yields_plong(void)
35
40
  {
36
41
  TEST_IGNORE();
37
- char buffer[BUFFER_LENGTH];
38
- TEST_ASSERT_EQUAL_STRING("Plong", convert(buffer, sizeof(buffer), 7));
42
+ convert_drops(7, "Plong");
39
43
  }
40
44
 
41
45
  void test_six_yields_pling(void)
42
46
  {
43
47
  TEST_IGNORE();
44
- char buffer[BUFFER_LENGTH];
45
- TEST_ASSERT_EQUAL_STRING("Pling", convert(buffer, sizeof(buffer), 6));
48
+ convert_drops(6, "Pling");
46
49
  }
47
50
 
48
51
  void test_nine_yields_pling(void)
49
52
  {
50
53
  TEST_IGNORE();
51
- char buffer[BUFFER_LENGTH];
52
- TEST_ASSERT_EQUAL_STRING("Pling", convert(buffer, sizeof(buffer), 9));
54
+ convert_drops(9, "Pling");
53
55
  }
54
56
 
55
57
  void test_ten_yields_plang(void)
56
58
  {
57
59
  TEST_IGNORE();
58
- char buffer[BUFFER_LENGTH];
59
- TEST_ASSERT_EQUAL_STRING("Plang", convert(buffer, sizeof(buffer), 10));
60
+ convert_drops(10, "Plang");
60
61
  }
61
62
 
62
63
  void test_fourteen_yields_plong(void)
63
64
  {
64
65
  TEST_IGNORE();
65
- char buffer[BUFFER_LENGTH];
66
- TEST_ASSERT_EQUAL_STRING("Plong", convert(buffer, sizeof(buffer), 14));
66
+ convert_drops(14, "Plong");
67
67
  }
68
68
 
69
69
  void test_fifteen_yields_plingplang(void)
70
70
  {
71
71
  TEST_IGNORE();
72
- char buffer[BUFFER_LENGTH];
73
- TEST_ASSERT_EQUAL_STRING("PlingPlang", convert(buffer, sizeof(buffer), 15));
72
+ convert_drops(15, "PlingPlang");
74
73
  }
75
74
 
76
75
  void test_twenty_one_yields_plingplong(void)
77
76
  {
78
77
  TEST_IGNORE();
79
- char buffer[BUFFER_LENGTH];
80
- TEST_ASSERT_EQUAL_STRING("PlingPlong", convert(buffer, sizeof(buffer), 21));
78
+ convert_drops(21, "PlingPlong");
81
79
  }
82
80
 
83
81
  void test_twenty_five_yields_plang(void)
84
82
  {
85
83
  TEST_IGNORE();
86
- char buffer[BUFFER_LENGTH];
87
- TEST_ASSERT_EQUAL_STRING("Plang", convert(buffer, sizeof(buffer), 25));
84
+ convert_drops(25, "Plang");
88
85
  }
89
86
 
90
87
  void test_thirty_five_yields_plangplong(void)
91
88
  {
92
89
  TEST_IGNORE();
93
- char buffer[BUFFER_LENGTH];
94
- TEST_ASSERT_EQUAL_STRING("PlangPlong", convert(buffer, sizeof(buffer), 35));
90
+ convert_drops(35, "PlangPlong");
95
91
  }
96
92
 
97
93
  void test_forty_nine_yields_plong(void)
98
94
  {
99
95
  TEST_IGNORE();
100
- char buffer[BUFFER_LENGTH];
101
- TEST_ASSERT_EQUAL_STRING("Plong", convert(buffer, sizeof(buffer), 49));
96
+ convert_drops(49, "Plong");
102
97
  }
103
98
 
104
99
  void test_fifty_two_yields_itself(void)
105
100
  {
106
101
  TEST_IGNORE();
107
- char buffer[BUFFER_LENGTH];
108
- TEST_ASSERT_EQUAL_STRING("52", convert(buffer, sizeof(buffer), 52));
102
+ convert_drops(52, "52");
109
103
  }
110
104
 
111
105
  void test_one_hundred_five_yields_plingplangplong(void)
112
106
  {
113
107
  TEST_IGNORE();
114
- char buffer[BUFFER_LENGTH];
115
- TEST_ASSERT_EQUAL_STRING("PlingPlangPlong",
116
- convert(buffer, sizeof(buffer), 105));
108
+ convert_drops(105, "PlingPlangPlong");
117
109
  }
118
110
 
119
111
  void test_big_prime_yields_itself(void)
120
112
  {
121
113
  TEST_IGNORE();
122
- char buffer[BUFFER_LENGTH];
123
- TEST_ASSERT_EQUAL_STRING("12121", convert(buffer, sizeof(buffer), 12121));
124
- }
125
-
126
- void test_no_buffer_overflow_for_plingplangplong(void)
127
- {
128
- TEST_IGNORE();
129
- char buffer[BUFFER_LENGTH];
130
- buffer[8] = '?';
131
- convert(buffer, 8, 105);
132
- TEST_ASSERT_EQUAL('?', buffer[8]);
133
- }
134
-
135
- void test_no_buffer_overflow_for_number(void)
136
- {
137
- TEST_IGNORE();
138
- char buffer[BUFFER_LENGTH];
139
- buffer[5] = '?';
140
- convert(buffer, 5, 10007);
141
- TEST_ASSERT_EQUAL('?', buffer[5]);
114
+ convert_drops(12121, "12121");
142
115
  }
143
116
 
144
117
  int main(void)
@@ -161,8 +134,6 @@ int main(void)
161
134
  RUN_TEST(test_fifty_two_yields_itself);
162
135
  RUN_TEST(test_one_hundred_five_yields_plingplangplong);
163
136
  RUN_TEST(test_big_prime_yields_itself);
164
- RUN_TEST(test_no_buffer_overflow_for_plingplangplong);
165
- RUN_TEST(test_no_buffer_overflow_for_number);
166
137
 
167
138
  UnityEnd();
168
139
  return 0;
@@ -1,639 +1,513 @@
1
1
  {
2
- "language": "Clojure",
3
2
  "active": true,
4
- "foregone": [
5
-
6
- ],
7
3
  "exercises": [
8
4
  {
9
- "uuid": "1378910d-9bec-4217-bd40-07a8967fa3ad",
10
- "slug": "hello-world",
11
5
  "core": false,
12
- "unlocked_by": null,
13
6
  "difficulty": 1,
14
- "topics": [
15
-
16
- ]
7
+ "slug": "hello-world",
8
+ "topics": null,
9
+ "unlocked_by": null,
10
+ "uuid": "1378910d-9bec-4217-bd40-07a8967fa3ad"
17
11
  },
18
12
  {
19
- "uuid": "d3bcad28-db03-4f6c-a85d-9f2d01331e88",
20
- "slug": "bob",
21
13
  "core": false,
22
- "unlocked_by": null,
23
14
  "difficulty": 1,
24
- "topics": [
25
-
26
- ]
15
+ "slug": "bob",
16
+ "topics": null,
17
+ "unlocked_by": null,
18
+ "uuid": "d3bcad28-db03-4f6c-a85d-9f2d01331e88"
27
19
  },
28
20
  {
29
- "uuid": "c2100dff-4d18-4fcb-9035-6c57eddd6d37",
30
- "slug": "rna-transcription",
31
21
  "core": false,
32
- "unlocked_by": null,
33
22
  "difficulty": 1,
34
- "topics": [
35
-
36
- ]
23
+ "slug": "rna-transcription",
24
+ "topics": null,
25
+ "unlocked_by": null,
26
+ "uuid": "c2100dff-4d18-4fcb-9035-6c57eddd6d37"
37
27
  },
38
28
  {
39
- "uuid": "3ab74232-11f5-4efd-82ac-e7c4129c7ff4",
40
- "slug": "word-count",
41
29
  "core": false,
42
- "unlocked_by": null,
43
30
  "difficulty": 1,
44
- "topics": [
45
-
46
- ]
31
+ "slug": "word-count",
32
+ "topics": null,
33
+ "unlocked_by": null,
34
+ "uuid": "3ab74232-11f5-4efd-82ac-e7c4129c7ff4"
47
35
  },
48
36
  {
49
- "uuid": "04ac2bd0-504c-4faa-912e-d2111b46123c",
50
- "slug": "anagram",
51
37
  "core": false,
52
- "unlocked_by": null,
53
38
  "difficulty": 1,
54
- "topics": [
55
-
56
- ]
39
+ "slug": "anagram",
40
+ "topics": null,
41
+ "unlocked_by": null,
42
+ "uuid": "04ac2bd0-504c-4faa-912e-d2111b46123c"
57
43
  },
58
44
  {
59
- "uuid": "c14ef548-c5f6-43a9-84e2-c7238705fc8e",
60
- "slug": "beer-song",
61
45
  "core": false,
62
- "unlocked_by": null,
63
46
  "difficulty": 1,
64
- "topics": [
65
-
66
- ]
47
+ "slug": "beer-song",
48
+ "topics": null,
49
+ "unlocked_by": null,
50
+ "uuid": "c14ef548-c5f6-43a9-84e2-c7238705fc8e"
67
51
  },
68
52
  {
69
- "uuid": "c14ef548-c5f6-43a9-84e2-c7248705fc8e",
70
- "slug": "collatz-conjecture",
71
53
  "core": false,
72
- "unlocked_by": null,
73
54
  "difficulty": 1,
74
- "topics": [
75
-
76
- ]
55
+ "slug": "collatz-conjecture",
56
+ "topics": null,
57
+ "unlocked_by": null,
58
+ "uuid": "c14ef548-c5f6-43a9-84e2-c7248705fc8e"
77
59
  },
78
60
  {
79
- "uuid": "c34af548-c5f6-43a9-84e2-c4166605fc8e",
80
- "slug": "series",
81
61
  "core": false,
82
- "unlocked_by": null,
83
62
  "difficulty": 1,
84
- "topics": [
85
-
86
- ]
63
+ "slug": "series",
64
+ "topics": null,
65
+ "unlocked_by": null,
66
+ "uuid": "c34af548-c5f6-43a9-84e2-c4166605fc8e"
87
67
  },
88
68
  {
89
- "uuid": "66d97ae9-36ac-47c6-8b9f-e77ce498fc70",
90
- "slug": "nucleotide-count",
91
69
  "core": false,
92
- "unlocked_by": null,
93
70
  "difficulty": 1,
94
- "topics": [
95
-
96
- ]
71
+ "slug": "nucleotide-count",
72
+ "topics": null,
73
+ "unlocked_by": null,
74
+ "uuid": "66d97ae9-36ac-47c6-8b9f-e77ce498fc70"
97
75
  },
98
76
  {
99
- "uuid": "60004bf0-e551-4bfc-bda9-49c5611811c4",
100
- "slug": "hamming",
101
77
  "core": false,
102
- "unlocked_by": null,
103
78
  "difficulty": 1,
104
- "topics": [
105
-
106
- ]
79
+ "slug": "hamming",
80
+ "topics": null,
81
+ "unlocked_by": null,
82
+ "uuid": "60004bf0-e551-4bfc-bda9-49c5611811c4"
107
83
  },
108
84
  {
109
- "uuid": "84ce66e5-6091-4078-9921-c0b8ccabc86f",
110
- "slug": "phone-number",
111
85
  "core": false,
112
- "unlocked_by": null,
113
86
  "difficulty": 1,
114
- "topics": [
115
-
116
- ]
87
+ "slug": "phone-number",
88
+ "topics": null,
89
+ "unlocked_by": null,
90
+ "uuid": "84ce66e5-6091-4078-9921-c0b8ccabc86f"
117
91
  },
118
92
  {
119
- "uuid": "8e722baf-bbf9-445f-9adb-b21db88b5132",
120
- "slug": "clock",
121
93
  "core": false,
122
- "unlocked_by": null,
123
94
  "difficulty": 1,
124
- "topics": [
125
-
126
- ]
95
+ "slug": "clock",
96
+ "topics": null,
97
+ "unlocked_by": null,
98
+ "uuid": "8e722baf-bbf9-445f-9adb-b21db88b5132"
127
99
  },
128
100
  {
129
- "uuid": "f4cf3676-4399-4d1c-b21f-8e735c7af8cc",
130
- "slug": "grade-school",
131
101
  "core": false,
132
- "unlocked_by": null,
133
102
  "difficulty": 1,
134
- "topics": [
135
-
136
- ]
103
+ "slug": "grade-school",
104
+ "topics": null,
105
+ "unlocked_by": null,
106
+ "uuid": "f4cf3676-4399-4d1c-b21f-8e735c7af8cc"
137
107
  },
138
108
  {
139
- "uuid": "3ce7ad7d-61ef-4a71-b87a-8c1b45c758b6",
140
- "slug": "robot-name",
141
109
  "core": false,
142
- "unlocked_by": null,
143
110
  "difficulty": 1,
144
- "topics": [
145
-
146
- ]
111
+ "slug": "robot-name",
112
+ "topics": null,
113
+ "unlocked_by": null,
114
+ "uuid": "3ce7ad7d-61ef-4a71-b87a-8c1b45c758b6"
147
115
  },
148
116
  {
149
- "uuid": "0cde8a62-412a-45cc-b16e-4b31057cab74",
150
- "slug": "leap",
151
117
  "core": false,
152
- "unlocked_by": null,
153
118
  "difficulty": 1,
154
- "topics": [
155
-
156
- ]
119
+ "slug": "leap",
120
+ "topics": null,
121
+ "unlocked_by": null,
122
+ "uuid": "0cde8a62-412a-45cc-b16e-4b31057cab74"
157
123
  },
158
124
  {
159
- "uuid": "c51658c1-7cdb-4a45-8d4d-2a370b655362",
160
- "slug": "etl",
161
125
  "core": false,
162
- "unlocked_by": null,
163
126
  "difficulty": 1,
164
- "topics": [
165
-
166
- ]
127
+ "slug": "etl",
128
+ "topics": null,
129
+ "unlocked_by": null,
130
+ "uuid": "c51658c1-7cdb-4a45-8d4d-2a370b655362"
167
131
  },
168
132
  {
169
- "uuid": "11450b65-628d-4890-a668-7031de985f5c",
170
- "slug": "flatten-array",
171
133
  "core": false,
172
- "unlocked_by": null,
173
134
  "difficulty": 1,
174
- "topics": [
175
-
176
- ]
135
+ "slug": "flatten-array",
136
+ "topics": null,
137
+ "unlocked_by": null,
138
+ "uuid": "11450b65-628d-4890-a668-7031de985f5c"
177
139
  },
178
140
  {
179
- "uuid": "dabe93c3-038c-4c6f-8a2e-f50acf130b8f",
180
- "slug": "sublist",
181
141
  "core": false,
182
- "unlocked_by": null,
183
142
  "difficulty": 1,
184
- "topics": [
185
-
186
- ]
143
+ "slug": "sublist",
144
+ "topics": null,
145
+ "unlocked_by": null,
146
+ "uuid": "dabe93c3-038c-4c6f-8a2e-f50acf130b8f"
187
147
  },
188
148
  {
189
- "uuid": "36f47cc4-0c5e-4edc-b109-c9e007b7b1f8",
190
- "slug": "binary-search",
191
149
  "core": false,
192
- "unlocked_by": null,
193
150
  "difficulty": 1,
194
- "topics": [
195
-
196
- ]
151
+ "slug": "binary-search",
152
+ "topics": null,
153
+ "unlocked_by": null,
154
+ "uuid": "36f47cc4-0c5e-4edc-b109-c9e007b7b1f8"
197
155
  },
198
156
  {
199
- "uuid": "097edd69-91b5-4a71-b197-a9c14b61c4ce",
200
- "slug": "perfect-numbers",
201
157
  "core": false,
202
- "unlocked_by": null,
203
158
  "difficulty": 1,
204
- "topics": [
205
-
206
- ]
159
+ "slug": "perfect-numbers",
160
+ "topics": null,
161
+ "unlocked_by": null,
162
+ "uuid": "097edd69-91b5-4a71-b197-a9c14b61c4ce"
207
163
  },
208
164
  {
209
- "uuid": "1657cd1a-f3d8-475f-824f-31ba4d8e229a",
210
- "slug": "meetup",
211
165
  "core": false,
212
- "unlocked_by": null,
213
166
  "difficulty": 1,
214
- "topics": [
215
-
216
- ]
167
+ "slug": "meetup",
168
+ "topics": null,
169
+ "unlocked_by": null,
170
+ "uuid": "1657cd1a-f3d8-475f-824f-31ba4d8e229a"
217
171
  },
218
172
  {
219
- "uuid": "735e991b-f736-4ca2-80db-f94e20aa2319",
220
- "slug": "space-age",
221
173
  "core": false,
222
- "unlocked_by": null,
223
174
  "difficulty": 1,
224
- "topics": [
225
-
226
- ]
175
+ "slug": "space-age",
176
+ "topics": null,
177
+ "unlocked_by": null,
178
+ "uuid": "735e991b-f736-4ca2-80db-f94e20aa2319"
227
179
  },
228
180
  {
229
- "uuid": "27b44b76-5e4f-4711-bce0-869e372636dd",
230
- "slug": "grains",
231
181
  "core": false,
232
- "unlocked_by": null,
233
182
  "difficulty": 1,
234
- "topics": [
235
-
236
- ]
183
+ "slug": "grains",
184
+ "topics": null,
185
+ "unlocked_by": null,
186
+ "uuid": "27b44b76-5e4f-4711-bce0-869e372636dd"
237
187
  },
238
188
  {
239
- "uuid": "23498ff3-310e-41b0-b15e-52fec2f2bfcb",
240
- "slug": "gigasecond",
241
189
  "core": false,
242
- "unlocked_by": null,
243
190
  "difficulty": 1,
244
- "topics": [
245
-
246
- ]
191
+ "slug": "gigasecond",
192
+ "topics": null,
193
+ "unlocked_by": null,
194
+ "uuid": "23498ff3-310e-41b0-b15e-52fec2f2bfcb"
247
195
  },
248
196
  {
249
- "uuid": "74f7eacd-d3de-4467-85b2-8590ba1f28ce",
250
- "slug": "triangle",
251
197
  "core": false,
252
- "unlocked_by": null,
253
198
  "difficulty": 1,
254
- "topics": [
255
-
256
- ]
199
+ "slug": "triangle",
200
+ "topics": null,
201
+ "unlocked_by": null,
202
+ "uuid": "74f7eacd-d3de-4467-85b2-8590ba1f28ce"
257
203
  },
258
204
  {
259
- "uuid": "01afac67-ff81-432e-b2a0-63f4540f2eb5",
260
- "slug": "scrabble-score",
261
205
  "core": false,
262
- "unlocked_by": null,
263
206
  "difficulty": 1,
264
- "topics": [
265
-
266
- ]
207
+ "slug": "scrabble-score",
208
+ "topics": null,
209
+ "unlocked_by": null,
210
+ "uuid": "01afac67-ff81-432e-b2a0-63f4540f2eb5"
267
211
  },
268
212
  {
269
- "uuid": "04d0369f-b0e5-4c00-a0f7-1b86eefba484",
270
- "slug": "roman-numerals",
271
213
  "core": false,
272
- "unlocked_by": null,
273
214
  "difficulty": 1,
274
- "topics": [
275
-
276
- ]
215
+ "slug": "roman-numerals",
216
+ "topics": null,
217
+ "unlocked_by": null,
218
+ "uuid": "04d0369f-b0e5-4c00-a0f7-1b86eefba484"
277
219
  },
278
220
  {
279
- "uuid": "4c59731d-165a-43e1-9917-16131dadbbac",
280
- "slug": "binary",
281
221
  "core": false,
282
- "unlocked_by": null,
283
222
  "difficulty": 1,
284
- "topics": [
285
-
286
- ]
223
+ "slug": "binary",
224
+ "topics": null,
225
+ "unlocked_by": null,
226
+ "uuid": "4c59731d-165a-43e1-9917-16131dadbbac"
287
227
  },
288
228
  {
289
- "uuid": "d32f41d4-e1b1-4daf-8ddc-a2ab9ee07c98",
290
- "slug": "trinary",
291
229
  "core": false,
292
- "unlocked_by": null,
293
230
  "difficulty": 1,
294
- "topics": [
295
-
296
- ]
231
+ "slug": "trinary",
232
+ "topics": null,
233
+ "unlocked_by": null,
234
+ "uuid": "d32f41d4-e1b1-4daf-8ddc-a2ab9ee07c98"
297
235
  },
298
236
  {
299
- "uuid": "d42g42d7-21b1-4daf-8ddc-a2ab9ee07c98",
300
- "slug": "spiral-matrix",
301
237
  "core": false,
302
- "unlocked_by": null,
303
238
  "difficulty": 1,
239
+ "slug": "spiral-matrix",
304
240
  "topics": [
305
241
  "recursivity"
306
- ]
242
+ ],
243
+ "unlocked_by": null,
244
+ "uuid": "d42g42d7-21b1-4daf-8ddc-a2ab9ee07c98"
307
245
  },
308
246
  {
309
- "uuid": "068a0997-d333-48cb-a82a-c5082e85115d",
310
- "slug": "prime-factors",
311
247
  "core": false,
312
- "unlocked_by": null,
313
248
  "difficulty": 1,
314
- "topics": [
315
-
316
- ]
249
+ "slug": "prime-factors",
250
+ "topics": null,
251
+ "unlocked_by": null,
252
+ "uuid": "068a0997-d333-48cb-a82a-c5082e85115d"
317
253
  },
318
254
  {
319
- "uuid": "c1113f92-df4d-4d04-865f-20b8b2c56205",
320
- "slug": "raindrops",
321
255
  "core": false,
322
- "unlocked_by": null,
323
256
  "difficulty": 1,
324
- "topics": [
325
-
326
- ]
257
+ "slug": "raindrops",
258
+ "topics": null,
259
+ "unlocked_by": null,
260
+ "uuid": "c1113f92-df4d-4d04-865f-20b8b2c56205"
327
261
  },
328
262
  {
329
- "uuid": "810803c7-4480-4e11-b848-d56477ba9d08",
330
- "slug": "allergies",
331
263
  "core": false,
332
- "unlocked_by": null,
333
264
  "difficulty": 1,
334
- "topics": [
335
-
336
- ]
265
+ "slug": "allergies",
266
+ "topics": null,
267
+ "unlocked_by": null,
268
+ "uuid": "810803c7-4480-4e11-b848-d56477ba9d08"
337
269
  },
338
270
  {
339
- "uuid": "db1a86fb-2f04-4afe-9e45-00b539c86b63",
340
- "slug": "octal",
341
271
  "core": false,
342
- "unlocked_by": null,
343
272
  "difficulty": 1,
344
- "topics": [
345
-
346
- ]
273
+ "slug": "octal",
274
+ "topics": null,
275
+ "unlocked_by": null,
276
+ "uuid": "db1a86fb-2f04-4afe-9e45-00b539c86b63"
347
277
  },
348
278
  {
349
- "uuid": "ad08dcef-14f7-406d-b3a5-4b5aad37ebf1",
350
- "slug": "strain",
351
279
  "core": false,
352
- "unlocked_by": null,
353
280
  "difficulty": 1,
354
- "topics": [
355
-
356
- ]
281
+ "slug": "strain",
282
+ "topics": null,
283
+ "unlocked_by": null,
284
+ "uuid": "ad08dcef-14f7-406d-b3a5-4b5aad37ebf1"
357
285
  },
358
286
  {
359
- "uuid": "47266422-622e-4e20-b597-e85ab7bd3046",
360
- "slug": "atbash-cipher",
361
287
  "core": false,
362
- "unlocked_by": null,
363
288
  "difficulty": 1,
364
- "topics": [
365
-
366
- ]
289
+ "slug": "atbash-cipher",
290
+ "topics": null,
291
+ "unlocked_by": null,
292
+ "uuid": "47266422-622e-4e20-b597-e85ab7bd3046"
367
293
  },
368
294
  {
369
- "uuid": "e6848f52-a6b5-4669-9b50-beedfd3ebe2f",
370
- "slug": "bank-account",
371
295
  "core": false,
372
- "unlocked_by": null,
373
296
  "difficulty": 1,
374
- "topics": [
375
-
376
- ]
297
+ "slug": "bank-account",
298
+ "topics": null,
299
+ "unlocked_by": null,
300
+ "uuid": "e6848f52-a6b5-4669-9b50-beedfd3ebe2f"
377
301
  },
378
302
  {
379
- "uuid": "8b90d4c5-0d53-4664-afba-c4ed1c865e77",
380
- "slug": "crypto-square",
381
303
  "core": false,
382
- "unlocked_by": null,
383
304
  "difficulty": 1,
384
- "topics": [
385
-
386
- ]
305
+ "slug": "crypto-square",
306
+ "topics": null,
307
+ "unlocked_by": null,
308
+ "uuid": "8b90d4c5-0d53-4664-afba-c4ed1c865e77"
387
309
  },
388
310
  {
389
- "uuid": "9c8c4689-4990-4266-a02e-2dcb9fa32402",
390
- "slug": "pascals-triangle",
391
311
  "core": false,
392
- "unlocked_by": null,
393
312
  "difficulty": 1,
394
- "topics": [
395
-
396
- ]
313
+ "slug": "pascals-triangle",
314
+ "topics": null,
315
+ "unlocked_by": null,
316
+ "uuid": "9c8c4689-4990-4266-a02e-2dcb9fa32402"
397
317
  },
398
318
  {
399
- "uuid": "a7e1d0a1-feb5-4a55-93c7-e7f81a39238c",
400
- "slug": "sum-of-multiples",
401
319
  "core": false,
402
- "unlocked_by": null,
403
320
  "difficulty": 1,
404
- "topics": [
405
-
406
- ]
321
+ "slug": "sum-of-multiples",
322
+ "topics": null,
323
+ "unlocked_by": null,
324
+ "uuid": "a7e1d0a1-feb5-4a55-93c7-e7f81a39238c"
407
325
  },
408
326
  {
409
- "uuid": "910adfb9-be3e-45ef-af4c-facba7825cfd",
410
- "slug": "sieve",
411
327
  "core": false,
412
- "unlocked_by": null,
413
328
  "difficulty": 1,
414
- "topics": [
415
-
416
- ]
329
+ "slug": "sieve",
330
+ "topics": null,
331
+ "unlocked_by": null,
332
+ "uuid": "910adfb9-be3e-45ef-af4c-facba7825cfd"
417
333
  },
418
334
  {
419
- "uuid": "5f62a862-f65e-4af0-a15d-5aa1fdb4f970",
420
- "slug": "luhn",
421
335
  "core": false,
422
- "unlocked_by": null,
423
336
  "difficulty": 1,
424
- "topics": [
425
-
426
- ]
337
+ "slug": "luhn",
338
+ "topics": null,
339
+ "unlocked_by": null,
340
+ "uuid": "5f62a862-f65e-4af0-a15d-5aa1fdb4f970"
427
341
  },
428
342
  {
429
- "uuid": "5288c0fb-a90d-4f71-b525-e9a7b687aaf2",
430
- "slug": "kindergarten-garden",
431
343
  "core": false,
432
- "unlocked_by": null,
433
344
  "difficulty": 1,
434
- "topics": [
435
-
436
- ]
345
+ "slug": "kindergarten-garden",
346
+ "topics": null,
347
+ "unlocked_by": null,
348
+ "uuid": "5288c0fb-a90d-4f71-b525-e9a7b687aaf2"
437
349
  },
438
350
  {
439
- "uuid": "e4f94fe1-7258-4e55-94c8-756a8080f898",
440
- "slug": "robot-simulator",
441
351
  "core": false,
442
- "unlocked_by": null,
443
352
  "difficulty": 1,
444
- "topics": [
445
-
446
- ]
353
+ "slug": "robot-simulator",
354
+ "topics": null,
355
+ "unlocked_by": null,
356
+ "uuid": "e4f94fe1-7258-4e55-94c8-756a8080f898"
447
357
  },
448
358
  {
449
- "uuid": "0bc807ef-60b8-49d9-9428-0060bc5517a9",
450
- "slug": "queen-attack",
451
359
  "core": false,
452
- "unlocked_by": null,
453
360
  "difficulty": 1,
454
- "topics": [
455
-
456
- ]
361
+ "slug": "queen-attack",
362
+ "topics": null,
363
+ "unlocked_by": null,
364
+ "uuid": "0bc807ef-60b8-49d9-9428-0060bc5517a9"
457
365
  },
458
366
  {
459
- "uuid": "73cdbbd8-04a6-42ba-aeea-1f1c8d53af70",
460
- "slug": "accumulate",
461
367
  "core": false,
462
- "unlocked_by": null,
463
368
  "difficulty": 1,
464
- "topics": [
465
-
466
- ]
369
+ "slug": "accumulate",
370
+ "topics": null,
371
+ "unlocked_by": null,
372
+ "uuid": "73cdbbd8-04a6-42ba-aeea-1f1c8d53af70"
467
373
  },
468
374
  {
469
- "uuid": "62f3cbcb-2503-472f-9544-50e05e368949",
470
- "slug": "binary-search-tree",
471
375
  "core": false,
472
- "unlocked_by": null,
473
376
  "difficulty": 1,
474
- "topics": [
475
-
476
- ]
377
+ "slug": "binary-search-tree",
378
+ "topics": null,
379
+ "unlocked_by": null,
380
+ "uuid": "62f3cbcb-2503-472f-9544-50e05e368949"
477
381
  },
478
382
  {
479
- "uuid": "254199d8-8add-470f-a8fc-8ec9ffc54dd1",
480
- "slug": "difference-of-squares",
481
383
  "core": false,
482
- "unlocked_by": null,
483
384
  "difficulty": 1,
484
- "topics": [
485
-
486
- ]
385
+ "slug": "difference-of-squares",
386
+ "topics": null,
387
+ "unlocked_by": null,
388
+ "uuid": "254199d8-8add-470f-a8fc-8ec9ffc54dd1"
487
389
  },
488
390
  {
489
- "uuid": "8ede90b5-d1ad-41c3-8474-2ffaea39e7e4",
490
- "slug": "hexadecimal",
491
391
  "core": false,
492
- "unlocked_by": null,
493
392
  "difficulty": 1,
494
- "topics": [
495
-
496
- ]
393
+ "slug": "hexadecimal",
394
+ "topics": null,
395
+ "unlocked_by": null,
396
+ "uuid": "8ede90b5-d1ad-41c3-8474-2ffaea39e7e4"
497
397
  },
498
398
  {
499
- "uuid": "b55eefa5-dce6-46fb-8c0e-4c476cc871ce",
500
- "slug": "all-your-base",
501
399
  "core": false,
502
- "unlocked_by": null,
503
400
  "difficulty": 1,
504
- "topics": [
505
-
506
- ]
401
+ "slug": "all-your-base",
402
+ "topics": null,
403
+ "unlocked_by": null,
404
+ "uuid": "b55eefa5-dce6-46fb-8c0e-4c476cc871ce"
507
405
  },
508
406
  {
509
- "uuid": "eec9ea9a-fa32-4ea2-831e-0caccbca208b",
510
- "slug": "largest-series-product",
511
407
  "core": false,
512
- "unlocked_by": null,
513
408
  "difficulty": 1,
514
- "topics": [
515
-
516
- ]
409
+ "slug": "largest-series-product",
410
+ "topics": null,
411
+ "unlocked_by": null,
412
+ "uuid": "eec9ea9a-fa32-4ea2-831e-0caccbca208b"
517
413
  },
518
414
  {
519
- "uuid": "ee9b837b-ea2f-4c77-9a3d-3d0007b9ae88",
520
- "slug": "pov",
521
415
  "core": false,
522
- "unlocked_by": null,
523
416
  "difficulty": 1,
524
- "topics": [
525
-
526
- ]
417
+ "slug": "pov",
418
+ "topics": null,
419
+ "unlocked_by": null,
420
+ "uuid": "ee9b837b-ea2f-4c77-9a3d-3d0007b9ae88"
527
421
  },
528
422
  {
529
- "uuid": "c8ebc25b-17b9-44a9-8cbe-df2c2eb6e2d6",
530
- "slug": "bracket-push",
531
423
  "core": false,
532
- "unlocked_by": null,
533
424
  "difficulty": 1,
534
- "topics": [
535
-
536
- ]
425
+ "slug": "bracket-push",
426
+ "topics": null,
427
+ "unlocked_by": null,
428
+ "uuid": "c8ebc25b-17b9-44a9-8cbe-df2c2eb6e2d6"
537
429
  },
538
430
  {
539
- "uuid": "2d35d9b3-5cff-4e68-a861-1461b32e22ba",
540
- "slug": "minesweeper",
541
431
  "core": false,
542
- "unlocked_by": null,
543
432
  "difficulty": 1,
544
- "topics": [
545
-
546
- ]
433
+ "slug": "minesweeper",
434
+ "topics": null,
435
+ "unlocked_by": null,
436
+ "uuid": "2d35d9b3-5cff-4e68-a861-1461b32e22ba"
547
437
  },
548
438
  {
549
- "uuid": "6fd886e5-94b0-4938-9f48-f4c6850027a0",
550
- "slug": "change",
551
439
  "core": false,
552
- "unlocked_by": null,
553
440
  "difficulty": 1,
554
- "topics": [
555
-
556
- ]
441
+ "slug": "change",
442
+ "topics": null,
443
+ "unlocked_by": null,
444
+ "uuid": "6fd886e5-94b0-4938-9f48-f4c6850027a0"
557
445
  },
558
446
  {
559
- "uuid": "398f65f2-2324-4b08-945d-a9fbd62d1a41",
560
- "slug": "pangram",
561
447
  "core": false,
562
- "unlocked_by": null,
563
448
  "difficulty": 1,
564
- "topics": [
565
-
566
- ]
449
+ "slug": "pangram",
450
+ "topics": null,
451
+ "unlocked_by": null,
452
+ "uuid": "398f65f2-2324-4b08-945d-a9fbd62d1a41"
567
453
  },
568
454
  {
569
- "uuid": "4a2033a7-5579-49ac-94d7-8693cee45381",
570
- "slug": "wordy",
571
455
  "core": false,
572
- "unlocked_by": null,
573
456
  "difficulty": 1,
574
- "topics": [
575
-
576
- ]
457
+ "slug": "wordy",
458
+ "topics": null,
459
+ "unlocked_by": null,
460
+ "uuid": "4a2033a7-5579-49ac-94d7-8693cee45381"
577
461
  },
578
462
  {
579
- "uuid": "1fc5c2e9-2851-4735-8fde-612a8c054a5a",
580
- "slug": "isogram",
581
463
  "core": false,
582
- "unlocked_by": null,
583
464
  "difficulty": 1,
584
- "topics": [
585
-
586
- ]
465
+ "slug": "isogram",
466
+ "topics": null,
467
+ "unlocked_by": null,
468
+ "uuid": "1fc5c2e9-2851-4735-8fde-612a8c054a5a"
587
469
  },
588
470
  {
589
- "uuid": "e14a4261-c84f-417e-841e-29ff6f1f533d",
590
- "slug": "acronym",
591
471
  "core": false,
592
- "unlocked_by": null,
593
472
  "difficulty": 1,
594
- "topics": [
595
-
596
- ]
473
+ "slug": "acronym",
474
+ "topics": null,
475
+ "unlocked_by": null,
476
+ "uuid": "e14a4261-c84f-417e-841e-29ff6f1f533d"
597
477
  },
598
478
  {
599
- "uuid": "d380de85-4d35-4342-9b88-7402deea2869",
600
- "slug": "nth-prime",
601
479
  "core": false,
602
- "unlocked_by": null,
603
480
  "difficulty": 1,
604
- "topics": [
605
-
606
- ]
481
+ "slug": "nth-prime",
482
+ "topics": null,
483
+ "unlocked_by": null,
484
+ "uuid": "d380de85-4d35-4342-9b88-7402deea2869"
607
485
  },
608
486
  {
609
- "uuid": "6768b55e-bab3-4e55-ac71-ddda0bd16298",
610
- "slug": "pig-latin",
611
487
  "core": false,
612
- "unlocked_by": null,
613
488
  "difficulty": 1,
614
- "topics": [
615
-
616
- ]
489
+ "slug": "pig-latin",
490
+ "topics": null,
491
+ "unlocked_by": null,
492
+ "uuid": "6768b55e-bab3-4e55-ac71-ddda0bd16298"
617
493
  },
618
494
  {
619
- "uuid": "2cc37c2a-7e6c-49ba-8b30-2ff8c9d818c2",
620
- "slug": "secret-handshake",
621
495
  "core": false,
622
- "unlocked_by": null,
623
496
  "difficulty": 1,
624
- "topics": [
625
-
626
- ]
497
+ "slug": "secret-handshake",
498
+ "topics": null,
499
+ "unlocked_by": null,
500
+ "uuid": "2cc37c2a-7e6c-49ba-8b30-2ff8c9d818c2"
627
501
  },
628
502
  {
629
- "uuid": "622823dc-ee47-42a0-acc6-190de4541625",
630
- "slug": "rotational-cipher",
631
503
  "core": false,
632
- "unlocked_by": null,
633
504
  "difficulty": 1,
634
- "topics": [
635
-
636
- ]
505
+ "slug": "rotational-cipher",
506
+ "topics": null,
507
+ "unlocked_by": null,
508
+ "uuid": "622823dc-ee47-42a0-acc6-190de4541625"
637
509
  }
638
- ]
639
- }
510
+ ],
511
+ "foregone": [],
512
+ "language": "Clojure"
513
+ }