javascript:eval(function () { if (!document.querySelector("#ytls-pane"))%20{%20var%20pane%20=%20document.createElement("div");%20var%20exit%20=%20document.createElement("span");%20var%20list%20=%20document.createElement("ul");%20var%20nowli%20=%20document.createElement("li");%20var%20nowa%20=%20document.createElement("a");%20var%20nowid;%20var%20nowtext%20=%20document.createElement("input");%20var%20box%20=%20document.createElement("textarea");%20var%20buttons%20=%20document.createElement("div");%20var%20paster%20=%20document.createElement("button");%20var%20adder%20=%20document.createElement("button");%20var%20firstcopy%20=%20true;%20var%20copier%20=%20document.createElement("button");%20var%20style%20=%20document.createElement("style");%20%20function%20closePane()%20{%20if%20(confirm("Close%20timestamp%20tool?"))%20{%20pane.remove();%20cancelAnimationFrame(nowid);%20window.removeEventListener("beforeunload",%20warn);%20}%20}%20%20function%20updateStamp(stamp,%20time)%20{%20stamp.innerHTML%20=%20formatTime(time);%20stamp.dataset.time%20=%20time;%20stamp.href%20=%20"https://youtu.be/"%20+%20location.search.split(/.+v=|&/)[1]%20+%20"?t="%20+%20time;%20}%20%20function%20clickStamp(e)%20{%20if%20(e.target.dataset.time)%20{%20e.preventDefault();%20document.querySelector("video").currentTime%20=%20e.target.dataset.time;%20}%20else%20if%20(e.target.dataset.increment)%20{%20e.preventDefault();%20var%20li%20=%20e.target.parentElement;%20var%20a%20=%20li.children[2];%20var%20time%20=%20parseInt(a.dataset.time)%20+%20parseInt(e.target.dataset.increment);%20updateStamp(a,%20time);%20}%20}%20%20function%20watchTime()%20{%20try%20{%20var%20time%20=%20Math.floor(document.querySelector("video").duration);%20updateStamp(nowa,%20time);%20}%20catch%20(e)%20{}%20nowid%20=%20requestAnimationFrame(watchTime);%20}%20%20function%20unformatTime(stamp)%20{%20var%20hms%20=%20stamp.split(":").map(e%20=>%20parseInt(e));%20if%20(hms.length%20<%203)%20{%20return%2060%20*%20hms[0]%20+%20hms[1];%20}%20return%203600%20*%20hms[0]%20+%2060%20*%20hms[1]%20+%20hms[2];%20}%20%20function%20newLi(time,%20note)%20{%20var%20li%20=%20document.createElement("li");%20var%20minus%20=%20document.createElement("span");%20var%20plus%20=%20document.createElement("span");%20var%20a%20=%20document.createElement("a");%20var%20text%20=%20document.createElement("input");%20minus.innerHTML%20=%20"%E2%9E%96";%20minus.dataset.increment%20=%20-1;%20plus.innerHTML%20=%20"%E2%9E%95";%20plus.dataset.increment%20=%201;%20updateStamp(a,%20time);%20li.appendChild(minus);%20li.appendChild(plus);%20li.appendChild(a);%20li.appendChild(text);%20list.appendChild(li);%20return%20text;%20}%20%20function%20pasteList()%20{%20var%20lines%20=%20box.value.split("\n");%20list.innerHTML%20=%20"";%20for%20(var%20i%20=%200;%20i%20<%20lines.length;%20i++)%20{%20var%20line%20=%20lines[i].trim();%20var%20stamp%20=%20line.split(/\s+/,%201)[0];%20var%20time%20=%20unformatTime(stamp);%20var%20note%20=%20line.slice(stamp.length%20+%201);%20var%20text%20=%20newLi(time,%20note);%20text.value%20=%20note;%20}%20list.appendChild(nowli);%20}%20%20function%20formatTime(time)%20{%20var%20h%20=%20Math.floor(time%20/%203600);%20var%20m%20=%20Math.floor(time%20/%2060)%20%%2060;%20var%20s%20=%20Math.floor(time)%20%%2060;%20return%20(h%20?%20(h%20+%20":"%20+%20String(m).padStart(2,%200))%20:%20m)%20+%20":"%20+%20String(s).padStart(2,%200);%20}%20%20function%20addStamp()%20{%20var%20time%20=%20Math.max(0,%20Math.floor(document.querySelector("video").currentTime%20-%205));%20var%20text%20=%20newLi(time);%20list.appendChild(nowli);%20text.focus();%20}%20%20function%20resetCopier()%20{%20firstcopy%20=%20true;%20copier.innerHTML%20=%20"Copy%20List";%20}%20%20function%20copyList()%20{%20var%20string%20=%20"";%20if%20(firstcopy)%20{%20firstcopy%20=%20false;%20copier.innerHTML%20=%20"Copy%20Links";%20setTimeout(resetCopier,%20500);%20for%20(var%20i%20=%200;%20i%20<%20list.children.length%20-%201;%20i++)%20{%20var%20stamp%20=%20list.children[i].children[2].innerHTML;%20var%20note%20=%20list.children[i].children[3].value;%20string%20+=%20(i%20>%200%20?%20"\n"%20:%20"")%20+%20(stamp%20+%20"%20"%20+%20note).trim();%20}%20}%20else%20{%20resetCopier();%20for%20(var%20i%20=%200;%20i%20<%20list.children.length%20-%201;%20i++)%20{%20var%20stamp%20=%20list.children[i].children[2].href;%20var%20note%20=%20list.children[i].children[3].value;%20string%20+=%20(i%20>%200%20?%20"\n"%20:%20"")%20+%20(note%20+%20"%20"%20+%20stamp).trim();%20}%20}%20box.value%20=%20string;%20box.select();%20document.execCommand("copy");%20}%20%20function%20warn(e)%20{%20e.preventDefault();%20e.returnValue%20=%20"Close%20timestamp%20tool?";%20return%20e.returnValue;%20}%20%20pane.id%20=%20"ytls-pane";%20exit.innerHTML%20=%20"×";%20watchTime();%20nowtext.disabled%20=%20true;%20nowtext.value%20=%20"End%20of%20Video";%20box.id%20=%20"ytls-box";%20buttons.id%20=%20"ytls-buttons";%20paster.innerHTML%20=%20"Import%20List";%20adder.innerHTML%20=%20"Add%20Timestamp";%20copier.innerHTML%20=%20"Copy%20List";%20style.innerHTML%20=%20`%20#ytls-pane%20{%20background:%20rgba(0,0,0,.5);%20text-align:%20right;%20position:%20fixed;%20bottom:%200;%20padding:%200%205px;%20opacity:%20.5;%20z-index:%205000;%20}%20#ytls-pane:hover%20{%20opacity:%201;%20}%20#ytls-pane%20span%20{%20cursor:%20pointer;%20}%20#ytls-pane%20ul%20{%20list-style:%20none;%20}%20#ytls-pane%20span,%20#ytls-pane%20a,%20#ytls-pane%20input%20{%20background:%20none;%20color:%20white;%20font-family:%20inherit;%20font-size:%20initial;%20text-decoration:%20none;%20border:%20none;%20outline:%20none;%20}%20#ytls-box%20{%20font-family:%20monospace;%20width:%20100%;%20display:%20block;%20padding:%200;%20border:%20none;%20outline:%20none;%20resize:%20none;%20}%20#ytls-buttons%20{%20display:%20flex;%20}%20#ytls-buttons%20button%20{%20background:%20transparent;%20color:%20white;%20font-size:%2012px;%20flex:%20auto;%20padding:%202px;%20border:%201px%20solid%20white;%20}%20`;%20%20exit.addEventListener("click",%20closePane);%20list.addEventListener("click",%20clickStamp);%20list.addEventListener("touchstart",%20clickStamp);%20paster.addEventListener("click",%20pasteList);%20adder.addEventListener("click",%20addStamp);%20copier.addEventListener("click",%20copyList);%20window.addEventListener("beforeunload",%20warn);%20%20pane.appendChild(exit);%20nowli.appendChild(nowa);%20nowli.appendChild(nowtext);%20list.appendChild(nowli);%20pane.appendChild(list);%20pane.appendChild(box);%20buttons.appendChild(paster);%20buttons.appendChild(adder);%20buttons.appendChild(copier);%20pane.appendChild(buttons);%20pane.appendChild(style);%20document.body.appendChild(pane);%20%20box.focus();%20}})();