JSFiddle - React, Tailwind, and code Playground
JavaScript
var alphabet = ['!'],
code = [27, 8, 5, 12, 103, 15, 28, 27, 23, 105, 18, 104, 4, 0],
frase = '';
for (var i = 97; i <= 122; i++) {
alphabet[i - 96] = String.fromCharCode(i);
}
function wat(pamparam, up) {
if (up === 0) frase += alphabet[code[pamparam]];
else frase += alphabet[code[pamparam]].toUpperCase();
}
for (var m = 0; m <= code.length - 1; m++) {
if (code[m] - 100 > code.length-1 || (code[m] == code[(code[m] - 100)])) throw 'stop';
}
function rep(k) {
if (code[k] >= 100) rep(code[k] - 100);
else wat(k, 0);
}
for (var j = 0; j < code.length; j++) {
if (code[j] >= 100) rep(code[j] - 100);
else if (code[j] == 28) frase += ' ';
else if (code[j] == 27) wat(++j, 1);
else wat(j, 0);
}
alert(frase);