# Clue 18 - Should this be on Stack Overflow?

<<---First clue

<---Previous clue

As you sit at the computer that you used to solve the last puzzle, a popup window opens. It appears to be a Stack Overflow question, with a very generic name: Why isn't my code working?

As you look closer, however, you notice several things - the URL has been blocked out, along with the name and avatar of the OP. The question score is at -18. Based upon this information, you assume that it must be your next Clue.

!(function(fivetimesthree){
va one = parsent('5D0', Math.og2(65536));
var two = fivetiesthree * 101 - 1;
var  three = Date.parshe('1/1/1970 0:00:01.489 GMT+0');
var four = one + two - three;
et first_two = String.fromCharCode(one, two);
cnst last = eval('\\u0${three.toString(16)}') + JSON.parse(JSON.stringify(our.toString(16)).replace(/"/,'"\\u0')); console.lo([last, first_two].reerse().join('')); })(5*3);  Next clue---> • There are two spaces between var and three. – CinCout Dec 19 '16 at 10:11 • @CinCout Indeed there is. – Scimonster Dec 19 '16 at 10:12 • The  used in the eval are really bugging me... wonder if there is something there. – stack reader Dec 19 '16 at 10:15 ## 3 Answers The "wrong" letters I have found (NB these are the same ones as listed by stack reader, plus the extra space, but as it happens I found them independently) when transformed by A->Z, B->Y, ..., Z->A, yield the phrase "iron solute". Why that transformation? Because if you fix the bugs in the code, what it puts in the console log is "Atbash" in Hebrew letters. At Scimonster's request, here is the code with the bugs taken out: !(function(fivetimesthree){ var one = parseInt('5D0', Math.log2(65536)); var two = fivetimesthree * 101 - 1; var three = Date.parse('1/1/1970 0:00:01.489 GMT+0'); var four = one + two - three; let first_two = String.fromCharCode(one, two); const last = eval('\\u0${three.toString(16)}') + JSON.parse(JSON.stringify(four.toString(16)).replace(/"/,'"\\u0'));
console.log([last, first_two].reverse().join(''));
})(5*3);


On my browser, this actually still doesn't work and I have to fix up the date to something like this:

var three = Date.parse('1970-01-01 00:00:01.489+0000');


at which point I get the following in the console:

אתבש

• What made you think of transforming it that way? – Scimonster Dec 19 '16 at 14:08
• It was the most obvious thing to do after (0) not transforming it at all and (1) trying ROT-n for all possible n. – Gareth McCaughan Dec 19 '16 at 14:15
• The solution is correct, but it's possible to derive the method from the clue itself, no guessing required. I'll accept an answer that gives the complete steps to solving the clue. – Scimonster Dec 19 '16 at 14:16
• just as Mithrandir mentioned in a comment under the answer of stackreader (as a reply for another comment of wl), the function itself returns 'atbash', so Atbash-cipher is heavily suggested. – elias Dec 19 '16 at 14:23
• yeah, I just worked that out too – Gareth McCaughan Dec 19 '16 at 14:24

There are many coding errors, mostly due to a missing or superfluous letter.
Here is a list of those I found so far.
var
parseint
log
fivetimesthree
parshe
let
const
four
log
reverse
Which gives : r i l m h l o f g v
5D0 might also be a superfluous letter.
Also strongly suggested by OP that the extra space between var and three is a superfluous char.
From @Marius : "There is also a zero missing in 0:00:01" which could possibly be relevant.

• There is another g missing in console.log – Techidiot Dec 19 '16 at 9:54
• @Techidiot wow my bad. log is up there but I highlighted the wrong letter lol! – stack reader Dec 19 '16 at 10:01
• Actually, there were 2 typos with log so not you mistake :) – Techidiot Dec 19 '16 at 10:05
• @Techidiot yeah, just found out the math.og2 one while searching for more. – stack reader Dec 19 '16 at 10:06
• The D in 5D0 is not an error. The ! at the start probably is one. The code calculates the values 1488, 1514, 1489 and 1513 which get interpreted as (unicode) characters and printed. If the program were working it would print the hebrew letters ATBS. Not sure how that helps with the typing errors. – w l Dec 19 '16 at 11:11

The letters found by stackreader and wl give
rilm h0lofgvATBS
, which is

an anagram for 'BfSAlgoriThm lv0', which might mean 'Breadth-first-search algorithm level zero', that is the root of a search tree.

So the solution of this clue is probably

root

• Nope. This is not the answer. – Mithical Dec 19 '16 at 12:34
• @Mithrandir you mean this is completely accidental? or there are more steps needed to be taken? – elias Dec 19 '16 at 12:40
• This is accidental. – Scimonster Dec 19 '16 at 14:13
• I'd say it's pretty amazing then. – elias Dec 19 '16 at 14:21
• An obvious weakness of your proposed solution is the incorrect capitalization of "Thm" in "Algorithm". There is absolutely no reason to capitalize that way. – Matsmath Dec 19 '16 at 14:44