trackler 2.2.0.0 → 2.2.0.1

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 (206) hide show
  1. checksums.yaml +4 -4
  2. data/lib/trackler/version.rb +1 -1
  3. data/problem-specifications/CONTRIBUTING.md +1 -1
  4. data/tracks/bash/.travis.yml +1 -1
  5. data/tracks/bash/config.json +30 -3
  6. data/tracks/c/README.md +1 -1
  7. data/tracks/c/config.json +131 -39
  8. data/tracks/ceylon/README.md +6 -6
  9. data/tracks/ceylon/config.json +21 -3
  10. data/tracks/chapel/.travis.yml +1 -1
  11. data/tracks/clojurescript/.travis.yml +1 -1
  12. data/tracks/clojurescript/README.md +6 -6
  13. data/tracks/clojurescript/exercises/.keep +0 -0
  14. data/tracks/coffeescript/.travis.yml +1 -1
  15. data/tracks/coldfusion/.travis.yml +1 -1
  16. data/tracks/coq/.travis.yml +1 -1
  17. data/tracks/cpp/CMakeLists.txt +1 -0
  18. data/tracks/cpp/README.md +1 -1
  19. data/tracks/cpp/config.json +8 -0
  20. data/tracks/cpp/exercises/atbash-cipher/CMakeLists.txt +52 -0
  21. data/tracks/cpp/exercises/atbash-cipher/atbash_cipher_test.cpp +68 -0
  22. data/tracks/cpp/exercises/atbash-cipher/example.cpp +54 -0
  23. data/tracks/cpp/exercises/atbash-cipher/example.h +13 -0
  24. data/tracks/csharp/config.json +315 -6
  25. data/tracks/d/.travis.yml +1 -1
  26. data/tracks/dart/README.md +2 -2
  27. data/tracks/dart/config.json +21 -3
  28. data/tracks/delphi/README.md +1 -1
  29. data/tracks/delphi/config.json +83 -1
  30. data/tracks/ecmascript/config.json +10 -0
  31. data/tracks/ecmascript/exercises/accumulate/accumulate.spec.js +3 -9
  32. data/tracks/ecmascript/exercises/acronym/acronym.spec.js +2 -2
  33. data/tracks/ecmascript/exercises/all-your-base/all-your-base.spec.js +131 -133
  34. data/tracks/ecmascript/exercises/all-your-base/example.js +1 -3
  35. data/tracks/ecmascript/exercises/allergies/allergies.spec.js +8 -10
  36. data/tracks/ecmascript/exercises/allergies/example.js +3 -5
  37. data/tracks/ecmascript/exercises/alphametics/alphametics.spec.js +61 -63
  38. data/tracks/ecmascript/exercises/alphametics/example.js +99 -99
  39. data/tracks/ecmascript/exercises/anagram/anagram.spec.js +35 -37
  40. data/tracks/ecmascript/exercises/anagram/example.js +1 -3
  41. data/tracks/ecmascript/exercises/atbash-cipher/atbash-cipher.spec.js +1 -3
  42. data/tracks/ecmascript/exercises/atbash-cipher/example.js +3 -3
  43. data/tracks/ecmascript/exercises/beer-song/beer-song.spec.js +0 -2
  44. data/tracks/ecmascript/exercises/beer-song/example.js +9 -9
  45. data/tracks/ecmascript/exercises/binary/binary.spec.js +1 -2
  46. data/tracks/ecmascript/exercises/binary/example.js +3 -3
  47. data/tracks/ecmascript/exercises/binary-search/binary-search.spec.js +1 -3
  48. data/tracks/ecmascript/exercises/binary-search-tree/binary-search-tree.spec.js +13 -15
  49. data/tracks/ecmascript/exercises/binary-search-tree/example.js +2 -2
  50. data/tracks/ecmascript/exercises/bob/bob.spec.js +1 -3
  51. data/tracks/ecmascript/exercises/bob/example.js +3 -3
  52. data/tracks/ecmascript/exercises/bracket-push/example.js +2 -2
  53. data/tracks/ecmascript/exercises/circular-buffer/circular-buffer.spec.js +10 -12
  54. data/tracks/ecmascript/exercises/circular-buffer/example.js +12 -11
  55. data/tracks/ecmascript/exercises/clock/clock.spec.js +0 -8
  56. data/tracks/ecmascript/exercises/clock/example.js +11 -11
  57. data/tracks/ecmascript/exercises/connect/connect.spec.js +75 -77
  58. data/tracks/ecmascript/exercises/connect/example.js +27 -29
  59. data/tracks/ecmascript/exercises/crypto-square/crypto-square.spec.js +11 -11
  60. data/tracks/ecmascript/exercises/crypto-square/example.js +11 -10
  61. data/tracks/ecmascript/exercises/custom-set/custom-set.spec.js +2 -4
  62. data/tracks/ecmascript/exercises/custom-set/example.js +1 -1
  63. data/tracks/ecmascript/exercises/diamond/diamond.spec.js +20 -21
  64. data/tracks/ecmascript/exercises/diamond/example.js +12 -13
  65. data/tracks/ecmascript/exercises/difference-of-squares/difference-of-squares.spec.js +0 -5
  66. data/tracks/ecmascript/exercises/diffie-hellman/diffie-hellman.spec.js +7 -28
  67. data/tracks/ecmascript/exercises/etl/etl.spec.js +36 -18
  68. data/tracks/ecmascript/exercises/etl/example.js +3 -3
  69. data/tracks/ecmascript/exercises/flatten-array/example.js +1 -1
  70. data/tracks/ecmascript/exercises/flatten-array/flatten-array.spec.js +2 -3
  71. data/tracks/ecmascript/exercises/food-chain/example.js +12 -12
  72. data/tracks/ecmascript/exercises/food-chain/food-chain.spec.js +0 -1
  73. data/tracks/ecmascript/exercises/gigasecond/example.js +1 -1
  74. data/tracks/ecmascript/exercises/gigasecond/gigasecond.spec.js +0 -1
  75. data/tracks/ecmascript/exercises/grade-school/grade-school.spec.js +18 -19
  76. data/tracks/ecmascript/exercises/grains/grains.spec.js +0 -1
  77. data/tracks/ecmascript/exercises/hamming/example.js +3 -3
  78. data/tracks/ecmascript/exercises/hamming/hamming.spec.js +5 -6
  79. data/tracks/ecmascript/exercises/hello-world/example.js +1 -1
  80. data/tracks/ecmascript/exercises/hello-world/hello-world.spec.js +1 -1
  81. data/tracks/ecmascript/exercises/hexadecimal/example.js +2 -2
  82. data/tracks/ecmascript/exercises/hexadecimal/hexadecimal.spec.js +9 -11
  83. data/tracks/ecmascript/exercises/isogram/isogram.spec.js +22 -23
  84. data/tracks/ecmascript/exercises/kindergarten-garden/example.js +7 -7
  85. data/tracks/ecmascript/exercises/kindergarten-garden/kindergarten-garden.spec.js +0 -5
  86. data/tracks/ecmascript/exercises/largest-series-product/example.js +4 -8
  87. data/tracks/ecmascript/exercises/largest-series-product/largest-series-product.spec.js +5 -7
  88. data/tracks/ecmascript/exercises/leap/leap.spec.js +4 -6
  89. data/tracks/ecmascript/exercises/linked-list/example.js +2 -2
  90. data/tracks/ecmascript/exercises/list-ops/example.js +19 -19
  91. data/tracks/ecmascript/exercises/list-ops/list-ops.spec.js +2 -18
  92. data/tracks/ecmascript/exercises/luhn/example.js +1 -1
  93. data/tracks/ecmascript/exercises/luhn/luhn.spec.js +1 -3
  94. data/tracks/ecmascript/exercises/matrix/example.js +2 -4
  95. data/tracks/ecmascript/exercises/matrix/matrix.spec.js +0 -2
  96. data/tracks/ecmascript/exercises/meetup/example.js +12 -15
  97. data/tracks/ecmascript/exercises/meetup/meetup.spec.js +0 -2
  98. data/tracks/ecmascript/exercises/minesweeper/example.js +60 -0
  99. data/tracks/ecmascript/exercises/minesweeper/minesweeper.spec.js +174 -0
  100. data/tracks/ecmascript/exercises/minesweeper/package.json +69 -0
  101. data/tracks/ecmascript/exercises/nth-prime/example.js +3 -2
  102. data/tracks/ecmascript/exercises/nth-prime/nth-prime.spec.js +0 -1
  103. data/tracks/ecmascript/exercises/ocr-numbers/example.js +3 -3
  104. data/tracks/ecmascript/exercises/ocr-numbers/ocr-numbers.spec.js +16 -18
  105. data/tracks/ecmascript/exercises/octal/example.js +1 -1
  106. data/tracks/ecmascript/exercises/octal/octal.spec.js +0 -2
  107. data/tracks/ecmascript/exercises/palindrome-products/example.js +14 -11
  108. data/tracks/ecmascript/exercises/palindrome-products/palindrome-products.spec.js +15 -18
  109. data/tracks/ecmascript/exercises/pangram/example.js +6 -5
  110. data/tracks/ecmascript/exercises/pangram/pangram.spec.js +10 -12
  111. data/tracks/ecmascript/exercises/pascals-triangle/example.js +2 -2
  112. data/tracks/ecmascript/exercises/pascals-triangle/pascals-triangle.spec.js +6 -8
  113. data/tracks/ecmascript/exercises/perfect-numbers/example.js +3 -5
  114. data/tracks/ecmascript/exercises/perfect-numbers/perfect-numbers.spec.js +0 -10
  115. data/tracks/ecmascript/exercises/phone-number/example.js +2 -2
  116. data/tracks/ecmascript/exercises/phone-number/phone-number.spec.js +0 -2
  117. data/tracks/ecmascript/exercises/pig-latin/example.js +4 -4
  118. data/tracks/ecmascript/exercises/pig-latin/pig-latin.spec.js +0 -1
  119. data/tracks/ecmascript/exercises/prime-factors/example.js +2 -2
  120. data/tracks/ecmascript/exercises/prime-factors/prime-factors.spec.js +0 -2
  121. data/tracks/ecmascript/exercises/pythagorean-triplet/pythagorean-triplet.spec.js +3 -11
  122. data/tracks/ecmascript/exercises/queen-attack/example.js +17 -17
  123. data/tracks/ecmascript/exercises/queen-attack/queen-attack.spec.js +7 -8
  124. data/tracks/ecmascript/exercises/raindrops/example.js +1 -1
  125. data/tracks/ecmascript/exercises/raindrops/raindrops.spec.js +1 -2
  126. data/tracks/ecmascript/exercises/rna-transcription/example.js +5 -5
  127. data/tracks/ecmascript/exercises/rna-transcription/rna-transcription.spec.js +4 -5
  128. data/tracks/ecmascript/exercises/robot-name/example.js +6 -6
  129. data/tracks/ecmascript/exercises/robot-name/robot-name.spec.js +10 -11
  130. data/tracks/ecmascript/exercises/robot-simulator/example.js +1 -1
  131. data/tracks/ecmascript/exercises/robot-simulator/robot-simulator.spec.js +31 -32
  132. data/tracks/ecmascript/exercises/roman-numerals/example.js +16 -16
  133. data/tracks/ecmascript/exercises/saddle-points/saddle-points.spec.js +3 -3
  134. data/tracks/ecmascript/exercises/say/example.js +25 -25
  135. data/tracks/ecmascript/exercises/say/say.spec.js +2 -3
  136. data/tracks/ecmascript/exercises/scrabble-score/example.js +27 -9
  137. data/tracks/ecmascript/exercises/scrabble-score/scrabble-score.spec.js +6 -7
  138. data/tracks/ecmascript/exercises/secret-handshake/example.js +2 -3
  139. data/tracks/ecmascript/exercises/secret-handshake/secret-handshake.spec.js +3 -5
  140. data/tracks/ecmascript/exercises/series/series.spec.js +1 -3
  141. data/tracks/ecmascript/exercises/sieve/example.js +4 -3
  142. data/tracks/ecmascript/exercises/sieve/sieve.spec.js +0 -2
  143. data/tracks/ecmascript/exercises/simple-cipher/example.js +8 -9
  144. data/tracks/ecmascript/exercises/simple-cipher/simple-cipher.spec.js +4 -4
  145. data/tracks/ecmascript/exercises/space-age/example.js +1 -1
  146. data/tracks/ecmascript/exercises/space-age/space-age.spec.js +9 -11
  147. data/tracks/ecmascript/exercises/strain/example.js +4 -4
  148. data/tracks/ecmascript/exercises/strain/strain.spec.js +14 -16
  149. data/tracks/ecmascript/exercises/sum-of-multiples/example.js +4 -4
  150. data/tracks/ecmascript/exercises/triangle/triangle.spec.js +2 -4
  151. data/tracks/ecmascript/exercises/trinary/example.js +3 -3
  152. data/tracks/ecmascript/exercises/trinary/trinary.spec.js +0 -2
  153. data/tracks/ecmascript/exercises/two-bucket/example.js +30 -27
  154. data/tracks/ecmascript/exercises/two-bucket/two-bucket.spec.js +4 -8
  155. data/tracks/ecmascript/exercises/word-count/example.js +2 -2
  156. data/tracks/ecmascript/exercises/word-count/word-count.spec.js +2 -3
  157. data/tracks/ecmascript/exercises/wordy/example.js +6 -6
  158. data/tracks/ecmascript/exercises/wordy/wordy.spec.js +2 -4
  159. data/tracks/factor/config.json +15 -6
  160. data/tracks/fortran/.travis.yml +1 -1
  161. data/tracks/fsharp/config.json +312 -10
  162. data/tracks/go/README.md +1 -1
  163. data/tracks/go/config.json +523 -155
  164. data/tracks/haskell/README.md +2 -2
  165. data/tracks/haskell/config.json +256 -7
  166. data/tracks/haxe/.travis.yml +1 -1
  167. data/tracks/haxe/Makefile +2 -2
  168. data/tracks/haxe/config.json +8 -5
  169. data/tracks/java/CONTRIBUTING.md +2 -2
  170. data/tracks/java/config.json +277 -17
  171. data/tracks/java/exercises/rotational-cipher/build.gradle +17 -0
  172. data/tracks/java/exercises/rotational-cipher/src/example/java/RotationalCipher.java +37 -0
  173. data/tracks/java/exercises/rotational-cipher/src/main/java/.keep +0 -0
  174. data/tracks/java/exercises/rotational-cipher/src/test/java/RotationalCipherTest.java +81 -0
  175. data/tracks/java/exercises/settings.gradle +1 -0
  176. data/tracks/java/exercises/twelve-days/src/main/java/TwelveDays.java +4 -0
  177. data/tracks/julia/.travis.yml +1 -1
  178. data/tracks/julia/README.md +1 -1
  179. data/tracks/kotlin/README.md +2 -2
  180. data/tracks/kotlin/exercises/hello-world/TUTORIAL.md +3 -3
  181. data/tracks/lisp/config.json +97 -3
  182. data/tracks/lisp/exercises/pascals-triangle/example.lisp +21 -0
  183. data/tracks/lisp/exercises/pascals-triangle/pascal.lisp +7 -0
  184. data/tracks/lisp/exercises/pascals-triangle/pascals-triangle-test.lisp +34 -0
  185. data/tracks/lua/.travis.yml +1 -1
  186. data/tracks/lua/README.md +1 -1
  187. data/tracks/mips/.travis.yml +1 -1
  188. data/tracks/mips/config.json +56 -17
  189. data/tracks/nasm/.travis.yml +1 -1
  190. data/tracks/nim/.travis.yml +1 -1
  191. data/tracks/ocaml/README.md +3 -3
  192. data/tracks/ocaml/config.json +130 -4
  193. data/tracks/perl5/docs/TESTS.md +40 -26
  194. data/tracks/plsql/.travis.yml +1 -1
  195. data/tracks/plsql/config.json +40 -13
  196. data/tracks/pony/.travis.yml +1 -1
  197. data/tracks/pony/bin/install-deps +4 -3
  198. data/tracks/prolog/.travis.yml +1 -1
  199. data/tracks/r/README.md +5 -5
  200. data/tracks/r/config.json +102 -30
  201. data/tracks/rust/.travis.yml +1 -1
  202. data/tracks/rust/config.json +172 -4
  203. data/tracks/rust/docs/EXERCISE_README_INSERT.md +1 -1
  204. data/tracks/sml/config.json +26 -3
  205. data/tracks/vimscript/config.json +60 -3
  206. metadata +16 -1
