I hereby claim:
- I am owhs on github.
- I am owhs (https://keybase.io/owhs) on keybase.
- I have a public key whose fingerprint is 6221 F0DF E14C C927 D7BE 4043 49F1 4CDF 7B90 8963
To claim this, I am signing this object:
| <!-- | |
| https://stackoverflow.com/questions/4057236/how-to-add-onload-event-to-a-div-element | |
| --> | |
| <!-- Image Self Swap --> | |
| <img onerror="this.outerHTML=Date.now()" src /> | |
| <img onerror="this.replaceWith(document.createTextNode((new Date).getFullYear()))" src /> | |
| <!-- Script Self Swap --> | |
| <script id="curDate">document.querySelector("#curDate").outerHTML=Date.now()</script> |
| // https://stackoverflow.com/questions/8132081/generate-a-random-seeded-hex-color | |
| const genColor = seed=>("000000" + (Math.floor((Math.abs(Math.sin(+[...(new TextEncoder()).encode(seed)].join("")) * 16777215))).toString(16))).slice(-6); | |
| function genColor (seed) { | |
| return ("000000" + ( // set default padding | |
| Math.floor((Math.abs( | |
| Math.sin( // sin for psudorandomisation between -1 - 1 | |
| +[...(new TextEncoder()).encode(seed)].join("") // converts seed string into a byte array, joins and converts to a number | |
| ) * 16777215) // upto FFFFFF |
| // run on: | |
| // https://www.wsop.com/players/profile/?playerid=* | |
| // for further info on net profit and the averages (buy in, earnings, net & place) | |
| function cleanUp(t){ | |
| return +t.split(" ")[0].slice(1).replace(/,/g,"") | |
| } | |
| var head = document.querySelector("#dtPlayers_wrapper thead>tr"), | |
| select = document.querySelector("select[name='dtPlayers_length']"); |
| @echo off | |
| :start | |
| set /p folder="Enter folder name: " | |
| set /p url="Enter URL: " | |
| mkdir "%folder%" 2>nul | |
| cd "%folder%" || exit /b | |
| yt-dlp --skip-download --sub-langs "en" --write-auto-subs --match-filter "title ~= (?i)pok[eé]mon" "%url%" |
| const randomTxt = "by the terms of use available in full at https://www.nominet.uk/whoisterms,, which includes restrictions on: (A) use of the data for advertising, or its, repackaging, recompilation, redistribution or reuse (B) obscuring, removing, or hiding any or all of this notice and (C) exceeding query rate or volume, limits. The data is provided on an 'as-is' basis and may lag behind the, register. Access may be withdrawn or restricted at any time.", | |
| runTimes = 1000000, | |
| test = fn=>{ | |
| var ts = Date.now(); | |
| for (var i=0;i<runTimes;i++){ | |
| fn(randomTxt) | |
| } | |
| var tt = (Date.now() - ts); | |
| return {timetaken:tt+"ms",ops:Math.floor((runTimes/(tt/1000)))+"ops/sec"} | |
| }; |
| const POLL_RATE = 10; | |
| // get current state | |
| let tabOnly; | |
| chrome.storage.local.get("tabOnly").then((value) => { | |
| tabOnly = value.tabOnly || value.tabOnly == undefined; | |
| }); | |
| // loop | |
| let until = setInterval(() => { |
| // https://forum.vivaldi.net/topic/92477/some-javascript-to-automatically-hide-tab-bar-and-address-bar-and-show-them-by-hovering | |
| // https://github.com/mannyzhuo/vivaldi_modification/blob/main/firefox_style_fullscreen.js | |
| // https://forum.vivaldi.net/topic/92477/some-javascript-to-automatically-hide-tab-bar-and-address-bar-and-show-them-by-hovering/3 | |
| const POLL_RATE = 10; | |
| // get current state | |
| let tabOnly; | |
| chrome.storage.local.get("tabOnly").then((value) => { | |
| tabOnly = value.tabOnly || value.tabOnly == undefined; |
| // select("div").where("class", "has", "d-flex").result() | |
| // select("div").where("class", "has", "d-flex").result("innerHTML") | |
| // select("form#list input").where("type", "is", "checkbox").result("value") | |
| function select(selector){ | |
| function filter(arr,attr,operator,value) { | |
| operator = operator.toLowerCase(); | |
| var invOp = operator.slice(0,3)==="not"; | |
| if (invOp) operator = operator.slice(3).trim(); | |
| //put video ids in blacklist | |
| var blacklist="".split(","), | |
| filtered=[...document.querySelectorAll("ytcp-video-row a#video-title")].filter(x=>!blacklist.includes(x.href.split("/").slice(-2)[0])); | |
| console.log("views comments likes\n", | |
| filtered.map(x=>+x.closest("ytcp-video-row").querySelector(".tablecell-views").innerText.replace(/,/g,"")).reduce((a,b)=>a+b,0), | |
| filtered.map(x=>+x.closest("ytcp-video-row").querySelector(".comments-link").innerText.replace(/,/g,"")).reduce((a,b)=>a+b,0), | |
| filtered.map(x=>+((x.closest("ytcp-video-row").querySelector(".likes-container").innerText.split("\n")[1])||"0").split(" ")[0]).reduce((a,b)=>a+b,0)); |
I hereby claim:
To claim this, I am signing this object: