trackler 2.2.0.3 → 2.2.0.4

Sign up to get free protection for your applications and to get access to all the features.
Files changed (463) hide show
  1. checksums.yaml +4 -4
  2. data/lib/trackler/version.rb +1 -1
  3. data/problem-specifications/exercises/list-ops/canonical-data.json +27 -11
  4. data/problem-specifications/exercises/rotational-cipher/canonical-data.json +8 -8
  5. data/tracks/clojure/config.json +240 -63
  6. data/tracks/cpp/CMakeLists.txt +1 -0
  7. data/tracks/cpp/config.json +8 -0
  8. data/tracks/cpp/exercises/bracket-push/CMakeLists.txt +52 -0
  9. data/tracks/cpp/exercises/bracket-push/bracket_push_test.cpp +75 -0
  10. data/tracks/cpp/exercises/bracket-push/example.cpp +28 -0
  11. data/tracks/cpp/exercises/bracket-push/example.h +13 -0
  12. data/tracks/ecmascript/config.json +235 -71
  13. data/tracks/ecmascript/config/exercise_readme.go.tmpl +16 -0
  14. data/tracks/ecmascript/exercises/accumulate/README.md +65 -0
  15. data/tracks/ecmascript/exercises/acronym/README.md +45 -0
  16. data/tracks/ecmascript/exercises/all-your-base/README.md +65 -0
  17. data/tracks/ecmascript/exercises/allergies/README.md +67 -0
  18. data/tracks/ecmascript/exercises/alphametics/README.md +65 -0
  19. data/tracks/ecmascript/exercises/anagram/README.md +43 -0
  20. data/tracks/ecmascript/exercises/atbash-cipher/README.md +64 -0
  21. data/tracks/ecmascript/exercises/beer-song/README.md +357 -0
  22. data/tracks/ecmascript/exercises/binary-search-tree/README.md +90 -0
  23. data/tracks/ecmascript/exercises/binary-search/README.md +71 -0
  24. data/tracks/ecmascript/exercises/binary/README.md +65 -0
  25. data/tracks/ecmascript/exercises/bob/README.md +48 -0
  26. data/tracks/ecmascript/exercises/bracket-push/README.md +40 -0
  27. data/tracks/ecmascript/exercises/circular-buffer/README.md +80 -0
  28. data/tracks/ecmascript/exercises/clock/README.md +43 -0
  29. data/tracks/ecmascript/exercises/connect/README.md +64 -0
  30. data/tracks/ecmascript/exercises/crypto-square/README.md +104 -0
  31. data/tracks/ecmascript/exercises/custom-set/README.md +41 -0
  32. data/tracks/ecmascript/exercises/diamond/README.md +89 -0
  33. data/tracks/ecmascript/exercises/difference-of-squares/README.md +49 -0
  34. data/tracks/ecmascript/exercises/diffie-hellman/README.md +74 -0
  35. data/tracks/ecmascript/exercises/etl/README.md +81 -0
  36. data/tracks/ecmascript/exercises/flatten-array/README.md +48 -0
  37. data/tracks/ecmascript/exercises/food-chain/README.md +100 -0
  38. data/tracks/ecmascript/exercises/gigasecond/README.md +41 -0
  39. data/tracks/ecmascript/exercises/grade-school/README.md +72 -0
  40. data/tracks/ecmascript/exercises/grains/README.md +64 -0
  41. data/tracks/ecmascript/exercises/hamming/README.md +72 -0
  42. data/tracks/ecmascript/exercises/hello-world/README.md +51 -0
  43. data/tracks/ecmascript/exercises/hexadecimal/README.md +44 -0
  44. data/tracks/ecmascript/exercises/isogram/README.md +49 -0
  45. data/tracks/ecmascript/exercises/kindergarten-garden/README.md +96 -0
  46. data/tracks/ecmascript/exercises/largest-series-product/README.md +50 -0
  47. data/tracks/ecmascript/exercises/leap/README.md +63 -0
  48. data/tracks/ecmascript/exercises/linked-list/README.md +64 -0
  49. data/tracks/ecmascript/exercises/list-ops/README.md +40 -0
  50. data/tracks/ecmascript/exercises/luhn/README.md +101 -0
  51. data/tracks/ecmascript/exercises/matrix/README.md +75 -0
  52. data/tracks/ecmascript/exercises/meetup/README.md +60 -0
  53. data/tracks/ecmascript/exercises/minesweeper/README.md +60 -0
  54. data/tracks/ecmascript/exercises/nth-prime/README.md +45 -0
  55. data/tracks/ecmascript/exercises/ocr-numbers/README.md +115 -0
  56. data/tracks/ecmascript/exercises/octal/README.md +79 -0
  57. data/tracks/ecmascript/exercises/palindrome-products/README.md +70 -0
  58. data/tracks/ecmascript/exercises/pangram/README.md +45 -0
  59. data/tracks/ecmascript/exercises/pascals-triangle/README.md +51 -0
  60. data/tracks/ecmascript/exercises/perfect-numbers/README.md +54 -0
  61. data/tracks/ecmascript/exercises/phone-number/README.md +64 -0
  62. data/tracks/ecmascript/exercises/pig-latin/README.md +54 -0
  63. data/tracks/ecmascript/exercises/prime-factors/README.md +66 -0
  64. data/tracks/ecmascript/exercises/pythagorean-triplet/README.md +54 -0
  65. data/tracks/ecmascript/exercises/queen-attack/README.md +63 -0
  66. data/tracks/ecmascript/exercises/raindrops/README.md +54 -0
  67. data/tracks/ecmascript/exercises/rna-transcription/README.md +55 -0
  68. data/tracks/ecmascript/exercises/robot-name/README.md +52 -0
  69. data/tracks/ecmascript/exercises/robot-simulator/README.md +64 -0
  70. data/tracks/ecmascript/exercises/roman-numerals/README.md +79 -0
  71. data/tracks/ecmascript/exercises/saddle-points/README.md +63 -0
  72. data/tracks/ecmascript/exercises/say/README.md +99 -0
  73. data/tracks/ecmascript/exercises/scrabble-score/README.md +74 -0
  74. data/tracks/ecmascript/exercises/secret-handshake/README.md +65 -0
  75. data/tracks/ecmascript/exercises/series/README.md +57 -0
  76. data/tracks/ecmascript/exercises/sieve/README.md +64 -0
  77. data/tracks/ecmascript/exercises/simple-cipher/README.md +120 -0
  78. data/tracks/ecmascript/exercises/space-age/README.md +54 -0
  79. data/tracks/ecmascript/exercises/strain/README.md +70 -0
  80. data/tracks/ecmascript/exercises/sublist/README.md +50 -0
  81. data/tracks/ecmascript/exercises/sublist/example.js +30 -0
  82. data/tracks/ecmascript/exercises/sublist/package.json +69 -0
  83. data/tracks/ecmascript/exercises/sublist/sublist.spec.js +126 -0
  84. data/tracks/ecmascript/exercises/sum-of-multiples/README.md +48 -0
  85. data/tracks/ecmascript/exercises/triangle/README.md +56 -0
  86. data/tracks/ecmascript/exercises/trinary/README.md +58 -0
  87. data/tracks/ecmascript/exercises/two-bucket/README.md +66 -0
  88. data/tracks/ecmascript/exercises/word-count/README.md +49 -0
  89. data/tracks/ecmascript/exercises/wordy/README.md +93 -0
  90. data/tracks/go/.gitignore +1 -0
  91. data/tracks/go/README.md +2 -0
  92. data/tracks/go/config/exercise_readme.go.tmpl +16 -0
  93. data/tracks/go/exercises/accumulate/README.md +53 -0
  94. data/tracks/go/exercises/acronym/README.md +33 -0
  95. data/tracks/go/exercises/all-your-base/README.md +53 -0
  96. data/tracks/go/exercises/allergies/README.md +55 -0
  97. data/tracks/go/exercises/anagram/README.md +31 -0
  98. data/tracks/go/exercises/atbash-cipher/README.md +52 -0
  99. data/tracks/go/exercises/bank-account/README.md +48 -0
  100. data/tracks/go/exercises/beer-song/README.md +345 -0
  101. data/tracks/go/exercises/binary-search-tree/README.md +78 -0
  102. data/tracks/go/exercises/binary-search/README.md +59 -0
  103. data/tracks/go/exercises/binary/README.md +53 -0
  104. data/tracks/go/exercises/bob/README.md +36 -0
  105. data/tracks/go/exercises/bowling/README.md +71 -0
  106. data/tracks/go/exercises/bracket-push/README.md +28 -0
  107. data/tracks/go/exercises/change/README.md +41 -0
  108. data/tracks/go/exercises/circular-buffer/README.md +68 -0
  109. data/tracks/go/exercises/clock/README.md +31 -0
  110. data/tracks/go/exercises/connect/README.md +52 -0
  111. data/tracks/go/exercises/counter/README.md +42 -0
  112. data/tracks/go/exercises/crypto-square/README.md +92 -0
  113. data/tracks/go/exercises/custom-set/README.md +29 -0
  114. data/tracks/go/exercises/diamond/README.md +77 -0
  115. data/tracks/go/exercises/difference-of-squares/README.md +37 -0
  116. data/tracks/go/exercises/diffie-hellman/README.md +62 -0
  117. data/tracks/go/exercises/error-handling/README.md +31 -0
  118. data/tracks/go/exercises/etl/README.md +69 -0
  119. data/tracks/go/exercises/food-chain/README.md +88 -0
  120. data/tracks/go/exercises/forth/README.md +47 -0
  121. data/tracks/go/exercises/gigasecond/README.md +29 -0
  122. data/tracks/go/exercises/grade-school/README.md +60 -0
  123. data/tracks/go/exercises/grains/README.md +52 -0
  124. data/tracks/go/exercises/hamming/README.md +60 -0
  125. data/tracks/go/exercises/hello-world/README.md +39 -0
  126. data/tracks/go/exercises/hexadecimal/README.md +32 -0
  127. data/tracks/go/exercises/house/README.md +131 -0
  128. data/tracks/go/exercises/isogram/README.md +37 -0
  129. data/tracks/go/exercises/kindergarten-garden/README.md +84 -0
  130. data/tracks/go/exercises/largest-series-product/README.md +38 -0
  131. data/tracks/go/exercises/leap/README.md +51 -0
  132. data/tracks/go/exercises/ledger/README.md +36 -0
  133. data/tracks/go/exercises/luhn/README.md +89 -0
  134. data/tracks/go/exercises/matrix/README.md +63 -0
  135. data/tracks/go/exercises/meetup/README.md +48 -0
  136. data/tracks/go/exercises/minesweeper/README.md +48 -0
  137. data/tracks/go/exercises/nth-prime/README.md +33 -0
  138. data/tracks/go/exercises/nucleotide-count/README.md +51 -0
  139. data/tracks/go/exercises/ocr-numbers/README.md +103 -0
  140. data/tracks/go/exercises/octal/README.md +67 -0
  141. data/tracks/go/exercises/paasio/README.md +38 -0
  142. data/tracks/go/exercises/palindrome-products/README.md +58 -0
  143. data/tracks/go/exercises/pangram/README.md +33 -0
  144. data/tracks/go/exercises/parallel-letter-frequency/README.md +29 -0
  145. data/tracks/go/exercises/pascals-triangle/README.md +39 -0
  146. data/tracks/go/exercises/perfect-numbers/README.md +42 -0
  147. data/tracks/go/exercises/phone-number/README.md +52 -0
  148. data/tracks/go/exercises/pig-latin/README.md +42 -0
  149. data/tracks/go/exercises/poker/README.md +30 -0
  150. data/tracks/go/exercises/pov/README.md +64 -0
  151. data/tracks/go/exercises/prime-factors/README.md +54 -0
  152. data/tracks/go/exercises/protein-translation/README.md +67 -0
  153. data/tracks/go/exercises/pythagorean-triplet/README.md +42 -0
  154. data/tracks/go/exercises/queen-attack/README.md +51 -0
  155. data/tracks/go/exercises/raindrops/README.md +42 -0
  156. data/tracks/go/exercises/react/README.md +37 -0
  157. data/tracks/go/exercises/rna-transcription/README.md +43 -0
  158. data/tracks/go/exercises/robot-name/README.md +40 -0
  159. data/tracks/go/exercises/robot-simulator/README.md +52 -0
  160. data/tracks/go/exercises/roman-numerals/README.md +67 -0
  161. data/tracks/go/exercises/saddle-points/README.md +51 -0
  162. data/tracks/go/exercises/say/README.md +87 -0
  163. data/tracks/go/exercises/scrabble-score/README.md +62 -0
  164. data/tracks/go/exercises/secret-handshake/README.md +53 -0
  165. data/tracks/go/exercises/series/README.md +45 -0
  166. data/tracks/go/exercises/sieve/README.md +52 -0
  167. data/tracks/go/exercises/simple-cipher/README.md +108 -0
  168. data/tracks/go/exercises/strain/README.md +58 -0
  169. data/tracks/go/exercises/sum-of-multiples/README.md +36 -0
  170. data/tracks/go/exercises/tournament/README.md +86 -0
  171. data/tracks/go/exercises/transpose/README.md +83 -0
  172. data/tracks/go/exercises/tree-building/README.md +48 -0
  173. data/tracks/go/exercises/triangle/README.md +44 -0
  174. data/tracks/go/exercises/trinary/README.md +46 -0
  175. data/tracks/go/exercises/twelve-days/README.md +57 -0
  176. data/tracks/go/exercises/variable-length-quantity/README.md +57 -0
  177. data/tracks/go/exercises/word-count/README.md +37 -0
  178. data/tracks/go/exercises/word-search/README.md +48 -0
  179. data/tracks/go/exercises/wordy/README.md +81 -0
  180. data/tracks/haskell/README.md +2 -2
  181. data/tracks/haskell/exercises/beer-song/test/Tests.hs +1 -1
  182. data/tracks/haskell/exercises/food-chain/test/Tests.hs +1 -1
  183. data/tracks/haskell/exercises/house/test/Tests.hs +1 -1
  184. data/tracks/haskell/exercises/say/test/Tests.hs +1 -1
  185. data/tracks/java/config.json +10 -10
  186. data/tracks/java/exercises/rotational-cipher/src/example/java/RotationalCipher.java +5 -8
  187. data/tracks/java/exercises/rotational-cipher/src/test/java/RotationalCipherTest.java +3 -6
  188. data/tracks/javascript/config.json +397 -140
  189. data/tracks/kotlin/config.json +248 -63
  190. data/tracks/kotlin/config/exercise_readme.go.tmpl +16 -0
  191. data/tracks/kotlin/exercises/accumulate/README.md +38 -0
  192. data/tracks/kotlin/exercises/acronym/README.md +18 -0
  193. data/tracks/kotlin/exercises/all-your-base/README.md +38 -0
  194. data/tracks/kotlin/exercises/allergies/README.md +40 -0
  195. data/tracks/kotlin/exercises/anagram/README.md +16 -0
  196. data/tracks/kotlin/exercises/atbash-cipher/README.md +37 -0
  197. data/tracks/kotlin/exercises/bank-account/README.md +33 -0
  198. data/tracks/kotlin/exercises/beer-song/README.md +330 -0
  199. data/tracks/kotlin/exercises/binary-search/README.md +44 -0
  200. data/tracks/kotlin/exercises/binary/README.md +38 -0
  201. data/tracks/kotlin/exercises/bob/README.md +21 -0
  202. data/tracks/kotlin/exercises/bracket-push/README.md +13 -0
  203. data/tracks/kotlin/exercises/change/README.md +26 -0
  204. data/tracks/kotlin/exercises/clock/README.md +16 -0
  205. data/tracks/kotlin/exercises/collatz-conjecture/README.md +36 -0
  206. data/tracks/kotlin/exercises/complex-numbers/README.md +14 -0
  207. data/tracks/kotlin/exercises/diamond/README.md +62 -0
  208. data/tracks/kotlin/exercises/difference-of-squares/README.md +22 -0
  209. data/tracks/kotlin/exercises/etl/README.md +54 -0
  210. data/tracks/kotlin/exercises/flatten-array/README.md +21 -0
  211. data/tracks/kotlin/exercises/gigasecond/README.md +14 -0
  212. data/tracks/kotlin/exercises/grade-school/README.md +45 -0
  213. data/tracks/kotlin/exercises/grains/README.md +37 -0
  214. data/tracks/kotlin/exercises/hamming/README.md +45 -0
  215. data/tracks/kotlin/exercises/hello-world/README.md +24 -0
  216. data/tracks/kotlin/exercises/hexadecimal/README.md +17 -0
  217. data/tracks/kotlin/exercises/isogram/README.md +22 -0
  218. data/tracks/kotlin/exercises/largest-series-product/README.md +23 -0
  219. data/tracks/kotlin/exercises/leap/README.md +36 -0
  220. data/tracks/kotlin/exercises/linked-list/README.md +37 -0
  221. data/tracks/kotlin/exercises/list-ops/README.md +20 -0
  222. data/tracks/kotlin/exercises/luhn/README.md +74 -0
  223. data/tracks/kotlin/exercises/minesweeper/README.md +33 -0
  224. data/tracks/kotlin/exercises/nth-prime/README.md +18 -0
  225. data/tracks/kotlin/exercises/nucleotide-count/README.md +36 -0
  226. data/tracks/kotlin/exercises/pangram/README.md +18 -0
  227. data/tracks/kotlin/exercises/pascals-triangle/README.md +24 -0
  228. data/tracks/kotlin/exercises/perfect-numbers/README.md +27 -0
  229. data/tracks/kotlin/exercises/phone-number/README.md +37 -0
  230. data/tracks/kotlin/exercises/pig-latin/README.md +27 -0
  231. data/tracks/kotlin/exercises/prime-factors/README.md +39 -0
  232. data/tracks/kotlin/exercises/raindrops/README.md +27 -0
  233. data/tracks/kotlin/exercises/react/README.md +22 -0
  234. data/tracks/kotlin/exercises/rna-transcription/README.md +28 -0
  235. data/tracks/kotlin/exercises/robot-name/README.md +25 -0
  236. data/tracks/kotlin/exercises/robot-simulator/README.md +37 -0
  237. data/tracks/kotlin/exercises/roman-numerals/README.md +52 -0
  238. data/tracks/kotlin/exercises/saddle-points/README.md +36 -0
  239. data/tracks/kotlin/exercises/scrabble-score/README.md +47 -0
  240. data/tracks/kotlin/exercises/secret-handshake/README.md +38 -0
  241. data/tracks/kotlin/exercises/series/README.md +30 -0
  242. data/tracks/kotlin/exercises/sieve/README.md +37 -0
  243. data/tracks/kotlin/exercises/simple-cipher/README.md +93 -0
  244. data/tracks/kotlin/exercises/space-age/README.md +27 -0
  245. data/tracks/kotlin/exercises/spiral-matrix/README.md +33 -0
  246. data/tracks/kotlin/exercises/strain/README.md +43 -0
  247. data/tracks/kotlin/exercises/sublist/README.md +24 -0
  248. data/tracks/kotlin/exercises/sum-of-multiples/README.md +21 -0
  249. data/tracks/kotlin/exercises/triangle/README.md +29 -0
  250. data/tracks/kotlin/exercises/word-count/README.md +22 -0
  251. data/tracks/ocaml/config/exercise_readme.go.tmpl +16 -0
  252. data/tracks/ocaml/exercises/acronym/README.md +55 -0
  253. data/tracks/ocaml/exercises/all-your-base/README.md +75 -0
  254. data/tracks/ocaml/exercises/anagram/README.md +53 -0
  255. data/tracks/ocaml/exercises/atbash-cipher/README.md +93 -0
  256. data/tracks/ocaml/exercises/beer-song/README.md +367 -0
  257. data/tracks/ocaml/exercises/binary-search/README.md +81 -0
  258. data/tracks/ocaml/exercises/bob/README.md +87 -0
  259. data/tracks/ocaml/exercises/bowling/README.md +93 -0
  260. data/tracks/ocaml/exercises/bracket-push/README.md +50 -0
  261. data/tracks/ocaml/exercises/change/README.md +63 -0
  262. data/tracks/ocaml/exercises/connect/README.md +74 -0
  263. data/tracks/ocaml/exercises/custom-set/README.md +51 -0
  264. data/tracks/ocaml/exercises/difference-of-squares/README.md +59 -0
  265. data/tracks/ocaml/exercises/dominoes/README.md +58 -0
  266. data/tracks/ocaml/exercises/etl/README.md +91 -0
  267. data/tracks/ocaml/exercises/forth/README.md +69 -0
  268. data/tracks/ocaml/exercises/grade-school/README.md +82 -0
  269. data/tracks/ocaml/exercises/hamming/README.md +82 -0
  270. data/tracks/ocaml/exercises/hangman/README.md +61 -0
  271. data/tracks/ocaml/exercises/hello-world/README.md +61 -0
  272. data/tracks/ocaml/exercises/hexadecimal/README.md +54 -0
  273. data/tracks/ocaml/exercises/leap/README.md +73 -0
  274. data/tracks/ocaml/exercises/list-ops/README.md +50 -0
  275. data/tracks/ocaml/exercises/luhn/README.md +111 -0
  276. data/tracks/ocaml/exercises/meetup/README.md +70 -0
  277. data/tracks/ocaml/exercises/minesweeper/README.md +70 -0
  278. data/tracks/ocaml/exercises/nucleotide-count/README.md +73 -0
  279. data/tracks/ocaml/exercises/pangram/README.md +55 -0
  280. data/tracks/ocaml/exercises/phone-number/README.md +74 -0
  281. data/tracks/ocaml/exercises/point-mutations/README.md +81 -0
  282. data/tracks/ocaml/exercises/prime-factors/README.md +76 -0
  283. data/tracks/ocaml/exercises/raindrops/README.md +64 -0
  284. data/tracks/ocaml/exercises/react/README.md +59 -0
  285. data/tracks/ocaml/exercises/rna-transcription/README.md +65 -0
  286. data/tracks/ocaml/exercises/robot-name/README.md +62 -0
  287. data/tracks/ocaml/exercises/roman-numerals/README.md +89 -0
  288. data/tracks/ocaml/exercises/run-length-encoding/README.md +70 -0
  289. data/tracks/ocaml/exercises/say/README.md +109 -0
  290. data/tracks/ocaml/exercises/space-age/README.md +64 -0
  291. data/tracks/ocaml/exercises/triangle/README.md +66 -0
  292. data/tracks/ocaml/exercises/word-count/README.md +59 -0
  293. data/tracks/ocaml/exercises/zipper/README.md +71 -0
  294. data/tracks/perl5/README.md +1 -1
  295. data/tracks/perl5/config/exercise_readme.go.tmpl +16 -0
  296. data/tracks/perl5/exercises/accumulate/README.md +35 -0
  297. data/tracks/perl5/exercises/all-your-base/README.md +35 -0
  298. data/tracks/perl5/exercises/allergies/README.md +37 -0
  299. data/tracks/perl5/exercises/anagram/README.md +13 -0
  300. data/tracks/perl5/exercises/atbash-cipher/README.md +34 -0
  301. data/tracks/perl5/exercises/beer-song/README.md +327 -0
  302. data/tracks/perl5/exercises/binary-search-tree/README.md +60 -0
  303. data/tracks/perl5/exercises/binary-search/README.md +41 -0
  304. data/tracks/perl5/exercises/binary/README.md +35 -0
  305. data/tracks/perl5/exercises/bob/README.md +18 -0
  306. data/tracks/perl5/exercises/clock/README.md +13 -0
  307. data/tracks/perl5/exercises/crypto-square/README.md +74 -0
  308. data/tracks/perl5/exercises/custom-set/README.md +11 -0
  309. data/tracks/perl5/exercises/difference-of-squares/README.md +19 -0
  310. data/tracks/perl5/exercises/etl/README.md +51 -0
  311. data/tracks/perl5/exercises/food-chain/README.md +70 -0
  312. data/tracks/perl5/exercises/gigasecond/README.md +11 -0
  313. data/tracks/perl5/exercises/grade-school/README.md +42 -0
  314. data/tracks/perl5/exercises/grains/README.md +34 -0
  315. data/tracks/perl5/exercises/hamming/README.md +42 -0
  316. data/tracks/perl5/exercises/hello-world/README.md +21 -0
  317. data/tracks/perl5/exercises/hexadecimal/README.md +14 -0
  318. data/tracks/perl5/exercises/house/README.md +113 -0
  319. data/tracks/perl5/exercises/kindergarten-garden/README.md +66 -0
  320. data/tracks/perl5/exercises/largest-series-product/README.md +20 -0
  321. data/tracks/perl5/exercises/leap/README.md +33 -0
  322. data/tracks/perl5/exercises/linked-list/README.md +34 -0
  323. data/tracks/perl5/exercises/list-ops/README.md +10 -0
  324. data/tracks/perl5/exercises/luhn/Example.pm +20 -42
  325. data/tracks/perl5/exercises/luhn/Luhn.pm +9 -0
  326. data/tracks/perl5/exercises/luhn/README.md +71 -0
  327. data/tracks/perl5/exercises/luhn/example.yaml +38 -0
  328. data/tracks/perl5/exercises/luhn/luhn.t +127 -26
  329. data/tracks/perl5/exercises/matrix/README.md +45 -0
  330. data/tracks/perl5/exercises/meetup/README.md +30 -0
  331. data/tracks/perl5/exercises/minesweeper/README.md +30 -0
  332. data/tracks/perl5/exercises/nucleotide-count/README.md +33 -0
  333. data/tracks/perl5/exercises/ocr-numbers/README.md +85 -0
  334. data/tracks/perl5/exercises/palindrome-products/README.md +40 -0
  335. data/tracks/perl5/exercises/pascals-triangle/README.md +21 -0
  336. data/tracks/perl5/exercises/phone-number/Example.pm +6 -26
  337. data/tracks/perl5/exercises/phone-number/PhoneNumber.pm +5 -0
  338. data/tracks/perl5/exercises/phone-number/README.md +34 -0
  339. data/tracks/perl5/exercises/phone-number/example.yaml +15 -0
  340. data/tracks/perl5/exercises/phone-number/phone-number.t +138 -0
  341. data/tracks/perl5/exercises/pig-latin/README.md +24 -0
  342. data/tracks/perl5/exercises/point-mutations/README.md +41 -0
  343. data/tracks/perl5/exercises/prime-factors/README.md +36 -0
  344. data/tracks/perl5/exercises/proverb/README.md +18 -0
  345. data/tracks/perl5/exercises/pythagorean-triplet/README.md +24 -0
  346. data/tracks/perl5/exercises/queen-attack/README.md +33 -0
  347. data/tracks/perl5/exercises/raindrops/README.md +24 -0
  348. data/tracks/perl5/exercises/rna-transcription/README.md +25 -0
  349. data/tracks/perl5/exercises/robot-name/README.md +22 -0
  350. data/tracks/perl5/exercises/robot-simulator/README.md +34 -0
  351. data/tracks/perl5/exercises/roman-numerals/README.md +49 -0
  352. data/tracks/perl5/exercises/saddle-points/README.md +33 -0
  353. data/tracks/perl5/exercises/say/README.md +69 -0
  354. data/tracks/perl5/exercises/scrabble-score/README.md +44 -0
  355. data/tracks/perl5/exercises/secret-handshake/README.md +35 -0
  356. data/tracks/perl5/exercises/series/README.md +27 -0
  357. data/tracks/perl5/exercises/sieve/README.md +34 -0
  358. data/tracks/perl5/exercises/simple-cipher/README.md +90 -0
  359. data/tracks/perl5/exercises/simple-linked-list/README.md +28 -0
  360. data/tracks/perl5/exercises/space-age/README.md +24 -0
  361. data/tracks/perl5/exercises/strain/README.md +40 -0
  362. data/tracks/perl5/exercises/sublist/README.md +21 -0
  363. data/tracks/perl5/exercises/sum-of-multiples/README.md +18 -0
  364. data/tracks/perl5/exercises/triangle/README.md +26 -0
  365. data/tracks/perl5/exercises/trinary/README.md +28 -0
  366. data/tracks/perl5/exercises/twelve-days/README.md +35 -0
  367. data/tracks/perl5/exercises/word-count/README.md +19 -0
  368. data/tracks/perl5/exercises/wordy/README.md +63 -0
  369. data/tracks/perl6/README.md +1 -1
  370. data/tracks/perl6/config/exercise_readme.go.tmpl +16 -0
  371. data/tracks/perl6/exercises/accumulate/README.md +50 -0
  372. data/tracks/perl6/exercises/all-your-base/README.md +50 -0
  373. data/tracks/perl6/exercises/allergies/README.md +52 -0
  374. data/tracks/perl6/exercises/anagram/README.md +28 -0
  375. data/tracks/perl6/exercises/atbash-cipher/README.md +49 -0
  376. data/tracks/perl6/exercises/binary/README.md +50 -0
  377. data/tracks/perl6/exercises/bob/README.md +33 -0
  378. data/tracks/perl6/exercises/clock/README.md +28 -0
  379. data/tracks/perl6/exercises/flatten-array/README.md +33 -0
  380. data/tracks/perl6/exercises/grade-school/README.md +57 -0
  381. data/tracks/perl6/exercises/grains/README.md +49 -0
  382. data/tracks/perl6/exercises/hello-world/README.md +36 -0
  383. data/tracks/perl6/exercises/leap/README.md +48 -0
  384. data/tracks/perl6/exercises/linked-list/README.md +49 -0
  385. data/tracks/perl6/exercises/linked-list/example.yaml +1 -1
  386. data/tracks/perl6/exercises/linked-list/linked-list.t +1 -1
  387. data/tracks/perl6/exercises/luhn/README.md +86 -0
  388. data/tracks/perl6/exercises/phone-number/README.md +49 -0
  389. data/tracks/perl6/exercises/raindrops/README.md +39 -0
  390. data/tracks/perl6/exercises/rna-transcription/README.md +40 -0
  391. data/tracks/perl6/exercises/robot-name/README.md +37 -0
  392. data/tracks/perl6/exercises/scrabble-score/README.md +59 -0
  393. data/tracks/perl6/exercises/space-age/README.md +39 -0
  394. data/tracks/perl6/exercises/trinary/README.md +43 -0
  395. data/tracks/perl6/exercises/word-count/README.md +34 -0
  396. data/tracks/perl6/exercises/wordy/README.md +78 -0
  397. data/tracks/php/config.json +156 -3
  398. data/tracks/php/config/exercise_readme.go.tmpl +16 -0
  399. data/tracks/php/exercises/accumulate/README.md +50 -0
  400. data/tracks/php/exercises/acronym/README.md +30 -0
  401. data/tracks/php/exercises/allergies/README.md +52 -0
  402. data/tracks/php/exercises/anagram/README.md +28 -0
  403. data/tracks/php/exercises/atbash-cipher/README.md +49 -0
  404. data/tracks/php/exercises/beer-song/README.md +342 -0
  405. data/tracks/php/exercises/binary-search/README.md +56 -0
  406. data/tracks/php/exercises/binary/README.md +50 -0
  407. data/tracks/php/exercises/bob/README.md +36 -0
  408. data/tracks/php/exercises/book-store/README.md +89 -0
  409. data/tracks/php/exercises/bowling/README.md +68 -0
  410. data/tracks/php/exercises/bracket-push/README.md +25 -0
  411. data/tracks/php/exercises/change/README.md +38 -0
  412. data/tracks/php/exercises/clock/README.md +28 -0
  413. data/tracks/php/exercises/connect/README.md +49 -0
  414. data/tracks/php/exercises/difference-of-squares/README.md +34 -0
  415. data/tracks/php/exercises/etl/README.md +66 -0
  416. data/tracks/php/exercises/gigasecond/README.md +26 -0
  417. data/tracks/php/exercises/grade-school/README.md +57 -0
  418. data/tracks/php/exercises/grains/README.md +49 -0
  419. data/tracks/php/exercises/hamming/README.md +57 -0
  420. data/tracks/php/exercises/hello-world/README.md +36 -0
  421. data/tracks/php/exercises/isogram/README.md +34 -0
  422. data/tracks/php/exercises/largest-series-product/README.md +35 -0
  423. data/tracks/php/exercises/leap/README.md +48 -0
  424. data/tracks/php/exercises/luhn/README.md +86 -0
  425. data/tracks/php/exercises/markdown/README.md +33 -0
  426. data/tracks/php/exercises/minesweeper/README.md +45 -0
  427. data/tracks/php/exercises/nth-prime/README.md +30 -0
  428. data/tracks/php/exercises/nucleotide-count/README.md +48 -0
  429. data/tracks/php/exercises/ocr-numbers/README.md +100 -0
  430. data/tracks/php/exercises/pangram/README.md +30 -0
  431. data/tracks/php/exercises/pascals-triangle/README.md +36 -0
  432. data/tracks/php/exercises/perfect-numbers/README.md +39 -0
  433. data/tracks/php/exercises/phone-number/README.md +49 -0
  434. data/tracks/php/exercises/pig-latin/README.md +39 -0
  435. data/tracks/php/exercises/prime-factors/README.md +51 -0
  436. data/tracks/php/exercises/queen-attack/README.md +48 -0
  437. data/tracks/php/exercises/raindrops/README.md +39 -0
  438. data/tracks/php/exercises/rna-transcription/README.md +40 -0
  439. data/tracks/php/exercises/robot-name/README.md +37 -0
  440. data/tracks/php/exercises/robot-simulator/README.md +49 -0
  441. data/tracks/php/exercises/roman-numerals/README.md +64 -0
  442. data/tracks/php/exercises/scrabble-score/README.md +59 -0
  443. data/tracks/php/exercises/sieve/README.md +49 -0
  444. data/tracks/php/exercises/space-age/README.md +39 -0
  445. data/tracks/php/exercises/sum-of-multiples/README.md +33 -0
  446. data/tracks/php/exercises/triangle/README.md +41 -0
  447. data/tracks/php/exercises/trinary/README.md +43 -0
  448. data/tracks/php/exercises/variable-length-quantity/README.md +54 -0
  449. data/tracks/php/exercises/word-count/README.md +34 -0
  450. data/tracks/php/exercises/wordy/README.md +78 -0
  451. data/tracks/rust/exercises/grains/tests/grains.rs +0 -1
  452. data/tracks/sml/config/exercise_readme.go.tmpl +16 -0
  453. data/tracks/sml/exercises/accumulate/README.md +49 -0
  454. data/tracks/sml/exercises/allergies/README.md +51 -0
  455. data/tracks/sml/exercises/anagram/README.md +27 -0
  456. data/tracks/sml/exercises/binary/README.md +49 -0
  457. data/tracks/sml/exercises/flatten-array/README.md +32 -0
  458. data/tracks/sml/exercises/hamming/README.md +56 -0
  459. data/tracks/sml/exercises/nth-prime/README.md +29 -0
  460. data/tracks/sml/exercises/raindrops/README.md +38 -0
  461. metadata +433 -4
  462. data/tracks/perl5/exercises/phone-number/cases.json +0 -44
  463. data/tracks/perl5/exercises/phone-number/phone.t +0 -43
