trackler 2.2.0.4 → 2.2.0.5

Sign up to get free protection for your applications and to get access to all the features.
Files changed (486) hide show
  1. checksums.yaml +4 -4
  2. data/lib/trackler/version.rb +1 -1
  3. data/tracks/bash/config.json +10 -2
  4. data/tracks/bash/exercises/word-count/example.awk +12 -0
  5. data/tracks/bash/exercises/word-count/example.sh +21 -0
  6. data/tracks/c/config.json +0 -2
  7. data/tracks/ceylon/config.json +0 -2
  8. data/tracks/{erlang/exercises/all-your-base/.meta/readme.go.tmpl → clojure/config/exercise_readme.go.tmpl} +0 -1
  9. data/tracks/clojure/exercises/accumulate/README.md +35 -0
  10. data/tracks/clojure/exercises/acronym/README.md +15 -0
  11. data/tracks/clojure/exercises/all-your-base/README.md +35 -0
  12. data/tracks/clojure/exercises/allergies/README.md +37 -0
  13. data/tracks/clojure/exercises/anagram/README.md +13 -0
  14. data/tracks/clojure/exercises/atbash-cipher/README.md +34 -0
  15. data/tracks/clojure/exercises/bank-account/README.md +30 -0
  16. data/tracks/clojure/exercises/beer-song/README.md +327 -0
  17. data/tracks/clojure/exercises/binary/README.md +35 -0
  18. data/tracks/clojure/exercises/binary-search/README.md +41 -0
  19. data/tracks/clojure/exercises/binary-search-tree/README.md +60 -0
  20. data/tracks/clojure/exercises/bob/README.md +18 -0
  21. data/tracks/clojure/exercises/bracket-push/README.md +10 -0
  22. data/tracks/clojure/exercises/change/README.md +23 -0
  23. data/tracks/clojure/exercises/clock/README.md +13 -0
  24. data/tracks/clojure/exercises/crypto-square/README.md +74 -0
  25. data/tracks/clojure/exercises/difference-of-squares/README.md +19 -0
  26. data/tracks/clojure/exercises/etl/README.md +51 -0
  27. data/tracks/clojure/exercises/flatten-array/README.md +18 -0
  28. data/tracks/clojure/exercises/gigasecond/README.md +11 -0
  29. data/tracks/clojure/exercises/grade-school/README.md +42 -0
  30. data/tracks/clojure/exercises/grains/README.md +34 -0
  31. data/tracks/clojure/exercises/hamming/README.md +42 -0
  32. data/tracks/clojure/exercises/hello-world/README.md +51 -0
  33. data/tracks/clojure/exercises/hexadecimal/README.md +14 -0
  34. data/tracks/clojure/exercises/isogram/README.md +19 -0
  35. data/tracks/clojure/exercises/kindergarten-garden/README.md +66 -0
  36. data/tracks/clojure/exercises/largest-series-product/README.md +20 -0
  37. data/tracks/clojure/exercises/leap/README.md +33 -0
  38. data/tracks/clojure/exercises/luhn/README.md +71 -0
  39. data/tracks/clojure/exercises/meetup/README.md +30 -0
  40. data/tracks/clojure/exercises/minesweeper/README.md +30 -0
  41. data/tracks/clojure/exercises/nth-prime/README.md +15 -0
  42. data/tracks/clojure/exercises/nucleotide-count/README.md +33 -0
  43. data/tracks/clojure/exercises/octal/README.md +49 -0
  44. data/tracks/clojure/exercises/pangram/README.md +15 -0
  45. data/tracks/clojure/exercises/pascals-triangle/README.md +21 -0
  46. data/tracks/clojure/exercises/perfect-numbers/README.md +24 -0
  47. data/tracks/clojure/exercises/phone-number/README.md +34 -0
  48. data/tracks/clojure/exercises/pig-latin/README.md +24 -0
  49. data/tracks/clojure/exercises/pov/README.md +46 -0
  50. data/tracks/clojure/exercises/prime-factors/README.md +36 -0
  51. data/tracks/clojure/exercises/queen-attack/README.md +33 -0
  52. data/tracks/clojure/exercises/raindrops/README.md +24 -0
  53. data/tracks/clojure/exercises/rna-transcription/README.md +25 -0
  54. data/tracks/clojure/exercises/robot-name/README.md +22 -0
  55. data/tracks/clojure/exercises/robot-simulator/README.md +34 -0
  56. data/tracks/clojure/exercises/roman-numerals/README.md +49 -0
  57. data/tracks/clojure/exercises/rotational-cipher/README.md +36 -0
  58. data/tracks/clojure/exercises/scrabble-score/README.md +44 -0
  59. data/tracks/clojure/exercises/secret-handshake/README.md +35 -0
  60. data/tracks/clojure/exercises/sieve/README.md +34 -0
  61. data/tracks/clojure/exercises/space-age/README.md +24 -0
  62. data/tracks/clojure/exercises/strain/README.md +40 -0
  63. data/tracks/clojure/exercises/sublist/README.md +21 -0
  64. data/tracks/clojure/exercises/sum-of-multiples/README.md +18 -0
  65. data/tracks/clojure/exercises/triangle/README.md +26 -0
  66. data/tracks/clojure/exercises/trinary/README.md +28 -0
  67. data/tracks/clojure/exercises/word-count/README.md +19 -0
  68. data/tracks/clojure/exercises/wordy/README.md +63 -0
  69. data/tracks/{erlang/exercises/allergies/.meta/readme.go.tmpl → crystal/config/exercise_readme.go.tmpl} +0 -1
  70. data/tracks/crystal/config.json +0 -2
  71. data/tracks/crystal/exercises/acronym/README.md +38 -0
  72. data/tracks/crystal/exercises/anagram/README.md +36 -0
  73. data/tracks/crystal/exercises/atbash-cipher/README.md +57 -0
  74. data/tracks/crystal/exercises/binary/README.md +58 -0
  75. data/tracks/crystal/exercises/binary-search-tree/README.md +83 -0
  76. data/tracks/crystal/exercises/bob/README.md +41 -0
  77. data/tracks/crystal/exercises/bracket-push/README.md +33 -0
  78. data/tracks/crystal/exercises/difference-of-squares/README.md +42 -0
  79. data/tracks/crystal/exercises/flatten-array/README.md +41 -0
  80. data/tracks/crystal/exercises/forth/README.md +52 -0
  81. data/tracks/crystal/exercises/gigasecond/README.md +34 -0
  82. data/tracks/crystal/exercises/hamming/README.md +65 -0
  83. data/tracks/crystal/exercises/hello-world/README.md +78 -0
  84. data/tracks/crystal/exercises/largest-series-product/README.md +43 -0
  85. data/tracks/crystal/exercises/leap/README.md +56 -0
  86. data/tracks/crystal/exercises/pangram/README.md +38 -0
  87. data/tracks/crystal/exercises/pascals-triangle/README.md +44 -0
  88. data/tracks/crystal/exercises/raindrops/README.md +47 -0
  89. data/tracks/crystal/exercises/react/README.md +42 -0
  90. data/tracks/crystal/exercises/rna-transcription/README.md +48 -0
  91. data/tracks/crystal/exercises/roman-numerals/README.md +72 -0
  92. data/tracks/crystal/exercises/run-length-encoding/README.md +53 -0
  93. data/tracks/crystal/exercises/sieve/README.md +57 -0
  94. data/tracks/csharp/config.json +0 -2
  95. data/tracks/delphi/config.json +0 -2
  96. data/tracks/ecmascript/config.json +63 -2
  97. data/tracks/erlang/{exercises/anagram/.meta/readme.go.tmpl → config/exercise_readme.go.tmpl} +0 -1
  98. data/tracks/erlang/config.json +0 -2
  99. data/tracks/erlang/exercises/accumulate/README.md +0 -1
  100. data/tracks/erlang/exercises/all-your-base/README.md +0 -1
  101. data/tracks/erlang/exercises/allergies/README.md +0 -1
  102. data/tracks/erlang/exercises/anagram/README.md +0 -1
  103. data/tracks/erlang/exercises/atbash-cipher/README.md +0 -1
  104. data/tracks/erlang/exercises/bank-account/README.md +0 -1
  105. data/tracks/erlang/exercises/beer-song/README.md +0 -1
  106. data/tracks/erlang/exercises/bob/README.md +0 -1
  107. data/tracks/erlang/exercises/circular-buffer/README.md +0 -1
  108. data/tracks/erlang/exercises/clock/README.md +0 -1
  109. data/tracks/erlang/exercises/collatz-conjecture/README.md +0 -1
  110. data/tracks/erlang/exercises/difference-of-squares/README.md +0 -1
  111. data/tracks/erlang/exercises/etl/README.md +0 -1
  112. data/tracks/erlang/exercises/gigasecond/README.md +0 -1
  113. data/tracks/erlang/exercises/grade-school/README.md +0 -1
  114. data/tracks/erlang/exercises/grains/README.md +0 -1
  115. data/tracks/erlang/exercises/hamming/README.md +0 -1
  116. data/tracks/erlang/exercises/hello-world/README.md +0 -1
  117. data/tracks/erlang/exercises/largest-series-product/README.md +0 -1
  118. data/tracks/erlang/exercises/leap/README.md +0 -1
  119. data/tracks/erlang/exercises/luhn/README.md +0 -1
  120. data/tracks/erlang/exercises/meetup/README.md +0 -1
  121. data/tracks/erlang/exercises/nucleotide-count/README.md +0 -1
  122. data/tracks/erlang/exercises/parallel-letter-frequency/README.md +0 -1
  123. data/tracks/erlang/exercises/phone-number/README.md +0 -1
  124. data/tracks/erlang/exercises/rna-transcription/README.md +0 -1
  125. data/tracks/erlang/exercises/robot-simulator/README.md +0 -1
  126. data/tracks/erlang/exercises/roman-numerals/README.md +0 -1
  127. data/tracks/erlang/exercises/rotational-cipher/README.md +0 -1
  128. data/tracks/erlang/exercises/scrabble-score/README.md +0 -1
  129. data/tracks/erlang/exercises/series/README.md +0 -1
  130. data/tracks/erlang/exercises/space-age/README.md +0 -1
  131. data/tracks/erlang/exercises/spiral-matrix/README.md +0 -1
  132. data/tracks/erlang/exercises/strain/README.md +0 -1
  133. data/tracks/erlang/exercises/sum-of-multiples/README.md +0 -1
  134. data/tracks/erlang/exercises/triangle/README.md +0 -1
  135. data/tracks/erlang/exercises/word-count/README.md +0 -1
  136. data/tracks/erlang/exercises/zipper/README.md +0 -1
  137. data/tracks/factor/config.json +0 -2
  138. data/tracks/fsharp/config.json +0 -2
  139. data/tracks/go/config.json +12 -6
  140. data/tracks/go/exercises/bank-account/bank_account_test.go +60 -1
  141. data/tracks/go/exercises/error-handling/common.go +17 -0
  142. data/tracks/go/exercises/error-handling/error_handling_test.go +37 -4
  143. data/tracks/haskell/config.json +0 -2
  144. data/tracks/java/config.json +10 -2
  145. data/tracks/{erlang/exercises/accumulate → java/exercises/forth}/.meta/readme.go.tmpl +0 -0
  146. data/tracks/java/exercises/forth/README.md +41 -0
  147. data/tracks/java/exercises/forth/build.gradle +18 -0
  148. data/tracks/java/exercises/forth/src/example/java/ForthEvaluator.java +154 -0
  149. data/tracks/java/exercises/forth/src/example/java/Token.java +90 -0
  150. data/tracks/java/exercises/forth/src/main/java/.keep +0 -0
  151. data/tracks/java/exercises/forth/src/test/java/ForthEvaluatorTest.java +355 -0
  152. data/tracks/java/exercises/settings.gradle +1 -0
  153. data/tracks/javascript/config.json +0 -2
  154. data/tracks/kotlin/config.json +30 -2
  155. data/tracks/kotlin/exercises/forth/README.md +32 -0
  156. data/tracks/kotlin/exercises/forth/build.gradle +28 -0
  157. data/tracks/kotlin/exercises/forth/src/example/kotlin/ForthEvaluator.kt +138 -0
  158. data/tracks/kotlin/exercises/forth/src/main/kotlin/.keep +0 -0
  159. data/tracks/kotlin/exercises/forth/src/test/kotlin/ForthEvaluatorTest.kt +352 -0
  160. data/tracks/kotlin/exercises/meetup/README.md +33 -0
  161. data/tracks/kotlin/exercises/meetup/build.gradle +28 -0
  162. data/tracks/kotlin/exercises/meetup/src/example/kotlin/Meetup.kt +45 -0
  163. data/tracks/kotlin/exercises/meetup/src/example/kotlin/MeetupSchedule.kt +1 -0
  164. data/tracks/kotlin/exercises/meetup/src/main/kotlin/MeetupSchedule.kt +5 -0
  165. data/tracks/kotlin/exercises/meetup/src/test/kotlin/MeetupTest.kt +771 -0
  166. data/tracks/kotlin/exercises/say/README.md +72 -0
  167. data/tracks/kotlin/exercises/say/build.gradle +28 -0
  168. data/tracks/kotlin/exercises/say/src/example/kotlin/NumberSpeller.kt +88 -0
  169. data/tracks/kotlin/exercises/say/src/main/kotlin/.keep +0 -0
  170. data/tracks/kotlin/exercises/say/src/test/kotlin/NumberSpellerTest.kt +138 -0
  171. data/tracks/kotlin/exercises/settings.gradle +3 -0
  172. data/tracks/lua/config.json +0 -2
  173. data/tracks/mips/config.json +0 -2
  174. data/tracks/ocaml/config.json +0 -2
  175. data/tracks/perl5/config.json +262 -67
  176. data/tracks/perl6/config.json +98 -26
  177. data/tracks/php/docs/INSTALLATION.md +1 -1
  178. data/tracks/powershell/config.json +0 -2
  179. data/tracks/purescript/config.json +0 -2
  180. data/tracks/python/README.md +2 -2
  181. data/tracks/python/config/exercise_readme.go.tmpl +16 -0
  182. data/tracks/python/config.json +280 -15
  183. data/tracks/python/exercises/accumulate/README.md +46 -0
  184. data/tracks/python/exercises/acronym/README.md +26 -0
  185. data/tracks/python/exercises/all-your-base/README.md +46 -0
  186. data/tracks/python/exercises/allergies/README.md +48 -0
  187. data/tracks/python/exercises/alphametics/README.md +46 -0
  188. data/tracks/python/exercises/anagram/README.md +24 -0
  189. data/tracks/python/exercises/atbash-cipher/README.md +45 -0
  190. data/tracks/python/exercises/beer-song/README.md +338 -0
  191. data/tracks/python/exercises/binary/README.md +46 -0
  192. data/tracks/python/exercises/binary-search/README.md +52 -0
  193. data/tracks/python/exercises/bob/README.md +29 -0
  194. data/tracks/python/exercises/book-store/README.md +85 -0
  195. data/tracks/python/exercises/bracket-push/README.md +21 -0
  196. data/tracks/python/exercises/circular-buffer/README.md +61 -0
  197. data/tracks/python/exercises/clock/README.md +24 -0
  198. data/tracks/python/exercises/crypto-square/README.md +85 -0
  199. data/tracks/python/exercises/diamond/README.md +70 -0
  200. data/tracks/python/exercises/difference-of-squares/README.md +30 -0
  201. data/tracks/python/exercises/etl/README.md +62 -0
  202. data/tracks/python/exercises/flatten-array/README.md +29 -0
  203. data/tracks/python/exercises/gigasecond/README.md +22 -0
  204. data/tracks/python/exercises/grade-school/README.md +53 -0
  205. data/tracks/python/exercises/grains/README.md +45 -0
  206. data/tracks/python/exercises/grep/README.md +82 -0
  207. data/tracks/python/exercises/hamming/README.md +53 -0
  208. data/tracks/python/exercises/hello-world/README.md +32 -0
  209. data/tracks/python/exercises/hexadecimal/README.md +25 -0
  210. data/tracks/python/exercises/house/README.md +124 -0
  211. data/tracks/python/exercises/isogram/README.md +30 -0
  212. data/tracks/python/exercises/kindergarten-garden/README.md +77 -0
  213. data/tracks/python/exercises/largest-series-product/README.md +31 -0
  214. data/tracks/python/exercises/leap/README.md +44 -0
  215. data/tracks/python/exercises/linked-list/README.md +45 -0
  216. data/tracks/python/exercises/list-ops/README.md +21 -0
  217. data/tracks/python/exercises/luhn/README.md +82 -0
  218. data/tracks/python/exercises/matrix/README.md +56 -0
  219. data/tracks/python/exercises/meetup/README.md +41 -0
  220. data/tracks/python/exercises/minesweeper/README.md +41 -0
  221. data/tracks/python/exercises/nth-prime/README.md +26 -0
  222. data/tracks/python/exercises/nucleotide-count/README.md +44 -0
  223. data/tracks/python/exercises/ocr-numbers/README.md +96 -0
  224. data/tracks/python/exercises/octal/README.md +60 -0
  225. data/tracks/python/exercises/palindrome-products/README.md +51 -0
  226. data/tracks/python/exercises/pangram/README.md +26 -0
  227. data/tracks/python/exercises/pascals-triangle/README.md +32 -0
  228. data/tracks/python/exercises/perfect-numbers/README.md +35 -0
  229. data/tracks/python/exercises/phone-number/README.md +45 -0
  230. data/tracks/python/exercises/pig-latin/README.md +35 -0
  231. data/tracks/python/exercises/point-mutations/README.md +52 -0
  232. data/tracks/python/exercises/poker/README.md +23 -0
  233. data/tracks/python/exercises/prime-factors/README.md +47 -0
  234. data/tracks/python/exercises/protein-translation/README.md +60 -0
  235. data/tracks/python/exercises/proverb/README.md +29 -0
  236. data/tracks/python/exercises/pythagorean-triplet/README.md +35 -0
  237. data/tracks/python/exercises/queen-attack/README.md +44 -0
  238. data/tracks/python/exercises/rail-fence-cipher/README.md +71 -0
  239. data/tracks/python/exercises/raindrops/README.md +35 -0
  240. data/tracks/python/exercises/rectangles/README.md +78 -0
  241. data/tracks/python/exercises/rna-transcription/README.md +36 -0
  242. data/tracks/python/exercises/robot-name/README.md +33 -0
  243. data/tracks/python/exercises/robot-simulator/README.md +45 -0
  244. data/tracks/python/exercises/roman-numerals/README.md +60 -0
  245. data/tracks/python/exercises/rotational-cipher/README.md +47 -0
  246. data/tracks/python/exercises/run-length-encoding/README.md +41 -0
  247. data/tracks/python/exercises/saddle-points/README.md +44 -0
  248. data/tracks/python/exercises/say/README.md +80 -0
  249. data/tracks/python/exercises/scale-generator/README.md +71 -0
  250. data/tracks/python/exercises/scrabble-score/README.md +55 -0
  251. data/tracks/python/exercises/secret-handshake/README.md +46 -0
  252. data/tracks/python/exercises/series/README.md +38 -0
  253. data/tracks/python/exercises/sieve/README.md +45 -0
  254. data/tracks/python/exercises/simple-cipher/README.md +101 -0
  255. data/tracks/python/exercises/space-age/README.md +35 -0
  256. data/tracks/python/exercises/strain/README.md +51 -0
  257. data/tracks/python/exercises/sublist/README.md +32 -0
  258. data/tracks/python/exercises/sum-of-multiples/README.md +29 -0
  259. data/tracks/python/exercises/tournament/README.md +79 -0
  260. data/tracks/python/exercises/transpose/README.md +76 -0
  261. data/tracks/python/exercises/triangle/README.md +37 -0
  262. data/tracks/python/exercises/trinary/README.md +39 -0
  263. data/tracks/python/exercises/twelve-days/README.md +46 -0
  264. data/tracks/python/exercises/variable-length-quantity/README.md +50 -0
  265. data/tracks/python/exercises/word-count/README.md +30 -0
  266. data/tracks/python/exercises/word-search/README.md +41 -0
  267. data/tracks/python/exercises/wordy/README.md +74 -0
  268. data/tracks/python/exercises/zebra-puzzle/README.md +43 -0
  269. data/tracks/python/test/check-exercises.py +2 -3
  270. data/tracks/r/config.json +0 -2
  271. data/tracks/ruby/.travis.yml +1 -1
  272. data/tracks/ruby/config/exercise_readme.go.tmpl +16 -0
  273. data/tracks/ruby/config.json +265 -4
  274. data/tracks/ruby/exercises/accumulate/README.md +76 -0
  275. data/tracks/ruby/exercises/acronym/README.md +41 -0
  276. data/tracks/ruby/exercises/all-your-base/README.md +61 -0
  277. data/tracks/ruby/exercises/allergies/README.md +63 -0
  278. data/tracks/ruby/exercises/alphametics/README.md +61 -0
  279. data/tracks/ruby/exercises/anagram/README.md +39 -0
  280. data/tracks/ruby/exercises/atbash-cipher/README.md +60 -0
  281. data/tracks/ruby/exercises/beer-song/README.md +353 -0
  282. data/tracks/ruby/exercises/binary/README.md +61 -0
  283. data/tracks/ruby/exercises/binary-search/README.md +67 -0
  284. data/tracks/ruby/exercises/binary-search-tree/README.md +86 -0
  285. data/tracks/ruby/exercises/bob/README.md +44 -0
  286. data/tracks/ruby/exercises/bowling/README.md +79 -0
  287. data/tracks/ruby/exercises/bracket-push/README.md +36 -0
  288. data/tracks/ruby/exercises/circular-buffer/README.md +76 -0
  289. data/tracks/ruby/exercises/clock/README.md +39 -0
  290. data/tracks/ruby/exercises/collatz-conjecture/README.md +59 -0
  291. data/tracks/ruby/exercises/connect/README.md +60 -0
  292. data/tracks/ruby/exercises/crypto-square/README.md +100 -0
  293. data/tracks/ruby/exercises/custom-set/README.md +37 -0
  294. data/tracks/ruby/exercises/diamond/README.md +85 -0
  295. data/tracks/ruby/exercises/difference-of-squares/README.md +45 -0
  296. data/tracks/ruby/exercises/dominoes/README.md +44 -0
  297. data/tracks/ruby/exercises/etl/README.md +77 -0
  298. data/tracks/ruby/exercises/flatten-array/README.md +44 -0
  299. data/tracks/ruby/exercises/food-chain/README.md +96 -0
  300. data/tracks/ruby/exercises/gigasecond/README.md +37 -0
  301. data/tracks/ruby/exercises/grade-school/README.md +68 -0
  302. data/tracks/ruby/exercises/grains/README.md +60 -0
  303. data/tracks/ruby/exercises/hamming/README.md +68 -0
  304. data/tracks/ruby/exercises/hello-world/README.md +47 -0
  305. data/tracks/ruby/exercises/hexadecimal/README.md +40 -0
  306. data/tracks/ruby/exercises/house/README.md +139 -0
  307. data/tracks/ruby/exercises/isogram/README.md +45 -0
  308. data/tracks/ruby/exercises/kindergarten-garden/README.md +92 -0
  309. data/tracks/ruby/exercises/largest-series-product/README.md +46 -0
  310. data/tracks/ruby/exercises/leap/README.md +59 -0
  311. data/tracks/ruby/exercises/linked-list/README.md +60 -0
  312. data/tracks/ruby/exercises/list-ops/README.md +36 -0
  313. data/tracks/ruby/exercises/luhn/README.md +97 -0
  314. data/tracks/ruby/exercises/matrix/README.md +71 -0
  315. data/tracks/ruby/exercises/meetup/README.md +56 -0
  316. data/tracks/ruby/exercises/minesweeper/README.md +56 -0
  317. data/tracks/ruby/exercises/nth-prime/README.md +41 -0
  318. data/tracks/ruby/exercises/nucleotide-count/README.md +59 -0
  319. data/tracks/ruby/exercises/ocr-numbers/README.md +111 -0
  320. data/tracks/ruby/exercises/octal/README.md +75 -0
  321. data/tracks/ruby/exercises/palindrome-products/README.md +66 -0
  322. data/tracks/ruby/exercises/pangram/README.md +41 -0
  323. data/tracks/ruby/exercises/pascals-triangle/README.md +47 -0
  324. data/tracks/ruby/exercises/perfect-numbers/README.md +50 -0
  325. data/tracks/ruby/exercises/phone-number/README.md +60 -0
  326. data/tracks/ruby/exercises/pig-latin/README.md +50 -0
  327. data/tracks/ruby/exercises/point-mutations/README.md +67 -0
  328. data/tracks/ruby/exercises/poker/README.md +38 -0
  329. data/tracks/ruby/exercises/prime-factors/README.md +62 -0
  330. data/tracks/ruby/exercises/protein-translation/README.md +75 -0
  331. data/tracks/ruby/exercises/proverb/README.md +44 -0
  332. data/tracks/ruby/exercises/pythagorean-triplet/README.md +50 -0
  333. data/tracks/ruby/exercises/queen-attack/README.md +59 -0
  334. data/tracks/ruby/exercises/rail-fence-cipher/README.md +86 -0
  335. data/tracks/ruby/exercises/raindrops/README.md +50 -0
  336. data/tracks/ruby/exercises/rna-transcription/README.md +51 -0
  337. data/tracks/ruby/exercises/robot-name/README.md +57 -0
  338. data/tracks/ruby/exercises/robot-simulator/README.md +60 -0
  339. data/tracks/ruby/exercises/roman-numerals/README.md +75 -0
  340. data/tracks/ruby/exercises/run-length-encoding/README.md +56 -0
  341. data/tracks/ruby/exercises/saddle-points/README.md +59 -0
  342. data/tracks/ruby/exercises/say/README.md +95 -0
  343. data/tracks/ruby/exercises/scale-generator/README.md +86 -0
  344. data/tracks/ruby/exercises/scrabble-score/README.md +70 -0
  345. data/tracks/ruby/exercises/secret-handshake/README.md +61 -0
  346. data/tracks/ruby/exercises/series/README.md +53 -0
  347. data/tracks/ruby/exercises/sieve/README.md +60 -0
  348. data/tracks/ruby/exercises/simple-cipher/README.md +116 -0
  349. data/tracks/ruby/exercises/simple-linked-list/README.md +54 -0
  350. data/tracks/ruby/exercises/space-age/README.md +50 -0
  351. data/tracks/ruby/exercises/strain/README.md +66 -0
  352. data/tracks/ruby/exercises/sum-of-multiples/README.md +44 -0
  353. data/tracks/ruby/exercises/tournament/README.md +94 -0
  354. data/tracks/ruby/exercises/transpose/README.md +91 -0
  355. data/tracks/ruby/exercises/triangle/README.md +52 -0
  356. data/tracks/ruby/exercises/trinary/README.md +54 -0
  357. data/tracks/ruby/exercises/twelve-days/README.md +61 -0
  358. data/tracks/ruby/exercises/two-bucket/README.md +62 -0
  359. data/tracks/ruby/exercises/word-count/README.md +45 -0
  360. data/tracks/ruby/exercises/wordy/README.md +89 -0
  361. data/tracks/rust/README.md +3 -3
  362. data/tracks/rust/_test/WINDOWS_README.md +44 -0
  363. data/tracks/rust/config.json +9 -2
  364. data/tracks/rust/exercises/pig-latin/Cargo-example.toml +8 -0
  365. data/tracks/rust/exercises/pig-latin/Cargo.lock +4 -0
  366. data/tracks/rust/exercises/pig-latin/Cargo.toml +6 -0
  367. data/tracks/rust/exercises/pig-latin/README.md +56 -0
  368. data/tracks/rust/exercises/pig-latin/example.rs +28 -0
  369. data/tracks/rust/exercises/pig-latin/tests/pig-latin.rs +120 -0
  370. data/tracks/rust/problem_ordering.md +2 -2
  371. data/tracks/sml/config.json +0 -2
  372. data/tracks/swift/config/exercise_readme.go.tmpl +16 -0
  373. data/tracks/swift/config.json +304 -79
  374. data/tracks/swift/exercises/accumulate/README.md +43 -0
  375. data/tracks/swift/exercises/acronym/README.md +23 -0
  376. data/tracks/swift/exercises/all-your-base/README.md +43 -0
  377. data/tracks/swift/exercises/allergies/README.md +45 -0
  378. data/tracks/swift/exercises/anagram/README.md +21 -0
  379. data/tracks/swift/exercises/atbash-cipher/README.md +42 -0
  380. data/tracks/swift/exercises/beer-song/README.md +335 -0
  381. data/tracks/swift/exercises/binary/README.md +43 -0
  382. data/tracks/swift/exercises/binary-search/README.md +49 -0
  383. data/tracks/swift/exercises/binary-search-tree/README.md +68 -0
  384. data/tracks/swift/exercises/bob/README.md +26 -0
  385. data/tracks/swift/exercises/bowling/README.md +61 -0
  386. data/tracks/swift/exercises/bracket-push/README.md +18 -0
  387. data/tracks/swift/exercises/clock/README.md +21 -0
  388. data/tracks/swift/exercises/crypto-square/README.md +82 -0
  389. data/tracks/swift/exercises/custom-set/README.md +19 -0
  390. data/tracks/swift/exercises/difference-of-squares/README.md +27 -0
  391. data/tracks/swift/exercises/dominoes/README.md +26 -0
  392. data/tracks/swift/exercises/etl/README.md +59 -0
  393. data/tracks/swift/exercises/flatten-array/README.md +26 -0
  394. data/tracks/swift/exercises/food-chain/README.md +78 -0
  395. data/tracks/swift/exercises/gigasecond/README.md +19 -0
  396. data/tracks/swift/exercises/grade-school/README.md +50 -0
  397. data/tracks/swift/exercises/grains/README.md +42 -0
  398. data/tracks/swift/exercises/hamming/README.md +50 -0
  399. data/tracks/swift/exercises/hello-world/README.md +29 -0
  400. data/tracks/swift/exercises/hexadecimal/README.md +22 -0
  401. data/tracks/swift/exercises/house/README.md +121 -0
  402. data/tracks/swift/exercises/isogram/README.md +27 -0
  403. data/tracks/swift/exercises/kindergarten-garden/README.md +74 -0
  404. data/tracks/swift/exercises/largest-series-product/README.md +28 -0
  405. data/tracks/swift/exercises/leap/README.md +41 -0
  406. data/tracks/swift/exercises/linked-list/README.md +42 -0
  407. data/tracks/swift/exercises/luhn/README.md +79 -0
  408. data/tracks/swift/exercises/matrix/README.md +53 -0
  409. data/tracks/swift/exercises/meetup/README.md +38 -0
  410. data/tracks/swift/exercises/minesweeper/README.md +38 -0
  411. data/tracks/swift/exercises/nth-prime/README.md +23 -0
  412. data/tracks/swift/exercises/nucleotide-count/README.md +41 -0
  413. data/tracks/swift/exercises/ocr-numbers/README.md +93 -0
  414. data/tracks/swift/exercises/octal/README.md +57 -0
  415. data/tracks/swift/exercises/palindrome-products/README.md +48 -0
  416. data/tracks/swift/exercises/pangram/README.md +23 -0
  417. data/tracks/swift/exercises/pascals-triangle/README.md +29 -0
  418. data/tracks/swift/exercises/perfect-numbers/README.md +32 -0
  419. data/tracks/swift/exercises/phone-number/README.md +42 -0
  420. data/tracks/swift/exercises/pig-latin/README.md +32 -0
  421. data/tracks/swift/exercises/poker/README.md +20 -0
  422. data/tracks/swift/exercises/prime-factors/README.md +44 -0
  423. data/tracks/swift/exercises/pythagorean-triplet/README.md +32 -0
  424. data/tracks/swift/exercises/queen-attack/README.md +41 -0
  425. data/tracks/swift/exercises/raindrops/README.md +32 -0
  426. data/tracks/swift/exercises/rna-transcription/README.md +33 -0
  427. data/tracks/swift/exercises/robot-name/README.md +30 -0
  428. data/tracks/swift/exercises/robot-simulator/README.md +42 -0
  429. data/tracks/swift/exercises/roman-numerals/README.md +57 -0
  430. data/tracks/swift/exercises/run-length-encoding/README.md +38 -0
  431. data/tracks/swift/exercises/saddle-points/README.md +41 -0
  432. data/tracks/swift/exercises/scrabble-score/README.md +52 -0
  433. data/tracks/swift/exercises/secret-handshake/README.md +43 -0
  434. data/tracks/swift/exercises/series/README.md +35 -0
  435. data/tracks/swift/exercises/sieve/README.md +42 -0
  436. data/tracks/swift/exercises/simple-cipher/README.md +98 -0
  437. data/tracks/swift/exercises/simple-linked-list/README.md +36 -0
  438. data/tracks/swift/exercises/space-age/README.md +32 -0
  439. data/tracks/swift/exercises/strain/README.md +48 -0
  440. data/tracks/swift/exercises/sublist/README.md +29 -0
  441. data/tracks/swift/exercises/sum-of-multiples/README.md +26 -0
  442. data/tracks/swift/exercises/tournament/README.md +76 -0
  443. data/tracks/swift/exercises/transpose/README.md +73 -0
  444. data/tracks/swift/exercises/triangle/README.md +34 -0
  445. data/tracks/swift/exercises/trinary/README.md +36 -0
  446. data/tracks/swift/exercises/twelve-days/README.md +43 -0
  447. data/tracks/swift/exercises/word-count/README.md +27 -0
  448. data/tracks/swift/exercises/wordy/README.md +71 -0
  449. data/tracks/typescript/README.md +1 -1
  450. data/tracks/typescript/config.json +63 -3
  451. data/tracks/vimscript/config.json +0 -2
  452. metadata +371 -40
  453. data/tracks/erlang/exercises/atbash-cipher/.meta/readme.go.tmpl +0 -17
  454. data/tracks/erlang/exercises/bank-account/.meta/readme.go.tmpl +0 -17
  455. data/tracks/erlang/exercises/beer-song/.meta/readme.go.tmpl +0 -17
  456. data/tracks/erlang/exercises/bob/.meta/readme.go.tmpl +0 -17
  457. data/tracks/erlang/exercises/circular-buffer/.meta/readme.go.tmpl +0 -17
  458. data/tracks/erlang/exercises/clock/.meta/readme.go.tmpl +0 -17
  459. data/tracks/erlang/exercises/collatz-conjecture/.meta/readme.go.tmpl +0 -17
  460. data/tracks/erlang/exercises/difference-of-squares/.meta/readme.go.tmpl +0 -17
  461. data/tracks/erlang/exercises/etl/.meta/readme.go.tmpl +0 -17
  462. data/tracks/erlang/exercises/gigasecond/.meta/readme.go.tmpl +0 -17
  463. data/tracks/erlang/exercises/grade-school/.meta/readme.go.tmpl +0 -17
  464. data/tracks/erlang/exercises/grains/.meta/readme.go.tmpl +0 -17
  465. data/tracks/erlang/exercises/hamming/.meta/readme.go.tmpl +0 -17
  466. data/tracks/erlang/exercises/hello-world/.meta/readme.go.tmpl +0 -17
  467. data/tracks/erlang/exercises/largest-series-product/.meta/readme.go.tmpl +0 -17
  468. data/tracks/erlang/exercises/leap/.meta/readme.go.tmpl +0 -17
  469. data/tracks/erlang/exercises/luhn/.meta/readme.go.tmpl +0 -17
  470. data/tracks/erlang/exercises/meetup/.meta/readme.go.tmpl +0 -17
  471. data/tracks/erlang/exercises/nucleotide-count/.meta/readme.go.tmpl +0 -17
  472. data/tracks/erlang/exercises/parallel-letter-frequency/.meta/readme.go.tmpl +0 -17
  473. data/tracks/erlang/exercises/phone-number/.meta/readme.go.tmpl +0 -17
  474. data/tracks/erlang/exercises/rna-transcription/.meta/readme.go.tmpl +0 -17
  475. data/tracks/erlang/exercises/robot-simulator/.meta/readme.go.tmpl +0 -17
  476. data/tracks/erlang/exercises/roman-numerals/.meta/readme.go.tmpl +0 -17
  477. data/tracks/erlang/exercises/rotational-cipher/.meta/readme.go.tmpl +0 -17
  478. data/tracks/erlang/exercises/scrabble-score/.meta/readme.go.tmpl +0 -17
  479. data/tracks/erlang/exercises/series/.meta/readme.go.tmpl +0 -17
  480. data/tracks/erlang/exercises/space-age/.meta/readme.go.tmpl +0 -17
  481. data/tracks/erlang/exercises/spiral-matrix/.meta/readme.go.tmpl +0 -17
  482. data/tracks/erlang/exercises/strain/.meta/readme.go.tmpl +0 -17
  483. data/tracks/erlang/exercises/sum-of-multiples/.meta/readme.go.tmpl +0 -17
  484. data/tracks/erlang/exercises/triangle/.meta/readme.go.tmpl +0 -17
  485. data/tracks/erlang/exercises/word-count/.meta/readme.go.tmpl +0 -17
  486. data/tracks/erlang/exercises/zipper/.meta/readme.go.tmpl +0 -17
