diff --git a/bio/Pixel.ttf b/bio/Pixel.ttf
new file mode 100644
index 0000000..dcca687
Binary files /dev/null and b/bio/Pixel.ttf differ
diff --git a/bio/README.md b/bio/README.md
new file mode 100644
index 0000000..ee3294e
--- /dev/null
+++ b/bio/README.md
@@ -0,0 +1 @@
+fuck the haters :middlefinger:
\ No newline at end of file
diff --git a/bio/audio.js b/bio/audio.js
new file mode 100644
index 0000000..18149c9
--- /dev/null
+++ b/bio/audio.js
@@ -0,0 +1,138 @@
+const songs = [
+ {
+ title: "Bladee & Ecco2k - Bleach",
+ src: "https://easyfiles.cc/2024/9/4ac37ab2-20d7-4fd8-863b-3dcee1c418cd/BLADEE%20&%20ECCO2K%20-%20BLEACH%20-%20drain%20gang%20(720p50,%20h264)(1).mp4" ,
+ duration: 153
+ },
+
+ {
+ title: "woody - Heaven & Hell",
+ src: "https://easyfiles.cc/2024/9/20fa08a2-8212-4212-93b7-9c62fc563505/woody%20heaven%20&%20hell%20prod.%201mint%20-%20real1woody%20(1080p,%20h264)(1).mp4" ,
+ duration: 142
+ },
+
+
+ {
+ title: "woody - God Said I Was Good",
+ src: "https://easyfiles.cc/2024/8/9cafa851-0405-4009-b639-08ff5e029dc3/youtube_Z4IF2ujq1Xk_1280x720_h264(1).mp4" ,
+ duration: 135
+ },
+
+ {
+ title: "SmokeTeam6 - PackistanFlashback",
+ src: "file:///C:/Users/Fabio/Downloads/SmokeTeam6%20-%20PackistanFlashback%20(VEVO%20Official%20Music%20Video)%20-%20benwbush%20(1080p,%20h264)(1).mp4" ,
+ duration: 92
+ },
+
+ {
+ title: "sniper2004 - la ny",
+ src: "https://easyfiles.cc/2024/8/b8332c2a-e70b-4ec0-9ba8-acc7e5449db7/youtube_mkmn3QZSZUM_874x720_h264(1).mp4" ,
+ duration: 87
+ },
+
+ {
+ title: "Joeyy - PR Package",
+ src: "https://easyfiles.cc/2024/8/7c649f45-6573-4665-9675-4d869ea1332a/youtube_ZvphwrKo52s_1280x720_h264(1).mp4" ,
+ duration: 111
+ },
+
+ {
+ title: "woody - Paint Thinner",
+ src: "https://easyfiles.cc/2024/8/2110cfc6-d700-4c42-bc66-bafa5799c1fc/youtube_rhaFMuU1_qw_1280x720_h264(1).mp4" ,
+ duration: 100
+ },
+
+];
+
+let currentSongIndex = 0;
+let isPlaying = false;
+
+const main = document.getElementById("player")
+const videoPlayer = document.getElementById("videoPlayer");
+const playPauseButton = document.getElementById("playPause");
+const songInfo = document.getElementById("songInfo");
+const progressBar = document.getElementById("progressBar");
+const volumeSlider = document.getElementById('volumeSlider');
+const volumePercent = document.getElementById('volumePercent')
+const currentDuration = document.getElementById("current-duration");
+const totalDuration = document.getElementById("total-duration");
+
+videoPlayer.addEventListener("timeupdate", () => {
+ let value = (videoPlayer.currentTime / videoPlayer.duration) * 100;
+ progressBar.value = value;
+ updateSliderBackground(progressBar, value);
+ currentDuration.innerText = formatTime(videoPlayer.currentTime);
+ totalDuration.innerText = formatTime(songs[currentSongIndex].duration);
+});
+
+progressBar.addEventListener('wheel', function (event) {
+ event.preventDefault();
+});
+
+document.getElementById("prev").addEventListener("click", () => {
+ currentSongIndex = (currentSongIndex - 1 + songs.length) % songs.length;
+ loadSong(currentSongIndex);
+ if (isPlaying) {
+ videoPlayer.play();
+ }
+});
+
+document.getElementById("next").addEventListener("click", () => {
+ currentSongIndex = (currentSongIndex + 1) % songs.length;
+ loadSong(currentSongIndex);
+ if (isPlaying) {
+ videoPlayer.play();
+ }
+});
+
+playPauseButton.addEventListener("click", () => {
+ if (isPlaying) {
+ videoPlayer.pause();
+ playPauseButton.innerHTML = "►";
+ } else {
+ videoPlayer.play();
+ playPauseButton.innerHTML = "❚❚";
+ }
+ isPlaying =!isPlaying;
+});
+
+videoPlayer.addEventListener("ended", () => {
+ currentSongIndex = (currentSongIndex + 1) % songs.length;
+ loadSong(currentSongIndex);
+ videoPlayer.play();
+});
+
+function updateSliderBackground(slider, value) {
+ slider.style.background = `linear-gradient(to right, #ffffff 0%, #ffffff ${value}%, #cbcbcb ${value}%, #cbcbcb 100%)`;
+}
+
+function loadSong(index) {
+ videoPlayer.src = songs[index].src;
+ songInfo.innerText = songs[index].title;
+ progressBar.value = 0;
+ totalDuration.innerText = formatTime(songs[index].duration);
+ videoPlayer.load();
+ videoPlayer.play();
+}
+
+videoPlayer.volume = volumeSlider.value / 100;
+volumePercent.innerText = `${volumeSlider.value}%`;
+updateVolumeSliderBackground(volumeSlider, volumeSlider.value);
+
+volumeSlider.addEventListener('input', function () {
+ videoPlayer.volume = volumeSlider.value / 100;
+ volumePercent.innerText = `${volumeSlider.value}%`;
+ updateVolumeSliderBackground(volumeSlider, volumeSlider.value);
+});
+
+function updateVolumeSliderBackground(slider, value) {
+ slider.style.background = `linear-gradient(to right, #ffffff 0%, #ffffff ${value}%, #cbcbcb ${value}%, #cbcbcb 100%)`;
+}
+
+function formatTime(time) {
+ const minutes = Math.floor(time / 60);
+ const seconds = Math.floor(time % 60);
+ return `${minutes}:${seconds.toString().padStart(2, "0")}`;
+}
+
+loadSong(0);
\ No newline at end of file
diff --git a/bio/disable-devtool@latest b/bio/disable-devtool@latest
new file mode 100644
index 0000000..f71219f
--- /dev/null
+++ b/bio/disable-devtool@latest
@@ -0,0 +1 @@
+!function (e, t) { "object" == typeof exports && "undefined" != typeof module ? module.exports = t() : "function" == typeof define && define.amd ? define(t) : (e = "undefined" != typeof globalThis ? globalThis : e || self).DisableDevtool = t() }(this, function () { "use strict"; function o(e) { return (o = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (e) { return typeof e } : function (e) { return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e })(e) } function i(e, t) { if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function") } function r(e, t) { for (var n = 0; n < t.length; n++) { var i = t[n]; i.enumerable = i.enumerable || !1, i.configurable = !0, "value" in i && (i.writable = !0), Object.defineProperty(e, i.key, i) } } function u(e, t, n) { t && r(e.prototype, t), n && r(e, n), Object.defineProperty(e, "prototype", { writable: !1 }) } function e(e, t, n) { t in e ? Object.defineProperty(e, t, { value: n, enumerable: !0, configurable: !0, writable: !0 }) : e[t] = n } function n(e, t) { if ("function" != typeof t && null !== t) throw new TypeError("Super expression must either be null or a function"); e.prototype = Object.create(t && t.prototype, { constructor: { value: e, writable: !0, configurable: !0 } }), Object.defineProperty(e, "prototype", { writable: !1 }), t && a(e, t) } function c(e) { return (c = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function (e) { return e.__proto__ || Object.getPrototypeOf(e) })(e) } function a(e, t) { return (a = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function (e, t) { return e.__proto__ = t, e })(e, t) } function H(e, t) { if (t && ("object" == typeof t || "function" == typeof t)) return t; if (void 0 !== t) throw new TypeError("Derived constructors may only return object or undefined"); t = e; if (void 0 === t) throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); return t } function l(n) { var i = function () { if ("undefined" == typeof Reflect || !Reflect.construct) return !1; if (Reflect.construct.sham) return !1; if ("function" == typeof Proxy) return !0; try { return Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () { })), !0 } catch (e) { return !1 } }(); return function () { var e, t = c(n); return H(this, i ? (e = c(this).constructor, Reflect.construct(t, arguments, e)) : t.apply(this, arguments)) } } function f(e, t) { (null == t || t > e.length) && (t = e.length); for (var n = 0, i = new Array(t); n < t; n++)i[n] = e[n]; return i } function s(e, t) { var n, i = "undefined" != typeof Symbol && e[Symbol.iterator] || e["@@iterator"]; if (!i) { if (Array.isArray(e) || (i = function (e, t) { if (e) { if ("string" == typeof e) return f(e, t); var n = Object.prototype.toString.call(e).slice(8, -1); return "Map" === (n = "Object" === n && e.constructor ? e.constructor.name : n) || "Set" === n ? Array.from(e) : "Arguments" === n || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n) ? f(e, t) : void 0 } }(e)) || t && e && "number" == typeof e.length) return i && (e = i), n = 0, { s: t = function () { }, n: function () { return n >= e.length ? { done: !0 } : { done: !1, value: e[n++] } }, e: function (e) { throw e }, f: t }; throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.") } var o, r = !0, u = !1; return { s: function () { i = i.call(e) }, n: function () { var e = i.next(); return r = e.done, e }, e: function (e) { u = !0, o = e }, f: function () { try { r || null == i.return || i.return() } finally { if (u) throw o } } } } function t() { if (d.url) window.location.href = d.url; else if (d.rewriteHTML) try { document.documentElement.innerHTML = d.rewriteHTML } catch (e) { document.documentElement.innerText = d.rewriteHTML } else { try { window.opener = null, window.open("", "_self"), window.close(), window.history.back() } catch (e) { console.log(e) } setTimeout(function () { window.location.href = d.timeOutUrl || "https://theajack.github.io/disable-devtool/404.html?h=".concat(encodeURIComponent(location.host)) }, 500) } } var d = { md5: "", ondevtoolopen: t, ondevtoolclose: null, url: "", timeOutUrl: "", tkName: "ddtk", interval: 500, disableMenu: !0, stopIntervalTime: 5e3, clearIntervalWhenDevOpenTrigger: !1, detectors: [0, 1, 3, 4, 5, 6, 7], clearLog: !0, disableSelect: !1, disableCopy: !1, disableCut: !1, disablePaste: !1, ignore: null, disableIframeParents: !0, seo: !0, rewriteHTML: "" }, U = ["detectors", "ondevtoolclose", "ignore"]; function q(e) { var t, n = 0 < arguments.length && void 0 !== e ? e : {}; for (t in d) { var i = t; void 0 === n[i] || o(d[i]) !== o(n[i]) && -1 === U.indexOf(i) || (d[i] = n[i]) } "function" == typeof d.ondevtoolclose && !0 === d.clearIntervalWhenDevOpenTrigger && (d.clearIntervalWhenDevOpenTrigger = !1, console.warn("【DISABLE-DEVTOOL】clearIntervalWhenDevOpenTrigger 在使用 ondevtoolclose 时无效")) } function v() { return (new Date).getTime() } function z(e) { var t = v(); return e(), v() - t } function B(n, i) { function e(t) { return function () { n && n(); var e = t.apply(void 0, arguments); return i && i(), e } } var t = window.alert, o = window.confirm, r = window.prompt; try { window.alert = e(t), window.confirm = e(o), window.prompt = e(r) } catch (e) { } } var p = { iframe: !1, pc: !1, qqBrowser: !1, firefox: !1, macos: !1, edge: !1, oldEdge: !1, ie: !1, iosChrome: !1, iosEdge: !1, chrome: !1, seoBot: !1, mobile: !1 }; function W() { function e(e) { return -1 !== t.indexOf(e) } var t = navigator.userAgent.toLowerCase(), n = function () { var e = navigator, t = e.platform, e = e.maxTouchPoints; if ("number" == typeof e) return 1 < e; if ("string" == typeof t) { e = t.toLowerCase(); if (/(mac|win)/i.test(e)) return !1; if (/(android|iphone|ipad|ipod|arch)/i.test(e)) return !0 } return /(iphone|ipad|ipod|ios|android)/i.test(navigator.userAgent.toLowerCase()) }(), i = !!window.top && window !== window.top, o = !n, r = e("qqbrowser"), u = e("firefox"), c = e("macintosh"), a = e("edge"), l = a && !e("chrome"), f = l || e("trident") || e("msie"), s = e("crios"), d = e("edgios"), v = e("chrome") || s, h = !n && /(googlebot|baiduspider|bingbot|applebot|petalbot|yandexbot|bytespider|chrome\-lighthouse|moto g power)/i.test(t); Object.assign(p, { iframe: i, pc: o, qqBrowser: r, firefox: u, macos: c, edge: a, oldEdge: l, ie: f, iosChrome: s, iosEdge: d, chrome: v, seoBot: h, mobile: n }) } function M() { for (var e = function () { for (var e = {}, t = 0; t < 500; t++)e["".concat(t)] = "".concat(t); return e }(), t = [], n = 0; n < 50; n++)t.push(e); return t } var h, y, K, b = window.console || { log: function () { }, table: function () { }, clear: function () { } }; function w() { d.clearLog && K() } var V = "", F = !1; function X() { var e = d.ignore; if (e) { if ("function" == typeof e) return e(); if (0 !== e.length) { var t = location.href; if (V === t) return F; V = t; var n, i = !1, o = s(e); try { for (o.s(); !(n = o.n()).done;) { var r = n.value; if ("string" == typeof r) { if (-1 !== t.indexOf(r)) { i = !0; break } } else if (r.test(t)) { i = !0; break } } } catch (e) { o.e(e) } finally { o.f() } return F = i } } } var N = function () { return !1 }; function g(n) { var t, e, i = 74, o = 73, r = 85, u = 83, c = 123, a = p.macos ? function (e, t) { return e.metaKey && e.altKey && (t === o || t === i) } : function (e, t) { return e.ctrlKey && e.shiftKey && (t === o || t === i) }, l = p.macos ? function (e, t) { return e.metaKey && e.altKey && t === r || e.metaKey && t === u } : function (e, t) { return e.ctrlKey && (t === u || t === r) }; n.addEventListener("keydown", function (e) { var t = (e = e || n.event).keyCode || e.which; if (t === c || a(e, t) || l(e, t)) return T(n, e) }, !0), t = n, d.disableMenu && t.addEventListener("contextmenu", function (e) { if ("touch" !== e.pointerType) return T(t, e) }), e = n, d.disableSelect && m(e, "selectstart"), e = n, d.disableCopy && m(e, "copy"), e = n, d.disableCut && m(e, "cut"), e = n, d.disablePaste && m(e, "paste") } function m(t, e) { t.addEventListener(e, function (e) { return T(t, e) }) } function T(e, t) { if (!X() && !N()) return (t = t || e.event).returnValue = !1, t.preventDefault(), !1 } var O, D = !1, S = {}; function $(e) { S[e] = !1 } function G() { for (var e in S) if (S[e]) return D = !0; return D = !1 } (_ = O = O || {})[_.Unknown = -1] = "Unknown", _[_.RegToString = 0] = "RegToString", _[_.DefineId = 1] = "DefineId", _[_.Size = 2] = "Size", _[_.DateToString = 3] = "DateToString", _[_.FuncToString = 4] = "FuncToString", _[_.Debugger = 5] = "Debugger", _[_.Performance = 6] = "Performance", _[_.DebugLib = 7] = "DebugLib"; var k = function () { function n(e) { var t = e.type, e = e.enabled, e = void 0 === e || e; i(this, n), this.type = O.Unknown, this.enabled = !0, this.type = t, this.enabled = e, this.enabled && (t = this, Z.push(t), this.init()) } return u(n, [{ key: "onDevToolOpen", value: function () { var e; console.warn("You don't have permission to use DEVTOOL!【type = ".concat(this.type, "】")), d.clearIntervalWhenDevOpenTrigger && ne(), window.clearTimeout(Q), d.ondevtoolopen(this.type, t), e = this.type, S[e] = !0 } }, { key: "init", value: function () { } }]), n }(), Y = function () { n(t, k); var e = l(t); function t() { return i(this, t), e.call(this, { type: O.DebugLib }) } return u(t, [{ key: "init", value: function () { } }, { key: "detect", value: function () { var e; (!0 === (null == (e = null == (e = window.eruda) ? void 0 : e._devTools) ? void 0 : e._isShow) || window._vcOrigConsole && window.document.querySelector("#__vconsole.vc-toggle")) && this.onDevToolOpen() } }], [{ key: "isUsing", value: function () { return !!window.eruda || !!window._vcOrigConsole } }]), t }(), J = 0, Q = 0, Z = [], ee = 0; function te(o) { function e() { l = !0 } function t() { l = !1 } var n, i, r, u, c, a, l = !1; function f() { (a[u] === r ? i : n)() } B(e, t), n = t, i = e, void 0 !== (a = document).hidden ? (r = "hidden", c = "visibilitychange", u = "visibilityState") : void 0 !== a.mozHidden ? (r = "mozHidden", c = "mozvisibilitychange", u = "mozVisibilityState") : void 0 !== a.msHidden ? (r = "msHidden", c = "msvisibilitychange", u = "msVisibilityState") : void 0 !== a.webkitHidden && (r = "webkitHidden", c = "webkitvisibilitychange", u = "webkitVisibilityState"), a.removeEventListener(c, f, !1), a.addEventListener(c, f, !1), J = window.setInterval(function () { if (!(o.isSuspend || l || X())) { var e, t, n = s(Z); try { for (n.s(); !(e = n.n()).done;) { var i = e.value; $(i.type), i.detect(ee++) } } catch (e) { n.e(e) } finally { n.f() } w(), "function" == typeof d.ondevtoolclose && (t = D, !G() && t && d.ondevtoolclose()) } }, d.interval), Q = setTimeout(function () { p.pc || Y.isUsing() || ne() }, d.stopIntervalTime) } function ne() { window.clearInterval(J) } var P = 8; function ie(e) { for (var t = function (e, t) { e[t >> 5] |= 128 << t % 32, e[14 + (t + 64 >>> 9 << 4)] = t; for (var n = 1732584193, i = -271733879, o = -1732584194, r = 271733878, u = 0; u < e.length; u += 16) { var c = n, a = i, l = o, f = r; n = E(n, i, o, r, e[u + 0], 7, -680876936), r = E(r, n, i, o, e[u + 1], 12, -389564586), o = E(o, r, n, i, e[u + 2], 17, 606105819), i = E(i, o, r, n, e[u + 3], 22, -1044525330), n = E(n, i, o, r, e[u + 4], 7, -176418897), r = E(r, n, i, o, e[u + 5], 12, 1200080426), o = E(o, r, n, i, e[u + 6], 17, -1473231341), i = E(i, o, r, n, e[u + 7], 22, -45705983), n = E(n, i, o, r, e[u + 8], 7, 1770035416), r = E(r, n, i, o, e[u + 9], 12, -1958414417), o = E(o, r, n, i, e[u + 10], 17, -42063), i = E(i, o, r, n, e[u + 11], 22, -1990404162), n = E(n, i, o, r, e[u + 12], 7, 1804603682), r = E(r, n, i, o, e[u + 13], 12, -40341101), o = E(o, r, n, i, e[u + 14], 17, -1502002290), i = E(i, o, r, n, e[u + 15], 22, 1236535329), n = j(n, i, o, r, e[u + 1], 5, -165796510), r = j(r, n, i, o, e[u + 6], 9, -1069501632), o = j(o, r, n, i, e[u + 11], 14, 643717713), i = j(i, o, r, n, e[u + 0], 20, -373897302), n = j(n, i, o, r, e[u + 5], 5, -701558691), r = j(r, n, i, o, e[u + 10], 9, 38016083), o = j(o, r, n, i, e[u + 15], 14, -660478335), i = j(i, o, r, n, e[u + 4], 20, -405537848), n = j(n, i, o, r, e[u + 9], 5, 568446438), r = j(r, n, i, o, e[u + 14], 9, -1019803690), o = j(o, r, n, i, e[u + 3], 14, -187363961), i = j(i, o, r, n, e[u + 8], 20, 1163531501), n = j(n, i, o, r, e[u + 13], 5, -1444681467), r = j(r, n, i, o, e[u + 2], 9, -51403784), o = j(o, r, n, i, e[u + 7], 14, 1735328473), i = j(i, o, r, n, e[u + 12], 20, -1926607734), n = I(n, i, o, r, e[u + 5], 4, -378558), r = I(r, n, i, o, e[u + 8], 11, -2022574463), o = I(o, r, n, i, e[u + 11], 16, 1839030562), i = I(i, o, r, n, e[u + 14], 23, -35309556), n = I(n, i, o, r, e[u + 1], 4, -1530992060), r = I(r, n, i, o, e[u + 4], 11, 1272893353), o = I(o, r, n, i, e[u + 7], 16, -155497632), i = I(i, o, r, n, e[u + 10], 23, -1094730640), n = I(n, i, o, r, e[u + 13], 4, 681279174), r = I(r, n, i, o, e[u + 0], 11, -358537222), o = I(o, r, n, i, e[u + 3], 16, -722521979), i = I(i, o, r, n, e[u + 6], 23, 76029189), n = I(n, i, o, r, e[u + 9], 4, -640364487), r = I(r, n, i, o, e[u + 12], 11, -421815835), o = I(o, r, n, i, e[u + 15], 16, 530742520), i = I(i, o, r, n, e[u + 2], 23, -995338651), n = L(n, i, o, r, e[u + 0], 6, -198630844), r = L(r, n, i, o, e[u + 7], 10, 1126891415), o = L(o, r, n, i, e[u + 14], 15, -1416354905), i = L(i, o, r, n, e[u + 5], 21, -57434055), n = L(n, i, o, r, e[u + 12], 6, 1700485571), r = L(r, n, i, o, e[u + 3], 10, -1894986606), o = L(o, r, n, i, e[u + 10], 15, -1051523), i = L(i, o, r, n, e[u + 1], 21, -2054922799), n = L(n, i, o, r, e[u + 8], 6, 1873313359), r = L(r, n, i, o, e[u + 15], 10, -30611744), o = L(o, r, n, i, e[u + 6], 15, -1560198380), i = L(i, o, r, n, e[u + 13], 21, 1309151649), n = L(n, i, o, r, e[u + 4], 6, -145523070), r = L(r, n, i, o, e[u + 11], 10, -1120210379), o = L(o, r, n, i, e[u + 2], 15, 718787259), i = L(i, o, r, n, e[u + 9], 21, -343485551), n = C(n, c), i = C(i, a), o = C(o, l), r = C(r, f) } return Array(n, i, o, r) }(function (e) { for (var t = Array(), n = (1 << P) - 1, i = 0; i < e.length * P; i += P)t[i >> 5] |= (e.charCodeAt(i / P) & n) << i % 32; return t }(e), e.length * P), n = "0123456789abcdef", i = "", o = 0; o < 4 * t.length; o++)i += n.charAt(t[o >> 2] >> o % 4 * 8 + 4 & 15) + n.charAt(t[o >> 2] >> o % 4 * 8 & 15); return i } function x(e, t, n, i, o, r) { return C((t = C(C(t, e), C(i, r))) << o | t >>> 32 - o, n) } function E(e, t, n, i, o, r, u) { return x(t & n | ~t & i, e, t, o, r, u) } function j(e, t, n, i, o, r, u) { return x(t & i | n & ~i, e, t, o, r, u) } function I(e, t, n, i, o, r, u) { return x(t ^ n ^ i, e, t, o, r, u) } function L(e, t, n, i, o, r, u) { return x(n ^ (t | ~i), e, t, o, r, u) } function C(e, t) { var n = (65535 & e) + (65535 & t); return (e >> 16) + (t >> 16) + (n >> 16) << 16 | 65535 & n } var _ = function () { n(t, k); var e = l(t); function t() { return i(this, t), e.call(this, { type: O.RegToString, enabled: p.qqBrowser || p.firefox }) } return u(t, [{ key: "init", value: function () { var t = this; this.lastTime = 0, this.reg = /./, h(this.reg), this.reg.toString = function () { var e; return p.qqBrowser ? (e = (new Date).getTime(), t.lastTime && e - t.lastTime < 100 ? t.onDevToolOpen() : t.lastTime = e) : p.firefox && t.onDevToolOpen(), "" } } }, { key: "detect", value: function () { h(this.reg) } }]), t }(), oe = function () { n(t, k); var e = l(t); function t() { return i(this, t), e.call(this, { type: O.DefineId }) } return u(t, [{ key: "init", value: function () { var e = this; this.div = document.createElement("div"), this.div.__defineGetter__("id", function () { e.onDevToolOpen() }), Object.defineProperty(this.div, "id", { get: function () { e.onDevToolOpen() } }) } }, { key: "detect", value: function () { h(this.div) } }]), t }(), re = function () { n(t, k); var e = l(t); function t() { return i(this, t), e.call(this, { type: O.Size, enabled: !p.iframe && !p.edge }) } return u(t, [{ key: "init", value: function () { var e = this; this.checkWindowSizeUneven(), window.addEventListener("resize", function () { setTimeout(function () { e.checkWindowSizeUneven() }, 100) }, !0) } }, { key: "detect", value: function () { } }, { key: "checkWindowSizeUneven", value: function () { var e = function () { if (ue(window.devicePixelRatio)) return window.devicePixelRatio; var e = window.screen; return !(ue(e) || !e.deviceXDPI || !e.logicalXDPI) && e.deviceXDPI / e.logicalXDPI }(); if (!1 !== e) { var t = 200 < window.outerWidth - window.innerWidth * e, e = 300 < window.outerHeight - window.innerHeight * e; if (t || e) return this.onDevToolOpen(), !1; $(this.type) } return !0 } }]), t }(); function ue(e) { return null != e } var A, ce = function () { n(t, k); var e = l(t); function t() { return i(this, t), e.call(this, { type: O.DateToString, enabled: !p.iosChrome && !p.iosEdge }) } return u(t, [{ key: "init", value: function () { var e = this; this.count = 0, this.date = new Date, this.date.toString = function () { return e.count++, "" } } }, { key: "detect", value: function () { this.count = 0, h(this.date), w(), 2 <= this.count && this.onDevToolOpen() } }]), t }(), ae = function () { n(t, k); var e = l(t); function t() { return i(this, t), e.call(this, { type: O.FuncToString, enabled: !p.iosChrome && !p.iosEdge }) } return u(t, [{ key: "init", value: function () { var e = this; this.count = 0, this.func = function () { }, this.func.toString = function () { return e.count++, "" } } }, { key: "detect", value: function () { this.count = 0, h(this.func), w(), 2 <= this.count && this.onDevToolOpen() } }]), t }(), le = function () { n(t, k); var e = l(t); function t() { return i(this, t), e.call(this, { type: O.Debugger, enabled: p.iosChrome || p.iosEdge }) } return u(t, [{ key: "detect", value: function () { var e = v(); 100 < v() - e && this.onDevToolOpen() } }]), t }(), fe = function () { n(t, k); var e = l(t); function t() { return i(this, t), e.call(this, { type: O.Performance, enabled: p.chrome || !p.mobile }) } return u(t, [{ key: "init", value: function () { this.maxPrintTime = 0, this.largeObjectArray = M() } }, { key: "detect", value: function () { var e = this, t = z(function () { y(e.largeObjectArray) }), n = z(function () { h(e.largeObjectArray) }); if (this.maxPrintTime = Math.max(this.maxPrintTime, n), w(), 0 === t || 0 === this.maxPrintTime) return !1; t > 10 * this.maxPrintTime && this.onDevToolOpen() } }]), t }(), se = (e(A = {}, O.RegToString, _), e(A, O.DefineId, oe), e(A, O.Size, re), e(A, O.DateToString, ce), e(A, O.FuncToString, ae), e(A, O.Debugger, le), e(A, O.Performance, fe), e(A, O.DebugLib, Y), A); var R = Object.assign(function (e) { function t() { var e = 0 < arguments.length && void 0 !== arguments[0] ? arguments[0] : ""; return { success: !e, reason: e } } if (R.isRunning) return t("already running"); if (W(), K = p.ie ? (h = function () { return b.log.apply(b, arguments) }, y = function () { return b.table.apply(b, arguments) }, function () { return b.clear() }) : (h = b.log, y = b.table, b.clear), q(e), d.md5 && ie(function (e) { var t = window.location.search, n = window.location.hash; if ("" !== (t = "" === t && "" !== n ? "?".concat(n.split("?")[1]) : t) && void 0 !== t) { n = new RegExp("(^|&)" + e + "=([^&]*)(&|$)", "i"), e = t.substr(1).match(n); if (null != e) return unescape(e[2]) } return "" }(d.tkName)) === d.md5) return t("token passed"); if (d.seo && p.seoBot) return t("seobot"); R.isRunning = !0, te(R); var n = R, i = (N = function () { return n.isSuspend }, window.top), o = window.parent; if (g(window), d.disableIframeParents && i && o && i !== window) { for (; o !== i;)g(o), o = o.parent; g(i) } return ("all" === d.detectors ? Object.keys(se) : d.detectors).forEach(function (e) { new se[e] }), t() }, { isRunning: !1, isSuspend: !1, md5: ie, version: "0.3.7", DetectorType: O, isDevToolOpened: G }); _ = function () { if ("undefined" == typeof window || !window.document) return null; var n = document.querySelector("[disable-devtool-auto]"); if (!n) return null; var i = ["disable-menu", "disable-select", "disable-copy", "disable-cut", "disable-paste", "clear-log"], o = ["interval"], r = {}; return ["md5", "url", "tk-name", "detectors"].concat(i, o).forEach(function (e) { var t = n.getAttribute(e); null !== t && (-1 !== o.indexOf(e) ? t = parseInt(t) : -1 !== i.indexOf(e) ? t = "false" !== t : "detector" === e && "all" !== t && (t = t.split(" ")), r[function (e) { if (-1 === e.indexOf("-")) return e; var t = !1; return e.split("").map(function (e) { return "-" === e ? (t = !0, "") : t ? (t = !1, e.toUpperCase()) : e }).join("") }(e)] = t) }), r }(); return _ && R(_), R });
diff --git a/bio/index.html b/bio/index.html
new file mode 100644
index 0000000..dd76a39
--- /dev/null
+++ b/bio/index.html
@@ -0,0 +1,132 @@
+
+
+
+
+
+
+
+ @zyqunix
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+