@@ -3,103 +3,136 @@
3
3
  "language": "Kotlin",
4
4
  "repository": "https://github.com/exercism/kotlin",
5
5
  "active": true,
6
- "deprecated": [
7
- "accumulate",
8
- "binary",
9
- "hexadecimal",
10
- "strain"
11
- ],
12
6
  "foregone": [
13
7
 
14
8
  ],
15
9
  "exercises": [
16
10
  {
17
- "difficulty": 1,
11
+ "uuid": "58c16459-348a-4536-8228-43379174735e",
18
12
  "slug": "hello-world",
13
+ "core": false,
14
+ "unlocked_by": null,
15
+ "difficulty": 1,
19
16
  "topics": [
20
17
 
21
18
  ]
22
19
  },
23
20
  {
24
- "difficulty": 2,
21
+ "uuid": "9772c916-c619-445c-834d-af7dbf1ad2d9",
25
22
  "slug": "rna-transcription",
23
+ "core": false,
24
+ "unlocked_by": null,
25
+ "difficulty": 2,
26
26
  "topics": [
27
27
 
28
28
  ]
29
29
  },
30
30
  {
31
- "difficulty": 3,
31
+ "uuid": "0e9ca09d-c32e-4fed-930f-1b7c10b67dc2",
32
32
  "slug": "pangram",
33
+ "core": false,
34
+ "unlocked_by": null,
35
+ "difficulty": 3,
33
36
  "topics": [
34
37
 
35
38
  ]
36
39
  },
37
40
  {
38
- "difficulty": 3,
41
+ "uuid": "7151ff23-ebc6-43d7-86b6-81cf0dd45309",
39
42
  "slug": "hamming",
43
+ "core": false,
44
+ "unlocked_by": null,
45
+ "difficulty": 3,
40
46
  "topics": [
41
47
 
42
48
  ]
43
49
  },
44
50
  {
45
- "difficulty": 3,
51
+ "uuid": "1eb4c9d3-0085-4ca3-b1bb-9a20b88a1e7f",
46
52
  "slug": "gigasecond",
53
+ "core": false,
54
+ "unlocked_by": null,
55
+ "difficulty": 3,
47
56
  "topics": [
48
57
 
49
58
  ]
50
59
  },
51
60
  {
52
- "difficulty": 3,
61
+ "uuid": "a91ce7e9-9a2a-44de-b10c-cc1be63df2a1",
53
62
  "slug": "space-age",
63
+ "core": false,
64
+ "unlocked_by": null,
65
+ "difficulty": 3,
54
66
  "topics": [
55
67
 
56
68
  ]
57
69
  },
58
70
  {
59
- "difficulty": 3,
71
+ "uuid": "d8288e46-2e8c-42e4-8e14-20b1efd0f574",
60
72
  "slug": "acronym",
73
+ "core": false,
74
+ "unlocked_by": null,
75
+ "difficulty": 3,
61
76
  "topics": [
62
77
 
63
78
  ]
64
79
  },
65
80
  {
66
- "difficulty": 3,
81
+ "uuid": "4d8a68eb-eee9-4c51-97b8-57f3b69f5970",
67
82
  "slug": "scrabble-score",
83
+ "core": false,
84
+ "unlocked_by": null,
85
+ "difficulty": 3,
68
86
  "topics": [
69
87
 
70
88
  ]
71
89
  },
72
90
  {
73
- "difficulty": 3,
91
+ "uuid": "93ee76ba-d19f-4c72-b011-676f40dcda5e",
74
92
  "slug": "raindrops",
93
+ "core": false,
94
+ "unlocked_by": null,
95
+ "difficulty": 3,
75
96
  "topics": [
76
97
 
77
98
  ]
78
99
  },
79
100
  {
80
- "difficulty": 3,
101
+ "uuid": "d54a68fc-02dd-45ee-8c6f-3efb781ed0d2",
81
102
  "slug": "difference-of-squares",
103
+ "core": false,
104
+ "unlocked_by": null,
105
+ "difficulty": 3,
82
106
  "topics": [
83
107
 
84
108
  ]
85
109
  },
86
110
  {
87
- "difficulty": 3,
111
+ "uuid": "feee3ee9-81d5-4a4f-ad98-e1ecf21757ed",
88
112
  "slug": "secret-handshake",
113
+ "core": false,
114
+ "unlocked_by": null,
115
+ "difficulty": 3,
89
116
  "topics": [
90
117
 
91
118
  ]
92
119
  },
93
120
  {
94
- "difficulty": 3,
121
+ "uuid": "ad7c8fd8-acf0-40d0-8a30-d959c4b0252a",
95
122
  "slug": "perfect-numbers",
123
+ "core": false,
124
+ "unlocked_by": null,
125
+ "difficulty": 3,
96
126
  "topics": [
97
127
 
98
128
  ]
99
129
  },
100
130
  {
101
- "difficulty": 4,
131
+ "uuid": "d3f960e5-cf19-4308-a1bc-897777f62689",
102
132
  "slug": "sum-of-multiples",
133
+ "core": false,
134
+ "unlocked_by": null,
135
+ "difficulty": 4,
103
136
  "topics": [
104
137
  "Ranges",
105
138
  "Collections",
@@ -107,288 +140,411 @@
107
140
  ]
108
141
  },
109
142
  {
110
- "difficulty": 4,
143
+ "uuid": "3cf8a650-6a25-416e-a0af-036f41c11cca",
111
144
  "slug": "luhn",
145
+ "core": false,
146
+ "unlocked_by": null,
147
+ "difficulty": 4,
112
148
  "topics": [
113
149
 
114
150
  ]
115
151
  },
116
152
  {
117
- "difficulty": 4,
153
+ "uuid": "e282536b-267f-490c-a453-758135051a54",
118
154
  "slug": "triangle",
155
+ "core": false,
156
+ "unlocked_by": null,
157
+ "difficulty": 4,
119
158
  "topics": [
120
159
 
121
160
  ]
122
161
  },
123
162
  {
124
- "difficulty": 4,
163
+ "uuid": "aa11e242-77b9-4ba7-97a2-d9b36e454a9d",
125
164
  "slug": "largest-series-product",
165
+ "core": false,
166
+ "unlocked_by": null,
167
+ "difficulty": 4,
126
168
  "topics": [
127
169
 
128
170
  ]
129
171
  },
130
172
  {
131
- "difficulty": 4,
173
+ "uuid": "1fa1e0f9-6410-4197-8778-debeb274e6d4",
132
174
  "slug": "grains",
175
+ "core": false,
176
+ "unlocked_by": null,
177
+ "difficulty": 4,
133
178
  "topics": [
134
179
 
135
180
  ]
136
181
  },
137
182
  {
138
- "difficulty": 4,
183
+ "uuid": "87ca4323-8a19-4529-962d-0f2ee63ebb2f",
139
184
  "slug": "sieve",
185
+ "core": false,
186
+ "unlocked_by": null,
187
+ "difficulty": 4,
140
188
  "topics": [
141
189
 
142
190
  ]
143
191
  },
144
192
  {
145
- "difficulty": 4,
193
+ "uuid": "ab52d0f4-a001-4d44-951e-0cfc396374f3",
146
194
  "slug": "collatz-conjecture",
195
+ "core": false,
196
+ "unlocked_by": null,
197
+ "difficulty": 4,
147
198
  "topics": [
148
199
 
149
200
  ]
150
201
  },
151
202
  {
152
- "difficulty": 4,
203
+ "uuid": "b325401a-c8f0-49da-9f1a-a83318e780c9",
153
204
  "slug": "atbash-cipher",
205
+ "core": false,
206
+ "unlocked_by": null,
207
+ "difficulty": 4,
154
208
  "topics": [
155
209
 
156
210
  ]
157
211
  },
158
212
  {
159
- "difficulty": 4,
213
+ "uuid": "6e2bbe8d-b6ab-4675-9c31-5b437cefd0c4",
160
214
  "slug": "nth-prime",
215
+ "core": false,
216
+ "unlocked_by": null,
217
+ "difficulty": 4,
161
218
  "topics": [
162
219
 
163
220
  ]
164
221
  },
165
222
  {
166
- "difficulty": 4,
223
+ "uuid": "371901d4-0728-4abd-8374-1905d7d70329",
167
224
  "slug": "saddle-points",
225
+ "core": false,
226
+ "unlocked_by": null,
227
+ "difficulty": 4,
168
228
  "topics": [
169
229
 
170
230
  ]
171
231
  },
172
232
  {
173
- "difficulty": 4,
233
+ "uuid": "03c71e34-ecaf-47a4-9854-48600e1bf0d4",
174
234
  "slug": "diamond",
235
+ "core": false,
236
+ "unlocked_by": null,
237
+ "difficulty": 4,
175
238
  "topics": [
176
239
 
177
240
  ]
178
241
  },
179
242
  {
180
- "difficulty": 4,
243
+ "uuid": "e5338be9-6f51-4448-9b10-20de7b1338b9",
181
244
  "slug": "isogram",
245
+ "core": false,
246
+ "unlocked_by": null,
247
+ "difficulty": 4,
182
248
  "topics": [
183
249
 
184
250
  ]
185
251
  },
186
252
  {
187
- "difficulty": 5,
253
+ "uuid": "c67907b6-0d8b-4b12-9c41-6069845952a3",
188
254
  "slug": "flatten-array",
255
+ "core": false,
256
+ "unlocked_by": null,
257
+ "difficulty": 5,
189
258
  "topics": [
190
259
 
191
260
  ]
192
261
  },
193
262
  {
194
- "difficulty": 5,
263
+ "uuid": "cb2ce8e5-f143-4423-a3bc-959f4222c186",
195
264
  "slug": "pig-latin",
265
+ "core": false,
266
+ "unlocked_by": null,
267
+ "difficulty": 5,
196
268
  "topics": [
197
269
 
198
270
  ]
199
271
  },
200
272
  {
201
- "difficulty": 5,
273
+ "uuid": "2c8c1c16-bbb8-49e5-a248-f7a473c2bc86",
202
274
  "slug": "phone-number",
275
+ "core": false,
276
+ "unlocked_by": null,
277
+ "difficulty": 5,
203
278
  "topics": [
204
279
 
205
280
  ]
206
281
  },
207
282
  {
208
- "difficulty": 5,
283
+ "uuid": "62bd648a-e959-4ec4-8a5f-09e08fa0b2c8",
209
284
  "slug": "nucleotide-count",
285
+ "core": false,
286
+ "unlocked_by": null,
287
+ "difficulty": 5,
210
288
  "topics": [
211
289
 
212
290
  ]
213
291
  },
214
292
  {
215
- "difficulty": 5,
293
+ "uuid": "3b8b77ef-da2d-499d-9513-8fe771e86b3e",
216
294
  "slug": "word-count",
295
+ "core": false,
296
+ "unlocked_by": null,
297
+ "difficulty": 5,
217
298
  "topics": [
218
299
 
219
300
  ]
220
301
  },
221
302
  {
222
- "difficulty": 5,
303
+ "uuid": "e3407da5-0524-4565-b724-9778bba1033f",
223
304
  "slug": "spiral-matrix",
305
+ "core": false,
306
+ "unlocked_by": null,
307
+ "difficulty": 5,
224
308
  "topics": [
225
309
 
226
310
  ]
227
311
  },
228
312
  {
229
- "difficulty": 5,
313
+ "uuid": "ce475b23-5dfc-4049-90c5-0c387926686f",
230
314
  "slug": "robot-name",
315
+ "core": false,
316
+ "unlocked_by": null,
317
+ "difficulty": 5,
231
318
  "topics": [
232
319
 
233
320
  ]
234
321
  },
235
322
  {
236
- "difficulty": 5,
323
+ "uuid": "0e92ba19-2727-4a5e-be38-e88878322c53",
237
324
  "slug": "prime-factors",
325
+ "core": false,
326
+ "unlocked_by": null,
327
+ "difficulty": 5,
238
328
  "topics": [
239
329
 
240
330
  ]
241
331
  },
242
332
  {
243
- "difficulty": 5,
333
+ "uuid": "a826af04-b7f3-426e-9bce-42375d0d928b",
244
334
  "slug": "allergies",
335
+ "core": false,
336
+ "unlocked_by": null,
337
+ "difficulty": 5,
245
338
  "topics": [
246
339
 
247
340
  ]
248
341
  },
249
342
  {
250
- "difficulty": 5,
343
+ "uuid": "f3713067-7f37-4dd6-a189-c80f46dab8ec",
251
344
  "slug": "bob",
345
+ "core": false,
346
+ "unlocked_by": null,
347
+ "difficulty": 5,
252
348
  "topics": [
253
349
 
254
350
  ]
255
351
  },
256
352
  {
257
- "difficulty": 5,
353
+ "uuid": "67db30e4-b4d8-4224-b0f8-19a00af40387",
258
354
  "slug": "pascals-triangle",
355
+ "core": false,
356
+ "unlocked_by": null,
357
+ "difficulty": 5,
259
358
  "topics": [
260
359
 
261
360
  ]
262
361
  },
263
362
  {
264
- "difficulty": 5,
363
+ "uuid": "cbbbd7db-224f-45ca-a108-4dc6bc98e4a0",
265
364
  "slug": "bracket-push",
365
+ "core": false,
366
+ "unlocked_by": null,
367
+ "difficulty": 5,
266
368
  "topics": [
267
369
 
268
370
  ]
269
371
  },
270
372
  {
271
- "difficulty": 5,
373
+ "uuid": "9caa5fd9-a774-4d4c-951d-053a4f3f2726",
272
374
  "slug": "series",
375
+ "core": false,
376
+ "unlocked_by": null,
377
+ "difficulty": 5,
273
378
  "topics": [
274
379
 
275
380
  ]
276
381
  },
277
382
  {
278
- "difficulty": 5,
383
+ "uuid": "7c24087a-ca61-48d3-9cb9-c3fde2edba86",
279
384
  "slug": "rotational-cipher",
385
+ "core": false,
386
+ "unlocked_by": null,
387
+ "difficulty": 5,
280
388
  "topics": [
281
389
 
282
390
  ]
283
391
  },
284
392
  {
285
- "difficulty": 6,
393
+ "uuid": "da466ad5-6837-47d8-af39-2c0563d35a3c",
286
394
  "slug": "roman-numerals",
395
+ "core": false,
396
+ "unlocked_by": null,
397
+ "difficulty": 6,
287
398
  "topics": [
288
399
 
289
400
  ]
290
401
  },
291
402
  {
292
- "difficulty": 6,
403
+ "uuid": "34f0e7d0-29df-44e5-a7a7-4a12584af62e",
293
404
  "slug": "beer-song",
405
+ "core": false,
406
+ "unlocked_by": null,
407
+ "difficulty": 6,
294
408
  "topics": [
295
409
 
296
410
  ]
297
411
  },
298
412
  {
299
- "difficulty": 6,
413
+ "uuid": "f0f297f2-429f-4626-8b7f-0706a1e8f255",
300
414
  "slug": "etl",
415
+ "core": false,
416
+ "unlocked_by": null,
417
+ "difficulty": 6,
301
418
  "topics": [
302
419
 
303
420
  ]
304
421
  },
305
422
  {
306
- "difficulty": 6,
423
+ "uuid": "fc977979-c8a4-44b6-a685-c8a32bd12bc3",
307
424
  "slug": "linked-list",
425
+ "core": false,
426
+ "unlocked_by": null,
427
+ "difficulty": 6,
308
428
  "topics": [
309
429
 
310
430
  ]
311
431
  },
312
432
  {
313
- "difficulty": 6,
433
+ "uuid": "62eb71dd-18ba-427f-a27a-86e993b4055a",
314
434
  "slug": "grade-school",
435
+ "core": false,
436
+ "unlocked_by": null,
437
+ "difficulty": 6,
315
438
  "topics": [
316
439
 
317
440
  ]
318
441
  },
319
442
  {
320
- "difficulty": 6,
443
+ "uuid": "6e3b294b-16a3-4ebb-a78b-4bf7f6b96736",
321
444
  "slug": "robot-simulator",
445
+ "core": false,
446
+ "unlocked_by": null,
447
+ "difficulty": 6,
322
448
  "topics": [
323
449
 
324
450
  ]
325
451
  },
326
452
  {
327
- "difficulty": 6,
453
+ "uuid": "c8815b6c-19b8-4f4d-9be4-6717e933591a",
328
454
  "slug": "binary-search",
455
+ "core": false,
456
+ "unlocked_by": null,
457
+ "difficulty": 6,
329
458
  "topics": [
330
459
 
331
460
  ]
332
461
  },
333
462
  {
334
- "difficulty": 6,
463
+ "uuid": "8eb6f225-fa3d-4a33-b476-2cae45053c82",
335
464
  "slug": "minesweeper",
465
+ "core": false,
466
+ "unlocked_by": null,
467
+ "difficulty": 6,
336
468
  "topics": [
337
469
 
338
470
  ]
339
471
  },
340
472
  {
341
- "difficulty": 6,
473
+ "uuid": "19d00436-f26a-47ad-b13e-128181dc09f3",
342
474
  "slug": "all-your-base",
475
+ "core": false,
476
+ "unlocked_by": null,
477
+ "difficulty": 6,
343
478
  "topics": [
344
479
 
345
480
  ]
346
481
  },
347
482
  {
348
- "difficulty": 7,
483
+ "uuid": "f754e1cc-cb88-4776-ab11-3e6ae8362d5a",
349
484
  "slug": "anagram",
485
+ "core": false,
486
+ "unlocked_by": null,
487
+ "difficulty": 7,
350
488
  "topics": [
351
489
 
352
490
  ]
353
491
  },
354
492
  {
355
- "difficulty": 7,
493
+ "uuid": "ebfdf40a-1fde-4c88-aa93-95e3190f5261",
356
494
  "slug": "sublist",
495
+ "core": false,
496
+ "unlocked_by": null,
497
+ "difficulty": 7,
357
498
  "topics": [
358
499
 
359
500
  ]
360
501
  },
361
502
  {
362
- "difficulty": 7,
503
+ "uuid": "1dcefdea-5447-4622-a064-079aad781398",
363
504
  "slug": "clock",
505
+ "core": false,
506
+ "unlocked_by": null,
507
+ "difficulty": 7,
364
508
  "topics": [
365
509
 
366
510
  ]
367
511
  },
368
512
  {
369
- "difficulty": 8,
513
+ "uuid": "e23b06de-bd91-482f-9783-b0334b75b489",
370
514
  "slug": "simple-cipher",
515
+ "core": false,
516
+ "unlocked_by": null,
517
+ "difficulty": 8,
371
518
  "topics": [
372
519
 
373
520
  ]
374
521
  },
375
522
  {
376
- "difficulty": 8,
523
+ "uuid": "83dec96f-9cdf-4b9b-abc4-cbd2066d919a",
377
524
  "slug": "complex-numbers",
525
+ "core": false,
526
+ "unlocked_by": null,
527
+ "difficulty": 8,
378
528
  "topics": [
379
529
 
380
530
  ]
381
531
  },
382
532
  {
383
- "difficulty": 8,
533
+ "uuid": "0d69c1cd-f190-4b3b-8472-bf78c02acbc5",
384
534
  "slug": "change",
535
+ "core": false,
536
+ "unlocked_by": null,
537
+ "difficulty": 8,
385
538
  "topics": [
386
539
 
387
540
  ]
388
541
  },
389
542
  {
390
- "difficulty": 10,
543
+ "uuid": "240788cd-afa5-4fd6-8df0-a158239c0610",
391
544
  "slug": "react",
545
+ "core": false,
546
+ "unlocked_by": null,
547
+ "difficulty": 10,
392
548
  "topics": [
393
549
  "Reactive programming",
394
550
  "Generics",
@@ -397,25 +553,54 @@
397
553
  ]
398
554
  },
399
555
  {
400
- "difficulty": 1,
556
+ "uuid": "639e59b6-84aa-4f13-9718-537606703c43",
401
557
  "slug": "leap",
558
+ "core": false,
559
+ "unlocked_by": null,
560
+ "difficulty": 1,
402
561
  "topics": [
403
562
 
404
563
  ]
405
564
  },
406
565
  {
407
- "difficulty": 1,
566
+ "uuid": "34f1d5bf-f31f-415e-9905-4d48e6205d28",
408
567
  "slug": "list-ops",
568
+ "core": false,
569
+ "unlocked_by": null,
570
+ "difficulty": 1,
409
571
  "topics": [
410
572
 
411
573
  ]
412
574
  },
413
575
  {
414
- "difficulty": 1,
576
+ "uuid": "12e1d685-32be-4b2c-a40b-c68e5b60de1d",
415
577
  "slug": "bank-account",
578
+ "core": false,
579
+ "unlocked_by": null,
580
+ "difficulty": 1,
416
581
  "topics": [
417
582
  "Concurrency"
418
583
  ]
584
+ },
585
+ {
586
+ "uuid": "86015770-603b-44cf-aedf-f2a7cf79c841",
587
+ "slug": "accumulate",
588
+ "deprecated": true
589
+ },
590
+ {
591
+ "uuid": "def44955-c048-4b74-8777-2fb7d779b09e",
592
+ "slug": "binary",
593
+ "deprecated": true
594
+ },
595
+ {
596
+ "uuid": "13b1a62e-8e0e-4d57-b8c9-341b41f25cf5",
597
+ "slug": "hexadecimal",
598
+ "deprecated": true
599
+ },
600
+ {
601
+ "uuid": "8ae8492d-620c-4446-9928-5b4d78d496d9",
602
+ "slug": "strain",
603
+ "deprecated": true
419
604
  }
420
605
  ]
421
606
  }