@@ -7,595 +7,850 @@
7
7
  "solution_pattern": "[Ee]xample|\\.meta/solutions/[^/]*\\.rb",
8
8
  "exercises": [
9
9
  {
10
+ "uuid": "4fe19484-4414-471b-a106-73c776c61388",
10
11
  "slug": "hello-world",
12
+ "core": false,
13
+ "unlocked_by": null,
11
14
  "difficulty": 1,
12
15
  "topics": [
13
16
 
14
17
  ]
15
18
  },
16
19
  {
20
+ "uuid": "d33dec8a-e2b4-40bc-8be9-3f49de084d43",
17
21
  "slug": "hamming",
22
+ "core": false,
23
+ "unlocked_by": null,
18
24
  "difficulty": 1,
19
25
  "topics": [
20
26
 
21
27
  ]
22
28
  },
23
29
  {
30
+ "uuid": "0fb594a1-193b-4ccf-8de2-eb6a81708b29",
24
31
  "slug": "gigasecond",
32
+ "core": false,
33
+ "unlocked_by": null,
25
34
  "difficulty": 1,
26
35
  "topics": [
27
36
 
28
37
  ]
29
38
  },
30
39
  {
40
+ "uuid": "41f66d2a-1883-4a2c-875f-663c46fa88aa",
31
41
  "slug": "rna-transcription",
42
+ "core": false,
43
+ "unlocked_by": null,
32
44
  "difficulty": 1,
33
45
  "topics": [
34
46
 
35
47
  ]
36
48
  },
37
49
  {
50
+ "uuid": "efad2cea-1e0b-4fb8-a452-a8e91be73638",
38
51
  "slug": "raindrops",
52
+ "core": false,
53
+ "unlocked_by": null,
39
54
  "difficulty": 1,
40
55
  "topics": [
41
56
 
42
57
  ]
43
58
  },
44
59
  {
60
+ "uuid": "f1e4ee0c-8718-43f2-90a5-fb1e915288da",
45
61
  "slug": "difference-of-squares",
62
+ "core": false,
63
+ "unlocked_by": null,
46
64
  "difficulty": 1,
47
65
  "topics": [
48
66
 
49
67
  ]
50
68
  },
51
69
  {
70
+ "uuid": "fcf07149-b2cb-4042-90e6-fb3350e0fdf6",
52
71
  "slug": "pangram",
72
+ "core": false,
73
+ "unlocked_by": null,
53
74
  "difficulty": 1,
54
75
  "topics": [
55
76
 
56
77
  ]
57
78
  },
58
79
  {
80
+ "uuid": "80f9af5a-ea29-4937-9333-b4494aaf2446",
59
81
  "slug": "sieve",
82
+ "core": false,
83
+ "unlocked_by": null,
60
84
  "difficulty": 1,
61
85
  "topics": [
62
86
 
63
87
  ]
64
88
  },
65
89
  {
90
+ "uuid": "b7ca9519-c33b-418b-a4ef-858a3d4d6855",
66
91
  "slug": "roman-numerals",
92
+ "core": false,
93
+ "unlocked_by": null,
67
94
  "difficulty": 1,
68
95
  "topics": [
69
96
 
70
97
  ]
71
98
  },
72
99
  {
100
+ "uuid": "16baef71-6234-4928-a2d4-a19eb8e110b8",
73
101
  "slug": "nth-prime",
102
+ "core": false,
103
+ "unlocked_by": null,
74
104
  "difficulty": 1,
75
105
  "topics": [
76
106
 
77
107
  ]
78
108
  },
79
109
  {
110
+ "uuid": "06eaa2dd-dc80-4d38-b10d-11174183b0b6",
80
111
  "slug": "leap",
112
+ "core": false,
113
+ "unlocked_by": null,
81
114
  "difficulty": 1,
82
115
  "topics": [
83
116
 
84
117
  ]
85
118
  },
86
119
  {
120
+ "uuid": "22519f53-4516-43bc-915e-07d58e48f617",
87
121
  "slug": "grains",
122
+ "core": false,
123
+ "unlocked_by": null,
88
124
  "difficulty": 1,
89
125
  "topics": [
90
126
 
91
127
  ]
92
128
  },
93
129
  {
130
+ "uuid": "e9d29769-8d4d-4159-8d6f-762db5339707",
94
131
  "slug": "word-count",
132
+ "core": false,
133
+ "unlocked_by": null,
95
134
  "difficulty": 1,
96
135
  "topics": [
97
136
 
98
137
  ]
99
138
  },
100
139
  {
140
+ "uuid": "70fec82e-3038-468f-96ef-bfb48ce03ef3",
101
141
  "slug": "bob",
142
+ "core": false,
143
+ "unlocked_by": null,
102
144
  "difficulty": 1,
103
145
  "topics": [
104
146
 
105
147
  ]
106
148
  },
107
149
  {
150
+ "uuid": "9d6a8c89-41c1-4c4e-b24c-476ba0dfa5f9",
108
151
  "slug": "run-length-encoding",
152
+ "core": false,
153
+ "unlocked_by": null,
109
154
  "difficulty": 1,
110
155
  "topics": [
111
156
 
112
157
  ]
113
158
  },
114
159
  {
160
+ "uuid": "43bc27ed-d2fa-4173-8665-4459b71c9a3a",
115
161
  "slug": "binary",
162
+ "core": false,
163
+ "unlocked_by": null,
116
164
  "difficulty": 1,
117
165
  "topics": [
118
166
 
119
167
  ]
120
168
  },
121
169
  {
170
+ "uuid": "2c71fc3a-2c93-402b-b091-697b795ce3ba",
122
171
  "slug": "accumulate",
172
+ "core": false,
173
+ "unlocked_by": null,
123
174
  "difficulty": 1,
124
175
  "topics": [
125
176
 
126
177
  ]
127
178
  },
128
179
  {
180
+ "uuid": "4fc25295-5d6a-4d13-9b87-064167d8980e",
129
181
  "slug": "sum-of-multiples",
182
+ "core": false,
183
+ "unlocked_by": null,
130
184
  "difficulty": 1,
131
185
  "topics": [
132
186
 
133
187
  ]
134
188
  },
135
189
  {
190
+ "uuid": "4460742c-2beb-48d7-94e6-72ff13c68c71",
136
191
  "slug": "grade-school",
192
+ "core": false,
193
+ "unlocked_by": null,
137
194
  "difficulty": 1,
138
195
  "topics": [
139
196
 
140
197
  ]
141
198
  },
142
199
  {
200
+ "uuid": "2de036e4-576d-47fc-bb03-4ed1612e79da",
143
201
  "slug": "series",
202
+ "core": false,
203
+ "unlocked_by": null,
144
204
  "difficulty": 1,
145
205
  "topics": [
146
206
 
147
207
  ]
148
208
  },
149
209
  {
210
+ "uuid": "b68665d5-14ef-4351-ac4a-c28a80c27b3d",
150
211
  "slug": "phone-number",
212
+ "core": false,
213
+ "unlocked_by": null,
151
214
  "difficulty": 1,
152
215
  "topics": [
153
216
 
154
217
  ]
155
218
  },
156
219
  {
220
+ "uuid": "a18daa31-88d3-45ba-84ca-f1d52fe23a79",
157
221
  "slug": "prime-factors",
222
+ "core": false,
223
+ "unlocked_by": null,
158
224
  "difficulty": 1,
159
225
  "topics": [
160
226
 
161
227
  ]
162
228
  },
163
229
  {
230
+ "uuid": "ac0966a9-822b-45be-91d9-36f6706ea76f",
164
231
  "slug": "strain",
232
+ "core": false,
233
+ "unlocked_by": null,
165
234
  "difficulty": 1,
166
235
  "topics": [
167
236
 
168
237
  ]
169
238
  },
170
239
  {
240
+ "uuid": "0d66f3db-69a4-44b9-80be-9366f8b189ec",
171
241
  "slug": "etl",
242
+ "core": false,
243
+ "unlocked_by": null,
172
244
  "difficulty": 1,
173
245
  "topics": [
174
246
 
175
247
  ]
176
248
  },
177
249
  {
250
+ "uuid": "f6735416-4be6-4eb8-b6b9-cb61671ce25e",
178
251
  "slug": "trinary",
252
+ "core": false,
253
+ "unlocked_by": null,
179
254
  "difficulty": 1,
180
255
  "topics": [
181
256
 
182
257
  ]
183
258
  },
184
259
  {
260
+ "uuid": "50c34698-7767-42b3-962f-21c735e49787",
185
261
  "slug": "beer-song",
262
+ "core": false,
263
+ "unlocked_by": null,
186
264
  "difficulty": 1,
187
265
  "topics": [
188
266
 
189
267
  ]
190
268
  },
191
269
  {
270
+ "uuid": "051f0825-8357-4ca6-b24f-40a373deac19",
192
271
  "slug": "bowling",
272
+ "core": false,
273
+ "unlocked_by": null,
193
274
  "difficulty": 1,
194
275
  "topics": [
195
276
 
196
277
  ]
197
278
  },
198
279
  {
280
+ "uuid": "c971a2b5-ccd4-4e55-9fc7-33e991bc0676",
199
281
  "slug": "space-age",
282
+ "core": false,
283
+ "unlocked_by": null,
200
284
  "difficulty": 1,
201
285
  "topics": [
202
286
 
203
287
  ]
204
288
  },
205
289
  {
290
+ "uuid": "36df18ba-580d-4982-984e-ba50eb1f8c0b",
206
291
  "slug": "anagram",
292
+ "core": false,
293
+ "unlocked_by": null,
207
294
  "difficulty": 1,
208
295
  "topics": [
209
296
 
210
297
  ]
211
298
  },
212
299
  {
300
+ "uuid": "0e05bfcf-17ae-4884-803a-fa1428bc1702",
213
301
  "slug": "binary-search-tree",
302
+ "core": false,
303
+ "unlocked_by": null,
214
304
  "difficulty": 1,
215
305
  "topics": [
216
306
 
217
307
  ]
218
308
  },
219
309
  {
310
+ "uuid": "86f8e33d-31b7-43e3-8ea3-2e391133704a",
220
311
  "slug": "crypto-square",
312
+ "core": false,
313
+ "unlocked_by": null,
221
314
  "difficulty": 1,
222
315
  "topics": [
223
316
 
224
317
  ]
225
318
  },
226
319
  {
320
+ "uuid": "f95ebf09-0f32-4e60-867d-60cb81dd9a62",
227
321
  "slug": "clock",
322
+ "core": false,
323
+ "unlocked_by": null,
228
324
  "difficulty": 1,
229
325
  "topics": [
230
326
 
231
327
  ]
232
328
  },
233
329
  {
330
+ "uuid": "2323a2a5-c181-4c1e-9c5f-f6b92b2de511",
234
331
  "slug": "alphametics",
332
+ "core": false,
333
+ "unlocked_by": null,
235
334
  "difficulty": 1,
236
335
  "topics": [
237
336
 
238
337
  ]
239
338
  },
240
339
  {
340
+ "uuid": "64196fe5-2270-4113-a614-fbfbb6d00f2b",
241
341
  "slug": "rail-fence-cipher",
342
+ "core": false,
343
+ "unlocked_by": null,
242
344
  "difficulty": 1,
243
345
  "topics": [
244
346
 
245
347
  ]
246
348
  },
247
349
  {
350
+ "uuid": "74468206-68a2-4efb-8caa-782634674c7f",
248
351
  "slug": "acronym",
352
+ "core": false,
353
+ "unlocked_by": null,
249
354
  "difficulty": 1,
250
355
  "topics": [
251
356
 
252
357
  ]
253
358
  },
254
359
  {
360
+ "uuid": "d934ebce-9ac3-4a41-bcb8-d70480170438",
255
361
  "slug": "scrabble-score",
362
+ "core": false,
363
+ "unlocked_by": null,
256
364
  "difficulty": 1,
257
365
  "topics": [
258
366
 
259
367
  ]
260
368
  },
261
369
  {
370
+ "uuid": "8ad2bffd-1d79-4e1f-8ef3-ece0214d2804",
262
371
  "slug": "nucleotide-count",
372
+ "core": false,
373
+ "unlocked_by": null,
263
374
  "difficulty": 1,
264
375
  "topics": [
265
376
 
266
377
  ]
267
378
  },
268
379
  {
380
+ "uuid": "2df8ed82-2a04-4112-a17b-7813bcdc0e84",
269
381
  "slug": "flatten-array",
382
+ "core": false,
383
+ "unlocked_by": null,
270
384
  "difficulty": 1,
271
385
  "topics": [
272
386
 
273
387
  ]
274
388
  },
275
389
  {
390
+ "uuid": "6984cc14-91f8-47a7-b7e2-4b210a5dbc5c",
276
391
  "slug": "hexadecimal",
392
+ "core": false,
393
+ "unlocked_by": null,
277
394
  "difficulty": 1,
278
395
  "topics": [
279
396
 
280
397
  ]
281
398
  },
282
399
  {
400
+ "uuid": "2a410923-6445-41fc-9cf3-a60209e1c1c2",
283
401
  "slug": "say",
402
+ "core": false,
403
+ "unlocked_by": null,
284
404
  "difficulty": 1,
285
405
  "topics": [
286
406
 
287
407
  ]
288
408
  },
289
409
  {
410
+ "uuid": "8120e133-9561-4f82-8081-10c19f7f6ba3",
290
411
  "slug": "meetup",
412
+ "core": false,
413
+ "unlocked_by": null,
291
414
  "difficulty": 1,
292
415
  "topics": [
293
416
 
294
417
  ]
295
418
  },
296
419
  {
420
+ "uuid": "76a0fd0a-cc65-4be3-acc8-7348bb67ad5a",
297
421
  "slug": "robot-name",
422
+ "core": false,
423
+ "unlocked_by": null,
298
424
  "difficulty": 6,
299
425
  "topics": [
300
426
 
301
427
  ]
302
428
  },
303
429
  {
430
+ "uuid": "2ce9b158-e730-4c86-8639-bd08af9f80f4",
304
431
  "slug": "queen-attack",
432
+ "core": false,
433
+ "unlocked_by": null,
305
434
  "difficulty": 1,
306
435
  "topics": [
307
436
 
308
437
  ]
309
438
  },
310
439
  {
440
+ "uuid": "abd68340-91b9-48c1-8567-79822bb2165c",
311
441
  "slug": "palindrome-products",
442
+ "core": false,
443
+ "unlocked_by": null,
312
444
  "difficulty": 1,
313
445
  "topics": [
314
446
 
315
447
  ]
316
448
  },
317
449
  {
450
+ "uuid": "26f6e297-7980-4472-8ce7-157b62b0ff40",
318
451
  "slug": "bracket-push",
452
+ "core": false,
453
+ "unlocked_by": null,
319
454
  "difficulty": 1,
320
455
  "topics": [
321
456
 
322
457
  ]
323
458
  },
324
459
  {
460
+ "uuid": "6f0919eb-2160-4cca-8504-286acc2ae9c8",
325
461
  "slug": "food-chain",
462
+ "core": false,
463
+ "unlocked_by": null,
326
464
  "difficulty": 1,
327
465
  "topics": [
328
466
 
329
467
  ]
330
468
  },
331
469
  {
470
+ "uuid": "3de21c18-a533-4150-8a73-49df8fcb8c61",
332
471
  "slug": "matrix",
472
+ "core": false,
473
+ "unlocked_by": null,
333
474
  "difficulty": 1,
334
475
  "topics": [
335
476
 
336
477
  ]
337
478
  },
338
479
  {
480
+ "uuid": "38bb4ac6-a5ec-4448-8b86-cdaff13a8be3",
339
481
  "slug": "saddle-points",
482
+ "core": false,
483
+ "unlocked_by": null,
340
484
  "difficulty": 1,
341
485
  "topics": [
342
486
 
343
487
  ]
344
488
  },
345
489
  {
490
+ "uuid": "5c797eb2-155d-47ca-8f85-2ba5803f9713",
346
491
  "slug": "triangle",
492
+ "core": false,
493
+ "unlocked_by": null,
347
494
  "difficulty": 1,
348
495
  "topics": [
349
496
 
350
497
  ]
351
498
  },
352
499
  {
500
+ "uuid": "1e737640-9785-4a47-866a-46298104d891",
353
501
  "slug": "atbash-cipher",
502
+ "core": false,
503
+ "unlocked_by": null,
354
504
  "difficulty": 1,
355
505
  "topics": [
356
506
 
357
507
  ]
358
508
  },
359
509
  {
510
+ "uuid": "df5d771a-e57b-4a96-8a29-9bd4ce7f88d2",
360
511
  "slug": "house",
512
+ "core": false,
513
+ "unlocked_by": null,
361
514
  "difficulty": 1,
362
515
  "topics": [
363
516
 
364
517
  ]
365
518
  },
366
519
  {
520
+ "uuid": "c1ebad1b-d5aa-465a-b5ef-9e717ab5db9e",
367
521
  "slug": "secret-handshake",
522
+ "core": false,
523
+ "unlocked_by": null,
368
524
  "difficulty": 1,
369
525
  "topics": [
370
526
 
371
527
  ]
372
528
  },
373
529
  {
530
+ "uuid": "3c5193ab-6471-4be2-9d24-1d2b51ad822a",
374
531
  "slug": "proverb",
532
+ "core": false,
533
+ "unlocked_by": null,
375
534
  "difficulty": 1,
376
535
  "topics": [
377
536
 
378
537
  ]
379
538
  },
380
539
  {
540
+ "uuid": "dd13bb29-589c-497d-9580-3f288f353fb2",
381
541
  "slug": "ocr-numbers",
542
+ "core": false,
543
+ "unlocked_by": null,
382
544
  "difficulty": 1,
383
545
  "topics": [
384
546
 
385
547
  ]
386
548
  },
387
549
  {
550
+ "uuid": "efc0e498-891a-4e91-a6aa-fae635573a83",
388
551
  "slug": "pig-latin",
552
+ "core": false,
553
+ "unlocked_by": null,
389
554
  "difficulty": 1,
390
555
  "topics": [
391
556
 
392
557
  ]
393
558
  },
394
559
  {
560
+ "uuid": "fa7b91c2-842c-42c8-bdf9-00bb3e71a7f5",
395
561
  "slug": "simple-linked-list",
562
+ "core": false,
563
+ "unlocked_by": null,
396
564
  "difficulty": 1,
397
565
  "topics": [
398
566
 
399
567
  ]
400
568
  },
401
569
  {
570
+ "uuid": "bee97539-b8c1-460e-aa14-9336008df2b6",
402
571
  "slug": "luhn",
572
+ "core": false,
573
+ "unlocked_by": null,
403
574
  "difficulty": 1,
404
575
  "topics": [
405
576
 
406
577
  ]
407
578
  },
408
579
  {
580
+ "uuid": "29c66e8a-b1b0-4bbd-be7b-9979ff51ba8f",
409
581
  "slug": "simple-cipher",
582
+ "core": false,
583
+ "unlocked_by": null,
410
584
  "difficulty": 1,
411
585
  "topics": [
412
586
 
413
587
  ]
414
588
  },
415
589
  {
590
+ "uuid": "cb58e4cf-e3af-469c-9f2d-02557b9f61ed",
416
591
  "slug": "wordy",
592
+ "core": false,
593
+ "unlocked_by": null,
417
594
  "difficulty": 1,
418
595
  "topics": [
419
596
 
420
597
  ]
421
598
  },
422
599
  {
600
+ "uuid": "b306bdaa-438e-46a2-ba54-82cb2c0be882",
423
601
  "slug": "allergies",
602
+ "core": false,
603
+ "unlocked_by": null,
424
604
  "difficulty": 1,
425
605
  "topics": [
426
606
 
427
607
  ]
428
608
  },
429
609
  {
610
+ "uuid": "9a59ba44-34f5-410b-a1e6-9a5c47c52d9e",
430
611
  "slug": "poker",
612
+ "core": false,
613
+ "unlocked_by": null,
431
614
  "difficulty": 1,
432
615
  "topics": [
433
616
 
434
617
  ]
435
618
  },
436
619
  {
620
+ "uuid": "04bde625-e363-4d8b-880f-db7bf86286eb",
437
621
  "slug": "kindergarten-garden",
622
+ "core": false,
623
+ "unlocked_by": null,
438
624
  "difficulty": 1,
439
625
  "topics": [
440
626
 
441
627
  ]
442
628
  },
443
629
  {
630
+ "uuid": "92c9aafc-791d-4aaf-a136-9bee14f6ff95",
444
631
  "slug": "linked-list",
632
+ "core": false,
633
+ "unlocked_by": null,
445
634
  "difficulty": 1,
446
635
  "topics": [
447
636
 
448
637
  ]
449
638
  },
450
639
  {
640
+ "uuid": "43aad536-0e24-464c-9554-cbc2699d0543",
451
641
  "slug": "pythagorean-triplet",
642
+ "core": false,
643
+ "unlocked_by": null,
452
644
  "difficulty": 1,
453
645
  "topics": [
454
646
 
455
647
  ]
456
648
  },
457
649
  {
650
+ "uuid": "724e6a6e-2e6e-45a9-ab0e-0d8d50a06085",
458
651
  "slug": "robot-simulator",
652
+ "core": false,
653
+ "unlocked_by": null,
459
654
  "difficulty": 1,
460
655
  "topics": [
461
656
 
462
657
  ]
463
658
  },
464
659
  {
660
+ "uuid": "eeb64dda-b79f-4920-8fa3-04810e8d37ab",
465
661
  "slug": "twelve-days",
662
+ "core": false,
663
+ "unlocked_by": null,
466
664
  "difficulty": 1,
467
665
  "topics": [
468
666
 
469
667
  ]
470
668
  },
471
669
  {
670
+ "uuid": "f3419fe3-a5f5-4bc9-bc40-49f450b8981e",
472
671
  "slug": "circular-buffer",
672
+ "core": false,
673
+ "unlocked_by": null,
473
674
  "difficulty": 1,
474
675
  "topics": [
475
676
 
476
677
  ]
477
678
  },
478
679
  {
680
+ "uuid": "7cb55328-1b11-4544-94c0-945444d9a6a4",
479
681
  "slug": "largest-series-product",
682
+ "core": false,
683
+ "unlocked_by": null,
480
684
  "difficulty": 1,
481
685
  "topics": [
482
686
 
483
687
  ]
484
688
  },
485
689
  {
690
+ "uuid": "b1ba445d-4908-4922-acc0-de3a0ec92c53",
486
691
  "slug": "binary-search",
692
+ "core": false,
693
+ "unlocked_by": null,
487
694
  "difficulty": 1,
488
695
  "topics": [
489
696
 
490
697
  ]
491
698
  },
492
699
  {
700
+ "uuid": "e5a2d445-437d-46a8-889b-fbcd62c70fa9",
493
701
  "slug": "two-bucket",
702
+ "core": false,
703
+ "unlocked_by": null,
494
704
  "difficulty": 1,
495
705
  "topics": [
496
706
 
497
707
  ]
498
708
  },
499
709
  {
710
+ "uuid": "4ff8b056-f27d-4bdf-b7af-214448db4260",
500
711
  "slug": "pascals-triangle",
712
+ "core": false,
713
+ "unlocked_by": null,
501
714
  "difficulty": 1,
502
715
  "topics": [
503
716
 
504
717
  ]
505
718
  },
506
719
  {
720
+ "uuid": "4f74b3cd-f995-4b8c-9b57-23f073261d0e",
507
721
  "slug": "custom-set",
722
+ "core": false,
723
+ "unlocked_by": null,
508
724
  "difficulty": 1,
509
725
  "topics": [
510
726
 
511
727
  ]
512
728
  },
513
729
  {
730
+ "uuid": "9d6808fb-d367-4df9-a1f0-47ff83b75544",
514
731
  "slug": "minesweeper",
732
+ "core": false,
733
+ "unlocked_by": null,
515
734
  "difficulty": 1,
516
735
  "topics": [
517
736
 
518
737
  ]
519
738
  },
520
739
  {
740
+ "uuid": "4134d491-8ec5-480b-aa61-37a02689db1f",
521
741
  "slug": "scale-generator",
742
+ "core": false,
743
+ "unlocked_by": null,
522
744
  "difficulty": 1,
523
745
  "topics": [
524
746
 
525
747
  ]
526
748
  },
527
749
  {
750
+ "uuid": "00c6f623-2e54-4f90-ae3f-07e493f93c7c",
528
751
  "slug": "protein-translation",
752
+ "core": false,
753
+ "unlocked_by": null,
529
754
  "difficulty": 1,
530
755
  "topics": [
531
756
 
532
757
  ]
533
758
  },
534
759
  {
760
+ "uuid": "76ad732a-6e58-403b-ac65-9091d355241f",
535
761
  "slug": "perfect-numbers",
762
+ "core": false,
763
+ "unlocked_by": null,
536
764
  "difficulty": 1,
537
765
  "topics": [
538
766
 
539
767
  ]
540
768
  },
541
769
  {
770
+ "uuid": "538a6768-bae5-437c-9cdf-765d73a79643",
542
771
  "slug": "connect",
772
+ "core": false,
773
+ "unlocked_by": null,
543
774
  "difficulty": 1,
544
775
  "topics": [
545
776
 
546
777
  ]
547
778
  },
548
779
  {
780
+ "uuid": "f62e8acb-8370-46e1-ad7f-a6a2644f8602",
549
781
  "slug": "list-ops",
782
+ "core": false,
783
+ "unlocked_by": null,
550
784
  "difficulty": 1,
551
785
  "topics": [
552
786
 
553
787
  ]
554
788
  },
555
789
  {
790
+ "uuid": "c55c75fb-6140-4042-967a-39c75b7781bd",
556
791
  "slug": "diamond",
792
+ "core": false,
793
+ "unlocked_by": null,
557
794
  "difficulty": 1,
558
795
  "topics": [
559
796
 
560
797
  ]
561
798
  },
562
799
  {
800
+ "uuid": "3ce4bd3e-0380-498a-8d0a-b79cf3fedc10",
563
801
  "slug": "all-your-base",
802
+ "core": false,
803
+ "unlocked_by": null,
564
804
  "difficulty": 1,
565
805
  "topics": [
566
806
 
567
807
  ]
568
808
  },
569
809
  {
810
+ "uuid": "a79eb8cd-d2db-48f5-a7dc-055039dcee62",
570
811
  "slug": "isogram",
812
+ "core": false,
813
+ "unlocked_by": null,
571
814
  "difficulty": 1,
572
815
  "topics": [
573
816
 
574
817
  ]
575
818
  },
576
819
  {
820
+ "uuid": "4a6bc7d3-5d3b-4ad8-96ae-783e17af7c32",
577
821
  "slug": "transpose",
822
+ "core": false,
823
+ "unlocked_by": null,
578
824
  "difficulty": 1,
579
825
  "topics": [
580
826
 
581
827
  ]
582
828
  },
583
829
  {
830
+ "uuid": "486becee-9d85-4139-ab89-db254d385ade",
584
831
  "slug": "tournament",
832
+ "core": false,
833
+ "unlocked_by": null,
585
834
  "difficulty": 1,
586
835
  "topics": [
587
836
 
588
837
  ]
589
838
  },
590
839
  {
840
+ "uuid": "705f3eb6-55a9-476c-b3f2-e9f3cb0bbe37",
591
841
  "slug": "dominoes",
842
+ "core": false,
843
+ "unlocked_by": null,
592
844
  "difficulty": 1,
593
845
  "topics": [
594
846
 
595
847
  ]
596
848
  },
597
849
  {
850
+ "uuid": "af961c87-341c-4dd3-a1eb-272501b9b0e4",
598
851
  "slug": "collatz-conjecture",
852
+ "core": false,
853
+ "unlocked_by": null,
599
854
  "difficulty": 1,
600
855
  "topics": [
601
856
  "Control-flow (loops)",
@@ -605,12 +860,18 @@
605
860
  "Algorithms",
606
861
  "Mathematics"
607
862
  ]
863
+ },
864
+ {
865
+ "uuid": "cae4e000-3aac-41f7-b727-f9cce12d058d",
866
+ "slug": "octal",
867
+ "deprecated": true
868
+ },
869
+ {
870
+ "uuid": "89bd3d71-000f-4cd9-9a84-ad1b22ddbd33",
871
+ "slug": "point-mutations",
872
+ "deprecated": true
608
873
  }
609
874
  ],
610
- "deprecated": [
611
- "octal",
612
- "point-mutations"
613
- ],
614
875
  "foregone": [
615
876
 
616
877
  ]