diff --git a/JS/day14/.eslintrc.json b/JS/day14/.eslintrc.json new file mode 100644 index 0000000..615107c --- /dev/null +++ b/JS/day14/.eslintrc.json @@ -0,0 +1,22 @@ +{ + "env": { + "browser": true, + "es2021": true, + "node": true + }, + "plugins": [ + "prettier", + "jsdoc" + ], + "rules": { + "prettier/prettier": "error", + "jsdoc/valid-types": "off" + }, + "extends": [ + "plugin:jsdoc/recommended" + ], + "parserOptions": { + "ecmaVersion": 12, + "sourceType": "module" + } +} diff --git a/JS/day14/input b/JS/day14/input new file mode 100644 index 0000000..79b2731 --- /dev/null +++ b/JS/day14/input @@ -0,0 +1,564 @@ +mask = 1000XX0X0X0X0011XX11110110X101101X01 +mem[17353] = 91550 +mem[3346] = 113780395 +mem[25928] = 15887 +mask = 1100X110000111X1X010X101X01110110X01 +mem[22673] = 365674634 +mem[56387] = 707 +mem[59272] = 66101 +mask = 00110000X1011011111X1X100X1001111000 +mem[26721] = 1906961 +mem[6434] = 1547 +mem[38772] = 3670902 +mask = 1X0110X001101011X011000011000010X100 +mem[14129] = 9885418 +mem[16579] = 19578559 +mem[17948] = 222711 +mem[39312] = 3696 +mem[28037] = 4392 +mask = 1XX01010010100101010X10X0X100X110X0X +mem[27174] = 34330 +mem[38975] = 1673 +mem[53860] = 43706522 +mem[24314] = 129 +mem[46690] = 2122756 +mem[51409] = 300 +mask = X0X00100X110101XX1110000001000X01101 +mem[16769] = 6839 +mem[4773] = 197670 +mem[16306] = 9387 +mem[23109] = 18936748 +mask = X001X00001111X11X11XX1000001001X1111 +mem[9277] = 2126 +mem[19599] = 2620 +mem[35796] = 1119795 +mem[43013] = 7907629 +mem[34780] = 73089 +mem[43625] = 1251 +mem[45268] = 35981183 +mask = 11X0XX100X01001010101000X000X00X0001 +mem[28057] = 87060 +mem[57943] = 156869 +mem[34328] = 441008 +mem[19172] = 974642 +mem[13455] = 140868162 +mem[10479] = 1478 +mem[3348] = 610 +mask = 1X0011X0000X00X111111X0011001100XX00 +mem[20706] = 371595403 +mem[32191] = 61238 +mem[32541] = 121 +mask = 000101X1X110X01X1010X1XX011XX0110110 +mem[2502] = 3004 +mem[42813] = 50475 +mem[6736] = 218863 +mem[57229] = 542 +mask = X00011110X101011X01100X11011010X100X +mem[29838] = 6609 +mem[63501] = 76 +mem[35757] = 447 +mem[19646] = 1841 +mem[50155] = 10989663 +mask = 10011000X01110XX1111X10XX00000101001 +mem[16439] = 1250783 +mem[50267] = 12877 +mask = 000X0X011110101X101X010X1X1100X0X1X1 +mem[55873] = 29485206 +mem[3857] = 932873 +mem[53144] = 49937201 +mem[45634] = 3973 +mem[62141] = 84958 +mask = 10001X110XX01011X1100X011010110110XX +mem[27094] = 64589302 +mem[20130] = 1670 +mem[42036] = 39179827 +mem[31787] = 25295623 +mem[39027] = 1380 +mem[53488] = 593805 +mem[27469] = 6270971 +mask = 0101000001111011101110XXX010X0100010 +mem[34667] = 1338 +mem[2529] = 49045 +mem[40550] = 149 +mem[56292] = 14155 +mask = 1100111X0X0110X11111111010X001001111 +mem[6465] = 8116 +mem[45171] = 158525709 +mem[10613] = 1661122 +mem[37037] = 19153 +mask = 1X0000X1111X1010X1110101100001X10101 +mem[3530] = 361 +mem[15560] = 140278839 +mem[62028] = 12515878 +mem[20628] = 11032 +mem[48912] = 111176 +mem[47515] = 605 +mask = X00111001XX11011X1111X000100X0X0X010 +mem[4615] = 738 +mem[672] = 1477 +mem[16686] = 24069368 +mask = 110011100XX10000X0X00XX0X11100X10111 +mem[12619] = 1252770 +mem[954] = 590503 +mem[16403] = 1087106 +mem[11529] = 24258 +mem[11701] = 160993242 +mem[42676] = 64764346 +mem[7626] = 316 +mask = X001100XXX111X111X1111X000X0X0011100 +mem[42659] = 2822 +mem[40278] = 2173727 +mem[32236] = 13461 +mem[8739] = 49532769 +mem[23981] = 6272019 +mem[26083] = 7424 +mask = 1X001110010X101110111001100X0101XX01 +mem[5207] = 285084 +mem[46863] = 202944 +mem[29623] = 74688785 +mem[39251] = 2480123 +mem[21934] = 128729 +mem[17298] = 74932253 +mem[3243] = 2421447 +mask = 100001000X11100X1X110010XX1010XX010X +mem[45668] = 70363 +mem[5250] = 19909279 +mem[20889] = 8027 +mem[61368] = 422881 +mask = 1010110X0X111X1111110000X01100XX010X +mem[7264] = 4257 +mem[62228] = 4486 +mem[11135] = 31885819 +mem[50978] = 523114 +mem[12827] = 9872 +mask = 10X011010110X011001X11001X1100X11101 +mem[15425] = 38832030 +mem[7190] = 3685311 +mem[4442] = 111088 +mem[46774] = 679 +mem[48679] = 30399 +mask = 101100X111011111X1111100X1X100001001 +mem[21055] = 143042 +mem[44782] = 112377326 +mem[62184] = 8230 +mem[49662] = 512539 +mem[26324] = 73321 +mem[17454] = 107773 +mem[63437] = 73219244 +mask = 10000111011110111X1000XX1010X1X0X111 +mem[36342] = 1818 +mem[18094] = 47648232 +mem[52003] = 776369 +mask = 11001X100XX0X01111111XX0110111X00110 +mem[29103] = 5339928 +mem[36458] = 988421275 +mem[749] = 185734229 +mem[33969] = 29427002 +mask = 10X1X0X111X11XX11X11110011XX00011100 +mem[18473] = 197816 +mem[140] = 1537228 +mem[5706] = 1016744730 +mem[21968] = 425238881 +mem[2299] = 7217883 +mem[36197] = 66 +mask = 100110X10X11X011111111X100110X110X00 +mem[5148] = 3669 +mem[50092] = 313576115 +mem[1719] = 23750788 +mem[62734] = 2882 +mem[49010] = 14217157 +mask = 1X0XXX00011X10111X1110000011101X0X1X +mem[24047] = 11171624 +mem[34404] = 251169353 +mem[23056] = 3568348 +mem[2599] = 9449217 +mask = 0X0X11X1011010111X101X00X111X0001100 +mem[49530] = 1917 +mem[23017] = 4137 +mem[42892] = 209824 +mem[44196] = 2282 +mem[340] = 416390430 +mem[40836] = 4717162 +mask = 1101X000XX1010111011XX1X0000100X0000 +mem[20534] = 116 +mem[51190] = 846413 +mem[43522] = 88862477 +mem[56757] = 7097 +mask = 00000101111XX01110X0X00000111000110X +mem[20975] = 25703 +mem[11316] = 7721 +mem[56239] = 29785 +mem[51862] = 145224773 +mem[3358] = 10907 +mem[13070] = 77929 +mask = 0X0011110110X0111X1XX11001100X0X11XX +mem[22991] = 231 +mem[33217] = 2826 +mem[34404] = 509 +mask = 100X11X00000X0X11111000XX000X01010X0 +mem[18012] = 4386 +mem[56514] = 16103818 +mem[46863] = 7016934 +mem[53389] = 2025015 +mem[5646] = 77832170 +mask = 110011X00001X0X11111X100X0000100X01X +mem[38058] = 327471 +mem[7489] = 247743521 +mem[41341] = 980157 +mask = 10X01XX000X1001X1111X000X101000111X1 +mem[2278] = 1003775 +mem[4957] = 695497071 +mem[27026] = 83380 +mem[58747] = 3055795 +mem[35663] = 424302 +mem[55675] = 1400 +mem[59995] = 15450 +mask = 0X011001001X1X1X10110100011011001011 +mem[18012] = 105413272 +mem[18353] = 2478 +mem[10658] = 33943560 +mem[64129] = 97108 +mem[16290] = 585316720 +mem[38816] = 26080808 +mask = 100X1X10XXX0101X101X000X00111011011X +mem[37923] = 340333740 +mem[34920] = 429908705 +mem[955] = 1727757 +mem[65269] = 221055157 +mem[10891] = 523742 +mem[7264] = 21158973 +mask = 10XX1100011X10111X1100X00000X0111111 +mem[61904] = 63495 +mem[57943] = 33076 +mem[20097] = 836033572 +mem[12549] = 55029 +mem[3024] = 3602462 +mask = 110X0000011010X11011X0X0101X10XX000X +mem[14134] = 1542 +mem[802] = 10323 +mem[51543] = 171365721 +mem[12827] = 3980 +mask = 1000X100011110X1111100X100XXX0X001X1 +mem[8136] = 449831 +mem[1281] = 999072275 +mem[20796] = 332579 +mem[443] = 131455 +mem[12894] = 18123 +mem[50922] = 5177801 +mask = 100XXX0001101011X1110X000001101011XX +mem[18244] = 930 +mem[672] = 89370 +mem[42478] = 50196 +mem[35527] = 16 +mem[61716] = 105683782 +mask = 1000XX00011010111X110X0X1011101XX110 +mem[6775] = 3861120 +mem[843] = 312 +mem[2688] = 196099 +mem[37141] = 377569 +mem[33497] = 825 +mem[32589] = 1629649 +mask = 10X100011X1X1011X01110XX11X01100X100 +mem[20624] = 315487 +mem[31408] = 72488 +mem[63467] = 13483 +mem[2471] = 177211433 +mem[45598] = 62138 +mem[25301] = 6365509 +mask = 110011X0000111001X110110X00XX00001X0 +mem[42036] = 7869 +mem[55966] = 14443044 +mem[27440] = 100934729 +mem[19003] = 2085 +mem[15653] = 2142716 +mem[23117] = 1021 +mem[45011] = 5295150 +mask = X100101X0000X01111111001110X010X111X +mem[57308] = 11803 +mem[2240] = 961172 +mask = 100011X0011010111X1XX100101010XXX1X0 +mem[2444] = 243334769 +mem[12549] = 40175975 +mask = X0011001X011111110110XX00X0X00X11011 +mem[24834] = 363054 +mem[32941] = 83666205 +mem[16403] = 444996 +mask = 1100X1100001XXXX101X01001X101000010X +mem[56757] = 6879 +mem[4442] = 2107238 +mem[25399] = 14684 +mem[38582] = 330023 +mem[59557] = 299 +mem[34404] = 357591660 +mask = 0100X11101100011111XX1X000100011111X +mem[19990] = 405059382 +mem[50770] = 21723749 +mem[47204] = 310 +mem[55142] = 353841 +mem[31516] = 46662 +mem[59748] = 154981 +mask = 100X111001X010111X110X1X101110X01111 +mem[25989] = 412990662 +mem[44019] = 11063 +mem[5207] = 25633 +mem[23445] = 2402831 +mem[30252] = 60933 +mask = 100X111001001X10X0100XXX0011011X10X0 +mem[45485] = 5697187 +mem[39779] = 21767171 +mem[34966] = 498 +mem[13640] = 123685 +mask = X001X00X0XX11X1111111001X111X11111X0 +mem[30646] = 77071 +mem[40278] = 15164 +mem[48949] = 2547 +mem[49010] = 168697055 +mem[52212] = 836232 +mask = X00011000111101111X100X100100X00XX1X +mem[13958] = 872 +mem[28057] = 130528 +mem[9891] = 1464 +mask = 00X10000000X11111111X0100X1X0X111111 +mem[29510] = 29331 +mem[16403] = 265384902 +mem[46270] = 55500 +mem[35558] = 149875 +mem[42316] = 8508705 +mem[12894] = 281336 +mask = 10X011XX01X00011001110X11111X00X1XX0 +mem[15463] = 114059 +mem[64253] = 5760 +mem[34294] = 38569 +mem[1677] = 5097 +mem[22991] = 502 +mem[44522] = 326097 +mem[8172] = 37 +mask = 00010000X0001X1111111011011101X1X110 +mem[39779] = 1142 +mem[29838] = 85552455 +mem[42813] = 5712091 +mem[45115] = 58778 +mem[13319] = 855 +mem[2440] = 410159 +mask = X101101101X01111101010X110X110000010 +mem[41886] = 1753 +mem[57501] = 961519277 +mem[48943] = 1352369 +mask = 1000011X01111X1111101XX0000X101XX110 +mem[840] = 954719 +mem[53875] = 11370 +mem[45011] = 5033013 +mem[45230] = 850083 +mem[20455] = 862 +mask = 1X00010XX111101X111110000X111011X1X0 +mem[34148] = 99301330 +mem[26648] = 7719906 +mem[18244] = 110630512 +mask = 1100X11000X11X0X1111100X0X00X010XX11 +mem[50401] = 1733252 +mem[26875] = 37568501 +mem[35663] = 508001 +mem[14749] = 1838 +mask = X1010XX001111011101X0000X001XX100010 +mem[63359] = 5414799 +mem[35329] = 251023948 +mem[26907] = 876247525 +mask = X000X0X1111XX0100111XX10101X011X1100 +mem[23165] = 20505666 +mem[7340] = 1068126 +mem[5630] = 2429 +mem[55672] = 30150 +mask = 1000X11X011X101111101X0XX0101X1010X0 +mem[19212] = 6837122 +mem[14758] = 38425 +mem[19003] = 119768 +mask = 10000X01111110X0X1111110XXX110011X10 +mem[33194] = 61265858 +mem[13147] = 3274970 +mem[41650] = 4162 +mem[42478] = 1225726 +mem[63031] = 112464577 +mask = X0X10000X101101111110011X11101111100 +mem[35647] = 5788908 +mem[42040] = 48997 +mem[62673] = 1901 +mem[39850] = 1010636 +mask = 11X010X0010100101X1XXX0001001111010X +mem[20116] = 50 +mem[57943] = 17495168 +mem[28763] = 19897421 +mem[21657] = 923815 +mem[4802] = 86976237 +mask = 1X0011X001100011XX1X100X101110100110 +mem[13898] = 4734170 +mem[1595] = 82201 +mask = 1001X0010011X111111X1X0X1X1100011000 +mem[44782] = 14922 +mem[54309] = 1336 +mem[23027] = 194803 +mem[24035] = 29316023 +mask = 1100111000010101X011X00011100X00010X +mem[50916] = 1751 +mem[47305] = 2707 +mem[14464] = 13519228 +mem[33044] = 10744 +mem[53730] = 4920479 +mem[37037] = 859 +mask = X100111X0X10001111111100X11110001110 +mem[58049] = 939221 +mem[1924] = 17 +mem[61135] = 358315072 +mem[21809] = 5281 +mem[39141] = 1817 +mem[51543] = 136115569 +mem[50155] = 300797 +mask = 110010X000X1110010X100X0111X001X00XX +mem[50279] = 14014916 +mem[12124] = 68328623 +mem[44199] = 313076 +mem[64321] = 4725 +mem[20842] = 108600115 +mem[37411] = 4492927 +mask = X1001X11000010111111XX0X100X11000011 +mem[28505] = 8712 +mem[37967] = 35824634 +mem[23027] = 241 +mem[17252] = 20614619 +mem[24389] = 10076 +mask = X101000001X01011X011X0X10X1100101X10 +mem[61716] = 8801 +mem[34944] = 1881 +mem[4710] = 8504 +mem[56313] = 14501 +mem[5654] = 14055781 +mem[22490] = 90967 +mask = X0X1110X01101011111101001100001X1101 +mem[21158] = 463323 +mem[18946] = 15357 +mem[57000] = 2534149 +mem[15029] = 194259123 +mem[38305] = 441356 +mask = 11001110010X000X101000XX010000111111 +mem[53389] = 1383160 +mem[938] = 1952336 +mem[64009] = 15833 +mask = 00X11X0011X11011111111000X10001X11X1 +mem[6272] = 13767595 +mem[54734] = 510 +mem[33438] = 1925 +mem[36878] = 260095 +mask = 110X11100111X0001X000001011001X01011 +mem[47847] = 2621 +mem[49530] = 526 +mem[17284] = 1326861 +mem[17082] = 5186894 +mem[18302] = 13617528 +mem[7269] = 1111687 +mask = 110011100001X11X101X1X101010X01X0100 +mem[60461] = 2942 +mem[35460] = 327 +mem[28055] = 375226 +mask = 0011111X01101111111010XXX101X101100X +mem[41886] = 113214 +mem[17284] = 85512736 +mask = 0X01X111X1101X1110100101011110011XX1 +mem[40617] = 603263 +mem[10573] = 33216107 +mem[22356] = 26505 +mem[6272] = 45384662 +mask = 10101X0001111011X11X000111X1X1100X0X +mem[7936] = 47932 +mem[16185] = 5024 +mem[52003] = 1045816 +mask = 0XXX1X1101101X111X1001X000110001110X +mem[32145] = 91132 +mem[55966] = 3856425 +mem[42185] = 24094 +mem[36708] = 277 +mask = 1101100XX11X1011111110X0100X10X0000X +mem[31516] = 5220059 +mem[35747] = 2317 +mem[7864] = 3365 +mem[55570] = 45702 +mask = 110110010X1110X1X111000X0000101X1X00 +mem[44696] = 47285061 +mem[28866] = 23561 +mem[56107] = 8116244 +mem[41437] = 2106148 +mask = 110011X00011001111XX100X11001010010X +mem[45954] = 58871 +mem[61135] = 3411 +mem[17541] = 3200218 +mem[38985] = 233678515 +mem[41259] = 166543015 +mem[2350] = 34876506 +mask = 11X01X00X0X00001111XX00101X0X0100010 +mem[23027] = 474324 +mem[6434] = 53973 +mem[40128] = 16133 +mem[36404] = 5183 +mask = 1100111000XX00111X11110X11X00X10000X +mem[10063] = 9539320 +mem[843] = 671 +mem[4773] = 140929 +mem[19139] = 133212046 +mem[20975] = 795877 +mask = 100X0X00011X101111X101000010X0001000 +mem[932] = 2504742 +mem[25530] = 1425628 +mask = 10X001X00X1X1X011X1100110X1X1011X000 +mem[8358] = 313827173 +mem[7256] = 1152512 +mem[6697] = 60311 +mem[15728] = 6743 +mem[64009] = 43785 +mem[43325] = 2846 +mask = 100X1X00011X1011111X000000X0X01X1X00 +mem[46292] = 1644 +mem[1988] = 1949 +mem[40476] = 111556 +mask = 100011X0X11XX01110111X001001X010111X +mem[43625] = 120590 +mem[63878] = 417 +mem[1924] = 4511945 +mem[36404] = 2609999 +mem[8758] = 30953 +mem[896] = 56891660 +mem[37141] = 770 +mask = 100011X001X0X0111X11100000XXX0010X10 +mem[19084] = 9020 +mem[39875] = 31650099 +mask = 10101110011000110011XX11X110011X1010 +mem[13319] = 1038 +mem[46337] = 51363384 +mem[61871] = 3928 +mem[15595] = 224135 +mem[56790] = 39964747 +mem[54731] = 1878594 +mem[53872] = 4678318 +mask = 00X11001001110111011X0X001X111110X11 +mem[39549] = 14142886 +mem[26096] = 7903442 +mem[43322] = 8676 +mem[17353] = 509961 +mem[49320] = 11303 +mask = 1X0100000X00X011X01X011000X0X0111000 +mem[48878] = 209296 +mem[29990] = 394600 +mask = 100000000X10101X11110XX0101011000011 +mem[843] = 542527866 +mem[63601] = 10350671 +mem[9659] = 3514 +mem[33969] = 266 +mem[2863] = 15309 +mask = 10X0X000011X10XX01100101100XX01X0010 +mem[56350] = 2980026 +mem[45422] = 7205 +mem[26310] = 10221 +mem[40386] = 358165 +mem[55012] = 32294336 +mask = X1001X10000111001011X1001011X0010110 +mem[25508] = 86175837 +mem[26087] = 58400593 +mem[48996] = 27712 +mem[3272] = 2146 \ No newline at end of file diff --git a/JS/day14/package.json b/JS/day14/package.json new file mode 100644 index 0000000..539551f --- /dev/null +++ b/JS/day14/package.json @@ -0,0 +1,15 @@ +{ + "main": "solution.js", + "scripts": { + "a": "node solution_a.mjs", + "b": "node solution_b.mjs", + "lint": "eslint -f visualstudio solution_a.mjs solution_b.mjs --fix" + }, + "devDependencies": { + "@types/node": "^14.14.10", + "eslint": "^7.14.0", + "eslint-plugin-jsdoc": "^30.7.8", + "eslint-plugin-prettier": "^3.1.4", + "prettier": "^2.2.1" + } +} diff --git a/JS/day14/solution_a.mjs b/JS/day14/solution_a.mjs new file mode 100644 index 0000000..0c78de4 --- /dev/null +++ b/JS/day14/solution_a.mjs @@ -0,0 +1,68 @@ +import fs from "fs"; + +/** + * @param string + * @param index + * @param replacement + */ +function replaceAt(string, index, replacement) { + return ( + string.substr(0, index) + + replacement + + string.substr(index + replacement.length) + ); +} + +/** + * Main function for Puzzle A + * + * @param {string} data - Puzzle input as a single string. + */ +async function main(data) { + /** + * 1 mem|mask + * 2 x + * 3 y + * 4 new_mask + */ + + /** @type {["mask"|"mem", number?, number?, string?][]} */ + const input = data + .split(/\r?\n/) + .map((line) => line.match(/^(mem\[(\d+)\] = (\d+)|mask = ([10X]{36}))$/m)) + .map(([_, op, x, y, new_mask]) => [ + op.match(/^\w+/)[0], + parseInt(x), + parseInt(y), + new_mask, + ]); + /** @type {number[]} */ + const memory = []; + let mask = ""; + + for (let [op, x, y, new_mask] of input) { + op = op.split(" ")[0]; + if (op === "mask") { + mask = new_mask; + } else if (op === "mem") { + let num = y.toString(2).padStart(36, "0"); + for (let i in mask) { + i = parseInt(i); + + if (mask[i] === "X") continue; + num = replaceAt(num, i, mask[i]); + } + y = parseInt(num, 2); + memory[x] = y; + } else { + throw new Error("invalid op: " + op); + } + } + + return memory.reduce((prev, cur) => prev + cur, 0); +} + +fs.readFile("input", (err, data) => { + if (err) throw err; + main(data.toString()).then(console.log).catch(console.error); +}); diff --git a/JS/day14/solution_b.mjs b/JS/day14/solution_b.mjs new file mode 100644 index 0000000..e2b2863 --- /dev/null +++ b/JS/day14/solution_b.mjs @@ -0,0 +1,76 @@ +import fs from "fs"; + +/** + * @param mask + * @param val + */ +function getValue(mask, val) { + const binaryVal = val.toString(2).padStart(mask.length, "0"); + let valStr = ""; + for (let i = 0; i < mask.length; i++) { + valStr += mask[i] === "X" ? binaryVal[i] : mask[i]; + } + return parseInt(valStr, 2); +} + +/** + * @param mask + */ +function getAllMasks(mask) { + if (!mask.includes("X")) return mask; + + return [ + getAllMasks(mask.replace("X", "0")), + getAllMasks(mask.replace("X", "1")), + ].flat(); +} + +/** + * @param originalMask + * @param replacedMasks + * @param address + */ +function getDecodedAddresses(originalMask, replacedMasks, address) { + return replacedMasks.map((mask) => { + const binaryAddr = address.toString(2).padStart(mask.length, "0"); + let addrStr = ""; + for (let i = 0; i < mask.length; i++) { + addrStr += originalMask[i] === "0" ? binaryAddr[i] : mask[i]; + } + + return parseInt(addrStr, 2); + }); +} + +/** + * Main function for Puzzle B + * + * @param {string} data - Puzzle input as a single string. + */ +async function main(data) { + const instructions = data.split(/\r?\n/).map((line) => line.split(" = ")); + let memory = {} + let originalMask + let replacedMasks + + instructions.forEach(([op, args]) =>{ + if(op==="mask") { + originalMask = args; + replacedMasks = getAllMasks(originalMask); + } else { + const originalAddress = parseInt(op.match(/mem\[(\d+)\]/)[1], 10) + const value = parseInt(args) + + getDecodedAddresses(originalMask, replacedMasks, originalAddress).forEach((decodedAddress) => { + memory[decodedAddress] = value; + }) + } + }) + + return Object.values(memory).reduce((cur, prev) => cur + prev, 0) +} + +fs.readFile("input", (err, data) => { + if (err) throw err; + main(data.toString()).then(console.log).catch(console.error); +}); diff --git a/JS/day14/yarn.lock b/JS/day14/yarn.lock new file mode 100644 index 0000000..d2b99c8 --- /dev/null +++ b/JS/day14/yarn.lock @@ -0,0 +1,800 @@ +# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. +# yarn lockfile v1 + + +"@babel/code-frame@^7.0.0": + version "7.10.4" + resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.10.4.tgz#168da1a36e90da68ae8d49c0f1b48c7c6249213a" + integrity sha512-vG6SvB6oYEhvgisZNFRmRCUkLz11c7rp+tbNTynGqc6mS1d5ATd/sGyV6W0KZZnXRKMTzZDRgQT3Ou9jhpAfUg== + dependencies: + "@babel/highlight" "^7.10.4" + +"@babel/helper-validator-identifier@^7.10.4": + version "7.10.4" + resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.10.4.tgz#a78c7a7251e01f616512d31b10adcf52ada5e0d2" + integrity sha512-3U9y+43hz7ZM+rzG24Qe2mufW5KhvFg/NhnNph+i9mgCtdTCtMJuI1TMkrIUiK7Ix4PYlRF9I5dhqaLYA/ADXw== + +"@babel/highlight@^7.10.4": + version "7.10.4" + resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.10.4.tgz#7d1bdfd65753538fabe6c38596cdb76d9ac60143" + integrity sha512-i6rgnR/YgPEQzZZnbTHHuZdlE8qyoBNalD6F+q4vAFlcMEcqmkoG+mPqJYJCo63qPf74+Y1UZsl3l6f7/RIkmA== + dependencies: + "@babel/helper-validator-identifier" "^7.10.4" + chalk "^2.0.0" + js-tokens "^4.0.0" + +"@eslint/eslintrc@^0.2.1": + version "0.2.1" + resolved "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-0.2.1.tgz#f72069c330461a06684d119384435e12a5d76e3c" + integrity sha512-XRUeBZ5zBWLYgSANMpThFddrZZkEbGHgUdt5UJjZfnlN9BGCiUBrf+nvbRupSjMvqzwnQN0qwCmOxITt1cfywA== + dependencies: + ajv "^6.12.4" + debug "^4.1.1" + espree "^7.3.0" + globals "^12.1.0" + ignore "^4.0.6" + import-fresh "^3.2.1" + js-yaml "^3.13.1" + lodash "^4.17.19" + minimatch "^3.0.4" + strip-json-comments "^3.1.1" + +"@types/node@^14.14.10": + version "14.14.10" + resolved "https://registry.yarnpkg.com/@types/node/-/node-14.14.10.tgz#5958a82e41863cfc71f2307b3748e3491ba03785" + integrity sha512-J32dgx2hw8vXrSbu4ZlVhn1Nm3GbeCFNw2FWL8S5QKucHGY0cyNwjdQdO+KMBZ4wpmC7KhLCiNsdk1RFRIYUQQ== + +acorn-jsx@^5.2.0: + version "5.3.1" + resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.3.1.tgz#fc8661e11b7ac1539c47dbfea2e72b3af34d267b" + integrity sha512-K0Ptm/47OKfQRpNQ2J/oIN/3QYiK6FwW+eJbILhsdxh2WTLdl+30o8aGdTbm5JbffpFFAg/g+zi1E+jvJha5ng== + +acorn@^7.4.0: + version "7.4.1" + resolved "https://registry.yarnpkg.com/acorn/-/acorn-7.4.1.tgz#feaed255973d2e77555b83dbc08851a6c63520fa" + integrity sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A== + +ajv@^6.10.0, ajv@^6.10.2, ajv@^6.12.4: + version "6.12.6" + resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.6.tgz#baf5a62e802b07d977034586f8c3baf5adf26df4" + integrity sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g== + dependencies: + fast-deep-equal "^3.1.1" + fast-json-stable-stringify "^2.0.0" + json-schema-traverse "^0.4.1" + uri-js "^4.2.2" + +ansi-colors@^4.1.1: + version "4.1.1" + resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-4.1.1.tgz#cbb9ae256bf750af1eab344f229aa27fe94ba348" + integrity sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA== + +ansi-regex@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-4.1.0.tgz#8b9f8f08cf1acb843756a839ca8c7e3168c51997" + integrity sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg== + +ansi-regex@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.0.tgz#388539f55179bf39339c81af30a654d69f87cb75" + integrity sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg== + +ansi-styles@^3.2.0, ansi-styles@^3.2.1: + version "3.2.1" + resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d" + integrity sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA== + dependencies: + color-convert "^1.9.0" + +ansi-styles@^4.1.0: + version "4.3.0" + resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-4.3.0.tgz#edd803628ae71c04c85ae7a0906edad34b648937" + integrity sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg== + dependencies: + color-convert "^2.0.1" + +argparse@^1.0.7: + version "1.0.10" + resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.10.tgz#bcd6791ea5ae09725e17e5ad988134cd40b3d911" + integrity sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg== + dependencies: + sprintf-js "~1.0.2" + +astral-regex@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/astral-regex/-/astral-regex-1.0.0.tgz#6c8c3fb827dd43ee3918f27b82782ab7658a6fd9" + integrity sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg== + +balanced-match@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.0.tgz#89b4d199ab2bee49de164ea02b89ce462d71b767" + integrity sha1-ibTRmasr7kneFk6gK4nORi1xt2c= + +brace-expansion@^1.1.7: + version "1.1.11" + resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd" + integrity sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA== + dependencies: + balanced-match "^1.0.0" + concat-map "0.0.1" + +callsites@^3.0.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/callsites/-/callsites-3.1.0.tgz#b3630abd8943432f54b3f0519238e33cd7df2f73" + integrity sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ== + +chalk@^2.0.0: + version "2.4.2" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" + integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== + dependencies: + ansi-styles "^3.2.1" + escape-string-regexp "^1.0.5" + supports-color "^5.3.0" + +chalk@^4.0.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.0.tgz#4e14870a618d9e2edd97dd8345fd9d9dc315646a" + integrity sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A== + dependencies: + ansi-styles "^4.1.0" + supports-color "^7.1.0" + +color-convert@^1.9.0: + version "1.9.3" + resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8" + integrity sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg== + dependencies: + color-name "1.1.3" + +color-convert@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-2.0.1.tgz#72d3a68d598c9bdb3af2ad1e84f21d896abd4de3" + integrity sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ== + dependencies: + color-name "~1.1.4" + +color-name@1.1.3: + version "1.1.3" + resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" + integrity sha1-p9BVi9icQveV3UIyj3QIMcpTvCU= + +color-name@~1.1.4: + version "1.1.4" + resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2" + integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== + +comment-parser@^0.7.6: + version "0.7.6" + resolved "https://registry.yarnpkg.com/comment-parser/-/comment-parser-0.7.6.tgz#0e743a53c8e646c899a1323db31f6cd337b10f12" + integrity sha512-GKNxVA7/iuTnAqGADlTWX4tkhzxZKXp5fLJqKTlQLHkE65XDUKutZ3BHaJC5IGcper2tT3QRD1xr4o3jNpgXXg== + +concat-map@0.0.1: + version "0.0.1" + resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" + integrity sha1-2Klr13/Wjfd5OnMDajug1UBdR3s= + +cross-spawn@^7.0.2: + version "7.0.3" + resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.3.tgz#f73a85b9d5d41d045551c177e2882d4ac85728a6" + integrity sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w== + dependencies: + path-key "^3.1.0" + shebang-command "^2.0.0" + which "^2.0.1" + +debug@^4.0.1, debug@^4.1.1, debug@^4.2.0: + version "4.3.1" + resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.1.tgz#f0d229c505e0c6d8c49ac553d1b13dc183f6b2ee" + integrity sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ== + dependencies: + ms "2.1.2" + +deep-is@^0.1.3: + version "0.1.3" + resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.3.tgz#b369d6fb5dbc13eecf524f91b070feedc357cf34" + integrity sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ= + +doctrine@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-3.0.0.tgz#addebead72a6574db783639dc87a121773973961" + integrity sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w== + dependencies: + esutils "^2.0.2" + +emoji-regex@^7.0.1: + version "7.0.3" + resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-7.0.3.tgz#933a04052860c85e83c122479c4748a8e4c72156" + integrity sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA== + +enquirer@^2.3.5: + version "2.3.6" + resolved "https://registry.yarnpkg.com/enquirer/-/enquirer-2.3.6.tgz#2a7fe5dd634a1e4125a975ec994ff5456dc3734d" + integrity sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg== + dependencies: + ansi-colors "^4.1.1" + +escape-string-regexp@^1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" + integrity sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ= + +eslint-plugin-jsdoc@^30.7.8: + version "30.7.8" + resolved "https://registry.yarnpkg.com/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-30.7.8.tgz#4a678c25ddb2c5732163f0258bb1d05edf34f61c" + integrity sha512-OWm2AYvXjCl7nRbpcw5xisfSVkpVAyp4lGqL9T+DeK4kaPm6ecnmTc/G5s1PtcRrwbaI8bIWGzwScqv5CdGyxA== + dependencies: + comment-parser "^0.7.6" + debug "^4.2.0" + jsdoctypeparser "^9.0.0" + lodash "^4.17.20" + regextras "^0.7.1" + semver "^7.3.2" + spdx-expression-parse "^3.0.1" + +eslint-plugin-prettier@^3.1.4: + version "3.1.4" + resolved "https://registry.yarnpkg.com/eslint-plugin-prettier/-/eslint-plugin-prettier-3.1.4.tgz#168ab43154e2ea57db992a2cd097c828171f75c2" + integrity sha512-jZDa8z76klRqo+TdGDTFJSavwbnWK2ZpqGKNZ+VvweMW516pDUMmQ2koXvxEE4JhzNvTv+radye/bWGBmA6jmg== + dependencies: + prettier-linter-helpers "^1.0.0" + +eslint-scope@^5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-5.1.1.tgz#e786e59a66cb92b3f6c1fb0d508aab174848f48c" + integrity sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw== + dependencies: + esrecurse "^4.3.0" + estraverse "^4.1.1" + +eslint-utils@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/eslint-utils/-/eslint-utils-2.1.0.tgz#d2de5e03424e707dc10c74068ddedae708741b27" + integrity sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg== + dependencies: + eslint-visitor-keys "^1.1.0" + +eslint-visitor-keys@^1.1.0, eslint-visitor-keys@^1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz#30ebd1ef7c2fdff01c3a4f151044af25fab0523e" + integrity sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ== + +eslint-visitor-keys@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-2.0.0.tgz#21fdc8fbcd9c795cc0321f0563702095751511a8" + integrity sha512-QudtT6av5WXels9WjIM7qz1XD1cWGvX4gGXvp/zBn9nXG02D0utdU3Em2m/QjTnrsk6bBjmCygl3rmj118msQQ== + +eslint@^7.14.0: + version "7.14.0" + resolved "https://registry.yarnpkg.com/eslint/-/eslint-7.14.0.tgz#2d2cac1d28174c510a97b377f122a5507958e344" + integrity sha512-5YubdnPXrlrYAFCKybPuHIAH++PINe1pmKNc5wQRB9HSbqIK1ywAnntE3Wwua4giKu0bjligf1gLF6qxMGOYRA== + dependencies: + "@babel/code-frame" "^7.0.0" + "@eslint/eslintrc" "^0.2.1" + ajv "^6.10.0" + chalk "^4.0.0" + cross-spawn "^7.0.2" + debug "^4.0.1" + doctrine "^3.0.0" + enquirer "^2.3.5" + eslint-scope "^5.1.1" + eslint-utils "^2.1.0" + eslint-visitor-keys "^2.0.0" + espree "^7.3.0" + esquery "^1.2.0" + esutils "^2.0.2" + file-entry-cache "^5.0.1" + functional-red-black-tree "^1.0.1" + glob-parent "^5.0.0" + globals "^12.1.0" + ignore "^4.0.6" + import-fresh "^3.0.0" + imurmurhash "^0.1.4" + is-glob "^4.0.0" + js-yaml "^3.13.1" + json-stable-stringify-without-jsonify "^1.0.1" + levn "^0.4.1" + lodash "^4.17.19" + minimatch "^3.0.4" + natural-compare "^1.4.0" + optionator "^0.9.1" + progress "^2.0.0" + regexpp "^3.1.0" + semver "^7.2.1" + strip-ansi "^6.0.0" + strip-json-comments "^3.1.0" + table "^5.2.3" + text-table "^0.2.0" + v8-compile-cache "^2.0.3" + +espree@^7.3.0: + version "7.3.0" + resolved "https://registry.yarnpkg.com/espree/-/espree-7.3.0.tgz#dc30437cf67947cf576121ebd780f15eeac72348" + integrity sha512-dksIWsvKCixn1yrEXO8UosNSxaDoSYpq9reEjZSbHLpT5hpaCAKTLBwq0RHtLrIr+c0ByiYzWT8KTMRzoRCNlw== + dependencies: + acorn "^7.4.0" + acorn-jsx "^5.2.0" + eslint-visitor-keys "^1.3.0" + +esprima@^4.0.0: + version "4.0.1" + resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.1.tgz#13b04cdb3e6c5d19df91ab6987a8695619b0aa71" + integrity sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A== + +esquery@^1.2.0: + version "1.3.1" + resolved "https://registry.yarnpkg.com/esquery/-/esquery-1.3.1.tgz#b78b5828aa8e214e29fb74c4d5b752e1c033da57" + integrity sha512-olpvt9QG0vniUBZspVRN6lwB7hOZoTRtT+jzR+tS4ffYx2mzbw+z0XCOk44aaLYKApNX5nMm+E+P6o25ip/DHQ== + dependencies: + estraverse "^5.1.0" + +esrecurse@^4.3.0: + version "4.3.0" + resolved "https://registry.yarnpkg.com/esrecurse/-/esrecurse-4.3.0.tgz#7ad7964d679abb28bee72cec63758b1c5d2c9921" + integrity sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag== + dependencies: + estraverse "^5.2.0" + +estraverse@^4.1.1: + version "4.3.0" + resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.3.0.tgz#398ad3f3c5a24948be7725e83d11a7de28cdbd1d" + integrity sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw== + +estraverse@^5.1.0, estraverse@^5.2.0: + version "5.2.0" + resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-5.2.0.tgz#307df42547e6cc7324d3cf03c155d5cdb8c53880" + integrity sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ== + +esutils@^2.0.2: + version "2.0.3" + resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.3.tgz#74d2eb4de0b8da1293711910d50775b9b710ef64" + integrity sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g== + +fast-deep-equal@^3.1.1: + version "3.1.3" + resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525" + integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q== + +fast-diff@^1.1.2: + version "1.2.0" + resolved "https://registry.yarnpkg.com/fast-diff/-/fast-diff-1.2.0.tgz#73ee11982d86caaf7959828d519cfe927fac5f03" + integrity sha512-xJuoT5+L99XlZ8twedaRf6Ax2TgQVxvgZOYoPKqZufmJib0tL2tegPBOZb1pVNgIhlqDlA0eO0c3wBvQcmzx4w== + +fast-json-stable-stringify@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633" + integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw== + +fast-levenshtein@^2.0.6: + version "2.0.6" + resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917" + integrity sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc= + +file-entry-cache@^5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-5.0.1.tgz#ca0f6efa6dd3d561333fb14515065c2fafdf439c" + integrity sha512-bCg29ictuBaKUwwArK4ouCaqDgLZcysCFLmM/Yn/FDoqndh/9vNuQfXRDvTuXKLxfD/JtZQGKFT8MGcJBK644g== + dependencies: + flat-cache "^2.0.1" + +flat-cache@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-2.0.1.tgz#5d296d6f04bda44a4630a301413bdbc2ec085ec0" + integrity sha512-LoQe6yDuUMDzQAEH8sgmh4Md6oZnc/7PjtwjNFSzveXqSHt6ka9fPBuso7IGf9Rz4uqnSnWiFH2B/zj24a5ReA== + dependencies: + flatted "^2.0.0" + rimraf "2.6.3" + write "1.0.3" + +flatted@^2.0.0: + version "2.0.2" + resolved "https://registry.yarnpkg.com/flatted/-/flatted-2.0.2.tgz#4575b21e2bcee7434aa9be662f4b7b5f9c2b5138" + integrity sha512-r5wGx7YeOwNWNlCA0wQ86zKyDLMQr+/RB8xy74M4hTphfmjlijTSSXGuH8rnvKZnfT9i+75zmd8jcKdMR4O6jA== + +fs.realpath@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" + integrity sha1-FQStJSMVjKpA20onh8sBQRmU6k8= + +functional-red-black-tree@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz#1b0ab3bd553b2a0d6399d29c0e3ea0b252078327" + integrity sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc= + +glob-parent@^5.0.0: + version "5.1.1" + resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.1.tgz#b6c1ef417c4e5663ea498f1c45afac6916bbc229" + integrity sha512-FnI+VGOpnlGHWZxthPGR+QhR78fuiK0sNLkHQv+bL9fQi57lNNdquIbna/WrfROrolq8GK5Ek6BiMwqL/voRYQ== + dependencies: + is-glob "^4.0.1" + +glob@^7.1.3: + version "7.1.6" + resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.6.tgz#141f33b81a7c2492e125594307480c46679278a6" + integrity sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA== + dependencies: + fs.realpath "^1.0.0" + inflight "^1.0.4" + inherits "2" + minimatch "^3.0.4" + once "^1.3.0" + path-is-absolute "^1.0.0" + +globals@^12.1.0: + version "12.4.0" + resolved "https://registry.yarnpkg.com/globals/-/globals-12.4.0.tgz#a18813576a41b00a24a97e7f815918c2e19925f8" + integrity sha512-BWICuzzDvDoH54NHKCseDanAhE3CeDorgDL5MT6LMXXj2WCnd9UC2szdk4AWLfjdgNBCXLUanXYcpBBKOSWGwg== + dependencies: + type-fest "^0.8.1" + +has-flag@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd" + integrity sha1-tdRU3CGZriJWmfNGfloH87lVuv0= + +has-flag@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b" + integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ== + +ignore@^4.0.6: + version "4.0.6" + resolved "https://registry.yarnpkg.com/ignore/-/ignore-4.0.6.tgz#750e3db5862087b4737ebac8207ffd1ef27b25fc" + integrity sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg== + +import-fresh@^3.0.0, import-fresh@^3.2.1: + version "3.2.2" + resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-3.2.2.tgz#fc129c160c5d68235507f4331a6baad186bdbc3e" + integrity sha512-cTPNrlvJT6twpYy+YmKUKrTSjWFs3bjYjAhCwm+z4EOCubZxAuO+hHpRN64TqjEaYSHs7tJAE0w1CKMGmsG/lw== + dependencies: + parent-module "^1.0.0" + resolve-from "^4.0.0" + +imurmurhash@^0.1.4: + version "0.1.4" + resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" + integrity sha1-khi5srkoojixPcT7a21XbyMUU+o= + +inflight@^1.0.4: + version "1.0.6" + resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" + integrity sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk= + dependencies: + once "^1.3.0" + wrappy "1" + +inherits@2: + version "2.0.4" + resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" + integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== + +is-extglob@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2" + integrity sha1-qIwCU1eR8C7TfHahueqXc8gz+MI= + +is-fullwidth-code-point@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz#a3b30a5c4f199183167aaab93beefae3ddfb654f" + integrity sha1-o7MKXE8ZkYMWeqq5O+764937ZU8= + +is-glob@^4.0.0, is-glob@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.1.tgz#7567dbe9f2f5e2467bc77ab83c4a29482407a5dc" + integrity sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg== + dependencies: + is-extglob "^2.1.1" + +isexe@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" + integrity sha1-6PvzdNxVb/iUehDcsFctYz8s+hA= + +js-tokens@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" + integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ== + +js-yaml@^3.13.1: + version "3.14.0" + resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.14.0.tgz#a7a34170f26a21bb162424d8adacb4113a69e482" + integrity sha512-/4IbIeHcD9VMHFqDR/gQ7EdZdLimOvW2DdcxFjdyyZ9NsbS+ccrXqVWDtab/lRl5AlUqmpBx8EhPaWR+OtY17A== + dependencies: + argparse "^1.0.7" + esprima "^4.0.0" + +jsdoctypeparser@^9.0.0: + version "9.0.0" + resolved "https://registry.yarnpkg.com/jsdoctypeparser/-/jsdoctypeparser-9.0.0.tgz#8c97e2fb69315eb274b0f01377eaa5c940bd7b26" + integrity sha512-jrTA2jJIL6/DAEILBEh2/w9QxCuwmvNXIry39Ay/HVfhE3o2yVV0U44blYkqdHA/OKloJEqvJy0xU+GSdE2SIw== + +json-schema-traverse@^0.4.1: + version "0.4.1" + resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz#69f6a87d9513ab8bb8fe63bdb0979c448e684660" + integrity sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg== + +json-stable-stringify-without-jsonify@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz#9db7b59496ad3f3cfef30a75142d2d930ad72651" + integrity sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE= + +levn@^0.4.1: + version "0.4.1" + resolved "https://registry.yarnpkg.com/levn/-/levn-0.4.1.tgz#ae4562c007473b932a6200d403268dd2fffc6ade" + integrity sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ== + dependencies: + prelude-ls "^1.2.1" + type-check "~0.4.0" + +lodash@^4.17.14, lodash@^4.17.19, lodash@^4.17.20: + version "4.17.20" + resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.20.tgz#b44a9b6297bcb698f1c51a3545a2b3b368d59c52" + integrity sha512-PlhdFcillOINfeV7Ni6oF1TAEayyZBoZ8bcshTHqOYJYlrqzRK5hagpagky5o4HfCzzd1TRkXPMFq6cKk9rGmA== + +minimatch@^3.0.4: + version "3.0.4" + resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083" + integrity sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA== + dependencies: + brace-expansion "^1.1.7" + +minimist@^1.2.5: + version "1.2.5" + resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.5.tgz#67d66014b66a6a8aaa0c083c5fd58df4e4e97602" + integrity sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw== + +mkdirp@^0.5.1: + version "0.5.5" + resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.5.tgz#d91cefd62d1436ca0f41620e251288d420099def" + integrity sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ== + dependencies: + minimist "^1.2.5" + +ms@2.1.2: + version "2.1.2" + resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" + integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== + +natural-compare@^1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" + integrity sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc= + +once@^1.3.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" + integrity sha1-WDsap3WWHUsROsF9nFC6753Xa9E= + dependencies: + wrappy "1" + +optionator@^0.9.1: + version "0.9.1" + resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.9.1.tgz#4f236a6373dae0566a6d43e1326674f50c291499" + integrity sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw== + dependencies: + deep-is "^0.1.3" + fast-levenshtein "^2.0.6" + levn "^0.4.1" + prelude-ls "^1.2.1" + type-check "^0.4.0" + word-wrap "^1.2.3" + +parent-module@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/parent-module/-/parent-module-1.0.1.tgz#691d2709e78c79fae3a156622452d00762caaaa2" + integrity sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g== + dependencies: + callsites "^3.0.0" + +path-is-absolute@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" + integrity sha1-F0uSaHNVNP+8es5r9TpanhtcX18= + +path-key@^3.1.0: + version "3.1.1" + resolved "https://registry.yarnpkg.com/path-key/-/path-key-3.1.1.tgz#581f6ade658cbba65a0d3380de7753295054f375" + integrity sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q== + +prelude-ls@^1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.2.1.tgz#debc6489d7a6e6b0e7611888cec880337d316396" + integrity sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g== + +prettier-linter-helpers@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/prettier-linter-helpers/-/prettier-linter-helpers-1.0.0.tgz#d23d41fe1375646de2d0104d3454a3008802cf7b" + integrity sha512-GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w== + dependencies: + fast-diff "^1.1.2" + +prettier@^2.2.1: + version "2.2.1" + resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.2.1.tgz#795a1a78dd52f073da0cd42b21f9c91381923ff5" + integrity sha512-PqyhM2yCjg/oKkFPtTGUojv7gnZAoG80ttl45O6x2Ug/rMJw4wcc9k6aaf2hibP7BGVCCM33gZoGjyvt9mm16Q== + +progress@^2.0.0: + version "2.0.3" + resolved "https://registry.yarnpkg.com/progress/-/progress-2.0.3.tgz#7e8cf8d8f5b8f239c1bc68beb4eb78567d572ef8" + integrity sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA== + +punycode@^2.1.0: + version "2.1.1" + resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.1.1.tgz#b58b010ac40c22c5657616c8d2c2c02c7bf479ec" + integrity sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A== + +regexpp@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/regexpp/-/regexpp-3.1.0.tgz#206d0ad0a5648cffbdb8ae46438f3dc51c9f78e2" + integrity sha512-ZOIzd8yVsQQA7j8GCSlPGXwg5PfmA1mrq0JP4nGhh54LaKN3xdai/vHUDu74pKwV8OxseMS65u2NImosQcSD0Q== + +regextras@^0.7.1: + version "0.7.1" + resolved "https://registry.yarnpkg.com/regextras/-/regextras-0.7.1.tgz#be95719d5f43f9ef0b9fa07ad89b7c606995a3b2" + integrity sha512-9YXf6xtW+qzQ+hcMQXx95MOvfqXFgsKDZodX3qZB0x2n5Z94ioetIITsBtvJbiOyxa/6s9AtyweBLCdPmPko/w== + +resolve-from@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-4.0.0.tgz#4abcd852ad32dd7baabfe9b40e00a36db5f392e6" + integrity sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g== + +rimraf@2.6.3: + version "2.6.3" + resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.6.3.tgz#b2d104fe0d8fb27cf9e0a1cda8262dd3833c6cab" + integrity sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA== + dependencies: + glob "^7.1.3" + +semver@^7.2.1, semver@^7.3.2: + version "7.3.2" + resolved "https://registry.yarnpkg.com/semver/-/semver-7.3.2.tgz#604962b052b81ed0786aae84389ffba70ffd3938" + integrity sha512-OrOb32TeeambH6UrhtShmF7CRDqhL6/5XpPNp2DuRH6+9QLw/orhp72j87v8Qa1ScDkvrrBNpZcDejAirJmfXQ== + +shebang-command@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-2.0.0.tgz#ccd0af4f8835fbdc265b82461aaf0c36663f34ea" + integrity sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA== + dependencies: + shebang-regex "^3.0.0" + +shebang-regex@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-3.0.0.tgz#ae16f1644d873ecad843b0307b143362d4c42172" + integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A== + +slice-ansi@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-2.1.0.tgz#cacd7693461a637a5788d92a7dd4fba068e81636" + integrity sha512-Qu+VC3EwYLldKa1fCxuuvULvSJOKEgk9pi8dZeCVK7TqBfUNTH4sFkk4joj8afVSfAYgJoSOetjx9QWOJ5mYoQ== + dependencies: + ansi-styles "^3.2.0" + astral-regex "^1.0.0" + is-fullwidth-code-point "^2.0.0" + +spdx-exceptions@^2.1.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz#3f28ce1a77a00372683eade4a433183527a2163d" + integrity sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A== + +spdx-expression-parse@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz#cf70f50482eefdc98e3ce0a6833e4a53ceeba679" + integrity sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q== + dependencies: + spdx-exceptions "^2.1.0" + spdx-license-ids "^3.0.0" + +spdx-license-ids@^3.0.0: + version "3.0.7" + resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.7.tgz#e9c18a410e5ed7e12442a549fbd8afa767038d65" + integrity sha512-U+MTEOO0AiDzxwFvoa4JVnMV6mZlJKk2sBLt90s7G0Gd0Mlknc7kxEn3nuDPNZRta7O2uy8oLcZLVT+4sqNZHQ== + +sprintf-js@~1.0.2: + version "1.0.3" + resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" + integrity sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw= + +string-width@^3.0.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/string-width/-/string-width-3.1.0.tgz#22767be21b62af1081574306f69ac51b62203961" + integrity sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w== + dependencies: + emoji-regex "^7.0.1" + is-fullwidth-code-point "^2.0.0" + strip-ansi "^5.1.0" + +strip-ansi@^5.1.0: + version "5.2.0" + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-5.2.0.tgz#8c9a536feb6afc962bdfa5b104a5091c1ad9c0ae" + integrity sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA== + dependencies: + ansi-regex "^4.1.0" + +strip-ansi@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.0.tgz#0b1571dd7669ccd4f3e06e14ef1eed26225ae532" + integrity sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w== + dependencies: + ansi-regex "^5.0.0" + +strip-json-comments@^3.1.0, strip-json-comments@^3.1.1: + version "3.1.1" + resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-3.1.1.tgz#31f1281b3832630434831c310c01cccda8cbe006" + integrity sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig== + +supports-color@^5.3.0: + version "5.5.0" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f" + integrity sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow== + dependencies: + has-flag "^3.0.0" + +supports-color@^7.1.0: + version "7.2.0" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-7.2.0.tgz#1b7dcdcb32b8138801b3e478ba6a51caa89648da" + integrity sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw== + dependencies: + has-flag "^4.0.0" + +table@^5.2.3: + version "5.4.6" + resolved "https://registry.yarnpkg.com/table/-/table-5.4.6.tgz#1292d19500ce3f86053b05f0e8e7e4a3bb21079e" + integrity sha512-wmEc8m4fjnob4gt5riFRtTu/6+4rSe12TpAELNSqHMfF3IqnA+CH37USM6/YR3qRZv7e56kAEAtd6nKZaxe0Ug== + dependencies: + ajv "^6.10.2" + lodash "^4.17.14" + slice-ansi "^2.1.0" + string-width "^3.0.0" + +text-table@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4" + integrity sha1-f17oI66AUgfACvLfSoTsP8+lcLQ= + +type-check@^0.4.0, type-check@~0.4.0: + version "0.4.0" + resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.4.0.tgz#07b8203bfa7056c0657050e3ccd2c37730bab8f1" + integrity sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew== + dependencies: + prelude-ls "^1.2.1" + +type-fest@^0.8.1: + version "0.8.1" + resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.8.1.tgz#09e249ebde851d3b1e48d27c105444667f17b83d" + integrity sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA== + +uri-js@^4.2.2: + version "4.4.0" + resolved "https://registry.yarnpkg.com/uri-js/-/uri-js-4.4.0.tgz#aa714261de793e8a82347a7bcc9ce74e86f28602" + integrity sha512-B0yRTzYdUCCn9n+F4+Gh4yIDtMQcaJsmYBDsTSG8g/OejKBodLQ2IHfN3bM7jUsRXndopT7OIXWdYqc1fjmV6g== + dependencies: + punycode "^2.1.0" + +v8-compile-cache@^2.0.3: + version "2.2.0" + resolved "https://registry.yarnpkg.com/v8-compile-cache/-/v8-compile-cache-2.2.0.tgz#9471efa3ef9128d2f7c6a7ca39c4dd6b5055b132" + integrity sha512-gTpR5XQNKFwOd4clxfnhaqvfqMpqEwr4tOtCyz4MtYZX2JYhfr1JvBFKdS+7K/9rfpZR3VLX+YWBbKoxCgS43Q== + +which@^2.0.1: + version "2.0.2" + resolved "https://registry.yarnpkg.com/which/-/which-2.0.2.tgz#7c6a8dd0a636a0327e10b59c9286eee93f3f51b1" + integrity sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA== + dependencies: + isexe "^2.0.0" + +word-wrap@^1.2.3: + version "1.2.3" + resolved "https://registry.yarnpkg.com/word-wrap/-/word-wrap-1.2.3.tgz#610636f6b1f703891bd34771ccb17fb93b47079c" + integrity sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ== + +wrappy@1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" + integrity sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8= + +write@1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/write/-/write-1.0.3.tgz#0800e14523b923a387e415123c865616aae0f5c3" + integrity sha512-/lg70HAjtkUgWPVZhZcm+T4hkL8Zbtp1nFNOn3lRrxnlv50SRBv7cR7RqR+GMsd3hUXy9hWBo4CHTbFTcOYwig== + dependencies: + mkdirp "^0.5.1" diff --git a/JS/template/.eslintrc.json b/JS/template/.eslintrc.json index 4d508b7..615107c 100644 --- a/JS/template/.eslintrc.json +++ b/JS/template/.eslintrc.json @@ -9,7 +9,8 @@ "jsdoc" ], "rules": { - "prettier/prettier": "error" + "prettier/prettier": "error", + "jsdoc/valid-types": "off" }, "extends": [ "plugin:jsdoc/recommended"