@@ -5,7 +5,10 @@
5
5
  "active": true,
6
6
  "exercises": [
7
7
  {
8
+ "uuid": "6c88f46b-5acb-4fae-a6ec-b48ae3f8168f",
8
9
  "slug": "hello-world",
10
+ "core": false,
11
+ "unlocked_by": null,
9
12
  "difficulty": 1,
10
13
  "topics": [
11
14
  "Text formatting",
@@ -13,7 +16,10 @@
13
16
  ]
14
17
  },
15
18
  {
19
+ "uuid": "da00f894-dbc8-485e-adba-a79d5ebee3ad",
16
20
  "slug": "bob",
21
+ "core": false,
22
+ "unlocked_by": null,
17
23
  "difficulty": 1,
18
24
  "topics": [
19
25
  "Strings",
@@ -21,28 +27,40 @@
21
27
  ]
22
28
  },
23
29
  {
30
+ "uuid": "8ba15933-29a2-49b1-a9ce-70474bad3007",
24
31
  "slug": "leap",
32
+ "core": false,
33
+ "unlocked_by": null,
25
34
  "difficulty": 1,
26
35
  "topics": [
27
36
  "Integers"
28
37
  ]
29
38
  },
30
39
  {
40
+ "uuid": "b7116dfb-1107-4546-9f95-f15acdb6f6a4",
31
41
  "slug": "gigasecond",
42
+ "core": false,
43
+ "unlocked_by": null,
32
44
  "difficulty": 1,
33
45
  "topics": [
34
46
  "Dates"
35
47
  ]
36
48
  },
37
49
  {
50
+ "uuid": "5554c048-0de3-4a85-b043-7577f429cba4",
38
51
  "slug": "difference-of-squares",
52
+ "core": false,
53
+ "unlocked_by": null,
39
54
  "difficulty": 1,
40
55
  "topics": [
41
56
  "Integers"
42
57
  ]
43
58
  },
44
59
  {
60
+ "uuid": "440b0b23-220d-4706-98f0-9a89fce85acb",
45
61
  "slug": "rna-transcription",
62
+ "core": false,
63
+ "unlocked_by": null,
46
64
  "difficulty": 1,
47
65
  "topics": [
48
66
  "Strings",
@@ -50,7 +68,10 @@
50
68
  ]
51
69
  },
52
70
  {
71
+ "uuid": "d985d4a9-1a2b-4bb1-ad08-961b8d36ee2e",
53
72
  "slug": "sum-of-multiples",
73
+ "core": false,
74
+ "unlocked_by": null,
54
75
  "difficulty": 1,
55
76
  "topics": [
56
77
  "Arrays",
@@ -58,14 +79,20 @@
58
79
  ]
59
80
  },
60
81
  {
82
+ "uuid": "612f058b-c6d9-4c97-913a-eeeb59ef61e1",
61
83
  "slug": "space-age",
84
+ "core": false,
85
+ "unlocked_by": null,
62
86
  "difficulty": 1,
63
87
  "topics": [
64
88
  "Floating-point numbers"
65
89
  ]
66
90
  },
67
91
  {
92
+ "uuid": "05162ee0-38ac-40ad-a591-d70a74b6963a",
68
93
  "slug": "hamming",
94
+ "core": false,
95
+ "unlocked_by": null,
69
96
  "difficulty": 2,
70
97
  "topics": [
71
98
  "Strings",
@@ -73,21 +100,30 @@
73
100
  ]
74
101
  },
75
102
  {
103
+ "uuid": "372c71b6-6256-4fe2-bddc-55667e3861af",
76
104
  "slug": "grains",
105
+ "core": false,
106
+ "unlocked_by": null,
77
107
  "difficulty": 2,
78
108
  "topics": [
79
109
  "Integers"
80
110
  ]
81
111
  },
82
112
  {
113
+ "uuid": "a595d7a1-81d3-48f2-9921-e53b9b22e072",
83
114
  "slug": "pangram",
115
+ "core": false,
116
+ "unlocked_by": null,
84
117
  "difficulty": 2,
85
118
  "topics": [
86
119
  "Strings"
87
120
  ]
88
121
  },
89
122
  {
123
+ "uuid": "29ae7f8e-a009-4175-9350-a8c684c89730",
90
124
  "slug": "raindrops",
125
+ "core": false,
126
+ "unlocked_by": null,
91
127
  "difficulty": 2,
92
128
  "topics": [
93
129
  "Text formatting",
@@ -95,7 +131,10 @@
95
131
  ]
96
132
  },
97
133
  {
134
+ "uuid": "caca1c6a-b998-431e-b6af-ca2d47b7708f",
98
135
  "slug": "nucleotide-count",
136
+ "core": false,
137
+ "unlocked_by": null,
99
138
  "difficulty": 2,
100
139
  "topics": [
101
140
  "Dictionaries",
@@ -103,7 +142,10 @@
103
142
  ]
104
143
  },
105
144
  {
145
+ "uuid": "3c0563dc-665a-45b4-9b29-f133e235efd0",
106
146
  "slug": "accumulate",
147
+ "core": false,
148
+ "unlocked_by": null,
107
149
  "difficulty": 2,
108
150
  "topics": [
109
151
  "Extension methods",
@@ -112,14 +154,20 @@
112
154
  ]
113
155
  },
114
156
  {
157
+ "uuid": "96c641c8-4c3c-47ff-9e32-9722b5ca2c37",
115
158
  "slug": "bank-account",
159
+ "core": false,
160
+ "unlocked_by": null,
116
161
  "difficulty": 2,
117
162
  "topics": [
118
163
  "Classes"
119
164
  ]
120
165
  },
121
166
  {
167
+ "uuid": "ec1cc254-8e66-40d0-87bf-971d54c541c4",
122
168
  "slug": "grade-school",
169
+ "core": false,
170
+ "unlocked_by": null,
123
171
  "difficulty": 2,
124
172
  "topics": [
125
173
  "Lists",
@@ -127,7 +175,10 @@
127
175
  ]
128
176
  },
129
177
  {
178
+ "uuid": "36b7602c-44e2-4589-a97d-127a0277b2a2",
130
179
  "slug": "etl",
180
+ "core": false,
181
+ "unlocked_by": null,
131
182
  "difficulty": 2,
132
183
  "topics": [
133
184
  "Dictionaries",
@@ -136,7 +187,10 @@
136
187
  ]
137
188
  },
138
189
  {
190
+ "uuid": "5675771e-1a46-40bd-8923-f6e09642cc0c",
139
191
  "slug": "phone-number",
192
+ "core": false,
193
+ "unlocked_by": null,
140
194
  "difficulty": 3,
141
195
  "topics": [
142
196
  "Parsing",
@@ -144,7 +198,10 @@
144
198
  ]
145
199
  },
146
200
  {
201
+ "uuid": "fdb19da7-28df-429b-83e5-d024abe97870",
147
202
  "slug": "strain",
203
+ "core": false,
204
+ "unlocked_by": null,
148
205
  "difficulty": 3,
149
206
  "topics": [
150
207
  "Sequences",
@@ -152,14 +209,20 @@
152
209
  ]
153
210
  },
154
211
  {
212
+ "uuid": "89c42da3-72a6-423d-a9c7-7caccbd9b1e6",
155
213
  "slug": "scrabble-score",
214
+ "core": false,
215
+ "unlocked_by": null,
156
216
  "difficulty": 3,
157
217
  "topics": [
158
218
  "Transforming"
159
219
  ]
160
220
  },
161
221
  {
222
+ "uuid": "b0a978a6-9c3f-427e-8ada-0a3951ca14fd",
162
223
  "slug": "proverb",
224
+ "core": false,
225
+ "unlocked_by": null,
163
226
  "difficulty": 3,
164
227
  "topics": [
165
228
  "Text formatting",
@@ -167,7 +230,10 @@
167
230
  ]
168
231
  },
169
232
  {
233
+ "uuid": "46b8aea8-1528-43cb-a754-495ec2790ce2",
170
234
  "slug": "robot-name",
235
+ "core": false,
236
+ "unlocked_by": null,
171
237
  "difficulty": 3,
172
238
  "topics": [
173
239
  "Randomness",
@@ -176,14 +242,20 @@
176
242
  ]
177
243
  },
178
244
  {
245
+ "uuid": "77e46f6b-1070-4267-a1b5-a2aac931975a",
179
246
  "slug": "error-handling",
247
+ "core": false,
248
+ "unlocked_by": null,
180
249
  "difficulty": 3,
181
250
  "topics": [
182
251
  "Exception handling"
183
252
  ]
184
253
  },
185
254
  {
255
+ "uuid": "b7458404-2534-4ed8-8350-7060fa4b5786",
186
256
  "slug": "kindergarten-garden",
257
+ "core": false,
258
+ "unlocked_by": null,
187
259
  "difficulty": 3,
188
260
  "topics": [
189
261
  "Parsing",
@@ -191,7 +263,10 @@
191
263
  ]
192
264
  },
193
265
  {
266
+ "uuid": "75a2d5f0-5f5e-46a3-9dd2-3da415690e18",
194
267
  "slug": "protein-translation",
268
+ "core": false,
269
+ "unlocked_by": null,
195
270
  "difficulty": 3,
196
271
  "topics": [
197
272
  "Strings",
@@ -200,14 +275,20 @@
200
275
  ]
201
276
  },
202
277
  {
278
+ "uuid": "142c97b6-ae31-4b5f-944c-3eb789d9e051",
203
279
  "slug": "perfect-numbers",
280
+ "core": false,
281
+ "unlocked_by": null,
204
282
  "difficulty": 3,
205
283
  "topics": [
206
284
  "Integers"
207
285
  ]
208
286
  },
209
287
  {
288
+ "uuid": "83e4cb1e-456f-4c74-ae82-6895f0bd73ae",
210
289
  "slug": "clock",
290
+ "core": false,
291
+ "unlocked_by": null,
211
292
  "difficulty": 3,
212
293
  "topics": [
213
294
  "Time",
@@ -215,7 +296,10 @@
215
296
  ]
216
297
  },
217
298
  {
299
+ "uuid": "5b1713c7-1597-4e67-ac97-f305b207bc38",
218
300
  "slug": "triangle",
301
+ "core": false,
302
+ "unlocked_by": null,
219
303
  "difficulty": 3,
220
304
  "topics": [
221
305
  "Integers",
@@ -223,7 +307,10 @@
223
307
  ]
224
308
  },
225
309
  {
310
+ "uuid": "4ae402a7-5345-429a-a6af-e95ec5b95e13",
226
311
  "slug": "beer-song",
312
+ "core": false,
313
+ "unlocked_by": null,
227
314
  "difficulty": 3,
228
315
  "topics": [
229
316
  "Text formatting",
@@ -231,7 +318,10 @@
231
318
  ]
232
319
  },
233
320
  {
321
+ "uuid": "1897605a-afd4-49fe-b6ee-cd822f0d8acc",
234
322
  "slug": "sieve",
323
+ "core": false,
324
+ "unlocked_by": null,
235
325
  "difficulty": 3,
236
326
  "topics": [
237
327
  "Filtering",
@@ -239,14 +329,20 @@
239
329
  ]
240
330
  },
241
331
  {
332
+ "uuid": "5c56211a-ae1e-4836-80b5-f22f5801b7a2",
242
333
  "slug": "queen-attack",
334
+ "core": false,
335
+ "unlocked_by": null,
243
336
  "difficulty": 3,
244
337
  "topics": [
245
338
  "Classes"
246
339
  ]
247
340
  },
248
341
  {
342
+ "uuid": "f92ff94a-73e6-41cb-a376-835c2368b358",
249
343
  "slug": "binary-search",
344
+ "core": false,
345
+ "unlocked_by": null,
250
346
  "difficulty": 3,
251
347
  "topics": [
252
348
  "Searching",
@@ -254,7 +350,10 @@
254
350
  ]
255
351
  },
256
352
  {
353
+ "uuid": "babd38cc-cf21-42ca-9d33-f2ad75c82871",
257
354
  "slug": "robot-simulator",
355
+ "core": false,
356
+ "unlocked_by": null,
258
357
  "difficulty": 3,
259
358
  "topics": [
260
359
  "Classes",
@@ -262,7 +361,10 @@
262
361
  ]
263
362
  },
264
363
  {
364
+ "uuid": "4b7b65be-f777-4f64-94a0-4f9832f17a52",
265
365
  "slug": "isogram",
366
+ "core": false,
367
+ "unlocked_by": null,
266
368
  "difficulty": 3,
267
369
  "topics": [
268
370
  "Strings",
@@ -270,7 +372,10 @@
270
372
  ]
271
373
  },
272
374
  {
375
+ "uuid": "1ad236a9-7035-42e6-90ec-f6a4b94ad495",
273
376
  "slug": "secret-handshake",
377
+ "core": false,
378
+ "unlocked_by": null,
274
379
  "difficulty": 3,
275
380
  "topics": [
276
381
  "Bitwise operations",
@@ -278,7 +383,10 @@
278
383
  ]
279
384
  },
280
385
  {
386
+ "uuid": "2ac228d8-7bf0-4946-8352-6541df02c0a2",
281
387
  "slug": "allergies",
388
+ "core": false,
389
+ "unlocked_by": null,
282
390
  "difficulty": 4,
283
391
  "topics": [
284
392
  "Bitwise operations",
@@ -286,7 +394,10 @@
286
394
  ]
287
395
  },
288
396
  {
397
+ "uuid": "2d68e971-d717-4196-a348-d4675a47283a",
289
398
  "slug": "simple-linked-list",
399
+ "core": false,
400
+ "unlocked_by": null,
290
401
  "difficulty": 4,
291
402
  "topics": [
292
403
  "Classes",
@@ -294,7 +405,10 @@
294
405
  ]
295
406
  },
296
407
  {
408
+ "uuid": "ddfb0a0e-8c58-4b9e-ad62-57d06ef10f5f",
297
409
  "slug": "acronym",
410
+ "core": false,
411
+ "unlocked_by": null,
298
412
  "difficulty": 4,
299
413
  "topics": [
300
414
  "Strings",
@@ -302,7 +416,10 @@
302
416
  ]
303
417
  },
304
418
  {
419
+ "uuid": "73509caa-9b3e-4d09-933f-364c1a7e5519",
305
420
  "slug": "matrix",
421
+ "core": false,
422
+ "unlocked_by": null,
306
423
  "difficulty": 4,
307
424
  "topics": [
308
425
  "Matrices",
@@ -310,7 +427,10 @@
310
427
  ]
311
428
  },
312
429
  {
430
+ "uuid": "8a0a291d-8330-4901-bdbe-f974e163158e",
313
431
  "slug": "rotational-cipher",
432
+ "core": false,
433
+ "unlocked_by": null,
314
434
  "difficulty": 4,
315
435
  "topics": [
316
436
  "Strings",
@@ -319,7 +439,10 @@
319
439
  ]
320
440
  },
321
441
  {
442
+ "uuid": "4a6621bb-e55a-4ae2-89e3-3aa7e37a8656",
322
443
  "slug": "largest-series-product",
444
+ "core": false,
445
+ "unlocked_by": null,
323
446
  "difficulty": 4,
324
447
  "topics": [
325
448
  "Strings",
@@ -328,7 +451,10 @@
328
451
  ]
329
452
  },
330
453
  {
454
+ "uuid": "97aa0e82-2fc3-49e2-ad27-faef2873b328",
331
455
  "slug": "house",
456
+ "core": false,
457
+ "unlocked_by": null,
332
458
  "difficulty": 4,
333
459
  "topics": [
334
460
  "Text formatting",
@@ -336,7 +462,10 @@
336
462
  ]
337
463
  },
338
464
  {
465
+ "uuid": "cb755a7d-e01d-4758-92ab-9d2e6518a3eb",
339
466
  "slug": "saddle-points",
467
+ "core": false,
468
+ "unlocked_by": null,
340
469
  "difficulty": 4,
341
470
  "topics": [
342
471
  "Matrices",
@@ -345,7 +474,10 @@
345
474
  ]
346
475
  },
347
476
  {
477
+ "uuid": "4d5a53df-3d6b-46cb-a964-71c676f3cd93",
348
478
  "slug": "pythagorean-triplet",
479
+ "core": false,
480
+ "unlocked_by": null,
349
481
  "difficulty": 4,
350
482
  "topics": [
351
483
  "Overloading",
@@ -354,7 +486,10 @@
354
486
  ]
355
487
  },
356
488
  {
489
+ "uuid": "9ca46617-4995-45cc-a2dd-b8630eaa288b",
357
490
  "slug": "series",
491
+ "core": false,
492
+ "unlocked_by": null,
358
493
  "difficulty": 4,
359
494
  "topics": [
360
495
  "Strings",
@@ -363,7 +498,10 @@
363
498
  ]
364
499
  },
365
500
  {
501
+ "uuid": "2627fb4f-7884-4494-8f49-5888107643f1",
366
502
  "slug": "twelve-days",
503
+ "core": false,
504
+ "unlocked_by": null,
367
505
  "difficulty": 4,
368
506
  "topics": [
369
507
  "Text formatting",
@@ -371,7 +509,10 @@
371
509
  ]
372
510
  },
373
511
  {
512
+ "uuid": "790216d1-4fd9-4a9b-94f8-e1e07a18c2b7",
374
513
  "slug": "anagram",
514
+ "core": false,
515
+ "unlocked_by": null,
375
516
  "difficulty": 4,
376
517
  "topics": [
377
518
  "Strings",
@@ -379,7 +520,10 @@
379
520
  ]
380
521
  },
381
522
  {
523
+ "uuid": "6e8717a7-6888-474a-96ad-0760c6d3ff92",
382
524
  "slug": "word-count",
525
+ "core": false,
526
+ "unlocked_by": null,
383
527
  "difficulty": 4,
384
528
  "topics": [
385
529
  "Strings",
@@ -388,7 +532,10 @@
388
532
  ]
389
533
  },
390
534
  {
535
+ "uuid": "456ffe2c-e241-4373-8bea-d4d328f815e9",
391
536
  "slug": "prime-factors",
537
+ "core": false,
538
+ "unlocked_by": null,
392
539
  "difficulty": 4,
393
540
  "topics": [
394
541
  "Integers",
@@ -396,14 +543,20 @@
396
543
  ]
397
544
  },
398
545
  {
546
+ "uuid": "064096c1-89b0-4656-bd3e-08ca833aa0b1",
399
547
  "slug": "meetup",
548
+ "core": false,
549
+ "unlocked_by": null,
400
550
  "difficulty": 4,
401
551
  "topics": [
402
552
  "Dates"
403
553
  ]
404
554
  },
405
555
  {
556
+ "uuid": "de5e2eff-2b80-4996-a322-dc59ebe25edd",
406
557
  "slug": "all-your-base",
558
+ "core": false,
559
+ "unlocked_by": null,
407
560
  "difficulty": 4,
408
561
  "topics": [
409
562
  "Integers",
@@ -411,7 +564,10 @@
411
564
  ]
412
565
  },
413
566
  {
567
+ "uuid": "d5d48857-5325-45d2-9969-95a0d7bba370",
414
568
  "slug": "pascals-triangle",
569
+ "core": false,
570
+ "unlocked_by": null,
415
571
  "difficulty": 4,
416
572
  "topics": [
417
573
  "Control-flow (loops)",
@@ -420,7 +576,10 @@
420
576
  ]
421
577
  },
422
578
  {
579
+ "uuid": "3b5b11b0-9476-4d9b-a4c5-c5c48d3d32a8",
423
580
  "slug": "list-ops",
581
+ "core": false,
582
+ "unlocked_by": null,
424
583
  "difficulty": 5,
425
584
  "topics": [
426
585
  "Lists",
@@ -428,7 +587,10 @@
428
587
  ]
429
588
  },
430
589
  {
590
+ "uuid": "54649fb0-6b14-44df-85af-ae1f7a62449d",
431
591
  "slug": "simple-cipher",
592
+ "core": false,
593
+ "unlocked_by": null,
432
594
  "difficulty": 5,
433
595
  "topics": [
434
596
  "Strings",
@@ -437,7 +599,10 @@
437
599
  ]
438
600
  },
439
601
  {
602
+ "uuid": "d3702b93-7bb3-4e0a-8cd7-974ad93b0d3d",
440
603
  "slug": "roman-numerals",
604
+ "core": false,
605
+ "unlocked_by": null,
441
606
  "difficulty": 5,
442
607
  "topics": [
443
608
  "Control-flow (loops)",
@@ -445,7 +610,10 @@
445
610
  ]
446
611
  },
447
612
  {
613
+ "uuid": "9ad05373-a049-47f9-a06a-80ad0a7b38fd",
448
614
  "slug": "flatten-array",
615
+ "core": false,
616
+ "unlocked_by": null,
449
617
  "difficulty": 5,
450
618
  "topics": [
451
619
  "Lists",
@@ -453,7 +621,10 @@
453
621
  ]
454
622
  },
455
623
  {
624
+ "uuid": "d40541a8-d7d6-4dab-8560-27c5055adbd0",
456
625
  "slug": "binary-search-tree",
626
+ "core": false,
627
+ "unlocked_by": null,
457
628
  "difficulty": 5,
458
629
  "topics": [
459
630
  "Searching",
@@ -462,7 +633,10 @@
462
633
  ]
463
634
  },
464
635
  {
636
+ "uuid": "466f17d4-13d0-4d6e-8564-c8bdfede35d1",
465
637
  "slug": "minesweeper",
638
+ "core": false,
639
+ "unlocked_by": null,
466
640
  "difficulty": 5,
467
641
  "topics": [
468
642
  "Parsing",
@@ -470,7 +644,10 @@
470
644
  ]
471
645
  },
472
646
  {
647
+ "uuid": "0c5918d5-15cc-401f-b038-5fb2cd515ec7",
473
648
  "slug": "atbash-cipher",
649
+ "core": false,
650
+ "unlocked_by": null,
474
651
  "difficulty": 5,
475
652
  "topics": [
476
653
  "Strings",
@@ -479,7 +656,10 @@
479
656
  ]
480
657
  },
481
658
  {
659
+ "uuid": "3a09736e-4002-41aa-acf9-ff10a9392b24",
482
660
  "slug": "food-chain",
661
+ "core": false,
662
+ "unlocked_by": null,
483
663
  "difficulty": 5,
484
664
  "topics": [
485
665
  "Text formatting",
@@ -487,7 +667,10 @@
487
667
  ]
488
668
  },
489
669
  {
670
+ "uuid": "a9909a03-ce2e-45d9-85f8-a77f44fb2466",
490
671
  "slug": "grep",
672
+ "core": false,
673
+ "unlocked_by": null,
491
674
  "difficulty": 5,
492
675
  "topics": [
493
676
  "Text formatting",
@@ -496,14 +679,20 @@
496
679
  ]
497
680
  },
498
681
  {
682
+ "uuid": "89d3b074-190f-4520-8f87-cde6368fc58e",
499
683
  "slug": "sublist",
684
+ "core": false,
685
+ "unlocked_by": null,
500
686
  "difficulty": 5,
501
687
  "topics": [
502
688
  "Lists"
503
689
  ]
504
690
  },
505
691
  {
692
+ "uuid": "b31bff08-a609-40ec-a1ee-46ba24e671f2",
506
693
  "slug": "tree-building",
694
+ "core": false,
695
+ "unlocked_by": null,
507
696
  "difficulty": 5,
508
697
  "topics": [
509
698
  "Trees",
@@ -511,7 +700,10 @@
511
700
  ]
512
701
  },
513
702
  {
703
+ "uuid": "c7d5acc6-68a6-4cd8-a28b-359dceb1e56f",
514
704
  "slug": "scale-generator",
705
+ "core": false,
706
+ "unlocked_by": null,
515
707
  "difficulty": 5,
516
708
  "topics": [
517
709
  "Parsing",
@@ -519,7 +711,10 @@
519
711
  ]
520
712
  },
521
713
  {
714
+ "uuid": "a2070019-e56d-4d48-994b-300411598707",
522
715
  "slug": "bracket-push",
716
+ "core": false,
717
+ "unlocked_by": null,
523
718
  "difficulty": 5,
524
719
  "topics": [
525
720
  "Parsing",
@@ -527,7 +722,10 @@
527
722
  ]
528
723
  },
529
724
  {
725
+ "uuid": "5863c898-2072-4543-9ab5-045fd6691de4",
530
726
  "slug": "parallel-letter-frequency",
727
+ "core": false,
728
+ "unlocked_by": null,
531
729
  "difficulty": 5,
532
730
  "topics": [
533
731
  "Parallellism",
@@ -536,7 +734,10 @@
536
734
  ]
537
735
  },
538
736
  {
737
+ "uuid": "49b557ad-0bf0-451b-9a12-6dd9eb0291a2",
539
738
  "slug": "linked-list",
739
+ "core": false,
740
+ "unlocked_by": null,
540
741
  "difficulty": 5,
541
742
  "topics": [
542
743
  "Classes",
@@ -544,7 +745,10 @@
544
745
  ]
545
746
  },
546
747
  {
748
+ "uuid": "dd95f3d8-6da4-4bb4-b5c1-bf00c818d586",
547
749
  "slug": "crypto-square",
750
+ "core": false,
751
+ "unlocked_by": null,
548
752
  "difficulty": 5,
549
753
  "topics": [
550
754
  "Strings",
@@ -553,7 +757,10 @@
553
757
  ]
554
758
  },
555
759
  {
760
+ "uuid": "c1cc752e-99a2-4da3-8d0c-82e08f1c6110",
556
761
  "slug": "ledger",
762
+ "core": false,
763
+ "unlocked_by": null,
557
764
  "difficulty": 5,
558
765
  "topics": [
559
766
  "Globalization",
@@ -562,14 +769,20 @@
562
769
  ]
563
770
  },
564
771
  {
772
+ "uuid": "a6dff389-07ea-42cb-98ec-271ce7cfeda3",
565
773
  "slug": "custom-set",
774
+ "core": false,
775
+ "unlocked_by": null,
566
776
  "difficulty": 5,
567
777
  "topics": [
568
778
  "Sets"
569
779
  ]
570
780
  },
571
781
  {
782
+ "uuid": "d128ec4b-190f-4726-b3e7-870be09531aa",
572
783
  "slug": "dot-dsl",
784
+ "core": false,
785
+ "unlocked_by": null,
573
786
  "difficulty": 5,
574
787
  "topics": [
575
788
  "Domain-specific languages",
@@ -578,7 +791,10 @@
578
791
  ]
579
792
  },
580
793
  {
794
+ "uuid": "2a5ddf5e-e677-4eef-b759-087d71e15986",
581
795
  "slug": "ocr-numbers",
796
+ "core": false,
797
+ "unlocked_by": null,
582
798
  "difficulty": 5,
583
799
  "topics": [
584
800
  "Parsing",
@@ -586,7 +802,10 @@
586
802
  ]
587
803
  },
588
804
  {
805
+ "uuid": "657ac368-9b17-4f87-b815-decfe2bc0b5d",
589
806
  "slug": "circular-buffer",
807
+ "core": false,
808
+ "unlocked_by": null,
590
809
  "difficulty": 5,
591
810
  "topics": [
592
811
  "Queues",
@@ -594,7 +813,10 @@
594
813
  ]
595
814
  },
596
815
  {
816
+ "uuid": "20fe4853-0eee-4171-b3c1-8ef871b99d13",
597
817
  "slug": "luhn",
818
+ "core": false,
819
+ "unlocked_by": null,
598
820
  "difficulty": 5,
599
821
  "topics": [
600
822
  "Strings",
@@ -603,7 +825,10 @@
603
825
  ]
604
826
  },
605
827
  {
828
+ "uuid": "dee4abe1-c75f-4cb8-b5f3-5b5b77e1c7aa",
606
829
  "slug": "markdown",
830
+ "core": false,
831
+ "unlocked_by": null,
607
832
  "difficulty": 5,
608
833
  "topics": [
609
834
  "Parsing",
@@ -612,7 +837,10 @@
612
837
  ]
613
838
  },
614
839
  {
840
+ "uuid": "4ad0d49a-e10b-4f8b-b454-623b9396d559",
615
841
  "slug": "run-length-encoding",
842
+ "core": false,
843
+ "unlocked_by": null,
616
844
  "difficulty": 5,
617
845
  "topics": [
618
846
  "Algorithms",
@@ -620,14 +848,20 @@
620
848
  ]
621
849
  },
622
850
  {
851
+ "uuid": "8288d3e0-75a4-4a18-94c7-2fab3228dc58",
623
852
  "slug": "book-store",
853
+ "core": false,
854
+ "unlocked_by": null,
624
855
  "difficulty": 5,
625
856
  "topics": [
626
857
  "Recursion"
627
858
  ]
628
859
  },
629
860
  {
861
+ "uuid": "d9359f25-dc94-496c-adc3-57fe541857fe",
630
862
  "slug": "tournament",
863
+ "core": false,
864
+ "unlocked_by": null,
631
865
  "difficulty": 6,
632
866
  "topics": [
633
867
  "Text formatting",
@@ -635,7 +869,10 @@
635
869
  ]
636
870
  },
637
871
  {
872
+ "uuid": "2b05d7dd-0f0b-4fa4-a2bf-9d7fa28a7543",
638
873
  "slug": "word-search",
874
+ "core": false,
875
+ "unlocked_by": null,
639
876
  "difficulty": 6,
640
877
  "topics": [
641
878
  "Searching",
@@ -643,7 +880,10 @@
643
880
  ]
644
881
  },
645
882
  {
883
+ "uuid": "64eff1cb-990d-45bc-a9e7-8f574e114ece",
646
884
  "slug": "bowling",
885
+ "core": false,
886
+ "unlocked_by": null,
647
887
  "difficulty": 6,
648
888
  "topics": [
649
889
  "Algorithms",
@@ -651,7 +891,10 @@
651
891
  ]
652
892
  },
653
893
  {
894
+ "uuid": "2634c53c-ba4d-4729-b936-a7ec387f4789",
654
895
  "slug": "transpose",
896
+ "core": false,
897
+ "unlocked_by": null,
655
898
  "difficulty": 6,
656
899
  "topics": [
657
900
  "Strings",
@@ -659,14 +902,20 @@
659
902
  ]
660
903
  },
661
904
  {
905
+ "uuid": "60ef0713-70e2-4ee7-9207-86910e616ec1",
662
906
  "slug": "nth-prime",
907
+ "core": false,
908
+ "unlocked_by": null,
663
909
  "difficulty": 6,
664
910
  "topics": [
665
911
  "Mathematics"
666
912
  ]
667
913
  },
668
914
  {
915
+ "uuid": "63bdd2d4-b395-41ca-8c58-b3d94bf1e696",
669
916
  "slug": "pig-latin",
917
+ "core": false,
918
+ "unlocked_by": null,
670
919
  "difficulty": 6,
671
920
  "topics": [
672
921
  "Strings",
@@ -674,7 +923,10 @@
674
923
  ]
675
924
  },
676
925
  {
926
+ "uuid": "e338fed5-f850-4922-88b2-7e9ec0eb7299",
677
927
  "slug": "rail-fence-cipher",
928
+ "core": false,
929
+ "unlocked_by": null,
678
930
  "difficulty": 6,
679
931
  "topics": [
680
932
  "Strings",
@@ -683,7 +935,10 @@
683
935
  ]
684
936
  },
685
937
  {
938
+ "uuid": "44796c6c-39b3-41c7-8ea5-ffb9738423b8",
686
939
  "slug": "change",
940
+ "core": false,
941
+ "unlocked_by": null,
687
942
  "difficulty": 6,
688
943
  "topics": [
689
944
  "Integers",
@@ -691,7 +946,10 @@
691
946
  ]
692
947
  },
693
948
  {
949
+ "uuid": "165b8599-726d-43dd-8511-1401525810de",
694
950
  "slug": "palindrome-products",
951
+ "core": false,
952
+ "unlocked_by": null,
695
953
  "difficulty": 6,
696
954
  "topics": [
697
955
  "Strings",
@@ -700,7 +958,10 @@
700
958
  ]
701
959
  },
702
960
  {
961
+ "uuid": "d03a9508-336a-4425-8f47-f04317d1ba15",
703
962
  "slug": "poker",
963
+ "core": false,
964
+ "unlocked_by": null,
704
965
  "difficulty": 7,
705
966
  "topics": [
706
967
  "Parsing",
@@ -709,7 +970,10 @@
709
970
  ]
710
971
  },
711
972
  {
973
+ "uuid": "3bea029d-ccc2-48be-90f3-84bf2d5b825b",
712
974
  "slug": "diffie-hellman",
975
+ "core": false,
976
+ "unlocked_by": null,
713
977
  "difficulty": 7,
714
978
  "topics": [
715
979
  "Integers",
@@ -718,7 +982,10 @@
718
982
  ]
719
983
  },
720
984
  {
985
+ "uuid": "0409f45f-b65e-4404-a9e7-2ef432d834b2",
721
986
  "slug": "dominoes",
987
+ "core": false,
988
+ "unlocked_by": null,
722
989
  "difficulty": 7,
723
990
  "topics": [
724
991
  "Tuples",
@@ -726,7 +993,10 @@
726
993
  ]
727
994
  },
728
995
  {
996
+ "uuid": "817ccde1-0593-4091-85a5-616f4f8823f0",
729
997
  "slug": "rectangles",
998
+ "core": false,
999
+ "unlocked_by": null,
730
1000
  "difficulty": 7,
731
1001
  "topics": [
732
1002
  "Parsing",
@@ -734,7 +1004,10 @@
734
1004
  ]
735
1005
  },
736
1006
  {
1007
+ "uuid": "57ef1936-d187-4915-888b-374f09c794c7",
737
1008
  "slug": "wordy",
1009
+ "core": false,
1010
+ "unlocked_by": null,
738
1011
  "difficulty": 7,
739
1012
  "topics": [
740
1013
  "Parsing",
@@ -743,14 +1016,20 @@
743
1016
  ]
744
1017
  },
745
1018
  {
1019
+ "uuid": "e167479e-e77d-4734-b8c0-a7cd686c74a3",
746
1020
  "slug": "zebra-puzzle",
1021
+ "core": false,
1022
+ "unlocked_by": null,
747
1023
  "difficulty": 8,
748
1024
  "topics": [
749
1025
  "Logic"
750
1026
  ]
751
1027
  },
752
1028
  {
1029
+ "uuid": "c9b12d50-09dc-4f43-9e7e-66b277432347",
753
1030
  "slug": "hangman",
1031
+ "core": false,
1032
+ "unlocked_by": null,
754
1033
  "difficulty": 8,
755
1034
  "topics": [
756
1035
  "Reactive programming",
@@ -758,7 +1037,10 @@
758
1037
  ]
759
1038
  },
760
1039
  {
1040
+ "uuid": "2f3faeb7-7cc3-42ed-9525-cd9c73922a8d",
761
1041
  "slug": "diamond",
1042
+ "core": false,
1043
+ "unlocked_by": null,
762
1044
  "difficulty": 8,
763
1045
  "topics": [
764
1046
  "Text formatting",
@@ -766,14 +1048,20 @@
766
1048
  ]
767
1049
  },
768
1050
  {
1051
+ "uuid": "b33c3b86-e04b-4529-bdf5-9d553ad59f87",
769
1052
  "slug": "two-bucket",
1053
+ "core": false,
1054
+ "unlocked_by": null,
770
1055
  "difficulty": 8,
771
1056
  "topics": [
772
1057
  "Logic"
773
1058
  ]
774
1059
  },
775
1060
  {
1061
+ "uuid": "ca56c362-c9f5-4403-9a2d-2e31e54b35e3",
776
1062
  "slug": "connect",
1063
+ "core": false,
1064
+ "unlocked_by": null,
777
1065
  "difficulty": 8,
778
1066
  "topics": [
779
1067
  "Parsing",
@@ -781,7 +1069,10 @@
781
1069
  ]
782
1070
  },
783
1071
  {
1072
+ "uuid": "34518ea7-c202-443a-b28f-e873f3207f89",
784
1073
  "slug": "say",
1074
+ "core": false,
1075
+ "unlocked_by": null,
785
1076
  "difficulty": 8,
786
1077
  "topics": [
787
1078
  "Strings",
@@ -790,7 +1081,10 @@
790
1081
  ]
791
1082
  },
792
1083
  {
1084
+ "uuid": "3e86c66d-c66e-4e28-834d-09b33b2ee2d2",
793
1085
  "slug": "react",
1086
+ "core": false,
1087
+ "unlocked_by": null,
794
1088
  "difficulty": 9,
795
1089
  "topics": [
796
1090
  "Reactive programming",
@@ -799,7 +1093,10 @@
799
1093
  ]
800
1094
  },
801
1095
  {
1096
+ "uuid": "4c49ea84-8765-42b0-b4ab-5dead802eeee",
802
1097
  "slug": "variable-length-quantity",
1098
+ "core": false,
1099
+ "unlocked_by": null,
803
1100
  "difficulty": 9,
804
1101
  "topics": [
805
1102
  "Bitwise operations",
@@ -807,7 +1104,10 @@
807
1104
  ]
808
1105
  },
809
1106
  {
1107
+ "uuid": "1abbc58c-9a04-4b6f-afe1-85d3e4d202e1",
810
1108
  "slug": "go-counting",
1109
+ "core": false,
1110
+ "unlocked_by": null,
811
1111
  "difficulty": 9,
812
1112
  "topics": [
813
1113
  "Parsing",
@@ -816,7 +1116,10 @@
816
1116
  ]
817
1117
  },
818
1118
  {
1119
+ "uuid": "da255a02-8007-41e4-8a9e-7e2cfbe81be5",
819
1120
  "slug": "sgf-parsing",
1121
+ "core": false,
1122
+ "unlocked_by": null,
820
1123
  "difficulty": 9,
821
1124
  "topics": [
822
1125
  "Parsing",
@@ -824,7 +1127,10 @@
824
1127
  ]
825
1128
  },
826
1129
  {
1130
+ "uuid": "db77fbd1-29d9-40e6-a32e-9fb89acdc9fc",
827
1131
  "slug": "zipper",
1132
+ "core": false,
1133
+ "unlocked_by": null,
828
1134
  "difficulty": 10,
829
1135
  "topics": [
830
1136
  "Trees",
@@ -833,7 +1139,10 @@
833
1139
  ]
834
1140
  },
835
1141
  {
1142
+ "uuid": "c6961cae-5e93-470a-98ce-e7cd6b9cfcbf",
836
1143
  "slug": "alphametics",
1144
+ "core": false,
1145
+ "unlocked_by": null,
837
1146
  "difficulty": 10,
838
1147
  "topics": [
839
1148
  "Parsing",
@@ -841,7 +1150,10 @@
841
1150
  ]
842
1151
  },
843
1152
  {
1153
+ "uuid": "a2ba6202-f6e0-46f4-95e4-5921656f2e1a",
844
1154
  "slug": "forth",
1155
+ "core": false,
1156
+ "unlocked_by": null,
845
1157
  "difficulty": 10,
846
1158
  "topics": [
847
1159
  "Parsing",
@@ -849,7 +1161,10 @@
849
1161
  ]
850
1162
  },
851
1163
  {
1164
+ "uuid": "a5794706-58d2-48f7-8aab-78639d7bce77",
852
1165
  "slug": "pov",
1166
+ "core": false,
1167
+ "unlocked_by": null,
853
1168
  "difficulty": 10,
854
1169
  "topics": [
855
1170
  "Graphs",
@@ -858,12 +1173,6 @@
858
1173
  ]
859
1174
  }
860
1175
  ],
861
- "deprecated": [
862
- "binary",
863
- "trinary",
864
- "octal",
865
- "hexadecimal"
866
- ],
867
1176
  "foregone": [
868
1177
  "lens-person",
869
1178
  "nucleotide-codons",