https://javascript.plainenglish.io/code-and-conquer-longest-substring-without-repeating-characters-f10b40d2c967