+
zyqunix
+
+
+
+
+
+
+
+
+
+
+

+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/bio/index.js b/bio/index.js
new file mode 100644
index 0000000..20777a3
--- /dev/null
+++ b/bio/index.js
@@ -0,0 +1,122 @@
+const messages = [
+ "Amateur Programmer",
+ "Donate Crypto!",
+ "lispnb and pluggnb <3 <3",
+ "woody.. my dearest ૮˶ᵔᵕᵔ˶ა",
+ "iluvshed",
+ "#lacethemwithfent",
+ "#lifeiseasy",
+ "#teammhuman"
+];
+
+let currentMessageIndex = 0;
+let currentCharIndex = 0;
+let isDeleting = false;
+
+function typeWriter() {
+ const currentMessage = messages[currentMessageIndex];
+ let displayText = '';
+
+ if (isDeleting) {
+ displayText = currentMessage.substring(0, currentCharIndex - 1);
+ currentCharIndex--;
+ } else {
+ displayText = currentMessage.substring(0, currentCharIndex + 1);
+ currentCharIndex++;
+ }
+
+ displayText += "|";
+ document.getElementById('typewriter').innerHTML = displayText;
+
+ if (!isDeleting && currentCharIndex === currentMessage.length + 1) {
+ isDeleting = true;
+ setTimeout(typeWriter, 1000);
+ } else if (isDeleting && currentCharIndex === 0) {
+ isDeleting = false;
+ currentMessageIndex = (currentMessageIndex + 1) % messages.length;
+ setTimeout(typeWriter, 1000);
+ } else {
+ setTimeout(typeWriter, isDeleting ? 40 : 75);
+ }
+}
+
+let cursorOpacity = 0;
+let fadeDirection = 1;
+
+setInterval(() => {
+ const cursorElement = document.getElementById("typewriter-line");
+
+ if (cursorElement) {
+ cursorElement.style.opacity = cursorOpacity;
+ cursorOpacity += 0.1 * fadeDirection;
+
+ if (cursorOpacity <= 0 || cursorOpacity >= 1) {
+ fadeDirection *= -1;
+ }
+ }
+}, 50);
+
+document.addEventListener("DOMContentLoaded", function () {
+ let titleIndex = 0;
+ let increasingTitle = true;
+
+ function updateTitle() {
+ const titleText = "@zyqunix";
+
+ if (increasingTitle) {
+ document.title = titleText.substring(0, titleIndex + 1);
+ titleIndex++;
+
+ if (titleIndex === titleText.length) {
+ increasingTitle = false;
+ setTimeout(updateTitle, 1500);
+ return;
+ }
+ } else {
+ document.title = titleText.substring(0, titleIndex - 1);
+ titleIndex--;
+
+ if (titleIndex === 1) {
+ increasingTitle = true;
+ setTimeout(updateTitle, 500);
+ return;
+ }
+ }
+
+ setTimeout(updateTitle, 333);
+ }
+
+ updateTitle();
+});
+
+let clickToEnterOverlay = document.getElementById("clickToEnter");
+clickToEnterOverlay.onclick = () => {
+ clickToEnterOverlay.style.transition = '0.75s';
+ clickToEnterOverlay.style.opacity = '0';
+ clickToEnterOverlay.style.zIndex = '-9999';
+
+ main.style.opacity = '1';
+ main.style.marginTop = "0px";
+
+ videoPlayer.play();
+ playPauseButton.innerHTML = "❚❚";
+ isPlaying = !isPlaying;
+
+ typeWriter();
+};
+
+document.addEventListener("DOMContentLoaded", () => {
+ window.addEventListener("keydown", event => {
+ if (event.ctrlKey && ['s', 'c', 'e', 'u'].includes(event.key.toLowerCase())) {
+ event.preventDefault();
+ window.location.href = 'https://pornhub.com/gay';
+ }
+ });
+
+ document.addEventListener("contextmenu", event => event.preventDefault());
+});
+
+function copyToClipboard(text) {
+ navigator.clipboard.writeText(text);
+ alert("Copied to clipboard!");
+}
diff --git a/bio/particle.js b/bio/particle.js
new file mode 100644
index 0000000..3706c04
--- /dev/null
+++ b/bio/particle.js
@@ -0,0 +1,1022 @@
+var cursoreffects = function (t) {
+ "use strict";
+ return t.bubbleCursor = function (t) {
+ let e, n, i, o = t && t.element,
+ s = o || document.body,
+ h = window.innerWidth,
+ c = window.innerHeight,
+ l = {
+ x: h / 2,
+ y: h / 2
+ },
+ a = [],
+ r = [];
+ const d = window.matchMedia("(prefers-reduced-motion: reduce)");
+
+ function u() {
+ if (d.matches) return console.log("This browser has prefers reduced motion turned on, so the cursor did not init"), !1;
+ e = document.createElement("canvas"), n = e.getContext("2d"), e.style.top = "0px", e.style.left = "0px", e.style.pointerEvents = "none", o ? (e.style.position = "absolute", s.appendChild(e), e.width = s.clientWidth, e.height = s.clientHeight) : (e.style.position = "fixed", document.body.appendChild(e), e.width = h, e.height = c), s.addEventListener("mousemove", g), s.addEventListener("touchmove", m, {
+ passive: !0
+ }), s.addEventListener("touchstart", m, {
+ passive: !0
+ }), window.addEventListener("resize", A), p()
+ }
+
+ function A(t) {
+ h = window.innerWidth, c = window.innerHeight, o ? (e.width = s.clientWidth, e.height = s.clientHeight) : (e.width = h, e.height = c)
+ }
+
+ function m(t) {
+ if (t.touches.length > 0)
+ for (let e = 0; e < t.touches.length; e++) f(t.touches[e].clientX, t.touches[e].clientY, r[Math.floor(Math.random() * r.length)])
+ }
+
+ function g(t) {
+ if (o) {
+ const e = s.getBoundingClientRect();
+ l.x = t.clientX - e.left, l.y = t.clientY - e.top
+ } else l.x = t.clientX, l.y = t.clientY;
+ f(l.x, l.y)
+ }
+
+ function f(t, e, n) {
+ a.push(new v(t, e, n))
+ }
+
+ function p() {
+ ! function () {
+ if (0 != a.length) {
+ n.clearRect(0, 0, h, c);
+ for (let t = 0; t < a.length; t++) a[t].update(n);
+ for (let t = a.length - 1; t >= 0; t--) a[t].lifeSpan < 0 && a.splice(t, 1);
+ 0 == a.length && n.clearRect(0, 0, h, c)
+ }
+ }(), i = requestAnimationFrame(p)
+ }
+
+ function y() {
+ e.remove(), cancelAnimationFrame(i), s.removeEventListener("mousemove", g), s.removeEventListener("touchmove", m), s.removeEventListener("touchstart", m), window.addEventListener("resize", A)
+ }
+
+ function v(t, e, n) {
+ const i = Math.floor(60 * Math.random() + 60);
+ this.initialLifeSpan = i, this.lifeSpan = i, this.velocity = {
+ x: (Math.random() < .5 ? -1 : 1) * (Math.random() / 10),
+ y: -1 * Math.random() - .4
+ }, this.position = {
+ x: t,
+ y: e
+ }, this.canv = n, this.baseDimension = 4, this.update = function (t) {
+ this.position.x += this.velocity.x, this.position.y += this.velocity.y, this.velocity.x += 2 * (Math.random() < .5 ? -1 : 1) / 75, this.velocity.y -= Math.random() / 600, this.lifeSpan--;
+ const e = .2 + (this.initialLifeSpan - this.lifeSpan) / this.initialLifeSpan;
+ t.fillStyle = "#e6f1f7", t.strokeStyle = "#3a92c5", t.beginPath(), t.arc(this.position.x - this.baseDimension / 2 * e, this.position.y - this.baseDimension / 2, this.baseDimension * e, 0, 2 * Math.PI), t.stroke(), t.fill(), t.closePath()
+ }
+ }
+ return d.onchange = () => {
+ d.matches ? y() : u()
+ }, u(), {
+ destroy: y
+ }
+ }, t.characterCursor = function (t) {
+ let e = t && t.element,
+ n = e || document.body,
+ i = t?.characters || ["h", "e", "l", "l", "o"];
+ const o = t?.colors || ["#6622CC", "#A755C2", "#B07C9E", "#B59194", "#D2A1B8"];
+ let s, h, c, l = t?.cursorOffset || {
+ x: 0,
+ y: 0
+ },
+ a = window.innerWidth,
+ r = window.innerHeight,
+ d = {
+ x: a / 2,
+ y: a / 2
+ },
+ u = [],
+ A = t?.font || "15px serif",
+ m = t?.characterLifeSpanFunction || function () {
+ return Math.floor(60 * Math.random() + 80)
+ },
+ g = t?.initialCharacterVelocityFunction || function () {
+ return {
+ x: (Math.random() < .5 ? -1 : 1) * Math.random() * 5,
+ y: (Math.random() < .5 ? -1 : 1) * Math.random() * 5
+ }
+ },
+ f = t?.characterVelocityChangeFunctions || {
+ x_func: function (t, e) {
+ return (Math.random() < .5 ? -1 : 1) / 30
+ },
+ y_func: function (t, e) {
+ return (Math.random() < .5 ? -1 : 1) / 15
+ }
+ },
+ p = t?.characterScalingFunction || function (t, e) {
+ let n = e - t;
+ return Math.max(n / e * 2, 0)
+ },
+ y = t?.characterNewRotationDegreesFunction || function (t, e) {
+ return (e - t) / 5
+ },
+ v = [];
+ const w = window.matchMedia("(prefers-reduced-motion: reduce)");
+
+ function x() {
+ if (w.matches) return console.log("This browser has prefers reduced motion turned on, so the cursor did not init"), !1;
+ s = document.createElement("canvas"), h = s.getContext("2d"), s.style.top = "0px", s.style.left = "0px", s.style.pointerEvents = "none", e ? (s.style.position = "absolute", n.appendChild(s), s.width = n.clientWidth, s.height = n.clientHeight) : (s.style.position = "fixed", document.body.appendChild(s), s.width = a, s.height = r), h.font = A, h.textBaseline = "middle", h.textAlign = "center", i.forEach((t => {
+ let e = h.measureText(t),
+ n = document.createElement("canvas"),
+ i = n.getContext("2d");
+ n.width = e.width, n.height = 2.5 * e.actualBoundingBoxAscent, i.textAlign = "center", i.font = A, i.textBaseline = "middle";
+ var s = o[Math.floor(Math.random() * o.length)];
+ i.fillStyle = s, i.fillText(t, n.width / 2, e.actualBoundingBoxAscent), v.push(n)
+ })), n.addEventListener("mousemove", C), n.addEventListener("touchmove", M, {
+ passive: !0
+ }), n.addEventListener("touchstart", M, {
+ passive: !0
+ }), window.addEventListener("resize", E), B()
+ }
+
+ function E(t) {
+ a = window.innerWidth, r = window.innerHeight, e ? (s.width = n.clientWidth, s.height = n.clientHeight) : (s.width = a, s.height = r)
+ }
+
+ function M(t) {
+ if (t.touches.length > 0)
+ for (let e = 0; e < t.touches.length; e++) L(t.touches[e].clientX, t.touches[e].clientY, v[Math.floor(Math.random() * v.length)])
+ }
+
+ function C(t) {
+ if (e) {
+ const e = n.getBoundingClientRect();
+ d.x = t.clientX - e.left, d.y = t.clientY - e.top
+ } else d.x = t.clientX, d.y = t.clientY;
+ L(d.x, d.y, v[Math.floor(Math.random() * i.length)])
+ }
+
+ function L(t, e, n) {
+ u.push(new R(t, e, n))
+ }
+
+ function B() {
+ ! function () {
+ if (0 != u.length) {
+ h.clearRect(0, 0, a, r);
+ for (let t = 0; t < u.length; t++) u[t].update(h);
+ for (let t = u.length - 1; t >= 0; t--) u[t].lifeSpan < 0 && u.splice(t, 1);
+ 0 == u.length && h.clearRect(0, 0, a, r)
+ }
+ }(), c = requestAnimationFrame(B)
+ }
+
+ function b() {
+ s.remove(), cancelAnimationFrame(c), n.removeEventListener("mousemove", C), n.removeEventListener("touchmove", M), n.removeEventListener("touchstart", M), window.addEventListener("resize", E)
+ }
+
+ function R(t, e, n) {
+ const i = m();
+ this.rotationSign = Math.random() < .5 ? -1 : 1, this.age = 0, this.initialLifeSpan = i, this.lifeSpan = i, this.velocity = g(), this.position = {
+ x: t + l.x,
+ y: e + l.y
+ }, this.canv = n, this.update = function (t) {
+ this.position.x += this.velocity.x, this.position.y += this.velocity.y, this.lifeSpan--, this.age++, this.velocity.x += f.x_func(this.age, this.initialLifeSpan), this.velocity.y += f.y_func(this.age, this.initialLifeSpan);
+ const e = p(this.age, this.initialLifeSpan),
+ n = .0174533 * (this.rotationSign * y(this.age, this.initialLifeSpan));
+ t.translate(this.position.x, this.position.y), t.rotate(n), t.drawImage(this.canv, -this.canv.width / 2 * e, -this.canv.height / 2, this.canv.width * e, this.canv.height * e), t.rotate(-n), t.translate(-this.position.x, -this.position.y)
+ }
+ }
+ return w.onchange = () => {
+ w.matches ? b() : x()
+ }, x(), {
+ destroy: b
+ }
+ }, t.clockCursor = function (t) {
+ let e, n, i, o = t && t.element,
+ s = o || document.body,
+ h = window.innerWidth,
+ c = window.innerHeight,
+ l = {
+ x: h / 2,
+ y: h / 2
+ };
+ const a = t && t.dateColor || "blue",
+ r = t && t.faceColor || "black",
+ d = t && t.secondsColor || "red",
+ u = t && t.minutesColor || "black",
+ A = t && t.hoursColor || "black",
+ m = .4,
+ g = t && t.theDays || ["SUNDAY", "MONDAY", "TUESDAY", "WEDNESDAY", "THURSDAY", "FRIDAY", "SATURDAY"],
+ f = t && t.theMonths || ["JANUARY", "FEBRUARY", "MARCH", "APRIL", "MAY", "JUNE", "JULY", "AUGUST", "SEPTEMBER", "OCTOBER", "NOVEMBER", "DECEMBER"];
+ let p = new Date,
+ y = p.getDate(),
+ v = p.getYear() + 1900;
+ const w = (" " + g[p.getDay()] + " " + y + " " + f[p.getMonth()] + " " + v).split(""),
+ x = ["3", "4", "5", "6", "7", "8", "9", "10", "11", "12", "1", "2"],
+ E = x.length,
+ M = ["•", "•", "•"],
+ C = ["•", "•", "•", "•"],
+ L = ["•", "•", "•", "•", "•"],
+ B = 360 / E,
+ b = 360 / w.length,
+ R = 45 / 6.5,
+ S = [],
+ Y = [],
+ W = [],
+ H = [],
+ I = [],
+ X = [],
+ D = [],
+ T = [],
+ F = [];
+ var z = parseInt(w.length + E + M.length + C.length + L.length) + 1;
+ const P = window.matchMedia("(prefers-reduced-motion: reduce)");
+
+ function J() {
+ if (P.matches) return console.log("This browser has prefers reduced motion turned on, so the cursor did not init"), !1;
+ e = document.createElement("canvas"), n = e.getContext("2d"), e.style.top = "0px", e.style.left = "0px", e.style.pointerEvents = "none", o ? (e.style.position = "absolute", s.appendChild(e), e.width = s.clientWidth, e.height = s.clientHeight) : (e.style.position = "fixed", document.body.appendChild(e), e.width = h, e.height = c), n.font = "10px sans-serif", n.textAlign = "center", n.textBaseline = "middle";
+ for (let t = 0; t < z; t++) S[t] = 0, Y[t] = 0, W[t] = 0, H[t] = 0;
+ for (let t = 0; t < w.length; t++) F[t] = {
+ color: a,
+ value: w[t]
+ };
+ for (let t = 0; t < x.length; t++) T[t] = {
+ color: r,
+ value: x[t]
+ };
+ for (let t = 0; t < M.length; t++) D[t] = {
+ color: A,
+ value: M[t]
+ };
+ for (let t = 0; t < C.length; t++) X[t] = {
+ color: u,
+ value: C[t]
+ };
+ for (let t = 0; t < L.length; t++) I[t] = {
+ color: d,
+ value: L[t]
+ };
+ s.addEventListener("mousemove", Z), s.addEventListener("touchmove", Q, {
+ passive: !0
+ }), s.addEventListener("touchstart", Q, {
+ passive: !0
+ }), window.addEventListener("resize", U), k()
+ }
+
+ function U(t) {
+ h = window.innerWidth, c = window.innerHeight, o ? (e.width = s.clientWidth, e.height = s.clientHeight) : (e.width = h, e.height = c)
+ }
+
+ function Q(t) {
+ if (t.touches.length > 0)
+ if (o) {
+ const e = s.getBoundingClientRect();
+ l.x = t.touches[0].clientX - e.left, l.y = t.touches[0].clientY - e.top
+ } else l.x = t.touches[0].clientX, l.y = t.touches[0].clientY
+ }
+
+ function Z(t) {
+ if (o) {
+ const e = s.getBoundingClientRect();
+ l.x = t.clientX - e.left, l.y = t.clientY - e.top
+ } else l.x = t.clientX, l.y = t.clientY
+ }
+
+ function k() {
+ ! function () {
+ W[0] = Math.round(S[0] += (l.y - S[0]) * m), H[0] = Math.round(Y[0] += (l.x - Y[0]) * m);
+ for (let t = 1; t < z; t++) W[t] = Math.round(S[t] += (W[t - 1] - S[t]) * m), H[t] = Math.round(Y[t] += (H[t - 1] - Y[t]) * m), S[t - 1] >= c - 80 && (S[t - 1] = c - 80), Y[t - 1] >= h - 80 && (Y[t - 1] = h - 80)
+ }(),
+ function () {
+ n.clearRect(0, 0, h, c);
+ const t = new Date,
+ e = t.getSeconds(),
+ i = Math.PI * (e - 15) / 30,
+ o = t.getMinutes(),
+ s = Math.PI * (o - 15) / 30,
+ l = t.getHours(),
+ a = Math.PI * (l - 3) / 6 + Math.PI * parseInt(t.getMinutes()) / 360;
+ for (let t = 0; t < F.length; t++) F[t].y = S[t] + 67.5 * Math.sin(-i + t * b * Math.PI / 180), F[t].x = Y[t] + 67.5 * Math.cos(-i + t * b * Math.PI / 180), n.fillStyle = F[t].color, n.fillText(F[t].value, F[t].x, F[t].y);
+ for (let t = 0; t < T.length; t++) T[t].y = S[F.length + t] + 45 * Math.sin(t * B * Math.PI / 180), T[t].x = Y[F.length + t] + 45 * Math.cos(t * B * Math.PI / 180), n.fillStyle = T[t].color, n.fillText(T[t].value, T[t].x, T[t].y);
+ for (let t = 0; t < D.length; t++) D[t].y = S[F.length + E + t] + 0 + t * R * Math.sin(a), D[t].x = Y[F.length + E + t] + 0 + t * R * Math.cos(a), n.fillStyle = D[t].color, n.fillText(D[t].value, D[t].x, D[t].y);
+ for (let t = 0; t < X.length; t++) X[t].y = S[F.length + E + D.length + t] + 0 + t * R * Math.sin(s), X[t].x = Y[F.length + E + D.length + t] + 0 + t * R * Math.cos(s), n.fillStyle = X[t].color, n.fillText(X[t].value, X[t].x, X[t].y);
+ for (let t = 0; t < I.length; t++) I[t].y = S[F.length + E + D.length + X.length + t] + 0 + t * R * Math.sin(i), I[t].x = Y[F.length + E + D.length + X.length + t] + 0 + t * R * Math.cos(i), n.fillStyle = I[t].color, n.fillText(I[t].value, I[t].x, I[t].y)
+ }(), i = requestAnimationFrame(k)
+ }
+
+ function N() {
+ e.remove(), cancelAnimationFrame(i), s.removeEventListener("mousemove", Z), s.removeEventListener("touchmove", Q), s.removeEventListener("touchstart", Q), window.addEventListener("resize", U)
+ }
+ return P.onchange = () => {
+ P.matches ? N() : J()
+ }, J(), {
+ destroy: N
+ }
+ }, t.emojiCursor = function (t) {
+ const e = t && t.emoji || ["😀", "😂", "😆", "😊"];
+ let n = t && t.element,
+ i = n || document.body,
+ o = window.innerWidth,
+ s = window.innerHeight;
+ const h = {
+ x: o / 2,
+ y: o / 2
+ },
+ c = {
+ x: o / 2,
+ y: o / 2
+ };
+ let l = 0;
+ const a = [],
+ r = [];
+ let d, u, A;
+ const m = window.matchMedia("(prefers-reduced-motion: reduce)");
+
+ function g() {
+ if (m.matches) return console.log("This browser has prefers reduced motion turned on, so the cursor did not init"), !1;
+ d = document.createElement("canvas"), u = d.getContext("2d"), d.style.top = "0px", d.style.left = "0px", d.style.pointerEvents = "none", n ? (d.style.position = "absolute", i.appendChild(d), d.width = i.clientWidth, d.height = i.clientHeight) : (d.style.position = "fixed", document.body.appendChild(d), d.width = o, d.height = s), u.font = "21px serif", u.textBaseline = "middle", u.textAlign = "center", e.forEach((t => {
+ let e = u.measureText(t),
+ n = document.createElement("canvas"),
+ i = n.getContext("2d");
+ n.width = e.width, n.height = 2 * e.actualBoundingBoxAscent, i.textAlign = "center", i.font = "21px serif", i.textBaseline = "middle", i.fillText(t, n.width / 2, e.actualBoundingBoxAscent), r.push(n)
+ })), i.addEventListener("mousemove", y, {
+ passive: !0
+ }), i.addEventListener("touchmove", p, {
+ passive: !0
+ }), i.addEventListener("touchstart", p, {
+ passive: !0
+ }), window.addEventListener("resize", f), w()
+ }
+
+ function f(t) {
+ o = window.innerWidth, s = window.innerHeight, n ? (d.width = i.clientWidth, d.height = i.clientHeight) : (d.width = o, d.height = s)
+ }
+
+ function p(t) {
+ if (t.touches.length > 0)
+ for (let e = 0; e < t.touches.length; e++) v(t.touches[e].clientX, t.touches[e].clientY, r[Math.floor(Math.random() * r.length)])
+ }
+
+ function y(t) {
+ t.timeStamp - l < 16 || window.requestAnimationFrame((() => {
+ if (n) {
+ const e = i.getBoundingClientRect();
+ h.x = t.clientX - e.left, h.y = t.clientY - e.top
+ } else h.x = t.clientX, h.y = t.clientY;
+ Math.hypot(h.x - c.x, h.y - c.y) > 1 && (v(h.x, h.y, r[Math.floor(Math.random() * e.length)]), c.x = h.x, c.y = h.y, l = t.timeStamp)
+ }))
+ }
+
+ function v(t, e, n) {
+ a.push(new E(t, e, n))
+ }
+
+ function w() {
+ ! function () {
+ if (0 != a.length) {
+ u.clearRect(0, 0, o, s);
+ for (let t = 0; t < a.length; t++) a[t].update(u);
+ for (let t = a.length - 1; t >= 0; t--) a[t].lifeSpan < 0 && a.splice(t, 1);
+ 0 == a.length && u.clearRect(0, 0, o, s)
+ }
+ }(), A = requestAnimationFrame(w)
+ }
+
+ function x() {
+ d.remove(), cancelAnimationFrame(A), i.removeEventListener("mousemove", y), i.removeEventListener("touchmove", p), i.removeEventListener("touchstart", p), window.addEventListener("resize", f)
+ }
+
+ function E(t, e, n) {
+ const i = Math.floor(60 * Math.random() + 80);
+ this.initialLifeSpan = i, this.lifeSpan = i, this.velocity = {
+ x: (Math.random() < .5 ? -1 : 1) * (Math.random() / 2),
+ y: .4 * Math.random() + .8
+ }, this.position = {
+ x: t,
+ y: e
+ }, this.canv = n, this.update = function (t) {
+ this.position.x += this.velocity.x, this.position.y += this.velocity.y, this.lifeSpan--, this.velocity.y += .05;
+ const e = Math.max(this.lifeSpan / this.initialLifeSpan, 0);
+ t.drawImage(this.canv, this.position.x - this.canv.width / 2 * e, this.position.y - this.canv.height / 2, this.canv.width * e, this.canv.height * e)
+ }
+ }
+ return m.onchange = () => {
+ m.matches ? x() : g()
+ }, g(), {
+ destroy: x
+ }
+ }, t.fairyDustCursor = function (t) {
+ let e = t && t.colors || ["#FFFFFF", "#FFFFFF", "#FFFFFF"],
+ n = t && t.element,
+ i = n || document.body,
+ o = window.innerWidth,
+ s = window.innerHeight;
+ const h = {
+ x: o / 2,
+ y: o / 2
+ },
+ c = {
+ x: o / 2,
+ y: o / 2
+ },
+ l = [],
+ a = [];
+ let r, d, u;
+ const A = window.matchMedia("(prefers-reduced-motion: reduce)");
+
+ function m() {
+ if (A.matches) return console.log("This browser has prefers reduced motion turned on, so the cursor did not init"), !1;
+ r = document.createElement("canvas"), d = r.getContext("2d"), r.style.top = "0px", r.style.left = "0px", r.style.pointerEvents = "none", n ? (r.style.position = "absolute", i.appendChild(r), r.width = i.clientWidth, r.height = i.clientHeight) : (r.style.position = "fixed", i.appendChild(r), r.width = o, r.height = s), d.font = "21px serif", d.textBaseline = "middle", d.textAlign = "center", e.forEach((t => {
+ let e = d.measureText("*"),
+ n = document.createElement("canvas"),
+ i = n.getContext("2d");
+ n.width = e.width, n.height = e.actualBoundingBoxAscent + e.actualBoundingBoxDescent, i.fillStyle = t, i.textAlign = "center", i.font = "21px serif", i.textBaseline = "middle", i.fillText("*", n.width / 2, e.actualBoundingBoxAscent), a.push(n)
+ })), i.addEventListener("mousemove", p), i.addEventListener("touchmove", f, {
+ passive: !0
+ }), i.addEventListener("touchstart", f, {
+ passive: !0
+ }), window.addEventListener("resize", g), v()
+ }
+
+ function g(t) {
+ o = window.innerWidth, s = window.innerHeight, n ? (r.width = i.clientWidth, r.height = i.clientHeight) : (r.width = o, r.height = s)
+ }
+
+ function f(t) {
+ if (t.touches.length > 0)
+ for (let e = 0; e < t.touches.length; e++) y(t.touches[e].clientX, t.touches[e].clientY, a[Math.floor(Math.random() * a.length)])
+ }
+
+ function p(t) {
+ window.requestAnimationFrame((() => {
+ if (n) {
+ const e = i.getBoundingClientRect();
+ h.x = t.clientX - e.left, h.y = t.clientY - e.top
+ } else h.x = t.clientX, h.y = t.clientY;
+ Math.hypot(h.x - c.x, h.y - c.y) > 1.5 && (y(h.x, h.y, a[Math.floor(Math.random() * e.length)]), c.x = h.x, c.y = h.y)
+ }))
+ }
+
+ function y(t, e, n) {
+ l.push(new x(t, e, n))
+ }
+
+ function v() {
+ ! function () {
+ if (0 != l.length) {
+ d.clearRect(0, 0, o, s);
+ for (let t = 0; t < l.length; t++) l[t].update(d);
+ for (let t = l.length - 1; t >= 0; t--) l[t].lifeSpan < 0 && l.splice(t, 1);
+ 0 == l.length && d.clearRect(0, 0, o, s)
+ }
+ }(), u = requestAnimationFrame(v)
+ }
+
+ function w() {
+ r.remove(), cancelAnimationFrame(u), i.removeEventListener("mousemove", p), i.removeEventListener("touchmove", f), i.removeEventListener("touchstart", f), window.addEventListener("resize", g)
+ }
+
+ function x(t, e, n) {
+ const i = Math.floor(30 * Math.random() + 60);
+ this.initialLifeSpan = i, this.lifeSpan = i, this.velocity = {
+ x: (Math.random() < .5 ? -1 : 1) * (Math.random() / 2),
+ y: .7 * Math.random() + .9
+ }, this.position = {
+ x: t,
+ y: e
+ }, this.canv = n, this.update = function (t) {
+ this.position.x += this.velocity.x, this.position.y += this.velocity.y, this.lifeSpan--, this.velocity.y += .02;
+ const e = Math.max(this.lifeSpan / this.initialLifeSpan, 0);
+ t.drawImage(this.canv, this.position.x - this.canv.width / 2 * e, this.position.y - this.canv.height / 2, this.canv.width * e, this.canv.height * e)
+ }
+ }
+ return A.onchange = () => {
+ A.matches ? w() : m()
+ }, m(), {
+ destroy: w
+ }
+ }, t.followingDotCursor = function (t) {
+ let e, n, i = t && t.element,
+ o = i || document.body,
+ s = window.innerWidth,
+ h = window.innerHeight,
+ c = {
+ x: s / 2,
+ y: s / 2
+ },
+ l = new function (t, e, n, i) {
+ this.position = {
+ x: t,
+ y: e
+ }, this.width = n, this.lag = i, this.moveTowards = function (t, e, n) {
+ this.position.x += (t - this.position.x) / this.lag, this.position.y += (e - this.position.y) / this.lag, n.fillStyle = a, n.beginPath(), n.arc(this.position.x, this.position.y, this.width, 0, 2 * Math.PI), n.fill(), n.closePath()
+ }
+ }(s / 2, h / 2, 10, 10),
+ a = t?.color || "#323232a6";
+ const r = window.matchMedia("(prefers-reduced-motion: reduce)");
+
+ function d() {
+ if (r.matches) return console.log("This browser has prefers reduced motion turned on, so the cursor did not init"), !1;
+ e = document.createElement("canvas"), n = e.getContext("2d"), e.style.top = "0px", e.style.left = "0px", e.style.pointerEvents = "none", i ? (e.style.position = "absolute", o.appendChild(e), e.width = o.clientWidth, e.height = o.clientHeight) : (e.style.position = "fixed", document.body.appendChild(e), e.width = s, e.height = h), o.addEventListener("mousemove", A), window.addEventListener("resize", u), m()
+ }
+
+ function u(t) {
+ s = window.innerWidth, h = window.innerHeight, i ? (e.width = o.clientWidth, e.height = o.clientHeight) : (e.width = s, e.height = h)
+ }
+
+ function A(t) {
+ if (i) {
+ const e = o.getBoundingClientRect();
+ c.x = t.clientX - e.left, c.y = t.clientY - e.top
+ } else c.x = t.clientX, c.y = t.clientY
+ }
+
+ function m() {
+ n.clearRect(0, 0, s, h), l.moveTowards(c.x, c.y, n), requestAnimationFrame(m)
+ }
+
+ function g() {
+ e.remove(), cancelAnimationFrame(m), o.removeEventListener("mousemove", A), window.addEventListener("resize", u)
+ }
+ return r.onchange = () => {
+ r.matches ? g() : d()
+ }, d(), {
+ destroy: g
+ }
+ }, t.ghostCursor = function (t) {
+ let e, n, i, o = t && t.element,
+ s = o || document.body,
+ h = t && t.randomDelay,
+ c = t && t.minDelay || 5,
+ l = t && t.maxDelay || 50,
+ a = window.innerWidth,
+ r = window.innerHeight,
+ d = {
+ x: a / 2,
+ y: a / 2
+ },
+ u = [],
+ A = new Image;
+ t && t.image ? A.src = t.image : A.src = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAATCAYAAACk9eypAAAAAXNSR0IArs4c6QAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAAhGVYSWZNTQAqAAAACAAFARIAAwAAAAEAAQAAARoABQAAAAEAAABKARsABQAAAAEAAABSASgAAwAAAAEAAgAAh2kABAAAAAEAAABaAAAAAAAAAEgAAAABAAAASAAAAAEAA6ABAAMAAAABAAEAAKACAAQAAAABAAAADKADAAQAAAABAAAAEwAAAAAChpcNAAAACXBIWXMAAAsTAAALEwEAmpwYAAABWWlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iWE1QIENvcmUgNS40LjAiPgogICA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPgogICAgICA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIgogICAgICAgICAgICB4bWxuczp0aWZmPSJodHRwOi8vbnMuYWRvYmUuY29tL3RpZmYvMS4wLyI+CiAgICAgICAgIDx0aWZmOk9yaWVudGF0aW9uPjE8L3RpZmY6T3JpZW50YXRpb24+CiAgICAgIDwvcmRmOkRlc2NyaXB0aW9uPgogICA8L3JkZjpSREY+CjwveDp4bXBtZXRhPgpMwidZAAABqElEQVQoFY3SPUvDQBgH8BREpRHExYiDgmLFl6WC+AYmWeyLg4i7buJX8DMpOujgyxGvUYeCgzhUQUSKKLUS0+ZyptXh8Z5Ti621ekPyJHl+uftfomhaf9Ei5JyxXKfynyEA6EYcLHpwyflT958GAQ7DTABNHd8EbtDbEH2BD5QEQmi2mM8P/Iq+A0SzszEg+3sPjDnDdVEtQKQbMUidHD3xVzf6A9UDEmEm+8h9KTqTVUjT+vB53aHrCbAPiceYq1dQI1Aqv4EhMll0jzv+Y0yiRgCnLRSYyDQHVoqUXe4uKL9l+L7GXC4vkMhE6eW/AOJs9k583ORDUyXMZ8F5SVHVVnllmPNKSFagAJ5DofaqGXw/gHBYg51dIldkmknY3tguv3jOtHR4+MqAzaraJXbEhqHhcQlwGSOi5pytVQHZLN5s0WNe8HPrLYlFsO20RPHkImxsbmHdLJFI76th7Z4SeuF53hTeFLvhRCJRCTKZKxgdnRDbW+iozFJbBMw14/ElwGYc0egMBMFzT21f5Rog33Z7dX02GBm7WV5ZfT5Nn5bE3zuCDe9UxdTpNvK+5AAAAABJRU5ErkJggg==";
+ const m = window.matchMedia("(prefers-reduced-motion: reduce)");
+
+ function g() {
+ if (m.matches) return console.log("This browser has prefers reduced motion turned on, so the cursor did not init"), !1;
+ e = document.createElement("canvas"), n = e.getContext("2d"), e.style.top = "0px", e.style.left = "0px", e.style.pointerEvents = "none", o ? (e.style.position = "absolute", s.appendChild(e), e.width = s.clientWidth, e.height = s.clientHeight) : (e.style.position = "fixed", document.body.appendChild(e), e.width = a, e.height = r), s.addEventListener("mousemove", x), s.addEventListener("touchmove", p, {
+ passive: !0
+ }), s.addEventListener("touchstart", p, {
+ passive: !0
+ }), window.addEventListener("resize", f), M()
+ }
+
+ function f(t) {
+ a = window.innerWidth, r = window.innerHeight, o ? (e.width = s.clientWidth, e.height = s.clientHeight) : (e.width = a, e.height = r)
+ }
+
+ function p(t) {
+ if (t.touches.length > 0)
+ for (let e = 0; e < t.touches.length; e++) E(t.touches[e].clientX, t.touches[e].clientY, A)
+ }
+ m.onchange = () => {
+ m.matches ? C() : g()
+ };
+ let y = () => Math.floor(Math.random() * (l - c + 1)) + c,
+ v = Date.now(),
+ w = y();
+
+ function x(t) {
+ if (h) {
+ if (v + w > Date.now()) return;
+ v = Date.now(), w = y()
+ }
+ if (o) {
+ const e = s.getBoundingClientRect();
+ d.x = t.clientX - e.left, d.y = t.clientY - e.top
+ } else d.x = t.clientX, d.y = t.clientY;
+ E(d.x, d.y, A)
+ }
+
+ function E(t, e, n) {
+ u.push(new L(t, e, n))
+ }
+
+ function M() {
+ ! function () {
+ if (0 != u.length) {
+ n.clearRect(0, 0, a, r);
+ for (let t = 0; t < u.length; t++) u[t].update(n);
+ for (let t = u.length - 1; t >= 0; t--) u[t].lifeSpan < 0 && u.splice(t, 1);
+ 0 == u.length && n.clearRect(0, 0, a, r)
+ }
+ }(), i = requestAnimationFrame(M)
+ }
+
+ function C() {
+ e.remove(), cancelAnimationFrame(i), s.removeEventListener("mousemove", x), s.removeEventListener("touchmove", p), s.removeEventListener("touchstart", p), window.addEventListener("resize", f)
+ }
+
+ function L(t, e, n) {
+ this.initialLifeSpan = 40, this.lifeSpan = 40, this.position = {
+ x: t,
+ y: e
+ }, this.image = n, this.update = function (t) {
+ this.lifeSpan--;
+ const e = Math.max(this.lifeSpan / this.initialLifeSpan, 0);
+ t.globalAlpha = e, t.drawImage(this.image, this.position.x, this.position.y)
+ }
+ }
+ return g(), {
+ destroy: C
+ }
+ }, t.rainbowCursor = function (t) {
+ let e, n, i, o = t && t.element,
+ s = o || document.body,
+ h = window.innerWidth,
+ c = window.innerHeight,
+ l = {
+ x: h / 2,
+ y: h / 2
+ },
+ a = [];
+ const r = t?.length || 20,
+ d = t?.colors || ["#FE0000", "#FD8C00", "#FFE500", "#119F0B", "#0644B3", "#C22EDC"],
+ u = t?.size || 3;
+ let A = !1;
+ const m = window.matchMedia("(prefers-reduced-motion: reduce)");
+
+ function g() {
+ if (m.matches) return console.log("This browser has prefers reduced motion turned on, so the cursor did not init"), !1;
+ e = document.createElement("canvas"), n = e.getContext("2d"), e.style.top = "0px", e.style.left = "0px", e.style.pointerEvents = "none", o ? (e.style.position = "absolute", s.appendChild(e), e.width = s.clientWidth, e.height = s.clientHeight) : (e.style.position = "fixed", document.body.appendChild(e), e.width = h, e.height = c), s.addEventListener("mousemove", p), window.addEventListener("resize", f), y()
+ }
+
+ function f(t) {
+ h = window.innerWidth, c = window.innerHeight, o ? (e.width = s.clientWidth, e.height = s.clientHeight) : (e.width = h, e.height = c)
+ }
+
+ function p(t) {
+ if (o) {
+ const e = s.getBoundingClientRect();
+ l.x = t.clientX - e.left, l.y = t.clientY - e.top
+ } else l.x = t.clientX, l.y = t.clientY;
+ if (!1 === A) {
+ A = !0;
+ for (let t = 0; t < r; t++) e = l.x, n = l.y, void 0, a.push(new w(e, n))
+ }
+ var e, n
+ }
+
+ function y() {
+ ! function () {
+ n.clearRect(0, 0, h, c), n.lineJoin = "round";
+ let t = [],
+ e = l.x,
+ i = l.y;
+ a.forEach((function (n, o, s) {
+ let h = s[o + 1] || s[0];
+ n.position.x = e, n.position.y = i, t.push({
+ x: e,
+ y: i
+ }), e += .4 * (h.position.x - n.position.x), i += .4 * (h.position.y - n.position.y)
+ })), d.forEach(((e, i) => {
+ n.beginPath(), n.strokeStyle = e, t.length && n.moveTo(t[0].x, t[0].y + i * (u - 1)), t.forEach(((t, e) => {
+ 0 !== e && n.lineTo(t.x, t.y + i * u)
+ })), n.lineWidth = u, n.lineCap = "round", n.stroke()
+ }))
+ }(), i = requestAnimationFrame(y)
+ }
+
+ function v() {
+ e.remove(), cancelAnimationFrame(i), s.removeEventListener("mousemove", p), window.addEventListener("resize", f)
+ }
+
+ function w(t, e) {
+ this.position = {
+ x: t,
+ y: e
+ }
+ }
+ return m.onchange = () => {
+ m.matches ? v() : g()
+ }, g(), {
+ destroy: v
+ }
+ }, t.snowflakeCursor = function (t) {
+ let e, n, i, o = t && t.element,
+ s = o || document.body,
+ h = ["❄️"],
+ c = window.innerWidth,
+ l = window.innerHeight,
+ a = {
+ x: c / 2,
+ y: c / 2
+ },
+ r = [],
+ d = [];
+ const u = window.matchMedia("(prefers-reduced-motion: reduce)");
+
+ function A() {
+ if (u.matches) return console.log("This browser has prefers reduced motion turned on, so the cursor did not init"), !1;
+ e = document.createElement("canvas"), n = e.getContext("2d"), e.style.top = "0px", e.style.left = "0px", e.style.pointerEvents = "none", o ? (e.style.position = "absolute", s.appendChild(e), e.width = s.clientWidth, e.height = s.clientHeight) : (e.style.position = "fixed", document.body.appendChild(e), e.width = c, e.height = l), n.font = "12px serif", n.textBaseline = "middle", n.textAlign = "center", h.forEach((t => {
+ let e = n.measureText(t),
+ i = document.createElement("canvas"),
+ o = i.getContext("2d");
+ i.width = e.width, i.height = 2 * e.actualBoundingBoxAscent, o.textAlign = "center", o.font = "12px serif", o.textBaseline = "middle", o.fillText(t, i.width / 2, e.actualBoundingBoxAscent), d.push(i)
+ })), s.addEventListener("mousemove", f), s.addEventListener("touchmove", g, {
+ passive: !0
+ }), s.addEventListener("touchstart", g, {
+ passive: !0
+ }), window.addEventListener("resize", m), y()
+ }
+
+ function m(t) {
+ c = window.innerWidth, l = window.innerHeight, o ? (e.width = s.clientWidth, e.height = s.clientHeight) : (e.width = c, e.height = l)
+ }
+
+ function g(t) {
+ if (t.touches.length > 0)
+ for (let e = 0; e < t.touches.length; e++) p(t.touches[e].clientX, t.touches[e].clientY, d[Math.floor(Math.random() * d.length)])
+ }
+
+ function f(t) {
+ if (o) {
+ const e = s.getBoundingClientRect();
+ a.x = t.clientX - e.left, a.y = t.clientY - e.top
+ } else a.x = t.clientX, a.y = t.clientY;
+ p(a.x, a.y, d[Math.floor(Math.random() * h.length)])
+ }
+
+ function p(t, e, n) {
+ r.push(new w(t, e, n))
+ }
+
+ function y() {
+ ! function () {
+ if (0 != r.length) {
+ n.clearRect(0, 0, c, l);
+ for (let t = 0; t < r.length; t++) r[t].update(n);
+ for (let t = r.length - 1; t >= 0; t--) r[t].lifeSpan < 0 && r.splice(t, 1);
+ 0 == r.length && n.clearRect(0, 0, c, l)
+ }
+ }(), i = requestAnimationFrame(y)
+ }
+
+ function v() {
+ e.remove(), cancelAnimationFrame(i), s.removeEventListener("mousemove", f), s.removeEventListener("touchmove", g), s.removeEventListener("touchstart", g), window.addEventListener("resize", m)
+ }
+
+ function w(t, e, n) {
+ const i = Math.floor(60 * Math.random() + 80);
+ this.initialLifeSpan = i, this.lifeSpan = i, this.velocity = {
+ x: (Math.random() < .5 ? -1 : 1) * (Math.random() / 2),
+ y: 1 + Math.random()
+ }, this.position = {
+ x: t,
+ y: e
+ }, this.canv = n, this.update = function (t) {
+ this.position.x += this.velocity.x, this.position.y += this.velocity.y, this.lifeSpan--, this.velocity.x += 2 * (Math.random() < .5 ? -1 : 1) / 75, this.velocity.y -= Math.random() / 300;
+ const e = Math.max(this.lifeSpan / this.initialLifeSpan, 0),
+ n = .0174533 * (2 * this.lifeSpan);
+ t.translate(this.position.x, this.position.y), t.rotate(n), t.drawImage(this.canv, -this.canv.width / 2 * e, -this.canv.height / 2, this.canv.width * e, this.canv.height * e), t.rotate(-n), t.translate(-this.position.x, -this.position.y)
+ }
+ }
+ return u.onchange = () => {
+ u.matches ? v() : A()
+ }, A(), {
+ destroy: v
+ }
+ }, t.springyEmojiCursor = function (t) {
+ let e, n, i, o, s = t && t.emoji || "🤪",
+ h = t && t.element,
+ c = h || document.body,
+ l = window.innerWidth,
+ a = window.innerHeight,
+ r = {
+ x: l / 2,
+ y: l / 2
+ },
+ d = [];
+ const u = window.matchMedia("(prefers-reduced-motion: reduce)");
+
+ function A() {
+ if (u.matches) return console.log("This browser has prefers reduced motion turned on, so the cursor did not init"), !1;
+ e = document.createElement("canvas"), n = e.getContext("2d"), e.style.top = "0px", e.style.left = "0px", e.style.pointerEvents = "none", h ? (e.style.position = "absolute", c.appendChild(e), e.width = c.clientWidth, e.height = c.clientHeight) : (e.style.position = "fixed", document.body.appendChild(e), e.width = l, e.height = a), n.font = "16px serif", n.textBaseline = "middle", n.textAlign = "center";
+ let t = n.measureText(s),
+ i = document.createElement("canvas"),
+ r = i.getContext("2d");
+ i.width = t.width, i.height = 2 * t.actualBoundingBoxAscent, r.textAlign = "center", r.font = "16px serif", r.textBaseline = "middle", r.fillText(s, i.width / 2, t.actualBoundingBoxAscent), o = i;
+ let A = 0;
+ for (A = 0; A < 7; A++) d[A] = new x(o);
+ c.addEventListener("mousemove", f), c.addEventListener("touchmove", g, {
+ passive: !0
+ }), c.addEventListener("touchstart", g, {
+ passive: !0
+ }), window.addEventListener("resize", m), p()
+ }
+
+ function m(t) {
+ l = window.innerWidth, a = window.innerHeight, h ? (e.width = c.clientWidth, e.height = c.clientHeight) : (e.width = l, e.height = a)
+ }
+
+ function g(t) {
+ if (t.touches.length > 0)
+ if (h) {
+ const e = c.getBoundingClientRect();
+ r.x = t.touches[0].clientX - e.left, r.y = t.touches[0].clientY - e.top
+ } else r.x = t.touches[0].clientX, r.y = t.touches[0].clientY
+ }
+
+ function f(t) {
+ if (h) {
+ const e = c.getBoundingClientRect();
+ r.x = t.clientX - e.left, r.y = t.clientY - e.top
+ } else r.x = t.clientX, r.y = t.clientY
+ }
+
+ function p() {
+ ! function () {
+ e.width = e.width, d[0].position.x = r.x, d[0].position.y = r.y;
+ for (let t = 1; t < 7; t++) {
+ let i = new v(0, 0);
+ t > 0 && w(t - 1, t, i), t < 6 && w(t + 1, t, i);
+ let o, s, h = new v(10 * -d[t].velocity.x, 10 * -d[t].velocity.y),
+ c = new v((i.X + h.X) / 1, (i.Y + h.Y) / 1 + 50);
+ d[t].velocity.x += .01 * c.X, d[t].velocity.y += .01 * c.Y, Math.abs(d[t].velocity.x) < .1 && Math.abs(d[t].velocity.y) < .1 && Math.abs(c.X) < .1 && Math.abs(c.Y) < .1 && (d[t].velocity.x = 0, d[t].velocity.y = 0), d[t].position.x += d[t].velocity.x, d[t].position.y += d[t].velocity.y, o = e.clientHeight, s = e.clientWidth, d[t].position.y >= o - 11 - 1 && (d[t].velocity.y > 0 && (d[t].velocity.y = .7 * -d[t].velocity.y), d[t].position.y = o - 11 - 1), d[t].position.x >= s - 11 && (d[t].velocity.x > 0 && (d[t].velocity.x = .7 * -d[t].velocity.x), d[t].position.x = s - 11 - 1), d[t].position.x < 0 && (d[t].velocity.x < 0 && (d[t].velocity.x = .7 * -d[t].velocity.x), d[t].position.x = 0), d[t].draw(n)
+ }
+ }(), i = requestAnimationFrame(p)
+ }
+
+ function y() {
+ e.remove(), cancelAnimationFrame(i), c.removeEventListener("mousemove", f), c.removeEventListener("touchmove", g), c.removeEventListener("touchstart", g), window.addEventListener("resize", m)
+ }
+
+ function v(t, e) {
+ this.X = t, this.Y = e
+ }
+
+ function w(t, e, n) {
+ let i = d[t].position.x - d[e].position.x,
+ o = d[t].position.y - d[e].position.y,
+ s = Math.sqrt(i * i + o * o);
+ if (s > 10) {
+ let t = 10 * (s - 10);
+ n.X += i / s * t, n.Y += o / s * t
+ }
+ }
+
+ function x(t) {
+ this.position = {
+ x: r.x,
+ y: r.y
+ }, this.velocity = {
+ x: 0,
+ y: 0
+ }, this.canv = t, this.draw = function (t) {
+ t.drawImage(this.canv, this.position.x - this.canv.width / 2, this.position.y - this.canv.height / 2, this.canv.width, this.canv.height)
+ }
+ }
+ return u.onchange = () => {
+ u.matches ? y() : A()
+ }, A(), {
+ destroy: y
+ }
+ }, t.textFlag = function (t) {
+ let e, n, i, o = t || {},
+ s = t && t.element,
+ h = s || document.body,
+ c = o.text ? " " + t.text : " Your Text Here",
+ l = t?.color || "#000000",
+ a = o.font || "monospace",
+ r = o.textSize || 12,
+ d = r + "px " + a,
+ u = o.gap || r + 2,
+ A = 0,
+ m = [],
+ g = window.innerWidth,
+ f = window.innerHeight,
+ p = {
+ x: g / 2,
+ y: g / 2
+ };
+ for (let t = 0; t < c.length; t++) m[t] = {
+ letter: c.charAt(t),
+ x: g / 2,
+ y: g / 2
+ };
+ t?.size;
+ const y = window.matchMedia("(prefers-reduced-motion: reduce)");
+
+ function v() {
+ if (y.matches) return console.log("This browser has prefers reduced motion turned on, so the cursor did not init"), !1;
+ e = document.createElement("canvas"), n = e.getContext("2d"), e.style.top = "0px", e.style.left = "0px", e.style.pointerEvents = "none", s ? (e.style.position = "absolute", h.appendChild(e), e.width = h.clientWidth, e.height = h.clientHeight) : (e.style.position = "fixed", document.body.appendChild(e), e.width = g, e.height = f), h.addEventListener("mousemove", x), window.addEventListener("resize", w), E()
+ }
+
+ function w(t) {
+ g = window.innerWidth, f = window.innerHeight, s ? (e.width = h.clientWidth, e.height = h.clientHeight) : (e.width = g, e.height = f)
+ }
+
+ function x(t) {
+ if (s) {
+ const e = h.getBoundingClientRect();
+ p.x = t.clientX - e.left, p.y = t.clientY - e.top
+ } else p.x = t.clientX, p.y = t.clientY
+ }
+
+ function E() {
+ ! function () {
+ n.clearRect(0, 0, g, f), A += .15;
+ let t = 2 * Math.cos(A),
+ e = 5 * Math.sin(A);
+ for (let t = m.length - 1; t > 0; t--) m[t].x = m[t - 1].x + u, m[t].y = m[t - 1].y, n.fillStyle = l, n.font = d, n.fillText(m[t].letter, m[t].x, m[t].y);
+ let i = m[0].x,
+ o = m[0].y;
+ i += (p.x - i) / 5 + t + 2, o += (p.y - o) / 5 + e, m[0].x = i, m[0].y = o
+ }(), i = requestAnimationFrame(E)
+ }
+
+ function M() {
+ e.remove(), cancelAnimationFrame(i), h.removeEventListener("mousemove", x), window.addEventListener("resize", w)
+ }
+ return y.onchange = () => {
+ y.matches ? M() : v()
+ }, v(), {
+ destroy: M
+ }
+ }, t.trailingCursor = function (t) {
+ let e, n, i, o = t && t.element,
+ s = o || document.body,
+ h = window.innerWidth,
+ c = window.innerHeight,
+ l = {
+ x: h / 2,
+ y: h / 2
+ },
+ a = [];
+ const r = t?.particles || 15,
+ d = t?.rate || .4,
+ u = t?.baseImageSrc || "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAATCAYAAACk9eypAAAAAXNSR0IArs4c6QAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAAhGVYSWZNTQAqAAAACAAFARIAAwAAAAEAAQAAARoABQAAAAEAAABKARsABQAAAAEAAABSASgAAwAAAAEAAgAAh2kABAAAAAEAAABaAAAAAAAAAEgAAAABAAAASAAAAAEAA6ABAAMAAAABAAEAAKACAAQAAAABAAAADKADAAQAAAABAAAAEwAAAAAChpcNAAAACXBIWXMAAAsTAAALEwEAmpwYAAABWWlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iWE1QIENvcmUgNS40LjAiPgogICA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPgogICAgICA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIgogICAgICAgICAgICB4bWxuczp0aWZmPSJodHRwOi8vbnMuYWRvYmUuY29tL3RpZmYvMS4wLyI+CiAgICAgICAgIDx0aWZmOk9yaWVudGF0aW9uPjE8L3RpZmY6T3JpZW50YXRpb24+CiAgICAgIDwvcmRmOkRlc2NyaXB0aW9uPgogICA8L3JkZjpSREY+CjwveDp4bXBtZXRhPgpMwidZAAABqElEQVQoFY3SPUvDQBgH8BREpRHExYiDgmLFl6WC+AYmWeyLg4i7buJX8DMpOujgyxGvUYeCgzhUQUSKKLUS0+ZyptXh8Z5Ti621ekPyJHl+uftfomhaf9Ei5JyxXKfynyEA6EYcLHpwyflT958GAQ7DTABNHd8EbtDbEH2BD5QEQmi2mM8P/Iq+A0SzszEg+3sPjDnDdVEtQKQbMUidHD3xVzf6A9UDEmEm+8h9KTqTVUjT+vB53aHrCbAPiceYq1dQI1Aqv4EhMll0jzv+Y0yiRgCnLRSYyDQHVoqUXe4uKL9l+L7GXC4vkMhE6eW/AOJs9k583ORDUyXMZ8F5SVHVVnllmPNKSFagAJ5DofaqGXw/gHBYg51dIldkmknY3tguv3jOtHR4+MqAzaraJXbEhqHhcQlwGSOi5pytVQHZLN5s0WNe8HPrLYlFsO20RPHkImxsbmHdLJFI76th7Z4SeuF53hTeFLvhRCJRCTKZKxgdnRDbW+iozFJbBMw14/ElwGYc0egMBMFzT21f5Rog33Z7dX02GBm7WV5ZfT5Nn5bE3zuCDe9UxdTpNvK+5AAAAABJRU5ErkJggg==";
+ let A = !1,
+ m = new Image;
+ m.src = u;
+ const g = window.matchMedia("(prefers-reduced-motion: reduce)");
+
+ function f() {
+ if (g.matches) return console.log("This browser has prefers reduced motion turned on, so the cursor did not init"), !1;
+ e = document.createElement("canvas"), n = e.getContext("2d"), e.style.top = "0px", e.style.left = "0px", e.style.pointerEvents = "none", o ? (e.style.position = "absolute", s.appendChild(e), e.width = s.clientWidth, e.height = s.clientHeight) : (e.style.position = "fixed", document.body.appendChild(e), e.width = h, e.height = c), s.addEventListener("mousemove", y), window.addEventListener("resize", p), v()
+ }
+
+ function p(t) {
+ h = window.innerWidth, c = window.innerHeight, o ? (e.width = s.clientWidth, e.height = s.clientHeight) : (e.width = h, e.height = c)
+ }
+
+ function y(t) {
+ if (o) {
+ const e = s.getBoundingClientRect();
+ l.x = t.clientX - e.left, l.y = t.clientY - e.top
+ } else l.x = t.clientX, l.y = t.clientY;
+ if (!1 === A) {
+ A = !0;
+ for (let t = 0; t < r; t++) e = l.x, n = l.y, i = m, a.push(new x(e, n, i))
+ }
+ var e, n, i
+ }
+
+ function v() {
+ ! function () {
+ n.clearRect(0, 0, h, c);
+ let t = l.x,
+ e = l.y;
+ a.forEach((function (i, o, s) {
+ let h = s[o + 1] || s[0];
+ i.position.x = t, i.position.y = e, i.move(n), t += (h.position.x - i.position.x) * d, e += (h.position.y - i.position.y) * d
+ }))
+ }(), i = requestAnimationFrame(v)
+ }
+
+ function w() {
+ e.remove(), cancelAnimationFrame(i), s.removeEventListener("mousemove", y), window.addEventListener("resize", p)
+ }
+
+ function x(t, e, n) {
+ this.position = {
+ x: t,
+ y: e
+ }, this.image = n, this.move = function (t) {
+ t.drawImage(this.image, this.position.x, this.position.y)
+ }
+ }
+ return g.onchange = () => {
+ g.matches ? w() : f()
+ }, f(), {
+ destroy: w
+ }
+ }, Object.defineProperty(t, "__esModule", {
+ value: !0
+ }), t
+}({});
+
+window.onload = function() {
+
+ cursoreffects.fairyDustCursor({
+ element: document.body,
+ color: "#FFFFFF"
+ })
+};
\ No newline at end of file
diff --git a/bio/style.css b/bio/style.css
new file mode 100644
index 0000000..150cd7c
--- /dev/null
+++ b/bio/style.css
@@ -0,0 +1,375 @@
+html, body {
+ margin: 0;
+ padding: 0;
+ height: 100%;
+ width: 100%;
+ display: flex;
+ justify-content: center;
+ align-items: center;
+ font-family: monospace;
+ background-color: black;
+ overflow: hidden;
+ color: white !important;
+}
+
+@font-face {
+ font-family: 'PF Tempesta Five';
+ font-style: normal;
+ font-weight: 400;
+ src: local('PF Tempesta Five'), url('https://fonts.cdnfonts.com/s/7373/pf_tempesta_five.woff') format('woff');
+}
+
+@font-face {
+ font-family: 'Pixel';
+ src: url('Pixel.ttf');
+}
+
+.phone {
+ display: none;
+}
+
+.clickToEnter {
+ position: absolute;
+ width: 100%;
+ height: 100%;
+ z-index: 999;
+ display: flex;
+ justify-content: center;
+ align-items: center;
+ font-size: 2.5em;
+ font-weight: bold;
+ background-color: rgba(9, 9, 9, 0.95);
+ backdrop-filter: blur(20px);
+ transition: 1s;
+}
+
+.click123 {
+ margin-bottom: 45%;
+ font-size: 0.5em;
+ color: rgb(120, 120, 120);
+ pointer-events: none;
+ user-select: none;
+}
+
+.ascii {
+ width: 10em;
+ position: fixed;
+ pointer-events: none;
+ user-select: none;
+}
+
+.cool {
+ opacity: 0.7;
+ height: 3px;
+ width: 100%;
+ background: linear-gradient(to right, transparent, white, transparent);
+ margin-left: 50%;
+ transform: translateX(-50%);
+
+}
+
+.player {
+ opacity: 0;
+ transition-delay: 0.1s;
+ transition-duration: 1s;
+ background: rgba(255, 255, 255, 0.02);
+ backdrop-filter: blur(10px);
+ border-radius: 15px;
+ padding: 20px;
+ text-align: center;
+ width: 90%;
+ max-width: 400px;
+ height: auto;
+ z-index: 2;
+ border: 2px solid rgba(150, 150, 150, 0.25);
+ box-sizing: border-box;
+ margin: 10px;
+ margin-top: 200px;
+}
+
+.player h1 {
+ font-family: 'PF Tempesta Five', monospace;
+ margin: 0;
+ font-size: 24px;
+ color: white;
+ text-shadow: #000000 3px 2px 7px !important;
+}
+
+.player p {
+ color: #ffffff;
+ font-size: 16px;
+ text-shadow: #000000 3px 2px 7px !important;
+ margin-bottom: -5px;
+ margin-top: 5px;
+}
+
+.player #typewriter {
+ color: white;
+ font-size: 16px;
+ display: flex;
+ justify-content: center;
+ margin-top: 5px;
+ margin-bottom: -5px;
+}
+
+#typewriter-line {
+ font-size: 16px;
+}
+
+#enter, #video {
+ display: none;
+}
+
+.pfp {
+ width: 96px;
+ margin-top: -20%;
+ border-radius: 50%;
+ pointer-events: none;
+ user-select: none;
+ border: 3px solid rgba(150, 150, 150, 0.25);
+}
+
+.video-container {
+ position: fixed;
+ top: 0;
+ left: 0;
+ width: 100%;
+ height: 100%;
+ display: flex;
+ justify-content: center;
+ align-items: center;
+ pointer-events: none;
+ z-index: 0;
+ text-align: center;
+}
+
+#videoPlayer {
+ height: 100%;
+}
+
+.icons {
+ display: flex;
+ justify-content: center;
+ gap: 15px;
+ margin-top: 20px;
+ margin-bottom: 13px;
+ color: #ffffff !important;
+ filter: drop-shadow(#000000 1px 0 7px) !important;
+}
+
+.dc, .ig, .lk, .bc, .et, .lc, .xm {
+ bottom: 50%;
+ left: 50%;
+ pointer-events: none;
+ cursor: pointer;
+ transition: 0.2s;
+}
+
+.dci, .igi, .lki, .bci, .eti, .lci, .xmi {
+ pointer-events: all;
+ transition: 0.2s;
+ width: 2.75em;
+ height: 2.75em;
+}
+
+.dci:hover, .igi:hover, .lki:hover, .bci:hover, .eti:hover, .lci:hover, .xmi:hover {
+ transform: scale(1.1);
+}
+
+.controls {
+ display: flex;
+ justify-content: center;
+ gap: 16px;
+ align-items: center;
+ color: white;
+ margin-top: 10px;
+}
+
+.controls button {
+ background: none;
+ border: none;
+ color: white;
+ font-size: 16px;
+ cursor: pointer;
+ border-radius: 7px;
+ width: 40px;
+ height: 30px;
+ background-color: rgba(255, 255, 255, 0.1);
+ backdrop-filter: blur(10px);
+ box-shadow: #000000 3px 3px 20px !important;
+ border: 2px solid rgba(150, 150, 150, 0.25);
+ text-shadow: #000000 3px 2px 7px !important;
+}
+
+.controls button:active {
+ transform: translateY(1px);
+}
+
+.slider {
+ -webkit-appearance: none;
+ appearance: none;
+ width: 90%;
+ max-width: 380px;
+ height: 10px;
+ background: linear-gradient(to right, #ffffff 0%, #ffffff 0%, #cbcbcb 0%, #cbcbcb 100%);
+ outline: none;
+ border-radius: 5px;
+ margin-top: 20px;
+ cursor: pointer;
+ box-shadow: #000000 3px 3px 20px !important;
+ transition: 100ms;
+}
+
+.slider::-webkit-slider-thumb, #volumeSlider::-webkit-slider-thumb {
+ -webkit-appearance: none;
+ appearance: none;
+ width: 12px;
+ height: 12px;
+ border-radius: 50%;
+ background: #ffffff;
+ cursor: pointer;
+ z-index: 3;
+ position: relative;
+ border: 1px solid #ffffff;
+ filter: drop-shadow(0 0 3px rgba(0, 0, 0, 0.5));
+ transition: 100ms;
+}
+
+.slider::-moz-range-thumb, #volumeSlider::-moz-range-thumb {
+ width: 12px;
+ height: 12px;
+ border-radius: 50%;
+ background: #ffffff;
+ cursor: pointer;
+ z-index: 3;
+ position: relative;
+ border: 1px solid #ffffff;
+ filter: drop-shadow(0 0 3px rgba(0, 0, 0, 0.5));
+ transition: 100ms;
+}
+
+.slider-container {
+ display: flex;
+ justify-content: center;
+ align-items: center;
+ gap: 10px;
+ color: white;
+ margin-top: 10px;
+}
+
+.slider-container span {
+ color: white;
+ font-size: 14px;
+}
+
+.volume-control {
+ display: flex;
+ align-items: center;
+ justify-content: center;
+ margin-top: 10px;
+}
+
+#volumeSlider {
+ -webkit-appearance: none;
+ appearance: none;
+ width: 100px;
+ height: 10px;
+ background: linear-gradient(to right, #ffffff 0%, #ffffff 0%, #cbcbcb 0%, #cbcbcb 100%);
+ outline: none;
+ border-radius: 5px;
+ cursor: pointer;
+ box-shadow: #000000 3px 3px 20px !important;
+}
+
+#volumeSlider::-webkit-slider-thumb {
+ -webkit-appearance: none;
+ appearance: none;
+ width: 12px;
+ height: 12px;
+ border-radius: 50%;
+ background: #ffffff;
+ cursor: pointer;
+ z-index: 3;
+ position: relative;
+ border: 1px solid #ffffff;
+}
+
+#volumeSlider::-moz-range-thumb {
+ width: 12px;
+ height: 12px;
+ border-radius: 50%;
+ background: #ffffff;
+ cursor: pointer;
+ z-index: 3;
+ position: relative;
+ border: 1px solid #ffffff;
+}
+
+#currentTime, #totalDuration {
+ text-shadow: #000000 3px 2px 7px !important;
+}
+
+.volume_Percent {
+ width: 100%;
+ margin-top: 5px;
+ text-align: center;
+}
+
+.volume {
+ justify-content: center;
+ text-align: center;
+ margin-bottom: 5px;
+}
+
+.blurBG {
+ backdrop-filter: blur(0);
+ width: 105%;
+ height: 110%;
+ border-radius: 10px;
+ background-color: rgba(150, 150, 150, 0.1);
+ border: 2px solid rgba(150, 150, 150, 0.25);
+ justify-content: center;
+ text-align: center;
+ margin-left: 50%;
+ margin-top: 20px;
+ transform: translateX(-50%);
+}
+
+@media (max-width: 768px) {
+ #video {
+ display: none !important;
+ }
+ .pc {
+ display: none;
+ }
+ .phone {
+ display: block;
+ }
+ .slider {
+ width: 80%;
+ max-width: 300px;
+ }
+ #volumeSlider {
+ width: 120px;
+ }
+ .volume_Percent {
+ margin-top: 10px;
+ text-align: center;
+ }
+ .dci, .igi, .lki, .bci, .eti, .lci, .xmi {
+ pointer-events: all;
+ transition: 0.2s;
+ width: 2em;
+ height: 2em;
+ }
+}
+
+div.duration-info {
+ display: flex;
+ gap: 277px;
+ margin-left: 20px;
+}
+
+button {
+ user-select: none;
+}
\ No newline at end of file
diff --git a/old/index.html b/old/index.html
index be25743..19e8360 100644
--- a/old/index.html
+++ b/old/index.html
@@ -78,10 +78,10 @@
Linkz: